.news-page .primary-nav a[aria-current="page"] { color: var(--white); background: var(--green); }
.news-page .mobile-nav a[aria-current="page"] { color: var(--lime); }

.news-page-hero { position: relative; overflow: hidden; color: var(--white); background: var(--ink); }
.news-page-hero::before { position: absolute; top: -360px; right: 11%; width: 680px; aspect-ratio: 1; border: 105px solid rgba(137, 230, 15, .045); border-radius: 50%; content: ""; }
.news-page-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(500px, 1.25fr) minmax(280px, .55fr) 190px; align-items: end; gap: clamp(42px, 6vw, 88px); min-height: 500px; padding-block: 74px 60px; }
.news-edition { color: var(--lime); font-size: 8px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.news-page-hero h1 { margin: 28px 0 0; font-family: var(--headline); font-size: clamp(75px, 10vw, 132px); font-weight: 800; letter-spacing: -.085em; line-height: .72; }
.news-page-hero h1 i { color: var(--lime); font-style: normal; font-weight: 500; }
.news-page-hero__intro { padding-bottom: 5px; }
.news-page-hero__intro strong { font-family: var(--headline); font-size: 23px; }
.news-page-hero__intro p { margin: 12px 0 28px; color: rgba(255,255,255,.62); font-size: 11px; }
.news-page-hero__intro a { display: flex; align-items: center; justify-content: space-between; padding: 12px 14px; border: 1px solid rgba(255,255,255,.25); font-size: 8px; font-weight: 800; letter-spacing: .07em; text-decoration: none; text-transform: uppercase; }
.news-page-hero__intro a span { color: var(--lime); }
.news-page-hero__intro a:hover { color: var(--ink); background: var(--lime); }
.news-page-hero__intro a:hover span { color: inherit; }
.news-page-hero__date { display: grid; align-content: space-between; min-height: 245px; padding: 20px; color: var(--ink); background: var(--lime); }
.news-page-hero__date span, .news-page-hero__date small { font-size: 7px; font-style: normal; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.news-page-hero__date strong { font-family: var(--headline); font-size: 105px; font-style: normal; font-weight: 800; letter-spacing: -.1em; line-height: .7; }

.news-topic-nav { position: sticky; z-index: 40; top: 0; color: var(--ink); background: var(--lime); }
.news-topic-nav .container { display: flex; overflow-x: auto; }
.news-topic-nav a { display: flex; align-items: center; min-height: 55px; padding-inline: 22px; border-left: 1px solid rgba(24,32,31,.2); font-size: 8px; font-weight: 800; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; white-space: nowrap; }
.news-topic-nav a:last-child { border-right: 1px solid rgba(24,32,31,.2); }
.news-topic-nav a[aria-current="true"], .news-topic-nav a:hover { color: var(--white); background: var(--green); }

.news-front-page, .news-archive { padding-block: 92px 106px; }
.news-section-head { display: flex; align-items: end; justify-content: space-between; gap: 50px; margin-bottom: 36px; padding-bottom: 22px; border-bottom: 1px solid var(--line); }
.news-section-head h2 { margin: 9px 0 0; font-family: var(--headline); font-size: clamp(45px, 5vw, 68px); font-weight: 800; letter-spacing: -.06em; line-height: .9; }
.news-section-head > p { max-width: 54ch; margin: 0; color: var(--ink-soft); font-size: 10px; }
.news-front-grid { display: grid; grid-template-columns: minmax(0, 1.42fr) minmax(390px, .58fr); gap: 22px; }
.front-lead { min-width: 0; border: 1px solid var(--line); }
.front-lead > a { display: grid; grid-template-rows: auto 1fr; height: 100%; text-decoration: none; }
.front-lead__image { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: var(--ink); }
.front-lead__image::after { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(0,0,0,.35)); content: ""; }
.front-lead__image img, .front-side-story__image img, .archive-story__image img, .voice-lead__image img { width: 100%; height: 100%; object-fit: cover; transition: transform 400ms ease; }
.front-lead:hover img, .front-side-story:hover img, .archive-story:hover img, .voice-lead:hover img { transform: scale(1.025); }
.front-lead__image > span { position: absolute; z-index: 1; top: 20px; left: 20px; padding: 7px 10px; color: var(--ink); background: var(--lime); font-size: 7px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.front-lead__body { display: flex; align-items: flex-start; flex-direction: column; padding: 30px 34px 34px; }
.news-meta { display: flex; flex-wrap: wrap; gap: 8px 12px; color: #7c8986; font-size: 7px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.news-meta > * + *::before { margin-right: 12px; color: var(--green); content: "/"; }
.front-lead h3 { max-width: 18ch; margin: 13px 0 14px; font-family: var(--headline); font-size: clamp(38px, 4.3vw, 58px); font-weight: 800; letter-spacing: -.055em; line-height: .93; }
.front-lead p { max-width: 70ch; margin: 0 0 26px; color: var(--ink-soft); font-size: 11px; }
.news-read-link { margin-top: auto; color: var(--green); font-size: 8px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.front-side { display: grid; grid-template-rows: auto auto 1fr; border-top: 1px solid var(--line); }
.front-side-story { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); border-left: 1px solid var(--line); }
.front-side-story > a { display: grid; grid-template-columns: 145px 1fr; align-items: stretch; min-height: 170px; text-decoration: none; }
.front-side-story__image { overflow: hidden; background: var(--ink); }
.front-side-story > a > div:last-child { display: flex; align-items: flex-start; flex-direction: column; padding: 20px; }
.front-side-story h3 { margin: 9px 0 14px; font-family: var(--headline); font-size: 19px; font-weight: 800; letter-spacing: -.035em; line-height: 1.02; }
.news-deadlines { display: grid; grid-template-columns: 145px 1fr; min-height: 265px; color: var(--white); background: var(--green-dark); }
.news-deadlines__head { display: flex; align-items: flex-start; flex-direction: column; justify-content: space-between; padding: 20px; border-right: 1px solid rgba(255,255,255,.17); }
.news-deadlines__head span { color: var(--lime); font-size: 7px; font-weight: 800; text-transform: uppercase; }
.news-deadlines__head strong { font-family: var(--headline); font-size: 25px; letter-spacing: -.04em; line-height: .9; }
.news-deadlines ol { margin: 0; padding: 0; list-style: none; }
.news-deadlines li { display: grid; grid-template-columns: 48px 1fr 24px; align-items: center; gap: 12px; min-height: 88px; padding: 10px 15px; border-bottom: 1px solid rgba(255,255,255,.17); }
.news-deadlines time { display: grid; text-align: center; }
.news-deadlines time strong { color: var(--lime); font-family: var(--headline); font-size: 25px; line-height: .85; }
.news-deadlines time span { font-size: 6px; font-weight: 800; text-transform: uppercase; }
.news-deadlines p { margin: 0; color: rgba(255,255,255,.7); font-size: 8px; }
.news-deadlines a { color: var(--lime); text-decoration: none; }

.analysis-section { padding-block: 94px; color: var(--white); background: var(--ink); }
.analysis-section__head { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 40px; margin-bottom: 38px; padding-bottom: 25px; border-bottom: 1px solid rgba(255,255,255,.18); }
.analysis-section__head span { color: var(--lime); font-size: 8px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.analysis-section__head h2 { margin: 8px 0 0; font-family: var(--headline); font-size: clamp(48px, 6vw, 78px); font-weight: 800; letter-spacing: -.065em; line-height: .9; }
.analysis-section__head p { max-width: 44ch; margin: 0 0 5px; color: rgba(255,255,255,.6); font-size: 10px; }
.analysis-grid { display: grid; grid-template-columns: 1.2fr 1fr 1fr; border-top: 1px solid rgba(255,255,255,.2); border-left: 1px solid rgba(255,255,255,.2); }
.analysis-grid article { min-height: 440px; border-right: 1px solid rgba(255,255,255,.2); border-bottom: 1px solid rgba(255,255,255,.2); }
.analysis-grid a { display: flex; align-items: flex-start; flex-direction: column; height: 100%; padding: 28px; text-decoration: none; }
.analysis-feature { background: var(--green-dark); }
.analysis-index { color: var(--lime); font-family: var(--headline); font-size: 48px; font-weight: 800; letter-spacing: -.07em; line-height: 1; }
.news-meta--light { margin-top: 70px; color: rgba(255,255,255,.48); }
.news-meta--light > * + *::before { color: var(--lime); }
.analysis-grid h3 { margin: 13px 0 14px; font-family: var(--headline); font-size: clamp(26px, 3vw, 39px); font-weight: 800; letter-spacing: -.045em; line-height: .98; }
.analysis-grid p { margin: 0 0 24px; color: rgba(255,255,255,.58); font-size: 9px; }
.analysis-grid a > strong { margin-top: auto; color: var(--lime); font-size: 7px; letter-spacing: .07em; text-transform: uppercase; }
.analysis-grid article:hover { background: var(--green); }

.news-section-head--archive { margin-bottom: 24px; }
.news-filter { display: grid; grid-template-columns: 1.5fr 1fr 1fr auto; margin-bottom: 50px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.news-filter > div { padding: 13px 16px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.news-filter label { display: block; margin-bottom: 3px; color: var(--green); font-size: 6px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.news-filter input, .news-filter select { width: 100%; height: 30px; padding: 0; border: 0; outline: 0; color: var(--ink); background: transparent; font-family: var(--body); font-size: 9px; font-weight: 700; }
.news-filter button { min-width: 150px; padding: 12px 20px; border: 0; color: var(--ink); background: var(--lime); font-size: 7px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; cursor: pointer; }
.news-filter button:hover { color: var(--white); background: var(--green); }
.archive-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; align-items: start; gap: 55px; }
.archive-feed { border-top: 1px solid var(--line); }
.archive-story { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); border-left: 1px solid var(--line); }
.archive-story > a { display: grid; grid-template-columns: 260px 1fr; min-height: 205px; text-decoration: none; }
.archive-story__image { overflow: hidden; background: var(--ink); }
.archive-story__body { display: flex; align-items: flex-start; flex-direction: column; padding: 25px 29px; }
.archive-story h3 { max-width: 28ch; margin: 10px 0 9px; font-family: var(--headline); font-size: clamp(22px, 2.4vw, 31px); font-weight: 800; letter-spacing: -.04em; line-height: 1.01; }
.archive-story p { max-width: 72ch; margin: 0 0 14px; color: var(--ink-soft); font-size: 9px; }
.archive-story__body > span { margin-top: auto; color: var(--green); font-size: 7px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.archive-story:hover { background: var(--mist); }
.archive-load { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 60px; padding: 0 22px; border: 0; color: var(--ink); background: var(--lime); font-size: 8px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; cursor: pointer; }
.archive-load:hover { color: var(--white); background: var(--green); }
.news-sidebar { position: sticky; top: 76px; display: grid; gap: 22px; }
.most-read { border: 1px solid var(--line); }
.most-read header { padding: 23px; color: var(--white); background: var(--green-dark); }
.most-read header span { color: var(--lime); font-size: 7px; font-weight: 800; text-transform: uppercase; }
.most-read h2 { margin: 5px 0 0; font-family: var(--headline); font-size: 36px; letter-spacing: -.05em; }
.most-read ol { margin: 0; padding: 0; list-style: none; }
.most-read li + li { border-top: 1px solid var(--line); }
.most-read a { display: grid; grid-template-columns: 50px 1fr; gap: 12px; min-height: 115px; padding: 17px; text-decoration: none; }
.most-read a > span { color: var(--green); font-family: var(--headline); font-size: 28px; font-weight: 800; }
.most-read small { color: var(--ink-soft); font-size: 6px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.most-read strong { display: block; margin-top: 6px; font-family: var(--headline); font-size: 14px; letter-spacing: -.025em; line-height: 1.1; }
.most-read a:hover { background: var(--mist); }
.news-explainer { padding: 26px; color: var(--ink); background: var(--lime); }
.news-explainer__number { float: right; font-family: var(--headline); font-size: 78px; font-weight: 800; letter-spacing: -.08em; line-height: .75; }
.news-explainer > span:not(.news-explainer__number) { font-size: 6px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.news-explainer h2 { clear: both; max-width: 10ch; margin: 80px 0 12px; font-family: var(--headline); font-size: 31px; letter-spacing: -.045em; line-height: .95; }
.news-explainer p { margin: 0 0 24px; font-size: 9px; }
.news-explainer a { font-size: 7px; font-weight: 800; text-decoration: none; text-transform: uppercase; }

.voices-section { padding-block: 95px; color: var(--white); background: var(--green-dark); }
.voices-section__head { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 50px; margin-bottom: 38px; padding-bottom: 22px; border-bottom: 1px solid rgba(255,255,255,.2); }
.voices-section__head span { color: var(--lime); font-size: 7px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.voices-section__head h2 { margin: 8px 0 0; font-family: var(--headline); font-size: clamp(47px, 6vw, 76px); font-weight: 800; letter-spacing: -.06em; line-height: .9; }
.voices-section__head p { max-width: 45ch; margin: 0; color: rgba(255,255,255,.6); font-size: 10px; }
.voices-grid { display: grid; grid-template-columns: 1.1fr .9fr; border: 1px solid rgba(255,255,255,.2); }
.voice-lead > a { display: grid; grid-template-columns: .9fr 1.1fr; height: 100%; min-height: 480px; text-decoration: none; }
.voice-lead__image { position: relative; overflow: hidden; background: var(--ink); }
.voice-lead__image > span { position: absolute; right: 20px; bottom: 10px; color: var(--lime); font-family: var(--headline); font-size: 90px; font-weight: 800; letter-spacing: -.08em; line-height: 1; }
.voice-lead__body { display: flex; align-items: flex-start; flex-direction: column; padding: 34px; border-right: 1px solid rgba(255,255,255,.2); }
.voice-lead h3 { margin: 16px 0; font-family: var(--headline); font-size: clamp(33px, 3.5vw, 47px); letter-spacing: -.05em; line-height: .95; }
.voice-lead p { color: rgba(255,255,255,.6); font-size: 9px; }
.voice-lead__body > strong { display: grid; margin-top: auto; color: var(--lime); font-family: var(--headline); font-size: 16px; }
.voice-lead__body > strong small { margin-top: 3px; color: rgba(255,255,255,.5); font-family: var(--body); font-size: 7px; font-weight: 700; }
.voices-list { display: grid; grid-template-rows: repeat(3, 1fr); }
.voices-list article + article { border-top: 1px solid rgba(255,255,255,.2); }
.voices-list a { display: grid; grid-template-columns: 45px 1fr 30px; align-items: center; gap: 17px; height: 100%; padding: 23px; text-decoration: none; }
.voices-list a > span { color: var(--lime); font-family: var(--headline); font-size: 22px; font-weight: 800; }
.voices-list small { color: rgba(255,255,255,.48); font-size: 6px; font-weight: 800; text-transform: uppercase; }
.voices-list h3 { margin: 7px 0; font-family: var(--headline); font-size: 17px; letter-spacing: -.03em; line-height: 1.05; }
.voices-list strong { color: var(--lime); font-size: 7px; text-transform: uppercase; }
.voices-list i { color: var(--lime); font-style: normal; }
.voices-list a:hover { background: var(--green); }

.news-newsletter { padding-block: 80px; color: var(--ink); background: var(--lime); }
.news-newsletter__grid { display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: clamp(60px, 9vw, 135px); }
.news-newsletter span { font-size: 7px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.news-newsletter h2 { margin: 10px 0; font-family: var(--headline); font-size: clamp(50px, 6vw, 78px); font-weight: 800; letter-spacing: -.065em; line-height: .85; }
.news-newsletter p { max-width: 50ch; margin: 0; font-size: 10px; }
.news-newsletter form label { display: block; margin-bottom: 7px; font-size: 7px; font-weight: 800; text-transform: uppercase; }
.news-newsletter form > div { display: grid; grid-template-columns: 1fr auto; border: 1px solid var(--ink); }
.news-newsletter input { min-width: 0; height: 56px; padding-inline: 17px; border: 0; background: rgba(255,255,255,.55); outline: 0; }
.news-newsletter button { padding-inline: 25px; border: 0; color: var(--white); background: var(--ink); font-size: 8px; font-weight: 800; text-transform: uppercase; cursor: pointer; }
.news-newsletter form small { display: block; margin-top: 8px; font-size: 6px; }

@media (max-width: 1080px) {
  .news-page-hero__grid { grid-template-columns: 1fr 280px 160px; }
  .news-page-hero h1 { font-size: 88px; }
  .news-front-grid { grid-template-columns: 1.2fr .8fr; }
  .front-side-story > a { grid-template-columns: 115px 1fr; }
  .news-deadlines { grid-template-columns: 115px 1fr; }
  .archive-layout { grid-template-columns: minmax(0,1fr) 290px; gap: 30px; }
  .archive-story > a { grid-template-columns: 210px 1fr; }
}

@media (max-width: 820px) {
  .news-page-hero__grid { grid-template-columns: 1fr 180px; }
  .news-page-hero__intro { grid-row: 2; }
  .news-page-hero__date { grid-column: 2; grid-row: 1 / 3; }
  .news-front-grid, .analysis-grid, .archive-layout, .voices-grid, .news-newsletter__grid { grid-template-columns: 1fr; }
  .front-side { grid-template-columns: repeat(2, 1fr); grid-template-rows: auto auto; }
  .news-deadlines { grid-column: 1 / -1; }
  .analysis-grid article { min-height: 360px; }
  .news-filter { grid-template-columns: repeat(3, 1fr); }
  .news-filter button { grid-column: 1 / -1; min-height: 50px; }
  .news-sidebar { position: static; grid-template-columns: 1fr 1fr; }
  .voice-lead__body { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.2); }
}

@media (max-width: 560px) {
  .news-page-hero__grid { grid-template-columns: 1fr; gap: 45px; min-height: 0; padding-block: 54px; }
  .news-page-hero h1 { font-size: clamp(68px, 22vw, 88px); }
  .news-page-hero__intro { grid-row: auto; }
  .news-page-hero__date { grid-column: auto; grid-row: auto; min-height: 185px; }
  .news-page-hero__date strong { font-size: 80px; }
  .news-topic-nav .container { width: 100%; padding-left: 12px; }
  .news-front-page, .news-archive, .analysis-section, .voices-section { padding-block: 62px; }
  .news-section-head, .analysis-section__head, .voices-section__head { align-items: flex-start; grid-template-columns: 1fr; flex-direction: column; gap: 18px; }
  .news-front-grid { gap: 16px; }
  .front-lead__body { padding: 24px; }
  .front-lead h3 { font-size: 38px; }
  .front-side { grid-template-columns: 1fr; }
  .front-side-story > a { grid-template-columns: 120px 1fr; }
  .news-deadlines { grid-column: auto; grid-template-columns: 105px 1fr; }
  .analysis-grid { grid-template-columns: 1fr; }
  .analysis-grid article { min-height: 380px; }
  .news-filter { grid-template-columns: 1fr; }
  .news-filter button { grid-column: auto; }
  .archive-story > a { grid-template-columns: 1fr; }
  .archive-story__image { aspect-ratio: 16 / 9; }
  .archive-story__body { min-height: 250px; padding: 23px; }
  .news-sidebar { grid-template-columns: 1fr; }
  .voice-lead > a { grid-template-columns: 1fr; }
  .voice-lead__image { min-height: 380px; }
  .voice-lead__body { min-height: 390px; padding: 28px; }
  .voices-list a { grid-template-columns: 38px 1fr 20px; padding: 20px; }
  .news-newsletter { padding-block: 60px; }
  .news-newsletter__grid { gap: 40px; }
  .news-newsletter form > div { grid-template-columns: 1fr; }
  .news-newsletter button { min-height: 50px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .front-lead__image img, .front-side-story__image img, .archive-story__image img, .voice-lead__image img { transition: none; }
}
