/* News and analysis index, plus the "Latest" strip on institution profiles.
   Loaded after neutral.css. No decorative rules under headings. */

.news-page{background:#fff}
.news-page .news-hero{padding:36px 0 28px;text-align:center}
.news-hero-inner{display:flex;flex-direction:column;align-items:center}
.news-hero h1{font-family:var(--serif);font-weight:700;font-size:clamp(2rem,4.6vw,3.5rem);line-height:1.05;letter-spacing:-.02em;margin:0 0 18px;max-width:none;text-align:center}
.news-rule{width:100%;height:3px;background:#15191E}
.news-lede{font-family:var(--sans);font-size:1rem;line-height:1.68;color:#3A434C;max-width:62ch;margin:20px auto 0;text-align:center}
.news-meta{font-family:var(--mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:#646E78;margin:14px 0 0}
.news-meta b{font-weight:500;color:#15191E}

.news-page .news-index{padding:0 0 64px}
.news-filters{display:flex;flex-direction:column;gap:12px;margin:0 0 32px}
.news-index .news-filters{margin-top:38px}
.news-filter-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.news-filter-label{font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:#646E78;flex:0 0 82px}
.news-chips{display:flex;flex-wrap:wrap;gap:8px}
.news-chip{font-family:var(--sans);font-size:.82rem;font-weight:500;padding:8px 14px;border:1px solid #E4E7EB;background:#fff;color:#15191E;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}
.news-chip:hover{border-color:#15191E}
.news-chip.is-on{background:#15191E;border-color:#15191E;color:#fff}
.news-chip:focus-visible{outline:2px solid #15191E;outline-offset:2px}

.news-lead{margin:0 0 22px}
.news-lead .news-card{display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border:1px solid #E4E7EB}
.news-lead .news-media{height:100%;min-height:0}
.news-lead .news-media img{height:100%;width:100%;object-fit:cover;aspect-ratio:auto}
.news-lead .news-card-body{padding:32px 38px 30px}
.news-lead h3{font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1.14;letter-spacing:-.02em;max-width:22ch}
.news-lead p{font-size:.98rem;max-width:54ch}
.news-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.news-card{display:flex;flex-direction:column;background:#fff;border:1px solid #E4E7EB;transition:border-color .18s ease}
.news-card:hover{border-color:#15191E}

.news-media{display:block;overflow:hidden;background:#E9ECF0}
.news-media img{display:block;width:100%;height:auto;object-fit:cover;aspect-ratio:16/10}

.news-card-body{display:flex;flex-direction:column;flex:1;padding:24px 24px 22px}
.news-kicker{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-family:var(--mono);font-size:.58rem;letter-spacing:.06em;text-transform:uppercase;color:#646E78;margin-bottom:12px}
.news-type{background:#F4F5F7;color:#15191E;padding:4px 7px;font-weight:500;letter-spacing:.08em}
.news-card h3{font-family:var(--serif);font-weight:500;font-size:1.18rem;line-height:1.32;letter-spacing:-.01em;margin:0 0 10px;color:#15191E}

.news-card h3 a{color:inherit;text-decoration:none}
.news-card h3 a:hover{text-decoration:underline;text-underline-offset:3px}
.news-card p{font-family:var(--sans);font-size:.88rem;line-height:1.62;color:#3A434C;margin:0 0 16px}

.news-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.news-tags a{font-family:var(--mono);font-size:.55rem;letter-spacing:.08em;text-transform:uppercase;background:#F4F5F7;color:#15191E;padding:5px 8px;text-decoration:none}
.news-tags a:hover{background:#E9ECF0}
.news-read{margin-top:16px;font-family:var(--mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:#15191E;text-decoration:none}
.news-read:hover{text-decoration:underline;text-underline-offset:3px}
.news-empty{font-family:var(--sans);font-size:.94rem;color:#3A434C;padding:34px 0}
.news-empty a{color:#15191E}

.news-more{background:#F4F5F7;padding:56px 0}
.news-more h2{margin-bottom:26px}

/* Latest strip on institution profiles */
.inst-news{padding:56px 0}
.inst-news .cur-row{margin-bottom:26px}
.news-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.news-strip-card{display:flex;flex-direction:column;background:#F4F5F7;padding:22px 24px;text-decoration:none;min-height:150px;transition:background-color .18s ease}
.news-strip-card:hover{background:#E9ECF0}
.news-strip-card .t{font-family:var(--mono);font-size:.56rem;letter-spacing:.09em;text-transform:uppercase;color:#646E78}
.news-strip-card strong{font-family:var(--serif);font-weight:500;font-size:1.02rem;line-height:1.35;color:#15191E;margin:8px 0 12px}
.news-strip-card em{margin-top:auto;font-family:var(--mono);font-style:normal;font-size:.56rem;letter-spacing:.09em;text-transform:uppercase;color:#15191E}

@media (max-width:1080px){
  .news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .news-lead .news-card{grid-template-columns:1fr}
  .news-lead .news-media img{aspect-ratio:16/9}
  .news-strip{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
}
@media (max-width:760px){
  .news-grid{grid-template-columns:1fr}
  .news-lead .news-card{grid-template-columns:1fr}
  .news-media img{aspect-ratio:16/9}
  .news-strip{grid-template-columns:1fr}
  .news-filter-label{flex-basis:100%}
  .news-page .news-hero{padding:28px 0 22px}
  .news-more{padding:40px 0}
  .inst-news{padding:40px 0}
}

/* Hidden cards must actually disappear: the card display rule otherwise wins over [hidden]. */
.news-grid [data-news-card][hidden]{display:none!important}
.news-grid.is-filtered{grid-template-columns:1fr;gap:16px}
.news-grid.is-filtered .news-card{display:grid;grid-template-columns:320px minmax(0,1fr)}
.news-grid.is-filtered .news-card:not(.news-card--media){display:block}
.news-grid.is-filtered .news-card--media .news-media img{height:100%;aspect-ratio:auto}
.news-grid.is-filtered .news-card:not(.news-card--media) .news-card-body{max-width:780px;margin:0 auto;width:100%}

/* Visual resource sections on the hub */
.news-page .news-guides{padding:56px 0}
.news-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}
.news-guide-card{display:flex;flex-direction:column;background:#fff;border:1px solid #E4E7EB;text-decoration:none;transition:border-color .15s ease}
.news-guide-card:hover{border-color:#15191E}
.news-guide-media{display:block;overflow:hidden;background:#E9ECF0}
.news-guide-media img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.news-guide-body{display:flex;flex-direction:column;padding:22px 24px 22px}
.news-guide-body .t{font-family:var(--mono);font-size:.55rem;letter-spacing:.09em;text-transform:uppercase;color:#646E78}
.news-guide-body strong{font-family:var(--serif);font-weight:500;font-size:1.14rem;line-height:1.3;color:#15191E;margin:8px 0 8px}
.news-guide-body .d{font-family:var(--sans);font-size:.86rem;line-height:1.6;color:#3A434C;flex:1}
.news-guide-body em{margin-top:16px;font-family:var(--mono);font-style:normal;font-size:.55rem;letter-spacing:.09em;text-transform:uppercase;color:#15191E}
.news-page .news-institutions{background:#F4F5F7!important;padding:56px 0!important}
.news-inst-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:26px}
.news-inst-card{display:flex;flex-direction:column;background:#fff;border:1px solid #E4E7EB;padding:22px 22px 20px;text-decoration:none;min-height:230px;transition:border-color .15s ease}
.news-inst-card:hover{border-color:#15191E}
.news-inst-media{height:90px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;padding:4px}
.news-inst-media img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.news-inst-card strong{font-family:var(--serif);font-weight:500;font-size:1.02rem;line-height:1.3;color:#15191E}
.news-inst-card .d{font-family:var(--sans);font-size:.8rem;line-height:1.5;color:#646E78;margin:6px 0 12px;flex:1}
.news-inst-card em{margin-top:auto;font-family:var(--mono);font-style:normal;font-size:.55rem;letter-spacing:.09em;text-transform:uppercase;color:#15191E}
@media (max-width:1080px){
  .news-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .news-inst-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .news-guide-grid{grid-template-columns:1fr}
  .news-inst-grid{grid-template-columns:1fr}
  .news-page .news-guides,.news-page .news-institutions{padding:40px 0!important}
}
@media (max-width:760px){
  .news-grid.is-filtered .news-card{grid-template-columns:1fr}
  .news-grid.is-filtered .news-card--media .news-media img{height:auto;aspect-ratio:16/9}
}
