/* Editorial pages reuse Ravora's existing palette, typography and components. */
.editorial .page-head { padding-block: 32px 20px; margin-bottom: 24px; }
.editorial .news-title { font-family: var(--display); font-size: 1.3rem; font-weight: 400; margin: 0 0 8px; }
.editorial .news-title a:hover { text-decoration: underline; text-underline-offset: 4px; }
.editorial-notice, .editorial-release { margin-block: 28px; }
.editorial-notice h2, .editorial-release h2 { margin: 8px 0 12px; }
.editorial-notice p { margin-bottom: 0; }
.editorial .news-panel { margin-block: 32px; }
.editorial .legal-document { padding-top: 48px; }
.editorial .legal-document > .eyebrow { margin-top: 28px; }
.editorial .legal-document p + p { margin-top: 14px; }
.editorial .subnav { display: flex; flex-wrap: wrap; gap: 12px; margin-block: 24px; }
.editorial-release ul { padding-left: 24px; }
.editorial-release article { border-top: 1px solid var(--line); padding-top: 20px; margin-top: 24px; }
.editorial-footnote { color: var(--ink-mute); }
.news h4 a:hover { text-decoration: underline; text-underline-offset: 4px; }
.news .text-link { display: inline-block; margin-top: 10px; }
.news-panel > .head { flex-wrap: wrap; gap: 12px; }
.editorial h1, .editorial h2, .editorial h3, .news h4 { overflow-wrap: anywhere; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (max-width: 640px) {
  .editorial .news-title { font-size: 1.25rem; }
  .editorial .legal-document { padding-top: 28px; }
  .editorial .subnav a { white-space: normal; }
}

.daily-world { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding-block:32px; border-bottom:1px solid var(--line); }
.daily-selection { display:grid; gap:12px; padding:12px 0; }
.daily-selection > span { font:.7rem var(--ui); letter-spacing:.12em; text-transform:uppercase; color:var(--gold); }
.daily-selection strong { font:1.25rem var(--display); color:var(--ink); overflow-wrap:anywhere; }
.daily-selection:hover strong { color:var(--gold); }
.daily-world .note { grid-column:1/-1; margin:0; }
.daily-world .note:empty { display:none; }
@media(max-width:640px) { .daily-world { grid-template-columns:1fr; gap:8px; } }

/* News: a category emblem per item (it repeats on purpose) and one featured banner on the news page. */
.news article.news-row { grid-template-columns: 64px minmax(0, 1fr); gap: 22px; align-items: start; position: relative; padding: 24px 0; transition: background-color .2s ease; }
.news article.news-row:first-child { padding-top: 4px; }
.news-medal { display: grid; place-items: center; width: 60px; height: 60px; border-radius: 50%; color: var(--gold-bright);
  background: radial-gradient(circle at 50% 35%, #232c31 0, var(--surface) 62%, var(--ground-deep) 100%);
  border: 1px solid var(--line-gold); box-shadow: inset 0 0 0 3px var(--ground), inset 0 0 0 4px rgba(212, 178, 94, .28), 0 10px 22px rgba(0, 0, 0, .35); }
.news-medal svg { width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.news-row:hover .news-medal { color: #fff3cf; border-color: var(--gold); }
.news small, .news-feature small { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 10px; font: .75rem var(--ui); color: var(--ink-mute); letter-spacing: 0; text-transform: none; }
.news-cat { padding: 3px 10px; border: 1px solid var(--line-gold); border-radius: 999px; color: var(--gold-bright); background: rgba(212, 178, 94, .07);
  font: 600 .68rem var(--ui); letter-spacing: .12em; text-transform: uppercase; }
.news-row h3 a, .news-row h4 a { background: linear-gradient(var(--gold), var(--gold)) 0 100% / 0 1px no-repeat; transition: background-size .25s ease, color .2s ease; }
.news-row:hover h3 a, .news-row:hover h4 a { color: var(--gold-bright); background-size: 100% 1px; text-decoration: none; }
.news-body p { max-width: 68ch; }

.news-spotlight { margin-block: 8px 40px; }
.news-feature { position: relative; display: grid; align-items: end; min-height: 380px; overflow: hidden; isolation: isolate;
  border: 1px solid var(--line-gold); border-radius: 6px; background: var(--ground-deep); box-shadow: 0 24px 60px rgba(0, 0, 0, .45); }
.news-feature > img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: 70% 40%; transition: transform 1.2s ease; }
.news-feature::before { content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(90deg, rgba(8, 11, 13, .94) 0, rgba(8, 11, 13, .82) 38%, rgba(8, 11, 13, .25) 72%, rgba(8, 11, 13, .05) 100%),
    linear-gradient(0deg, rgba(8, 11, 13, .7) 0, rgba(8, 11, 13, 0) 45%); }
.news-feature::after { content: ""; position: absolute; inset: 6px; z-index: -1; border: 1px solid rgba(212, 178, 94, .22); border-radius: 3px; pointer-events: none; }
.news-feature:hover > img { transform: scale(1.03); }
.news-feature-body { max-width: 620px; padding: 44px 48px; }
.news-feature-title { margin: 0 0 12px; font: 400 2.4rem/1.12 var(--display); color: var(--ink); overflow-wrap: anywhere; }
.news-feature-title a:hover { color: var(--gold-bright); }
.news-feature p { margin: 0 0 24px; color: var(--ink-soft); font-size: 1.05rem; }

.card img { aspect-ratio: 1.4; }
.card { overflow: hidden; }
.card:hover img { transform: scale(1.04); }
.cards .card img { transition: transform .9s ease; }

@media (max-width: 760px) {
  .news article.news-row { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 14px; padding: 20px 0; }
  .news article.news-row::after { content: none; }
  .news-medal { width: 44px; height: 44px; box-shadow: inset 0 0 0 2px var(--ground), inset 0 0 0 3px rgba(212, 178, 94, .28); }
  .news-medal svg { width: 20px; height: 20px; }
  .news-feature { min-height: 0; }
  .news-feature > img { object-position: 78% 40%; }
  .news-feature::before { background: linear-gradient(0deg, rgba(8, 11, 13, .96) 0, rgba(8, 11, 13, .86) 55%, rgba(8, 11, 13, .35) 100%); }
  .news-feature-body { padding: 150px 22px 26px; }
  .news-feature-title { font-size: 1.7rem; }
}
@media (prefers-reduced-motion: reduce) {
  .news-feature > img, .cards .card img, .news-row h3 a, .news-row h4 a { transition: none; }
  .news-feature:hover > img, .card:hover img { transform: none; }
}
