.newsroom {
    --news-onyx: #171721;
    --news-cobalt: #5266eb;
    --news-paper: #fbfbfd;
    --news-ice: #f5f6fa;
    --news-ash: #686978;
    --news-line: #dfe1ea;
    color: #20202a;
    background: var(--news-paper);
    font-family: "DM Sans", sans-serif;
}

.newsroom *, .newsroom *::before, .newsroom *::after { box-sizing: border-box; }
.newsroom img { display: block; max-width: 100%; }
.newsroom a { color: inherit; }
.news-shell { width: min(1240px, calc(100% - 48px)); margin-inline: auto; }
.news-publication-head { padding: 38px 0 17px; display: flex; align-items: end; justify-content: space-between; gap: 32px; }
.news-publication-head h1 { margin: 0; font: 600 clamp(38px, 4.2vw, 64px)/.96 "Newsreader", Georgia, serif; letter-spacing: -.04em; text-wrap: balance; }
.news-publication-head p { max-width: 460px; margin: 0 0 3px; color: var(--news-ash); font-size: 14px; line-height: 1.55; text-align: right; }
.news-topic-bar { border-top: 3px solid var(--news-onyx); border-bottom: 1px solid var(--news-onyx); display: flex; align-items: center; gap: 29px; overflow-x: auto; scrollbar-width: none; }
.news-topic-bar::-webkit-scrollbar { display: none; }
.news-topic-bar a { position: relative; flex: 0 0 auto; padding: 15px 1px 13px; color: var(--news-ash); font-size: 13px; font-weight: 700; text-decoration: none; }
.news-topic-bar a span { margin-left: 3px; font-size: 10px; font-weight: 500; }
.news-topic-bar a.active { color: var(--news-onyx); }
.news-topic-bar a.active::after { content: ""; position: absolute; right: 0; bottom: -1px; left: 0; height: 3px; background: var(--news-cobalt); }

.news-lead-desk { padding: 28px 0 34px; border-bottom: 1px solid var(--news-onyx); display: grid; grid-template-columns: minmax(0, 2.08fr) minmax(280px, .82fr); gap: 34px; }
.news-lead-story { min-width: 0; display: grid; grid-template-columns: minmax(0, 1.28fr) minmax(240px, .72fr); gap: 28px; align-items: start; }
.news-lead-story-text { grid-template-columns: minmax(0, 720px); }
.news-lead-media { overflow: hidden; background: var(--news-ice); }
.news-lead-media img { width: 100%; aspect-ratio: 1.42 / 1; object-fit: cover; }
.news-story-kicker { display: inline-flex; align-items: center; gap: 8px; color: var(--news-cobalt); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.news-story-kicker::before { content: ""; width: 16px; height: 2px; background: currentColor; }
.news-lead-copy h2 { margin: 16px 0 14px; font: 600 clamp(34px, 3.2vw, 52px)/.99 "Newsreader", Georgia, serif; letter-spacing: -.038em; text-wrap: balance; }
.news-lead-copy h2 a, .news-latest-item h3 a, .news-guide-row h3 a, .news-destination-module h3 a { text-decoration: none; }
.news-lead-copy h2 a:hover, .news-latest-item h3 a:hover, .news-guide-row h3 a:hover, .news-destination-module h3 a:hover { color: var(--news-cobalt); }
.news-lead-copy p { margin: 0 0 20px; color: var(--news-ash); font-size: 16px; line-height: 1.55; }
.newsroom time { color: var(--news-ash); font-size: 12px; font-weight: 500; }
.news-latest-rail { min-width: 0; padding-left: 28px; border-left: 1px solid var(--news-line); }
.news-latest-rail > h2, .news-module-title { margin: 0; padding-bottom: 10px; border-bottom: 3px solid var(--news-onyx); font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.news-latest-item { padding: 18px 0; border-bottom: 1px solid var(--news-line); }
.news-latest-item > span { color: var(--news-cobalt); font-size: 11px; font-weight: 700; }
.news-latest-item h3 { margin: 8px 0 10px; font: 600 23px/1.12 "Newsreader", Georgia, serif; letter-spacing: -.02em; }
.news-latest-item:first-of-type h3 { font-size: 26px; }

.news-secondary-desk { padding: 36px 0 70px; display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(260px, .72fr); gap: 54px; }
.news-guide-row { padding: 22px 0; border-bottom: 1px solid var(--news-line); display: grid; grid-template-columns: 116px minmax(0, 1fr) auto; gap: 24px; align-items: start; }
.news-guide-row > span { color: var(--news-cobalt); font-size: 12px; font-weight: 700; }
.news-guide-row h3 { margin: -4px 0 8px; font: 600 28px/1.08 "Newsreader", Georgia, serif; letter-spacing: -.025em; }
.news-guide-row p, .news-destination-module p { margin: 0; color: var(--news-ash); font-size: 14px; line-height: 1.5; }
.news-destination-module { border-top: 1px solid var(--news-onyx); }
.news-destination-module .news-module-title { margin-bottom: 4px; border-bottom-width: 2px; }
.news-destination-module article { padding: 22px 0 25px; border-bottom: 1px solid var(--news-line); }
.news-destination-module h3 { margin: 13px 0; font: 600 31px/1.04 "Newsreader", Georgia, serif; letter-spacing: -.025em; }
.news-destination-module p { margin-bottom: 18px; }
.news-text-link { color: var(--news-cobalt) !important; font-size: 13px; font-weight: 700; text-decoration: none; }
.news-module-empty { margin: 0; padding: 28px 0; border-bottom: 1px solid var(--news-line); color: var(--news-ash); font-size: 14px; }
.news-empty-state { min-height: 280px; padding: 60px 0; }
.news-empty-state h2 { margin: 0; font: 600 32px/1.1 "Newsreader", Georgia, serif; }

/* Article */
.news-article-shell { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.news-article-top { padding: 26px 0 28px; border-bottom: 1px solid var(--news-line); }
.news-breadcrumb { margin-bottom: 38px; display: flex; gap: 8px; color: var(--news-ash); font-size: 12px; }
.news-breadcrumb a { text-decoration: none; }
.news-breadcrumb a:hover { color: var(--news-cobalt); }
.news-article-heading { max-width: 900px; }
.news-article-heading h1 { margin: 17px 0 18px; font: 600 clamp(48px, 6vw, 82px)/.95 "Newsreader", Georgia, serif; letter-spacing: -.045em; text-wrap: balance; }
.news-article-heading p { max-width: 720px; margin: 0 0 20px; color: #4f505d; font: 500 21px/1.45 "Newsreader", Georgia, serif; }
.news-article-cover { margin: 34px 0 0; }
.news-article-cover img { width: 100%; max-height: 630px; object-fit: cover; }
.news-article-layout { padding: 46px 0 72px; display: grid; grid-template-columns: minmax(0, 740px) 260px; justify-content: space-between; gap: 70px; }
.news-article-body { min-width: 0; color: #2d2d36; font-family: "Newsreader", Georgia, serif; font-size: 18px; line-height: 1.72; }
.news-article-body > :first-child { margin-top: 0; }
.news-article-body > p { margin: 0 0 24px; }
.news-article-body h2, .news-article-body h3, .news-article-body h4 { color: var(--news-onyx); font-family: "Newsreader", Georgia, serif; letter-spacing: -.025em; }
.news-article-body h2 { font-size: 31px; }
.news-article-body h3 { font-size: 25px; }
.news-article-body a:not(.article-shortcode-button):not(.news-ticket-note a) { color: var(--news-cobalt); text-underline-offset: 3px; }
.news-article-body ul, .news-article-body ol { font-size: inherit; line-height: inherit; }
.news-article-body blockquote { border-left-color: var(--news-onyx); color: #4f505d; font-size: 23px; font-style: normal; line-height: 1.42; }
.news-article-body > img, .news-article-body figure img { border-radius: 0; }
.news-article-body figcaption { color: var(--news-ash); font-family: "DM Sans", sans-serif; text-align: left; }
.news-article-body .article-shortcode-button { border-radius: 0; background: var(--news-cobalt); }
.news-article-body .article-shortcode-notice { border-color: var(--news-cobalt); border-radius: 0; color: var(--news-onyx); background: #eef0ff; }
.news-article-utility { border-top: 3px solid var(--news-onyx); }
.news-article-utility section { padding: 18px 0 22px; border-bottom: 1px solid var(--news-line); }
.news-article-utility h2 { margin: 0 0 14px; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.news-article-utility section > a:not(.news-text-link) { display: block; font: 600 20px/1.2 "Newsreader", Georgia, serif; text-decoration: none; }
.news-article-utility p { margin: 9px 0 0; color: var(--news-ash); font-size: 12px; line-height: 1.5; }
.news-ticket-note { margin: 42px 0 0; padding: 19px 0; border-top: 1px solid var(--news-line); border-bottom: 1px solid var(--news-line); display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 22px; font-family: "DM Sans", sans-serif; }
.news-ticket-note h2 { margin: 0 0 6px; font: 600 14px/1.2 "DM Sans", sans-serif; letter-spacing: 0; }
.news-ticket-note p { margin: 0; color: var(--news-ash); font-size: 12px; line-height: 1.5; }
.news-ticket-note a { padding: 9px 13px; border: 1px solid var(--news-cobalt); color: var(--news-cobalt); font-size: 11px; font-weight: 700; text-decoration: none; white-space: nowrap; }
.news-ticket-note a:hover { color: #fff; background: var(--news-cobalt); }

@media (max-width: 900px) {
    .news-lead-desk, .news-secondary-desk, .news-article-layout { grid-template-columns: 1fr; }
    .news-latest-rail { padding: 24px 0 0; border-top: 1px solid var(--news-onyx); border-left: 0; }
    .news-article-layout { gap: 38px; }
    .news-article-utility { max-width: 500px; }
}

@media (max-width: 620px) {
    .news-shell, .news-article-shell { width: min(100% - 32px, 1240px); }
    .news-publication-head { display: block; padding: 28px 0 13px; }
    .news-publication-head h1 { font-size: 43px; }
    .news-publication-head p { max-width: 340px; margin-top: 12px; font-size: 13px; text-align: left; }
    .news-topic-bar { gap: 23px; margin-right: -16px; padding-right: 16px; }
    .news-lead-desk { gap: 28px; padding-top: 20px; padding-bottom: 27px; }
    .news-lead-story { grid-template-columns: 1fr; gap: 19px; }
    .news-lead-media img { aspect-ratio: 1.55 / 1; }
    .news-lead-copy h2 { margin-top: 12px; font-size: 39px; }
    .news-lead-copy p { font-size: 15px; }
    .news-latest-item h3, .news-latest-item:first-of-type h3 { font-size: 24px; }
    .news-secondary-desk { gap: 38px; padding-top: 28px; }
    .news-guide-row { grid-template-columns: 1fr auto; gap: 9px 18px; }
    .news-guide-row > span { grid-column: 1 / -1; }
    .news-guide-row h3 { font-size: 25px; }
    .news-guide-row p { grid-column: 1 / -1; }
    .news-destination-module h3 { font-size: 29px; }
    .news-article-top { padding-top: 19px; }
    .news-breadcrumb { margin-bottom: 28px; }
    .news-article-heading h1 { font-size: 48px; }
    .news-article-heading p { font-size: 19px; }
    .news-article-cover { margin: 25px -16px 0; }
    .news-article-cover img { min-height: 255px; object-fit: cover; }
    .news-article-layout { padding-top: 32px; }
    .news-article-body { font-size: 17px; line-height: 1.68; }
    .news-article-body figure { margin-right: -16px; margin-left: -16px; }
    .news-article-body figcaption { padding-inline: 16px; }
    .news-ticket-note { display: block; }
    .news-ticket-note a { display: inline-block; margin-top: 15px; }
}
