:root {
  --ink: #101317;
  --muted: #5c6470;
  --paper: #f4f6f8;
  --panel: #ffffff;
  --line: rgba(16, 19, 23, .14);
  --blue: #0057ff;
  --red: #d71920;
  --gold: #c9a35b;
  --black: #0b0f14;
  --shadow: 0 24px 60px rgba(10, 15, 20, .16);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--ink);
  background:
    linear-gradient(90deg, rgba(0, 87, 255, .045) 1px, transparent 1px),
    linear-gradient(0deg, rgba(16, 19, 23, .045) 1px, transparent 1px),
    radial-gradient(circle at 82% 8%, rgba(201, 163, 91, .2), transparent 24%),
    var(--paper);
  background-size: 64px 64px, 64px 64px, auto, auto;
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  max-width: 100%;
  display: block;
}

/* MWB News v32 reader surfaces */
.news-v32,
.news-v32 * {
  letter-spacing: 0;
}

body.news-v32 {
  --desk-accent: #0067a3;
  --desk-accent-2: #d71920;
  min-height: 100vh;
  background-color: #eef1f2;
  background-image: var(--feature-image, none);
  background-position: center top;
  background-size: cover;
  background-attachment: fixed;
}

body.news-v32::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background: rgba(239, 243, 244, .91);
  pointer-events: none;
}

body.news-v32[data-desk-theme="fires"] {
  --desk-accent: #b72d22;
  --desk-accent-2: #f1b62c;
}

body.news-v32[data-desk-theme="world-cup"] {
  --desk-accent: #08765e;
  --desk-accent-2: #0077b6;
}

body.news-v32[data-desk-theme="elections"] {
  --desk-accent: #234d8a;
  --desk-accent-2: #b52a35;
}

.news-v32 .news-masthead {
  position: relative;
  z-index: 20;
  background: rgba(255, 255, 255, .97);
  border-bottom: 1px solid rgba(16, 19, 23, .18);
  box-shadow: 0 8px 24px rgba(10, 20, 26, .08);
}

.news-v32 .news-category-nav {
  scrollbar-width: thin;
}

.news-v32 .news-category-nav a[aria-current="page"] {
  color: #fff;
  background: var(--desk-accent);
}

.breaking-ticker {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 44px;
  overflow: hidden;
  padding-inline: clamp(10px, 1.4vw, 22px);
  color: #fff;
  background: #11171a;
  border-bottom: 3px solid var(--desk-accent-2);
}

.breaking-ticker > strong {
  align-self: stretch;
  display: grid;
  place-items: center;
  padding: 0 12px;
  color: #fff;
  background: var(--desk-accent);
  font-size: 12px;
}

.breaking-window {
  min-width: 0;
  overflow: hidden;
}

.breaking-track {
  display: flex;
  width: max-content;
  gap: 0;
  align-items: center;
  white-space: nowrap;
  animation: mwb-breaking-scroll 58s linear infinite;
}

.breaking-track-group {
  display: flex;
  flex: none;
  align-items: center;
  gap: 42px;
  padding-right: 42px;
}

.breaking-track.is-static {
  width: 100%;
  animation: none;
}

.breaking-track:hover,
.breaking-track:focus-within {
  animation-play-state: paused;
}

.breaking-track a {
  color: #fff;
  font-size: 13px;
  font-weight: 800;
}

.breaking-ticker > a {
  color: #fff;
  font-size: 12px;
  text-decoration: underline;
}

@keyframes mwb-breaking-scroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
  .breaking-track { animation: none; }
}

.feature-banner {
  position: relative;
  display: grid;
  min-height: 300px;
  align-items: end;
  overflow: hidden;
  color: #fff;
  background-color: #172126;
  background-image: var(--feature-image, url("news-fire-operations-v29.webp"));
  background-position: center;
  background-size: cover;
}

.feature-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(10, 18, 22, .62);
}

.feature-banner-copy {
  position: relative;
  z-index: 1;
  width: min(1120px, 92vw);
  margin: 0 auto;
  padding: 72px 0 38px;
}

.feature-banner-copy h1 {
  max-width: 820px;
  margin: 8px 0 10px;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(36px, 5vw, 72px);
  line-height: .98;
}

.feature-banner-copy p {
  max-width: 760px;
  margin: 0;
  color: rgba(255, 255, 255, .88);
  font-size: 17px;
  line-height: 1.5;
}

.feature-banner-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 20px;
}

.feature-banner-actions .news-button {
  min-width: 154px;
  min-height: 46px;
  border: 2px solid #fff;
  color: #101317;
  background: #fff;
  box-shadow: 0 5px 18px rgba(0, 0, 0, .28);
  text-decoration: none;
  transition: transform .16s ease, color .16s ease, background-color .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.feature-banner-actions .news-button.secondary {
  border-color: rgba(255, 255, 255, .9);
  color: #fff;
  background: rgba(10, 18, 22, .72);
}

.feature-banner-actions .news-button:hover {
  border-color: #d71920;
  color: #fff;
  background: #d71920;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .38);
  transform: translateY(-2px);
}

.feature-banner-actions .news-button.secondary:hover {
  border-color: #fff;
  color: #101317;
  background: #fff;
}

.feature-banner-actions .news-button:active {
  box-shadow: 0 3px 10px rgba(0, 0, 0, .32);
  transform: translateY(0) scale(.98);
}

.feature-banner-actions .news-button:focus-visible {
  outline: 3px solid #ffcf3c;
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  .feature-banner-actions .news-button { transition: none; }
}

.reader-shell {
  width: min(1180px, 94vw);
  margin: 0 auto;
  padding: 28px 0 60px;
}

.reader-section {
  margin: 0 0 34px;
  padding: 0;
}

.reader-section-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: end;
  margin-bottom: 14px;
  padding-bottom: 9px;
  border-bottom: 3px solid #11171a;
}

.reader-section-head h2,
.archive-heading h1 {
  margin: 2px 0 0;
  font-family: Georgia, "Times New Roman", serif;
}

.reader-section-head h2 {
  font-size: 30px;
}

.reader-section-head p {
  max-width: 640px;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}

.live-story-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.live-story-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(16, 19, 23, .16);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(20, 28, 32, .06);
}

.live-story-image {
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #dfe4e6;
}

.live-story-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .25s ease;
}

.live-story-card:hover .live-story-image img {
  transform: scale(1.025);
}

.live-story-image.is-document-map {
  aspect-ratio: 4 / 3;
  padding: 8px;
  background: #f4f6f5;
}

.live-story-image.is-document-map img {
  object-fit: contain;
  object-position: center;
}

.live-story-card:hover .live-story-image.is-document-map img {
  transform: none;
}

body.news-article-page main {
  width: calc(100% - 32px);
  max-width: 1120px;
  margin-inline: auto;
}

.news-article-page .official-risk-map {
  width: 100%;
  max-width: 880px;
  margin-inline: auto;
}

.news-article-page .official-risk-map img {
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
}

.live-story-body {
  padding: 14px;
}

.live-story-body h2,
.live-story-body h3 {
  margin: 5px 0 8px;
  font-family: Georgia, "Times New Roman", serif;
  line-height: 1.13;
}

.live-story-body h2 { font-size: 25px; }
.live-story-body h3 { font-size: 20px; }

.live-story-description {
  display: -webkit-box;
  overflow: hidden;
  margin: 0 0 10px;
  color: #4f5960;
  font-size: 14px;
  line-height: 1.48;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

.live-story-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  margin: 9px 0;
  color: #657078;
  font-size: 11px;
}

.live-story-meta .is-live {
  color: #a7251d;
  font-weight: 900;
}

.archive-layout {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.archive-sidebar {
  position: sticky;
  top: 12px;
  padding: 14px;
  border: 1px solid rgba(16, 19, 23, .16);
  border-radius: 6px;
  background: #fff;
}

.archive-sidebar label,
.archive-sidebar select {
  width: 100%;
}

.archive-sidebar label {
  display: grid;
  gap: 6px;
  color: #4f5960;
  font-size: 12px;
  font-weight: 800;
}

.archive-sidebar select {
  min-height: 42px;
  padding: 8px;
  border: 1px solid rgba(16, 19, 23, .22);
  border-radius: 5px;
  background: #fff;
}

.archive-sidebar p {
  margin: 12px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.archive-heading {
  margin-bottom: 18px;
}

.archive-heading h1 {
  font-size: 42px;
}

.archive-heading p {
  max-width: 760px;
  color: var(--muted);
}

.archive-stream {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.news-archive-pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 20px;
  padding: 14px 16px;
  border-top: 4px solid var(--category-accent, var(--desk-accent));
  background: #fff;
}

.news-archive-page-status {
  color: #566168;
  font-size: 12px;
  font-weight: 800;
}

.news-archive-load-more {
  min-height: 42px;
  padding: 9px 18px;
  border: 2px solid #11171a;
  border-radius: 4px;
  color: #fff;
  background: #11171a;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  transition: color .16s ease, background .16s ease, transform .16s ease;
}

.news-archive-load-more:hover,
.news-archive-load-more:focus-visible {
  color: #11171a;
  background: #fff;
  transform: translateY(-1px);
}

.news-archive-load-more:disabled {
  cursor: wait;
  opacity: .55;
  transform: none;
}

.reader-empty {
  padding: 32px;
  border: 1px dashed rgba(16, 19, 23, .3);
  text-align: center;
  background: rgba(255, 255, 255, .8);
}

.reader-notice {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 14px;
  border-left: 5px solid var(--desk-accent);
  background: #fff;
}

.reader-notice strong {
  color: var(--desk-accent);
  font-size: 12px;
}

.reader-notice p {
  margin: 0;
  color: #4f5960;
  font-size: 13px;
}

.webtv-hero {
  display: grid;
  min-height: 470px;
  align-items: end;
  color: #fff;
  background-color: #12191d;
  background-image: url("news-sports-stadium-v29.webp");
  background-position: center;
  background-size: cover;
}

.webtv-hero-copy {
  display: grid;
  align-content: end;
  min-height: 470px;
  padding: 54px max(4vw, calc((100vw - 1180px) / 2));
  background: rgba(10, 15, 18, .48);
}

.webtv-hero-copy > div {
  max-width: 690px;
  padding: 20px;
  background: rgba(10, 15, 18, .76);
}

.webtv-hero h1 {
  margin: 6px 0 10px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 6vw, 78px);
  line-height: .95;
}

.webtv-hero p {
  margin: 0;
  color: rgba(255, 255, 255, .85);
  line-height: 1.5;
}

.webtv-map {
  position: relative;
  display: grid;
  align-content: center;
  gap: 10px;
  padding: 34px;
  background: #ebeff0;
}

.webtv-map::before {
  content: "";
  position: absolute;
  inset: 20px;
  border: 1px solid rgba(16, 19, 23, .12);
  background-image: url("news-civic-council-v29.webp");
  background-position: center;
  background-size: cover;
  opacity: .16;
}

.webtv-map > * {
  position: relative;
  z-index: 1;
}

.webtv-map h2 {
  margin: 0;
  color: #101317;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 28px;
}

.webtv-map-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.webtv-map button,
.webtv-filter-bar button,
.webtv-play {
  min-height: 42px;
  border: 1px solid rgba(16, 19, 23, .2);
  border-radius: 5px;
  color: #101317;
  background: rgba(255, 255, 255, .94);
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.webtv-map button:hover,
.webtv-map button.is-active,
.webtv-filter-bar button:hover,
.webtv-filter-bar button.is-active {
  color: #fff;
  background: var(--desk-accent);
  border-color: var(--desk-accent);
}

.webtv-filter-bar {
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin-bottom: 14px;
  padding-bottom: 6px;
}

.webtv-filter-bar button {
  flex: 0 0 auto;
  padding: 0 14px;
}

.webtv-video-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.webtv-video-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(16, 19, 23, .16);
  border-radius: 6px;
  background: #fff;
}

.webtv-video-stage {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #0b0f14;
}

.webtv-video-stage img,
.webtv-video-stage iframe {
  width: 100%;
  height: 100%;
  border: 0;
  object-fit: cover;
}

.webtv-video-stage img {
  opacity: .62;
}

.webtv-play {
  position: absolute;
  left: 50%;
  top: 50%;
  min-width: 96px;
  color: #fff;
  background: #d71920;
  border: 0;
  transform: translate(-50%, -50%);
}

.webtv-play:hover {
  background: #fff;
  color: #101317;
}

.webtv-video-body {
  padding: 14px;
}

.webtv-video-body h3 {
  margin: 6px 0 8px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 21px;
  line-height: 1.12;
}

.webtv-video-body p {
  margin: 0 0 10px;
  color: var(--muted);
  font-size: 13px;
}

.article-shell {
  display: grid;
  grid-template-columns: minmax(0, 780px) 280px;
  gap: 34px;
  width: min(1120px, 94vw);
  margin: 0 auto;
  padding: 34px 0 68px;
  align-items: start;
}

.article-shell > .mwb-return-control-v537 {
  grid-column: 1 / -1;
  margin-top: 0;
}

.article-main {
  grid-column: 1;
  padding: 24px;
  border: 1px solid rgba(16, 19, 23, .14);
  background: #fff;
}

.article-main h1 {
  margin: 7px 0 12px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 5vw, 64px);
  line-height: 1;
}

.article-deck {
  margin: 0 0 14px;
  color: #465158;
  font-size: 19px;
  line-height: 1.46;
}

.article-hero-media {
  margin: 22px -24px 8px;
}

.article-hero-media img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.article-credit {
  margin: 0;
  padding: 7px 24px;
  color: #5e686f;
  background: #edf0f1;
  font-size: 11px;
}

.article-copy {
  padding-top: 16px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 19px;
  line-height: 1.72;
}

.article-copy p {
  margin: 0 0 1.15em;
}

.article-media-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 24px 0;
}

.article-media-grid figure {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(16, 19, 23, .16);
  background: #fff;
}

.article-media-grid figure > img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.article-media-grid figcaption {
  padding: 8px;
  color: var(--muted);
  font-size: 11px;
}

.article-aside {
  grid-column: 2;
  position: sticky;
  top: 12px;
  display: grid;
  gap: 12px;
}

.article-aside section {
  padding: 14px;
  border: 1px solid rgba(16, 19, 23, .16);
  background: #fff;
}

.article-aside h2 {
  margin: 0 0 8px;
  font-size: 16px;
}

.article-aside h3 {
  margin: 16px 0 8px;
  font-size: 12px;
  text-transform: uppercase;
}

.article-aside p,
.article-aside li {
  color: #4f5960;
  font-size: 12px;
}

.article-source-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding-left: 18px;
}

.article-source-list li {
  padding-bottom: 9px;
  border-bottom: 1px solid rgba(16, 19, 23, .12);
}

.article-source-list li:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.article-source-list a,
.article-source-list small {
  display: block;
  overflow-wrap: anywhere;
}

.article-source-list a {
  color: var(--desk-accent);
  font-weight: 800;
}

.article-source-list small {
  margin-top: 3px;
  color: #6a747b;
}

.article-source-list p {
  margin: 5px 0 0;
}

.live-update-list {
  display: grid;
  gap: 10px;
  padding: 0;
  list-style: none;
}

.live-update-list li {
  padding-left: 10px;
  border-left: 3px solid var(--desk-accent);
}

.private-gateway {
  display: grid;
  min-height: 72vh;
  place-items: center;
  padding: 24px;
}

.private-gateway > div {
  width: min(620px, 100%);
  padding: 28px;
  border-top: 5px solid var(--desk-accent);
  background: #fff;
  box-shadow: 0 14px 38px rgba(20, 28, 32, .12);
}

.private-gateway h1 {
  margin: 4px 0 10px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 40px;
}

@media (max-width: 980px) {
  .live-story-grid,
  .webtv-video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .archive-layout,
  .article-shell,
  .webtv-hero { grid-template-columns: 1fr; }
  .archive-sidebar,
  .article-aside { position: static; }
  .article-shell > .article-main,
  .article-shell > .article-aside { grid-column: 1; }
  .webtv-hero,
  .webtv-hero-copy { min-height: 400px; }
}

@media (max-width: 680px) {
  .breaking-ticker { grid-template-columns: auto minmax(0, 1fr); padding: 0 12px; }
  .breaking-ticker > a { display: none; }
  .feature-banner { min-height: 360px; }
  .feature-banner-copy h1 { font-size: 42px; }
  .reader-section-head { align-items: start; flex-direction: column; }
  .live-story-grid,
  .archive-stream,
  .webtv-video-grid { grid-template-columns: 1fr; }
  .reader-shell { width: min(94vw, 600px); }
  .archive-heading h1 { font-size: 36px; }
  .reader-notice { grid-template-columns: 1fr; }
  .webtv-map { padding: 24px; }
  .webtv-map-grid { grid-template-columns: 1fr; }
  .article-main { padding: 16px; }
  .article-main h1 { font-size: 38px; }
  .article-hero-media { margin: 18px -16px 8px; }
  .article-credit { padding: 7px 16px; }
  .article-media-grid { grid-template-columns: 1fr; }
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 22px;
  padding: 14px 5vw;
  background: rgba(244, 246, 248, .94);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(16px);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-weight: 950;
}

.flag {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  color: #fff;
  background: var(--black);
  font-size: 15px;
  font-weight: 950;
}

.brand b {
  display: block;
  font-size: 24px;
}

.brand small {
  display: block;
  color: var(--blue);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.nav {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 13px;
  font-weight: 900;
}

.nav a {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  padding: 9px 12px;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, .72);
}

.nav a.primary {
  color: #fff;
  background: var(--black);
  border-color: var(--black);
}

.article-page {
  max-width: 980px;
  margin: 0 auto;
  padding: 54px 5vw 70px;
}

.article-hero {
  padding: 28px 0 24px;
  border-bottom: 6px solid var(--black);
}

.article-hero h1 {
  max-width: 920px;
  margin: 10px 0 16px;
  font-size: clamp(38px, 6vw, 78px);
  line-height: .92;
  letter-spacing: -.04em;
}

.article-cover {
  margin: 28px 0;
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: var(--shadow);
}

.article-cover img,
.article-image-placeholder {
  width: 100%;
  min-height: 360px;
  object-fit: cover;
}

.article-image-placeholder {
  display: grid;
  place-items: center;
  color: #fff;
  background: linear-gradient(135deg, var(--black), var(--blue));
  font-size: clamp(28px, 5vw, 60px);
  font-weight: 950;
}

.article-body,
.article-translation {
  padding: 30px;
  border: 1px solid var(--line);
  background: #fff;
}

.article-body p,
.article-translation p {
  font-size: 18px;
  line-height: 1.75;
}

.article-translation {
  margin-top: 22px;
  background: #f9fbff;
}

.hero,
.section {
  padding: 56px 5vw;
}

.media-hero {
  padding-top: 42px;
  border-bottom: 6px solid var(--black);
}

.hero-grid,
.section-inner {
  max-width: 1380px;
  margin: 0 auto;
}

.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(460px, 1.12fr);
  gap: 30px;
  align-items: stretch;
}

.hero-copy {
  display: grid;
  align-content: center;
  min-height: 560px;
}

.eyebrow {
  margin: 0 0 12px;
  color: var(--blue);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .14em;
  text-transform: uppercase;
}

h1,
h2,
h3 {
  color: var(--ink);
  letter-spacing: 0;
}

h1 {
  margin: 0;
  max-width: 840px;
  font-size: clamp(46px, 5.6vw, 86px);
  line-height: .9;
}

h2 {
  margin: 0;
  font-size: clamp(32px, 4vw, 58px);
  line-height: .95;
}

h3 {
  margin: 12px 0 8px;
  font-size: 24px;
}

p {
  color: var(--muted);
  font-size: 17px;
  line-height: 1.62;
}

.lead {
  max-width: 760px;
  font-size: 19px;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 8px;
}

.btn {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 12px 16px;
  color: #fff;
  background: var(--blue);
  border: 1px solid var(--blue);
  font-weight: 950;
}

.btn.ghost {
  color: var(--ink);
  background: rgba(255, 255, 255, .82);
  border-color: var(--line);
}

.btn.urgent {
  background: var(--red);
  border-color: var(--red);
}

.proof-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 24px;
}

.proof-strip span,
.ticker span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 8px 12px;
  color: var(--ink);
  background: rgba(255, 255, 255, .78);
  border: 1px solid var(--line);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.hero-visual {
  position: relative;
  min-height: 560px;
  margin: 0;
  overflow: hidden;
  background: var(--black);
  box-shadow: var(--shadow);
}

.hero-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-visual figcaption {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 18px;
  padding: 12px 14px;
  color: #fff;
  background: rgba(8, 12, 18, .72);
  border: 1px solid rgba(255, 255, 255, .18);
  font-size: 13px;
  font-weight: 800;
}

.hero-visual.compact {
  min-height: 420px;
}

.profile-hero {
  border-bottom: 1px solid var(--line);
}

.fast-intake {
  padding-top: 18px;
  padding-bottom: 18px;
  background: var(--black);
}

.launch-now {
  padding-top: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid var(--line);
  background: #fff;
}

.launch-now-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 22px;
  align-items: center;
}

.launch-now h2 {
  max-width: 840px;
  font-size: 34px;
  line-height: 1.05;
}

.launch-now-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.ticker {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ticker span {
  color: #fff;
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .16);
}

.voices-hub {
  position: relative;
  overflow: hidden;
  color: #fff;
  background:
    linear-gradient(135deg, rgba(0, 87, 255, .18), transparent 34%),
    linear-gradient(180deg, #0b0f14, #151a20);
}

.voices-hub::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(0deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 56px 56px;
  pointer-events: none;
}

.voices-hub .section-inner {
  position: relative;
  z-index: 1;
}

.voices-hub h2,
.voices-hub h3,
.voices-hub strong {
  color: #fff;
}

.voices-hub p {
  color: rgba(255,255,255,.76);
}

.voices-grid {
  display: grid;
  grid-template-columns: 1.25fr repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.voices-grid article,
.program-grid article {
  display: grid;
  align-content: end;
  min-height: 280px;
  padding: 20px;
  border: 1px solid rgba(255,255,255,.16);
  border-top: 5px solid var(--gold);
  background:
    linear-gradient(180deg, rgba(255,255,255,.1), rgba(255,255,255,.025)),
    rgba(255,255,255,.045);
  box-shadow: 0 18px 48px rgba(0,0,0,.22);
}

.voices-grid article:nth-child(2) { border-top-color: var(--blue); }
.voices-grid article:nth-child(3) { border-top-color: var(--red); }
.voices-grid article:nth-child(4) { border-top-color: #fff; }

.voices-grid .voice-hero-card {
  min-height: 366px;
  background:
    linear-gradient(180deg, rgba(8,12,18,.08), rgba(8,12,18,.9)),
    url("news-water-greece-v28.webp") center / cover;
}

.voices-grid span {
  color: var(--gold);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.voices-grid h3 {
  margin: 10px 0;
  font-size: clamp(24px, 2.7vw, 38px);
  line-height: .96;
}

.voices-grid p {
  margin: 0;
  font-size: 15px;
  line-height: 1.5;
}

.program-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}

.program-grid article {
  min-height: 154px;
  align-content: start;
  border-top-color: var(--blue);
  background: rgba(255,255,255,.075);
}

.program-grid article:nth-child(2) { border-top-color: var(--red); }
.program-grid article:nth-child(3) { border-top-color: var(--gold); }
.program-grid article:nth-child(4) { border-top-color: #fff; }

.program-grid strong {
  display: block;
  margin-bottom: 8px;
  font-size: 18px;
}

.program-grid span {
  color: rgba(255,255,255,.75);
  line-height: 1.5;
}

.live-front {
  background: #fff;
}

.live-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .78fr) minmax(220px, .52fr);
  gap: 14px;
  align-items: stretch;
}

.lead-story {
  min-height: 430px;
  display: grid;
  align-content: end;
  padding: 26px;
  color: #fff;
  background:
    linear-gradient(180deg, rgba(8,12,18,.02), rgba(8,12,18,.88)),
    url("news-water-greece-v28.webp") center / cover;
  border: 1px solid rgba(16, 19, 23, .16);
  border-top: 6px solid var(--blue);
  box-shadow: var(--shadow);
}

.lead-story h3,
.lead-story p {
  color: #fff;
}

.lead-story h3 {
  max-width: 780px;
  font-size: clamp(34px, 4.2vw, 58px);
  line-height: .94;
}

.lead-story p {
  max-width: 720px;
  color: rgba(255,255,255,.82);
}

.story-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.story-meta span,
.category-board a,
.webtv-schedule span {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 8px 11px;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.story-meta span {
  color: #fff;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.2);
}

.live-stack {
  display: grid;
  gap: 10px;
}

.live-stack article,
.category-board,
.webtv-schedule,
.newsletter-grid article {
  background: rgba(255,255,255,.92);
  border: 1px solid var(--line);
  border-top: 5px solid var(--red);
  box-shadow: 0 14px 34px rgba(10,15,20,.08);
}

.live-stack article {
  min-height: 132px;
  padding: 16px;
}

.live-stack strong {
  display: block;
  color: var(--red);
  font-size: 22px;
}

.live-stack span,
.newsletter-grid span {
  display: block;
  margin: 4px 0 8px;
  color: var(--blue);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.live-stack p,
.newsletter-grid p {
  margin: 0;
  font-size: 15px;
  line-height: 1.5;
}

.category-board {
  display: flex;
  align-content: flex-start;
  flex-wrap: wrap;
  gap: 8px;
  padding: 14px;
  border-top-color: var(--gold);
}

.category-board a {
  color: var(--ink);
  background: rgba(0,87,255,.07);
  border: 1px solid rgba(0,87,255,.18);
}

.voice-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}

.btn.ghost-light {
  color: #fff;
  background: rgba(255,255,255,.1);
  border-color: rgba(255,255,255,.22);
}

.webtv-console {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr);
  gap: 14px;
  margin-top: 16px;
}

.webtv-player {
  min-height: 280px;
  display: grid;
  align-content: end;
  padding: 24px;
  color: #fff;
  background:
    linear-gradient(135deg, rgba(0,87,255,.68), rgba(11,15,20,.92)),
    url("news-water-greece-v28.webp") center / cover;
  border: 1px solid rgba(255,255,255,.16);
  border-top: 5px solid var(--blue);
}

.webtv-player h3,
.webtv-player p {
  color: #fff;
}

.webtv-player p {
  color: rgba(255,255,255,.8);
}

.webtv-schedule {
  display: grid;
  align-content: start;
  gap: 8px;
  padding: 18px;
  border-top-color: var(--gold);
  background: rgba(255,255,255,.08);
}

.webtv-schedule strong {
  color: #fff;
  font-size: 23px;
}

.webtv-schedule span {
  color: #fff;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.16);
}

.newsletter-system {
  background:
    linear-gradient(90deg, rgba(0,87,255,.05) 1px, transparent 1px),
    linear-gradient(0deg, rgba(16,19,23,.045) 1px, transparent 1px),
    #eef2f5;
  background-size: 64px 64px;
}

.newsletter-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.newsletter-grid article {
  min-height: 220px;
  padding: 20px;
  border-top-color: var(--blue);
}

.newsletter-grid article:nth-child(2) { border-top-color: var(--red); }
.newsletter-grid article:nth-child(3) { border-top-color: var(--gold); }
.newsletter-grid article:nth-child(4) { border-top-color: var(--black); }

.newsletter-grid strong {
  display: block;
  margin-bottom: 8px;
  font-size: 24px;
}

.voices-page-hero {
  border-bottom: 6px solid var(--blue);
}

.command-desk {
  background: #fff;
}

.command-panels {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.command-panel {
  position: relative;
  min-height: 340px;
  display: grid;
  align-content: end;
  overflow: hidden;
  padding: 22px;
  color: #fff;
  background:
    linear-gradient(180deg, rgba(8,12,18,.06), rgba(8,12,18,.88)),
    url("news-water-greece-v28.webp") center / cover;
  border: 1px solid rgba(16, 19, 23, .14);
  box-shadow: var(--shadow);
}

.command-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(0,87,255,.34), transparent 52%);
  pointer-events: none;
}

.command-panel.studio::before { background: linear-gradient(135deg, rgba(215,25,32,.36), transparent 52%); }
.command-panel.market::before { background: linear-gradient(135deg, rgba(201,163,91,.42), transparent 52%); }
.command-panel.report::before { background: linear-gradient(135deg, rgba(255,255,255,.24), transparent 52%); }

.command-panel span,
.command-panel h3,
.command-panel p {
  position: relative;
  z-index: 1;
}

.command-panel span {
  color: #fff;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.command-panel h3 {
  margin-top: 10px;
  color: #fff;
  font-size: clamp(24px, 2.5vw, 36px);
  line-height: .98;
}

.command-panel p {
  color: rgba(255,255,255,.78);
  font-size: 15px;
  line-height: 1.48;
}

.launch-packages {
  background:
    linear-gradient(90deg, rgba(0,87,255,.05) 1px, transparent 1px),
    linear-gradient(0deg, rgba(16,19,23,.045) 1px, transparent 1px),
    #eef2f5;
  background-size: 64px 64px;
}

.package-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.launch-package {
  min-height: 316px;
  display: grid;
  grid-template-rows: 132px auto;
  gap: 12px;
  padding: 12px;
  background: rgba(255,255,255,.92);
  border: 1px solid var(--line);
  border-top: 5px solid var(--blue);
  box-shadow: 0 16px 38px rgba(10, 15, 20, .08);
}

.launch-package:nth-child(2) { border-top-color: var(--red); }
.launch-package:nth-child(3) { border-top-color: var(--gold); }
.launch-package:nth-child(4) { border-top-color: var(--black); }

.package-image {
  min-height: 132px;
  background:
    linear-gradient(180deg, rgba(8,12,18,.04), rgba(8,12,18,.42)),
    url("news-water-greece-v28.webp") center / cover;
  border: 1px solid rgba(16, 19, 23, .12);
}

.package-image.webtv { background-position: 62% center; }
.package-image.sponsor { background-position: 72% center; }
.package-image.emergency { background-position: 34% center; }

.launch-package h3 {
  margin: 0;
  font-size: 24px;
}

.launch-package p {
  margin: 0;
  font-size: 15px;
  line-height: 1.52;
}

.section-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 460px);
  gap: 24px;
  align-items: end;
  margin-bottom: 24px;
}

.grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.card,
.panel {
  background: rgba(255, 255, 255, .88);
  border: 1px solid var(--line);
  border-top: 5px solid var(--blue);
  box-shadow: 0 16px 38px rgba(10, 15, 20, .08);
}

.card {
  min-height: 230px;
  padding: 20px;
}

.card:nth-child(2),
.black .card:nth-child(1) {
  border-top-color: var(--black);
}

.card:nth-child(3) {
  border-top-color: var(--red);
}

.card:nth-child(4) {
  border-top-color: var(--gold);
}

.tag {
  display: block;
  color: var(--blue);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.black {
  color: #fff;
  background:
    linear-gradient(135deg, rgba(0, 87, 255, .18), transparent 34%),
    var(--black);
}

.black h2,
.black h3,
.black p,
.black strong {
  color: #fff;
}

.black p {
  color: rgba(255, 255, 255, .74);
}

.media-board {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.media-board article {
  min-height: 270px;
  display: grid;
  align-content: end;
  padding: 20px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02)),
    #151a20;
  border: 1px solid rgba(255, 255, 255, .16);
  border-top: 5px solid var(--blue);
}

.media-board article:nth-child(2) { border-top-color: var(--red); }
.media-board article:nth-child(3) { border-top-color: var(--gold); }
.media-board article:nth-child(4) { border-top-color: #fff; }

.media-board span {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  margin-bottom: 34px;
  color: #fff;
  background: rgba(255, 255, 255, .12);
  border: 1px solid rgba(255, 255, 255, .16);
  font-weight: 950;
}

.media-board strong {
  display: block;
  font-size: 25px;
}

.feature-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.panel {
  min-height: 330px;
  padding: 28px;
}

.panel h3 {
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: .98;
}

.image-panel {
  position: relative;
  overflow: hidden;
  color: #fff;
  background:
    linear-gradient(135deg, rgba(0, 87, 255, .72), rgba(11, 15, 20, .92)),
    url("news-water-greece-v28.webp") center / cover;
  border-top-color: var(--blue);
}

.image-panel.alt {
  background:
    linear-gradient(135deg, rgba(215, 25, 32, .68), rgba(11, 15, 20, .92)),
    url("news-water-greece-v28.webp") center / cover;
  border-top-color: var(--red);
}

.image-panel h3,
.image-panel p {
  color: #fff;
}

.image-panel p {
  max-width: 620px;
  color: rgba(255, 255, 255, .82);
}

.network-map {
  background: rgba(255, 255, 255, .58);
}

.ops-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}

.ops-grid article {
  min-height: 172px;
  padding: 16px;
  background: rgba(255, 255, 255, .9);
  border: 1px solid var(--line);
  border-top: 5px solid var(--blue);
  box-shadow: 0 14px 34px rgba(10, 15, 20, .07);
}

.ops-grid article:nth-child(2) { border-top-color: var(--red); }
.ops-grid article:nth-child(3) { border-top-color: var(--gold); }
.ops-grid article:nth-child(4) { border-top-color: var(--black); }
.ops-grid article:nth-child(5) { border-top-color: var(--blue); }
.ops-grid article:nth-child(6) { border-top-color: var(--red); }

.ops-grid strong {
  display: block;
  margin-bottom: 8px;
  font-size: 18px;
}

.ops-grid span {
  color: var(--muted);
  line-height: 1.5;
}

.report-hero {
  color: #fff;
  background:
    linear-gradient(135deg, rgba(0, 87, 255, .82), rgba(11, 15, 20, .94)),
    url("news-water-greece-v28.webp") center / cover;
}

.report-hero h1,
.report-hero p {
  color: #fff;
}

.report-hero p {
  color: rgba(255, 255, 255, .82);
}

.report-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(330px, .7fr);
  gap: 22px;
  align-items: stretch;
}

.report-console,
.creator-card,
.reward-card,
.safety-card {
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: 0 18px 48px rgba(10, 15, 20, .08);
}

.report-console {
  display: grid;
  gap: 10px;
  padding: 18px;
  border-radius: 18px;
}

.report-console article {
  padding: 16px;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(135deg, #101821, #1b2f4d);
}

.report-console strong {
  display: block;
  font-size: 18px;
}

.creator-grid,
.reward-grid,
.safety-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.creator-card,
.reward-card,
.safety-card {
  min-height: 230px;
  padding: 22px;
  border-radius: 18px;
}

.creator-card span,
.reward-card span,
.safety-card span {
  display: inline-flex;
  margin-bottom: 20px;
  padding: 7px 10px;
  border-radius: 999px;
  color: #fff;
  background: var(--blue);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.reward-card span { background: var(--red); }
.safety-card span { background: var(--black); }

.live-article-preview {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .68fr);
  gap: 18px;
  align-items: stretch;
}

.timeline-card {
  padding: 24px;
  color: #fff;
  border-radius: 18px;
  background: linear-gradient(135deg, #111820, #223956);
}

.timeline-card ol {
  display: grid;
  gap: 10px;
  padding-left: 20px;
}

.timeline-card li {
  padding: 10px 0;
  color: rgba(255, 255, 255, .82);
}

.article-mock {
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
}

.article-mock b {
  display: block;
  margin-bottom: 8px;
  color: var(--red);
  text-transform: uppercase;
}

.report-note {
  margin-top: 18px;
  padding: 16px;
  border-left: 5px solid var(--gold);
  background: rgba(255, 214, 0, .14);
  font-weight: 850;
}

.site-footer {
  padding: 30px 5vw;
  color: rgba(255, 255, 255, .78);
  background: var(--black);
}

.footer-inner {
  max-width: 1380px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 22px;
}

.site-footer h4 {
  margin: 0 0 10px;
  color: #fff;
}

.site-footer a {
  display: block;
  margin: 8px 0;
  font-weight: 850;
}

.site-footer img {
  width: 142px;
  filter: grayscale(1) brightness(2.8);
  opacity: .76;
}

.channels-hero {
  background:
    linear-gradient(120deg, rgba(8, 13, 18, .94), rgba(21, 45, 68, .78)),
    url("news-water-greece-v28.webp") center / cover;
}

.channels-hero h1,
.channels-hero p {
  color: #fff;
}

.channels-hero .lead {
  color: rgba(255, 255, 255, .8);
}

.channel-tiles,
.schedule-board,
.ad-format-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.channel-tiles article,
.schedule-board article,
.ad-format-grid article,
.live-update-card {
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(10, 14, 20, .08);
}

.channel-tiles article,
.schedule-board article,
.ad-format-grid article {
  min-height: 210px;
  padding: 22px;
}

.channel-tiles span,
.ad-format-grid span {
  display: inline-flex;
  margin-bottom: 18px;
  padding: 7px 10px;
  border-radius: 999px;
  color: #fff;
  background: var(--red);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.channel-tiles article:nth-child(2) span { background: var(--blue); }
.channel-tiles article:nth-child(3) span { background: var(--gold); color: #111; }
.channel-tiles article:nth-child(4) span { background: var(--black); }

.schedule-board strong {
  display: block;
  margin-bottom: 10px;
  color: var(--red);
  font-size: 34px;
}

.schedule-board span {
  display: block;
  margin-bottom: 14px;
  color: var(--black);
  font-weight: 950;
}

.live-update-layout {
  display: grid;
  grid-template-columns: minmax(280px, .75fr) minmax(320px, 1fr);
  gap: 24px;
  align-items: center;
}

.live-update-card {
  padding: 26px;
  color: var(--black);
}

.live-update-card b {
  display: inline-flex;
  margin-bottom: 14px;
  padding: 8px 12px;
  border-radius: 999px;
  color: #fff;
  background: var(--red);
  letter-spacing: 1px;
}

.live-update-card ol {
  display: grid;
  gap: 10px;
  margin: 18px 0 0;
  padding-left: 20px;
}

.live-update-card li {
  padding: 10px 0;
  border-bottom: 1px solid var(--line);
  font-weight: 850;
}

@media (max-width: 1100px) {
  .hero-grid,
  .section-head,
  .feature-row,
  .live-layout,
  .webtv-console,
  .report-shell,
  .live-article-preview,
  .footer-inner {
    grid-template-columns: 1fr;
  }

  .hero-copy,
  .hero-visual {
    min-height: auto;
  }

  .hero-visual {
    aspect-ratio: 16 / 10;
  }

  .grid,
  .media-board,
  .command-panels,
    .package-grid,
    .voices-grid,
    .program-grid,
    .newsletter-grid,
    .creator-grid,
    .reward-grid,
    .safety-grid,
    .channel-tiles,
    .schedule-board,
    .ad-format-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ops-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* v73: resilient public chrome, compact daily modules and readable dark desks */
.news-masthead,
.news-v32 .news-masthead {
  position: relative;
  z-index: 100;
  overflow: visible;
}

.breaking-ticker {
  position: relative;
  z-index: 40;
  isolation: isolate;
  color: #fff !important;
  border-top: 1px solid #d71920;
  border-bottom: 4px solid #d71920;
  background: #080d0f !important;
  box-shadow: 0 5px 15px rgba(0, 0, 0, .26);
}

.breaking-ticker > strong {
  color: #fff !important;
  background: #d71920 !important;
}

.breaking-ticker a,
.breaking-ticker .breaking-track,
.breaking-ticker .breaking-track a {
  color: #fff !important;
}

.breaking-ticker a:hover,
.breaking-ticker a:focus-visible,
.breaking-ticker .breaking-track a:hover,
.breaking-ticker .breaking-track a:focus-visible {
  color: #f5d45e !important;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.breaking-ticker a:focus-visible {
  outline: 2px solid #f5d45e;
  outline-offset: 3px;
}

.newsletter-utility {
  position: relative;
  flex: none;
  color: #10171a;
}

.newsletter-utility > summary {
  min-height: 31px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 5px 10px;
  color: #10171a;
  border: 1px solid #9eaaa6;
  border-radius: 3px;
  background: #fff;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
  list-style: none;
}

.newsletter-utility > summary::-webkit-details-marker { display: none; }
.newsletter-utility > summary::after { content: '+'; color: #08744d; font-size: 16px; line-height: 1; }
.newsletter-utility[open] > summary { color: #fff; border-color: #08744d; background: #08744d; }
.newsletter-utility[open] > summary::after { content: '\2212'; color: #fff; }
.newsletter-utility > summary:hover,
.newsletter-utility > summary:focus-visible { outline: 2px solid #d6a900; outline-offset: 2px; }

.newsletter-utility-drawer {
  position: absolute;
  z-index: 1300;
  top: calc(100% + 9px);
  right: 0;
  width: min(360px, calc(100vw - 24px));
  padding: 18px;
  color: #10171a;
  border: 1px solid #b8c5c1;
  border-top: 5px solid #08744d;
  background: #fff;
  box-shadow: 0 18px 40px rgba(4, 17, 20, .24);
}

.newsletter-utility-drawer > strong { display: block; margin: 0 0 5px; color: #10171a; font: 700 23px/1.08 Georgia, 'Times New Roman', serif; }
.newsletter-utility-drawer > p { margin: 0 0 13px; color: #52605c; font-size: 12px; line-height: 1.45; }
.newsletter-utility-drawer form { display: grid; gap: 10px; }
.newsletter-utility-drawer label { display: grid; gap: 5px; color: #1a2522; font-size: 11px; font-weight: 800; }
.newsletter-utility-drawer input[type='email'] { width: 100%; min-height: 42px; padding: 9px 11px; color: #10171a; border: 1px solid #9caaa6; background: #fff; }
.newsletter-utility-drawer .newsletter-utility-consent { grid-template-columns: 18px minmax(0, 1fr); align-items: start; gap: 8px; font-weight: 600; line-height: 1.4; }
.newsletter-utility-drawer .newsletter-utility-consent input { width: 17px; height: 17px; margin: 1px 0 0; }
.newsletter-utility-drawer button { min-height: 42px; padding: 9px 14px; color: #fff; border: 1px solid #08744d; border-radius: 3px; background: #08744d; font-weight: 900; cursor: pointer; }
.newsletter-utility-drawer button:hover,
.newsletter-utility-drawer button:focus-visible { color: #10171a; outline: 2px solid #10171a; outline-offset: 2px; background: #f0c64d; border-color: #f0c64d; }
.newsletter-utility-drawer a { color: #075c9e; font-size: 11px; font-weight: 800; }
.newsletter-utility-drawer [data-growth-status] { min-height: 16px; margin: 0; color: #42504c; font-size: 11px; }

.news-search-utility {
  position: relative;
  flex: none;
  color: #10171a;
}

.news-edition-label.has-search {
  width: min(360px, 42vw);
  max-width: 360px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
}

.news-edition-copy {
  min-width: 0;
  line-height: 1.25;
}

.news-search-utility > summary {
  min-height: 31px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px;
  color: #10171a;
  border: 1px solid #9eaaa6;
  border-radius: 3px;
  background: #fff;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
  list-style: none;
}

.news-search-utility > summary::-webkit-details-marker { display: none; }
.news-search-utility > summary svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.news-search-utility[open] > summary { color: #fff; border-color: #075c9e; background: #075c9e; }
.news-search-utility > summary:hover,
.news-search-utility > summary:focus-visible { color: #fff; outline: 2px solid #d6a900; outline-offset: 2px; border-color: #075c9e; background: #075c9e; }

.news-search-utility-drawer {
  position: absolute;
  z-index: 1300;
  top: calc(100% + 9px);
  right: 0;
  width: min(520px, calc(100vw - 24px));
  padding: 18px;
  color: #10171a;
  border: 1px solid #b8c5c1;
  border-top: 5px solid #075c9e;
  background: #fff;
  box-shadow: 0 18px 40px rgba(4, 17, 20, .24);
}

.news-search-utility-drawer > strong { display: block; margin: 0 0 5px; font: 700 23px/1.08 Georgia, 'Times New Roman', serif; }
.news-search-utility-drawer > p { margin: 0 0 13px; color: #52605c; font-size: 12px; line-height: 1.45; }
.news-search-utility-drawer form { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.news-search-utility-drawer input { width: 100%; min-height: 42px; padding: 9px 11px; color: #10171a; border: 1px solid #9caaa6; background: #fff; }
.news-search-utility-drawer button { min-height: 42px; padding: 9px 14px; color: #fff; border: 1px solid #075c9e; border-radius: 3px; background: #075c9e; font-weight: 900; cursor: pointer; }
.news-search-utility-drawer button:hover,
.news-search-utility-drawer button:focus-visible { color: #10171a; outline: 2px solid #10171a; outline-offset: 2px; border-color: #f0c64d; background: #f0c64d; }
.news-search-utility-drawer > a { display: inline-block; margin-top: 11px; color: #075c9e; font-size: 11px; font-weight: 800; }

.news-search-live {
  margin-top: 12px;
  border-top: 1px solid #d9e0de;
}

.news-search-live-head {
  min-height: 35px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #596663;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.news-search-live-head a {
  color: #075c9e;
  white-space: nowrap;
}

.news-search-suggestions {
  display: grid;
  border-top: 1px solid #e2e7e5;
}

.news-search-suggestion {
  min-width: 0;
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 11px;
  padding: 10px 0;
  color: #10171a;
  border-bottom: 1px solid #e2e7e5;
}

.news-search-suggestion:hover,
.news-search-suggestion:focus-visible {
  color: #075c9e;
  outline: 2px solid #075c9e;
  outline-offset: 3px;
  background: #f5f8f7;
}

.news-search-suggestion img {
  width: 92px;
  height: 64px;
  display: block;
  object-fit: cover;
  border: 1px solid #c7d0cd;
  background: #e7ecea;
}

.news-search-suggestion-copy {
  min-width: 0;
  display: grid;
  align-content: center;
  gap: 3px;
}

.news-search-suggestion-copy small {
  color: #c8242f;
  font-size: 9px;
  font-weight: 950;
}

.news-search-suggestion-copy strong {
  display: -webkit-box;
  overflow: hidden;
  color: inherit;
  font: 700 16px/1.08 Georgia, 'Times New Roman', serif;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.news-search-suggestion-copy > span {
  overflow: hidden;
  color: #5b6764;
  font-size: 10px;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.news-search-advanced {
  margin-top: 12px !important;
}

/* v81 published archive search: compact masthead access and readable results. */
.search-shell {
  width: min(100% - 40px, 1180px);
  margin: 0 auto;
  padding: 34px 0 70px;
}

.search-intro {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 30px;
  align-items: end;
  padding: 26px 0 24px;
  border-bottom: 5px solid #10171a;
}

.search-intro .story-kicker {
  align-self: start;
  padding-top: 8px;
}

.search-intro-copy h1 {
  max-width: 760px;
  margin: 0;
  color: #10171a;
  font: 700 clamp(42px, 6vw, 72px)/.94 Georgia, 'Times New Roman', serif;
}

.search-intro-copy p {
  max-width: 760px;
  margin: 14px 0 0;
  color: #52605c;
  font-size: 15px;
  line-height: 1.55;
}

.search-workspace {
  padding: 24px 0 0;
}

.search-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 12px 18px;
  padding: 20px;
  border: 1px solid #c5cecb;
  border-top: 5px solid #08744d;
  background: #fff;
}

.search-query-label {
  grid-column: 1 / -1;
  color: #10171a;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.search-input-row {
  min-width: 0;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  border: 2px solid #10171a;
  background: #fff;
}

.search-input-icon {
  display: grid;
  place-items: center;
  color: #08744d;
}

.search-input-icon svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
}

.search-input-row input {
  width: 100%;
  min-height: 52px;
  padding: 11px 4px;
  color: #10171a;
  border: 0;
  outline: 0;
  background: transparent;
  font-size: 16px;
}

.search-input-row:focus-within {
  outline: 3px solid #f0c64d;
  outline-offset: 2px;
}

.search-input-row button,
.search-error button {
  min-height: 52px;
  padding: 10px 20px;
  color: #fff;
  border: 0;
  background: #08744d;
  font-weight: 950;
  cursor: pointer;
}

.search-input-row button:hover,
.search-input-row button:focus-visible,
.search-error button:hover,
.search-error button:focus-visible {
  color: #10171a;
  outline: 2px solid #10171a;
  outline-offset: 2px;
  background: #f0c64d;
}

.search-filter-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.search-filter-row label {
  min-width: 0;
  display: grid;
  gap: 4px;
  color: #52605c;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.search-filter-row select {
  width: 100%;
  min-height: 36px;
  padding: 6px 28px 6px 9px;
  color: #10171a;
  border: 1px solid #9ba7a3;
  background: #fff;
  font-size: 12px;
  font-weight: 800;
}

.search-summary {
  min-height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 24px;
  padding-bottom: 12px;
  border-bottom: 2px solid #10171a;
}

.search-summary > div {
  display: flex;
  align-items: baseline;
  gap: 9px;
}

.search-summary strong {
  color: #08744d;
  font: 700 38px/1 Georgia, 'Times New Roman', serif;
}

.search-summary span {
  color: #52605c;
  font-size: 12px;
  font-weight: 800;
}

.search-summary button {
  padding: 8px 11px;
  color: #10171a;
  border: 1px solid #9ba7a3;
  background: #fff;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.search-summary button:hover,
.search-summary button:focus-visible {
  color: #fff;
  outline: 2px solid #10171a;
  outline-offset: 2px;
  border-color: #10171a;
  background: #10171a;
}

.search-results {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 24px;
}

.search-result-card {
  min-width: 0;
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 16px;
  padding: 22px 0;
  border-bottom: 1px solid #cbd3d0;
}

.search-result-image {
  min-height: 145px;
  display: block;
  overflow: hidden;
  background: #dfe6e3;
}

.search-result-image img {
  width: 100%;
  height: 100%;
  min-height: 145px;
  display: block;
  object-fit: cover;
  transition: transform .18s ease;
}

.search-result-image:hover img,
.search-result-image:focus-visible img {
  transform: scale(1.025);
}

.search-result-body {
  min-width: 0;
  display: grid;
  align-content: start;
}

.search-result-topline,
.search-result-footer {
  display: flex;
  align-items: center;
  gap: 8px;
}

.search-result-topline {
  justify-content: space-between;
  margin-bottom: 8px;
}

.search-result-topline time {
  color: #67736f;
  font-size: 10px;
  font-weight: 750;
}

.search-result-card h2 {
  margin: 0;
  font: 700 24px/1.04 Georgia, 'Times New Roman', serif;
}

.search-result-card h2 a {
  color: #10171a;
}

.search-result-card h2 a:hover,
.search-result-card h2 a:focus-visible {
  color: #075c9e;
  text-decoration: underline;
  text-decoration-thickness: 2px;
}

.search-result-description {
  display: -webkit-box;
  overflow: hidden;
  margin: 9px 0 12px;
  color: #52605c;
  font-size: 12px;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.search-result-footer {
  flex-wrap: wrap;
  margin-top: auto;
  color: #65716d;
  font-size: 9px;
  font-weight: 850;
}

.search-result-source {
  max-width: 150px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.search-result-state {
  padding-left: 8px;
  color: #c8242f;
  border-left: 1px solid #cbd3d0;
}

.search-result-open {
  margin-left: auto;
  color: #075c9e;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}

.search-empty,
.search-error {
  margin-top: 20px;
  padding: 32px;
  border: 1px solid #cbd3d0;
  border-left: 5px solid #d6a900;
  background: #fff;
}

.search-empty strong,
.search-error strong {
  color: #10171a;
  font: 700 28px/1.05 Georgia, 'Times New Roman', serif;
}

.search-empty p {
  margin: 8px 0 0;
  color: #52605c;
}

.search-error button {
  margin-left: 18px;
}

.search-loading {
  position: relative;
  display: grid;
  gap: 10px;
  margin-top: 20px;
  padding: 24px;
  border: 1px solid #d5dcd9;
  background: #fff;
}

.search-loading[hidden] {
  display: none;
}

.search-loading-line {
  height: 12px;
  display: block;
  background: linear-gradient(90deg, #e8edeb, #f5f7f6, #e8edeb);
  background-size: 200% 100%;
  animation: search-loading 1.2s linear infinite;
}

.search-loading-line:nth-child(2) { width: 76%; }
.search-loading-line:nth-child(3) { width: 54%; }
.search-loading strong { color: #52605c; font-size: 11px; }

@keyframes search-loading {
  to { background-position: -200% 0; }
}

.search-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 28px 0 0;
}

.search-pagination[hidden] { display: none; }
.search-pagination > div { display: flex; align-items: center; gap: 5px; }

.search-pagination button {
  min-width: 38px;
  min-height: 38px;
  color: #10171a;
  border: 1px solid #9ba7a3;
  background: #fff;
  font-weight: 900;
  cursor: pointer;
}

.search-pagination button:hover,
.search-pagination button:focus-visible,
.search-pagination button.is-current {
  color: #fff;
  outline: 2px solid #10171a;
  outline-offset: 2px;
  border-color: #10171a;
  background: #10171a;
}

.search-pagination button:disabled {
  color: #9da7a3;
  cursor: not-allowed;
  background: #edf1ef;
}

.search-page-gap { padding: 0 4px; color: #65716d; }

@media (max-width: 980px) {
  .search-form { grid-template-columns: 1fr; }
  .search-results { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .news-edition-label.has-search {
    width: auto;
    max-width: none;
    display: block;
    padding-left: 0;
    border-left: 0;
  }

  .news-edition-label.has-search .news-edition-copy { display: none; }
  .news-edition-label.has-search .news-search-utility { display: block; }
  .news-edition-label.has-search .news-search-utility > summary { min-width: 42px; min-height: 42px; justify-content: center; padding: 8px; }
  .news-edition-label.has-search .news-search-utility-label { display: none; }
  .news-search-utility-drawer { position: fixed; top: 50px; right: 10px; left: 10px; width: auto; max-height: calc(100vh - 62px); overflow: auto; }
  .news-search-suggestion { grid-template-columns: 78px minmax(0, 1fr); }
  .news-search-suggestion img { width: 78px; height: 58px; }

  .search-shell { width: calc(100% - 20px); padding-top: 18px; }
  .search-intro { grid-template-columns: 1fr; gap: 6px; padding-block: 18px; }
  .search-intro-copy h1 { font-size: clamp(36px, 11vw, 48px); }
  .search-intro-copy p { font-size: 13px; }
  .search-form { padding: 14px; }
  .search-input-row { grid-template-columns: 36px minmax(0, 1fr); }
  .search-input-row button { grid-column: 1 / -1; width: 100%; }
  .search-filter-row { grid-template-columns: 1fr; }
  .search-summary { min-height: 56px; align-items: flex-end; }
  .search-summary strong { font-size: 31px; }
  .search-result-card { grid-template-columns: 112px minmax(0, 1fr); gap: 12px; padding: 16px 0; }
  .search-result-image,
  .search-result-image img { min-height: 108px; }
  .search-result-card h2 { font-size: 19px; }
  .search-result-description { -webkit-line-clamp: 2; }
  .search-result-source,
  .search-result-state { display: none; }
  .search-result-open { margin-left: 0; }
  .search-pagination { flex-wrap: wrap; }
}

@media (max-width: 430px) {
  .search-result-card { grid-template-columns: 94px minmax(0, 1fr); }
  .search-result-image,
  .search-result-image img { min-height: 92px; }
  .search-result-description { display: none; }
}

.mwb-day-popover-head { grid-template-columns: minmax(0, 1fr); }

.home-today {
  width: min(100% - 40px, 1180px);
  margin: 36px auto 46px;
  padding-top: 24px;
  border-top: 5px solid #10171a;
}

.home-today-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 16px;
}

.home-today-head h2 { margin: 4px 0 0; font: 700 34px/1.08 Georgia, 'Times New Roman', serif; }
.home-today-head > a { color: #075c9e; font-size: 12px; font-weight: 900; text-underline-offset: 4px; }
.home-today-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid #bfcac7; background: #fff; }
.home-today-grid > a { min-width: 0; color: #10171a; text-decoration: none; }
.home-today-feature { grid-column: span 2; grid-row: span 2; display: grid; grid-template-rows: minmax(220px, 1fr) auto; border-right: 1px solid #bfcac7; }
.home-today-feature img,
.home-today-card img { width: 100%; height: 100%; object-fit: cover; }
.home-today-feature img { min-height: 230px; aspect-ratio: 16 / 9; }
.home-today-feature > div { padding: 22px; }
.home-today-card { display: grid; grid-template-rows: 145px 1fr; border-right: 1px solid #bfcac7; }
.home-today-card:nth-child(3) { border-right: 0; }
.home-today-card > div { padding: 16px; }
.home-today-grid > a > div > span,
.home-today-word > span { color: #c5222c; font-size: 10px; font-weight: 900; }
.home-today-grid h3 { margin: 7px 0 8px; font: 700 24px/1.08 Georgia, 'Times New Roman', serif; }
.home-today-card h3 { font-size: 20px; }
.home-today-grid p { margin: 0; color: #52605c; line-height: 1.45; }
.home-today-feature small { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 13px; color: #08744d; }
.home-today-feature small i { font-style: normal; }
.home-today-word { grid-column: 3 / -1; display: grid; align-content: center; padding: 21px 22px; color: #fff !important; border-top: 1px solid #bfcac7; background: #10171a; }
.home-today-word h3 { color: #fff; font-size: 30px; }
.home-today-word p,
.home-today-word small { color: rgba(255, 255, 255, .82); }
.home-today-grid > a:hover,
.home-today-grid > a:focus-visible { outline: 4px solid #d6a900; outline-offset: -4px; }

.daily-recipe-media { position: relative; min-height: 280px; overflow: hidden; border-bottom: 1px solid #c9d2cf; background: #dfe8e5; }
.daily-recipe-media img { width: 100%; height: 100%; min-height: 280px; aspect-ratio: 16 / 7; object-fit: cover; display: block; }
.daily-recipe-media > span { position: absolute; right: 18px; bottom: 18px; padding: 7px 10px; color: #fff; background: rgba(9, 17, 19, .9); font-size: 10px; font-weight: 900; }
.daily-recipe-head dl { flex-wrap: wrap; }
.daily-companions { margin-top: 38px; }
.daily-companions > header { display: grid; gap: 4px; margin-bottom: 15px; padding-bottom: 11px; border-bottom: 4px solid #10171a; }
.daily-companions > header h2 { margin: 0; font: 700 34px/1.08 Georgia, 'Times New Roman', serif; }
.daily-companion-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.daily-companion-card { overflow: hidden; border: 1px solid #bdc9c5; background: #fff; }
.daily-companion-card > img { width: 100%; aspect-ratio: 16 / 8; object-fit: cover; display: block; }
.daily-companion-copy { padding: 22px; }
.daily-companion-copy > span { color: #c5222c; font-size: 10px; font-weight: 900; }
.daily-companion-copy h3 { margin: 7px 0 8px; font: 700 29px/1.08 Georgia, 'Times New Roman', serif; }
.daily-companion-copy > p { margin: 0; color: #52605c; line-height: 1.5; }
.daily-companion-copy dl { display: flex; flex-wrap: wrap; gap: 20px; margin: 18px 0; }
.daily-companion-copy dl > div { padding-left: 10px; border-left: 3px solid #0b8c5d; }
.daily-companion-copy dt { color: #69736f; font-size: 9px; font-weight: 900; text-transform: uppercase; }
.daily-companion-copy dd { margin: 3px 0 0; font-weight: 900; }
.daily-companion-copy details { border-top: 1px solid #ccd5d2; }
.daily-companion-copy summary { padding: 15px 0; color: #075c9e; font-weight: 900; cursor: pointer; }
.daily-companion-method { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.daily-companion-method h4 { margin: 0 0 9px; font: 700 19px/1.1 Georgia, 'Times New Roman', serif; }
.daily-companion-method ul,
.daily-companion-method ol { display: grid; gap: 7px; margin: 0; padding-left: 20px; }
.daily-companion-method li { line-height: 1.42; }
.daily-companion-method + p { margin: 17px 0 0; padding: 12px; color: #495652; border-left: 4px solid #d6a900; background: #f7f3e6; font-size: 12px; line-height: 1.45; }

.daily-idea-card { display: block; color: #fff; text-decoration: none; }
.daily-idea-card:hover::before,
.daily-idea-card:focus-visible::before { background: linear-gradient(90deg, rgba(8, 17, 20, .96), rgba(8, 17, 20, .58)); }
.daily-idea-card:focus-visible { outline: 4px solid #f0c64d; outline-offset: -4px; }
.daily-idea-card .daily-idea-cta { display: inline-flex; align-items: center; min-height: 38px; padding: 8px 11px; color: #10171a; border: 1px solid #f0c64d; background: #f0c64d; font-size: 11px; font-weight: 900; }
.daily-idea-card:hover .daily-idea-cta,
.daily-idea-card:focus-visible .daily-idea-cta { color: #fff; border-color: #fff; background: #08744d; }
.daily-books { background-image: url('daily-v73/books-reading-v73.png'); }
.daily-beauty { background-image: url('daily-v73/beauty-care-v73.png'); }

.community-safety,
.community-safety h2,
.community-safety h3,
.community-safety strong,
.community-safety li,
.community-safety p,
.finance-hero h1,
.market-desk h2,
.market-desk h3,
.market-desk strong { color: #fff; }
.community-safety li::marker { color: #f0c64d; }

@media (max-width: 900px) {
  .home-today-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-today-feature { grid-column: 1 / -1; grid-row: auto; border-right: 0; border-bottom: 1px solid #bfcac7; }
  .home-today-card:nth-child(3) { border-right: 0; }
  .home-today-word { grid-column: 1 / -1; }
  .daily-companion-grid { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  .newsletter-utility-drawer { position: fixed; top: 43px; right: 8px; left: 8px; width: auto; max-height: calc(100vh - 52px); overflow: auto; }
  .news-search-utility-drawer { position: fixed; top: 43px; right: 8px; left: 8px; width: auto; max-height: calc(100vh - 52px); overflow: auto; }
  .news-search-utility > summary { width: 31px; justify-content: center; padding-inline: 5px; }
  .news-search-utility-label { display: none; }
  .home-today { width: min(100% - 24px, 1180px); margin-block: 28px 36px; }
  .home-today-head { align-items: start; flex-direction: column; gap: 8px; }
  .home-today-head h2 { font-size: 29px; }
  .home-today-grid { grid-template-columns: 1fr; }
  .home-today-feature,
  .home-today-card,
  .home-today-card:nth-child(3),
  .home-today-word { grid-column: auto; border-right: 0; border-bottom: 1px solid #bfcac7; }
  .home-today-word { border-bottom: 0; }
  .home-today-card { grid-template-columns: 120px minmax(0, 1fr); grid-template-rows: minmax(145px, auto); }
  .home-today-grid h3 { font-size: 22px; }
  .daily-recipe-media,
  .daily-recipe-media img { min-height: 220px; }
  .daily-recipe-media img { aspect-ratio: 4 / 3; }
  .daily-companions > header h2 { font-size: 29px; }
  .daily-companion-copy { padding: 19px 16px; }
  .daily-companion-copy h3 { font-size: 25px; }
  .daily-companion-method { grid-template-columns: 1fr; }
}

/* v53 final cascade guards */
.weather-utility-widget {
  position: relative;
  display: block;
  padding-left: 0;
  border-left: 0;
}

.weather-utility-trigger {
  width: 100%;
  min-height: 28px;
  display: flex !important;
  align-items: center;
  gap: 6px;
  padding: 0 3px 0 10px !important;
  border: 0 !important;
  border-left: 2px solid #cf202d !important;
  border-radius: 0 !important;
  color: #17201d !important;
  background: transparent !important;
  box-shadow: none !important;
  font: inherit !important;
  text-align: left;
}

.weather-utility-drawer {
  display: block;
}

.weather-utility-drawer[hidden] {
  display: none !important;
}

.world-country-panel {
  grid-template-columns: minmax(0, 1fr);
}

.world-map-stage .world-weather-marker,
.world-map-stage .world-wind-marker {
  pointer-events: auto;
  cursor: pointer;
}

.world-weather-marker .world-weather-halo {
  fill: var(--weather-color);
  opacity: .23;
}

.world-weather-marker rect {
  fill: var(--weather-color);
  stroke: #fff;
  stroke-width: 1.5;
}

.world-weather-marker text {
  fill: var(--weather-ink);
}

.world-map-stage .world-wind-marker circle {
  fill: var(--wind-color);
  stroke: #fff;
  stroke-width: 1.5;
}

.world-map-stage .world-wind-marker path {
  stroke: #fff;
  stroke-width: 2.5;
}

@media (max-width: 980px) and (min-width: 761px) {
  .world-country-panel {
    grid-template-columns: minmax(0, 1fr) minmax(260px, .8fr);
  }
}

/* v86 Games: clear play-together guidance and controlled competition tools. */
.games-v86 .gameroom-group-challenges {
  position: relative;
  isolation: isolate;
  padding-bottom: 46px;
}

.games-v86 .gameroom-group-challenges::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -5px calc(50% - 50vw) 0;
  border-top: 5px solid #1e78b7;
  border-bottom: 1px solid #c4d1ce;
  background: #edf3f2;
}

.play-together-guide {
  display: grid;
  grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr);
  gap: 24px 30px;
  margin-top: 24px;
  padding: 26px;
  border-left: 6px solid #1e78b7;
  background: #fff;
}

.play-together-guide-copy h3 {
  margin: 6px 0 10px;
  font: 700 27px/1.08 Georgia, 'Times New Roman', serif;
  letter-spacing: 0;
}

.play-together-guide-copy p,
.play-together-limits p {
  margin: 0;
  color: #52625d;
  line-height: 1.5;
}

.play-together-steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid #c5d1ce;
  border-left: 1px solid #c5d1ce;
}

.play-together-steps li {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 11px;
  align-items: center;
  min-height: 82px;
  padding: 13px;
  border-right: 1px solid #c5d1ce;
  border-bottom: 1px solid #c5d1ce;
}

.play-together-steps li > strong {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  color: #fff;
  background: #10171a;
  font-size: 10px;
}

.play-together-steps li > span { display: grid; gap: 4px; }
.play-together-steps b { font-size: 13px; }
.play-together-steps small { color: #596661; line-height: 1.35; }

.play-together-limits {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 16px 18px;
  color: #fff;
  background: #10171a;
}

.play-together-limits > strong {
  padding-right: 18px;
  border-right: 1px solid rgba(255, 255, 255, .3);
  color: #f0c64d;
  font-size: 11px;
}

.play-together-limits p { color: rgba(255, 255, 255, .82); }

.competition-suite {
  margin-top: 32px;
  border: 1px solid #b9c8c4;
  border-top: 7px solid #10171a;
  background: #fff;
}

.competition-suite-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: end;
  padding: 26px;
  border-bottom: 1px solid #c5d1ce;
}

.competition-suite-head h2 {
  margin: 6px 0 9px;
  font: 700 34px/1.05 Georgia, 'Times New Roman', serif;
  letter-spacing: 0;
}

.competition-suite-head p {
  max-width: 780px;
  margin: 0;
  color: #52625d;
  line-height: 1.5;
}

.competition-status-chip {
  padding: 9px 11px;
  color: #7d5610;
  border: 1px solid #d4ad42;
  background: #fff8dc;
  font-size: 10px;
  font-weight: 900;
}

.knowledge-ladder { padding: 26px; }
.knowledge-ladder > header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: start;
}
.knowledge-ladder h3,
.word-grid-game h3,
.friend-tic-game h3 {
  margin: 5px 0 8px;
  font: 700 27px/1.08 Georgia, 'Times New Roman', serif;
  letter-spacing: 0;
}
.knowledge-ladder header p,
.word-grid-game header p,
.friend-tic-game header p {
  margin: 0;
  color: #52625d;
  line-height: 1.45;
}

.ladder-meter {
  display: grid;
  grid-template-columns: auto auto;
  gap: 4px 13px;
  min-width: 142px;
  padding: 12px;
  color: #fff;
  background: #10171a;
}
.ladder-meter > span { grid-column: 1 / -1; color: #f0c64d; font-size: 9px; font-weight: 900; }
.ladder-meter strong { font: 700 21px/1 Georgia, 'Times New Roman', serif; }
.ladder-meter time { color: #9ed7f2; font-weight: 900; }

.ladder-track {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 4px;
  margin: 20px 0;
}
.ladder-track i { height: 7px; background: #d8e0de; }
.ladder-track i.is-reached { background: #0c8658; }
.ladder-track i.is-current { background: #f0c64d; }

.ladder-stage { min-height: 250px; }
.ladder-ready,
.ladder-result {
  display: grid;
  grid-template-columns: 100px minmax(0, 1fr);
  gap: 22px;
  align-items: center;
  min-height: 230px;
  padding: 24px;
  border-left: 6px solid #1e78b7;
  background: #edf6fa;
}
.ladder-ready > strong,
.ladder-result > strong {
  font: 700 70px/1 Georgia, 'Times New Roman', serif;
  text-align: center;
}
.ladder-ready h4,
.ladder-result h4,
.ladder-question h4 {
  margin: 0 0 9px;
  font: 700 25px/1.12 Georgia, 'Times New Roman', serif;
  letter-spacing: 0;
}
.ladder-ready p,
.ladder-result p { margin: 0 0 15px; color: #52625d; line-height: 1.45; }
.ladder-result.is-success { border-left-color: #0c8658; background: #e9f6ef; }

.ladder-question {
  min-height: 250px;
  padding: 22px;
  border: 1px solid #b9c8c4;
  background: #f8faf9;
}
.ladder-question > span { color: #c91e32; font-size: 10px; font-weight: 900; text-transform: uppercase; }
.ladder-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin-top: 18px;
}
.ladder-options button {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 11px;
  align-items: center;
  min-height: 56px;
  padding: 9px 12px;
  color: #10171a;
  border: 1px solid #a9b9b5;
  background: #fff;
  text-align: left;
  cursor: pointer;
}
.ladder-options button b { display: grid; width: 34px; height: 34px; place-items: center; color: #fff; background: #10171a; }
.ladder-options button:hover:not(:disabled),
.ladder-options button:focus-visible { border-color: #1e78b7; background: #eaf5fb; outline: 2px solid rgba(30, 120, 183, .28); }

.ladder-claim {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 18px;
  padding: 18px;
  border-left: 6px solid #c89513;
  background: #fff8dc;
}
.ladder-claim[hidden] { display: none; }
.ladder-claim > div,
.ladder-claim > label { grid-column: 1 / -1; }
.ladder-claim > div p { margin: 5px 0 0; }
.ladder-claim input {
  width: 100%;
  min-height: 44px;
  padding: 9px 10px;
  border: 1px solid #9eafab;
  background: #fff;
  font: inherit;
}
.ladder-claim > label { display: flex; gap: 10px; align-items: flex-start; font-size: 12px; }
.ladder-claim > label input { width: auto; min-height: 0; margin-top: 2px; }
.ladder-claim .news-button { grid-column: 4; }

.competition-live-status { min-height: 0; margin: 12px 0 0; font-weight: 800; }
.competition-live-status:not(:empty) { padding: 11px 13px; border-left: 4px solid #1e78b7; background: #edf6fa; }
.competition-live-status.is-error { color: #9f2032; border-left-color: #c91e32; background: #fff0f2; }
.competition-live-status.is-success { color: #075b40; border-left-color: #0c8658; background: #e9f6ef; }

.competition-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid #c5d1ce;
}
.competition-pair > article { min-width: 0; padding: 24px 26px; }
.competition-pair > article:first-child { border-right: 1px solid #c5d1ce; }

.word-grid-letters {
  display: grid;
  grid-template-columns: repeat(7, minmax(38px, 1fr));
  gap: 6px;
  margin: 20px 0;
}
.word-grid-letters b {
  display: grid;
  aspect-ratio: 1;
  place-items: center;
  color: #fff;
  background: #10171a;
  font: 700 26px/1 Georgia, 'Times New Roman', serif;
}
.word-grid-game form,
.friend-tic-entry form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}
.word-grid-game form label { display: grid; gap: 6px; font-size: 11px; font-weight: 900; }
.word-grid-game input,
.friend-tic-entry input {
  width: 100%;
  min-height: 44px;
  padding: 9px 10px;
  border: 1px solid #9eafab;
  background: #fff;
  font: inherit;
}
.word-grid-score {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-top: 14px;
  color: #fff;
  background: #10171a;
}
.word-grid-score span { display: flex; justify-content: space-between; gap: 10px; padding: 11px 13px; }
.word-grid-score span:first-child { border-right: 1px solid rgba(255, 255, 255, .25); }
.word-grid-score strong { color: #f0c64d; }
.word-grid-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.word-grid-actions button,
.friend-tic-room button {
  min-height: 38px;
  padding: 7px 10px;
  border: 1px solid #9eafab;
  background: #fff;
  font: inherit;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}
.word-grid-actions button:hover,
.friend-tic-room button:hover { color: #fff; border-color: #1e78b7; background: #1e78b7; }

.friend-tic-entry { display: grid; gap: 9px; margin-top: 20px; }
.friend-tic-entry form:last-child { grid-template-columns: minmax(100px, .65fr) minmax(120px, 1fr) auto; }
.friend-tic-room { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: center; margin-top: 18px; padding: 13px; background: #edf3f2; }
.friend-tic-room > div { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 3px 10px; align-items: center; }
.friend-tic-room > div span { font-size: 9px; font-weight: 900; text-transform: uppercase; }
.friend-tic-room > div strong { font: 700 24px/1 Georgia, 'Times New Roman', serif; letter-spacing: 2px; }
.friend-tic-room > div button { grid-column: 1 / -1; }
.friend-tic-room p { margin: 0; font-weight: 900; }
.friend-tic-room p i { padding-inline: 8px; color: #65726e; }
.friend-tic-board {
  display: grid;
  grid-template-columns: repeat(3, 76px);
  grid-template-rows: repeat(3, 76px);
  justify-content: center;
  gap: 5px;
  margin-top: 14px;
}
.friend-tic-board button {
  width: 76px;
  height: 76px;
  color: #10171a;
  border: 1px solid #9eafab;
  background: #fff;
  font: 700 36px/1 Georgia, 'Times New Roman', serif;
  cursor: pointer;
}
.friend-tic-board button:hover:not(:disabled) { border-color: #0c8658; background: #e9f6ef; }
.friend-tic-board button:disabled { cursor: default; opacity: 1; }

.competition-integrity-note {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 20px;
  align-items: center;
  padding: 17px 26px;
  color: #fff;
  background: #10171a;
}
.competition-integrity-note strong { color: #f0c64d; font-size: 11px; }
.competition-integrity-note p { margin: 0; color: rgba(255, 255, 255, .82); line-height: 1.48; }

.studio-plan-explainer { display: grid !important; gap: 8px !important; padding: 16px; border-left: 5px solid #1e78b7; background: #edf6fa; }
.studio-plan-explainer > strong { padding: 0 !important; background: transparent !important; font: 700 22px/1.1 Georgia, 'Times New Roman', serif; }
.studio-plan-explainer > p { margin: 0; color: #52625d; line-height: 1.5; }
.studio-plan-caps { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px !important; }
.studio-plan-caps span { display: grid; gap: 4px; min-height: 64px; align-content: center; background: #fff !important; border-top: 3px solid #0c8658; }
.studio-plan-caps b { font-size: 10px; color: #075b40; }

@media (max-width: 900px) {
  .play-together-guide,
  .competition-suite-head,
  .knowledge-ladder > header { grid-template-columns: 1fr; }
  .competition-pair { grid-template-columns: 1fr; }
  .competition-pair > article:first-child { border-right: 0; border-bottom: 1px solid #c5d1ce; }
  .competition-status-chip { justify-self: start; }
  .ladder-claim { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ladder-claim .news-button { grid-column: 2; }
  .studio-plan-caps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
  .games-v86 .gameroom-group-challenges { padding-bottom: 34px; }
  .play-together-guide,
  .competition-suite-head,
  .knowledge-ladder,
  .competition-pair > article { padding: 18px 14px; }
  .play-together-steps,
  .ladder-options,
  .ladder-claim,
  .studio-plan-caps { grid-template-columns: 1fr; }
  .play-together-limits,
  .competition-integrity-note { grid-template-columns: 1fr; gap: 9px; }
  .play-together-limits > strong { padding-right: 0; padding-bottom: 8px; border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .3); }
  .competition-suite-head h2 { font-size: 29px; }
  .ladder-ready,
  .ladder-result { grid-template-columns: 62px minmax(0, 1fr); gap: 14px; padding: 17px 14px; }
  .ladder-ready > strong,
  .ladder-result > strong { font-size: 48px; }
  .ladder-question { padding: 17px 14px; }
  .ladder-claim .news-button { grid-column: 1; }
  .word-grid-letters { grid-template-columns: repeat(7, minmax(30px, 1fr)); gap: 3px; }
  .word-grid-letters b { font-size: 20px; }
  .word-grid-game form,
  .friend-tic-entry form,
  .friend-tic-entry form:last-child,
  .friend-tic-room { grid-template-columns: 1fr; }
  .friend-tic-board { grid-template-columns: repeat(3, 68px); grid-template-rows: repeat(3, 68px); }
  .friend-tic-board button { width: 68px; height: 68px; }
}

@media (max-width: 760px) {
  .world-country-panel {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 760px) {
  .site-header {
    grid-template-columns: 1fr;
  }

  .nav {
    justify-content: flex-start;
  }

  .hero,
  .section {
    padding-left: 20px;
    padding-right: 20px;
  }

  h1 {
    font-size: 42px;
  }

  h2 {
    font-size: 34px;
  }

  .grid,
  .media-board,
  .command-panels,
  .package-grid,
  .voices-grid,
  .program-grid,
  .newsletter-grid,
    .creator-grid,
    .reward-grid,
    .safety-grid,
    .channel-tiles,
    .schedule-board,
    .ad-format-grid,
    .live-update-layout,
    .ops-grid {
    grid-template-columns: 1fr;
  }

  .media-board article,
  .command-panel,
  .panel,
  .card {
    min-height: auto;
  }

  .launch-package {
    min-height: auto;
  }

  .proof-strip span,
  .ticker span {
    font-size: 11px;
  }
}

/* v20 readiness/profile pages */
.readiness-hero {
  width: min(100% - 48px, 1440px);
  margin: 34px auto 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, .35fr);
  gap: 24px;
  align-items: end;
  min-height: 420px;
  padding: clamp(34px, 6vw, 76px);
  border-radius: 10px;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(120deg, rgba(8, 20, 18, .94), rgba(8, 20, 18, .72)), url("https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1800&q=80") center / cover;
  box-shadow: 0 28px 80px rgba(0,0,0,.18);
}
.readiness-news { background-image: linear-gradient(120deg, rgba(5, 10, 18, .94), rgba(5, 10, 18, .66)), url("https://images.unsplash.com/photo-1495020689067-958852a7765e?auto=format&fit=crop&w=1800&q=80"); }
.readiness-ten { background-image: linear-gradient(120deg, rgba(5, 10, 18, .94), rgba(5, 10, 18, .66)), url("https://images.unsplash.com/photo-1492691527719-9d1e07e534b4?auto=format&fit=crop&w=1800&q=80"); }
.readiness-build { background-image: linear-gradient(120deg, rgba(15, 22, 20, .94), rgba(15, 22, 20, .66)), url("https://images.unsplash.com/photo-1503387762-592deb58ef4e?auto=format&fit=crop&w=1800&q=80"); }
.readiness-myplace { background-image: linear-gradient(120deg, rgba(18, 8, 6, .94), rgba(18, 8, 6, .66)), url("https://images.unsplash.com/photo-1555396273-367ea4eb4db5?auto=format&fit=crop&w=1800&q=80"); }
.readiness-hero h1,
.readiness-hero p { color: #fff; }
.readiness-hero h1 { max-width: 920px; }
.readiness-hero aside {
  display: grid;
  gap: 8px;
  padding: 20px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 10px;
  background: rgba(255,255,255,.12);
  backdrop-filter: blur(10px);
}
.readiness-hero aside strong { font-size: clamp(2.4rem, 6vw, 5rem); line-height: .9; }
.readiness-section,
.readiness-band {
  width: min(100% - 48px, 1440px);
  margin: 24px auto;
  display: grid;
  grid-template-columns: minmax(280px, .42fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}
.readiness-copy,
.readiness-grid article,
.readiness-band {
  border: 1px solid rgba(30, 45, 40, .14);
  border-radius: 10px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 18px 44px rgba(0,0,0,.07);
}
.readiness-copy { padding: 24px; }
.readiness-copy ul { margin: 0; padding-left: 20px; color: #26352f; line-height: 1.55; }
.readiness-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.readiness-grid article { min-height: 150px; padding: 20px; }
.readiness-grid span { display: block; margin-bottom: 10px; color: #0b7a53; font-size: .78rem; font-weight: 900; text-transform: uppercase; }
.readiness-grid strong { display: block; color: #101816; font-size: clamp(1.05rem, 2vw, 1.35rem); line-height: 1.18; }
.readiness-band { grid-template-columns: 1fr auto; align-items: center; padding: 24px; }
@media (max-width: 820px) {
  .readiness-hero,
  .readiness-section,
  .readiness-band { width: min(100% - 28px, 1440px); grid-template-columns: 1fr; }
  .readiness-grid { grid-template-columns: 1fr; }
}

/* v26 MWB launch desk */
.launch-desk-hero {
  width: min(100% - 48px, 1440px);
  margin: 34px auto 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .38fr);
  gap: 24px;
  align-items: end;
  min-height: 520px;
  padding: 56px;
  color: #fff;
  background:
    linear-gradient(110deg, rgba(6, 10, 14, .94), rgba(6, 10, 14, .62)),
    url("news-water-greece-v28.webp") center / cover;
  box-shadow: var(--shadow);
}

.launch-desk-hero h1,
.launch-desk-hero p {
  color: #fff;
}

.launch-desk-copy {
  max-width: 920px;
}

.launch-status-board {
  display: grid;
  gap: 10px;
  padding: 22px;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.12);
  backdrop-filter: blur(10px);
}

.launch-status-board strong {
  display: block;
  color: #fff;
  font-size: 64px;
  line-height: .9;
}

.launch-status-board span {
  display: block;
  padding: 10px 12px;
  color: #fff;
  border-left: 5px solid var(--gold);
  background: rgba(255,255,255,.11);
  font-weight: 900;
}

.launch-console {
  background: rgba(255,255,255,.58);
}

.launch-step-grid,
.launch-page-grid,
.role-grid {
  display: grid;
  gap: 14px;
}

.launch-step-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.launch-page-grid,
.role-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.launch-step-grid article,
.launch-page-grid a,
.role-grid article,
.gate-list article {
  min-height: 190px;
  padding: 20px;
  border: 1px solid var(--line);
  border-top: 5px solid var(--blue);
  background: rgba(255,255,255,.94);
  box-shadow: 0 16px 38px rgba(10, 15, 20, .08);
}

.launch-step-grid article:nth-child(2),
.launch-page-grid a:nth-child(2),
.role-grid article:nth-child(2),
.gate-list article:nth-child(2) {
  border-top-color: var(--red);
}

.launch-step-grid article:nth-child(3),
.launch-page-grid a:nth-child(3),
.role-grid article:nth-child(3),
.gate-list article:nth-child(3) {
  border-top-color: var(--gold);
}

.launch-step-grid article:nth-child(4),
.launch-page-grid a:nth-child(4),
.role-grid article:nth-child(4),
.gate-list article:nth-child(4) {
  border-top-color: var(--black);
}

.launch-step-grid span,
.launch-page-grid span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  margin-bottom: 26px;
  color: #fff;
  background: var(--black);
  font-weight: 950;
}

.launch-step-grid strong,
.launch-page-grid strong,
.role-grid strong,
.gate-list strong {
  display: block;
  margin-bottom: 10px;
  color: var(--ink);
  font-size: 22px;
  line-height: 1.14;
}

.launch-step-grid p,
.launch-page-grid p {
  margin-bottom: 0;
}

.launch-gates {
  color: #fff;
  background: var(--black);
}

.launch-gates h2,
.launch-gates p {
  color: #fff;
}

.launch-gate-layout {
  display: grid;
  grid-template-columns: minmax(260px, .42fr) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.gate-list {
  display: grid;
  gap: 12px;
}

.gate-list article {
  min-height: auto;
  background: rgba(255,255,255,.96);
}

.gate-list span,
.role-grid span {
  color: var(--muted);
  font-size: 16px;
  line-height: 1.55;
}

.launch-page-grid a {
  color: inherit;
}

.launch-page-grid a:hover,
.launch-page-grid a:focus-visible {
  transform: translateY(-2px);
}

.launch-roles {
  background: #fff;
}

@media (max-width: 1100px) {
  .launch-now-grid,
  .launch-desk-hero,
  .launch-gate-layout {
    grid-template-columns: 1fr;
  }

  .launch-now-actions {
    justify-content: flex-start;
  }

  .launch-step-grid,
  .launch-page-grid,
  .role-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .launch-desk-hero {
    width: min(100% - 28px, 1440px);
    min-height: auto;
    padding: 34px 22px;
  }

  .launch-desk-hero h1 {
    font-size: 42px;
  }

  .launch-now h2 {
    font-size: 28px;
  }

  .launch-step-grid,
  .launch-page-grid,
  .role-grid {
    grid-template-columns: 1fr;
  }

  .launch-step-grid article,
  .launch-page-grid a,
  .role-grid article {
    min-height: auto;
  }
}

/* Cookie consent gate */
.cookie-consent-panel {
  position: fixed;
  z-index: 9999;
  left: clamp(14px, 3vw, 34px);
  right: clamp(14px, 3vw, 34px);
  bottom: clamp(14px, 3vw, 34px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  max-width: 980px;
  margin-inline: auto;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 12px;
  background: rgba(10, 24, 20, .96);
  color: #fff;
  box-shadow: 0 24px 80px rgba(0,0,0,.28);
}
.cookie-consent-panel strong { display: block; margin-bottom: 6px; color: #fff; font-size: 1.05rem; }
.cookie-consent-panel p { margin: 0; color: rgba(255,255,255,.82); line-height: 1.45; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.cookie-actions button {
  min-height: 42px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 8px;
  padding: 10px 14px;
  background: rgba(255,255,255,.10);
  color: #fff;
  font-weight: 900;
  cursor: pointer;
}
.cookie-actions button[data-cookie-analytics] { background: #9fca2b; border-color: #9fca2b; color: #102018; }
@media (max-width: 720px) { .cookie-consent-panel { grid-template-columns: 1fr; } .cookie-actions { justify-content: stretch; } .cookie-actions button { flex: 1 1 auto; } }


.cookie-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  color: rgba(255,255,255,.92);
  font-weight: 800;
}
.cookie-toggle input { width: 18px; height: 18px; accent-color: var(--lime, #b6ff16); }

/* v37 source network and verified field-report bridge */
.source-directory-page,
.field-report-page {
  padding-top: 32px;
  padding-bottom: 70px;
}

.source-directory-heading {
  margin-bottom: 18px;
}

.source-directory-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin-bottom: 18px;
  border: 1px solid var(--news-line, #c9d0d2);
  background: var(--news-line, #c9d0d2);
}

.source-directory-summary article {
  min-height: 112px;
  padding: 18px;
  background: #fff;
}

.source-directory-summary strong,
.source-directory-summary span {
  display: block;
}

.source-directory-summary strong {
  margin-bottom: 9px;
  font-family: Georgia, serif;
  font-size: 30px;
}

.source-directory-summary span {
  color: #5c676c;
  font-size: 12px;
  line-height: 1.45;
}

.source-directory-controls {
  display: grid;
  grid-template-columns: minmax(280px, 1.4fr) minmax(190px, .7fr) 130px;
  gap: 12px;
  align-items: end;
  padding: 16px;
  border-top: 4px solid #0c77a8;
  background: #fff;
}

.source-directory-controls label,
.source-directory-controls label > span,
.source-directory-controls > div span,
.source-directory-controls > div strong {
  display: block;
}

.source-directory-controls label > span,
.source-directory-controls > div span {
  margin-bottom: 6px;
  color: #566267;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.source-directory-controls input,
.source-directory-controls select {
  width: 100%;
  min-height: 42px;
  padding: 9px 10px;
  border: 1px solid #bcc7ca;
  border-radius: 0;
  background: #fff;
}

.source-directory-controls > div {
  padding-left: 14px;
  border-left: 3px solid #d62435;
}

.source-directory-controls > div strong {
  font-size: 25px;
}

.source-directory-boundary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin: 12px 0 18px;
  border: 1px solid #cbd3d5;
  background: #cbd3d5;
}

.source-directory-boundary > div {
  padding: 17px;
  background: #f9fbfb;
}

.source-directory-boundary p {
  margin: 7px 0 0;
  color: #536167;
  line-height: 1.5;
}

.source-directory-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.source-directory-grid .source-watch-card {
  min-height: 270px;
}

.field-report-band,
.field-report-final {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 34px 0 0;
  padding: 24px;
  border-left: 7px solid #148158;
  color: #fff;
  background: #10171a;
}

.field-report-band h2,
.field-report-final h2 {
  margin: 6px 0 8px;
  color: #fff;
  font-size: 28px;
}

.field-report-band p {
  max-width: 760px;
  margin: 0;
  color: rgba(255,255,255,.74);
  line-height: 1.5;
}

.field-report-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 28px;
  padding: 30px 0;
  border-top: 5px solid #10171a;
  border-bottom: 1px solid #aeb9bc;
}

.field-report-heading > div {
  max-width: 830px;
}

.field-report-heading h1 {
  margin: 8px 0 12px;
  font-family: Georgia, serif;
  font-size: 48px;
  line-height: 1.02;
}

.field-report-heading p {
  margin: 0;
  color: #526066;
  font-size: 17px;
  line-height: 1.55;
}

.field-emergency {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr);
  gap: 20px;
  align-items: center;
  margin: 18px 0;
  padding: 18px 22px;
  color: #fff;
  background: #bd1827;
}

.field-emergency strong {
  font-size: 30px;
}

.field-emergency p {
  margin: 0;
  color: #fff;
  line-height: 1.5;
}

.field-report-policy {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid #c8d1d3;
  background: #c8d1d3;
}

.field-report-policy article {
  min-height: 210px;
  padding: 22px;
  background: #fff;
}

.field-report-policy article > span {
  color: #d62435;
  font-size: 11px;
  font-weight: 900;
}

.field-report-policy h2 {
  margin: 8px 0 10px;
  font-family: Georgia, serif;
  font-size: 25px;
}

.field-report-policy p,
.field-reward-ledger p {
  color: #536167;
  line-height: 1.55;
}

.field-reward-ledger {
  margin-top: 18px;
  padding: 24px;
  border-top: 5px solid #bf941b;
  background: #fff;
}

.field-reward-ledger h2 {
  margin: 7px 0 8px;
  font-family: Georgia, serif;
  font-size: 30px;
}

.field-reward-values {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin: 18px 0 12px;
  background: #d4dadd;
}

.field-reward-values > span {
  min-height: 108px;
  padding: 15px;
  background: #f6f8f8;
}

.field-reward-values b,
.field-reward-values small {
  display: block;
}

.field-reward-values b {
  margin-bottom: 8px;
  color: #148158;
  font-size: 27px;
}

.field-reward-ledger > small {
  color: #647075;
}

@media (max-width: 1050px) {
  .source-directory-summary,
  .source-directory-grid,
  .field-reward-values { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .source-directory-page,
  .field-report-page { padding-top: 18px; }
  .source-directory-summary,
  .source-directory-controls,
  .source-directory-boundary,
  .source-directory-grid,
  .field-report-policy,
  .field-reward-values { grid-template-columns: 1fr; }
  .field-report-heading,
  .field-report-band,
  .field-report-final { align-items: stretch; flex-direction: column; }
  .field-report-heading h1 { font-size: 37px; }
  .field-emergency { grid-template-columns: 1fr; }
}

/* v28 general news front, bilingual stories and daily edition */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

body[data-language="el"] [data-lang="en"],
body[data-language="en"] [data-lang="el"] {
  display: none !important;
}

.news-public,
.news-article-page,
.newsletter-page {
  background: #f6f5f2;
  color: #111417;
}

.news-public *,
.news-article-page *,
.newsletter-page * {
  letter-spacing: 0;
}

.news-masthead {
  border-bottom: 1px solid #16191d;
  background: #fff;
}

.news-utility,
.news-brand-row,
.news-category-nav,
.news-front,
.news-stream,
.municipality-index,
.news-article-shell,
.newsletter-shell,
.news-footer {
  width: min(100% - 40px, 1360px);
  margin-inline: auto;
}

.news-utility {
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  color: #5c6065;
  border-bottom: 1px solid #dddcd8;
  font-size: 12px;
  font-weight: 800;
}

.news-utility-actions,
.news-brand-row,
.news-category-nav,
.news-filter-row,
.story-actions,
.newsletter-band-actions,
.article-actions,
.article-taxonomy {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.news-utility-actions a {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  gap: 6px;
}

.news-utility-actions b {
  display: inline-grid;
  min-width: 22px;
  height: 22px;
  place-items: center;
  padding: 0 5px;
  color: #fff;
  background: #d71920;
  font-size: 11px;
}

.language-control select {
  min-height: 30px;
  border: 1px solid #c8c7c3;
  border-radius: 0;
  padding: 4px 26px 4px 8px;
  color: #111417;
  background: #fff;
  font: inherit;
  font-weight: 900;
}

.news-brand-row {
  min-height: 132px;
  justify-content: space-between;
}

.news-wordmark {
  display: inline-flex;
  align-items: center;
  gap: 14px;
}

.news-mark {
  display: flex;
  flex-direction: column;
  width: 68px;
  height: 68px;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: #101317;
  font-size: 18px;
  font-weight: 950;
  line-height: .9;
}

.news-mark::after {
  content: "NEWS";
  margin-top: 5px;
  font-size: 9px;
  font-weight: 950;
  letter-spacing: .16em;
  line-height: 1;
}

.news-wordmark strong,
.news-wordmark small {
  display: block;
}

.news-wordmark strong {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(34px, 5vw, 64px);
  line-height: .9;
}

.news-wordmark small {
  margin-top: 8px;
  color: #0057ff;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.news-edition-label {
  max-width: 330px;
  padding-left: 16px;
  border-left: 5px solid #d71920;
  font-size: 12px;
  font-weight: 950;
}

.news-category-nav {
  min-height: 48px;
  flex-wrap: nowrap;
  overflow-x: auto;
  border-top: 1px solid #16191d;
  scrollbar-width: thin;
}

.news-category-nav a {
  min-height: 47px;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  padding: 8px 13px;
  border-right: 1px solid #dddcd8;
  font-size: 13px;
  font-weight: 950;
}

.news-category-nav a:first-child {
  color: #fff;
  background: #d71920;
}

.news-alert-bar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  width: 100%;
  padding: 12px max(20px, calc((100vw - 1360px) / 2));
  color: #fff;
  background: #101317;
}

.news-alert-bar strong {
  color: #111417;
  padding: 8px 10px;
  background: #f0c64d;
  font-size: 11px;
}

.news-alert-bar p {
  margin: 0;
  color: #fff;
  font-size: 13px;
}

.news-front {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(330px, .8fr);
  gap: 22px;
  padding-block: 28px 34px;
  border-bottom: 1px solid #bbb9b3;
}

.front-lead {
  min-width: 0;
}

.front-lead-image {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #dfe4e6;
}

.front-lead-image img,
.side-story img,
.news-card img,
.article-main-image img,
.newsletter-story img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.visual-label {
  position: absolute;
  right: 10px;
  bottom: 10px;
  max-width: calc(100% - 20px);
  padding: 7px 9px;
  color: #fff;
  background: rgba(16, 19, 23, .86);
  font-size: 10px;
  font-weight: 900;
}

.front-lead-copy {
  padding-top: 18px;
}

.story-kicker {
  display: block;
  margin-bottom: 9px;
  color: #d71920;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.front-lead h1,
.news-article-header h1 {
  margin: 0;
  max-width: 1020px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(38px, 5.4vw, 76px);
  line-height: .98;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.story-deck {
  max-width: 880px;
  margin: 15px 0 0;
  color: #4c5359;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(18px, 2.1vw, 24px);
  line-height: 1.35;
}

.story-meta,
.source-line {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 14px;
  align-items: center;
  margin-top: 12px;
  color: #666b70;
  font-size: 12px;
  line-height: 1.45;
}

.source-line a {
  color: #0057ff;
  font-weight: 900;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.story-actions {
  margin-top: 18px;
}

.news-button {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #101317;
  border-radius: 0;
  padding: 10px 14px;
  color: #fff;
  background: #101317;
  font: inherit;
  font-size: 13px;
  font-weight: 950;
  cursor: pointer;
}

.news-button.secondary {
  color: #101317;
  background: transparent;
}

.news-button.is-selected {
  color: #101317;
  border-color: #f0c64d;
  background: #f0c64d;
}

.news-button.light {
  color: #101317;
  border-color: #fff;
  background: #fff;
}

.front-side {
  display: grid;
  gap: 20px;
}

.side-story {
  display: grid;
  grid-template-columns: minmax(130px, .8fr) minmax(0, 1.2fr);
  gap: 14px;
  align-items: start;
  padding-bottom: 20px;
  border-bottom: 1px solid #bbb9b3;
}

.side-story > a {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #dfe4e6;
}

.side-story h2 {
  margin: 0;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(20px, 2.3vw, 30px);
  line-height: 1.08;
  overflow-wrap: anywhere;
}

.side-story .source-line {
  font-size: 11px;
}

.news-stream,
.municipality-index,
.newsletter-shell {
  padding-block: 38px;
}

.news-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 18px;
}

.news-section-heading > div {
  display: flex;
  align-items: center;
  gap: 12px;
}

.section-rule {
  width: 8px;
  height: 40px;
  background: #0057ff;
}

.news-section-heading h2,
.world-desk h2,
.daily-newsletter-band h2,
.newsletter-header h1 {
  margin: 0;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(30px, 4vw, 52px);
  line-height: 1.04;
  letter-spacing: 0;
}

.news-search input {
  width: min(340px, 48vw);
  min-height: 42px;
  border: 1px solid #aaa8a2;
  border-radius: 0;
  padding: 10px 12px;
  background: #fff;
  font: inherit;
}

.news-filter-row {
  margin-bottom: 20px;
}

.news-filter-row button {
  min-height: 36px;
  border: 1px solid #aaa8a2;
  border-radius: 0;
  padding: 7px 11px;
  color: #111417;
  background: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.news-filter-row button.is-active {
  color: #fff;
  border-color: #0057ff;
  background: #0057ff;
}

.filter-separator {
  width: 1px;
  height: 30px;
  margin-inline: 3px;
  background: #aaa8a2;
}

.news-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.news-card {
  min-width: 0;
  border-top: 5px solid #101317;
  background: #fff;
}

.news-card > a {
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
}

.news-card:nth-child(2) {
  border-top-color: #0057ff;
}

.news-card:nth-child(3) {
  border-top-color: #d71920;
}

.news-card-body {
  padding: 16px;
}

.news-card h3 {
  margin: 0;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(22px, 2.8vw, 32px);
  line-height: 1.08;
  overflow-wrap: anywhere;
}

.news-card p {
  color: #555c62;
  line-height: 1.5;
}

.news-empty {
  padding: 24px;
  border: 1px dashed #aaa8a2;
  text-align: center;
}

.world-desk {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  gap: 30px;
  padding: 46px max(20px, calc((100vw - 1360px) / 2));
  color: #fff;
  background: #101317;
}

.world-desk h2 {
  max-width: 850px;
  color: #fff;
}

.world-desk-links {
  display: grid;
  align-content: start;
  gap: 12px;
}

.world-desk-links a {
  display: grid;
  gap: 6px;
  padding: 16px;
  border: 1px solid rgba(255,255,255,.28);
  border-left: 6px solid #f0c64d;
}

.world-desk-links span {
  color: #f0c64d;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.world-desk-links strong {
  color: #fff;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 20px;
  line-height: 1.2;
}

.municipality-index {
  border-bottom: 1px solid #bbb9b3;
}

.municipality-intro {
  max-width: 820px;
  color: #555c62;
  font-size: 17px;
  line-height: 1.55;
}

.municipality-tags {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 22px;
}

.municipality-tags button {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid #aaa8a2;
  border-radius: 0;
  padding: 10px 12px;
  color: #111417;
  background: #fff;
  font: inherit;
  font-weight: 900;
  text-align: left;
}

.municipality-tags span {
  display: inline-grid;
  min-width: 28px;
  height: 28px;
  place-items: center;
  padding: 0 5px;
  color: #fff;
  background: #0057ff;
  font-size: 11px;
}

.daily-newsletter-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 28px;
  align-items: center;
  padding: 42px max(20px, calc((100vw - 1360px) / 2));
  color: #fff;
  background: #0057ff;
}

.daily-newsletter-band h2 {
  max-width: 880px;
  color: #fff;
}

.daily-newsletter-band .story-kicker {
  color: #fff;
}

.newsletter-band-actions {
  justify-content: flex-end;
  max-width: 340px;
}

.newsletter-band-actions > span {
  color: rgba(255,255,255,.88);
  font-size: 12px;
}

.news-footer {
  display: grid;
  grid-template-columns: minmax(260px, 1.5fr) repeat(3, minmax(150px, .6fr));
  gap: 28px;
  padding-block: 38px;
}

.news-footer strong {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 28px;
}

.news-footer p {
  max-width: 520px;
  color: #666b70;
}

.news-footer > div:not(:first-child) {
  display: grid;
  align-content: start;
  gap: 10px;
  font-size: 13px;
  font-weight: 900;
}

.news-footer a {
  display: block;
  width: fit-content;
  line-height: 1.3;
}

.news-footer .mwb-footer-service-links {
  display: grid;
  align-content: start;
  gap: 10px;
}

.news-footer .mwb-footer-socials {
  display: grid;
  align-content: start;
  gap: 8px;
}

.news-footer .mwb-footer-social-heading {
  font-family: inherit;
  font-size: 11px;
  line-height: 1.35;
  text-transform: uppercase;
}

.mwb-footer-social-list {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 6px;
  width: fit-content;
  max-width: 100%;
}

.news-footer .mwb-footer-social-link {
  display: inline-grid;
  place-items: center;
  align-items: center;
  width: 34px;
  height: 34px;
  min-height: 34px;
  padding: 0;
  flex: 0 0 34px;
  border: 1px solid #b9c7c4;
  border-radius: 4px;
  background: rgba(255, 255, 255, .66);
  color: #10171a;
  text-decoration: none;
  box-shadow: none;
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.news-footer .mwb-footer-social-link:hover,
.news-footer .mwb-footer-social-link:focus-visible {
  border-color: var(--social-accent, #087f5b);
  background: #fff;
  box-shadow: 0 3px 10px rgba(16, 23, 26, .14), inset 0 -2px 0 var(--social-accent, #087f5b);
  transform: translateY(-2px);
}

.mwb-footer-social-icon {
  display: inline-grid;
  width: 22px;
  height: 22px;
  place-items: center;
  flex: 0 0 22px;
}

.mwb-footer-social-icon img {
  display: block;
  width: 18px;
  height: 18px;
  object-fit: contain;
}

.mwb-footer-social-youtube { --social-accent: #ff0000; }
.mwb-footer-social-facebook { --social-accent: #0866ff; }
.mwb-footer-social-instagram { --social-accent: #e4405f; }
.mwb-footer-social-tiktok { --social-accent: #111; }
.mwb-footer-social-linkedin { --social-accent: #0a66c2; }
.mwb-footer-social-x { --social-accent: #111; }
.mwb-footer-social-threads { --social-accent: #111; }

@media (max-width: 760px) {
  .mwb-footer-social-list {
    max-width: calc(100vw - 40px);
    overflow-x: auto;
    scrollbar-width: none;
  }

  .mwb-footer-social-list::-webkit-scrollbar {
    display: none;
  }
}

.webtv-empty {
  grid-column: 1 / -1;
  margin: 0;
  padding: 28px;
  border: 1px solid #cbd7d4;
  background: #fff;
  color: #4e5b59;
  font-weight: 800;
}

/* v28 article pages */
.article-topbar {
  border-bottom: 1px solid #16191d;
  background: #fff;
}

.article-topbar-inner {
  width: min(100% - 40px, 1360px);
  min-height: 78px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.article-topbar .news-wordmark strong {
  font-size: 34px;
}

.article-topbar .news-mark {
  width: 48px;
  height: 48px;
  font-size: 13px;
}

.article-top-actions {
  display: flex;
  align-items: center;
  gap: 9px;
}

.news-article-shell {
  padding-block: 36px 54px;
}

.news-article-header {
  max-width: 1080px;
  margin-bottom: 24px;
}

.news-article-header .story-deck {
  max-width: 920px;
}

.article-taxonomy {
  margin-bottom: 12px;
}

.article-taxonomy a,
.article-taxonomy span {
  padding: 6px 8px;
  color: #fff;
  background: #101317;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.article-taxonomy .municipality-chip {
  color: #111417;
  background: #f0c64d;
}

.article-main-image {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #dfe4e6;
}

.article-image-caption {
  display: grid;
  gap: 4px;
  margin: 0;
  padding: 10px 0 16px;
  color: #666b70;
  border-bottom: 1px solid #bbb9b3;
  font-size: 11px;
  line-height: 1.45;
}

.article-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 34px;
  align-items: start;
  margin-top: 28px;
}

.article-copy {
  max-width: 820px;
}

.article-copy p,
.article-copy li {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 19px;
  line-height: 1.72;
}

.article-copy h2 {
  margin: 34px 0 10px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(28px, 4vw, 42px);
  line-height: 1.08;
  letter-spacing: 0;
}

.article-copy .article-lead {
  margin-top: 0;
  font-size: 23px;
  line-height: 1.55;
}

.article-copy blockquote {
  margin: 28px 0;
  padding: 18px 22px;
  border-left: 7px solid #0057ff;
  background: #fff;
}

.article-copy blockquote p {
  margin: 0;
}

.article-sidebar {
  position: sticky;
  top: 18px;
  display: grid;
  gap: 14px;
}

.source-record,
.article-distribution {
  padding: 17px;
  border: 1px solid #aaa8a2;
  border-top: 5px solid #0057ff;
  background: #fff;
}

.source-record h2,
.article-distribution h2 {
  margin: 0 0 12px;
  font-size: 18px;
}

.source-record dl {
  display: grid;
  grid-template-columns: 105px minmax(0, 1fr);
  gap: 8px 10px;
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
}

.source-record dt {
  color: #666b70;
  font-weight: 900;
}

.source-record dd {
  margin: 0;
  overflow-wrap: anywhere;
  font-weight: 800;
}

.source-record a {
  color: #0057ff;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.article-actions {
  align-items: stretch;
}

.article-actions .news-button {
  flex: 1 1 120px;
}

.article-source-note {
  margin: 18px 0;
  padding: 12px 14px;
  border-left: 6px solid #d71920;
  background: #fff2f1;
  color: #6e1519;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.45;
}

/* v28 daily newsletter */
.newsletter-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 28px;
  align-items: end;
  padding-bottom: 24px;
  border-bottom: 7px solid #101317;
}

.newsletter-header p {
  max-width: 760px;
  color: #555c62;
  font-size: 17px;
  line-height: 1.55;
}

.newsletter-date {
  min-width: 170px;
  padding: 16px;
  color: #fff;
  background: #d71920;
  text-align: center;
}

.newsletter-date strong,
.newsletter-date span {
  display: block;
}

.newsletter-date strong {
  font-size: 42px;
}

.newsletter-story-list {
  display: grid;
  gap: 20px;
  margin-top: 28px;
}

.newsletter-story {
  display: grid;
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
  gap: 22px;
  padding-bottom: 20px;
  border-bottom: 1px solid #aaa8a2;
}

.newsletter-story > a {
  aspect-ratio: 16 / 9;
  overflow: hidden;
}

.newsletter-story h2 {
  margin: 0;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(26px, 3.5vw, 44px);
  line-height: 1.06;
  letter-spacing: 0;
}

.newsletter-story p {
  color: #555c62;
  line-height: 1.55;
}

.newsletter-editor-note {
  margin-top: 28px;
  padding: 20px;
  color: #fff;
  background: #101317;
}

.newsletter-editor-note p {
  color: rgba(255,255,255,.8);
}

@media (max-width: 980px) {
  .news-front,
  .world-desk,
  .article-layout,
  .daily-newsletter-band,
  .newsletter-header {
    grid-template-columns: 1fr;
  }

  .news-card-grid,
  .municipality-tags {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .article-sidebar {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .newsletter-band-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 680px) {
  .news-utility,
  .news-brand-row,
  .news-section-heading,
  .article-topbar-inner {
    align-items: flex-start;
    flex-direction: column;
  }

  .news-utility {
    padding-block: 10px;
  }

  .news-utility-actions {
    width: 100%;
  }

  .news-brand-row {
    min-height: auto;
    padding-block: 20px;
  }

  .news-edition-label {
    max-width: none;
  }

  .news-alert-bar,
  .side-story,
  .news-card-grid,
  .municipality-tags,
  .news-footer,
  .article-sidebar,
  .newsletter-story {
    grid-template-columns: 1fr;
  }

  .news-alert-bar {
    gap: 8px;
  }

  .front-lead h1,
  .news-article-header h1 {
    font-size: 40px;
  }

  .side-story > a {
    aspect-ratio: 16 / 9;
  }

  .news-search,
  .news-search input {
    width: 100%;
  }

  .news-section-heading {
    align-items: stretch;
  }

  .article-topbar-inner {
    min-height: auto;
    padding-block: 12px;
  }

  .article-top-actions {
    width: 100%;
    justify-content: space-between;
  }

  .article-copy p,
  .article-copy li {
    font-size: 18px;
  }

  .source-record dl {
    grid-template-columns: 1fr;
  }

  .source-record dd {
    padding-bottom: 6px;
    border-bottom: 1px solid #dddcd8;
  }
}

/* v29 sourced newsroom, fire desk, editions and commercial readiness */
.news-v29,
.fire-desk-page,
.source-desk-page,
.entertainment-page,
.newsletter-v29-page,
.policy-page {
  --mwb-red: #b20f1a;
  --mwb-blue: #0057ff;
  --mwb-green: #087b4f;
  --mwb-yellow: #f0c64d;
  --mwb-ink: #101317;
  --mwb-paper: #f6f5f2;
  --mwb-line: #b8b7b2;
}

.fire-alert-strip {
  min-height: 52px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 9px max(20px, calc((100vw - 1360px) / 2));
  color: #fff;
  background: var(--mwb-red);
  font-size: 13px;
  font-weight: 850;
}

.fire-alert-strip strong {
  padding: 7px 9px;
  color: var(--mwb-red);
  background: #fff;
  font-size: 11px;
}

.fire-alert-strip b {
  white-space: nowrap;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.news-front-v29 {
  grid-template-columns: minmax(0, 1.65fr) minmax(350px, .85fr);
}

.front-side-v29 {
  align-content: start;
}

.front-side-v29 .side-story {
  grid-template-columns: 150px minmax(0, 1fr);
}

.front-side-v29 .side-story h2 {
  font-size: 24px;
}

.commercial-slot {
  width: min(100% - 40px, 1100px);
  min-height: 116px;
  margin: 22px auto;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 20px;
  border: 1px solid #c7c6c1;
  background: #eeede9;
}

.commercial-slot-compact {
  min-height: 84px;
  max-width: 920px;
}

.commercial-label {
  padding: 7px 9px;
  color: #fff;
  background: #5e6266;
  font-size: 10px;
  font-weight: 950;
}

.commercial-slot strong {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 20px;
}

.commercial-slot a {
  color: #0057ff;
  font-size: 12px;
  font-weight: 900;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.news-text-link {
  color: var(--mwb-blue);
  font-size: 13px;
  font-weight: 950;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.news-card-grid-v29 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.news-card-grid-v29 .news-card:nth-child(4n) { border-top-color: #087b4f; }
.news-card-grid-v29 .news-card:nth-child(5n) { border-top-color: #f0c64d; }
.news-card-grid-v29 .news-card:nth-child(6n) { border-top-color: #d71920; }

.desk-index-band {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(420px, .8fr);
  gap: 42px;
  align-items: center;
  padding: 54px max(20px, calc((100vw - 1360px) / 2));
  color: #fff;
  background: #101317;
}

.desk-index-copy h2,
.entertainment-band h2,
.culture-hero h1,
.source-desk-header h1,
.fire-hero h1 {
  margin: 0;
  font-family: Georgia, 'Times New Roman', serif;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.desk-index-copy h2 { max-width: 800px; color: #fff; font-size: 48px; line-height: 1.05; }
.desk-index-copy p { max-width: 760px; color: rgba(255,255,255,.78); line-height: 1.55; }

.desk-count-board {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid rgba(255,255,255,.35);
}

.desk-count-board div {
  min-height: 128px;
  display: grid;
  align-content: center;
  padding: 18px;
  border-right: 1px solid rgba(255,255,255,.22);
  border-bottom: 1px solid rgba(255,255,255,.22);
}

.desk-count-board div:nth-child(2n) { border-right: 0; }
.desk-count-board div:nth-child(n+3) { border-bottom: 0; }
.desk-count-board strong { color: #f0c64d; font-size: 42px; line-height: 1; }
.desk-count-board span { margin-top: 7px; color: #fff; font-size: 12px; font-weight: 850; }

.category-directory,
.culture-shell,
.source-desk-shell,
.fire-command-shell,
.policy-shell {
  width: min(100% - 40px, 1360px);
  margin-inline: auto;
}

.category-directory { padding-block: 44px; }
.category-directory-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid #101317; }
.category-directory-grid a { min-height: 74px; display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 12px 14px; border-right: 1px solid #b8b7b2; border-bottom: 1px solid #b8b7b2; background: #fff; }
.category-directory-grid a:nth-child(2n) { border-right: 0; }
.category-directory-grid b { color: #b20f1a; font-size: 11px; }
.category-directory-grid strong { font-family: Georgia, 'Times New Roman', serif; font-size: 23px; }
.category-directory-grid > a > span:last-child { min-width: 32px; height: 32px; display: grid; place-items: center; color: #fff; background: #101317; font-size: 11px; font-weight: 950; }

.entertainment-band {
  position: relative;
  min-height: 560px;
  display: grid;
  align-items: end;
  overflow: hidden;
  color: #fff;
  background: #101317;
}

.entertainment-band > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.entertainment-band::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(16,19,23,.96) 0%, rgba(16,19,23,.72) 44%, rgba(16,19,23,.08) 80%);
}

.entertainment-band > div {
  position: relative;
  z-index: 1;
  width: min(100% - 40px, 1360px);
  margin-inline: auto;
  padding-block: 64px;
}

.entertainment-band h2 { max-width: 650px; color: #fff; font-size: 58px; line-height: 1; }
.entertainment-band p { max-width: 620px; color: rgba(255,255,255,.85); font-size: 18px; line-height: 1.55; }
.municipality-index-v29 .municipality-tags a { min-height: 52px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px; border: 1px solid #aaa8a2; background: #fff; font-weight: 900; }
.future-webtv { padding: 7px 9px; color: #fff; background: #101317; font-size: 10px; font-weight: 950; }

/* Fire desk */
.fire-hero {
  position: relative;
  min-height: 570px;
  display: grid;
  align-items: end;
  overflow: hidden;
  color: #fff;
  background: #101317;
}

.fire-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.fire-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16,19,23,.95) 0%, rgba(16,19,23,.65) 50%, rgba(16,19,23,.1) 86%); }
.fire-hero-overlay { position: relative; z-index: 1; width: min(100% - 40px, 1360px); margin-inline: auto; padding-block: 54px; }
.fire-hero h1 { max-width: 920px; color: #fff; font-size: 68px; line-height: .98; }
.fire-hero p { max-width: 760px; color: rgba(255,255,255,.87); font-size: 19px; line-height: 1.5; }
.fire-live-label { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 14px; padding: 8px 10px; color: #fff; background: #b20f1a; font-size: 11px; font-weight: 950; }
.fire-live-label i { width: 8px; height: 8px; border-radius: 50%; background: #fff; }
.fire-hero-meta { display: flex; flex-wrap: wrap; gap: 8px 18px; color: rgba(255,255,255,.7); font-size: 11px; font-weight: 800; }

.emergency-command-bar {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 14px max(20px, calc((100vw - 1360px) / 2));
  color: #fff;
  background: #b20f1a;
}

.emergency-command-bar > div { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 9px; align-items: center; padding-right: 18px; border-right: 1px solid rgba(255,255,255,.4); }
.emergency-command-bar strong { font-size: 30px; line-height: 1; }
.emergency-command-bar span { font-size: 11px; font-weight: 850; }
.emergency-command-bar p { margin: 0; color: #fff; font-size: 12px; line-height: 1.4; }
.fire-command-shell { padding-block: 34px 54px; }
.fire-status-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid #101317; border-left: 1px solid #101317; }
.fire-status-card { min-height: 320px; padding: 22px; border-right: 1px solid #101317; border-bottom: 1px solid #101317; background: #fff; }
.fire-status-card::before { content: ''; display: block; width: 52px; height: 7px; margin-bottom: 18px; background: #101317; }
.fire-status-red::before { background: #b20f1a; }
.fire-status-active::before { background: #f0c64d; }
.fire-status-controlled::before { background: #087b4f; }
.fire-status-type { display: block; color: #686d71; font-size: 10px; font-weight: 950; }
.fire-status-card > strong { display: block; margin-top: 8px; color: #b20f1a; font-size: 30px; }
.fire-status-card h2 { margin: 12px 0 8px; font-family: Georgia, 'Times New Roman', serif; font-size: 28px; line-height: 1.05; }
.fire-status-card p { color: #555c62; line-height: 1.5; }
.fire-status-card a { color: #0057ff; font-size: 12px; font-weight: 950; text-decoration: underline; text-underline-offset: 3px; }
.fire-status-card small { color: #686d71; line-height: 1.45; }

.fire-timeline-section { padding-block: 46px; }
.fire-no-auto { padding: 7px 9px; border: 1px solid #b8b7b2; font-size: 10px; font-weight: 900; }
.fire-timeline { border-top: 1px solid #101317; }
.fire-timeline article { display: grid; grid-template-columns: 130px 105px minmax(0, 1fr); gap: 16px; align-items: start; padding: 20px 0; border-bottom: 1px solid #b8b7b2; }
.fire-timeline time { font-size: 12px; font-weight: 950; }
.fire-evidence { display: inline-flex; justify-content: center; min-height: 28px; align-items: center; padding: 5px 7px; color: #fff; background: #101317; font-size: 10px; font-weight: 950; }
.fire-evidence.risk { background: #b20f1a; }
.fire-evidence.incident { color: #101317; background: #f0c64d; }
.fire-evidence.controlled { background: #087b4f; }
.fire-evidence.prevention { background: #0057ff; }
.fire-timeline h3 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: 23px; line-height: 1.1; }
.fire-timeline p { margin: 8px 0 0; color: #555c62; line-height: 1.5; }

.fire-map-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid #101317; }
.fire-map-grid article { min-height: 270px; padding: 22px; border-right: 1px solid #101317; background: #fff; }
.fire-map-grid article:last-child { border-right: 0; }
.map-number { color: #b20f1a; font-size: 11px; font-weight: 950; }
.fire-map-grid h2 { margin: 18px 0 8px; font-family: Georgia, 'Times New Roman', serif; font-size: 28px; }
.fire-map-grid p { min-height: 72px; color: #555c62; line-height: 1.5; }

.europe-fire-section { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr); gap: 34px; align-items: center; margin-top: 46px; padding: 38px; color: #fff; background: #101317; }
.europe-fire-copy h2 { margin: 0; max-width: 760px; color: #fff; font-family: Georgia, 'Times New Roman', serif; font-size: 44px; line-height: 1.05; }
.europe-fire-copy p { color: rgba(255,255,255,.8); line-height: 1.6; }
.europe-fire-copy a { color: #f0c64d; font-weight: 950; text-decoration: underline; text-underline-offset: 3px; }
.europe-fire-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid rgba(255,255,255,.35); }
.europe-fire-stats div { min-height: 126px; display: grid; align-content: center; padding: 14px; border-right: 1px solid rgba(255,255,255,.25); }
.europe-fire-stats div:nth-child(3) { border-right: 0; }
.europe-fire-stats strong { color: #f0c64d; font-size: 25px; }
.europe-fire-stats span { margin-top: 6px; font-size: 11px; }
.europe-fire-stats small { grid-column: 1 / -1; padding: 12px; border-top: 1px solid rgba(255,255,255,.25); color: rgba(255,255,255,.68); }
.fire-response-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 24px; border-top: 1px solid #101317; border-left: 1px solid #101317; }
.fire-response-grid article { min-height: 290px; padding: 22px; border-right: 1px solid #101317; border-bottom: 1px solid #101317; background: #fff; }
.fire-response-grid h2 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: 27px; line-height: 1.08; }
.fire-response-grid p { color: #555c62; line-height: 1.5; }
.fire-response-grid a { color: #0057ff; font-weight: 950; text-decoration: underline; text-underline-offset: 3px; }
.fire-method { display: grid; grid-template-columns: minmax(270px, .55fr) minmax(0, 1.45fr); gap: 32px; margin-top: 46px; padding-top: 38px; border-top: 7px solid #101317; }
.fire-method h2 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: 38px; line-height: 1.08; }
.fire-method-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid #b8b7b2; }
.fire-method-grid article { padding: 18px; border-right: 1px solid #b8b7b2; background: #fff; }
.fire-method-grid article:last-child { border-right: 0; }
.fire-method-grid b { display: grid; width: 34px; height: 34px; place-items: center; margin-bottom: 12px; color: #fff; background: #101317; }
.fire-method-grid strong { display: block; font-family: Georgia, 'Times New Roman', serif; font-size: 20px; }
.fire-method-grid p { color: #555c62; line-height: 1.5; }

/* Source desk */
.source-desk-shell { padding-block: 42px 60px; }
.source-desk-header { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 32px; align-items: end; padding-bottom: 30px; border-bottom: 7px solid #101317; }
.source-desk-header h1 { max-width: 970px; font-size: 56px; line-height: 1.02; }
.source-desk-header p { max-width: 840px; color: #555c62; font-size: 17px; line-height: 1.55; }
.source-desk-total { min-width: 160px; padding: 18px; color: #fff; background: #0057ff; text-align: center; }
.source-desk-total strong, .source-desk-total span { display: block; }
.source-desk-total strong { font-size: 48px; line-height: 1; }
.source-desk-total span { margin-top: 6px; font-size: 11px; font-weight: 900; }
.source-desk-controls { display: grid; gap: 16px; padding: 24px 0; border-bottom: 1px solid #b8b7b2; }
.desk-search { display: grid; gap: 6px; max-width: 720px; color: #555c62; font-size: 11px; font-weight: 900; }
.desk-search input { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid #999892; border-radius: 0; background: #fff; font: inherit; }
.desk-filter-block { display: grid; gap: 7px; }
.desk-filter-block > strong { color: #555c62; font-size: 11px; text-transform: uppercase; }
.desk-filter-block .news-filter-row { margin: 0; }
.desk-control-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.desk-legend { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; padding: 24px 0; }
.desk-legend > div { padding: 14px; border: 1px solid #b8b7b2; background: #fff; }
.desk-legend p { margin: 10px 0 0; color: #555c62; font-size: 12px; line-height: 1.45; }
.desk-status { display: inline-flex; min-height: 27px; align-items: center; padding: 5px 7px; color: #fff; background: #101317; font-size: 9px; font-weight: 950; text-transform: uppercase; }
.desk-status-verified_brief { background: #087b4f; }
.desk-status-official_live_map { background: #0057ff; }
.desk-status-source_watch { color: #101317; background: #f0c64d; }
.desk-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.desk-story { min-width: 0; display: grid; grid-template-columns: 210px minmax(0, 1fr); border: 1px solid #b8b7b2; border-top: 5px solid #101317; background: #fff; }
.desk-story[data-status="verified_brief"] { border-top-color: #087b4f; }
.desk-story[data-status="official_live_map"] { border-top-color: #0057ff; }
.desk-story > img { width: 100%; height: 100%; min-height: 280px; object-fit: cover; }
.desk-story-body { display: grid; align-content: start; padding: 16px; }
.desk-story-flags { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.desk-story-flags > span:not(.desk-status) { padding: 5px 7px; border: 1px solid #d0cfca; color: #555c62; font-size: 9px; font-weight: 900; text-transform: uppercase; }
.desk-story h2 { margin: 13px 0 8px; font-family: Georgia, 'Times New Roman', serif; font-size: 24px; line-height: 1.08; }
.desk-story p { margin: 0; color: #555c62; font-size: 13px; line-height: 1.5; }
.desk-source { display: flex; flex-wrap: wrap; gap: 7px 12px; margin-top: 12px; color: #686d71; font-size: 10px; }
.desk-source a { color: #0057ff; font-weight: 950; text-decoration: underline; text-underline-offset: 2px; }
.desk-story-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.desk-story-actions .news-button { min-height: 36px; padding: 7px 9px; font-size: 10px; }
.icon-text-button { min-height: 36px; padding: 7px 9px; border: 1px solid #101317; border-radius: 0; color: #101317; background: #fff; font: inherit; font-size: 10px; font-weight: 950; cursor: pointer; }
.visual-credit { display: block; margin-top: 12px; color: #85898c; font-size: 9px; line-height: 1.35; }

/* Culture desk */
.culture-hero { position: relative; min-height: 590px; display: grid; align-items: end; overflow: hidden; color: #fff; background: #101317; }
.culture-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.culture-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16,19,23,.95) 0%, rgba(16,19,23,.62) 48%, rgba(16,19,23,.06) 84%); }
.culture-hero > div { position: relative; z-index: 1; width: min(100% - 40px, 1360px); margin-inline: auto; padding-block: 60px; }
.culture-hero h1 { max-width: 820px; color: #fff; font-size: 68px; line-height: .98; }
.culture-hero p { max-width: 680px; color: rgba(255,255,255,.86); font-size: 19px; line-height: 1.55; }
.culture-hero small { color: rgba(255,255,255,.66); }
.culture-shell { padding-block: 42px 54px; }
.culture-desk-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .7fr); gap: 34px; align-items: end; margin-bottom: 24px; }
.culture-desk-intro h2 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: 44px; line-height: 1.05; }
.culture-desk-intro p { color: #555c62; line-height: 1.55; }
.culture-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid #101317; border-left: 1px solid #101317; }
.culture-grid article { min-height: 310px; display: grid; align-content: start; padding: 20px; border-right: 1px solid #101317; border-bottom: 1px solid #101317; background: #fff; }
.culture-grid article > b { color: #b20f1a; font-size: 12px; }
.culture-grid h3 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: 26px; line-height: 1.08; }
.culture-grid p { color: #555c62; line-height: 1.5; }
.culture-grid a { margin-top: auto; color: #0057ff; font-size: 12px; font-weight: 950; text-decoration: underline; text-underline-offset: 3px; }
.culture-more { display: flex; justify-content: center; margin-top: 24px; }

/* v29 newsletter */
.newsletter-shell-v29 { max-width: 1180px; }
.edition-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 24px 0; border: 1px solid #101317; }
.edition-tabs a { min-height: 70px; display: grid; align-content: center; gap: 3px; padding: 12px 16px; border-right: 1px solid #101317; background: #fff; font-weight: 950; }
.edition-tabs a:last-child { border-right: 0; }
.edition-tabs small { color: #666b70; font-size: 10px; }
.edition-preview { margin-top: 26px; padding: 24px; border: 1px solid #b8b7b2; border-top: 7px solid #0057ff; background: #fff; }
.edition-preview.edition-fire { border-top-color: #b20f1a; }
.edition-preview > header { display: flex; justify-content: space-between; gap: 24px; align-items: start; margin-bottom: 22px; }
.edition-number { display: block; margin-bottom: 8px; color: #b20f1a; font-size: 11px; font-weight: 950; }
.edition-preview h2 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: 38px; line-height: 1.06; }
.edition-status { padding: 7px 9px; color: #fff; background: #0057ff; font-size: 9px; font-weight: 950; }
.edition-status-red { background: #b20f1a; }
.edition-lead { display: grid; grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr); gap: 22px; padding-bottom: 22px; border-bottom: 1px solid #b8b7b2; }
.edition-lead img { width: 100%; height: 100%; min-height: 260px; object-fit: cover; }
.edition-lead h3 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: 34px; line-height: 1.05; }
.edition-lead p { color: #555c62; line-height: 1.55; }
.edition-lead a { color: #0057ff; font-weight: 950; text-decoration: underline; text-underline-offset: 3px; }
.edition-list { margin: 0; padding: 0; list-style: none; }
.edition-list li { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 12px; padding: 16px 0; border-bottom: 1px solid #d0cfca; }
.edition-list li > span { color: #b20f1a; font-size: 11px; font-weight: 950; }
.edition-list a, .edition-list strong, .edition-list small { display: block; }
.edition-list strong { font-family: Georgia, 'Times New Roman', serif; font-size: 21px; }
.edition-list small { margin-top: 5px; color: #686d71; }
.edition-actions { display: flex; justify-content: flex-end; margin-top: 18px; }
.fire-brief-layout { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 28px; }
.fire-brief-layout > div { align-self: start; padding: 20px; color: #fff; background: #b20f1a; }
.fire-brief-layout > div strong { font-size: 40px; }
.fire-brief-layout > div p { line-height: 1.5; }
.personal-edition { margin-top: 28px; padding: 24px; border: 1px solid #101317; background: #eeede9; }
.personal-edition > header { display: flex; justify-content: space-between; gap: 20px; align-items: end; }
.personal-edition h2 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: 34px; }
.personal-edition-list { display: grid; gap: 8px; margin: 18px 0; }
.personal-edition-list article { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 12px; padding: 12px; border: 1px solid #b8b7b2; background: #fff; }
.personal-edition-list strong, .personal-edition-list small, .personal-edition-list span { display: block; }
.personal-edition-list strong { margin: 3px 0; font-family: Georgia, 'Times New Roman', serif; font-size: 18px; }
.personal-edition-list span, .personal-edition-list small { color: #686d71; font-size: 10px; }
.newsletter-governance { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 28px; }
.newsletter-governance article { min-height: 170px; padding: 18px; border-top: 5px solid #101317; background: #fff; }
.newsletter-governance article:nth-child(2) { border-top-color: #087b4f; }
.newsletter-governance article:nth-child(3) { border-top-color: #b20f1a; }
.newsletter-governance strong { font-family: Georgia, 'Times New Roman', serif; font-size: 22px; }
.newsletter-governance p { color: #555c62; line-height: 1.5; }

/* Policy pages */
.policy-shell { max-width: 1080px; padding-block: 46px 60px; }
.policy-shell > header { padding-bottom: 30px; border-bottom: 7px solid #101317; }
.policy-shell h1 { max-width: 920px; margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: 56px; line-height: 1.02; }
.policy-shell > header p { max-width: 820px; color: #555c62; font-size: 17px; line-height: 1.6; }
.policy-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 28px; }
.policy-grid article { min-height: 270px; padding: 18px; border: 1px solid #b8b7b2; border-top: 5px solid #0057ff; background: #fff; }
.policy-grid article:nth-child(2) { border-top-color: #087b4f; }
.policy-grid article:nth-child(3) { border-top-color: #b20f1a; }
.policy-grid article > span { color: #686d71; font-size: 10px; font-weight: 950; }
.policy-grid h2 { font-family: Georgia, 'Times New Roman', serif; font-size: 27px; }
.policy-grid p { color: #555c62; line-height: 1.55; }
.policy-copy { max-width: 820px; padding-top: 22px; }
.policy-copy h2 { margin-top: 30px; font-family: Georgia, 'Times New Roman', serif; font-size: 30px; }
.policy-copy p { color: #454b50; font-family: Georgia, 'Times New Roman', serif; font-size: 18px; line-height: 1.7; }
.policy-copy a { color: #0057ff; font-weight: 900; text-decoration: underline; text-underline-offset: 3px; }

/* Consent v2 */
.cookie-consent-panel-v2 {
  grid-template-columns: minmax(230px, .8fr) minmax(400px, 1.4fr) auto;
  gap: 18px;
  align-items: center;
  max-height: min(560px, calc(100vh - 24px));
  overflow: auto;
}

.cookie-copy a { display: inline-block; margin-top: 8px; color: #f0c64d; font-size: 11px; font-weight: 900; text-decoration: underline; text-underline-offset: 3px; }
.cookie-choice-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.cookie-choice-list label { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 8px; align-items: start; min-height: 88px; padding: 10px; border: 1px solid rgba(255,255,255,.28); cursor: pointer; }
.cookie-choice-list input { margin-top: 3px; accent-color: #f0c64d; }
.cookie-choice-list b, .cookie-choice-list small { display: block; }
.cookie-choice-list b { color: #fff; font-size: 11px; }
.cookie-choice-list small { margin-top: 4px; color: rgba(255,255,255,.7); font-size: 9px; line-height: 1.35; }
.cookie-consent-panel-v2 .cookie-actions { display: grid; grid-template-columns: 1fr; }
.cookie-consent-panel-v2 .cookie-actions button:last-child { color: #101317; border-color: #f0c64d; background: #f0c64d; }

@media (max-width: 1120px) {
  .news-front-v29,
  .desk-index-band,
  .europe-fire-section,
  .fire-method,
  .culture-desk-intro {
    grid-template-columns: 1fr;
  }

  .news-card-grid-v29,
  .culture-grid,
  .policy-grid,
  .fire-response-grid,
  .newsletter-governance {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .desk-grid { grid-template-columns: 1fr; }
  .cookie-consent-panel-v2 { grid-template-columns: 1fr; }
  .cookie-choice-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cookie-consent-panel-v2 .cookie-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .fire-alert-strip,
  .commercial-slot,
  .emergency-command-bar,
  .fire-status-grid,
  .fire-map-grid,
  .fire-response-grid,
  .fire-method-grid,
  .source-desk-header,
  .desk-control-row,
  .desk-legend,
  .culture-grid,
  .edition-tabs,
  .edition-lead,
  .fire-brief-layout,
  .newsletter-governance,
  .policy-grid {
    grid-template-columns: 1fr;
  }

  .fire-alert-strip { align-items: start; }
  .fire-alert-strip b { white-space: normal; }
  .front-side-v29 .side-story { grid-template-columns: 1fr; }
  .news-card-grid-v29,
  .category-directory-grid { grid-template-columns: 1fr; }
  .category-directory-grid a { border-right: 0; }
  .desk-index-copy h2 { font-size: 34px; }
  .desk-count-board { grid-template-columns: 1fr; }
  .desk-count-board div { min-height: 96px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.22); }
  .desk-count-board div:nth-child(n+3) { border-bottom: 1px solid rgba(255,255,255,.22); }
  .desk-count-board div:last-child { border-bottom: 0; }
  .entertainment-band, .fire-hero, .culture-hero { min-height: 520px; }
  .entertainment-band h2 { font-size: 38px; }
  .fire-hero h1, .culture-hero h1 { font-size: 42px; }
  .emergency-command-bar > div { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.4); padding: 0 0 10px; }
  .fire-status-card, .fire-map-grid article, .fire-response-grid article { min-height: auto; border-right: 0; }
  .fire-map-grid article { border-bottom: 1px solid #101317; }
  .fire-map-grid article:last-child { border-bottom: 0; }
  .fire-timeline article { grid-template-columns: 1fr; gap: 8px; }
  .europe-fire-section { padding: 24px; }
  .europe-fire-copy h2 { font-size: 34px; }
  .europe-fire-stats { grid-template-columns: 1fr; }
  .europe-fire-stats div { min-height: 90px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.25); }
  .europe-fire-stats div:nth-child(3) { border-bottom: 0; }
  .fire-method-grid article { border-right: 0; border-bottom: 1px solid #b8b7b2; }
  .fire-method-grid article:last-child { border-bottom: 0; }
  .source-desk-header h1, .policy-shell h1 { font-size: 38px; }
  .source-desk-total { width: 100%; }
  .desk-story { grid-template-columns: 1fr; }
  .desk-story > img { min-height: 0; aspect-ratio: 16 / 9; }
  .culture-grid article { min-height: auto; border-right: 0; }
  .edition-tabs a { border-right: 0; border-bottom: 1px solid #101317; }
  .edition-tabs a:last-child { border-bottom: 0; }
  .edition-preview { padding: 18px; }
  .edition-preview > header, .personal-edition > header { flex-direction: column; }
  .edition-preview h2 { font-size: 30px; }
  .edition-lead img { min-height: 0; aspect-ratio: 16 / 9; }
  .cookie-choice-list { grid-template-columns: 1fr; }
  .cookie-consent-panel-v2 .cookie-actions { grid-template-columns: 1fr; }
}

/* v29 editor-published Fire Desk feed */
.fire-live-feed {
  padding-block: 42px;
  border-bottom: 1px solid #101317;
}

.fire-feed-state {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  padding: 6px 9px;
  border: 1px solid #b8b7b2;
  color: #454b50;
  background: #fff;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.fire-feed-state[data-feed-state="ready"] {
  border-color: #087b4f;
  color: #087b4f;
}

.fire-feed-state[data-feed-state="fallback"] {
  border-color: #a56b00;
  color: #7a4f00;
}

.fire-live-list:empty {
  display: none;
}

.fire-live-list small,
.fire-live-list a {
  display: block;
  margin-top: 8px;
  color: #555c62;
  font-size: 12px;
}

.fire-live-list a {
  width: fit-content;
  color: #0057ff;
  font-weight: 850;
}

.fire-evidence.satellite {
  background: #5d3e87;
}

@media (max-width: 760px) {
  .fire-live-feed .news-section-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }
}

/* MWB News v34 editorial experience */
body.news-v34 {
  background-color: #eef2f3;
}

.news-v34 .feature-banner {
  min-height: 500px;
  background-position: center 38%;
}

.news-v34 .feature-banner::after {
  background: rgba(8, 14, 18, .55);
}

.news-v34 .feature-banner-copy {
  padding-block: 118px 54px;
}

.news-v34 .feature-banner-copy h1 {
  max-width: 900px;
  font-size: clamp(46px, 6vw, 82px);
}

.news-v34 .feature-banner-copy p {
  max-width: 780px;
  font-size: 18px;
}

.home-pulse-band {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  color: #fff;
  background: #11171a;
  border-bottom: 5px solid #d71920;
}

.home-pulse-band a {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 14px;
  min-height: 122px;
  align-content: center;
  padding: 20px max(18px, 2.4vw);
  border-right: 1px solid rgba(255, 255, 255, .22);
}

.home-pulse-band a:last-child {
  border-right: 0;
}

.home-pulse-band a:hover,
.home-pulse-band a:focus-visible {
  color: #11171a;
  background: #f0c64d;
}

.home-pulse-band span {
  align-self: end;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.home-pulse-band strong {
  grid-row: span 2;
  align-self: center;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 44px;
  line-height: 1;
}

.home-pulse-band small {
  color: rgba(255, 255, 255, .68);
  font-size: 11px;
}

.home-pulse-band a:hover small,
.home-pulse-band a:focus-visible small {
  color: #11171a;
}

.live-story-card {
  display: flex;
  flex-direction: column;
}

.live-story-body {
  display: flex;
  flex: 1;
  flex-direction: column;
}

.live-story-body .source-line {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 7px;
  margin-top: auto;
  padding-top: 10px;
  border-top: 1px solid rgba(16, 19, 23, .12);
  color: #535f66;
  font-size: 11px;
}

.live-story-body .source-line a {
  color: #0057a8;
  font-weight: 900;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.live-story-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.story-action-button {
  min-height: 32px;
  padding: 6px 9px;
  border: 1px solid #aeb8bd;
  border-radius: 4px;
  color: #273137;
  background: #fff;
  font: inherit;
  font-size: 10px;
  font-weight: 900;
  cursor: pointer;
}

.story-action-button:hover,
.story-action-button:focus-visible,
.story-action-button.is-selected {
  color: #fff;
  border-color: #006f56;
  background: #006f56;
}

.category-directory-grid a {
  grid-template-columns: 34px minmax(0, 1fr) auto;
}

.category-directory-grid a > small {
  display: grid;
  min-width: 30px;
  height: 30px;
  place-items: center;
  color: #fff;
  background: #11171a;
  font-size: 11px;
}

.archive-heading {
  max-width: 980px;
  margin-bottom: 26px;
  padding-bottom: 22px;
  border-bottom: 6px solid #11171a;
}

.archive-heading-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.desk-rss-link {
  padding: 8px 10px;
  color: #fff;
  background: #0067a3;
  font-size: 11px;
  font-weight: 900;
}

.archive-layout-v34 {
  grid-template-columns: 148px minmax(0, 1fr);
  gap: 28px;
}

.archive-category-rail {
  position: sticky;
  top: 12px;
  display: grid;
  align-content: start;
  max-height: calc(100vh - 24px);
  overflow-y: auto;
  border-top: 5px solid #11171a;
  background: rgba(255, 255, 255, .72);
}

.archive-category-rail a {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px;
  min-height: 43px;
  align-items: center;
  padding: 7px 8px 7px 12px;
  border-bottom: 1px solid rgba(16, 19, 23, .14);
  border-left: 4px solid transparent;
  color: #343d42;
  font-size: 11px;
  font-weight: 850;
}

.archive-category-rail a:hover,
.archive-category-rail a:focus-visible,
.archive-category-rail a[aria-current="page"] {
  color: #11171a;
  border-left-color: var(--desk-accent);
  background: #fff;
}

.archive-category-rail a[aria-current="page"] span {
  font-weight: 950;
}

.archive-category-rail b {
  min-width: 24px;
  color: #68737a;
  font-size: 10px;
  text-align: right;
}

.archive-category-rail a[aria-current="page"] b {
  color: var(--desk-accent);
}

.archive-content {
  min-width: 0;
}

.archive-trust-strip {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  margin-bottom: 28px;
  padding: 16px 18px;
  color: #fff;
  background: #11171a;
  border-left: 7px solid #f0c64d;
}

.archive-trust-strip strong {
  color: #f0c64d;
  font-size: 11px;
}

.archive-trust-strip p {
  margin: 0;
  color: rgba(255, 255, 255, .82);
  font-size: 13px;
  line-height: 1.5;
}

.reader-section-head.compact {
  align-items: center;
}

.reader-section-head.compact p {
  text-align: right;
}

.reader-section-head.compact p strong {
  color: var(--desk-accent);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
}

.reader-empty-compact {
  margin: 0 0 30px;
  padding: 20px;
  text-align: left;
  border-style: solid;
  border-left: 5px solid #f0c64d;
}

.source-watch-section {
  margin-top: 40px;
}

.source-watch-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid #11171a;
  border-left: 1px solid #11171a;
}

.source-watch-grid-home {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.source-watch-card {
  display: flex;
  min-width: 0;
  min-height: 240px;
  flex-direction: column;
  padding: 16px;
  border-right: 1px solid #11171a;
  border-bottom: 1px solid #11171a;
  background: #fff;
}

.source-watch-card:nth-child(4n+2) {
  border-top: 4px solid #0067a3;
}

.source-watch-card:nth-child(4n+3) {
  border-top: 4px solid #c93228;
}

.source-watch-card:nth-child(4n+4) {
  border-top: 4px solid #08765e;
}

.source-watch-card:nth-child(4n+1) {
  border-top: 4px solid #f0c64d;
}

.source-watch-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 14px;
}

.source-watch-number {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 28px;
  line-height: 1;
}

.source-watch-state {
  color: #6b7479;
  font-size: 9px;
  font-weight: 900;
  text-align: right;
}

.source-watch-card h3 {
  margin: 7px 0 8px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 22px;
  line-height: 1.12;
}

.source-watch-card > p {
  margin: 0 0 16px;
  color: #515b61;
  font-size: 13px;
  line-height: 1.5;
}

.source-watch-footer {
  display: grid;
  gap: 8px;
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid rgba(16, 19, 23, .16);
}

.source-watch-footer strong {
  font-size: 11px;
}

.source-watch-open {
  width: fit-content;
  color: #0057a8;
  font-size: 11px;
  font-weight: 900;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.fire-feature-banner {
  min-height: 560px;
}

.fire-hero-signals {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  max-width: 820px;
  margin-top: 26px;
  border: 1px solid rgba(255, 255, 255, .5);
  background: rgba(8, 14, 18, .72);
}

.fire-hero-signals > span,
.fire-hero-signals > a {
  display: grid;
  min-width: 190px;
  flex: 1;
  gap: 4px;
  padding: 12px 14px;
  border-right: 1px solid rgba(255, 255, 255, .3);
}

.fire-hero-signals > :last-child {
  border-right: 0;
}

.fire-hero-signals b {
  color: #fff;
  font-size: 12px;
}

.fire-hero-signals small {
  color: rgba(255, 255, 255, .72);
  font-size: 10px;
}

.fire-hero-signals a:hover,
.fire-hero-signals a:focus-visible {
  background: #b72d22;
}

.fire-status-legend {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 14px;
  border: 1px solid #11171a;
  background: #fff;
}

.fire-status-legend > div {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 12px;
  border-right: 1px solid #11171a;
}

.fire-status-legend > div:last-child {
  border-right: 0;
}

.fire-status-legend p {
  margin: 0;
  color: #4e585e;
  font-size: 11px;
  line-height: 1.4;
}

.fire-map-grid-v34 {
  gap: 12px;
  border: 0;
}

.fire-map-grid-v34 > a {
  position: relative;
  display: flex;
  min-height: 380px;
  overflow: hidden;
  flex-direction: column;
  justify-content: flex-end;
  padding: 22px;
  color: #fff;
  background-color: #172126;
  background-image: var(--map-image);
  background-position: center;
  background-size: cover;
  border: 1px solid #11171a;
}

.fire-map-grid-v34 > a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(9, 14, 17, .58);
}

.fire-map-grid-v34 > a > * {
  position: relative;
  z-index: 1;
}

.fire-map-grid-v34 > a:hover::before,
.fire-map-grid-v34 > a:focus-visible::before {
  background: rgba(126, 24, 18, .72);
}

.fire-map-grid-v34 .map-card-label {
  margin-bottom: auto;
  color: #f0c64d;
  font-size: 10px;
  font-weight: 950;
}

.fire-map-grid-v34 strong {
  margin-top: 110px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  line-height: 1;
}

.fire-map-grid-v34 p {
  margin: 12px 0 16px;
  color: rgba(255, 255, 255, .82);
  font-size: 13px;
  line-height: 1.5;
}

.map-card-action {
  width: fit-content;
  padding: 8px 10px;
  color: #11171a;
  background: #fff;
  font-size: 10px;
  font-weight: 900;
}

.visual-briefing-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.visual-briefing-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #11171a;
  background: #fff;
}

.visual-briefing-stage {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  color: #fff;
  background: #11171a;
}

.visual-briefing-stage::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(8, 14, 18, .32);
  pointer-events: none;
}

.visual-briefing-stage.has-native-video::after {
  display: none;
}

.visual-briefing-stage.has-native-video video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #11171a;
}

.visual-briefing-stage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity .25s ease;
}

.visual-briefing-card.is-playing .visual-briefing-stage img {
  animation: mwb-briefing-focus 6s ease-in-out infinite;
}

@keyframes mwb-briefing-focus {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.025); }
}

.visual-original-badge,
.visual-duration-badge {
  position: absolute;
  z-index: 2;
  top: 12px;
  padding: 6px 8px;
  font-size: 9px;
  font-weight: 950;
}

.visual-original-badge {
  left: 12px;
  background: #d71920;
}

.visual-duration-badge {
  right: 12px;
  background: #11171a;
}

.visual-briefing-caption {
  position: absolute;
  z-index: 2;
  right: 12px;
  bottom: 62px;
  left: 12px;
  margin: 0;
  padding: 10px 12px;
  color: #fff;
  background: rgba(8, 14, 18, .86);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.4;
}

.visual-briefing-play {
  position: absolute;
  z-index: 3;
  bottom: 14px;
  left: 14px;
  min-height: 38px;
  padding: 8px 12px;
  border: 0;
  border-radius: 4px;
  color: #11171a;
  background: #fff;
  font: inherit;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.visual-briefing-card.is-playing .visual-briefing-play {
  color: #fff;
  background: #d71920;
}

.visual-briefing-body {
  padding: 16px;
}

.visual-briefing-body h3 {
  margin: 7px 0 9px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 25px;
  line-height: 1.08;
}

.visual-briefing-body p {
  margin: 0 0 10px;
  color: #505b61;
  font-size: 13px;
  line-height: 1.5;
}

.visual-briefing-audio {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 3px 10px;
  align-items: baseline;
  margin: 12px 0;
  padding: 10px 0;
  border-top: 1px solid #d8dee1;
  border-bottom: 1px solid #d8dee1;
}

.visual-briefing-audio > span {
  grid-row: 1 / span 2;
  padding: 4px 6px;
  color: #fff;
  background: #11171a;
  font-size: 8px;
  font-weight: 950;
}

.visual-briefing-audio strong {
  min-width: 0;
  font-size: 12px;
  line-height: 1.25;
}

.visual-briefing-audio small {
  line-height: 1.35;
}

.visual-briefing-card.has-audio-error .visual-briefing-audio {
  border-color: #d71920;
}

.visual-briefing-body small {
  color: #6a747a;
  font-size: 10px;
  font-weight: 800;
}

.visual-briefing-link {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  margin: 4px 10px 12px 0;
  padding: 8px 12px;
  border: 1px solid #11171a;
  color: #fff;
  background: #11171a;
  font-size: 11px;
  font-weight: 900;
  text-decoration: none;
}

.visual-briefing-link:hover,
.visual-briefing-link:focus-visible {
  color: #11171a;
  background: #f0bd2f;
}

.movement-promo-band,
.entertainment-watch-ribbon {
  display: grid;
  grid-template-columns: minmax(220px, .45fr) minmax(0, 1fr);
  gap: 24px;
  align-items: center;
  margin: 24px 0;
  padding: 0;
  overflow: hidden;
  border-top: 5px solid #087e59;
  background: #10171a;
  color: #fff;
}

.movement-promo-band img { width: 100%; height: 240px; object-fit: cover; }
.movement-promo-band > div,
.entertainment-watch-ribbon > div { padding: 28px 28px 28px 0; }
.movement-promo-band h2,
.entertainment-watch-ribbon h2 { margin: 6px 0 10px; font-family: Georgia, "Times New Roman", serif; font-size: 34px; line-height: 1.05; }
.movement-promo-band p,
.entertainment-watch-ribbon p { margin: 0 0 16px; color: #c9d2d5; line-height: 1.5; }
.entertainment-watch-ribbon { grid-template-columns: minmax(0, 1fr) auto; padding: 0 28px; border-color: #d71920; }
.entertainment-watch-ribbon > div { padding-left: 0; }
.sports-movement-ribbon { display: flex; justify-content: space-between; gap: 24px; align-items: center; margin: 0 0 18px; padding: 16px 18px; border-left: 6px solid #087e59; color: #11171a; background: #dcece6; text-decoration: none; }
.sports-movement-ribbon span { display: grid; gap: 3px; }
.sports-movement-ribbon small { color: #087e59; font-weight: 950; }
.sports-movement-ribbon strong { font-family: Georgia, "Times New Roman", serif; font-size: 22px; }
.sports-movement-ribbon b { font-size: 11px; }
.reviews-hero-actions { display: flex; flex-wrap: wrap; gap: 8px; }

@media (max-width: 720px) {
  .movement-promo-band,
  .entertainment-watch-ribbon { grid-template-columns: 1fr; }
  .movement-promo-band > div,
  .entertainment-watch-ribbon > div { padding: 22px; }
  .entertainment-watch-ribbon { padding: 0 0 22px; }
  .entertainment-watch-ribbon > a { margin-left: 22px; }
  .sports-movement-ribbon { align-items: flex-start; flex-direction: column; }
}

.webtv-video-stage {
  isolation: isolate;
}

.video-language-badge,
.video-caption-badge {
  position: absolute;
  z-index: 2;
  top: 10px;
  padding: 6px 7px;
  color: #fff;
  font-size: 9px;
  font-weight: 950;
}

.video-language-badge {
  left: 10px;
  background: #11171a;
}

.video-caption-badge {
  right: 10px;
  background: #006f56;
}

.webtv-play {
  max-width: calc(100% - 24px);
  padding-inline: 14px;
  white-space: normal;
}

.video-caption-guide {
  margin: 12px 0;
  padding-top: 10px;
  border-top: 3px solid #006f56;
}

.video-caption-guide strong,
.video-caption-guide small {
  display: block;
}

.video-caption-guide strong {
  margin-bottom: 5px;
  color: #006f56;
  font-size: 10px;
  text-transform: uppercase;
}

.video-caption-guide p {
  margin-bottom: 6px;
  color: #343e43;
}

.video-caption-guide small {
  color: #68737a;
  font-size: 9px;
  line-height: 1.4;
}

.article-audio-brief {
  grid-column: 1 / -1;
  padding: 16px;
  color: #fff;
  background: #12201c;
  border-left: 6px solid #f0c64d;
}

.article-audio-brief > div {
  display: grid;
  gap: 10px;
}

.article-audio-brief strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
}

.article-audio-brief audio {
  width: 100%;
}

.article-audio-brief figcaption {
  margin-top: 8px;
  color: rgba(255, 255, 255, .72);
  font-size: 10px;
}

.news-v34 .webtv-hero-copy > div {
  max-width: 760px;
  padding: 0;
  background: transparent;
}

.news-v34 .webtv-hero-copy {
  background: rgba(10, 15, 18, .5);
}

@media (prefers-reduced-motion: reduce) {
  .visual-briefing-card.is-playing .visual-briefing-stage img {
    animation: none;
  }
}

@media (max-width: 980px) {
  .home-pulse-band {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-pulse-band a:nth-child(2) {
    border-right: 0;
  }

  .source-watch-grid-home {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .news-v34 .feature-banner,
  .fire-feature-banner {
    min-height: 520px;
  }

  .news-v34 .feature-banner-copy {
    padding-block: 82px 34px;
  }

  .news-v34 .feature-banner-copy h1 {
    font-size: 43px;
  }

  .home-pulse-band,
  .fire-status-legend,
  .visual-briefing-grid,
  .source-watch-grid,
  .source-watch-grid-home,
  .archive-trust-strip {
    grid-template-columns: 1fr;
  }

  .home-pulse-band a {
    min-height: 96px;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .22);
  }

  .home-pulse-band a:last-child {
    border-bottom: 0;
  }

  .archive-layout-v34 {
    display: block;
  }

  .archive-category-rail {
    position: static;
    display: flex;
    overflow-x: auto;
    max-height: none;
    margin-bottom: 22px;
    border-top-width: 4px;
  }

  .archive-category-rail a {
    min-width: 118px;
    flex: 0 0 auto;
    border-left: 0;
    border-bottom: 4px solid transparent;
  }

  .archive-category-rail a[aria-current="page"] {
    border-bottom-color: var(--desk-accent);
  }

  .archive-trust-strip {
    gap: 8px;
  }

  .reader-section-head.compact p {
    text-align: left;
  }

  .source-watch-card {
    min-height: 0;
  }

  .fire-hero-signals {
    display: grid;
    grid-template-columns: 1fr;
  }

  .fire-hero-signals > span,
  .fire-hero-signals > a {
    min-width: 0;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .3);
  }

  .fire-hero-signals > :last-child {
    border-bottom: 0;
  }

  .fire-status-legend > div {
    border-right: 0;
    border-bottom: 1px solid #11171a;
  }

  .fire-status-legend > div:last-child {
    border-bottom: 0;
  }

  .fire-map-grid-v34 > a {
    min-height: 350px;
    border-bottom: 1px solid #11171a;
  }

  .visual-briefing-caption {
    font-size: 11px;
  }

  .video-language-badge,
  .video-caption-badge {
    max-width: calc(50% - 14px);
    white-space: normal;
  }
}
/* v36 audience, loyalty and giveaway surfaces */
.reader-notice:has(+ .newsletter-signup) {
  display: none;
}

.newsletter-signup {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  gap: 34px;
  align-items: center;
  margin-top: 26px;
  padding: 30px;
  border-top: 7px solid #0f7a50;
  background: #fff;
}

.newsletter-signup h2,
.home-growth-band h2,
.growth-profile-shell h2,
.giveaway-shell h2 {
  margin: 8px 0 12px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 32px;
  line-height: 1.05;
}

.newsletter-signup-copy > p,
.home-growth-band p {
  color: #53605d;
  line-height: 1.6;
}

.newsletter-trust-points,
.home-growth-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.newsletter-trust-points > span,
.home-growth-links a {
  padding: 7px 9px;
  border: 1px solid #cdd8d4;
  color: #17201d;
  background: #f4f8f6;
  font-size: 11px;
  font-weight: 800;
  text-decoration: none;
}

.newsletter-optin-form {
  display: grid;
  gap: 13px;
}

.newsletter-optin-form > label:not(.newsletter-consent):not(.newsletter-honeypot) {
  display: grid;
  gap: 7px;
  color: #17201d;
  font-size: 12px;
  font-weight: 800;
}

.newsletter-optin-form input[type="email"] {
  width: 100%;
  min-height: 48px;
  padding: 10px 12px;
  border: 1px solid #9caaa5;
  border-radius: 3px;
  color: #101715;
  background: #fff;
  font: inherit;
}

.newsletter-consent {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  color: #53605d;
  font-size: 11px;
  line-height: 1.5;
}

.newsletter-consent input {
  width: 18px;
  height: 18px;
  margin: 1px 0 0;
}

.newsletter-honeypot {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
}

.newsletter-signup-form-wrap > small {
  display: block;
  margin-top: 12px;
  color: #68746f;
  line-height: 1.5;
}

.growth-form-status {
  margin: 10px 0 0;
  padding: 10px 12px;
  border-left: 4px solid #1679b8;
  color: #254e67;
  background: #eaf5fb;
  font-size: 12px;
  line-height: 1.45;
}

.growth-form-status.is-success { border-left-color: #0f7a50; color: #185d43; background: #e6f5ed; }
.growth-form-status.is-error { border-left-color: #c53546; color: #7d2934; background: #fff0f2; }
.growth-form-status.is-working { border-left-color: #c49313; color: #6b571e; background: #fff7dd; }

.home-growth-band {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
  gap: 34px;
  align-items: center;
  padding: 34px;
  color: #fff;
  background: #1b3932;
  border-bottom: 8px solid #dc3a49;
}

.home-growth-band h2,
.home-growth-band p,
.home-growth-band .story-kicker,
.home-growth-band .newsletter-consent {
  color: #fff;
}

.home-growth-band .home-growth-links a {
  color: #fff;
  border-color: rgba(255, 255, 255, .36);
  background: rgba(255, 255, 255, .08);
}

.home-growth-band .newsletter-optin-form input[type="email"] {
  border-color: #fff;
}

.growth-profile-hero,
.giveaway-hero {
  position: relative;
  min-height: 480px;
  display: grid;
  align-items: end;
  overflow: hidden;
  color: #fff;
  background: #10171a;
}

.growth-profile-hero > img,
.giveaway-hero > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.growth-profile-hero::after,
.giveaway-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(7, 15, 18, .72);
}

.growth-profile-hero > div,
.giveaway-hero > div {
  position: relative;
  z-index: 1;
  width: min(1120px, calc(100% - 40px));
  margin: 0 auto;
  padding: 70px 0 56px;
}

.growth-profile-hero h1,
.giveaway-hero h1 {
  max-width: 850px;
  margin: 10px 0 14px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 68px;
  line-height: .98;
}

.growth-profile-hero p,
.giveaway-hero p {
  max-width: 700px;
  color: rgba(255, 255, 255, .86);
  font-size: 16px;
  line-height: 1.55;
}

.growth-profile-shell,
.giveaway-shell {
  padding-top: 34px;
}

.growth-value-grid,
.growth-control-list,
.giveaway-concept-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.growth-value-grid article,
.growth-control-list article,
.giveaway-concept-grid article {
  min-width: 0;
  padding: 20px;
  border: 1px solid #d5dedb;
  border-top: 5px solid #0f7a50;
  border-radius: 4px;
  background: #fff;
}

.growth-value-grid article:nth-child(2),
.growth-control-list article:nth-child(2),
.giveaway-concept-grid article:nth-child(2) { border-top-color: #1679b8; }
.growth-value-grid article:nth-child(3),
.growth-control-list article:nth-child(3),
.giveaway-concept-grid article:nth-child(3) { border-top-color: #dc3a49; }

.growth-value-grid strong {
  display: block;
  margin-bottom: 9px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 30px;
}

.growth-value-grid span,
.growth-control-list p,
.giveaway-concept-grid p {
  color: #5f6b67;
  line-height: 1.5;
}

.growth-policy-note {
  margin: 18px 0 0;
  padding: 14px 16px;
  border-left: 4px solid #c49313;
  color: #60562e;
  background: #fff8dc;
  line-height: 1.55;
}

.giveaway-status-banner {
  display: grid;
  grid-template-columns: minmax(190px, .4fr) minmax(0, 1fr);
  gap: 24px;
  align-items: center;
  border-left: 8px solid #dc3a49;
  background: #fff;
}

.giveaway-status-banner strong {
  font-size: 20px;
}

.giveaway-concept-grid article > span,
.giveaway-concept-grid article > b {
  color: #b22d3c;
  font-size: 11px;
  text-transform: uppercase;
}

.giveaway-concept-grid h3 {
  margin: 12px 0 8px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 24px;
}

.giveaway-gate-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 2px solid #11171a;
}

.giveaway-gate-grid > span {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: 72px;
  padding: 12px;
  border-right: 1px solid #cfd8d5;
  border-bottom: 1px solid #cfd8d5;
  background: #fff;
}

.giveaway-gate-grid b {
  color: #c53546;
}

@media (max-width: 980px) {
  .newsletter-signup,
  .home-growth-band { grid-template-columns: 1fr; }
  .growth-value-grid,
  .growth-control-list,
  .giveaway-concept-grid { grid-template-columns: 1fr; }
  .growth-profile-hero,
  .giveaway-hero { min-height: 430px; }
}

@media (max-width: 620px) {
  .newsletter-signup,
  .home-growth-band { padding: 22px 16px; }
  .newsletter-signup h2,
  .home-growth-band h2,
  .growth-profile-shell h2,
  .giveaway-shell h2 { font-size: 27px; }
  .growth-profile-hero > div,
  .giveaway-hero > div { width: min(100% - 30px, 1120px); padding-bottom: 38px; }
  .growth-profile-hero h1,
  .giveaway-hero h1 { font-size: 42px; }
  .giveaway-status-banner,
  .giveaway-gate-grid { grid-template-columns: 1fr; }
  .giveaway-gate-grid > span { border-right: 0; }
}
.weather-desk{background:#f8fbfa;border-top:4px solid #0e7451;border-bottom:1px solid #cbd8d4;padding:18px}.weather-desk-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.weather-desk-head h2{font-size:clamp(24px,3vw,42px);margin:2px 0 4px;letter-spacing:0}.weather-current{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;margin:18px 0}.weather-temperature{font-family:Georgia,serif;font-size:64px;line-height:1}.weather-current-copy{display:grid;gap:3px}.weather-current-copy strong{font-size:20px}.weather-forecast{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid #cbd8d4;border-left:1px solid #cbd8d4}.weather-forecast article{min-width:0;display:grid;gap:4px;padding:12px;border-right:1px solid #cbd8d4;border-bottom:1px solid #cbd8d4}.weather-forecast span{font-size:13px}.weather-forecast small{color:#5f706b}.weather-actions{display:flex;gap:8px;flex-wrap:wrap}.weather-privacy{font-size:12px;color:#5b6d67;margin:10px 0 0}.weather-unavailable [data-weather-forecast]{display:none}.home-weather-strip{margin-top:18px}.home-weather-strip .weather-temperature{font-size:48px}@media(max-width:760px){.weather-desk-head{display:grid}.weather-forecast{grid-template-columns:repeat(2,minmax(0,1fr))}.weather-forecast article:last-child{grid-column:1/-1}.weather-current{grid-template-columns:1fr}.weather-temperature{font-size:52px}}

.article-live-chain{margin:28px 0;padding:20px 22px;border-left:4px solid #d51f2a;background:#fff8f3}.article-section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;border-bottom:2px solid #10171a;padding-bottom:10px}.article-section-heading h2{margin:0;font-size:clamp(1.45rem,3vw,2.15rem);letter-spacing:0}.article-live-chain .live-update-list{margin:0}.article-live-chain .live-update-list li{grid-template-columns:minmax(110px,145px) minmax(0,1fr);padding:18px 0}.article-live-chain .live-update-list li:first-child{border-top:0}.article-live-chain .live-update-list a{grid-column:2;width:max-content;max-width:100%}.article-publication-time time{font-weight:800}.reader-message-panel form{display:grid;gap:12px}.reader-message-panel label{display:grid;gap:6px;font-weight:800}.reader-message-panel input,.reader-message-panel textarea{width:100%;border:1px solid #bcc8c8;background:#fff;padding:10px;font:inherit;color:#10171a;border-radius:2px}.reader-message-panel textarea{min-height:120px;resize:vertical}.reader-message-panel .reader-message-consent{grid-template-columns:20px minmax(0,1fr);align-items:start;font-size:.86rem;font-weight:600}.reader-message-panel .reader-message-consent input{width:18px;height:18px;margin:1px 0 0}.reader-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important}.reader-message-status{min-height:1.4em;margin:0;font-weight:800}.reader-message-status[data-state="success"]{color:#087d4b}.reader-message-status[data-state="error"]{color:#b21425}@media(max-width:700px){.article-section-heading{display:block}.article-section-heading h2{margin-top:4px}.article-live-chain{padding:16px}.article-live-chain .live-update-list li{display:block}.article-live-chain .live-update-list time,.article-live-chain .live-update-list a{display:block;margin-bottom:8px}}

.reader-extra-hero{min-height:390px}.reader-extra-shell{padding-top:30px;padding-bottom:50px}.reader-extra-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px;border-top:2px solid #10171a;border-left:1px solid #cbd8d4}.reader-extra-links a{display:grid;gap:7px;min-height:125px;padding:18px;border-right:1px solid #cbd8d4;border-bottom:1px solid #cbd8d4;color:#10171a;background:#fff}.reader-extra-links a:hover{background:#edf8f4}.reader-extra-links span{color:#d21f2b;font-size:11px;font-weight:900;text-transform:uppercase}.reader-extra-links strong{font-family:Georgia,'Times New Roman',serif;font-size:24px}.reader-extra-links small{color:#596a65;line-height:1.4}.history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:2px solid #10171a;border-left:1px solid #cbd8d4}.history-grid article{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px 20px;align-content:start;min-height:230px;padding:24px;border-right:1px solid #cbd8d4;border-bottom:1px solid #cbd8d4;background:#fff}.history-year{grid-row:1/5;color:#cf202d;font-family:Georgia,'Times New Roman',serif;font-size:34px}.history-grid h2{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:25px;letter-spacing:0}.history-grid p{margin:5px 0;color:#4f615b;line-height:1.6}.history-grid a{font-weight:850}.entertainment-notice{display:grid;grid-template-columns:minmax(180px,.3fr) minmax(0,1fr);gap:20px;margin-bottom:22px;padding:16px 18px;border-left:5px solid #cf202d;background:#fff}.zodiac-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:2px solid #10171a;border-left:1px solid #cbd8d4}.zodiac-grid article{min-height:180px;padding:20px;border-right:1px solid #cbd8d4;border-bottom:1px solid #cbd8d4;background:#fff}.zodiac-grid article>span{color:#cf202d;font-size:11px;font-weight:900}.zodiac-grid h2{margin:8px 0;font-family:Georgia,'Times New Roman',serif;font-size:25px;letter-spacing:0}.zodiac-grid p{margin:0;color:#4f615b;line-height:1.55}.sports-responsibility{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;margin-bottom:32px;padding:22px;border-left:6px solid #c49313;background:#fff8dc}.sports-responsibility h2{margin:5px 0 8px;font-family:Georgia,'Times New Roman',serif;font-size:28px;letter-spacing:0}.sports-responsibility p{max-width:800px;margin:0;line-height:1.55}.sports-responsibility-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:820px){.reader-extra-links,.zodiac-grid{grid-template-columns:1fr}.history-grid{grid-template-columns:1fr}.sports-responsibility,.entertainment-notice{grid-template-columns:1fr}.sports-responsibility-actions{justify-content:flex-start}}@media(max-width:500px){.history-grid article{grid-template-columns:1fr}.history-year{grid-row:auto}.reader-extra-hero{min-height:340px}}

.sports-official-board{margin-bottom:34px}.sports-board-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);gap:24px;align-items:end;margin-bottom:14px}.sports-board-heading h2{margin:4px 0 0;font-family:Georgia,'Times New Roman',serif;font-size:32px;letter-spacing:0}.sports-board-heading p{margin:0;color:#4f615b;line-height:1.55}.sports-official-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:3px solid #10171a;border-left:1px solid #cbd8d4}.sports-official-grid>a{display:grid;gap:7px;align-content:start;min-height:150px;padding:18px;color:#10171a;background:#fff;border-right:1px solid #cbd8d4;border-bottom:1px solid #cbd8d4}.sports-official-grid>a:hover{background:#eef7f4}.sports-official-grid>a>span{color:#cf202d;font-size:11px;font-weight:900}.sports-official-grid strong{font-family:Georgia,'Times New Roman',serif;font-size:21px;line-height:1.18}.sports-official-grid small{color:#53665f;line-height:1.4}.sports-latest-section{margin-bottom:28px}.sports-empty{display:grid;gap:7px;padding:28px;text-align:left;background:#fff;border-left:5px solid #0e7451}.sports-empty strong{font-family:Georgia,'Times New Roman',serif;font-size:23px}.sports-empty p{margin:0;color:#53665f}.sports-lanes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:32px;border-top:2px solid #10171a;border-left:1px solid #cbd8d4}.sports-lanes>a{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 12px;min-height:112px;padding:16px;color:#10171a;background:#f7faf9;border-right:1px solid #cbd8d4;border-bottom:1px solid #cbd8d4}.sports-lanes>a:hover{background:#e7f5f0}.sports-lanes>a>span{grid-row:1/3;color:#cf202d;font-size:11px;font-weight:900}.sports-lanes strong{font-size:16px}.sports-lanes small{color:#53665f;line-height:1.35}.sports-responsibility{margin-top:0}@media(max-width:980px){.sports-official-grid,.sports-lanes{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.sports-board-heading{grid-template-columns:1fr}}@media(max-width:560px){.sports-official-grid,.sports-lanes{grid-template-columns:1fr}.sports-official-grid>a{min-height:120px}}

.house-ad-slot{--house-accent:#087b4f;width:min(100% - 40px,1100px);min-height:150px;grid-template-columns:minmax(150px,180px) minmax(0,1fr) minmax(170px,200px);gap:0;padding:0;overflow:hidden;border:1px solid #bfcac7;border-left:6px solid var(--house-accent);background:#fff}.house-ad-print{--house-accent:#c41e78}.house-ad-services{--house-accent:#087b4f}.house-ad-build{--house-accent:#a56a00}.house-ad-capture{--house-accent:#087e8b}.house-ad-ident{align-self:stretch;display:grid;gap:13px;align-content:center;padding:16px;background:#10171a}.house-ad-ident .commercial-label{width:max-content;max-width:100%;padding:5px 7px;background:var(--house-accent);letter-spacing:0}.commercial-slot .house-ad-logo{display:grid;gap:7px;align-content:center;justify-items:start;min-height:68px;color:#fff;text-decoration:none}.house-ad-logo img{display:block;width:auto;max-width:135px;height:auto;max-height:52px;object-fit:contain}.house-ad-logo span{color:#fff;font-size:13px;font-weight:900;line-height:1.2}.house-ad-print .house-ad-logo,.house-ad-build .house-ad-logo,.house-ad-capture .house-ad-logo{width:100%;padding:8px;background:#fff}.house-ad-print .house-ad-logo span,.house-ad-build .house-ad-logo span,.house-ad-capture .house-ad-logo span{color:#10171a}.house-ad-copy{min-width:0;display:grid;gap:7px;align-content:center;padding:22px 26px}.house-ad-kicker{color:var(--house-accent);font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:0}.commercial-slot .house-ad-copy strong{font-family:Georgia,'Times New Roman',serif;font-size:clamp(20px,2vw,27px);line-height:1.08;letter-spacing:0}.house-ad-copy p{margin:0;color:#4e605a;font-size:14px;line-height:1.45}.house-ad-actions{align-self:stretch;display:grid;gap:10px;align-content:center;padding:20px;border-left:1px solid #d9e0de;background:#f5f8f7}.commercial-slot .house-ad-cta{display:grid;min-height:44px;place-items:center;padding:9px 12px;color:#fff;background:var(--house-accent);font-size:13px;text-align:center;text-decoration:none}.commercial-slot .house-ad-cta:hover{background:#10171a}.commercial-slot .house-ad-disclosure{color:#394b46;font-size:11px;text-align:center}.commercial-slot-compact.house-ad-slot{max-width:920px;min-height:140px}@media(max-width:760px){.house-ad-slot{width:min(100% - 24px,1100px);grid-template-columns:1fr}.house-ad-ident{grid-template-columns:auto minmax(0,1fr);align-items:center;min-height:100px}.house-ad-ident .commercial-label{align-self:start}.house-ad-copy{padding:18px}.house-ad-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;border-top:1px solid #d9e0de;border-left:0;padding:14px 18px}.commercial-slot .house-ad-disclosure{text-align:right}}@media(max-width:430px){.house-ad-ident{grid-template-columns:1fr}.house-ad-actions{grid-template-columns:1fr}.commercial-slot .house-ad-disclosure{text-align:center}.house-ad-copy p{font-size:13px}}

/* MWB News v55: restrained house-promotion disclosure and single brand mark */
.house-ad-ident .commercial-label{padding:0 0 5px;color:#b9c7c3;background:transparent;font-size:9px;font-weight:850}
.commercial-slot .house-ad-logo{min-height:58px}
.house-ad-logo img{max-width:145px;max-height:60px}

/* MWB News v52: reader games and category quiz prompts */
.games-main{width:min(100% - 40px,1180px);margin:0 auto;padding:28px 0 56px}.games-lead-band{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.48fr);gap:36px;align-items:end;min-height:310px;padding:42px;color:#fff;background:#10171a;border-top:7px solid #d71920}.games-lead-band:after{content:"";position:absolute;right:0;bottom:0;width:32%;height:7px;background:#1e78b7;box-shadow:-140px 0 0 #0c8658,-280px 0 0 #c89513}.games-lead-copy{max-width:720px}.games-lead-copy .story-kicker{color:#ffcf3c}.games-lead-copy h1{max-width:760px;margin:10px 0 12px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,5vw,64px);line-height:.98;letter-spacing:0}.games-lead-copy p{max-width:620px;margin:0;color:#dce5e2;font-size:18px;line-height:1.55}.games-scoreboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-self:stretch;border-top:1px solid #52605e;border-left:1px solid #52605e}.games-scoreboard>div{display:grid;gap:9px;align-content:end;min-width:0;padding:18px 14px;border-right:1px solid #52605e;border-bottom:1px solid #52605e}.games-scoreboard>div:nth-child(1){border-top:4px solid #0c8658}.games-scoreboard>div:nth-child(2){border-top:4px solid #1e78b7}.games-scoreboard>div:nth-child(3){border-top:4px solid #c89513}.games-scoreboard span{color:#b8c5c1;font-size:11px;font-weight:900;text-transform:uppercase}.games-scoreboard strong{font-family:Georgia,'Times New Roman',serif;font-size:30px;line-height:1}.games-quiz-section{margin-top:30px;padding:28px;background:#fff;border:1px solid #c9d4d1;border-top:5px solid #0c8658}.games-section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;padding-bottom:16px;border-bottom:2px solid #10171a}.games-section-head h2,.games-secondary-grid h2{margin:5px 0 0;font-family:Georgia,'Times New Roman',serif;font-size:32px;letter-spacing:0}.games-progress-copy{font-size:13px}.games-progress-copy>[data-quiz-progress]{margin-right:16px;font-weight:900}.games-progress-copy>[data-quiz-score]{font-size:28px;color:#0c8658}.games-category-filter{display:flex;gap:0;margin:18px 0;overflow-x:auto;border:1px solid #bfcac7;scrollbar-width:thin}.games-category-filter button{min-height:43px;flex:0 0 auto;padding:9px 14px;border:0;border-right:1px solid #bfcac7;color:#10171a;background:#f5f8f7;font:inherit;font-size:13px;font-weight:800;line-height:1.2;cursor:pointer}.games-category-filter button:hover{background:#e4efec}.games-category-filter button.is-active,.games-category-filter button[aria-pressed="true"]{color:#fff;background:#10171a}.quiz-stage{min-height:430px}.quiz-question-panel{display:grid;align-content:start;min-height:430px;padding-top:6px}.quiz-question-meta{display:flex;justify-content:space-between;gap:20px;align-items:center;color:#b71925;font-size:12px;font-weight:950;text-transform:uppercase}.quiz-question-meta b{display:grid;width:40px;height:40px;place-items:center;color:#fff;background:#10171a}.quiz-question-panel h3{max-width:900px;margin:24px 0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(25px,3vw,38px);line-height:1.14;letter-spacing:0}.quiz-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quiz-answer-grid button{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;min-height:68px;padding:10px 14px;border:1px solid #b9c5c2;color:#10171a;background:#f8faf9;text-align:left;cursor:pointer}.quiz-answer-grid button:hover:not(:disabled){border-color:#10171a;background:#edf5f2}.quiz-answer-grid button>span{display:grid;width:38px;height:38px;place-items:center;color:#fff;background:#1e78b7;font-weight:950}.quiz-answer-grid button>strong{min-width:0;font-size:15px;line-height:1.35}.quiz-answer-grid button.is-correct{border-color:#0c8658;background:#e6f6ee}.quiz-answer-grid button.is-correct>span{background:#0c8658}.quiz-answer-grid button.is-wrong{border-color:#c91e32;background:#fff0f1}.quiz-answer-grid button.is-wrong>span{background:#c91e32}.quiz-answer-grid button:disabled{cursor:default}.quiz-feedback{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;margin-top:16px;padding:14px 16px;border-left:5px solid #0c8658;background:#ecf7f2}.quiz-feedback.is-wrong{border-left-color:#c91e32;background:#fff1f2}.quiz-feedback strong{font-size:14px}.quiz-feedback span{line-height:1.45}.quiz-next-row{display:flex;justify-content:flex-end;margin-top:16px}.quiz-complete{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;min-height:330px}.quiz-complete-score{display:grid;width:150px;height:150px;place-items:center;color:#fff;background:#0c8658;font-family:Georgia,'Times New Roman',serif;font-size:46px}.quiz-complete h3{margin:0 0 8px;font-family:Georgia,'Times New Roman',serif;font-size:34px;letter-spacing:0}.quiz-complete p{margin:0;color:#52635e}.games-secondary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:30px;border-top:4px solid #10171a;border-left:1px solid #c9d4d1}.games-secondary-grid>article{min-width:0;min-height:480px;padding:26px;border-right:1px solid #c9d4d1;border-bottom:1px solid #c9d4d1;background:#f8faf9}.games-secondary-grid>article:first-child{border-top:5px solid #1e78b7}.games-secondary-grid>article:last-child{border-top:5px solid #c89513}.games-secondary-grid>article>header{min-height:92px;border-bottom:1px solid #bfcac7}.mini-game-progress{display:flex;justify-content:space-between;gap:12px;margin:20px 0 12px;color:#596a65;font-size:13px;font-weight:850}.desk-match-prompt{min-height:82px;margin:0 0 14px;font-family:Georgia,'Times New Roman',serif;font-size:22px;line-height:1.3}.desk-match-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.desk-match-options button{min-height:50px;padding:9px;border:1px solid #afbfbb;background:#fff;font:inherit;font-size:13px;font-weight:850;line-height:1.25;cursor:pointer}.desk-match-options button:hover:not(:disabled){border-color:#10171a}.desk-match-options button.is-correct{color:#fff;background:#0c8658;border-color:#0c8658}.desk-match-options button.is-wrong{color:#fff;background:#c91e32;border-color:#c91e32}.mini-game-feedback{margin:14px 0;padding:11px 13px;border-left:4px solid #1e78b7;background:#eaf4fa;font-weight:800}.mini-game-feedback.is-correct{border-left-color:#0c8658;background:#e6f6ee}.mini-game-feedback.is-wrong{border-left-color:#c91e32;background:#fff0f1}.mini-game-result{display:grid;gap:14px;justify-items:start;align-content:center;min-height:300px}.mini-game-result>strong{font-family:Georgia,'Times New Roman',serif;font-size:54px}.word-puzzle{padding-top:20px}.word-scramble{display:flex;min-height:90px;align-items:center;justify-content:center;padding:12px;color:#fff;background:#10171a;font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,4vw,48px);font-weight:900;letter-spacing:4px;overflow-wrap:anywhere;text-align:center}.word-puzzle>p{min-height:48px;color:#4f615c;line-height:1.45}.word-puzzle label{display:grid;gap:6px;font-weight:850}.word-puzzle input{width:100%;min-height:48px;padding:10px 12px;border:1px solid #aebebb;background:#fff;font:inherit;font-size:18px;font-weight:800;line-height:1.2;text-transform:uppercase}.word-puzzle input:focus{outline:3px solid rgba(30,120,183,.22);border-color:#1e78b7}.word-puzzle input.is-correct{border-color:#0c8658;background:#e6f6ee}.word-game-actions{display:flex;gap:8px;margin-top:12px}.games-privacy-note{display:grid;grid-template-columns:minmax(220px,.35fr) minmax(0,1fr);gap:24px;margin-top:24px;padding:18px 20px;border-left:5px solid #c89513;background:#fff8dc}.games-privacy-note span{color:#52635e;line-height:1.45}.category-quiz-teaser{display:grid;grid-template-columns:minmax(260px,1fr) minmax(340px,1.25fr);gap:16px 24px;align-items:center;margin:18px 0 26px;padding:16px 18px;border:1px solid #c2cecb;border-left:6px solid #1e78b7;background:#fff}.category-quiz-copy{display:grid;gap:5px}.category-quiz-copy>span{color:#c61c29;font-size:10px;font-weight:950}.category-quiz-copy>strong{font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:1.25}.category-quiz-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.category-quiz-options button{min-height:42px;padding:7px 9px;border:1px solid #b7c5c1;background:#f5f8f7;font:inherit;font-size:12px;font-weight:800;line-height:1.2;cursor:pointer}.category-quiz-options button:hover:not(:disabled){border-color:#10171a}.category-quiz-options button.is-correct{color:#fff;background:#0c8658;border-color:#0c8658}.category-quiz-options button.is-wrong{color:#fff;background:#c91e32;border-color:#c91e32}.category-quiz-result{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding-top:12px;border-top:1px solid #ccd6d3;font-size:13px}.category-quiz-result[hidden]{display:none}.category-quiz-result a{font-weight:900}.news-v52 .reader-extra-links{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.games-lead-band{grid-template-columns:1fr;align-items:start}.games-scoreboard{min-height:130px}.quiz-complete{grid-template-columns:auto minmax(0,1fr)}.quiz-complete .news-button{grid-column:1/-1;width:max-content}.games-secondary-grid{grid-template-columns:1fr}.games-secondary-grid>article{min-height:440px}.category-quiz-teaser{grid-template-columns:1fr}.category-quiz-result{grid-template-columns:auto minmax(0,1fr)}.category-quiz-result a{grid-column:1/-1}.news-v52 .reader-extra-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.games-main{width:min(100% - 24px,1180px);padding-top:16px}.games-lead-band{min-height:0;padding:26px 20px}.games-lead-copy h1{font-size:38px}.games-scoreboard{grid-template-columns:1fr}.games-scoreboard>div{grid-template-columns:minmax(0,1fr) auto;align-items:center}.games-scoreboard strong{font-size:25px}.games-quiz-section{padding:18px 14px}.games-section-head{display:grid}.games-progress-copy{display:flex;align-items:center}.quiz-stage,.quiz-question-panel{min-height:520px}.quiz-answer-grid{grid-template-columns:1fr}.quiz-question-panel h3{font-size:27px}.quiz-complete{grid-template-columns:1fr;align-content:center}.quiz-complete-score{width:120px;height:120px;font-size:38px}.games-secondary-grid>article{padding:20px 15px}.desk-match-options{grid-template-columns:1fr}.games-privacy-note{grid-template-columns:1fr}.category-quiz-teaser{padding:14px}.category-quiz-options{grid-template-columns:1fr}.news-v52 .reader-extra-links{grid-template-columns:1fr}}

.games-lead-copy h1{color:#fff}.games-page [hidden],.category-quiz-teaser [hidden]{display:none!important}

/* MWB News v59: compact, opt-in category quiz teaser */
[data-category-quiz-slot]{width:100%}
.category-quiz-teaser{
  position:relative;
  width:min(100%,760px);
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px 14px;
  align-items:center;
  margin:12px 0 18px;
  padding:10px 12px;
  border:1px solid #c8d3d0;
  border-left:3px solid #1e78b7;
  border-radius:6px;
  background:#fff;
  box-shadow:0 3px 12px rgba(16,23,26,.06),0 0 12px rgba(30,120,183,.07);
}
[data-category-quiz-slot]:not([data-teaser-complete="1"]) .category-quiz-teaser{
  animation:categoryQuizGlow 4.8s ease-in-out infinite;
}
[data-category-quiz-slot][data-teaser-complete="1"] .category-quiz-teaser{
  border-left-color:#0c8658;
  box-shadow:0 3px 10px rgba(16,23,26,.05);
}
@keyframes categoryQuizGlow{
  0%,100%{box-shadow:0 3px 12px rgba(16,23,26,.06),0 0 9px rgba(30,120,183,.06)}
  50%{box-shadow:0 4px 14px rgba(16,23,26,.07),0 0 16px rgba(30,120,183,.13)}
}
.category-quiz-copy{gap:2px;min-width:0}
.category-quiz-copy>span{font-size:9px}
.category-quiz-copy>strong{font-size:16px;line-height:1.22}
.category-quiz-reveal{min-width:108px}
.category-quiz-reveal>summary{
  display:flex;
  min-height:34px;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border:1px solid #aebeba;
  border-radius:4px;
  color:#10171a;
  background:#f5f8f7;
  font-size:11px;
  font-weight:900;
  line-height:1.15;
  list-style:none;
  cursor:pointer;
}
.category-quiz-reveal>summary::-webkit-details-marker{display:none}
.category-quiz-reveal>summary:after{content:"+";margin-left:8px;color:#1e78b7;font-size:16px;line-height:1}
.category-quiz-reveal[open]>summary:after{content:"\2212"}
.category-quiz-reveal>summary:hover{border-color:#1e78b7;background:#eef6fa}
.category-quiz-reveal>summary:focus-visible{outline:3px solid rgba(30,120,183,.2);outline-offset:2px}
.category-quiz-reveal[open]{width:min(420px,48vw)}
.category-quiz-options{margin-top:7px;gap:5px}
.category-quiz-options button{
  min-height:34px;
  padding:5px 7px;
  border-radius:4px;
  font-size:11px;
  line-height:1.15;
}
.category-quiz-options button:hover:not(:disabled){background:#eef6f3;box-shadow:0 2px 7px rgba(16,23,26,.08)}
.category-quiz-result{gap:8px;padding-top:8px;font-size:12px;line-height:1.35}
@media(max-width:760px){
  .category-quiz-teaser{width:100%;grid-template-columns:1fr;padding:9px 10px;margin:10px 0 15px}
  .category-quiz-copy>strong{font-size:15px}
  .category-quiz-reveal,.category-quiz-reveal[open]{width:100%;min-width:0}
  .category-quiz-reveal>summary{width:max-content;max-width:100%}
  .category-quiz-result{grid-template-columns:auto minmax(0,1fr)}
  .category-quiz-result a{grid-column:1/-1}
}
@media(max-width:520px){
  .category-quiz-options{grid-template-columns:1fr}
  .category-quiz-options button{min-height:32px;text-align:left}
}
@media(prefers-reduced-motion:reduce){
  [data-category-quiz-slot]:not([data-teaser-complete="1"]) .category-quiz-teaser{animation:none}
}

/* World Desk keeps the injected quiz on the same editorial grid as its heading. */
.world-desk-page [data-category-quiz-slot]{
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
}
.world-desk-page [data-category-quiz-slot] .category-quiz-teaser{
  margin:0 0 22px;
}
@media(max-width:720px){
  .world-desk-page [data-category-quiz-slot]{
    width:min(1180px,calc(100% - 28px));
  }
}

@media(max-width:680px){.news-masthead{overflow-x:hidden}}

/* v53 live weather drawer, detailed desk and draggable world conditions */
.news-utility-leading {
  position: relative;
}

.news-utility-leading > time,
.weather-city-clock,
[data-weather-city-time] {
  font-variant-numeric: tabular-nums;
}

.weather-utility-widget {
  position: relative;
  display: block;
  padding-left: 0;
  border-left: 0;
}

.weather-utility-trigger {
  width: 100%;
  min-height: 28px;
  display: flex !important;
  align-items: center;
  gap: 6px;
  padding: 0 3px 0 10px !important;
  border: 0 !important;
  border-left: 2px solid #cf202d !important;
  border-radius: 0 !important;
  color: #17201d !important;
  background: transparent !important;
  box-shadow: none !important;
  font: inherit !important;
  text-align: left;
}

.weather-utility-trigger:hover,
.weather-utility-trigger:focus-visible {
  color: #17201d !important;
  background: #f1f5f3 !important;
}

.weather-utility-trigger:focus-visible {
  outline: 2px solid #0e7451;
  outline-offset: 2px;
}

.weather-utility-trigger > strong {
  flex: 0 0 auto;
  font-size: 11px;
}

.weather-utility-trigger > b {
  flex: 0 0 auto;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 18px;
  line-height: 1;
}

.weather-utility-chevron {
  width: 15px;
  flex: 0 0 15px;
  color: #53635e;
  font-size: 15px;
  text-align: center;
  transition: transform .2s ease;
}

.weather-utility-trigger[aria-expanded="true"] .weather-utility-chevron {
  transform: rotate(180deg);
}

.weather-utility-drawer {
  position: absolute;
  z-index: 30;
  top: calc(100% + 8px);
  left: 0;
  width: min(440px, calc(100vw - 24px));
  padding: 14px;
  border: 1px solid #aebdb8;
  border-top: 4px solid #0e7451;
  color: #17201d;
  background: #fff;
  box-shadow: 0 18px 42px rgba(16, 23, 26, .24);
  line-height: 1.25;
  white-space: normal;
}

.weather-utility-drawer[hidden] {
  display: none !important;
}

.weather-utility-drawer > header {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 10px;
}

.weather-utility-drawer h2 {
  margin: 2px 0 0;
  font: 700 24px/1.05 Georgia, 'Times New Roman', serif;
  letter-spacing: 0;
}

.weather-utility-drawer > header > time {
  color: #52625d;
  font-size: 10px;
  font-weight: 850;
}

.weather-city-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px;
  align-items: end;
}

.weather-city-form label {
  min-width: 0;
  display: grid;
  gap: 3px;
  color: #4c5d58;
  font-size: 10px;
  font-weight: 900;
}

.weather-city-form input {
  width: 100%;
  min-height: 34px;
  padding: 6px 8px;
  border: 1px solid #adbbb6;
  border-radius: 2px;
  color: #17201d;
  background: #fff;
  font: 700 12px/1.2 Arial, sans-serif;
}

.weather-city-form button,
.weather-utility-drawer footer button,
.weather-utility-drawer footer a {
  min-height: 34px;
  display: inline-grid;
  place-items: center;
  padding: 6px 10px;
  border: 1px solid #0e7451;
  border-radius: 2px;
  color: #fff;
  background: #0e7451;
  font: 900 11px/1.1 Arial, sans-serif;
  text-decoration: none;
  cursor: pointer;
}

.weather-city-form > small {
  grid-column: 1 / -1;
  min-height: 0;
  color: #a22939;
  font-size: 10px;
  font-weight: 850;
}

.weather-city-form > small:empty {
  display: none;
}

.weather-drawer-current {
  display: grid;
  grid-template-columns: 42px auto minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  margin: 12px 0 8px;
}

.weather-drawer-current > span {
  color: #b97c00;
  font-size: 34px;
  line-height: 1;
  text-align: center;
}

.weather-drawer-current > strong {
  font: 700 42px/1 Georgia, 'Times New Roman', serif;
}

.weather-drawer-current > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.weather-drawer-current > div > b {
  font-size: 14px;
}

.weather-drawer-current > div > span,
.weather-drawer-current > div > small {
  overflow: hidden;
  color: #52625d;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.weather-drawer-current > div > small {
  color: #a22939;
  font-weight: 850;
}

.weather-drawer-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid #d1dcda;
  border-left: 1px solid #d1dcda;
}

.weather-drawer-metrics > span {
  min-width: 0;
  display: grid;
  gap: 3px;
  padding: 7px;
  border-right: 1px solid #d1dcda;
  border-bottom: 1px solid #d1dcda;
}

.weather-drawer-metrics small {
  color: #60706b;
  font-size: 9px;
  font-weight: 800;
}

.weather-drawer-metrics b {
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.weather-popover-forecast {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-top: 9px;
}

.weather-popover-forecast article {
  gap: 2px;
  padding: 6px 4px;
  text-align: center;
}

.weather-popover-forecast article > strong,
.weather-popover-forecast article > span,
.weather-popover-forecast article > small {
  font-size: 8px;
}

.weather-popover-forecast article > b {
  font-size: 9px;
}

.weather-day-symbol {
  color: #b97c00;
  font-size: 19px !important;
  line-height: 1;
}

.weather-utility-drawer footer {
  display: flex;
  gap: 7px;
  justify-content: space-between;
  margin-top: 10px;
}

.weather-utility-drawer footer button {
  color: #17201d;
  border-color: #9eaca7;
  background: #fff;
}

.weather-city-clock {
  display: block;
  margin-top: 4px;
  color: #5a6964;
  font-size: 11px;
  font-weight: 850;
}

.weather-desk-search {
  width: min(100%, 540px);
  grid-template-columns: minmax(180px, 1fr) auto auto;
}

.weather-desk-search > small {
  grid-column: 1 / -1;
}

.weather-detail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 16px;
  border-top: 1px solid #cbd8d4;
  border-left: 1px solid #cbd8d4;
}

.weather-detail-grid article {
  min-width: 0;
  display: grid;
  gap: 6px;
  padding: 13px;
  border-right: 1px solid #cbd8d4;
  border-bottom: 1px solid #cbd8d4;
}

.weather-detail-grid article > span {
  color: #5d6e69;
  font-size: 11px;
  font-weight: 850;
}

.weather-detail-grid article > strong {
  font: 700 22px/1 Georgia, 'Times New Roman', serif;
}

.world-map-stage svg {
  cursor: grab;
  user-select: none;
}

.world-map-stage.is-map-pressed svg,
.world-map-stage.is-map-dragging svg {
  cursor: grabbing;
}

.world-map-stage.is-map-dragging path[data-country-code] {
  pointer-events: none;
}

.world-map-stage .world-weather-marker,
.world-map-stage .world-wind-marker {
  pointer-events: auto;
  cursor: pointer;
}

.world-weather-marker {
  --weather-color: #1687a7;
  --weather-ink: #fff;
}

.world-weather-marker.temperature-freezing { --weather-color: #315bd6; }
.world-weather-marker.temperature-cold { --weather-color: #1687c7; }
.world-weather-marker.temperature-mild { --weather-color: #168b72; }
.world-weather-marker.temperature-warm { --weather-color: #d28a0b; }
.world-weather-marker.temperature-hot { --weather-color: #cc3a32; }

.world-weather-marker .world-weather-halo {
  fill: var(--weather-color);
  opacity: .23;
}

.world-weather-marker rect {
  fill: var(--weather-color);
  stroke: #fff;
  stroke-width: 1.5;
}

.world-weather-marker text {
  fill: var(--weather-ink);
}

.world-weather-marker .world-weather-symbol {
  font: 900 13px/1 Arial, sans-serif;
}

.world-weather-marker .world-weather-temperature {
  font: 900 14px/1 Arial, sans-serif;
}

.world-wind-marker {
  --wind-color: #21789a;
}

.world-wind-marker.wind-moderate { --wind-color: #278b76; }
.world-wind-marker.wind-strong { --wind-color: #d27d0a; }
.world-wind-marker.wind-severe { --wind-color: #c83243; }

.world-map-stage .world-wind-marker circle {
  fill: var(--wind-color);
  stroke: #fff;
  stroke-width: 1.5;
}

.world-map-stage .world-wind-marker path {
  stroke: #fff;
  stroke-width: 2.5;
}

.world-map-stage .world-wind-marker .world-wind-speed {
  fill: #10171a;
  paint-order: stroke;
  stroke: #fff;
  stroke-width: 3px;
  font: 900 11px/1 Arial, sans-serif;
}

.world-weather-forecast {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid #c3d5da;
  border-left: 1px solid #c3d5da;
}

.world-weather-forecast > span {
  display: grid;
  gap: 2px;
  padding: 6px;
  border-right: 1px solid #c3d5da;
  border-bottom: 1px solid #c3d5da;
  text-align: center;
}

.world-weather-forecast small {
  color: #596a65;
  font-size: 9px;
}

.world-weather-forecast b {
  color: #b97c00;
  font-size: 18px;
}

.world-weather-forecast strong {
  font-size: 10px;
}

@media (max-width: 760px) {
  .news-utility-leading > time {
    max-width: 155px;
    overflow: hidden;
    font-size: 9px !important;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .weather-utility-widget {
    flex-basis: 150px;
  }
  .weather-utility-trigger {
    gap: 4px;
    padding-left: 6px !important;
  }
  .weather-utility-trigger .weather-utility-label,
  .weather-utility-trigger .weather-utility-condition,
  .weather-utility-trigger .weather-utility-detail {
    display: none;
  }
  .weather-utility-trigger > strong {
    max-width: 72px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .weather-utility-drawer {
    left: auto;
    right: 0;
  }
  .weather-desk-search {
    width: 100%;
    grid-template-columns: 1fr 1fr;
  }
  .weather-desk-search label {
    grid-column: 1 / -1;
  }
  .weather-detail-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 480px) {
  .news-utility-leading > time {
    max-width: 124px;
  }
  .weather-utility-widget {
    flex-basis: 126px;
  }
  .weather-utility-trigger > strong {
    max-width: 52px;
  }
  .weather-utility-chevron {
    display: none;
  }
  .weather-utility-drawer {
    right: -2px;
    width: calc(100vw - 16px);
    padding: 11px;
  }
  .weather-drawer-metrics {
    grid-template-columns: 1fr;
  }
  .weather-popover-forecast {
    grid-template-columns: repeat(5, minmax(52px, 1fr));
    overflow-x: auto;
  }
  .weather-detail-grid {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .weather-utility-chevron {
    transition: none;
  }
}

/* v47 World Desk */
.world-desk-main {
  background: #f3f6f5;
}

.world-desk-heading {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: 42px 0 30px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: 42px;
  align-items: end;
}

.world-desk-heading h1 {
  max-width: 780px;
  margin: 8px 0 12px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 48px;
  line-height: 1.02;
  letter-spacing: 0;
}

.world-desk-heading p {
  max-width: 760px;
  margin: 0;
  color: #50615c;
  font-size: 16px;
  line-height: 1.55;
}

.world-country-search {
  display: grid;
  gap: 7px;
  color: #25332f;
  font-size: 12px;
  font-weight: 900;
}

.world-country-search input {
  width: 100%;
  min-height: 48px;
  padding: 10px 13px;
  border: 1px solid #8fa09b;
  border-radius: 3px;
  background: #fff;
  color: #10171a;
  font: inherit;
  font-size: 15px;
}

.world-browser {
  padding: 28px max(20px, calc((100% - 1180px) / 2)) 34px;
  border-top: 1px solid #c7d3d0;
  border-bottom: 1px solid #c7d3d0;
  background: #e6efed;
}

.world-browser-toolbar {
  display: flex;
  min-width: 0;
  gap: 20px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.world-browser-toolbar h2 {
  margin: 0;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 28px;
  letter-spacing: 0;
}

.world-region-tabs {
  display: flex;
  min-width: 0;
  max-width: 100%;
  gap: 5px;
  overflow-x: auto;
  padding-bottom: 2px;
}

.world-region-tabs button {
  flex: 0 0 auto;
  min-height: 38px;
  padding: 7px 11px;
  border: 1px solid #9baba6;
  border-radius: 3px;
  color: #20302b;
  background: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.world-region-tabs button.is-active,
.world-region-tabs button:hover {
  color: #fff;
  border-color: #0f6f50;
  background: #0f6f50;
}

.world-browser-layout {
  display: grid;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  grid-template-columns: minmax(0, 1fr) 330px;
  border-top: 4px solid #10171a;
  border-left: 1px solid #aebcb8;
  background: #fff;
}

.world-map-column {
  min-width: 0;
  overflow: hidden;
  border-right: 1px solid #aebcb8;
}

.world-map-stage {
  position: relative;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  aspect-ratio: 1000 / 520;
  min-height: 360px;
  overflow: hidden;
  background: #dcecef;
}

.world-map-stage svg {
  display: block;
  width: 100%;
  height: 100%;
}

.world-map-stage path {
  fill: #d5d8d4;
  stroke: #fff;
  stroke-width: 1.15;
  vector-effect: non-scaling-stroke;
  cursor: pointer;
  transition: fill .15s ease, opacity .15s ease;
}

.world-map-stage path.has-coverage {
  fill: #16835f;
}

.world-map-stage path:hover {
  fill: #13759e;
}

.world-map-stage path.is-selected {
  fill: #d32638;
  stroke: #10171a;
  stroke-width: 2.4;
}

.world-map-stage path.is-filtered-out {
  opacity: .08;
  pointer-events: none;
}

.world-map-loading {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  margin: 0;
  color: #40534d;
  font-weight: 900;
}

.world-map-loading[hidden],
.country-context-strip[hidden] {
  display: none;
}

.world-map-tooltip {
  position: absolute;
  z-index: 3;
  max-width: 180px;
  padding: 7px 9px;
  color: #fff;
  background: #10171a;
  font-size: 12px;
  font-weight: 900;
  pointer-events: none;
}

.world-map-legend {
  display: flex;
  gap: 14px 22px;
  align-items: center;
  flex-wrap: wrap;
  min-height: 54px;
  padding: 10px 14px;
  border-top: 1px solid #c7d3d0;
  color: #44554f;
  font-size: 11px;
}

.world-map-legend > span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
}

.world-map-legend i {
  width: 18px;
  height: 12px;
  border: 1px solid #a9b1ad;
  background: #d5d8d4;
}

.world-map-legend i.has-coverage {
  border-color: #16835f;
  background: #16835f;
}

.world-map-legend small {
  margin-left: auto;
}

.world-country-panel {
  min-width: 0;
  display: grid;
  gap: 14px;
  align-content: start;
  padding: 24px;
  background: #fff;
}

.world-country-panel h2 {
  margin: 0;
  overflow-wrap: anywhere;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 36px;
  line-height: 1.05;
  letter-spacing: 0;
}

.world-country-panel > p {
  margin: 0;
  color: #52625d;
  line-height: 1.5;
}

.world-country-count {
  display: flex;
  gap: 10px;
  align-items: baseline;
  padding: 11px 0;
  border-top: 1px solid #cbd6d3;
  border-bottom: 1px solid #cbd6d3;
}

.world-country-count strong {
  color: #d32638;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 34px;
}

.world-country-count span {
  color: #52625d;
  font-size: 12px;
  font-weight: 800;
}

.world-country-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.world-country-actions .news-button {
  width: 100%;
  text-align: center;
}

.world-country-latest {
  display: grid;
  border-top: 2px solid #10171a;
}

.world-country-latest a {
  display: grid;
  gap: 4px;
  padding: 12px 0;
  color: #10171a;
  border-bottom: 1px solid #d7dfdc;
}

.world-country-latest a:hover strong {
  color: #0c7652;
}

.world-country-latest span {
  color: #687670;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.world-country-latest strong {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 16px;
  line-height: 1.25;
}

.world-country-latest p {
  color: #52625d;
  font-size: 12px;
}

.world-country-directory {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: 34px 0 56px;
}

.world-country-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 2px solid #10171a;
  border-left: 1px solid #c7d3d0;
}

.world-country-list button {
  min-width: 0;
  min-height: 58px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: center;
  padding: 10px 12px;
  border: 0;
  border-right: 1px solid #c7d3d0;
  border-bottom: 1px solid #c7d3d0;
  color: #17201d;
  background: #fff;
  text-align: left;
  font: inherit;
  cursor: pointer;
}

.world-country-list button:hover,
.world-country-list button.is-selected {
  background: #e5f4ef;
}

.world-country-list button.is-selected {
  box-shadow: inset 5px 0 0 #d32638;
}

.world-country-list button span {
  min-width: 0;
  overflow-wrap: anywhere;
  font-weight: 900;
}

.world-country-list button small {
  color: #687670;
  font-size: 10px;
}

.world-country-list button b {
  min-width: 26px;
  padding: 4px 6px;
  color: #fff;
  background: #10171a;
  font-size: 10px;
  text-align: center;
}

.country-context-strip {
  display: flex;
  gap: 12px 18px;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 18px;
  padding: 12px 14px;
  border-left: 5px solid #d32638;
  background: #fff;
}

.country-context-strip strong {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 20px;
}

@media (max-width: 980px) {
  .world-desk-heading {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .world-browser-toolbar {
    display: grid;
  }
  .world-browser-layout {
    grid-template-columns: 1fr;
  }
  .world-map-column {
    border-right: 0;
    border-bottom: 1px solid #aebcb8;
  }
  .world-country-panel {
    grid-template-columns: minmax(0, 1fr) minmax(240px, .7fr);
  }
  .world-country-panel .story-kicker,
  .world-country-panel h2,
  .world-country-panel .world-country-count,
  .world-country-panel > p {
    grid-column: 1;
  }
  .world-country-actions,
  .world-country-latest {
    grid-column: 2;
  }
  .world-country-actions {
    grid-row: 1 / 4;
  }
  .world-country-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .world-desk-heading,
  .world-country-directory {
    width: min(100% - 28px, 1180px);
  }
  .world-desk-heading {
    padding-top: 28px;
  }
  .world-desk-heading h1 {
    font-size: 34px;
  }
  .world-browser {
    padding-right: 14px;
    padding-left: 14px;
  }
  .world-map-stage {
    min-height: 380px;
    overflow-x: auto;
  }
  .world-map-stage svg {
    width: 730px;
    max-width: none;
  }
  .world-map-tooltip {
    display: none;
  }
  .world-country-panel {
    grid-template-columns: 1fr;
    padding: 20px 16px;
  }
  .world-country-panel .story-kicker,
  .world-country-panel h2,
  .world-country-panel .world-country-count,
  .world-country-panel > p,
  .world-country-actions,
  .world-country-latest {
    grid-column: 1;
    grid-row: auto;
  }
  .world-country-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .country-context-strip {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 440px) {
  .world-country-list {
    grid-template-columns: 1fr;
  }
}

/* v51 masthead weather utility and world map controls */
.news-utility-leading {
  min-width: 0;
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  gap: 12px;
}

.news-utility-leading > time {
  flex: 0 0 auto;
  white-space: nowrap;
}

.news-utility > .news-utility-actions {
  flex: 0 0 auto;
}

.weather-utility-widget {
  min-width: 0;
  max-width: 600px;
  min-height: 28px;
  display: inline-flex;
  flex: 1 1 520px;
  align-items: center;
  gap: 6px;
  padding-left: 10px;
  border-left: 2px solid #cf202d;
  color: #17201d;
  line-height: 1;
  white-space: nowrap;
}

.weather-utility-label {
  color: #cf202d;
  font-size: 9px;
  font-weight: 950;
}

.weather-utility-widget > strong {
  flex: 0 0 auto;
  font-size: 11px;
}

.weather-utility-widget > b {
  flex: 0 0 auto;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 18px;
  line-height: 1;
}

.weather-utility-condition {
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: 900;
}

.weather-utility-detail,
.weather-utility-widget small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.weather-utility-detail {
  flex: 1 1 auto;
  color: #5a6964;
  font-size: 9px;
}

.weather-utility-widget small {
  max-width: 180px;
  color: #a22939;
  font-size: 9px;
  font-weight: 850;
}

.weather-utility-widget small:empty {
  display: none;
}

.weather-utility-widget button,
.weather-utility-widget a {
  min-height: 24px;
  display: inline-grid;
  flex: 0 0 auto;
  place-items: center;
  padding: 3px 6px;
  border: 1px solid #9aa9a4;
  border-radius: 2px;
  color: #17201d;
  background: #fff;
  font: inherit;
  font-size: 9px;
  font-weight: 950;
  text-decoration: none;
  cursor: pointer;
}

.weather-utility-widget button:hover,
.weather-utility-widget a:hover {
  color: #fff;
  border-color: #0e7451;
  background: #0e7451;
}

.weather-utility-widget.weather-unavailable .weather-utility-condition,
.weather-utility-widget.weather-unavailable .weather-utility-detail {
  display: none;
}

.world-browser-toolbar {
  flex-wrap: wrap;
}

.world-map-tools,
.world-map-zoom,
.world-map-layers {
  display: flex;
  gap: 5px;
  align-items: center;
}

.world-map-tools {
  width: 100%;
  justify-content: space-between;
}

.world-map-zoom button,
.world-map-layers button {
  min-height: 34px;
  padding: 6px 10px;
  border: 1px solid #899b95;
  border-radius: 3px;
  color: #17201d;
  background: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.world-map-zoom button:first-child,
.world-map-zoom button:nth-child(2) {
  width: 36px;
  padding: 0;
  font-size: 20px;
}

.world-map-layers button.is-active,
.world-map-layers button:hover,
.world-map-zoom button:hover {
  color: #fff;
  border-color: #0f6f50;
  background: #0f6f50;
}

.world-map-stage [data-world-map-overlays] {
  pointer-events: none;
}

.world-alert-marker {
  pointer-events: all;
  cursor: pointer;
}

.world-alert-marker circle {
  fill: #d32638;
  stroke: #fff;
  stroke-width: 2;
  vector-effect: non-scaling-stroke;
}

.world-alert-marker text {
  fill: #fff;
  font: 900 17px Arial, sans-serif;
}

.world-weather-marker rect {
  fill: #fff;
  stroke: #106f9c;
  stroke-width: 2;
  vector-effect: non-scaling-stroke;
}

.world-weather-marker text {
  fill: #10171a;
  font: 900 17px Arial, sans-serif;
}

.world-map-stage .world-wind-marker path {
  fill: none;
  stroke: #106f9c;
  stroke-width: 3;
  vector-effect: non-scaling-stroke;
}

.world-map-legend i.weather-layer {
  border-color: #106f9c;
  background: #fff;
  box-shadow: inset 0 0 0 3px #dcecef;
}

.world-map-legend i.alert-layer {
  height: 18px;
  display: inline-grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  color: #fff;
  background: #d32638;
  font-style: normal;
  font-weight: 950;
}

.world-selected-weather {
  display: grid;
  gap: 5px;
  padding: 12px;
  border-left: 4px solid #106f9c;
  background: #edf5f7;
}

.world-selected-weather > div {
  display: flex;
  gap: 9px;
  align-items: baseline;
}

.world-selected-weather > div strong {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 30px;
}

.world-selected-weather p,
.world-selected-weather small,
.world-edition-languages {
  margin: 0;
  color: #52625d;
  font-size: 11px;
}

.world-country-reference {
  display: grid;
  gap: 5px;
}

.world-country-reference details {
  border: 1px solid #c8d4d1;
  background: #f8fbfa;
}

.world-country-reference summary {
  padding: 9px 10px;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.world-country-reference details > div {
  display: grid;
  border-top: 1px solid #d7e0de;
}

.world-country-reference details > div a {
  display: grid;
  gap: 2px;
  padding: 8px 10px;
  color: #17201d;
  border-bottom: 1px solid #e0e7e5;
  font-size: 11px;
}

.world-country-reference details > div a span {
  color: #60716b;
}

.world-country-directory {
  padding: 26px 0 46px;
}

.world-country-directory > summary {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: space-between;
  padding: 14px 16px;
  border-top: 3px solid #10171a;
  border-bottom: 1px solid #b9c6c2;
  background: #fff;
  cursor: pointer;
}

.world-country-directory > summary > span:first-child {
  display: grid;
  gap: 2px;
}

.world-country-directory > summary strong {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 22px;
}

.world-country-directory > summary > span:last-child {
  color: #52625d;
  font-size: 12px;
}

.world-country-directory[open] > summary {
  margin-bottom: 12px;
}

@media (max-width: 980px) {
  .world-country-panel {
    grid-template-columns: minmax(0, 1fr) minmax(260px, .8fr);
  }
  .world-country-panel .story-kicker,
  .world-country-panel h2,
  .world-country-panel .world-country-count,
  .world-country-panel > p,
  .world-country-actions {
    grid-column: 1;
    grid-row: auto;
  }
  .world-selected-weather,
  .world-edition-languages,
  .world-country-reference,
  .world-country-latest {
    grid-column: 2;
    grid-row: auto;
  }
}

@media (max-width: 760px) {
  .weather-top-inner {
    width: min(100% - 22px, 1180px);
    grid-template-columns: auto auto minmax(0, 1fr) auto;
    gap: 7px;
  }
  .weather-top-label,
  .weather-top-detail {
    display: none;
  }
  .weather-top-copy {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .weather-top-copy small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .weather-top-actions button,
  .weather-top-actions a {
    padding-inline: 7px;
    font-size: 11px;
  }
  .world-map-tools {
    align-items: flex-start;
    flex-direction: column;
  }
  .world-map-layers {
    width: 100%;
    overflow-x: auto;
  }
  .world-map-stage {
    min-height: 0;
    overflow: hidden;
  }
  .world-map-stage svg {
    width: 100%;
    max-width: 100%;
  }
  .world-country-panel,
  .world-country-panel .story-kicker,
  .world-country-panel h2,
  .world-country-panel .world-country-count,
  .world-country-panel > p,
  .world-country-actions,
  .world-selected-weather,
  .world-edition-languages,
  .world-country-reference,
  .world-country-latest {
    grid-column: 1;
    grid-row: auto;
  }
  .world-country-directory > summary {
    align-items: flex-start;
  }
}

@media (max-width: 480px) {
  .weather-top-inner {
    grid-template-columns: auto auto minmax(0, 1fr) auto;
  }
  .weather-top-actions a {
    display: none;
  }
  .world-region-tabs button,
  .world-map-layers button {
    font-size: 11px;
  }
  .world-country-directory > summary strong {
    font-size: 18px;
  }
}

/* v51 compact masthead weather motion and in-map navigation */
.weather-utility-symbol {
  width: 18px;
  display: inline-grid;
  flex: 0 0 18px;
  place-items: center;
  color: #b97c00;
  font-size: 16px;
  line-height: 1;
}

.weather-utility-widget [data-weather-temperature],
.weather-utility-widget [data-weather-symbol],
.weather-utility-widget [data-weather-condition],
.weather-utility-widget [data-weather-detail],
.weather-current [data-weather-temperature],
.weather-current [data-weather-symbol],
.weather-current [data-weather-condition],
.weather-current [data-weather-detail] {
  transition: opacity .24s ease, transform .38s cubic-bezier(.2,.75,.2,1);
}

[data-weather-widget].is-weather-updating [data-weather-temperature],
[data-weather-widget].is-weather-updating [data-weather-symbol],
[data-weather-widget].is-weather-updating [data-weather-condition],
[data-weather-widget].is-weather-updating [data-weather-detail] {
  opacity: .34;
  transform: translateY(2px);
}

[data-weather-widget].weather-just-updated [data-weather-temperature],
[data-weather-widget].weather-just-updated [data-weather-symbol],
[data-weather-widget].weather-just-updated [data-weather-condition],
[data-weather-widget].weather-just-updated [data-weather-detail] {
  animation: weather-value-in .46s cubic-bezier(.2,.75,.2,1) both;
}

.weather-current {
  grid-template-columns: auto auto minmax(0, 1fr);
  gap: 14px;
}

.weather-current-symbol {
  width: 54px;
  display: inline-grid;
  place-items: center;
  color: #b97c00;
  font-size: 46px;
  line-height: 1;
}

.weather-forecast article {
  animation: weather-card-in .42s cubic-bezier(.2,.75,.2,1) both;
  animation-delay: calc(var(--weather-order, 0) * 55ms);
}

@keyframes weather-value-in {
  from { opacity: .2; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes weather-card-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

.world-map-tools {
  justify-content: flex-end;
}

.world-map-floating-controls {
  position: absolute;
  z-index: 4;
  top: 12px;
  right: 12px;
  display: grid;
  justify-items: end;
  color: #10171a;
}

.world-map-layer-controls {
  position: absolute;
  z-index: 4;
  top: 12px;
  left: 12px;
  display: flex;
  gap: 4px;
  max-width: calc(100% - 78px);
  padding: 3px;
  border: 1px solid #9aaba6;
  border-radius: 3px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 3px 12px rgba(16, 23, 26, .16);
}

.world-map-layer-controls button {
  min-height: 30px;
  padding: 4px 8px;
  border: 0;
  border-radius: 2px;
  color: #25332f;
  background: transparent;
  font: inherit;
  font-size: 10px;
  font-weight: 900;
  cursor: pointer;
}

.world-map-layer-controls button.is-active,
.world-map-layer-controls button:hover,
.world-map-layer-controls button:focus-visible {
  color: #fff;
  background: #0f6f50;
}

.world-map-floating-controls .world-map-zoom {
  display: grid;
  gap: 0;
  overflow: hidden;
  border: 1px solid #9aaba6;
  border-radius: 3px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(16, 23, 26, .18);
}

.world-map-floating-controls .world-map-zoom button,
.world-map-reset {
  width: 38px;
  height: 38px;
  min-height: 38px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: #10171a;
  background: #fff;
  font: 900 21px/1 Arial, sans-serif;
  cursor: pointer;
}

.world-map-floating-controls .world-map-zoom button + button {
  border-top: 1px solid #d1d9d6;
}

.world-map-reset {
  margin-top: 6px;
  border: 1px solid #9aaba6;
  border-radius: 3px;
  box-shadow: 0 3px 12px rgba(16, 23, 26, .14);
  font-size: 18px;
}

.world-map-floating-controls button:hover,
.world-map-floating-controls button:focus-visible {
  color: #fff;
  background: #0f6f50;
}

.world-map-floating-controls button:disabled {
  color: #9ca7a3;
  background: #eef2f0;
  cursor: default;
}

.world-map-floating-controls output {
  min-width: 38px;
  margin-top: 5px;
  padding: 4px 3px;
  color: #fff;
  border-radius: 2px;
  background: rgba(16, 23, 26, .86);
  font-size: 9px;
  font-weight: 900;
  text-align: center;
}

.world-map-stage path {
  transition: fill .24s ease, opacity .24s ease, stroke .24s ease;
}

.world-map-stage .world-weather-marker,
.world-map-stage .world-alert-marker,
.world-map-stage .world-wind-marker {
  animation: map-marker-in .38s cubic-bezier(.2,.75,.2,1) both;
}

.world-map-stage .world-alert-marker {
  pointer-events: auto;
  cursor: pointer;
}

.world-map-stage .world-weather-marker,
.world-map-stage .world-wind-marker {
  pointer-events: none;
}

.world-country-panel {
  transition: background-color .28s ease;
}

.world-country-panel[aria-busy="true"] > * {
  opacity: .52;
  transform: translateY(3px);
}

.world-country-panel > * {
  transition: opacity .28s ease, transform .38s cubic-bezier(.2,.75,.2,1);
}

.world-country-panel.is-country-revealed > * {
  opacity: 1;
  transform: translateY(0);
}

@keyframes map-marker-in {
  from { opacity: 0; }
  to { opacity: 1; }
}

@media (max-width: 1180px) {
  .weather-utility-detail {
    display: none;
  }
}

@media (max-width: 900px) {
  .weather-utility-label,
  .weather-utility-condition {
    display: none;
  }
}

@media (max-width: 680px) {
  .news-utility {
    gap: 4px;
    padding-block: 4px;
  }
  .news-utility-leading {
    width: 100%;
    gap: 6px;
  }
  .news-utility-leading > time {
    font-size: 10px;
  }
  .weather-utility-widget {
    max-width: none;
    flex: 0 1 auto;
    gap: 4px;
    margin-left: auto;
    padding-left: 6px;
  }
  .weather-utility-symbol {
    width: 15px;
    flex-basis: 15px;
    font-size: 14px;
  }
  .weather-utility-widget small,
  .weather-utility-detail,
  .weather-utility-condition,
  .weather-utility-label {
    display: none;
  }
  .weather-utility-widget button,
  .weather-utility-widget a {
    min-height: 22px;
    padding: 2px 5px;
    font-size: 8px;
  }
  .news-utility-actions {
    flex-wrap: nowrap;
    gap: 11px;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .news-utility-actions::-webkit-scrollbar {
    display: none;
  }
  .news-utility-actions a {
    min-height: 24px;
    white-space: nowrap;
  }
  .language-control select {
    min-height: 26px;
  }
  .weather-current {
    grid-template-columns: auto auto minmax(0, 1fr);
  }
  .weather-current-symbol {
    width: 38px;
    font-size: 34px;
  }
  .world-map-floating-controls {
    top: 8px;
    right: 8px;
  }
  .world-map-layer-controls {
    top: 8px;
    left: 8px;
    width: max-content;
    max-width: calc(100% - 58px);
    overflow-x: auto;
    scrollbar-width: none;
  }
  .world-map-layer-controls::-webkit-scrollbar {
    display: none;
  }
  .world-map-layer-controls button {
    flex: 0 0 auto;
    min-height: 28px;
    padding-inline: 6px;
    font-size: 9px;
  }
  .world-map-floating-controls .world-map-zoom button,
  .world-map-reset {
    width: 34px;
    height: 34px;
    min-height: 34px;
  }
  .world-map-floating-controls output {
    min-width: 34px;
  }
  .world-map-reset,
  .world-map-floating-controls output {
    display: none;
  }
  .world-map-stage {
    min-height: 260px;
    aspect-ratio: auto;
  }
  .world-country-panel {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .weather-forecast article,
  [data-weather-widget].weather-just-updated [data-weather-temperature],
  [data-weather-widget].weather-just-updated [data-weather-symbol],
  [data-weather-widget].weather-just-updated [data-weather-condition],
  [data-weather-widget].weather-just-updated [data-weather-detail],
  .world-map-stage .world-weather-marker,
  .world-map-stage .world-alert-marker,
  .world-map-stage .world-wind-marker {
    animation: none;
  }
}

/* v53 final cascade guards */
.weather-utility-widget{position:relative;display:block;padding-left:0;border-left:0}
.weather-utility-trigger{width:100%;min-height:28px;display:flex!important;align-items:center;gap:6px;padding:0 3px 0 10px!important;border:0!important;border-left:2px solid #cf202d!important;border-radius:0!important;color:#17201d!important;background:transparent!important;box-shadow:none!important;font:inherit!important;text-align:left}
.weather-utility-drawer{display:block}.weather-utility-drawer[hidden]{display:none!important}
.world-country-panel{grid-template-columns:minmax(0,1fr)}
.world-map-stage .world-weather-marker,.world-map-stage .world-wind-marker{pointer-events:auto;cursor:pointer}
.world-weather-marker .world-weather-halo{fill:var(--weather-color);opacity:.23}
.world-weather-marker rect{fill:var(--weather-color);stroke:#fff;stroke-width:1.5}
.world-weather-marker text{fill:var(--weather-ink)}
.world-map-stage .world-wind-marker circle{fill:var(--wind-color);stroke:#fff;stroke-width:1.5}
.world-map-stage .world-wind-marker path{stroke:#fff;stroke-width:2.5}
@media(max-width:980px) and (min-width:761px){.world-country-panel{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr)}}
@media(max-width:760px){.world-country-panel{grid-template-columns:minmax(0,1fr)}}
.world-selected-weather{grid-template-columns:minmax(0,1fr);min-width:0}
.world-selected-weather>*{min-width:0;max-width:100%}
.world-selected-weather>.world-weather-forecast{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.world-selected-weather>.world-weather-forecast>span{min-width:0;padding:7px 3px;overflow:hidden}
.world-selected-weather>.world-weather-forecast strong{display:grid;gap:1px;white-space:normal}
.world-selected-weather>.world-weather-forecast strong em,
.world-selected-weather>.world-weather-forecast strong i{font-style:normal;font-size:11px;line-height:1.1}
.world-selected-weather>.world-weather-forecast strong i{color:#687772;font-weight:650}
@media(max-width:680px){.weather-utility-drawer{position:fixed;top:40px;right:8px;left:8px;width:auto;max-height:calc(100vh - 48px);overflow-y:auto}}
.weather-utility-drawer small{display:block}
@media(max-width:480px){.weather-drawer-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.weather-utility-drawer .weather-popover-forecast article:last-child{grid-column:auto}}

/* v61 calendar, daily popover, event proposals and M.I. Travel requests */
[data-current-date] {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 4px 6px;
  color: #24302c;
  border-bottom: 2px solid transparent;
  cursor: pointer;
}

[data-current-date]:hover,
[data-current-date]:focus-visible,
[data-current-date][aria-expanded="true"] {
  color: #075b40;
  border-bottom-color: #0c8658;
  outline: 2px solid #f0c64d;
  outline-offset: 2px;
}

.mwb-day-popover {
  position: fixed;
  z-index: 1200;
  max-height: calc(100vh - 28px);
  overflow: auto;
  color: #17201d;
  border: 1px solid #8fa09b;
  border-top: 5px solid #0c8658;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 22px 55px rgba(8, 18, 15, .28);
}

.mwb-day-popover[hidden] { display: none; }
.mwb-day-popover-head { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; padding: 20px; color: #fff; background: #10171a; }
.mwb-day-popover-head > div { display: grid; gap: 5px; }
.mwb-day-popover-head span { color: #78ddb3; font-size: 10px; font-weight: 900; }
.mwb-day-popover-head h2 { margin: 0; color: #fff; font: 700 25px/1.08 Georgia, 'Times New Roman', serif; }
.mwb-day-popover-head time { color: rgba(255, 255, 255, .76); font-size: 12px; }
.mwb-day-popover-head button { width: 34px; height: 34px; padding: 0; color: #fff; border: 1px solid rgba(255, 255, 255, .55); border-radius: 50%; background: transparent; font: 700 24px/1 Arial, sans-serif; cursor: pointer; }
.mwb-day-popover-head button:hover,
.mwb-day-popover-head button:focus-visible { color: #10171a; outline: 2px solid #fff; background: #f0c64d; }
.mwb-day-popover > section { padding: 14px 18px; border-bottom: 1px solid #dce3e1; }
.mwb-day-popover > section > header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.mwb-day-popover > section h3 { margin: 0; font-size: 13px; }
.mwb-day-popover > section header a { color: #075b40; font-size: 10px; font-weight: 900; }
.mwb-day-popover-list { display: grid; gap: 6px; }
.mwb-day-popover-list > a,
.mwb-day-popover-list > div { display: grid; gap: 3px; padding: 8px 9px; color: #17201d; border-left: 3px solid #c49313; background: #f3f6f5; text-decoration: none; }
.mwb-day-popover-list > a:hover,
.mwb-day-popover-list > a:focus-visible { outline: 2px solid #0c8658; outline-offset: 1px; background: #e6f3ed; }
.mwb-day-popover-list strong { font-size: 12px; line-height: 1.3; }
.mwb-day-popover-list small,
.mwb-day-popover-list p { margin: 0; color: #5d6a66; font-size: 11px; line-height: 1.4; }
.mwb-day-popover > footer { display: flex; justify-content: flex-end; padding: 14px 18px; }

.event-calendar-shell { margin-bottom: 30px; border: 1px solid #cbd6d3; border-top: 6px solid #0c8658; border-radius: 4px; background: #fff; }
.event-calendar-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 24px; border-bottom: 1px solid #d9e1df; }
.event-calendar-head h2 { margin: 5px 0 0; font: 700 34px/1.05 Georgia, 'Times New Roman', serif; text-transform: capitalize; }
.calendar-month-actions { display: flex; align-items: stretch; gap: 5px; }
.calendar-month-actions button { min-width: 42px; min-height: 42px; padding: 8px 12px; color: #17201d; border: 1px solid #9eaaa7; border-radius: 3px; background: #fff; font: 900 13px/1 Arial, sans-serif; cursor: pointer; }
.calendar-month-actions button:first-child,
.calendar-month-actions button:last-child { font-size: 25px; }
.calendar-month-actions button:hover,
.calendar-month-actions button:focus-visible { color: #fff; border-color: #0c8658; outline: 2px solid #f0c64d; outline-offset: 2px; background: #0c8658; }
.event-calendar-layout { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(245px, .55fr); }
.event-calendar-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 1px; padding: 18px; background: #d7e0dd; }
.calendar-weekday { min-width: 0; padding: 6px 3px; color: #53605d; background: #fff; font-size: 10px; font-weight: 900; text-align: center; text-transform: uppercase; }
.calendar-day { position: relative; aspect-ratio: 1.1; min-height: 54px; display: grid; place-items: center; align-content: center; gap: 4px; padding: 5px; color: #17201d; border: 0; background: #fff; font: inherit; cursor: pointer; }
.calendar-day b { font-size: 14px; }
.calendar-day small { min-width: 18px; min-height: 18px; display: grid; place-items: center; padding: 1px 4px; color: #fff; border-radius: 9px; background: #c53546; font-size: 9px; }
.calendar-day.is-outside { color: #a1aaa7; background: #f3f5f4; }
.calendar-day.is-today { box-shadow: inset 0 0 0 3px #c49313; }
.calendar-day.is-selected { color: #fff; background: #0c8658; box-shadow: inset 0 0 0 3px #0c8658; }
.calendar-day.is-selected small { color: #17201d; background: #f0c64d; }
.calendar-day:hover,
.calendar-day:focus-visible { z-index: 1; outline: 3px solid #17201d; outline-offset: -3px; }
.calendar-day-summary { display: grid; align-content: start; gap: 10px; padding: 26px; border-left: 1px solid #d7e0dd; background: #f4f7f6; }
.calendar-day-summary h3 { margin: 0; font: 700 25px/1.08 Georgia, 'Times New Roman', serif; }
.calendar-day-summary > p { margin: 0; color: #53605d; line-height: 1.45; }
.calendar-day-summary > p b { color: #17201d; font-size: 25px; }
.news-text-button { justify-self: start; padding: 0; color: #075b40; border: 0; border-bottom: 2px solid currentColor; background: transparent; font: inherit; font-size: 11px; font-weight: 900; cursor: pointer; }
.news-text-button:hover,
.news-text-button:focus-visible { color: #a22d3c; outline: 2px solid #f0c64d; outline-offset: 3px; }
.calendar-nameday { margin-top: 12px; padding-top: 15px; border-top: 1px solid #cbd6d3; }
.calendar-nameday strong { font-size: 11px; }
.calendar-nameday p { margin: 6px 0 0; color: #53605d; font-size: 12px; line-height: 1.45; }
.events-results { margin-top: 18px; }

.event-calendar-card { grid-template-columns: 155px minmax(0, 1fr) minmax(245px, auto); align-items: start; padding: 20px; }
.event-calendar-card.is-shared-event { outline: 3px solid #168558; outline-offset: 4px; box-shadow: 0 12px 34px rgba(16, 62, 47, .16); }
.event-calendar-card > time { padding-top: 3px; }
.event-calendar-card > .event-card-copy { grid-column: 2; grid-row: 1; display: grid; justify-items: start; gap: 7px; }
.event-calendar-card > .event-card-copy p,
.event-calendar-card > .event-card-copy small { margin: 0; color: #59645f; font-size: 12px; line-height: 1.45; }
.event-calendar-card > .event-card-copy small { max-width: 650px; }
.event-calendar-card > .event-card-controls { grid-column: 3; grid-row: 1; display: grid; justify-items: end; gap: 9px; }
.event-card-controls nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.event-card-controls nav a,
.event-action { min-height: 34px; display: inline-flex; align-items: center; justify-content: center; padding: 7px 9px; color: #17201d; border: 1px solid #aeb9b6; border-radius: 3px; background: #fff; font: inherit; font-size: 10px; font-weight: 900; text-align: center; text-decoration: none; cursor: pointer; }
.event-card-controls nav a:hover,
.event-card-controls nav a:focus-visible,
.event-action:hover,
.event-action:focus-visible { color: #fff; border-color: #0c8658; outline: 2px solid #f0c64d; outline-offset: 2px; background: #0c8658; }

.event-proposal-studio { margin-top: 34px; border: 1px solid #c7d3d0; border-top: 6px solid #187bbb; border-radius: 4px; background: #fff; }
.event-proposal-studio > summary { display: flex; align-items: center; justify-content: space-between; min-height: 76px; padding: 18px 22px; cursor: pointer; }
.event-proposal-studio > summary::marker { color: #187bbb; }
.event-proposal-studio > summary span { display: grid; gap: 5px; }
.event-proposal-studio > summary b { font: 700 23px/1.08 Georgia, 'Times New Roman', serif; }
.event-proposal-studio > summary small { color: #5d6965; font-size: 12px; }
.event-proposal-intro { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px 24px; color: #fff; background: #17201d; }
.event-proposal-intro p { max-width: 760px; margin: 0; color: rgba(255, 255, 255, .82); line-height: 1.5; }
.event-proposal-intro .news-button.secondary { flex: none; color: #17201d; background: #fff; }
.event-proposal-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; padding: 24px; }
.event-proposal-form label,
.travel-planner-form > label { min-width: 0; display: grid; align-content: start; gap: 7px; color: #26322e; font-size: 11px; font-weight: 900; }
.event-proposal-form input,
.event-proposal-form select,
.event-proposal-form textarea,
.travel-planner-form input,
.travel-planner-form textarea { width: 100%; min-height: 42px; padding: 9px 11px; color: #17201d; border: 1px solid #aebbb7; border-radius: 3px; background: #fff; font: inherit; }
.event-proposal-form textarea,
.travel-planner-form textarea { resize: vertical; }
.event-form-wide,
.travel-form-wide { grid-column: 1 / -1; }
.event-check,
.travel-consent { grid-template-columns: auto minmax(0, 1fr); align-items: start; padding: 11px; border-left: 4px solid #c49313; background: #f7f4e8; line-height: 1.45; }
.event-check input,
.travel-consent input,
.travel-transport input { width: 18px; min-height: 18px; margin: 0; }
.event-form-submit,
.travel-form-submit { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.event-form-submit > a,
.travel-form-submit > a { color: #075b40; font-size: 11px; font-weight: 900; }
.event-honeypot { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; }
.event-form-status { margin: 0; padding: 12px 14px; border-left: 4px solid #187bbb; background: #eaf3f8; font-size: 12px; line-height: 1.45; }
.event-form-status[data-state="success"] { color: #075b40; border-color: #0c8658; background: #e5f4ec; }
.event-form-status[data-state="warning"] { color: #6c5100; border-color: #c49313; background: #fff7d9; }
.event-form-status[data-state="error"] { color: #8d2432; border-color: #c53546; background: #fff0f2; }

.travel-planner { display: grid; grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr); margin-top: 34px; border-top: 7px solid #0c8658; background: #fff; }
.travel-planner-copy { padding: 34px; color: #fff; background: #17201d; }
.travel-planner-copy h2 { margin: 7px 0 13px; color: #fff; font: 700 38px/1.03 Georgia, 'Times New Roman', serif; }
.travel-planner-copy p { color: rgba(255, 255, 255, .82); line-height: 1.55; }
.travel-planner-copy ul { display: grid; gap: 9px; margin: 22px 0 0; padding-left: 19px; color: rgba(255, 255, 255, .76); font-size: 12px; line-height: 1.45; }
.travel-planner-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: 28px; }
.travel-transport { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 9px 16px; padding: 14px; border: 1px solid #cad5d2; }
.travel-transport legend { padding: 0 5px; font-size: 11px; font-weight: 900; }
.travel-transport label { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 800; }

@media (max-width: 900px) {
  .event-calendar-layout,
  .travel-planner { grid-template-columns: 1fr; }
  .calendar-day-summary { border-top: 1px solid #d7e0dd; border-left: 0; }
  .event-calendar-card { grid-template-columns: 135px minmax(0, 1fr); }
  .event-calendar-card > .event-card-controls { grid-column: 2; grid-row: 2; justify-items: start; }
  .event-card-controls nav { justify-content: flex-start; }
}

@media (max-width: 620px) {
  .event-calendar-head { align-items: flex-start; padding: 18px; }
  .event-calendar-head h2 { font-size: 27px; }
  .calendar-month-actions button { min-width: 38px; min-height: 38px; padding: 6px 9px; }
  .event-calendar-grid { padding: 8px; }
  .calendar-day { min-height: 44px; aspect-ratio: 1; }
  .calendar-day b { font-size: 12px; }
  .event-calendar-card { grid-template-columns: 1fr; }
  .event-calendar-card > time,
  .event-calendar-card > .event-card-copy,
  .event-calendar-card > .event-card-controls { grid-column: 1; grid-row: auto; justify-items: start; }
  .event-proposal-intro { align-items: flex-start; flex-direction: column; }
  .event-proposal-form,
  .travel-planner-form { grid-template-columns: 1fr; padding: 20px; }
  .event-form-wide,
  .travel-form-wide,
  .travel-transport { grid-column: 1; }
  .travel-planner-copy { padding: 28px 22px; }
  .travel-planner-copy h2 { font-size: 32px; }
}

/* v54 weather studio, regional drilldown and map layers */
.weather-page .reader-shell{width:min(100% - 32px,1320px)}
.weather-studio{margin:24px 0 34px;border:1px solid #c6d2cf;border-top:5px solid #16845f;background:#fff;box-shadow:0 8px 26px rgba(16,23,26,.08)}
.weather-studio-toolbar{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(360px,1fr) auto;gap:22px;align-items:end;padding:24px 26px;border-bottom:1px solid #cbd6d3}
.weather-studio-toolbar h1{margin:3px 0 2px;font-family:Georgia,'Times New Roman',serif;font-size:42px;line-height:1;letter-spacing:0}
.weather-studio-toolbar p{margin:7px 0 0;color:#5c6b67;font-size:12px;font-weight:750}
.weather-studio-search{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:7px;align-items:end}
.weather-studio-search label{display:grid;gap:5px;font-size:11px;font-weight:900}
.weather-studio-search input{width:100%;min-height:43px;padding:8px 11px;border:1px solid #9fb0ab;background:#fff;font:inherit}
.weather-studio-search button{min-height:43px;padding:8px 13px;border:1px solid #10171a;background:#10171a;color:#fff;font:inherit;font-size:12px;font-weight:900;cursor:pointer}
.weather-studio-search button[data-weather-location-button]{border-color:#8fa19c;background:#fff;color:#10171a}
.weather-studio-search small{grid-column:1/-1;color:#a52839}
.weather-view-tabs{display:flex;border:1px solid #98a8a4}
.weather-view-tabs button,.weather-chart-tabs button{min-height:42px;padding:8px 16px;border:0;border-right:1px solid #98a8a4;background:#f5f8f7;color:#10171a;font:inherit;font-size:12px;font-weight:900;cursor:pointer}
.weather-view-tabs button:last-child,.weather-chart-tabs button:last-child{border-right:0}
.weather-view-tabs button.is-active,.weather-chart-tabs button.is-active{background:#0e7451;color:#fff}
.weather-current-board{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);align-items:stretch;border-bottom:1px solid #cbd6d3}
.weather-current-primary{display:grid;grid-template-columns:82px auto minmax(120px,1fr);gap:16px;align-items:center;padding:26px;border-right:1px solid #cbd6d3}
.weather-current-primary>.weather-current-symbol{width:82px;color:#d59b08;font-size:68px;line-height:1;text-align:center}
.weather-current-primary>.weather-temperature{min-width:118px;font:700 78px/1 Georgia,'Times New Roman',serif;white-space:nowrap}
.weather-current-primary>div{display:grid;gap:5px;min-width:0}
.weather-current-primary b{font-size:21px}
.weather-current-primary span{color:#50615c;line-height:1.4}
.weather-current-primary small{color:#a52839;font-weight:850}
.weather-current-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.weather-current-metrics article{display:grid;gap:8px;align-content:center;min-width:0;padding:18px 12px;border-right:1px solid #cbd6d3;text-align:center}
.weather-current-metrics article:last-child{border-right:0}
.weather-current-metrics span{color:#5b6b66;font-size:10px;font-weight:900;text-transform:uppercase}
.weather-current-metrics strong{overflow-wrap:anywhere;font:700 17px/1.15 Georgia,'Times New Roman',serif}
.weather-view-panel{padding:24px 26px}
.weather-chart-tabs{display:inline-flex;margin-bottom:14px;border:1px solid #98a8a4}
.weather-hourly-chart{width:100%;min-height:230px;overflow:hidden;border-bottom:1px solid #cbd6d3;background:#fafcfb}
.weather-hourly-chart svg{display:block;width:100%;height:auto;min-height:230px}
.weather-hourly-chart text{fill:#5a6964;font:700 10px/1 Arial,sans-serif}
.weather-hourly-chart .weather-chart-value{fill:#17201d;font-weight:900}
.weather-hourly-chart .weather-chart-grid{stroke:#c8d3d0;stroke-width:1}
.weather-hourly-chart .weather-chart-line{fill:none;stroke:#d6a500;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.weather-hourly-chart .weather-chart-area{fill:rgba(214,165,0,.16)}
.weather-hourly-chart circle{fill:#fff;stroke:#d6a500;stroke-width:2}
.weather-hourly-chart[data-chart-metric="rain"] .weather-chart-line,.weather-hourly-chart[data-chart-metric="rain"] circle{stroke:#1b78b6}
.weather-hourly-chart[data-chart-metric="rain"] .weather-chart-area{fill:rgba(27,120,182,.14)}
.weather-hourly-chart[data-chart-metric="wind"] .weather-chart-line,.weather-hourly-chart[data-chart-metric="wind"] circle{stroke:#0d8062}
.weather-hourly-chart[data-chart-metric="wind"] .weather-chart-area{fill:rgba(13,128,98,.14)}
.weather-hourly-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(86px,1fr);overflow-x:auto;border-left:1px solid #cbd6d3;scroll-snap-type:x proximity}
.weather-hourly-rail article{display:grid;gap:7px;justify-items:center;min-width:0;padding:13px 7px;border-right:1px solid #cbd6d3;border-bottom:1px solid #cbd6d3;scroll-snap-align:start}
.weather-hourly-rail time{color:#5a6964;font-size:10px;font-weight:900}
.weather-hourly-rail article>span{color:#c28d04;font-size:24px;line-height:1}
.weather-hourly-rail strong{font-family:Georgia,'Times New Roman',serif;font-size:21px}
.weather-hourly-rail small{color:#60706b;font-size:9px}
.weather-extended-forecast{grid-template-columns:repeat(9,minmax(0,1fr));border-color:#cbd6d3}
.weather-extended-forecast article{align-content:start;min-height:158px;padding:14px 9px;text-align:center}
.weather-forecast article>b{display:flex;gap:5px;justify-content:center;white-space:nowrap}
.weather-forecast article>b em,.weather-forecast article>b i{font-style:normal}
.weather-forecast article>b i{color:#6b7a76;font-weight:650}
.weather-popover-forecast{grid-template-columns:repeat(4,minmax(0,1fr))}
.weather-popover-forecast article>b{display:grid;gap:1px}
.weather-popover-forecast article>b em,.weather-popover-forecast article>b i{font-size:9px}

.world-browser{width:min(1500px,calc(100% - 24px))}
.world-map-stage{min-height:580px}
.world-map-stage [data-world-map-surface]{pointer-events:none;mix-blend-mode:multiply}
.world-temperature-surface{opacity:.2;filter:blur(22px)}
.world-temperature-surface.temperature-freezing{fill:#405ddd}.world-temperature-surface.temperature-cold{fill:#1f8ac0}.world-temperature-surface.temperature-mild{fill:#54a96a}.world-temperature-surface.temperature-warm{fill:#e7be2a}.world-temperature-surface.temperature-hot{fill:#df5142}
.world-precipitation-surface{fill:#247ad2;opacity:.24;filter:blur(9px);transform-box:fill-box;transform-origin:center;animation:world-rain-pulse 2.4s ease-in-out infinite}
.world-admin-region{fill:rgba(255,255,255,.08);stroke:#fff;stroke-width:.55;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .18s ease,stroke .18s ease}
.world-admin-region:hover,.world-admin-region:focus-visible,.world-admin-region.is-selected{fill:rgba(255,255,255,.38);stroke:#10171a;outline:0}
.world-map-stage[data-map-detail="local"] path[data-country-code].is-selected{fill:#d8e1df;stroke:#0e7451;stroke-width:1.2}
.world-map-stage[data-map-detail="local"] .world-admin-region{fill:rgba(255,255,255,.3);stroke:#fff;fill-rule:evenodd;clip-rule:evenodd}
.world-map-stage[data-map-detail="local"] .world-admin-region:hover,
.world-map-stage[data-map-detail="local"] .world-admin-region:focus-visible{fill:rgba(215,242,232,.72);stroke:#0e7451}
.world-map-stage[data-map-detail="local"] .world-admin-region.is-selected{fill:rgba(239,200,50,.72);stroke:#10171a}
.world-admin-region-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-bottom:8px}
.world-admin-region-list button{display:grid;gap:2px;min-width:0;padding:8px 9px;border:1px solid #c3d0cc;background:#fff;color:#10171a;text-align:left;cursor:pointer}
.world-admin-region-list button:hover{border-color:#0e7451;background:#edf6f2}
.world-admin-region-list strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.world-admin-region-list span{color:#60706b;font-size:9px}
.world-map-popup{position:absolute;z-index:9;width:min(292px,calc(100% - 24px));display:grid;gap:7px;padding:17px 18px;border:1px solid #17201d;border-top:5px solid #0e7451;background:#fff;box-shadow:0 16px 38px rgba(0,0,0,.28)}
.world-map-popup[hidden]{display:none}
.world-map-popup>button{position:absolute;top:5px;right:5px;width:30px;height:30px;border:0;background:transparent;color:#4b5b56;font-size:22px;cursor:pointer}
.world-map-popup>span{padding-right:25px;color:#b51e2d;font-size:9px;font-weight:950}
.world-map-popup h3{margin:0;padding-right:25px;font-family:Georgia,'Times New Roman',serif;font-size:23px;letter-spacing:0}
.world-map-popup>strong{font:700 46px/1 Georgia,'Times New Roman',serif}
.world-map-popup p,.world-map-popup small{margin:0;color:#52625d;line-height:1.4}
.world-map-popup a{margin-top:3px;font-size:11px;font-weight:900}
.world-wind-marker path{stroke-dasharray:14 5;animation:world-wind-flow 1.25s linear infinite}
@keyframes world-wind-flow{to{stroke-dashoffset:-38}}
@keyframes world-rain-pulse{50%{opacity:.42;transform:scale(1.12)}}

@media(max-width:1050px){.weather-studio-toolbar{grid-template-columns:1fr auto}.weather-studio-search{grid-column:1/-1;grid-row:2}.weather-current-board{grid-template-columns:1fr}.weather-current-primary{border-right:0;border-bottom:1px solid #cbd6d3}.weather-current-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.weather-current-metrics article:nth-child(3){border-right:0}.weather-current-metrics article:nth-child(-n+3){border-bottom:1px solid #cbd6d3}.weather-extended-forecast{grid-template-columns:repeat(9,minmax(118px,1fr));overflow-x:auto}.world-map-stage{min-height:500px}}
@media(max-width:680px){.weather-page .reader-shell{width:min(100% - 16px,1320px)}.weather-studio-toolbar{grid-template-columns:1fr;padding:18px 14px}.weather-view-tabs{grid-row:auto;width:100%}.weather-view-tabs button{flex:1}.weather-studio-search{grid-template-columns:1fr 1fr;grid-column:auto;grid-row:auto}.weather-studio-search label{grid-column:1/-1}.weather-current-primary{grid-template-columns:58px auto minmax(0,1fr);gap:9px;padding:19px 14px}.weather-current-primary>.weather-current-symbol{width:58px;font-size:48px}.weather-current-primary>.weather-temperature{min-width:80px;font-size:52px}.weather-current-primary b{font-size:16px}.weather-current-primary span{font-size:11px}.weather-current-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.weather-current-metrics article,.weather-current-metrics article:nth-child(3){border-right:1px solid #cbd6d3;border-bottom:1px solid #cbd6d3}.weather-current-metrics article:nth-child(even){border-right:0}.weather-view-panel{padding:17px 12px}.weather-chart-tabs{display:flex;width:100%;overflow-x:auto}.weather-chart-tabs button{flex:1;padding-inline:9px}.weather-hourly-chart{min-height:190px}.weather-hourly-chart svg{min-width:720px;min-height:190px}.world-map-stage{min-height:390px}.world-admin-region-list{grid-template-columns:1fr}.world-map-popup{position:fixed;right:12px;bottom:12px;left:12px!important;top:auto!important;width:auto}.world-browser{width:100%}}
@media(prefers-reduced-motion:reduce){.world-precipitation-surface,.world-wind-marker path{animation:none}}

.quiz-arena{margin-top:30px;border:1px solid #c5d1ce;border-top:6px solid #1c78b4;background:#fff}
.quiz-arena-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding:26px;border-bottom:1px solid #c8d3d0}
.quiz-arena-head h2{margin:5px 0 8px;font-family:Georgia,'Times New Roman',serif;font-size:34px;letter-spacing:0}
.quiz-arena-head p{max-width:760px;margin:0;color:#52625d;line-height:1.5}
.quiz-arena-clock{display:grid;justify-items:end;gap:3px;padding-left:22px;border-left:3px solid #c79612}
.quiz-arena-clock span{font-size:9px;font-weight:950}.quiz-arena-clock strong{font:700 34px/1 Georgia,'Times New Roman',serif}
.quiz-arena-controls{display:grid;grid-template-columns:auto minmax(190px,260px) auto 1fr;gap:12px;align-items:end;padding:16px 26px;background:#f3f7f5;border-bottom:1px solid #c8d3d0}
.quiz-difficulty{display:flex;border:1px solid #9cacaa}
.quiz-difficulty button{min-height:43px;padding:8px 15px;border:0;border-right:1px solid #9cacaa;background:#fff;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.quiz-difficulty button:last-child{border-right:0}.quiz-difficulty button.is-active{color:#fff;background:#10171a}
.quiz-arena-controls>label{display:grid;gap:5px;font-size:10px;font-weight:900}.quiz-arena-controls select{min-height:43px;padding:8px 10px;border:1px solid #9cacaa;background:#fff;font:inherit;font-size:12px}
.quiz-arena-controls>[data-arena-progress]{justify-self:end;font:700 22px/1 Georgia,'Times New Roman',serif}
.quiz-arena-status{min-height:0;margin:0;padding:0 26px;color:#52625d;font-weight:800}.quiz-arena-status:not(:empty){padding-block:12px;border-bottom:1px solid #c8d3d0}.quiz-arena-status.is-error{color:#a61e31;background:#fff0f2}
.quiz-arena-stage{min-height:420px;padding:26px}
.quiz-arena-ready{display:grid;grid-template-columns:120px minmax(0,1fr);gap:28px;align-items:center;min-height:350px}.quiz-arena-ready>strong{display:grid;width:120px;height:120px;place-items:center;color:#fff;background:#1c78b4;font:700 52px/1 Georgia,'Times New Roman',serif}.quiz-arena-ready h3{margin:0 0 8px;font-family:Georgia,'Times New Roman',serif;font-size:32px;letter-spacing:0}.quiz-arena-ready p{margin:0;color:#52625d}
.quiz-arena-question{min-height:360px}.quiz-arena-question>header{display:flex;justify-content:space-between;align-items:center;color:#b71925;font-size:10px;font-weight:950}.quiz-arena-question>header b{display:grid;width:40px;height:40px;place-items:center;color:#fff;background:#10171a}.quiz-arena-question h3{max-width:900px;margin:24px 0;font-family:Georgia,'Times New Roman',serif;font-size:34px;line-height:1.18;letter-spacing:0}.quiz-answer-grid button.is-selected{border-color:#1c78b4;background:#eaf5fb;box-shadow:inset 4px 0 0 #1c78b4}.quiz-arena-question>footer{display:flex;justify-content:space-between;gap:10px;margin-top:20px}
.quiz-arena-submit{display:grid;gap:14px;max-width:820px;margin:0 auto}.quiz-arena-submit h3{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:34px;letter-spacing:0}.quiz-arena-submit>p{margin:0;color:#52625d;line-height:1.45}.quiz-arena-submit>label:not(.quiz-public-choice){display:grid;gap:5px;font-weight:850}.quiz-arena-submit input[type="text"],.quiz-arena-submit input[type="email"],.quiz-arena-submit input[type="tel"]{width:100%;min-height:45px;padding:9px 11px;border:1px solid #9cacaa;font:inherit}.quiz-public-choice{display:flex;gap:9px;align-items:flex-start;padding:12px;border-left:4px solid #1c78b4;background:#f1f7fa;font-weight:800}.quiz-public-choice input{margin-top:3px}.quiz-contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quiz-contact-fields[hidden]{display:none}.quiz-contact-fields label{display:grid;gap:5px;font-weight:850}.quiz-consent-copy{padding:12px;border-left:4px solid #c79612;background:#fff8de;font-size:12px}
.quiz-arena-result{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:26px;align-items:center;min-height:350px}.quiz-arena-result-score{display:grid;width:150px;height:150px;place-items:center;color:#fff;background:#0d8062;font:700 38px/1 Georgia,'Times New Roman',serif}.quiz-arena-result h3{margin:5px 0;font-family:Georgia,'Times New Roman',serif;font-size:42px;letter-spacing:0}.quiz-arena-result p{margin:0;color:#52625d}
.quiz-leaderboard{border-top:1px solid #c8d3d0}.quiz-leaderboard summary{padding:16px 26px;background:#f3f7f5;font-weight:900;cursor:pointer}.quiz-leaderboard .table-scroll{overflow-x:auto}.quiz-leaderboard table{width:100%;border-collapse:collapse}.quiz-leaderboard th,.quiz-leaderboard td{padding:10px 13px;border-bottom:1px solid #d5deda;text-align:left;font-size:12px}.quiz-leaderboard th{color:#52625d;background:#fafcfb;font-size:9px;text-transform:uppercase}
@media(max-width:850px){.quiz-arena-controls{grid-template-columns:1fr 1fr}.quiz-difficulty{grid-column:1/-1}.quiz-difficulty button{flex:1}.quiz-arena-controls>[data-arena-progress]{justify-self:end}.quiz-arena-result{grid-template-columns:120px minmax(0,1fr)}.quiz-arena-result-score{width:120px;height:120px}.quiz-arena-result .news-button{grid-column:1/-1}}
@media(max-width:620px){.quiz-arena-head{grid-template-columns:1fr;padding:20px 15px}.quiz-arena-clock{justify-items:start;padding:9px 0 0;border-left:0;border-top:1px solid #c8d3d0}.quiz-arena-controls{grid-template-columns:1fr;padding:14px 15px}.quiz-difficulty{overflow-x:auto}.quiz-arena-controls>[data-arena-progress]{justify-self:start}.quiz-arena-stage{min-height:520px;padding:20px 15px}.quiz-arena-ready{grid-template-columns:1fr}.quiz-arena-question h3{font-size:28px}.quiz-arena-question>footer{display:grid;grid-template-columns:1fr 1fr}.quiz-contact-fields{grid-template-columns:1fr}.quiz-arena-result{grid-template-columns:1fr;align-content:center}.quiz-arena-result .news-button{grid-column:auto}.quiz-leaderboard summary{padding-inline:15px}}

/* MWB News v57: calm mobile masthead and off-canvas section desk */
.news-mobile-menu-toggle,
.news-mobile-nav-head,
.news-mobile-nav-backdrop {
  display: none;
}

body.news-mobile-nav-open {
  overflow: hidden;
  touch-action: none;
}

@media (max-width: 1480px) {
  .news-masthead {
    position: relative;
    z-index: 50;
    overflow: visible;
    box-shadow: 0 5px 16px rgba(16, 23, 26, .08);
  }

  .news-utility,
  .news-brand-row,
  .news-front,
  .news-stream,
  .municipality-index,
  .news-article-shell,
  .newsletter-shell,
  .news-footer {
    width: min(100% - 24px, 1360px);
  }

  .news-utility {
    min-height: 36px;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px;
    padding-block: 3px;
  }

  .news-utility-leading {
    width: auto !important;
    min-width: 0;
    flex: 1 1 auto;
    gap: 7px;
  }

  .news-utility-leading > time {
    max-width: 148px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .news-utility > .news-utility-actions {
    width: auto !important;
    flex: 0 0 auto;
    flex-wrap: nowrap;
    gap: 0;
    overflow: visible;
  }

  .news-utility-actions > a {
    display: none;
  }

  .language-control select {
    min-height: 30px;
    max-width: 104px;
    padding-block: 3px;
  }

  .news-brand-row {
    min-height: 66px;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center !important;
    gap: 12px;
    padding-block: 10px;
  }

  .article-topbar-inner {
    width: min(100% - 24px, 1360px);
    min-height: 66px;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center !important;
    gap: 8px;
    padding-block: 10px;
  }

  .article-top-actions {
    width: auto !important;
    flex-wrap: nowrap;
  }

  .article-top-actions > .news-button {
    display: none;
  }

  .article-topbar .news-wordmark {
    gap: 7px;
  }

  .article-topbar .news-mark {
    width: 40px;
    height: 40px;
    font-size: 11px;
  }

  .article-topbar .news-wordmark strong {
    font-size: 23px;
  }

  .article-top-actions .language-control select {
    width: 88px;
    max-width: 88px;
  }

  .news-wordmark {
    min-width: 0;
    gap: 9px;
  }

  .news-mark {
    width: 44px;
    height: 44px;
    font-size: 12px;
  }

  .news-wordmark strong {
    overflow: hidden;
    font-size: 32px;
    line-height: .95;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .news-wordmark small,
  .news-edition-label {
    display: none;
  }

  .news-mobile-menu-toggle {
    width: 44px;
    height: 44px;
    min-width: 44px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid #10171a;
    border-radius: 3px;
    color: #fff;
    background: #10171a;
    cursor: pointer;
    transition: color .16s ease, background-color .16s ease, transform .16s ease;
  }

  .news-mobile-menu-toggle:hover,
  .news-mobile-menu-toggle:focus-visible,
  .news-mobile-menu-toggle[aria-expanded="true"] {
    color: #10171a;
    background: #f0c64d;
  }

  .news-mobile-menu-toggle:active {
    transform: translateY(1px);
  }

  .news-mobile-menu-toggle:focus-visible,
  .news-mobile-nav-close:focus-visible,
  .news-category-nav a:focus-visible {
    outline: 3px solid #0f78b8;
    outline-offset: 2px;
  }

  .news-mobile-menu-icon {
    width: 20px;
    display: grid;
    gap: 4px;
  }

  .news-mobile-menu-icon i {
    display: block;
    width: 20px;
    height: 2px;
    background: currentColor;
  }

  .news-category-nav {
    position: fixed;
    z-index: 3;
    inset: 0 auto 0 0;
    width: min(86vw, 340px);
    height: 100vh;
    height: 100dvh;
    min-height: 0;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0;
    margin: 0;
    padding: 0 0 24px;
    overflow-x: hidden;
    overflow-y: auto;
    visibility: hidden;
    border: 0;
    border-right: 1px solid #73817d;
    color: #10171a;
    background: #fff;
    box-shadow: 18px 0 44px rgba(0, 0, 0, .28);
    pointer-events: none;
    transform: translateX(-104%);
    transition: transform .28s cubic-bezier(.2, .75, .2, 1), visibility 0s linear .28s;
  }

  .news-category-nav.is-mobile-open {
    visibility: visible;
    pointer-events: auto;
    transform: translateX(0);
    transition-delay: 0s;
  }

  .news-mobile-nav-head {
    position: sticky;
    z-index: 2;
    top: 0;
    order: -1;
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    color: #fff;
    border-bottom: 5px solid #d71920;
    background: #10171a;
  }

  .news-mobile-nav-head strong {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 22px;
    line-height: 1.05;
  }

  .news-mobile-nav-close {
    width: 42px;
    height: 42px;
    min-width: 42px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 3px;
    color: #fff;
    background: transparent;
    cursor: pointer;
  }

  .news-mobile-nav-close:hover {
    color: #10171a;
    background: #f0c64d;
  }

  .news-mobile-nav-close span {
    position: relative;
    width: 19px;
    height: 19px;
  }

  .news-mobile-nav-close span::before,
  .news-mobile-nav-close span::after {
    position: absolute;
    top: 8px;
    left: 0;
    width: 19px;
    height: 2px;
    content: '';
    background: currentColor;
  }

  .news-mobile-nav-close span::before { transform: rotate(45deg); }
  .news-mobile-nav-close span::after { transform: rotate(-45deg); }

  .news-category-nav a {
    width: 100%;
    min-height: 49px;
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    padding: 11px 18px;
    border-right: 0;
    border-bottom: 1px solid #d9dfdd;
    font-size: 15px;
    line-height: 1.2;
  }

  .news-category-nav a:hover,
  .news-category-nav a:focus-visible {
    color: #10171a;
    background: #edf5f2;
  }

  .news-v32 .news-category-nav a[aria-current="page"] {
    color: #fff;
    border-left: 6px solid #f0c64d;
    background: #234d8a;
  }

  .news-mobile-nav-backdrop {
    position: fixed;
    z-index: 2;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: rgba(9, 14, 17, .62);
    cursor: pointer;
  }

  .news-mobile-nav-backdrop[hidden] {
    display: none;
  }

  .breaking-ticker {
    min-height: 38px;
    gap: 8px;
    padding-inline: 12px;
  }

  .breaking-ticker > strong {
    padding-inline: 9px;
    font-size: 9px;
  }
}

@media (max-width: 560px) {
  .news-utility-leading > time {
    flex: 0 0 auto;
    max-width: 58px;
    display: inline-flex;
    padding-inline: 3px;
    font-size: 10px;
    font-weight: 900;
  }

  .weather-utility-widget {
    flex-basis: auto;
    margin-left: 0;
  }

  .news-utility .language-control select {
    max-width: 118px;
  }

  .news-wordmark strong {
    font-size: 28px;
  }

  .news-v34 .feature-banner,
  .fire-feature-banner {
    min-height: 430px;
  }

  .news-v34 .feature-banner-copy {
    padding-block: 66px 28px;
  }

  .news-v34 .feature-banner-copy h1 {
    font-size: 36px;
    line-height: .98;
  }

  .news-v34 .feature-banner-copy p {
    font-size: 15px;
    line-height: 1.42;
  }

  .feature-banner-actions {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .feature-banner-actions .news-button {
    width: 100%;
    min-height: 46px;
    justify-content: center;
    padding-inline: 10px;
    white-space: normal;
  }

  .home-pulse-band {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-pulse-band a {
    min-height: 78px;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2px 8px;
    padding: 11px 12px;
    border-right: 0;
    border-bottom: 0;
  }

  .home-pulse-band a:nth-child(odd) {
    border-right: 1px solid rgba(255, 255, 255, .22);
  }

  .home-pulse-band a:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255, 255, 255, .22);
  }

  .home-pulse-band span {
    font-size: 9px;
    line-height: 1.15;
  }

  .home-pulse-band strong {
    font-size: 29px;
  }

  .home-pulse-band small {
    overflow: hidden;
    font-size: 9px;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

/* v133 selectable multi-day forecast */
.weather-forecast .weather-day-card {
  appearance: none;
  width: 100%;
  min-width: 0;
  display: grid;
  gap: 4px;
  align-content: start;
  padding: 12px;
  border: 0;
  border-right: 1px solid #cbd8d4;
  border-bottom: 1px solid #cbd8d4;
  border-radius: 0;
  background: #fff;
  color: #10171a;
  text-align: left;
  font: inherit;
  cursor: pointer;
  animation: weather-card-in .42s cubic-bezier(.2,.75,.2,1) both;
  animation-delay: calc(var(--weather-order, 0) * 45ms);
  transition: background-color .18s ease, box-shadow .18s ease, color .18s ease;
}

.weather-forecast .weather-day-card:hover {
  color: #10171a;
  background: #eef8f4;
  box-shadow: inset 0 -4px 0 #0d8062;
}

.weather-forecast .weather-day-card:focus-visible {
  position: relative;
  z-index: 2;
  outline: 3px solid #1678b4;
  outline-offset: -3px;
}

.weather-forecast .weather-day-card.is-selected {
  background: #10201b;
  color: #fff;
  box-shadow: inset 0 -5px 0 #f2c744;
}

.weather-forecast .weather-day-card.is-selected:hover,
.weather-forecast .weather-day-card.is-selected:focus-visible {
  color: #fff;
  background: #10201b;
}

.weather-forecast .weather-day-card.is-selected span,
.weather-forecast .weather-day-card.is-selected small,
.weather-forecast .weather-day-card.is-selected b i { color: #dbe7e3; }

.weather-forecast .weather-day-card > b {
  display: flex;
  gap: 5px;
  justify-content: center;
  white-space: nowrap;
}

.weather-forecast .weather-day-card > b em,
.weather-forecast .weather-day-card > b i { font-style: normal; }
.weather-forecast .weather-day-card > b i { color: #6b7a76; font-weight: 650; }

.weather-popover-forecast {
  grid-template-columns: repeat(9, minmax(72px, 1fr));
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
}

.weather-popover-forecast .weather-day-card {
  min-height: 92px;
  gap: 2px;
  padding: 7px 5px;
  text-align: center;
}

.weather-popover-forecast .weather-day-card > strong,
.weather-popover-forecast .weather-day-card > span,
.weather-popover-forecast .weather-day-card > small { font-size: 8px; }
.weather-popover-forecast .weather-day-card > b { display: grid; gap: 1px; font-size: 9px; }

.weather-extended-forecast .weather-day-card {
  min-height: 158px;
  padding: 14px 9px;
  text-align: center;
}

.weather-selected-day-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: end;
  padding: 18px 26px 14px;
  border-top: 1px solid #cbd6d3;
  border-bottom: 1px solid #cbd6d3;
  background: #f2f7f5;
}

.weather-selected-day-head h2 {
  margin: 2px 0 0;
  font-size: clamp(24px, 3vw, 38px);
  letter-spacing: 0;
}

.weather-selected-day-head p {
  margin: 0;
  color: #52635e;
  font-size: 12px;
  font-weight: 800;
  text-align: right;
}

.weather-current-primary > .weather-temperature {
  max-width: 260px;
  font-size: clamp(38px, 4.2vw, 64px);
  white-space: nowrap;
}

.weather-current-primary {
  grid-template-columns: 82px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-content: center;
  column-gap: 18px;
  row-gap: 7px;
}

.weather-current-primary > .weather-current-symbol {
  grid-column: 1;
  grid-row: 1 / span 2;
}

.weather-current-primary > .weather-temperature {
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
  max-width: none;
}

.weather-current-primary > div {
  grid-column: 2;
  grid-row: 2;
}

.weather-detail-unavailable {
  grid-column: 1 / -1;
  align-self: center;
  margin: 0;
  padding: 28px;
  color: #5a6964;
  text-align: center;
}

@media (max-width: 680px) {
  .weather-selected-day-head { display: grid; padding: 15px 14px 12px; }
  .weather-selected-day-head p { text-align: left; }
  .weather-current-primary { grid-template-columns: 58px minmax(0, 1fr); column-gap: 11px; row-gap: 5px; }
  .weather-current-primary > .weather-temperature { min-width: 0; font-size: 38px; }
  .weather-popover-forecast { grid-template-columns: repeat(9, minmax(68px, 1fr)); }
}

@media (prefers-reduced-motion: reduce) {
  .weather-forecast .weather-day-card { animation: none; transition: none; }
}

@media (max-width: 390px) {
  .news-brand-row {
    gap: 8px;
  }

  .news-mark {
    width: 40px;
    height: 40px;
  }

  .news-wordmark strong {
    font-size: 25px;
  }

  .news-mobile-menu-toggle {
    width: 42px;
    height: 42px;
    min-width: 42px;
  }

  .news-v34 .feature-banner-copy h1 {
    font-size: 33px;
  }

  .news-article-header h1 {
    font-size: 35px;
    line-height: 1.02;
  }
}

@media (max-width: 360px) {
  .article-topbar .news-wordmark > span:last-child {
    display: none;
  }

  .news-article-header h1 {
    font-size: 32px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .news-mobile-menu-toggle,
  .news-category-nav {
    transition: none;
  }
}

/* v58 newsletter and audience desks */
.newsletter-top-strip {
  width: 100%;
  min-height: 70px;
  display: grid;
  grid-template-columns: minmax(220px, .7fr) minmax(640px, 1.3fr);
  gap: 24px;
  align-items: center;
  padding: 12px max(24px, calc((100% - 1180px) / 2));
  color: #fff;
  border-bottom: 4px solid #f0c64d;
  background: #173a31;
}

.newsletter-top-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.newsletter-top-copy > span {
  color: #f0c64d;
  font-size: 10px;
  font-weight: 900;
}

.newsletter-top-copy > strong {
  overflow: hidden;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 19px;
  line-height: 1.08;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.newsletter-top-form {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(190px, .8fr) minmax(260px, 1.2fr) auto auto;
  gap: 10px;
  align-items: center;
}

.newsletter-top-form > .newsletter-top-email {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  color: #fff !important;
}

.newsletter-top-form .newsletter-top-email > span {
  color: #fff;
  font-size: 11px;
  font-weight: 900;
}

.newsletter-top-form input[type="email"] {
  min-height: 40px;
  border: 2px solid #fff;
}

.newsletter-top-form .newsletter-consent {
  min-width: 0;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 7px;
  align-items: center;
  margin: 0;
  color: #fff;
  font-size: 12px;
  line-height: 1.3;
}

.newsletter-top-form .newsletter-consent input {
  width: 17px;
  height: 17px;
  margin: 0;
}

.newsletter-top-form .news-button {
  min-height: 40px;
  padding: 9px 16px;
  color: #10171a;
  background: #f0c64d;
}

.newsletter-top-form .news-button:hover,
.newsletter-top-form .news-button:focus-visible {
  color: #fff;
  outline: 2px solid #fff;
  outline-offset: 2px;
  background: #c73243;
  transform: translateY(-1px);
}

.newsletter-top-privacy {
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.newsletter-top-form .growth-form-status {
  grid-column: 1 / -1;
  margin: 0;
}

.home-growth-band .newsletter-optin-form > label:not(.newsletter-consent):not(.newsletter-honeypot),
.home-growth-band .newsletter-optin-form > label:not(.newsletter-consent):not(.newsletter-honeypot) > span {
  color: #fff;
}

.audience-directory {
  padding-block: 8px 28px;
}

.audience-directory-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 2px solid #10171a;
  border-left: 1px solid #cbd5d2;
}

.audience-directory-grid > a {
  min-height: 150px;
  display: grid;
  grid-template-rows: auto auto 1fr;
  gap: 8px;
  align-content: start;
  padding: 20px;
  color: #17201d;
  border-right: 1px solid #cbd5d2;
  border-bottom: 1px solid #cbd5d2;
  background: #fff;
  text-decoration: none;
  transition: color 160ms ease, background 160ms ease, transform 160ms ease;
}

.audience-directory-grid > a:nth-child(2),
.audience-directory-grid > a:nth-child(6) { border-top: 4px solid #c49313; }
.audience-directory-grid > a:nth-child(3),
.audience-directory-grid > a:nth-child(7) { border-top: 4px solid #c53546; }
.audience-directory-grid > a:nth-child(4) { border-top: 4px solid #187bbb; }
.audience-directory-grid > a:nth-child(1),
.audience-directory-grid > a:nth-child(5) { border-top: 4px solid #0f7a50; }

.audience-directory-grid > a:hover,
.audience-directory-grid > a:focus-visible {
  color: #fff;
  outline: 3px solid #f0c64d;
  outline-offset: -3px;
  background: #17201d;
  transform: translateY(-2px);
}

.audience-directory-grid > a > span {
  color: #c53546;
  font-size: 10px;
  font-weight: 900;
}

.audience-directory-grid strong {
  color: #17201d;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 22px;
  line-height: 1.05;
}

.audience-directory-grid small {
  color: #5d6864;
  font-size: 12px;
  line-height: 1.45;
}

.audience-directory-grid strong > [data-lang],
.audience-directory-grid small > [data-lang] {
  color: inherit;
  font: inherit;
}

.audience-directory-grid > a:hover small,
.audience-directory-grid > a:focus-visible small { color: rgba(255, 255, 255, .82); }

.audience-page {
  color: #17201d;
  background: #edf3f1;
}

.audience-hero {
  position: relative;
  min-height: 510px;
  display: grid;
  align-items: end;
  isolation: isolate;
  overflow: hidden;
  color: #fff;
  background-position: center;
  background-size: cover;
}

.audience-hero::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: '';
  background: rgba(9, 16, 18, .67);
}

.life-hero { background-image: url('news-food-safety-v37.webp'); }
.teen-hero { background-image: url('news-entertainment-stage-v29.webp'); background-position: center 42%; }
.events-hero { background-image: url('news-culture-venue-v37.webp'); }
.community-hero { background-image: url('news-sports-stadium-v29.webp'); }

.audience-hero > div {
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
  padding: 82px 0 54px;
}

.audience-hero h1 {
  max-width: 890px;
  margin: 10px 0 16px;
  color: #fff;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 64px;
  line-height: 1;
  letter-spacing: 0;
}

.audience-hero p {
  max-width: 760px;
  margin: 0 0 22px;
  color: rgba(255, 255, 255, .88);
  font-size: 17px;
  line-height: 1.55;
}

.audience-anchor-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.audience-anchor-nav a {
  min-height: 39px;
  display: inline-flex;
  align-items: center;
  padding: 8px 13px;
  color: #10171a;
  border: 2px solid #fff;
  background: #fff;
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
}

.audience-anchor-nav a:hover,
.audience-anchor-nav a:focus-visible {
  color: #fff;
  outline: 2px solid #f0c64d;
  outline-offset: 2px;
  background: #c53546;
}

.audience-main {
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
  padding: 42px 0 72px;
}

.audience-intro-band,
.calendar-toolbar {
  display: grid;
  grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr);
  gap: 36px;
  align-items: end;
  padding: 0 0 24px;
  border-bottom: 3px solid #10171a;
}

.audience-intro-band h2,
.calendar-toolbar h2,
.teen-event-band h2,
.teen-safety-band h2,
.ecosystem-story-band h2,
.community-flow h2,
.community-safety h2 {
  margin: 6px 0 0;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 34px;
  line-height: 1.05;
}

.audience-intro-band > p,
.calendar-toolbar > p {
  margin: 0;
  color: #53605d;
  line-height: 1.55;
}

.daily-idea-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 24px;
}

.daily-idea-card {
  position: relative;
  min-height: 320px;
  display: grid;
  align-items: end;
  isolation: isolate;
  overflow: hidden;
  border-radius: 4px;
  color: #fff;
  background-position: center;
  background-size: cover;
}

.daily-idea-card:first-child { grid-column: 1 / -1; min-height: 390px; }
.daily-books { background-image: url('news-education-classroom-v37.webp'); }
.daily-beauty { background-image: url('news-entertainment-stage-v29.webp'); }
.daily-food { background-image: url('news-food-safety-v37.webp'); }
.daily-travel { background-image: url('news-travel-ferry-v37.webp'); }
.daily-celebrate { background-image: url('news-culture-venue-v37.webp'); }

.daily-idea-card::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: '';
  background: rgba(8, 15, 18, .67);
}

.daily-idea-card > div { padding: 28px; }
.daily-idea-card > div > span { color: #f0c64d; font-size: 10px; font-weight: 900; }
.daily-idea-card h2 { max-width: 660px; margin: 8px 0 10px; font-family: Georgia, 'Times New Roman', serif; font-size: 34px; line-height: 1.04; }
.daily-idea-card p { max-width: 680px; margin: 0 0 18px; color: rgba(255, 255, 255, .84); line-height: 1.5; }
.daily-idea-card a { color: #fff; font-size: 12px; font-weight: 900; text-underline-offset: 4px; }
.daily-idea-card a:hover,
.daily-idea-card a:focus-visible { color: #f0c64d; }

.audience-status {
  padding: 15px;
  color: #7d2934;
  border-left: 4px solid #c53546;
  background: #fff0f2;
}

.ecosystem-story-band {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 34px;
  align-items: center;
  margin-top: 34px;
  padding: 32px;
  color: #fff;
  border-top: 6px solid #f0c64d;
  background: #17201d;
}

.ecosystem-story-band p { color: rgba(255, 255, 255, .76); line-height: 1.5; }
.ecosystem-story-band nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-left: 1px solid rgba(255, 255, 255, .2); }
.ecosystem-story-band nav a { min-height: 120px; display: grid; align-content: center; gap: 8px; padding: 20px; color: #fff; border-right: 1px solid rgba(255, 255, 255, .2); text-decoration: none; }
.ecosystem-story-band nav a:hover,
.ecosystem-story-band nav a:focus-visible { color: #10171a; outline: 2px solid #fff; outline-offset: -2px; background: #f0c64d; }
.ecosystem-story-band nav b { font-size: 16px; }
.ecosystem-story-band nav span { font-size: 11px; line-height: 1.35; }

.teen-desk-grid,
.community-room-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.teen-desk,
.community-room-grid > a {
  min-height: 230px;
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  gap: 12px;
  padding: 24px;
  color: #17201d;
  border-top: 6px solid #0f7a50;
  border-radius: 4px;
  background: #fff;
  text-decoration: none;
  transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.teen-desk:nth-child(2), .community-room-grid > a:nth-child(2) { border-top-color: #187bbb; }
.teen-desk:nth-child(3), .community-room-grid > a:nth-child(3) { border-top-color: #c53546; }
.teen-desk:nth-child(4), .community-room-grid > a:nth-child(4) { border-top-color: #c49313; }
.teen-desk:nth-child(5), .community-room-grid > a:nth-child(5) { border-top-color: #6b4ca0; }
.teen-desk:nth-child(6), .community-room-grid > a:nth-child(6) { border-top-color: #db6b25; }

.teen-desk:hover,
.teen-desk:focus-visible,
.community-room-grid > a:hover,
.community-room-grid > a:focus-visible {
  outline: 3px solid #17201d;
  outline-offset: 2px;
  box-shadow: 0 13px 26px rgba(16, 23, 26, .14);
  transform: translateY(-3px);
}

.teen-desk > span,
.community-room-grid > a > span { color: #c53546; font-size: 10px; font-weight: 900; }
.teen-desk > strong,
.community-room-grid > a > strong { font-family: Georgia, 'Times New Roman', serif; font-size: 25px; line-height: 1.05; }
.teen-desk > small,
.community-room-grid > a > small { color: #59645f; font-size: 13px; line-height: 1.5; }
.community-room-grid > a > b { align-self: end; color: #0f7a50; font-size: 11px; text-decoration: underline; text-underline-offset: 3px; }

.teen-event-band {
  display: grid;
  grid-template-columns: minmax(250px, .58fr) minmax(0, 1.42fr);
  gap: 30px;
  margin-top: 32px;
  padding: 30px;
  border-top: 6px solid #187bbb;
  background: #fff;
}

.teen-event-band p { color: #59645f; line-height: 1.5; }

.audience-event-list {
  display: grid;
  gap: 10px;
}

.audience-event-card {
  display: grid;
  grid-template-columns: 165px minmax(0, 1fr) auto;
  gap: 10px 20px;
  align-items: center;
  padding: 18px 20px;
  border-left: 5px solid #0f7a50;
  border-radius: 3px;
  background: #fff;
}

.teen-event-band .audience-event-card { border: 1px solid #d7e0dd; border-left: 5px solid #187bbb; }
.audience-event-card time { color: #c53546; font-size: 11px; font-weight: 900; }
.audience-event-card h3 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: 22px; line-height: 1.1; }
.audience-event-card > p { grid-column: 2; margin: 0; color: #59645f; font-size: 12px; }
.audience-event-card > div { grid-column: 3; grid-row: 1 / span 2; display: grid; justify-items: end; gap: 8px; }
.audience-event-card > div span { padding: 5px 7px; color: #17201d; background: #edf3f1; font-size: 9px; font-weight: 900; }
.audience-event-card > div a { max-width: 180px; color: #0b5c9d; font-size: 10px; font-weight: 900; text-align: right; }

.teen-safety-band,
.community-safety {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: 34px;
  margin-top: 32px;
  padding: 30px;
  color: #fff;
  border-left: 8px solid #f0c64d;
  background: #17201d;
}

.teen-safety-band ul { margin: 0; display: grid; gap: 12px; padding-left: 20px; }
.teen-safety-band li { color: rgba(255, 255, 255, .82); line-height: 1.45; }
.teen-safety-band h2,
.community-safety h2 { color: #fff; }
.teen-safety-band .story-kicker,
.community-safety .story-kicker { color: #f6cf55; }
.teen-safety-band li::marker { color: #f6cf55; }

.event-filter-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
}

.event-filter-row button {
  min-height: 38px;
  padding: 8px 13px;
  color: #17201d;
  border: 1px solid #9daaa6;
  border-radius: 3px;
  background: #fff;
  font: inherit;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.event-filter-row button:hover,
.event-filter-row button:focus-visible,
.event-filter-row button.is-active { color: #fff; border-color: #17201d; outline: 2px solid #f0c64d; outline-offset: 2px; background: #17201d; }

.events-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, .45fr);
  gap: 20px;
  margin-top: 24px;
  align-items: start;
}

.calendar-side { display: grid; gap: 14px; }
.calendar-side section { padding: 24px; border-top: 5px solid #c49313; background: #fff; }
.calendar-side section + section { border-top-color: #c53546; }
.calendar-side h2 { margin: 8px 0 12px; font-family: Georgia, 'Times New Roman', serif; font-size: 25px; line-height: 1.08; }
.calendar-side p { color: #53605d; line-height: 1.5; }
.calendar-side small { color: #6d7774; line-height: 1.4; }
.calendar-side .news-button { margin-top: 12px; }

.community-flow {
  display: grid;
  grid-template-columns: minmax(260px, .65fr) minmax(0, 1.35fr);
  gap: 34px;
  margin-top: 32px;
  padding: 32px;
  border-top: 6px solid #187bbb;
  background: #fff;
}

.community-flow ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid #d6dfdc; border-left: 1px solid #d6dfdc; }
.community-flow li { min-height: 130px; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 14px; align-content: center; padding: 18px; border-right: 1px solid #d6dfdc; border-bottom: 1px solid #d6dfdc; }
.community-flow li > b { color: #c53546; font-size: 11px; }
.community-flow li span { display: grid; gap: 7px; }
.community-flow li strong { font-family: Georgia, 'Times New Roman', serif; font-size: 19px; }
.community-flow li small { color: #59645f; line-height: 1.4; }
.community-safety p { color: rgba(255, 255, 255, .8); line-height: 1.55; }
.community-safety > div:last-child { display: grid; align-content: center; gap: 8px; }
.community-safety a { min-height: 42px; display: flex; align-items: center; justify-content: space-between; padding: 9px 12px; color: #fff; border-bottom: 1px solid rgba(255, 255, 255, .28); font-weight: 800; text-decoration: none; }
.community-safety a::after { content: '→'; }
.community-safety a:hover,
.community-safety a:focus-visible { color: #10171a; outline: 2px solid #f0c64d; background: #f0c64d; }

@media (max-width: 1100px) {
  .newsletter-top-strip { grid-template-columns: 1fr; gap: 8px; }
  .newsletter-top-copy { grid-template-columns: auto minmax(0, 1fr); gap: 10px; align-items: baseline; }
  .newsletter-top-copy > strong { font-size: 16px; }
  .audience-directory-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .teen-desk-grid,
  .community-room-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .events-layout { grid-template-columns: 1fr; }
  .calendar-side { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 800px) {
  .newsletter-top-strip { padding-inline: 18px; }
  .newsletter-top-form { grid-template-columns: minmax(0, 1fr) auto; }
  .newsletter-top-form > .newsletter-top-email { grid-column: 1 / -1; }
  .newsletter-top-form .newsletter-consent { grid-column: 1; }
  .newsletter-top-privacy { justify-self: end; }
  .audience-directory-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .audience-hero { min-height: 440px; }
  .audience-hero > div,
  .audience-main { width: min(100% - 32px, 1180px); }
  .audience-hero h1 { font-size: 48px; }
  .audience-intro-band,
  .calendar-toolbar,
  .ecosystem-story-band,
  .teen-event-band,
  .teen-safety-band,
  .community-flow,
  .community-safety { grid-template-columns: 1fr; }
  .ecosystem-story-band nav { border-top: 1px solid rgba(255, 255, 255, .2); border-left: 0; }
  .audience-event-card { grid-template-columns: 1fr; }
  .audience-event-card > p,
  .audience-event-card > div { grid-column: 1; grid-row: auto; justify-items: start; }
  .audience-event-card > div a { max-width: none; text-align: left; }
  .event-filter-row { justify-content: flex-start; }
}

@media (max-width: 560px) {
  .newsletter-top-copy { display: none; }
  .newsletter-top-form { grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
  .newsletter-top-form .newsletter-consent { grid-column: 1 / -1; }
  .newsletter-top-form .newsletter-consent span { white-space: normal; }
  .newsletter-top-form .newsletter-top-email > span { display: block; }
  .newsletter-top-privacy { align-self: center; }
  .audience-directory-grid,
  .daily-idea-grid,
  .teen-desk-grid,
  .community-room-grid,
  .calendar-side,
  .community-flow ol { grid-template-columns: 1fr; }
  .daily-idea-card:first-child { grid-column: auto; min-height: 330px; }
  .audience-hero h1 { font-size: 39px; }
  .audience-hero p { font-size: 15px; }
  .audience-main { padding-top: 28px; }
  .ecosystem-story-band { padding: 24px; }
  .ecosystem-story-band nav { grid-template-columns: 1fr; }
  .ecosystem-story-band nav a { min-height: 82px; border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .2); }
  .audience-intro-band h2,
  .calendar-toolbar h2,
  .teen-event-band h2,
  .teen-safety-band h2,
  .ecosystem-story-band h2,
  .community-flow h2,
  .community-safety h2 { font-size: 29px; }
}

/* v59 synchronized challenges, private quiz studio and compact casual games */
.challenge-studio{margin-top:30px;border:1px solid #c5d1ce;border-top:6px solid #0c8658;background:#fff}
.challenge-studio-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding:26px;border-bottom:1px solid #c8d3d0}
.challenge-studio-head h2{margin:5px 0 8px;font-family:Georgia,'Times New Roman',serif;font-size:34px;letter-spacing:0}
.challenge-studio-head p{max-width:760px;margin:0;color:#52625d;line-height:1.5}
.studio-privacy-chip{padding:8px 10px;color:#075b40;background:#e3f4ec;border:1px solid #8bc9af;font-size:11px;font-weight:900;text-transform:uppercase}
.challenge-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid #c8d3d0}
.challenge-entry{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:24px 26px;background:#f6f9f8}
.challenge-entry:first-child{border-right:1px solid #c8d3d0}
.challenge-entry h3{grid-column:1/-1;margin:0 0 4px;font-family:Georgia,'Times New Roman',serif;font-size:25px;letter-spacing:0}
.studio-step{position:absolute;top:18px;right:20px;color:#9eaca8;font:700 25px/1 Georgia,'Times New Roman',serif}
.challenge-entry label,.creator-studio-form label{display:grid;gap:6px;min-width:0;font-size:11px;font-weight:900}
.challenge-entry>label,.challenge-entry>.news-button{grid-column:1/-1}
.challenge-entry input,.challenge-entry select,.creator-studio-form input,.creator-studio-form select,.creator-studio-form textarea,.studio-plan-form input,.studio-plan-form select{width:100%;min-height:44px;padding:9px 10px;border:1px solid #9eafab;background:#fff;color:#10171a;font:inherit;font-size:13px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.challenge-entry input:hover,.challenge-entry select:hover,.creator-studio-form input:hover,.creator-studio-form select:hover,.creator-studio-form textarea:hover,.studio-plan-form input:hover,.studio-plan-form select:hover{border-color:#49726a;background:#fbfdfc}
.challenge-entry input:focus,.challenge-entry select:focus,.creator-studio-form input:focus,.creator-studio-form select:focus,.creator-studio-form textarea:focus,.studio-plan-form input:focus,.studio-plan-form select:focus{border-color:#1e78b7;outline:2px solid rgba(30,120,183,.25);outline-offset:1px;box-shadow:0 0 0 4px rgba(30,120,183,.08)}
.creator-studio-form textarea{resize:vertical}
.studio-inline-fields,.studio-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.challenge-entry>.studio-inline-fields{grid-column:1/-1}
.studio-wide{grid-column:1/-1}
.studio-status{min-height:0;margin:0;padding:0 26px;font-weight:800}.studio-status:not(:empty){padding-block:12px;border-bottom:1px solid #c8d3d0}.studio-status.is-error{color:#a61e31;background:#fff0f2}.studio-status.is-success{color:#075b40;background:#e8f6ef}
.challenge-room{padding:26px;border-bottom:1px solid #c8d3d0;background:#fff}
.room-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start;padding-bottom:18px;border-bottom:2px solid #10171a}
.room-header h3{margin:4px 0 0;font-family:Georgia,'Times New Roman',serif;font-size:30px;letter-spacing:0}
.room-code{display:grid;grid-template-columns:auto auto;gap:3px 10px;align-items:center}.room-code>span{font-size:9px;font-weight:900;text-transform:uppercase}.room-code>strong{font:700 28px/1 Georgia,'Times New Roman',serif;letter-spacing:2px}.room-code>button{grid-column:1/-1;padding:5px 0;border:0;border-bottom:1px solid #10171a;background:transparent;font:inherit;font-size:11px;font-weight:900;cursor:pointer}.room-code>button:hover{color:#1e78b7;border-color:#1e78b7}
.room-campaign{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:12px 22px;margin:18px 0 4px;padding:16px;border-left:5px solid #c89513;background:#fff8dc}.room-campaign>.story-kicker,.room-campaign>a{grid-column:1/-1}.room-campaign>div{display:grid;align-content:start;gap:3px}.room-campaign>div strong{font-family:Georgia,'Times New Roman',serif;font-size:24px}.room-campaign>div span{color:#52625d;font-weight:850}.room-campaign dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px;margin:0}.room-campaign dl div{min-width:0}.room-campaign dt{font-size:9px;font-weight:900;text-transform:uppercase;color:#7b5410}.room-campaign dd{margin:2px 0 0;overflow-wrap:anywhere;line-height:1.4}.room-campaign>a{justify-self:start;color:#075b40;font-weight:900;text-underline-offset:3px}.room-campaign>a:hover{color:#1e78b7}
.room-people{display:flex;flex-wrap:wrap;gap:6px;padding:14px 0}.room-people span{padding:6px 9px;border:1px solid #b6c3c0;background:#f3f7f5;font-size:11px;font-weight:850}.room-people .is-finished{color:#075b40;border-color:#82c4a7;background:#e6f5ed}
.room-waiting{display:grid;justify-items:start;gap:8px;min-height:180px;align-content:center;padding:20px;border-left:5px solid #1e78b7;background:#edf6fa}.room-waiting strong{font-family:Georgia,'Times New Roman',serif;font-size:28px}.room-waiting p{margin:0;color:#52625d}
.room-question-list{display:grid;gap:16px}.room-question-list fieldset{margin:0;padding:16px;border:1px solid #bdc9c6;background:#f8faf9}.room-question-list legend{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:center;padding:0 8px 0 0;font-family:Georgia,'Times New Roman',serif;font-size:19px;font-weight:700}.room-question-list legend>span{display:grid;width:38px;height:38px;place-items:center;color:#fff;background:#10171a;font:900 11px/1 Arial,sans-serif}.room-answer-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.room-answer-options label{display:flex;gap:9px;align-items:center;min-height:45px;padding:9px 11px;border:1px solid #acbbb7;background:#fff;font-weight:800;cursor:pointer}.room-answer-options label:has(input:checked){border-color:#1e78b7;background:#eaf5fb;box-shadow:inset 4px 0 0 #1e78b7}.room-answer-options input{accent-color:#1e78b7}.room-answer-form>.news-button{margin-top:16px}
.evidence-link{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;margin-top:16px;padding:13px 15px;color:#fff;background:#10171a;text-decoration:none}.evidence-link strong{display:grid;width:58px;height:38px;place-items:center;background:#0c8658}.evidence-link:hover{background:#1c292d}.evidence-link:focus-visible{outline:3px solid #1e78b7;outline-offset:3px}
.room-reveal{display:grid;gap:20px}.room-ranking{display:grid;gap:6px}.room-ranking>div{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border-bottom:1px solid #c8d3d0}.room-ranking>div:first-of-type{color:#fff;background:#0c8658;border:0}.room-ranking b{font-family:Georgia,'Times New Roman',serif;font-size:23px}.room-ranking span{font-weight:900}.room-reveal details{border:1px solid #c8d3d0}.room-reveal summary{padding:12px 14px;font-weight:900;cursor:pointer}.room-reveal ol{display:grid;gap:10px;margin:0;padding:14px 38px;border-top:1px solid #c8d3d0}.room-reveal li strong,.room-reveal li span{display:block}.room-reveal li span{margin-top:3px;color:#075b40;font-weight:900}
.survey-result{padding:14px;border:1px solid #c8d3d0}.survey-result h4{margin:0 0 12px;font-family:Georgia,'Times New Roman',serif;font-size:20px}.survey-result>div{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:7px 9px;overflow:hidden}.survey-result>div>*{position:relative;z-index:1}.survey-result i{position:absolute;inset:0 auto 0 0;background:#dceef7;z-index:0}.room-review-note{margin:0;padding:13px 15px;border-left:5px solid #c89513;background:#fff8dc;line-height:1.5}
.creator-studio{border-top:1px solid #c8d3d0}.creator-studio>summary{display:flex;align-items:center;justify-content:space-between;padding:18px 26px;cursor:pointer;list-style:none}.creator-studio>summary::-webkit-details-marker{display:none}.creator-studio>summary:after{content:"+";font-size:26px;color:#0c8658}.creator-studio[open]>summary:after{content:"\2212"}.creator-studio>summary span{display:grid;gap:3px}.creator-studio>summary strong{font-family:Georgia,'Times New Roman',serif;font-size:22px}.creator-studio>summary small{color:#52625d}
.creator-studio-form{display:grid;gap:16px;padding:24px 26px;border-top:1px solid #c8d3d0;background:#f7faf9}.studio-question-list{display:grid;gap:12px}.studio-question{margin:0;padding:15px;border:1px solid #b9c6c3;background:#fff}.studio-question legend{display:flex;gap:10px;align-items:center;padding:0 5px 0 0}.studio-question legend>span{display:grid;width:34px;height:34px;place-items:center;color:#fff;background:#10171a;font-size:10px}.studio-question legend>button{width:32px;height:32px;margin-left:auto;border:1px solid #b9c6c3;background:#fff;font-size:20px;cursor:pointer}.studio-question legend>button:disabled{opacity:.35;cursor:default}.studio-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0}.studio-check{display:flex!important;gap:10px;align-items:flex-start;padding:12px 14px;border-left:4px solid #1e78b7;background:#eef6fa}.studio-check input{width:auto!important;min-height:0!important;margin-top:3px;accent-color:#0c8658}.studio-check>span{display:grid;gap:3px}.studio-check small{color:#52625d;font-weight:500;line-height:1.4}
.scavenger-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.campaign-proposal,.studio-plans{border:1px solid #c8d3d0;background:#fff}.campaign-proposal>summary,.studio-plans>summary{padding:12px 14px;font-weight:900;cursor:pointer}.campaign-proposal>.studio-check,.campaign-proposal>.studio-form-grid,.studio-plans>*:not(summary){margin:0 14px 14px}.campaign-proposal>.studio-form-grid{padding-top:12px;border-top:1px solid #c8d3d0}
.studio-template-result{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px 14px;align-items:center;padding:15px;border-left:5px solid #0c8658;background:#e9f6ef}.studio-template-result>strong{font:700 24px/1 Georgia,'Times New Roman',serif;letter-spacing:2px}.studio-template-result>p{grid-column:1/3;margin:0}.studio-template-result>.news-button{grid-column:3;grid-row:1/3}
.studio-plans{margin:0 26px 24px}.studio-plans>div{display:flex;flex-wrap:wrap;gap:8px}.studio-plans>div span,.studio-plans>div strong{padding:7px 9px;background:#eef3f1}.studio-plan-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.studio-plan-form .studio-check{grid-column:1/4}.studio-plan-form>.news-button{align-self:stretch}.studio-plans>small{display:block;color:#52625d;line-height:1.45}
.games-secondary-grid>article:nth-child(3){border-top:5px solid #0c8658}.games-secondary-grid>article:nth-child(4){border-top:5px solid #c91e32}.hangman-status{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:20px}.hangman-status>span{font-size:11px;font-weight:900;text-transform:uppercase}.hangman-status>div{grid-column:1/-1;display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.hangman-status i{height:5px;background:#dce3e1}.hangman-status i.is-used{background:#c91e32}.hangman-hint{min-height:48px;color:#52625d;line-height:1.45}.hangman-word{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;min-height:80px;align-items:center;padding:12px;background:#10171a;color:#fff}.hangman-word span{min-width:24px;text-align:center;font-family:Georgia,'Times New Roman',serif;font-size:28px}.hangman-keyboard{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:14px}.hangman-keyboard button{aspect-ratio:1;border:1px solid #adbbb8;background:#fff;font:900 12px/1 Arial,sans-serif;cursor:pointer}.hangman-keyboard button:hover:not(:disabled){color:#fff;background:#1e78b7}.hangman-keyboard button:disabled{opacity:.25}
.tic-status{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:20px;padding:10px 0}.tic-status button{border:0;border-bottom:1px solid #10171a;background:transparent;font:inherit;font-size:11px;font-weight:900;cursor:pointer}.tic-board{display:grid;grid-template-columns:repeat(3,82px);grid-template-rows:repeat(3,82px);justify-content:center;gap:5px;margin-top:10px}.tic-board button{width:82px;height:82px;border:1px solid #aab8b5;background:#fff;color:#10171a;font:700 38px/1 Georgia,'Times New Roman',serif;cursor:pointer}.tic-board button:not(:disabled):hover{background:#e8f5ef;border-color:#0c8658}.tic-board button:disabled{opacity:1}
@media(max-width:850px){.challenge-studio-head,.room-header{grid-template-columns:1fr}.challenge-entry-grid{grid-template-columns:1fr}.challenge-entry:first-child{border-right:0;border-bottom:1px solid #c8d3d0}.studio-plan-form{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-plan-form .studio-check{grid-column:1/-1}.studio-template-result{grid-template-columns:1fr}.studio-template-result>p,.studio-template-result>.news-button{grid-column:1;grid-row:auto}.scavenger-options{grid-template-columns:1fr}}
@media(max-width:620px){.challenge-studio-head,.challenge-entry,.challenge-room,.creator-studio-form{padding:18px 14px}.challenge-entry,.studio-inline-fields,.studio-form-grid,.studio-option-grid,.room-answer-options,.studio-plan-form,.room-campaign,.room-campaign dl{grid-template-columns:1fr}.creator-studio>summary{padding:16px 14px}.studio-plans{margin:0 14px 16px}.room-code{justify-self:start}.room-question-list legend{font-size:17px}.tic-board{grid-template-columns:repeat(3,70px);grid-template-rows:repeat(3,70px)}.tic-board button{width:70px;height:70px}.hangman-keyboard{grid-template-columns:repeat(6,minmax(0,1fr))}}

/* v59 finance desk and four-currency reference tool */
.finance-hero{position:relative;min-height:360px;display:flex;align-items:flex-end;color:#fff;background:#10171a url('news-economy-port-v29.webp') center 58%/cover no-repeat;isolation:isolate}
.finance-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,18,20,.94) 0%,rgba(10,18,20,.77) 48%,rgba(10,18,20,.18) 100%);z-index:-1}
.finance-hero>div{width:min(100% - 40px,1180px);margin:0 auto;padding:56px 0 48px}
.finance-hero h1{max-width:790px;margin:8px 0 12px;font-family:Georgia,'Times New Roman',serif;font-size:52px;line-height:1.02;letter-spacing:0}
.finance-hero p{max-width:680px;margin:0;color:rgba(255,255,255,.82);font-size:16px;line-height:1.55}
.finance-main{width:min(100% - 40px,1180px);margin:0 auto;padding:34px 0 70px}
.currency-desk{border:1px solid #c6d2cf;border-top:6px solid #0c8658;background:#fff}
.currency-desk>header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding:26px 28px;border-bottom:1px solid #c6d2cf}
.currency-desk h2,.market-desk h2,.finance-explainers h2{margin:5px 0 8px;font-family:Georgia,'Times New Roman',serif;font-size:34px;line-height:1.08;letter-spacing:0}
.currency-desk header p,.market-desk header p{max-width:720px;margin:0;color:#53625e;line-height:1.5}
.fx-source{display:grid;justify-items:end;gap:4px}.fx-source span{font-size:9px;font-weight:900;text-transform:uppercase}.fx-source strong{font-family:Georgia,'Times New Roman',serif;font-size:23px}
.fx-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-bottom:1px solid #c6d2cf}
.fx-row{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8px 12px;align-items:center;padding:22px 24px;border-right:1px solid #c6d2cf;border-bottom:1px solid #c6d2cf;background:#f6f9f8;transition:background .16s ease,box-shadow .16s ease}
.fx-row:nth-child(even){border-right:0}.fx-row:nth-last-child(-n+2){border-bottom:0}.fx-row.is-source{background:#e9f6f0;box-shadow:inset 5px 0 0 #0c8658}
.fx-row>span{grid-column:1/-1;color:#697773;font-size:9px;font-weight:900;text-transform:uppercase}
.fx-row select,.fx-row input{width:100%;height:48px;padding:8px 10px;border:1px solid #9fafa9;background:#fff;color:#10171a;font:inherit}
.fx-row input{font-family:Georgia,'Times New Roman',serif;font-size:24px;font-weight:700;text-align:right}
.fx-row select:hover,.fx-row input:hover{border-color:#426b62}.fx-row select:focus,.fx-row input:focus{border-color:#1e78b7;outline:3px solid rgba(30,120,183,.18);outline-offset:1px}
.fx-remove{position:absolute;top:8px;right:9px;width:28px;height:28px;border:0;color:#7d2938;background:transparent;font-size:22px;cursor:pointer}.fx-remove:hover,.fx-remove:focus-visible{color:#fff;outline:2px solid #7d2938;background:#7d2938}
.fx-actions{display:flex;align-items:center;gap:14px;padding:16px 24px}.fx-add{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border:1px solid #0c8658;color:#fff;background:#0c8658;font-size:24px;cursor:pointer}.fx-add:hover,.fx-add:focus-visible{outline:3px solid #f0c64d;outline-offset:2px;background:#075b40}.fx-add:disabled{opacity:.45;cursor:default}
.fx-status{margin:0;color:#52615d;font-weight:800}.fx-status.is-ready{color:#075b40}.fx-status.is-error{color:#a51d31}
.currency-desk>footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;padding:16px 24px;color:#53625e;background:#eef3f1;font-size:11px}.currency-desk>footer p{margin:0;line-height:1.5}.currency-desk>footer a{color:#0b609e;font-weight:900}
.market-desk{display:grid;grid-template-columns:minmax(260px,.42fr) minmax(0,1.58fr);gap:28px;margin-top:34px;padding:30px;border-top:6px solid #1e78b7;color:#fff;background:#10171a}.market-desk header{display:grid;align-content:start}.market-desk header p{color:rgba(255,255,255,.7)}
.market-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.25);border-left:1px solid rgba(255,255,255,.25)}
.market-link-grid>a{display:grid;align-content:start;min-height:190px;padding:20px;color:#fff;border-right:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25);text-decoration:none;transition:background .16s ease,transform .16s ease}
.market-link-grid>a:hover,.market-link-grid>a:focus-visible{outline:2px solid #f0c64d;outline-offset:-3px;background:#183d34;transform:translateY(-2px)}
.market-link-grid span{color:#54c99c;font-size:10px;font-weight:900}.market-link-grid strong{margin:16px 0 10px;font-family:Georgia,'Times New Roman',serif;font-size:21px;line-height:1.15}.market-link-grid small{color:rgba(255,255,255,.66);line-height:1.45}
.finance-explainers{margin-top:34px}.finance-explainers>header{padding:0 0 16px;border-bottom:3px solid #10171a}.finance-explainer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid #c6d2cf}.finance-explainer-grid article{min-height:390px;padding:24px;border-right:1px solid #c6d2cf;border-bottom:1px solid #c6d2cf;background:#fff}.finance-explainer-grid article>span{color:#c52f43;font-size:9px;font-weight:900}.finance-explainer-grid h3{margin:16px 0 22px;font-family:Georgia,'Times New Roman',serif;font-size:27px;line-height:1.08}.finance-explainer-grid p{color:#465651;line-height:1.62}.finance-explainer-grid p+p{padding-top:15px;border-top:1px solid #d3ddda}
@media(max-width:900px){.market-desk{grid-template-columns:1fr}.market-link-grid{grid-template-columns:1fr}.market-link-grid>a{min-height:130px}.finance-explainer-grid{grid-template-columns:1fr}.finance-explainer-grid article{min-height:0}.finance-hero h1{font-size:45px}}
@media(max-width:650px){.finance-hero{min-height:390px}.finance-hero>div,.finance-main{width:min(100% - 28px,1180px)}.finance-hero h1{font-size:38px}.currency-desk>header,.currency-desk>footer{grid-template-columns:1fr;padding:20px 16px}.fx-source{justify-items:start}.fx-rows{grid-template-columns:1fr}.fx-row,.fx-row:nth-child(even),.fx-row:nth-last-child(-n+2){padding:18px 16px;border-right:0;border-bottom:1px solid #c6d2cf}.fx-row:last-child{border-bottom:0}.fx-actions{padding:14px 16px}.market-desk{padding:22px 16px}.currency-desk h2,.market-desk h2,.finance-explainers h2{font-size:29px}}
.scavenger-public-band {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, .75fr);
  gap: 0;
  margin: 28px 0;
  border-top: 3px solid #168c62;
  border-bottom: 1px solid #bfcac6;
  background: #f7faf8;
}
.scavenger-public-band > div { padding: 26px 30px; }
.scavenger-public-band h2 { margin: 7px 0 10px; font-family: Georgia, "Times New Roman", serif; font-size: 38px; line-height: 1.02; }
.scavenger-public-band p { max-width: 780px; margin: 0; color: #53615d; line-height: 1.6; }
.scavenger-public-band aside { display: grid; align-content: center; gap: 10px; padding: 24px; color: #fff; background: #102c24; }
.scavenger-public-band aside > strong { color: #f0c64d; font-size: 12px; }
.scavenger-public-band aside p { color: rgba(255,255,255,.78); font-size: 13px; }
.scavenger-public-band aside .news-button { justify-self: start; color: #102019; background: #f0c64d; border-color: #f0c64d; }
.scavenger-public-band aside .news-button:hover,
.scavenger-public-band aside .news-button:focus-visible { color: #fff; background: #168c62; border-color: #fff; transform: translateY(-2px); }

@media (max-width: 760px) {
  .scavenger-public-band { grid-template-columns: 1fr; }
  .scavenger-public-band > div, .scavenger-public-band aside { padding: 20px 16px; }
  .scavenger-public-band h2 { font-size: 30px; }
}

/* v60 world weather atlas and reusable-media WebTV */
.world-desk-page .weather-utility-widget {
  width: auto;
  max-width: min(620px, 64vw);
  flex: 0 1 auto;
}
.world-desk-page .weather-utility-trigger {
  width: max-content !important;
  max-width: 100%;
  padding-right: 8px !important;
}
.world-desk-page .weather-utility-chevron { display: none !important; }
.world-browser { width: min(1660px, calc(100% - 24px)); }
.world-browser-layout { grid-template-columns: minmax(0, 1fr) 360px; }
.world-map-stage {
  height: clamp(590px, 70vh, 820px);
  min-height: 590px;
  aspect-ratio: auto;
  background: #c9dce2;
  isolation: isolate;
}
.world-map-stage svg { touch-action: none; }
.world-map-stage.is-fullscreen {
  position: fixed;
  z-index: 1000;
  inset: 0;
  width: 100vw;
  height: 100dvh;
  min-height: 0;
  max-height: none;
  border: 0;
}
body.has-world-map-fullscreen { overflow: hidden; }
.world-map-fullscreen {
  width: 38px;
  height: 38px;
  min-height: 38px;
  display: grid;
  place-items: center;
  margin-top: 6px;
  padding: 0;
  border: 1px solid #9aaba6;
  border-radius: 3px;
  color: #10171a;
  background: #fff;
  box-shadow: 0 3px 12px rgba(16,23,26,.14);
  font: 900 18px/1 Arial,sans-serif;
  cursor: pointer;
}
.world-map-scale {
  --map-scale: linear-gradient(90deg,#314fc3 0%,#2088c4 24%,#20a16b 45%,#e2c02a 65%,#e37226 82%,#c52f3c 100%);
  position: absolute;
  z-index: 5;
  right: 64px;
  bottom: 12px;
  width: min(360px, calc(100% - 88px));
  padding: 8px 10px 7px;
  border: 1px solid rgba(16,23,26,.34);
  color: #10171a;
  background: rgba(255,255,255,.94);
  box-shadow: 0 4px 16px rgba(16,23,26,.15);
}
.world-map-scale[data-scale-mode="wind"] { --map-scale: linear-gradient(90deg,#8fcad5,#3a9a91 40%,#e3aa28 70%,#c72f43); }
.world-map-scale[data-scale-mode="rain"] { --map-scale: linear-gradient(90deg,#eef7ff,#6fb7e9 45%,#276fc6 72%,#5840a8); }
.world-map-scale>strong { display:block; margin-bottom:5px; font-size:9px; text-transform:uppercase; }
.world-map-scale-bar { display:block; height:8px; background:var(--map-scale); }
.world-map-scale>div { display:flex; justify-content:space-between; margin-top:3px; font-weight:850; }
.world-admin-marker,.world-rain-marker { pointer-events:auto; cursor:pointer; }
.world-admin-marker circle { fill:#fff; stroke:#0e7451; stroke-width:2; }
.world-admin-marker.is-selected circle { fill:#efc832; stroke:#10171a; }
.world-admin-marker text {
  fill:#10171a;
  paint-order:stroke;
  stroke:#fff;
  stroke-width:3px;
  stroke-linejoin:round;
  font:900 8px/1 Arial,sans-serif;
  opacity:0;
  transition:opacity .16s ease;
}
.world-admin-marker-weather { fill:#075f45!important; font-size:7px!important; }
.world-admin-marker:hover text,
.world-admin-marker:focus-visible text,
.world-admin-marker.is-selected text { opacity:1; }
.world-admin-marker:focus-visible { outline:0; }
.world-admin-marker:hover circle,
.world-admin-marker:focus-visible circle { fill:#d7f2e8; stroke:#10171a; }
.world-map-stage[data-map-detail="world"] .world-admin-marker { opacity:0; pointer-events:none; }
.world-map-stage[data-map-detail="country"] .world-admin-marker-name { display:none; }
.world-map-stage[data-map-detail="country"] .world-admin-marker-weather { display:none; }
.world-rain-marker circle { fill:#307fca; stroke:#fff; stroke-width:1.5; }
.world-rain-marker.rain-moderate circle { fill:#4f58b8; }
.world-rain-marker.rain-heavy circle { fill:#783b91; }
.world-rain-marker text { fill:#fff; font:900 11px/1 Arial,sans-serif; }
.world-rain-marker .world-rain-value { fill:#10171a; paint-order:stroke; stroke:#fff; stroke-width:3px; font-size:10px; }
.world-map-popup { width:min(330px,calc(100% - 24px)); }
.world-map-popup dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin:2px 0; }
.world-map-popup dl div { min-width:0; padding:7px 8px; background:#edf3f1; }
.world-map-popup dt { color:#5b6965; font-size:8px; font-weight:900; text-transform:uppercase; }
.world-map-popup dd { margin:2px 0 0; font-size:11px; font-weight:900; overflow-wrap:anywhere; }
.world-admin-region-list button { grid-template-columns:minmax(0,1fr) auto; align-items:center; }
.world-admin-region-list button strong,.world-admin-region-list button span { grid-column:1; }
.world-admin-region-list button b { grid-column:2; grid-row:1/3; color:#0e7451; font-size:9px; text-align:right; }
.world-admin-region-list button.is-selected { border-color:#10171a; box-shadow:inset 4px 0 0 #0e7451; background:#edf6f2; }

.webtv-page .webtv-hero { min-height:420px; background-position:center 54%; }
.webtv-page .webtv-hero-copy {
  min-height:420px;
  padding-block:64px 48px;
  background:linear-gradient(90deg,rgba(7,12,15,.9) 0%,rgba(7,12,15,.72) 48%,rgba(7,12,15,.28) 100%);
}
.webtv-page .webtv-hero-copy>div { max-width:760px; padding:0; background:transparent; }
.webtv-page .webtv-hero h1 { color:#fff; text-shadow:0 2px 18px rgba(0,0,0,.5); }
.webtv-page .webtv-hero p { max-width:720px; color:#fff; font-size:17px; text-shadow:0 1px 4px rgba(0,0,0,.75); }
.webtv-page .webtv-map { padding:28px 0; border-top:4px solid #10171a; border-bottom:1px solid #c5d1ce; background:#f5f8f7; }
.webtv-page .webtv-map:before { display:none; }
.webtv-page .webtv-map-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; border-top:1px solid #becbc7; border-left:1px solid #becbc7; }
.webtv-page .webtv-map button {
  min-height:86px;
  display:grid;
  align-content:center;
  gap:5px;
  padding:16px 18px;
  border:0;
  border-right:1px solid #becbc7;
  border-bottom:1px solid #becbc7;
  border-radius:0;
  text-align:left;
  background:#fff;
  transition:color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.webtv-page .webtv-map button strong { font:700 21px/1.05 Georgia,'Times New Roman',serif; }
.webtv-page .webtv-map button small { color:#5a6964; font-size:10px; font-weight:750; }
.webtv-page .webtv-map button:hover,.webtv-page .webtv-map button:focus-visible {
  position:relative;
  z-index:1;
  color:#fff;
  outline:3px solid #efc832;
  outline-offset:-3px;
  background:#123d31;
  box-shadow:0 8px 20px rgba(16,23,26,.16);
  transform:translateY(-2px);
}
.webtv-page .webtv-map button.is-active { color:#fff; background:#0e7451; box-shadow:inset 6px 0 0 #efc832; }
.webtv-page .webtv-map button:hover small,.webtv-page .webtv-map button:focus-visible small,.webtv-page .webtv-map button.is-active small { color:rgba(255,255,255,.78); }
.webtv-page .webtv-video-stage video { width:100%; height:100%; display:block; object-fit:cover; background:#090d0f; }
.webtv-page .webtv-video-stage:has(video) .video-language-badge,.webtv-page .webtv-video-stage:has(video) .video-caption-badge { pointer-events:none; }
.webtv-page .webtv-video-body .video-licence-link { margin-left:12px; }

@media(max-width:1050px){
  .world-browser-layout{grid-template-columns:1fr}
  .world-map-column{border-right:0;border-bottom:1px solid #aebcb8}
  .world-map-stage{height:clamp(500px,64vh,700px);min-height:500px}
  .world-country-panel{grid-template-columns:repeat(2,minmax(0,1fr))}
  .world-country-panel>h2,.world-country-panel>.story-kicker,.world-country-panel>.world-country-actions,.world-country-panel>.world-country-reference,.world-country-panel>.world-country-latest{grid-column:1/-1}
}
@media(max-width:760px){
  .world-desk-page .weather-utility-widget{max-width:54vw}
  .world-desk-page .weather-utility-trigger{width:100%!important}
  .world-map-stage{height:470px;min-height:470px}
  .world-map-stage.is-fullscreen{height:100dvh;min-height:0}
  .world-map-scale{right:8px;bottom:8px;width:calc(100% - 16px)}
  .world-map-floating-controls{right:8px}
  .world-map-fullscreen{width:34px;height:34px;min-height:34px}
  .world-country-panel{grid-template-columns:1fr}
  .world-country-panel>*{grid-column:1!important}
  .webtv-page .webtv-map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .webtv-page .webtv-map button{min-height:78px;padding:13px}
  .webtv-page .webtv-map button strong{font-size:18px}
  .webtv-page .webtv-hero,.webtv-page .webtv-hero-copy{min-height:390px}
  .webtv-page .webtv-hero-copy{padding-inline:20px}
}
@media(max-width:480px){
  .world-map-stage{height:420px;min-height:420px}
  .world-map-layer-controls{right:48px;max-width:none}
  .world-map-scale>strong{display:none}
  .world-map-scale{padding-block:6px}
  .webtv-page .webtv-map-grid{grid-template-columns:1fr}
  .webtv-page .webtv-map button{min-height:68px}
}

/* v62 homepage taxonomy, municipal desk and MI Games preview */
@media (min-width: 1481px) {
  body .news-category-nav {
    min-height: 92px;
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    grid-auto-rows: 46px;
    gap: 0;
    overflow: visible;
    border-left: 1px solid #d8dedc;
    border-bottom: 1px solid #16191d;
  }

  body .news-category-nav a {
    width: 100%;
    min-width: 0;
    min-height: 46px;
    justify-content: center;
    padding: 7px 3px;
    border-right: 1px solid #d8dedc;
    border-bottom: 1px solid #d8dedc;
    font-size: clamp(8px, .64vw, 10px);
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
    transition: color .16s ease, background-color .16s ease, box-shadow .16s ease;
  }

  body .news-category-nav a:hover,
  body .news-category-nav a:focus-visible {
    position: relative;
    z-index: 1;
    color: #fff;
    background: #173a31;
    box-shadow: inset 0 -4px 0 #f0c64d;
  }

  body .news-category-nav a.is-current-feature {
    color: #fff;
    background: #c91e2b;
  }

  body .news-category-nav a[aria-current="page"]:not(.is-current-feature) {
    color: #fff;
    background: #173a31;
    box-shadow: inset 0 -4px 0 #f0c64d;
  }
}

.news-category-nav a.is-current-feature {
  color: #fff;
  background: #c91e2b;
  box-shadow: inset 5px 0 0 #f0c64d;
}

.news-v62 .reader-extra-links {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.municipality-board {
  margin: 34px 0;
  border: 2px solid #10171a;
  background: #fff;
}

.municipality-board-head {
  min-height: 92px;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  padding: 20px 22px 16px;
  border-bottom: 4px solid #0e7451;
}

.municipality-board-head h2 {
  margin: 5px 0 0;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 31px;
  line-height: 1.05;
}

.municipality-board-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  min-height: 370px;
}

.municipality-story-grid {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(250px, .7fr);
  grid-template-rows: repeat(3, minmax(112px, auto));
  border-right: 1px solid #bcc9c5;
}

.municipality-story-card {
  min-width: 0;
  display: grid;
  align-content: center;
  border-bottom: 1px solid #ccd5d2;
  background: #fff;
}

.municipality-story-card.is-lead {
  grid-row: 1 / span 3;
  align-content: start;
  border-right: 1px solid #ccd5d2;
  border-bottom: 0;
}

.municipality-story-image {
  aspect-ratio: 16 / 9;
  display: block;
  overflow: hidden;
  background: #dfe7e4;
}

.municipality-story-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.municipality-story-body {
  min-width: 0;
  padding: 15px 17px;
}

.municipality-story-body h3,
.municipality-story-body h4 {
  margin: 6px 0 8px;
  font-family: Georgia, 'Times New Roman', serif;
  line-height: 1.08;
}

.municipality-story-body h3 { font-size: 25px; }
.municipality-story-body h4 { font-size: 17px; }
.municipality-story-body p { margin: 0 0 12px; color: #50615c; line-height: 1.5; }

.municipality-story-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  color: #68746f;
  font-size: 10px;
  font-weight: 800;
}

.municipality-story-meta .is-live {
  padding: 3px 5px;
  color: #fff;
  background: #c91e2b;
}

.municipality-board-empty {
  grid-column: 1 / -1;
  grid-row: 1 / -1;
  min-height: 260px;
  display: grid;
  align-content: center;
  gap: 8px;
  padding: 34px;
}

.municipality-board-empty[hidden] { display: none; }
.municipality-board-empty strong { font: 700 25px/1.1 Georgia, 'Times New Roman', serif; }
.municipality-board-empty span { max-width: 620px; color: #53645f; line-height: 1.5; }

.municipality-pinned {
  min-width: 0;
  padding: 18px;
  background: #edf4f1;
}

.municipality-pinned > span {
  color: #c91e2b;
  font-size: 10px;
  font-weight: 950;
}

.municipality-pinned nav {
  display: grid;
  margin-top: 11px;
  border-top: 1px solid #aebcb8;
}

.municipality-pinned a {
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 9px 6px;
  border-bottom: 1px solid #aebcb8;
  font-size: 14px;
  font-weight: 900;
  transition: padding-left .16s ease, color .16s ease, background-color .16s ease;
}

.municipality-pinned a:hover,
.municipality-pinned a:focus-visible {
  padding-left: 11px;
  color: #fff;
  background: #173a31;
}

.municipality-pinned small { color: #65746f; font-size: 10px; }
.municipality-pinned a:hover small,
.municipality-pinned a:focus-visible small { color: #cfe2dc; }

.home-games-preview {
  display: grid;
  grid-template-columns: minmax(280px, .7fr) minmax(480px, 1.3fr);
  margin: 34px 0;
  border-top: 5px solid #f0c64d;
  border-bottom: 2px solid #10171a;
  background: #10171a;
}

.home-games-copy {
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 12px;
  padding: 28px;
  color: #fff;
}

.home-games-copy .story-kicker { color: #f0c64d; }
.home-games-copy h2 { margin: 0; color: #fff; font: 700 31px/1.04 Georgia, 'Times New Roman', serif; }
.home-games-copy p { margin: 0; color: #d6e0dd; line-height: 1.5; }
.home-games-copy .news-button { margin-top: 4px; color: #10171a; background: #f0c64d; }
.home-games-copy .news-button:hover,
.home-games-copy .news-button:focus-visible { color: #fff; background: #0e7451; }

.home-games-question {
  min-width: 0;
  display: grid;
  align-items: center;
  padding: 18px 22px;
  background: #f5f8f7;
}

.home-games-question .category-quiz-teaser {
  width: 100%;
  margin: 0;
  border: 0;
  border-left: 6px solid #1e78b7;
  background: #fff;
}

@media (max-width: 980px) {
  .municipality-board-body,
  .home-games-preview { grid-template-columns: 1fr; }
  .municipality-story-grid { border-right: 0; }
  .municipality-pinned { border-top: 1px solid #aebcb8; }
  .municipality-pinned nav { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .municipality-pinned a { display: grid; align-content: center; }
}

@media (max-width: 760px) {
  .news-v62 .reader-extra-links { grid-template-columns: 1fr; }
  .municipality-board { margin-inline: 0; }
  .municipality-board-head { align-items: start; flex-direction: column; gap: 12px; }
  .municipality-board-head h2 { font-size: 27px; }
  .municipality-story-grid { grid-template-columns: 1fr; grid-template-rows: auto; }
  .municipality-story-card.is-lead { grid-row: auto; border-right: 0; border-bottom: 1px solid #ccd5d2; }
  .municipality-pinned nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .municipality-pinned a { border-right: 1px solid #aebcb8; }
  .home-games-copy,
  .home-games-question { padding: 20px; }
  .home-games-copy h2 { font-size: 27px; }
}

@media (max-width: 430px) {
  .municipality-board-head,
  .municipality-story-body,
  .municipality-pinned,
  .home-games-copy,
  .home-games-question { padding-inline: 14px; }
  .municipality-pinned nav { grid-template-columns: 1fr; }
}

/* MWB News v63: 100 deterministic Spot 5 Differences picture puzzles. */
.spot-game-promo {
  position: relative;
  isolation: isolate;
  min-height: 360px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 30px;
  margin-top: 30px;
  padding: 38px;
  overflow: hidden;
  color: #fff;
  border-top: 6px solid #f0c64d;
  background: #10171a url('spot-difference-hero-v63.jpg') center 57% / cover no-repeat;
}

.spot-game-promo::before,
.spot-hero::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: '';
  background: linear-gradient(90deg, rgba(10, 20, 24, .94) 0%, rgba(10, 20, 24, .76) 48%, rgba(10, 20, 24, .18) 100%);
}

.spot-game-promo > div { max-width: 720px; }
.spot-game-promo .story-kicker,
.spot-hero .story-kicker { color: #f0c64d; }
.spot-game-promo h2 { max-width: 690px; margin: 8px 0 12px; color: #fff; font: 700 43px/1 Georgia, 'Times New Roman', serif; }
.spot-game-promo p { max-width: 610px; margin: 0 0 20px; color: #e2e9e7; font-size: 17px; line-height: 1.5; }
.spot-game-promo .news-button,
.spot-hero .news-button { color: #10171a; border-color: #f0c64d; background: #f0c64d; }
.spot-game-promo .news-button:hover,
.spot-game-promo .news-button:focus-visible,
.spot-hero .news-button:hover,
.spot-hero .news-button:focus-visible { color: #fff; border-color: #fff; background: #0e7451; transform: translateY(-2px); }
.spot-game-promo aside { display: grid; min-width: 160px; justify-items: end; align-self: start; padding-top: 10px; text-shadow: 0 2px 8px #000; }
.spot-game-promo aside strong { font: 700 76px/1 Georgia, 'Times New Roman', serif; }
.spot-game-promo aside span { font-size: 12px; font-weight: 900; text-transform: uppercase; }

.spot-main { width: min(100% - 40px, 1180px); margin: 0 auto; padding: 28px 0 56px; }
.spot-hero {
  position: relative;
  isolation: isolate;
  min-height: 430px;
  display: grid;
  grid-template-columns: minmax(0, 780px) auto;
  align-items: end;
  justify-content: space-between;
  gap: 30px;
  padding: 44px;
  overflow: hidden;
  color: #fff;
  border-top: 7px solid #d71920;
  background: #10171a url('spot-difference-hero-v63.jpg') center 56% / cover no-repeat;
}
.spot-hero h1 { max-width: 760px; margin: 10px 0 14px; color: #fff; font: 700 64px/.98 Georgia, 'Times New Roman', serif; }
.spot-hero p { max-width: 650px; margin: 0; color: #e1e9e7; font-size: 18px; line-height: 1.55; }
.spot-hero .news-button { align-self: end; white-space: nowrap; }

.spot-game-shell { margin-top: 30px; border: 1px solid #aebcb8; border-top: 6px solid #0c8658; background: #fff; }
.spot-game-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(520px, .85fr); gap: 26px; align-items: end; padding: 25px 28px; border-bottom: 1px solid #c5d0cd; }
.spot-game-head h2 { margin: 6px 0 0; font: 700 34px/1 Georgia, 'Times New Roman', serif; }
.spot-game-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; border-top: 1px solid #aebcb8; border-left: 1px solid #aebcb8; }
.spot-game-summary > div { min-width: 0; padding: 11px 12px; border-right: 1px solid #aebcb8; border-bottom: 1px solid #aebcb8; }
.spot-game-summary dt { color: #5c6d68; font-size: 9px; font-weight: 900; text-transform: uppercase; }
.spot-game-summary dd { margin: 5px 0 0; font: 700 22px/1 Georgia, 'Times New Roman', serif; }

.spot-toolbar { display: grid; grid-template-columns: minmax(230px, 1fr) repeat(3, auto); gap: 8px; align-items: end; padding: 14px 28px; background: #edf3f1; border-bottom: 1px solid #c5d0cd; }
.spot-toolbar label { display: grid; gap: 5px; font-size: 10px; font-weight: 900; text-transform: uppercase; }
.spot-toolbar select { width: 100%; min-height: 44px; padding: 8px 36px 8px 11px; border: 1px solid #8fa19c; background: #fff; font: inherit; font-size: 13px; font-weight: 800; }
.spot-tool-button { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 8px 13px; border: 1px solid #8fa19c; color: #10171a; background: #fff; font: inherit; font-size: 12px; font-weight: 900; cursor: pointer; }
.spot-tool-button > span[aria-hidden] { display: grid; width: 22px; height: 22px; place-items: center; color: #fff; background: #1e78b7; font-size: 15px; line-height: 1; }
.spot-tool-button:hover { color: #fff; border-color: #10171a; background: #10171a; transform: translateY(-1px); }
.spot-tool-button:focus-visible,
.spot-toolbar select:focus-visible { outline: 3px solid rgba(30, 120, 183, .28); outline-offset: 2px; }

.spot-status { min-height: 45px; margin: 0; padding: 13px 28px; color: #31443e; border-bottom: 1px solid #c5d0cd; font-weight: 800; }
.spot-picture-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 18px; background: #10171a; }
.spot-picture-grid figure { min-width: 0; margin: 0; border: 1px solid #6f7f7a; background: #fff; }
.spot-picture-grid figcaption { min-height: 38px; display: flex; align-items: center; justify-content: space-between; padding: 8px 11px; color: #fff; background: #173a31; font-size: 11px; font-weight: 950; text-transform: uppercase; }
.spot-picture { position: relative; aspect-ratio: 8 / 5; overflow: hidden; background: #dce8e4; cursor: crosshair; touch-action: manipulation; }
.spot-picture svg { display: block; width: 100%; height: 100%; pointer-events: none; user-select: none; }
.spot-loading { position: absolute; inset: 0; display: grid; place-items: center; color: #5f716c; font-size: 12px; font-weight: 900; }
.spot-marker-layer { position: absolute; inset: 0; pointer-events: none; }
.spot-found-marker,
.spot-miss-marker { position: absolute; z-index: 2; width: 36px; height: 36px; display: grid; place-items: center; border: 4px solid #fff; border-radius: 50%; color: #fff; background: #0c8658; box-shadow: 0 0 0 4px rgba(12, 134, 88, .85), 0 3px 9px rgba(0, 0, 0, .35); font-size: 13px; font-weight: 950; pointer-events: none; transform: translate(-50%, -50%); }
.spot-found-marker.is-hint { color: #10171a; background: #f0c64d; box-shadow: 0 0 0 4px rgba(240, 198, 77, .9), 0 0 0 11px rgba(240, 198, 77, .25); animation: spotHintPulse .72s ease-in-out infinite alternate; }
.spot-miss-marker { width: 28px; height: 28px; border-color: #fff; background: #c91e32; box-shadow: 0 0 0 4px rgba(201, 30, 50, .8); animation: spotMiss .52s ease-out both; }
.spot-miss-marker::before,
.spot-miss-marker::after { position: absolute; width: 14px; height: 3px; content: ''; background: #fff; }
.spot-miss-marker::before { transform: rotate(45deg); }
.spot-miss-marker::after { transform: rotate(-45deg); }
@keyframes spotHintPulse { to { transform: translate(-50%, -50%) scale(1.18); } }
@keyframes spotMiss { from { opacity: 1; transform: translate(-50%, -50%) scale(.7); } to { opacity: 0; transform: translate(-50%, -50%) scale(1.4); } }

.spot-round-foot { min-height: 48px; display: flex; justify-content: space-between; gap: 20px; align-items: center; padding: 11px 28px; border-top: 1px solid #c5d0cd; color: #596a65; font-size: 12px; }
.spot-round-foot strong { color: #c91e32; font-size: 18px; }
.spot-completion { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 24px; align-items: center; margin: 0 18px 18px; padding: 22px; border-left: 6px solid #0c8658; background: #e9f5ef; }
.spot-completion[hidden] { display: none; }
.spot-completion > strong { display: grid; width: 92px; height: 92px; place-items: center; color: #fff; background: #0c8658; font: 700 30px/1 Georgia, 'Times New Roman', serif; }
.spot-completion h3 { margin: 5px 0 8px; font: 700 27px/1.05 Georgia, 'Times New Roman', serif; }
.spot-completion p { margin: 0; color: #53645f; }
.spot-complete-actions { display: grid; gap: 8px; }
.spot-fair-play { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 22px; align-items: center; margin-top: 22px; padding: 17px 20px; border-left: 5px solid #c89513; background: #fff8dc; }
.spot-fair-play span { color: #53645f; line-height: 1.45; }
.spot-fair-play a { font-weight: 900; white-space: nowrap; }

@media (max-width: 980px) {
  .spot-game-head { grid-template-columns: 1fr; }
  .spot-game-summary { max-width: none; }
  .spot-toolbar { grid-template-columns: minmax(220px, 1fr) repeat(2, auto); }
  .spot-toolbar [data-spot-share] { grid-column: 2 / 4; }
}

@media (max-width: 760px) {
  .spot-game-promo { min-height: 330px; grid-template-columns: 1fr; align-items: end; padding: 25px 20px; }
  .spot-game-promo::before,
  .spot-hero::before { background: linear-gradient(90deg, rgba(10, 20, 24, .94), rgba(10, 20, 24, .62)); }
  .spot-game-promo h2 { font-size: 34px; }
  .spot-game-promo aside { position: absolute; top: 20px; right: 20px; min-width: 0; }
  .spot-game-promo aside strong { font-size: 48px; }
  .spot-main { width: min(100% - 24px, 1180px); padding-top: 16px; }
  .spot-hero { min-height: 410px; grid-template-columns: 1fr; padding: 28px 20px; background-position: 58% center; }
  .spot-hero h1 { font-size: 43px; }
  .spot-hero .news-button { justify-self: start; }
  .spot-game-head { padding: 20px 15px; }
  .spot-game-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .spot-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 12px 14px; }
  .spot-toolbar label { grid-column: 1 / -1; }
  .spot-toolbar [data-spot-share] { grid-column: 1 / -1; }
  .spot-tool-button { padding-inline: 9px; }
  .spot-status { padding-inline: 15px; }
  .spot-picture-grid { grid-template-columns: 1fr; padding: 10px; }
  .spot-round-foot { align-items: flex-start; flex-direction: column; gap: 4px; padding-inline: 15px; }
  .spot-completion { grid-template-columns: auto minmax(0, 1fr); margin-inline: 10px; padding: 16px; }
  .spot-complete-actions { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
  .spot-fair-play { grid-template-columns: 1fr; gap: 8px; }
  .spot-fair-play a { white-space: normal; }
}

@media (max-width: 400px) {
  .spot-game-promo h2 { font-size: 30px; }
  .spot-hero h1 { font-size: 38px; }
  .spot-game-summary dd { font-size: 19px; }
  .spot-found-marker { width: 32px; height: 32px; }
}

@media (prefers-reduced-motion: reduce) {
  .spot-found-marker.is-hint,
  .spot-miss-marker { animation: none; }
}

/* MWB News v64: bilingual daily crossword. */
.crossword-game-promo {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 150px auto;
  gap: 28px;
  align-items: center;
  margin-top: 24px;
  padding: 24px 28px;
  border: 1px solid #b8c5c1;
  border-left: 7px solid #c89513;
  background: #fff;
}
.crossword-game-promo h2 { margin: 5px 0 7px; font: 700 31px/1.08 Georgia, 'Times New Roman', serif; letter-spacing: 0; }
.crossword-game-promo p { max-width: 760px; margin: 0; color: #52635e; line-height: 1.45; }
.crossword-game-promo aside { display: grid; justify-items: center; padding: 10px 18px; border-inline: 1px solid #bdc9c6; }
.crossword-game-promo aside strong { color: #0c8658; font: 700 48px/1 Georgia, 'Times New Roman', serif; }
.crossword-game-promo aside span { color: #52635e; font-size: 10px; font-weight: 900; text-align: center; text-transform: uppercase; }
.crossword-game-promo .news-button { white-space: nowrap; }

.crossword-main { width: min(100% - 40px, 1240px); margin: 0 auto; padding: 28px 0 56px; }
.crossword-lead {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 38px;
  align-items: end;
  min-height: 250px;
  padding: 38px 42px;
  color: #fff;
  background: #10171a;
  border-bottom: 8px solid #0c8658;
  box-shadow: inset 150px 0 0 rgba(30, 120, 183, .08);
}
.crossword-lead::after { position: absolute; right: 0; bottom: -8px; width: 32%; height: 8px; content: ''; background: #c89513; }
.crossword-lead .story-kicker { color: #f0c64d; }
.crossword-lead h1 { max-width: 760px; margin: 8px 0 12px; color: #fff; font: 700 58px/.98 Georgia, 'Times New Roman', serif; letter-spacing: 0; }
.crossword-lead p { max-width: 690px; margin: 0; color: #d9e3e0; font-size: 17px; line-height: 1.5; }
.crossword-lead-mark { display: grid; grid-template-columns: repeat(4, 48px); grid-auto-rows: 48px; gap: 3px; align-self: center; }
.crossword-lead-mark span { display: grid; place-items: center; color: #10171a; background: #fff; font: 900 21px/1 Arial, sans-serif; }
.crossword-lead-mark span:nth-child(2),
.crossword-lead-mark span:nth-child(6) { color: #fff; background: #1e78b7; }
.crossword-lead-mark span:nth-child(3),
.crossword-lead-mark span:nth-child(7) { color: #fff; background: #0c8658; }
.crossword-lead-mark span:nth-child(4) { color: #10171a; background: #f0c64d; }

.crossword-shell { margin-top: 28px; border: 1px solid #aebcb8; border-top: 6px solid #1e78b7; background: #fff; }
.crossword-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(520px, .86fr); gap: 24px; align-items: end; padding: 24px 28px; border-bottom: 1px solid #c5d0cd; }
.crossword-head h2 { margin: 6px 0 5px; font: 700 31px/1.1 Georgia, 'Times New Roman', serif; letter-spacing: 0; }
.crossword-head p { margin: 0; color: #52635e; font-weight: 800; }
.crossword-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; border-top: 1px solid #aebcb8; border-left: 1px solid #aebcb8; }
.crossword-summary > div { min-width: 0; padding: 11px 12px; border-right: 1px solid #aebcb8; border-bottom: 1px solid #aebcb8; }
.crossword-summary dt { color: #5c6d68; font-size: 9px; font-weight: 900; text-transform: uppercase; }
.crossword-summary dd { margin: 5px 0 0; font: 700 21px/1 Georgia, 'Times New Roman', serif; }

.crossword-toolbar { display: grid; grid-template-columns: minmax(230px, 1fr) repeat(5, auto); gap: 7px; align-items: end; padding: 13px 28px; background: #edf3f1; border-bottom: 1px solid #c5d0cd; }
.crossword-toolbar label { display: grid; gap: 5px; font-size: 10px; font-weight: 900; text-transform: uppercase; }
.crossword-toolbar select { width: 100%; min-height: 44px; padding: 8px 36px 8px 11px; border: 1px solid #8fa19c; color: #10171a; background: #fff; font: inherit; font-size: 13px; font-weight: 800; }
.crossword-tool { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 8px 11px; border: 1px solid #8fa19c; color: #10171a; background: #fff; font: inherit; font-size: 11px; font-weight: 900; cursor: pointer; }
.crossword-tool > span[aria-hidden] { display: grid; width: 21px; height: 21px; place-items: center; color: #fff; background: #1e78b7; font-size: 13px; line-height: 1; }
.crossword-tool[data-cw-hint] > span[aria-hidden] { color: #10171a; background: #f0c64d; }
.crossword-tool[data-cw-reveal] > span[aria-hidden] { background: #c91e32; }
.crossword-tool:hover:not(:disabled) { color: #fff; border-color: #10171a; background: #10171a; transform: translateY(-1px); }
.crossword-tool:disabled { opacity: .42; cursor: default; }
.crossword-tool:focus-visible,
.crossword-toolbar select:focus-visible { outline: 3px solid rgba(30, 120, 183, .28); outline-offset: 2px; }
.crossword-status { min-height: 45px; margin: 0; padding: 13px 28px; color: #31443e; border-bottom: 1px solid #c5d0cd; font-weight: 800; }
.crossword-status.is-error { color: #9e1b2d; background: #fff0f2; }
.crossword-status.is-success { color: #075d40; background: #e9f6ef; }
.crossword-status.is-assisted { color: #6f5306; background: #fff8dc; }

.crossword-workspace { display: grid; grid-template-columns: minmax(470px, .92fr) minmax(420px, 1fr); gap: 0; align-items: start; }
.crossword-board-panel { min-width: 0; padding: 24px; background: #e8efed; border-right: 1px solid #c5d0cd; }
.crossword-grid {
  --cw-cols: 15;
  --cw-rows: 15;
  display: grid;
  grid-template-columns: repeat(var(--cw-cols), minmax(0, 1fr));
  width: min(100%, 650px);
  aspect-ratio: var(--cw-cols) / var(--cw-rows);
  margin: 0 auto;
  gap: 1px;
  overflow: hidden;
  border: 4px solid #10171a;
  background: #10171a;
  box-shadow: 0 12px 30px rgba(16, 23, 26, .16);
}
.crossword-block { min-width: 0; min-height: 0; background: #10171a; }
.crossword-cell { position: relative; min-width: 0; min-height: 0; overflow: hidden; background: #fff; }
.crossword-cell input { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; border-radius: 0; color: #10171a; background: transparent; font: 900 21px/1 Arial, sans-serif; letter-spacing: 0; text-align: center; text-transform: uppercase; caret-color: transparent; }
.crossword-cell input:focus { outline: 0; }
.crossword-cell-number { position: absolute; z-index: 2; top: 1px; left: 2px; color: #32433e; font: 900 8px/1 Arial, sans-serif; pointer-events: none; }
.crossword-grid.is-dense .crossword-cell input { font-size: 17px; }
.crossword-grid.is-dense .crossword-cell-number { font-size: 6px; }
.crossword-grid.is-ultra-dense .crossword-cell input { font-size: 15px; }
.crossword-cell.is-active-word { background: #dff0ea; }
.crossword-cell.is-active-cell { z-index: 3; background: #f5d762; box-shadow: inset 0 0 0 3px #10171a; }
.crossword-cell.is-wrong { background: #ffdadd; box-shadow: inset 0 0 0 3px #c91e32; }
.crossword-cell.is-hinted::after { position: absolute; right: 2px; bottom: 1px; z-index: 2; width: 5px; height: 5px; content: ''; background: #c89513; border-radius: 50%; }
.crossword-cell.is-complete { background: #edf8f3; }
.crossword-cell.is-complete.is-active-word { background: #dff0ea; }
.crossword-cell.is-complete.is-active-cell { background: #f5d762; }

.crossword-clues { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-width: 0; max-height: 700px; overflow: auto; background: #fff; }
.crossword-clues > section { min-width: 0; }
.crossword-clues > section + section { border-left: 1px solid #c5d0cd; }
.crossword-clues h3 { position: sticky; z-index: 3; top: 0; margin: 0; padding: 16px 18px; color: #fff; background: #173a31; font: 700 24px/1 Georgia, 'Times New Roman', serif; letter-spacing: 0; }
.crossword-clues ol { margin: 0; padding: 0; list-style: none; }
.crossword-clues li { border-bottom: 1px solid #d4ddda; }
.crossword-clues button { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; gap: 9px; align-items: start; width: 100%; min-height: 58px; padding: 11px 12px; border: 0; color: #10171a; background: #fff; font: inherit; line-height: 1.35; text-align: left; cursor: pointer; }
.crossword-clues button strong { display: grid; width: 26px; height: 26px; place-items: center; color: #fff; background: #1e78b7; font-size: 11px; }
.crossword-clues button span { min-width: 0; font-size: 12px; font-weight: 750; }
.crossword-clues button small { padding-top: 5px; color: #64746f; font-size: 9px; font-weight: 900; }
.crossword-clues button:hover { background: #edf5f2; }
.crossword-clues button.is-active { background: #fff3c4; box-shadow: inset 5px 0 0 #c89513; }
.crossword-clues button.is-active strong { color: #10171a; background: #f0c64d; }
.crossword-clues button:focus-visible { position: relative; z-index: 2; outline: 3px solid rgba(30, 120, 183, .3); outline-offset: -3px; }

.crossword-completion { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 22px; align-items: center; margin: 0; padding: 22px 26px; border-top: 1px solid #b8c7c2; border-left: 7px solid #0c8658; background: #e9f5ef; }
.crossword-completion[hidden] { display: none; }
.crossword-completion.is-assisted { border-left-color: #c89513; background: #fff8dc; }
.crossword-completion > strong { display: grid; width: 74px; height: 74px; place-items: center; color: #fff; background: #0c8658; font: 700 30px/1 Georgia, 'Times New Roman', serif; }
.crossword-completion.is-assisted > strong { color: #10171a; background: #f0c64d; }
.crossword-completion h3 { margin: 5px 0; font: 700 27px/1.05 Georgia, 'Times New Roman', serif; }
.crossword-completion p { margin: 0; color: #52635e; }
.crossword-complete-actions { display: flex; gap: 8px; }
.crossword-privacy { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 22px; align-items: center; margin-top: 22px; padding: 17px 20px; border-left: 5px solid #c89513; background: #fff8dc; }
.crossword-privacy span { color: #52635e; line-height: 1.45; }
.crossword-privacy a { font-weight: 900; white-space: nowrap; }

@media (max-width: 1050px) {
  .crossword-game-promo { grid-template-columns: minmax(0, 1fr) 130px; }
  .crossword-game-promo .news-button { grid-column: 1 / -1; justify-self: start; }
  .crossword-head { grid-template-columns: 1fr; }
  .crossword-toolbar { grid-template-columns: minmax(220px, 1fr) repeat(3, auto); }
  .crossword-toolbar [data-cw-reveal],
  .crossword-toolbar [data-cw-reset] { grid-column: auto; }
  .crossword-workspace { grid-template-columns: 1fr; }
  .crossword-board-panel { border-right: 0; border-bottom: 1px solid #c5d0cd; }
  .crossword-grid { max-width: 690px; }
  .crossword-clues { max-height: none; }
}

@media (max-width: 760px) {
  .crossword-game-promo { grid-template-columns: 1fr; gap: 15px; padding: 21px 18px; }
  .crossword-game-promo h2 { font-size: 27px; }
  .crossword-game-promo aside { grid-template-columns: auto minmax(0, 1fr); justify-items: start; gap: 12px; align-items: center; border: 0; border-top: 1px solid #bdc9c6; border-bottom: 1px solid #bdc9c6; }
  .crossword-game-promo aside strong { font-size: 38px; }
  .crossword-game-promo aside span { text-align: left; }
  .crossword-main { width: min(100% - 24px, 1240px); padding-top: 16px; }
  .crossword-lead { grid-template-columns: 1fr; min-height: 330px; padding: 27px 20px; }
  .crossword-lead h1 { font-size: 42px; }
  .crossword-lead-mark { grid-template-columns: repeat(7, minmax(28px, 38px)); grid-auto-rows: 38px; }
  .crossword-head { padding: 20px 15px; }
  .crossword-head h2 { font-size: 27px; }
  .crossword-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .crossword-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 12px 14px; }
  .crossword-toolbar label { grid-column: 1 / -1; }
  .crossword-tool { padding-inline: 8px; }
  .crossword-status { padding-inline: 15px; }
  .crossword-board-panel { padding: 10px; }
  .crossword-grid { border-width: 3px; box-shadow: none; }
  .crossword-cell input { font-size: 18px; }
  .crossword-grid.is-dense .crossword-cell input { font-size: 13px; }
  .crossword-grid.is-ultra-dense .crossword-cell input { font-size: 11px; }
  .crossword-cell-number { top: 0; left: 1px; font-size: 6px; }
  .crossword-grid.is-dense .crossword-cell-number { font-size: 5px; }
  .crossword-cell.is-active-cell { box-shadow: inset 0 0 0 2px #10171a; }
  .crossword-clues { grid-template-columns: 1fr; }
  .crossword-clues > section + section { border-left: 0; border-top: 1px solid #c5d0cd; }
  .crossword-clues h3 { position: static; font-size: 22px; }
  .crossword-clues button { min-height: 54px; }
  .crossword-completion { grid-template-columns: auto minmax(0, 1fr); padding: 18px 15px; }
  .crossword-complete-actions { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
  .crossword-privacy { grid-template-columns: 1fr; gap: 7px; }
  .crossword-privacy a { white-space: normal; }
}

@media (max-width: 400px) {
  .crossword-lead h1 { font-size: 37px; }
  .crossword-lead-mark { grid-template-columns: repeat(7, minmax(27px, 1fr)); width: 100%; }
  .crossword-summary dd { font-size: 18px; }
  .crossword-tool { font-size: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .crossword-tool { transition: none; }
}

/* MWB News v64: grouped Daily MI Gameroom. */
.gameroom-jump-nav {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 18px;
  border-top: 1px solid #aebcb8;
  border-left: 1px solid #aebcb8;
}
.gameroom-jump-nav a {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-height: 58px;
  padding: 9px 14px;
  color: #10171a;
  background: #fff;
  border-right: 1px solid #aebcb8;
  border-bottom: 1px solid #aebcb8;
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
}
.gameroom-jump-nav a strong {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  color: #fff;
  background: #10171a;
  font-size: 11px;
}
.gameroom-jump-nav a:hover,
.gameroom-jump-nav a:focus-visible { color: #fff; background: #1e78b7; }
.gameroom-jump-nav a:hover strong,
.gameroom-jump-nav a:focus-visible strong { color: #10171a; background: #f0c64d; }
.gameroom-jump-nav a:focus-visible { position: relative; z-index: 2; outline: 3px solid rgba(30, 120, 183, .32); outline-offset: 2px; }

.gameroom-group {
  margin-top: 48px;
  padding-top: 23px;
  border-top: 5px solid #10171a;
  scroll-margin-top: 145px;
}
.gameroom-group-daily { border-top-color: #c89513; }
.gameroom-group-challenges { border-top-color: #1e78b7; }
.gameroom-group-quick { border-top-color: #0c8658; }
.gameroom-group-head {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  max-width: 920px;
}
.gameroom-group-head > strong {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  color: #fff;
  background: #10171a;
  font: 900 13px/1 Arial, sans-serif;
}
.gameroom-group-daily .gameroom-group-head > strong { color: #10171a; background: #f0c64d; }
.gameroom-group-challenges .gameroom-group-head > strong { background: #1e78b7; }
.gameroom-group-quick .gameroom-group-head > strong { background: #0c8658; }
.gameroom-group-head h2 {
  margin: 4px 0 6px;
  font: 700 32px/1.04 Georgia, 'Times New Roman', serif;
  letter-spacing: 0;
}
.gameroom-group-head p { max-width: 760px; margin: 0; color: #52635e; line-height: 1.5; }
.gameroom-group > .crossword-game-promo,
.gameroom-group > .spot-game-promo,
.gameroom-group > .scavenger-public-band,
.gameroom-group > .quiz-arena,
.gameroom-group > .challenge-studio,
.gameroom-group > .games-quiz-section,
.gameroom-group > .games-secondary-grid { margin-top: 24px; }
.gameroom-group > .spot-game-promo,
.gameroom-group > .quiz-arena,
.gameroom-group > .challenge-studio,
.gameroom-group > .games-secondary-grid { margin-top: 30px; }

@media (max-width: 620px) {
  .gameroom-jump-nav {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
  }
  .gameroom-jump-nav a { flex: 0 0 178px; scroll-snap-align: start; }
  .gameroom-group { margin-top: 36px; padding-top: 18px; scroll-margin-top: 105px; }
  .gameroom-group-head { grid-template-columns: 42px minmax(0, 1fr); gap: 11px; }
  .gameroom-group-head > strong { width: 40px; height: 40px; }
  .gameroom-group-head h2 { font-size: 27px; }
  .gameroom-group-head p { font-size: 14px; }
  .gameroom-group > .crossword-game-promo,
  .gameroom-group > .spot-game-promo,
  .gameroom-group > .scavenger-public-band,
  .gameroom-group > .quiz-arena,
  .gameroom-group > .challenge-studio,
  .gameroom-group > .games-quiz-section,
  .gameroom-group > .games-secondary-grid { margin-top: 20px; }
  .gameroom-group > .spot-game-promo,
  .gameroom-group > .quiz-arena,
  .gameroom-group > .challenge-studio,
  .gameroom-group > .games-secondary-grid { margin-top: 26px; }
}

/* v66 compact global weather, stable category groups and distinct editorial desks */
.news-utility-leading {
  min-width: 0;
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  gap: 10px;
}

.weather-utility-widget,
.world-desk-page .weather-utility-widget {
  position: relative;
  width: max-content !important;
  max-width: min(440px, 46vw) !important;
  min-width: 0;
  display: inline-flex !important;
  flex: 0 1 auto !important;
  padding: 0 !important;
  border: 0 !important;
}

.weather-utility-trigger,
.world-desk-page .weather-utility-trigger {
  width: max-content !important;
  max-width: 100% !important;
  min-width: 0;
  flex: 0 1 auto;
  padding: 0 6px 0 9px !important;
  overflow: hidden;
  border-left: 2px solid #cf202d !important;
  white-space: nowrap;
}

.weather-utility-trigger .weather-utility-detail {
  max-width: 190px;
  flex: 0 1 auto;
}

.weather-utility-chevron {
  display: none !important;
}

.news-category-nav {
  min-height: 0;
  display: grid;
  gap: 0;
  overflow: visible;
  border-top: 1px solid #16191d;
  border-bottom: 1px solid #16191d;
}

.news-category-group {
  min-width: 0;
  min-height: 44px;
  display: flex;
  align-items: stretch;
  overflow-x: auto;
  scrollbar-width: thin;
}

.news-category-group + .news-category-group {
  border-top: 1px solid #ccd5d2;
}

.news-category-group-label {
  min-width: 82px;
  display: grid;
  flex: 0 0 82px;
  place-items: center;
  padding: 7px 9px;
  color: #fff;
  background: #10171a;
  font-size: 9px;
  line-height: 1;
  text-align: center;
}

.news-category-group-discover .news-category-group-label {
  color: #10171a;
  background: #f0c64d;
}

.news-category-nav .news-category-group a,
body .news-category-nav .news-category-group a {
  width: auto;
  min-width: 0;
  min-height: 44px;
  display: inline-flex;
  flex: 1 1 0;
  justify-content: center;
  padding: 7px 3px;
  border-right: 1px solid #d8dedc;
  border-bottom: 0;
  color: #17201d;
  background: #fff;
  font-size: clamp(8px, .64vw, 10px);
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: normal;
}

.news-category-group-discover a,
body .news-category-nav .news-category-group-discover a {
  background: #f4f8f6;
}

.news-category-nav .news-category-group a:hover,
.news-category-nav .news-category-group a:focus-visible {
  color: #fff;
  background: #173a31;
  box-shadow: inset 0 -4px 0 #f0c64d;
}

.news-category-nav .news-category-group a[aria-current="page"],
.news-v32 .news-category-nav .news-category-group a[aria-current="page"] {
  color: #fff;
  border-left: 0;
  background: #173a31;
  box-shadow: inset 0 -4px 0 #f0c64d;
}

.news-category-nav .news-category-group a.is-current-feature {
  color: #fff;
  background: #c91e2b;
  box-shadow: inset 0 -4px 0 #f0c64d;
}

.category-desk-page {
  --category-accent: #176b57;
  --category-accent-2: #d6a51b;
  --category-soft: #edf5f2;
  --category-ink: #10231e;
}

.category-desk-page[data-category-theme="politics"] { --category-accent: #9f2438; --category-accent-2: #274e78; --category-soft: #f8ecef; --category-ink: #35141c; }
.category-desk-page[data-category-theme="society"] { --category-accent: #006f6b; --category-accent-2: #e1a728; --category-soft: #eaf5f3; --category-ink: #123b39; }
.category-desk-page[data-category-theme="health"] { --category-accent: #247443; --category-accent-2: #d9574f; --category-soft: #edf6ef; --category-ink: #173824; }
.category-desk-page[data-category-theme="environment"] { --category-accent: #397343; --category-accent-2: #1988a5; --category-soft: #edf5e9; --category-ink: #18351d; }
.category-desk-page[data-category-theme="science"] { --category-accent: #176da0; --category-accent-2: #d69b19; --category-soft: #edf5f9; --category-ink: #123145; }
.category-desk-page[data-category-theme="education"] { --category-accent: #4f5299; --category-accent-2: #d5a31f; --category-soft: #f1f0f8; --category-ink: #292b55; }
.category-desk-page[data-category-theme="culture"] { --category-accent: #8b315f; --category-accent-2: #db8f25; --category-soft: #f8eef3; --category-ink: #3e1c30; }
.category-desk-page[data-category-theme="automotive"] { --category-accent: #30383d; --category-accent-2: #cf343d; --category-soft: #eef0f1; --category-ink: #171d20; }
.category-desk-page[data-category-theme="municipalities"] { --category-accent: #176b57; --category-accent-2: #287bad; --category-soft: #ecf5f2; --category-ink: #11342c; }

.category-desk-page .reader-shell {
  width: min(1260px, calc(100% - 40px));
}

.category-desk-page .archive-heading {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
  align-items: end;
  margin: 10px 0 28px;
  padding: 26px 28px 24px;
  border: 0;
  border-top: 4px solid var(--category-accent);
  background: var(--category-soft);
}

.category-desk-page .archive-heading-top {
  grid-column: 1 / -1;
}

.category-desk-page .archive-heading h1 {
  margin: 0;
  color: var(--category-ink);
  font-size: clamp(38px, 5vw, 66px);
  line-height: .98;
}

.category-desk-page .archive-heading > p {
  display: none;
}

.category-desk-page .story-kicker,
.category-desk-page .desk-rss-link,
.category-desk-page .reader-section-head.compact p strong {
  color: var(--category-accent);
}

.category-desk-page .desk-rss-link {
  border: 1px solid var(--category-accent);
  background: #fff;
}

.category-desk-page .archive-category-rail {
  border-top-color: var(--category-accent);
}

.category-desk-page .archive-category-rail a:hover,
.category-desk-page .archive-category-rail a:focus-visible,
.category-desk-page .archive-category-rail a[aria-current="page"] {
  border-left-color: var(--category-accent);
  background: var(--category-soft);
}

.category-desk-page .reader-section-head {
  border-bottom-color: var(--category-accent);
}

.category-desk-page .live-story-card {
  border-top: 4px solid var(--category-accent);
  box-shadow: none;
}

.category-desk-page[data-desk-layout="standard-grid"] .archive-stream,
.category-desk-page[data-desk-layout="lead-grid"] .archive-stream {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.category-desk-page[data-desk-layout="lead-grid"] .archive-stream > .live-story-card:first-child {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(320px, 1.15fr) minmax(0, 1fr);
}

.category-desk-page[data-desk-layout="lead-grid"] .archive-stream > .live-story-card:first-child .live-story-image {
  height: 100%;
  min-height: 330px;
  aspect-ratio: auto;
}

.category-desk-page .live-story-card:nth-child(even) {
  border-top-color: var(--category-accent-2);
}

.story-subject-date,
.search-result-subject-date,
.feature-article-subject-date {
  color: var(--category-accent, #176b57);
  font-weight: 850;
}

.special-desk-page {
  --special-accent: #176b57;
  --special-accent-2: #e2aa20;
  --special-soft: #edf5f2;
  background: #f4f6f4;
}

.travel-desk-page { --special-accent: #176d92; --special-accent-2: #e0aa2b; --special-soft: #eaf4f7; }
.food-desk-page { --special-accent: #a53b35; --special-accent-2: #4c7a45; --special-soft: #f8efeb; }

.special-desk-hero {
  position: relative;
  min-height: 430px;
  display: grid;
  align-items: end;
  isolation: isolate;
  overflow: hidden;
  color: #fff;
  background-position: center;
  background-size: cover;
}

.travel-desk-page .special-desk-hero { background-image: url('news-travel-ferry-v37.webp'); }
.food-desk-page .special-desk-hero { background-image: url('news-food-safety-v37.webp'); }

.special-desk-hero::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: '';
  background: rgba(10, 18, 20, .66);
}

.special-desk-hero > div {
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
  padding: 72px 0 54px;
}

.special-desk-hero h1 {
  max-width: 820px;
  margin: 10px 0 14px;
  color: #fff;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(43px, 6vw, 72px);
  line-height: .98;
}

.special-desk-hero p {
  max-width: 720px;
  margin: 0;
  color: rgba(255, 255, 255, .84);
  font-size: 17px;
  line-height: 1.55;
}

.special-desk-main {
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
  padding: 34px 0 72px;
}

.special-desk-status {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  margin-bottom: 34px;
  padding: 18px 20px;
  border-left: 6px solid var(--special-accent-2);
  background: #fff;
}

.special-desk-status strong { color: var(--special-accent); font-size: 12px; }
.special-desk-status p { margin: 0; color: #45534f; line-height: 1.55; }

.special-desk-layout {
  display: grid;
  grid-template-columns: minmax(240px, .42fr) minmax(0, 1fr);
  gap: 34px;
  align-items: start;
}

.special-desk-guide {
  position: sticky;
  top: 18px;
  padding-top: 18px;
  border-top: 6px solid var(--special-accent);
}

.special-desk-guide h2,
.special-desk-reporting h2 {
  margin: 7px 0 12px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 34px;
  line-height: 1.04;
}

.special-desk-guide p { color: #52615c; line-height: 1.55; }
.special-desk-guide ul { display: grid; gap: 10px; padding-left: 20px; color: #34433e; line-height: 1.45; }
.special-desk-reporting .reader-section-head { border-bottom-color: var(--special-accent); }
.special-desk-reporting .live-story-card { border-top: 4px solid var(--special-accent); box-shadow: none; }

.travel-booking-status {
  margin-top: 38px;
  padding: 28px;
  color: #fff;
  border-left: 8px solid var(--special-accent-2);
  background: #102b35;
}

.travel-booking-status h2 { margin: 5px 0 10px; color: #fff; font-family: Georgia, 'Times New Roman', serif; font-size: 32px; }
.travel-booking-status p { max-width: 850px; margin: 0; color: rgba(255, 255, 255, .82); line-height: 1.55; }

.ecosystem-story-band,
.ecosystem-story-band h2,
.ecosystem-story-band p,
.ecosystem-story-band nav a,
.ecosystem-story-band nav b,
.ecosystem-story-band nav span {
  color: #fff;
}

.ecosystem-story-band .story-kicker { color: #f0c64d; }
.ecosystem-story-band nav a { background: #17201d; }

@media (min-width: 1481px) {
  body .news-category-nav {
    min-height: 0;
    display: grid;
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
    overflow: visible;
    border-left: 1px solid #d8dedc;
  }
}

@media (max-width: 1480px) {
  body .news-category-nav {
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    overflow-y: auto;
  }

  .news-category-nav .news-category-group {
    min-height: 0;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: stretch;
    overflow: visible;
  }

  .news-category-group-label {
    min-width: 0;
    min-height: 34px;
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-start;
    padding: 8px 16px;
    text-align: left;
  }

  .news-category-nav .news-category-group a,
  body .news-category-nav .news-category-group a {
    width: 100%;
    min-height: 48px;
    flex: 0 0 auto;
    justify-content: flex-start;
    padding: 11px 18px;
    font-size: 15px;
    text-align: left;
  }

  .category-desk-page .archive-heading,
  .special-desk-layout {
    grid-template-columns: 1fr;
  }

  .special-desk-guide { position: static; }
}

@media (max-width: 760px) {
  .news-utility-leading { gap: 5px; }
  .weather-utility-widget,
  .world-desk-page .weather-utility-widget { max-width: 52vw !important; }
  .weather-utility-trigger .weather-utility-label,
  .weather-utility-trigger .weather-utility-condition,
  .weather-utility-trigger .weather-utility-detail { display: none !important; }
  .weather-utility-trigger,
  .world-desk-page .weather-utility-trigger { width: max-content !important; }
  .category-desk-page .reader-shell,
  .special-desk-main,
  .special-desk-hero > div { width: min(100% - 28px, 1180px); }
  .category-desk-page .archive-heading { padding: 20px 17px; }
  .category-desk-page .archive-heading h1 { font-size: 40px; }
  .category-desk-page[data-desk-layout="standard-grid"] .archive-stream,
  .category-desk-page[data-desk-layout="lead-grid"] .archive-stream { grid-template-columns: 1fr; }
  .category-desk-page[data-desk-layout="lead-grid"] .archive-stream > .live-story-card:first-child { grid-column: auto; grid-template-columns: 1fr; }
  .category-desk-page[data-desk-layout="lead-grid"] .archive-stream > .live-story-card:first-child .live-story-image { min-height: 0; aspect-ratio: 16 / 9; }
  .special-desk-hero { min-height: 390px; }
  .special-desk-hero h1 { font-size: 42px; }
  .special-desk-status { grid-template-columns: 1fr; }
  .special-desk-reporting .archive-stream { grid-template-columns: 1fr; }
}

/* v68 country-aware calendar, selected-day agenda and daily reader features. */
.calendar-head-controls {
  display: flex;
  align-items: end;
  justify-content: flex-end;
  gap: 12px;
}

.calendar-country-control {
  min-width: 210px;
  display: grid;
  gap: 5px;
  color: #53605d;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.calendar-country-control select {
  width: 100%;
  min-height: 42px;
  padding: 8px 34px 8px 10px;
  color: #17201d;
  border: 1px solid #9eaaa7;
  border-radius: 3px;
  background: #fff;
  font: 800 12px/1.2 Arial, sans-serif;
}

.calendar-country-control select:focus-visible {
  border-color: #0c8658;
  outline: 2px solid #f0c64d;
  outline-offset: 2px;
}

.calendar-day.has-observance > i {
  position: absolute;
  top: 7px;
  right: 7px;
  width: 7px;
  height: 7px;
  border: 1px solid #fff;
  border-radius: 50%;
  background: #c49313;
  box-shadow: 0 0 0 1px #8a6810;
}

.calendar-day.is-selected.has-observance > i {
  border-color: #0c8658;
  background: #fff;
  box-shadow: none;
}

.calendar-day-agenda {
  min-width: 0;
  display: grid;
  gap: 14px;
  margin-top: 5px;
}

.calendar-day-agenda > section {
  display: grid;
  gap: 7px;
  padding-top: 13px;
  border-top: 1px solid #cbd6d3;
}

.calendar-day-agenda h4 {
  margin: 0;
  color: #53605d;
  font: 900 10px/1.2 Arial, sans-serif;
  text-transform: uppercase;
}

.calendar-agenda-item {
  width: 100%;
  min-width: 0;
  display: grid;
  gap: 3px;
  padding: 10px 11px;
  color: #17201d;
  border: 1px solid #c5d0cd;
  border-left: 4px solid #0c8658;
  border-radius: 3px;
  background: #fff;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: color 150ms ease, border-color 150ms ease, background 150ms ease, transform 150ms ease;
}

.calendar-agenda-item > span {
  color: #c53546;
  font-size: 9px;
  font-weight: 900;
}

.calendar-agenda-item > b {
  overflow-wrap: anywhere;
  font: 700 15px/1.18 Georgia, 'Times New Roman', serif;
}

.calendar-agenda-item > small {
  color: #5d6864;
  font-size: 10px;
  line-height: 1.35;
}

.calendar-agenda-item:hover,
.calendar-agenda-item:focus-visible {
  color: #fff;
  border-color: #17201d;
  outline: 2px solid #f0c64d;
  outline-offset: 2px;
  background: #17201d;
  transform: translateX(2px);
}

.calendar-agenda-item:hover > small,
.calendar-agenda-item:focus-visible > small { color: rgba(255, 255, 255, .78); }

.calendar-agenda-empty,
.calendar-country-note {
  margin: 0;
  color: #5d6864;
  font-size: 11px;
  line-height: 1.45;
}

.calendar-country-note {
  padding-top: 13px;
  border-top: 1px solid #cbd6d3;
}

.calendar-detail-dialog {
  width: min(620px, calc(100vw - 28px));
  max-height: min(760px, calc(100vh - 28px));
  margin: auto;
  padding: 0;
  color: #17201d;
  border: 0;
  border-top: 7px solid #0c8658;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 24px 80px rgba(4, 20, 15, .34);
}

.calendar-detail-dialog::backdrop { background: rgba(5, 16, 13, .72); }

.calendar-dialog-close {
  position: absolute;
  z-index: 2;
  top: 12px;
  right: 12px;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  padding: 0;
  color: #17201d;
  border: 1px solid #aeb9b6;
  border-radius: 50%;
  background: #fff;
  font: 700 25px/1 Arial, sans-serif;
  cursor: pointer;
}

.calendar-dialog-close:hover,
.calendar-dialog-close:focus-visible {
  color: #fff;
  border-color: #17201d;
  outline: 2px solid #f0c64d;
  background: #17201d;
}

[data-calendar-detail-content] {
  display: grid;
  gap: 12px;
  padding: 34px;
}

[data-calendar-detail-content] h2 {
  max-width: 520px;
  margin: 0;
  padding-right: 30px;
  font: 700 36px/1.04 Georgia, 'Times New Roman', serif;
  overflow-wrap: anywhere;
}

[data-calendar-detail-content] p { margin: 0; line-height: 1.55; }
.calendar-detail-date { color: #c53546; font-weight: 900; }
.calendar-detail-place { color: #53605d; font-size: 13px; }
.calendar-detail-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.calendar-detail-actions a,
.calendar-detail-actions button {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 12px;
  color: #17201d;
  border: 1px solid #aeb9b6;
  border-radius: 3px;
  background: #fff;
  font: 900 11px/1.2 Arial, sans-serif;
  text-decoration: none;
  cursor: pointer;
}
.calendar-detail-actions a:hover,
.calendar-detail-actions a:focus-visible,
.calendar-detail-actions button:hover,
.calendar-detail-actions button:focus-visible { color: #fff; border-color: #0c8658; outline: 2px solid #f0c64d; outline-offset: 2px; background: #0c8658; }

.audience-directory {
  margin-top: 20px;
  padding: 24px;
  border-top: 5px solid #10171a;
  background: #e9f0ee;
}

.audience-directory .reader-section-head { margin-bottom: 18px; }
.audience-directory-grid { gap: 10px; border: 0; }

.audience-directory-grid > a {
  min-height: 168px;
  padding: 22px;
  border: 1px solid #bcc9c5;
  border-top-width: 5px;
  border-radius: 3px;
  box-shadow: 0 4px 0 rgba(16, 23, 26, .05);
}

.audience-directory-grid > a:nth-child(8) { border-top-color: #7557a4; }
.audience-directory-grid > a > span { letter-spacing: .04em; }
.audience-directory-grid > a > strong { font-size: 24px; line-height: 1.08; }
.audience-directory-grid > a > small { font-size: 13px; line-height: 1.5; }
.audience-directory-grid > a:hover > strong,
.audience-directory-grid > a:focus-visible > strong { color: #fff; }
.audience-directory-grid > a:hover > span,
.audience-directory-grid > a:focus-visible > span { color: #f0c64d; }

.daily-recipe-feature {
  margin: 26px 0 34px;
  border-top: 7px solid #a53b35;
  border-bottom: 1px solid #c9d2cf;
  background: #fff;
}

.daily-recipe-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 30px;
  align-items: end;
  padding: 30px;
  background: #f5f1e8;
}

.daily-recipe-head h2 {
  margin: 5px 0 8px;
  font: 700 42px/1.04 Georgia, 'Times New Roman', serif;
}

.daily-recipe-head p { max-width: 720px; margin: 0; color: #53605d; line-height: 1.5; }
.daily-recipe-head dl { display: flex; gap: 26px; margin: 0; }
.daily-recipe-head dl > div { min-width: 90px; padding-left: 12px; border-left: 3px solid #a53b35; }
.daily-recipe-head dt { color: #6a716e; font-size: 10px; font-weight: 900; text-transform: uppercase; }
.daily-recipe-head dd { margin: 4px 0 0; font: 700 17px/1.15 Georgia, 'Times New Roman', serif; }

.daily-recipe-body {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 0;
}

.daily-recipe-body > section { padding: 28px 30px; }
.daily-recipe-body > section + section { border-left: 1px solid #c9d2cf; }
.daily-recipe-body h3 { margin: 0 0 14px; font: 700 25px/1.1 Georgia, 'Times New Roman', serif; }
.daily-quantity-note { margin: -4px 0 14px; color: #58645f; font-size: 12px; font-weight: 700; line-height: 1.4; }

/* v114 Daily Brief horoscopes */
.daily-horoscope-brief {
  border-top: 5px solid #08744d;
  background: #f5f9f7;
}
.daily-horoscope-brief .reader-section-head {
  align-items: end;
  margin-bottom: 8px;
}
.daily-horoscope-intro {
  max-width: 760px;
  margin: 0 0 18px;
  color: #52615c;
  line-height: 1.5;
}
.zodiac-grid.zodiac-grid-brief {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  background: #fff;
}
.zodiac-grid.zodiac-grid-brief article {
  min-height: 150px;
  padding: 16px;
  border-top: 3px solid #cf202d;
}
.zodiac-grid.zodiac-grid-brief article:nth-child(4n + 2) { border-top-color: #1678a8; }
.zodiac-grid.zodiac-grid-brief article:nth-child(4n + 3) { border-top-color: #08744d; }
.zodiac-grid.zodiac-grid-brief article:nth-child(4n + 4) { border-top-color: #c49313; }
.zodiac-grid.zodiac-grid-brief h2 {
  font-size: 21px;
}
.zodiac-grid.zodiac-grid-brief p {
  font-size: 14px;
  line-height: 1.45;
}
@media (max-width: 820px) {
  .zodiac-grid.zodiac-grid-brief { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
  .daily-horoscope-brief .reader-section-head { align-items: start; }
  .zodiac-grid.zodiac-grid-brief { grid-template-columns: 1fr; }
}
.daily-recipe-body ul,
.daily-recipe-body ol { display: grid; gap: 9px; margin: 0; padding-left: 22px; }
.daily-recipe-body li { line-height: 1.45; }
.daily-recipe-feature > footer { padding: 15px 30px; color: #4d5955; border-top: 1px solid #c9d2cf; background: #eef3f1; font-size: 12px; line-height: 1.45; }

.daily-word-band {
  display: grid;
  grid-template-columns: minmax(220px, .7fr) minmax(0, 1.3fr);
  gap: 32px;
  margin: 30px 0;
  padding: 30px;
  color: #fff;
  border-left: 7px solid #f0c64d;
  background: #17201d;
}

.daily-word-band h2 { margin: 6px 0 0; color: #fff; font: 700 40px/1 Georgia, 'Times New Roman', serif; }
.daily-word-copy { display: grid; align-content: center; gap: 10px; }
.daily-word-copy p { margin: 0; color: rgba(255, 255, 255, .84); font-size: 16px; line-height: 1.5; }
.daily-word-copy blockquote { margin: 0; padding-left: 16px; color: #f0c64d; border-left: 2px solid #f0c64d; font: italic 17px/1.45 Georgia, 'Times New Roman', serif; }

@media (max-width: 980px) {
  .event-calendar-head { align-items: start; }
  .calendar-head-controls { align-items: stretch; flex-direction: column; }
  .calendar-country-control { min-width: 190px; }
  .daily-recipe-head,
  .daily-word-band { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .event-calendar-head { align-items: stretch; flex-direction: column; }
  .calendar-head-controls { width: 100%; }
  .calendar-country-control { width: 100%; }
  .calendar-month-actions { justify-content: space-between; }
  .calendar-month-actions button:nth-child(2) { flex: 1; }
  .calendar-day-summary { padding: 20px; }
  [data-calendar-detail-content] { padding: 30px 22px 24px; }
  [data-calendar-detail-content] h2 { font-size: 30px; }
  .audience-directory { width: min(100% - 24px, 1180px); padding: 16px; }
  .daily-recipe-head { gap: 18px; padding: 24px 20px; }
  .daily-recipe-head h2 { font-size: 34px; }
  .daily-recipe-head dl { gap: 15px; }
  .daily-recipe-body { grid-template-columns: 1fr; }
  .daily-recipe-body > section { padding: 24px 20px; }
  .daily-recipe-body > section + section { border-top: 1px solid #c9d2cf; border-left: 0; }
  .daily-recipe-feature > footer { padding-inline: 20px; }
  .daily-word-band { gap: 18px; padding: 24px 20px; }
  .daily-word-band h2 { font-size: 34px; }
}

@media (max-width: 520px) {
  .event-calendar-grid { padding: 8px; }
  .calendar-day { min-height: 42px; }
  .calendar-day.has-observance > i { top: 4px; right: 4px; width: 6px; height: 6px; }
  .calendar-detail-actions { display: grid; grid-template-columns: 1fr; }
  .calendar-detail-actions a,
  .calendar-detail-actions button { width: 100%; }
  .audience-directory-grid > a { min-height: 145px; padding: 18px; }
  .audience-directory-grid > a > strong { font-size: 21px; }
  .daily-recipe-head dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* MWB News v72: visual first-party promotional banners */
.commercial-slot.house-ad-slot {
  --house-accent: #087b4f;
  --house-surface: #f4faf7;
  position: relative;
  width: min(100% - 40px, 1100px);
  min-height: 236px;
  margin: 30px auto;
  display: grid;
  grid-template-columns: minmax(340px, .9fr) minmax(0, 1.35fr);
  gap: 0;
  align-items: stretch;
  padding: 0;
  overflow: hidden;
  border: 1px solid #aebdb8;
  border-left: 0;
  background: var(--house-surface);
  box-shadow: 0 14px 36px rgba(16, 23, 26, .12);
}

.commercial-slot.house-ad-slot::after {
  content: '';
  position: absolute;
  z-index: 5;
  right: 0;
  bottom: 0;
  left: 0;
  height: 5px;
  background: var(--house-accent);
  pointer-events: none;
}

.house-ad-print {
  --house-accent: #c51870;
  --house-surface: #fff7fb;
}

.house-ad-services {
  --house-accent: #087b4f;
  --house-surface: #f4faf7;
}

.house-ad-build {
  --house-accent: #a36f00;
  --house-surface: #fff9ed;
}

.house-ad-capture {
  --house-accent: #087e8b;
  --house-surface: #f2fafb;
}

.commercial-slot .house-ad-media {
  position: relative;
  display: block;
  min-width: 0;
  min-height: 236px;
  overflow: hidden;
  color: #fff;
  background: #10171a;
  text-decoration: none;
}

.commercial-slot .house-ad-media::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(8, 15, 17, .08) 24%, rgba(8, 15, 17, .9) 100%);
  pointer-events: none;
}

.house-ad-visual {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  transition: transform 240ms ease, filter 240ms ease;
}

.house-ad-media:hover .house-ad-visual,
.house-ad-media:focus-visible .house-ad-visual {
  transform: scale(1.035);
  filter: saturate(1.08) contrast(1.03);
}

.house-ad-sponsor {
  position: absolute;
  z-index: 2;
  top: 14px;
  left: 14px;
  padding: 5px 8px;
  color: #fff;
  background: rgba(8, 15, 17, .86);
  border-left: 4px solid var(--house-accent);
  font-size: 9px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.house-ad-brand {
  position: absolute;
  z-index: 2;
  right: 18px;
  bottom: 18px;
  left: 18px;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  color: #fff;
}

.house-ad-brand-mark {
  display: grid;
  width: 58px;
  height: 58px;
  place-items: center;
  padding: 6px;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(255, 255, 255, .45);
  box-shadow: 0 7px 18px rgba(0, 0, 0, .24);
}

.house-ad-brand-mark img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.house-ad-brand-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
  text-shadow: 0 2px 8px rgba(0, 0, 0, .7);
}

.commercial-slot .house-ad-brand-copy strong {
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 20px;
  line-height: 1.05;
}

.house-ad-brand-copy small {
  color: #e9f0ee;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
  text-transform: uppercase;
}

.house-ad-body {
  position: relative;
  min-width: 0;
  display: grid;
  grid-template-rows: auto auto auto auto 1fr;
  align-content: center;
  padding: 27px 30px 24px;
  border-top: 5px solid var(--house-accent);
  background: var(--house-surface);
}

.house-ad-kicker {
  color: var(--house-accent);
  font-size: 10px;
  font-weight: 950;
  line-height: 1.25;
  text-transform: uppercase;
}

.commercial-slot .house-ad-headline {
  max-width: 650px;
  margin-top: 7px;
  color: #10171a;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(25px, 2.7vw, 34px);
  line-height: 1.05;
}

.house-ad-description {
  max-width: 680px;
  margin: 8px 0 0;
  color: #40534d;
  font-size: 14px;
  line-height: 1.45;
}

.house-ad-points {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  margin-top: 13px;
}

.house-ad-points span {
  padding: 5px 8px;
  color: #263833;
  background: #fff;
  border: 1px solid #c7d2cf;
  font-size: 10px;
  font-weight: 850;
  line-height: 1.15;
}

.house-ad-footer {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  align-self: end;
  margin-top: 17px;
  padding-top: 14px;
  border-top: 1px solid #cbd6d2;
}

.commercial-slot .house-ad-cta {
  display: inline-grid;
  grid-template-columns: minmax(0, 1fr) 22px;
  gap: 11px;
  align-items: center;
  min-height: 45px;
  max-width: 100%;
  padding: 9px 10px 9px 15px;
  color: #fff;
  background: var(--house-accent);
  box-shadow: 0 6px 15px rgba(16, 23, 26, .14);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
  text-decoration: none;
  transition: transform 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

.house-ad-cta-arrow {
  display: grid;
  width: 22px;
  height: 22px;
  place-items: center;
  color: var(--house-accent);
  background: #fff;
  font-size: 16px;
  line-height: 1;
}

.commercial-slot .house-ad-cta:hover,
.commercial-slot .house-ad-cta:focus-visible {
  color: #fff;
  background: #10171a;
  box-shadow: 0 9px 20px rgba(16, 23, 26, .24);
  transform: translateY(-2px);
}

.commercial-slot .house-ad-cta:hover .house-ad-cta-arrow,
.commercial-slot .house-ad-cta:focus-visible .house-ad-cta-arrow {
  color: #10171a;
}

.commercial-slot .house-ad-disclosure {
  color: #344740;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.25;
  text-align: right;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.commercial-slot .house-ad-media:focus-visible,
.commercial-slot .house-ad-cta:focus-visible,
.commercial-slot .house-ad-disclosure:focus-visible {
  outline: 3px solid #0057ff;
  outline-offset: -3px;
}

.commercial-slot-compact.house-ad-slot {
  width: min(100% - 40px, 920px);
  min-height: 210px;
  grid-template-columns: minmax(280px, .82fr) minmax(0, 1.18fr);
}

.commercial-slot-compact .house-ad-media {
  min-height: 210px;
}

.commercial-slot-compact .house-ad-body {
  padding: 23px 25px 21px;
}

.commercial-slot-compact .house-ad-headline {
  font-size: clamp(23px, 2.5vw, 29px);
}

@media (max-width: 760px) {
  .commercial-slot.house-ad-slot,
  .commercial-slot-compact.house-ad-slot {
    width: min(100% - 24px, 1100px);
    min-height: 0;
    grid-template-columns: 1fr;
  }

  .commercial-slot .house-ad-media,
  .commercial-slot-compact .house-ad-media {
    min-height: 225px;
  }

  .house-ad-body,
  .commercial-slot-compact .house-ad-body {
    padding: 23px 20px 22px;
  }

  .commercial-slot .house-ad-headline,
  .commercial-slot-compact .house-ad-headline {
    font-size: clamp(25px, 7vw, 32px);
  }
}

@media (max-width: 470px) {
  .commercial-slot .house-ad-media,
  .commercial-slot-compact .house-ad-media {
    min-height: 190px;
  }

  .house-ad-brand {
    right: 14px;
    bottom: 14px;
    left: 14px;
    grid-template-columns: 50px minmax(0, 1fr);
  }

  .house-ad-brand-mark {
    width: 50px;
    height: 50px;
  }

  .commercial-slot .house-ad-brand-copy strong {
    font-size: 18px;
  }

  .house-ad-footer {
    display: grid;
    grid-template-columns: 1fr;
  }

  .commercial-slot .house-ad-cta {
    width: 100%;
  }

  .commercial-slot .house-ad-disclosure {
    text-align: left;
  }
}

@media (prefers-reduced-motion: reduce) {
  .house-ad-visual,
  .commercial-slot .house-ad-cta {
    transition: none;
  }

  .house-ad-media:hover .house-ad-visual,
  .house-ad-media:focus-visible .house-ad-visual,
  .commercial-slot .house-ad-cta:hover,
  .commercial-slot .house-ad-cta:focus-visible {
    transform: none;
  }
}

/* v73 final cascade overrides: keep public overlays and Life imagery readable. */
.news-masthead,
.news-v32 .news-masthead {
  position: relative;
  z-index: 100;
  overflow: visible;
}

.newsletter-utility,
.newsletter-utility-drawer,
.news-search-utility,
.news-search-utility-drawer {
  z-index: 1300;
}

.daily-idea-card h2 {
  color: #fff;
}

.daily-books {
  background-image: url('daily-v73/books-reading-v73.png');
}

.daily-beauty {
  background-image: url('daily-v73/beauty-care-v73.png');
}

/* v80 mobile reader polish: compact masthead, stable media and touch-first WebTV. */
.article-hero-media img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
}

.article-main-image {
  margin: 0;
}

.news-article-header .story-meta span {
  color: #485550;
  border-color: #cbd4d1;
  background: #f1f5f3;
}

@media (max-width: 980px) {
  body.news-mobile-nav-open .news-utility {
    visibility: hidden;
  }

  .news-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 18px;
  }

  .news-footer > div:first-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  html,
  body {
    max-width: 100%;
    overflow-x: clip;
  }

  .news-utility,
  .news-brand-row,
  .news-front,
  .news-stream,
  .municipality-index,
  .news-article-shell,
  .newsletter-shell,
  .news-footer,
  .reader-shell,
  .category-desk-page .reader-shell,
  .special-desk-main,
  .special-desk-hero > div {
    width: calc(100% - 20px);
  }

  .news-utility {
    min-height: 38px;
    gap: 5px;
    padding-block: 3px;
  }

  .news-utility-leading {
    min-width: 0;
    flex: 1 1 auto;
    gap: 4px;
  }

  .news-utility-leading > time {
    max-width: 58px;
    padding-inline: 0;
  }

  .weather-utility-widget,
  .world-desk-page .weather-utility-widget {
    width: auto !important;
    max-width: none !important;
    flex: 0 0 auto !important;
    margin-left: 0;
  }

  .weather-utility-trigger,
  .world-desk-page .weather-utility-trigger {
    width: auto !important;
    max-width: none !important;
    gap: 3px;
    padding: 0 4px 0 6px !important;
  }

  .weather-utility-trigger > strong,
  .weather-utility-trigger .weather-utility-label,
  .weather-utility-trigger .weather-utility-condition,
  .weather-utility-trigger .weather-utility-detail {
    display: none !important;
  }

  .weather-utility-trigger > b {
    display: inline !important;
    font-size: 17px;
  }

  .weather-utility-symbol {
    font-size: 14px;
  }

  .news-utility > .news-utility-actions {
    min-width: 0;
    gap: 1px;
  }

  .newsletter-utility > summary {
    min-height: 32px;
    padding-inline: 6px;
    gap: 4px;
    font-size: 10px;
  }

  .news-search-utility > summary {
    min-height: 32px;
  }

  .language-control select,
  .news-utility .language-control select {
    width: auto;
    max-width: 92px;
    min-height: 32px;
    padding-inline: 6px 22px;
    font-size: 10px;
  }

  .news-brand-row {
    min-height: 64px;
    gap: 9px;
    padding-block: 9px;
  }

  .news-wordmark {
    min-width: 0;
    gap: 8px;
  }

  .news-wordmark > span:last-child {
    min-width: 0;
  }

  .news-wordmark > span:last-child strong {
    max-width: 100%;
    display: block;
  }

  .community-page .news-wordmark strong {
    font-size: clamp(18px, 5.3vw, 22px);
  }

  .news-mark {
    width: 42px;
    height: 42px;
  }

  .news-wordmark strong {
    font-size: clamp(25px, 8vw, 30px);
  }

  .breaking-ticker {
    min-height: 40px;
    padding-inline: 8px;
  }

  .breaking-ticker > strong {
    align-self: stretch;
    display: inline-flex;
    align-items: center;
  }

  .reader-shell {
    padding: 22px 0 42px;
  }

  .reader-section {
    margin-bottom: 27px;
  }

  .reader-section-head {
    gap: 7px;
    margin-bottom: 12px;
  }

  .reader-section-head h2 {
    font-size: clamp(27px, 8vw, 32px);
    line-height: 1.02;
  }

  .reader-section-head p {
    font-size: 12px;
    line-height: 1.45;
  }

  .news-article-shell {
    padding-block: 24px 40px;
  }

  .news-article-header {
    margin-bottom: 18px;
  }

  .news-article-header h1,
  .article-main h1 {
    font-size: clamp(32px, 9vw, 38px);
    line-height: 1.02;
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: none;
  }

  .article-main {
    padding: 16px;
  }

  .article-hero-media {
    margin: 18px -16px 8px;
  }

  .article-credit {
    padding-inline: 16px;
  }

  .news-article-header .story-meta span {
    min-height: 30px;
    padding: 6px 9px;
    font-size: 10px;
  }

  .article-layout {
    gap: 22px;
    margin-top: 22px;
  }

  .article-copy p,
  .article-copy li,
  .article-copy {
    font-size: 17px;
    line-height: 1.65;
  }

  .article-copy .article-lead {
    font-size: 20px;
    line-height: 1.5;
  }

  .article-copy h2 {
    margin-top: 28px;
    font-size: clamp(26px, 8vw, 34px);
  }

  .article-sidebar {
    position: static;
    gap: 10px;
  }

  .source-record,
  .article-distribution {
    padding: 14px;
  }

  .source-record dl {
    grid-template-columns: 88px minmax(0, 1fr);
  }

  .news-footer {
    grid-template-columns: 1fr;
    gap: 22px 16px;
    padding-block: 28px 34px;
  }

  .news-footer > div:first-child {
    grid-column: auto;
  }

  .news-footer strong {
    font-size: 25px;
  }

  .news-footer p {
    margin-bottom: 0;
    font-size: 13px;
    line-height: 1.45;
  }

  .news-footer > div:not(:first-child) {
    gap: 8px;
    font-size: 12px;
  }

  .cookie-consent-panel-v2 {
    right: 8px;
    bottom: 8px;
    left: 8px;
    width: auto;
    max-height: calc(100dvh - 16px);
    gap: 12px;
    padding: 14px;
  }

  .cookie-choice-list label {
    min-height: 0;
  }

  .webtv-page .webtv-hero,
  .webtv-page .webtv-hero-copy {
    min-height: 340px;
  }

  .webtv-page .webtv-hero {
    background-position: 58% center;
  }

  .webtv-page .webtv-hero-copy {
    padding: 46px 16px 30px;
    background: linear-gradient(90deg, rgba(7, 12, 15, .94) 0%, rgba(7, 12, 15, .78) 64%, rgba(7, 12, 15, .45) 100%);
  }

  .webtv-page .webtv-hero h1 {
    font-size: clamp(44px, 14vw, 58px);
    line-height: .95;
  }

  .webtv-page .webtv-hero p {
    font-size: 15px;
    line-height: 1.45;
  }

  .webtv-page .webtv-map {
    padding-block: 20px;
  }

  .webtv-page .webtv-map-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .webtv-page .webtv-map button {
    min-height: 74px;
    padding: 11px 12px;
  }

  .webtv-page .webtv-map button strong {
    font-size: 17px;
  }

  .webtv-page .webtv-map button small {
    font-size: 9px;
    line-height: 1.25;
  }

  .visual-briefing-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .visual-briefing-body {
    padding: 14px 15px;
  }

  .visual-briefing-body h3 {
    font-size: 24px;
  }

  .webtv-filter-bar {
    display: flex;
    gap: 7px;
    padding: 2px 0 8px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline proximity;
    scrollbar-width: none;
  }

  .webtv-filter-bar::-webkit-scrollbar {
    display: none;
  }

  .webtv-filter-bar button {
    min-height: 44px;
    flex: 0 0 auto;
    scroll-snap-align: start;
  }

  .webtv-video-grid {
    gap: 20px;
  }

  .webtv-video-body {
    padding: 14px 15px;
  }

  .webtv-video-body h3 {
    font-size: 24px;
    line-height: 1.08;
  }

  .webtv-video-body p {
    line-height: 1.45;
  }

  .table-scroll,
  .archive-category-rail,
  .weather-extended-forecast,
  .weather-chart-tabs {
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
  }
}

@media (max-width: 420px) {
  .news-utility-leading > time {
    max-width: 50px;
  }

  .newsletter-utility > summary {
    font-size: 9px;
  }

  .language-control select,
  .news-utility .language-control select {
    max-width: 88px;
  }

  .news-mobile-menu-toggle {
    width: 42px;
    height: 42px;
    min-width: 42px;
  }

  .webtv-page .webtv-map-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .webtv-page .webtv-map button {
    min-height: 72px;
    padding: 10px;
  }

  .webtv-page .webtv-map button strong {
    font-size: 16px;
  }
}

/* v81 final mobile cascade: keep archive Search available after legacy masthead rules. */
@media (max-width: 760px) {
  .news-brand-row .news-edition-label.has-search {
    width: auto;
    max-width: none;
    display: block;
    margin-left: auto;
    padding-left: 0;
    border-left: 0;
  }

  .news-edition-label.has-search .news-edition-copy {
    display: none;
  }

  .news-edition-label.has-search .news-search-utility {
    display: block;
  }

  .news-edition-label.has-search .news-search-utility > summary {
    width: 42px;
    min-width: 42px;
    min-height: 42px;
    justify-content: center;
    padding: 8px;
  }

  .news-edition-label.has-search .news-search-utility-label {
    display: none;
  }
}

/* v111 municipality identity: verified place metadata stays visible on every article surface. */
.live-story-identity,
.article-taxonomy-line {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px 10px;
}

.municipality-location-tag {
  min-width: 0;
  max-width: 100%;
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border: 1px solid #9dbab2;
  color: #145b4b;
  background: #edf7f3;
  font-size: 10px;
  font-weight: 850;
  line-height: 1.1;
  letter-spacing: 0;
  text-transform: none;
}

.municipality-location-tag.is-prominent {
  color: #fff;
  border-color: var(--category-accent, #176b57);
  background: var(--category-accent, #176b57);
}

.municipality-location-marker {
  position: relative;
  width: 10px;
  height: 10px;
  flex: 0 0 10px;
  border: 2px solid currentColor;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
}

.municipality-location-marker::after {
  content: '';
  position: absolute;
  inset: 2px;
  border-radius: 50%;
  background: currentColor;
}

.municipality-location-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.municipality-location-more {
  flex: 0 0 auto;
  padding-left: 5px;
  border-left: 1px solid currentColor;
}

.municipality-story-body > .municipality-location-tag {
  margin-bottom: 2px;
}

.search-result-topline {
  justify-content: flex-start;
  flex-wrap: wrap;
}

.search-result-topline time {
  margin-left: auto;
}

.article-taxonomy-line {
  margin-bottom: 10px;
}

.article-taxonomy-line .story-kicker {
  margin: 0;
}

@media (max-width: 560px) {
  .municipality-location-tag {
    max-width: min(100%, 220px);
  }

  .search-result-topline time {
    width: 100%;
    margin-left: 0;
  }
}

@media print {
  .municipality-location-tag,
  .municipality-location-tag.is-prominent {
    color: #111;
    border-color: #777;
    background: #fff;
  }
}

/* v115 scheduled food calendar: titles are public early; full methods unlock on their exact date. */
.daily-food-future {
  margin-top: 42px;
  border-top: 5px solid #a53b35;
  border-bottom: 1px solid #bdc9c5;
  background: #f4f7f5;
}

.daily-food-future > header {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
  gap: 32px;
  align-items: end;
  padding: 26px 28px 20px;
  border-bottom: 1px solid #bdc9c5;
}

.daily-food-future > header h2 {
  margin: 5px 0 0;
  font: 700 34px/1.08 Georgia, 'Times New Roman', serif;
}

.daily-food-future > header p {
  margin: 0;
  color: #50605b;
  line-height: 1.5;
}

.food-future-schedule {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.food-future-date {
  display: grid;
  grid-template-columns: 116px minmax(0, 1fr);
  gap: 18px;
  min-height: 104px;
  padding: 18px 22px;
  border-bottom: 1px solid #cdd6d3;
  background: #fff;
}

.food-future-date:nth-child(odd) { border-right: 1px solid #cdd6d3; }

.food-future-date time {
  align-self: start;
  padding-top: 3px;
  color: #a53b35;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.food-future-date ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.food-future-date li {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: 9px;
  align-items: baseline;
}

.food-future-date li span {
  color: #67736f;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.food-future-date li b { font-size: 13px; line-height: 1.3; }

@media (max-width: 880px) {
  .daily-food-future > header,
  .food-future-schedule { grid-template-columns: 1fr; }
  .food-future-date:nth-child(odd) { border-right: 0; }
}

@media (max-width: 560px) {
  .daily-food-future > header { gap: 14px; padding: 22px 17px 17px; }
  .daily-food-future > header h2 { font-size: 28px; }
  .food-future-date { grid-template-columns: 1fr; gap: 9px; padding: 16px 17px; }
  .food-future-date li { grid-template-columns: 74px minmax(0, 1fr); }
}

/* MWB News v561: stable category shells, readable dark panels and contextual routes. */
.skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 10000;
  max-width: min(320px, calc(100vw - 16px));
  padding: 10px 14px;
  color: #fff;
  background: #10171a;
  border: 2px solid #e0b02f;
  transform: translateY(calc(-100% - 20px));
  transition: transform .15s ease;
}

.skip-link:focus,
.skip-link:focus-visible { transform: translateY(0); }

body.mwb-full-footer-page > main.weekly-shell,
body.mwb-full-footer-page > main.reader-shell,
body.mwb-full-footer-page > main.audience-main,
body.mwb-full-footer-page > main.special-desk-main,
body.mwb-full-footer-page > main.municipal-shell-v556,
body.mwb-full-footer-page > main.sports-centre-main {
  width: min(1120px, calc(100% - 48px));
  margin-inline: auto;
}

body.news-public:not(.home-edition-v119) > .feature-banner,
body.news-public > .audience-hero,
body.news-public > .special-desk-hero,
body.news-public > .life-category-hero,
body.news-public > .sports-centre-hero {
  width: min(1180px, calc(100% - 32px));
  margin: 16px auto 0;
  overflow: hidden;
  border-radius: 4px;
  box-shadow: 0 18px 44px rgba(16, 23, 26, .12);
}

.teen-page .audience-hero h1,
.teen-page .audience-hero h2,
.teen-page .audience-hero p,
.teen-page .audience-split-lead > article h2,
.teen-page .audience-split-lead > article p {
  color: #fff;
  text-shadow: 0 2px 18px rgba(0, 0, 0, .72);
}

body[data-life-desk="beauty"] .special-desk-guide h2,
body[data-life-desk="beauty"] .special-desk-guide p,
body[data-life-desk="beauty"] .special-desk-guide .story-kicker {
  color: #fff;
}

.mwb-context-cta-v561 {
  width: min(1120px, calc(100% - 48px));
  margin: 32px auto 0;
  padding: 24px 28px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  color: #fff;
  background: #101a18;
  border-top: 5px solid #e0b02f;
  box-shadow: 0 18px 42px rgba(16, 23, 26, .14);
}

.mwb-context-cta-v561 h2 {
  margin: 5px 0 8px;
  color: #fff;
  font: 700 clamp(25px, 3vw, 38px)/1.05 Georgia, 'Times New Roman', serif;
}

.mwb-context-cta-v561 p { margin: 0; color: #dce7e3; line-height: 1.5; }
.mwb-context-cta-v561 nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.mwb-context-cta-v561 .news-button.secondary { color: #fff; border-color: #71817c; background: transparent; }
.mwb-context-cta-v561 .story-kicker { color: #f1ca5d; }

@media (max-width: 1480px) {
  .news-utility-actions > a.mwb-utility-newsletter { display: inline-flex; }
}

@media (max-width: 760px) {
  body.mwb-full-footer-page > main.weekly-shell,
  body.mwb-full-footer-page > main.reader-shell,
  body.mwb-full-footer-page > main.audience-main,
  body.mwb-full-footer-page > main.special-desk-main,
  body.mwb-full-footer-page > main.municipal-shell-v556,
  body.mwb-full-footer-page > main.sports-centre-main,
  .mwb-context-cta-v561 { width: min(100% - 24px, 1120px); }

  body.news-public:not(.home-edition-v119) > .feature-banner,
  body.news-public > .audience-hero,
  body.news-public > .special-desk-hero,
  body.news-public > .life-category-hero,
  body.news-public > .sports-centre-hero {
    width: min(100% - 16px, 1180px);
    margin-top: 8px;
  }

  .mwb-context-cta-v561 { grid-template-columns: 1fr; padding: 22px 18px; }
  .mwb-context-cta-v561 nav { justify-content: flex-start; }
  .mwb-context-cta-v561 .news-button { width: 100%; justify-content: center; }
}
/* v570: Life remains an everyday guide, not a peer article category. */
.news-category-nav > a[href="life.html"],
.news-category-nav > a[href="/life.html"] {
  display: none !important;
}

/* v572: consistent, visible interaction feedback for MWB action buttons. */
.news-button {
  transition:
    color .16s ease,
    background-color .16s ease,
    border-color .16s ease,
    box-shadow .16s ease,
    transform .16s ease;
}

@media (hover: hover) {
  .news-button:not(.is-selected):not(:disabled):not([aria-disabled="true"]):hover {
    color: #101a18;
    border-color: #f0c64d;
    background: #f0c64d;
    box-shadow: 0 0 0 2px rgba(240, 198, 77, .92), 0 8px 22px rgba(7, 24, 21, .18);
    transform: translateY(-1px);
  }

  .news-button.secondary:not(.is-selected):not(:disabled):not([aria-disabled="true"]):hover {
    color: #fff;
    border-color: #0c8658;
    background: #0c8658;
  }
}

.news-button:not(:disabled):not([aria-disabled="true"]):focus-visible {
  outline: 3px solid #f0c64d;
  outline-offset: 3px;
  box-shadow: 0 0 0 2px #101a18, 0 8px 22px rgba(7, 24, 21, .2);
}

.mwb-context-cta-v561 .news-button:not(.secondary) {
  min-height: 50px;
  padding: 12px 20px;
  color: #101a18;
  border: 2px solid #f0c64d;
  border-radius: 7px;
  background: #f0c64d;
  box-shadow: 0 8px 20px rgba(224, 176, 47, .22);
}

@media (hover: hover) {
  .mwb-context-cta-v561 .news-button:not(.secondary):hover {
    color: #fff;
    border-color: #39d5aa;
    background: #0c8658;
    box-shadow: 0 0 0 3px rgba(57, 213, 170, .22), 0 14px 30px rgba(4, 49, 37, .38);
    filter: none;
    transform: translateY(-3px) scale(1.015);
  }

  .mwb-context-cta-v561 .news-button.secondary:hover {
    color: #101a18;
    border-color: #f0c64d;
    background: #f0c64d;
    box-shadow: 0 10px 24px rgba(224, 176, 47, .28);
    filter: none;
    transform: translateY(-2px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .news-button {
    transition: none;
  }
}

/* v573: keep every footer social mark legible on its branded background. */
.news-footer.mwb-full-footer .mwb-footer-socials .mwb-footer-social-icon img {
  opacity: 1;
  filter: brightness(0) invert(1);
}

/* v57638: every desktop side rail follows the measured compact masthead. */
:root {
  --mwb-fixed-masthead-height: 0px;
  --mwb-sticky-rail-gap: 18px;
  --mwb-sticky-top: calc(var(--mwb-fixed-masthead-height) + var(--mwb-sticky-rail-gap));
}

.archive-sidebar,
.article-aside,
.article-sidebar,
.archive-category-rail,
.special-desk-guide,
.community-action-rail,
.learning-rail,
.contact-routing,
.archive-content-shell--ecosystem > .mwb-ecosystem-context-v569,
.food-top-grid-v567 .food-daily-cards-v561,
.food-recipe-sidebar-v532,
.sports-match-rail-v569,
.sports-network-rail,
.travel-guide-overview,
.event-calendar-card-v537,
.weather-forecast-card-v537,
.games-page .games-main > .gameroom-jump-nav,
.games-leaderboard-rail-v575,
.finance-page main .finance-tools-rail {
  top: var(--mwb-sticky-top) !important;
  scroll-margin-top: calc(var(--mwb-sticky-top) + 12px);
  transition: top .16s ease;
}

@media (min-width: 981px) {
  .food-top-grid-v567 .food-daily-cards-v561 {
    position: sticky !important;
    align-self: start;
    max-height: calc(100dvh - var(--mwb-sticky-top) - 18px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior-y: auto;
    scrollbar-color: #a53b35 #f3ead7;
    scrollbar-width: thin;
  }

  .article-aside,
  .article-sidebar {
    max-height: calc(100dvh - var(--mwb-sticky-top) - 18px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior-y: auto;
    scrollbar-width: thin;
  }
}

@media (min-width: 1181px) {
  .finance-page main .finance-tools-rail {
    position: sticky !important;
    align-self: start;
    max-height: calc(100dvh - var(--mwb-sticky-top) - 18px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior-y: auto;
    scrollbar-color: #168a72 #edf3f1;
    scrollbar-width: thin;
  }
}

@media (min-width: 1121px) {
  .archive-content-shell--ecosystem > .mwb-ecosystem-context-v569 {
    max-height: calc(100dvh - var(--mwb-sticky-top) - 18px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior-y: auto;
    scrollbar-width: thin;
  }
}

@media (min-width: 1001px) {
  .learning-rail {
    max-height: calc(100dvh - var(--mwb-sticky-top) - 18px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior-y: auto;
    scrollbar-width: thin;
  }
}

@media (min-width: 901px) {
  .games-leaderboard-rail-v575,
  .community-action-rail {
    max-height: calc(100dvh - var(--mwb-sticky-top) - 18px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior-y: auto;
    scrollbar-width: thin;
  }
}

@media (min-width: 861px) {
  .sports-match-rail-v569 {
    max-height: calc(100dvh - var(--mwb-sticky-top) - 18px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior-y: auto;
    scrollbar-color: #22d3ee #081820;
    scrollbar-width: thin;
  }
}

@media (min-width: 981px) {
  .sports-network-rail {
    position: sticky !important;
    align-self: start;
  }
}

@media (prefers-reduced-motion: reduce) {
  .archive-sidebar,
  .article-aside,
  .article-sidebar,
  .archive-category-rail,
  .special-desk-guide,
  .community-action-rail,
  .learning-rail,
  .contact-routing,
  .archive-content-shell--ecosystem > .mwb-ecosystem-context-v569,
  .food-top-grid-v567 .food-daily-cards-v561,
  .food-recipe-sidebar-v532,
  .sports-match-rail-v569,
  .sports-network-rail,
  .travel-guide-overview,
  .event-calendar-card-v537,
  .weather-forecast-card-v537,
  .games-page .games-main > .gameroom-jump-nav,
  .games-leaderboard-rail-v575,
  .finance-page main .finance-tools-rail {
    transition: none;
  }
}

/* September 2026 editorial batch: preserve original covers and photographs.
   Only this batch's asset prefix is affected; existing news images keep their layout. */
.article-hero-media > img:is(
  [src^="/assets/mwb-20260908-"],
  [src^="assets/mwb-20260908-"],
  [src^="https://mwbnews.gr/assets/mwb-20260908-"]
) {
  display: block;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: min(80vh, 720px) !important;
  aspect-ratio: auto !important;
  margin-inline: auto;
  object-fit: scale-down !important;
  object-position: center !important;
  transform: none !important;
}

/* Card frames stay unchanged; the full image fits inside without enlargement. */
.live-story-image > img:is(
  [src^="/assets/mwb-20260908-"],
  [src^="assets/mwb-20260908-"],
  [src^="https://mwbnews.gr/assets/mwb-20260908-"]
) {
  object-fit: scale-down !important;
  object-position: center !important;
  transform: none !important;
}
