:root {
  --di-ink: #111827;
  --di-ink-soft: #243142;
  --di-muted: #5c6675;
  --di-line: #d8dee8;
  --di-line-dark: #aeb7c5;
  --di-paper: #ffffff;
  --di-bg: #f3f5f8;
  --di-red: #b4232a;
  --di-blue: #174a7c;
  --di-green: #0d766e;
  --di-gold: #a46a1f;
}

.di-news-theme {
  background: var(--di-bg);
  color: var(--di-ink);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
}

.di-news-theme a {
  color: inherit;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}

.di-news-theme a:hover {
  color: var(--di-red);
}

.di-news-shell,
.grid-container {
  max-width: 1200px;
}

.di-news-shell {
  margin-left: auto;
  margin-right: auto;
}

.home.di-news-theme .site-content.grid-container,
.home.di-news-theme .content-area,
.home.di-news-theme .site-main {
  max-width: none;
  width: 100%;
}

.home.di-news-theme .site-content {
  padding-left: 0;
  padding-right: 0;
}

.home.di-news-theme .di-news-home .di-news-shell {
  box-sizing: border-box;
  max-width: none;
  width: 100%;
}

.di-top-strip {
  background: #101827;
  border-bottom: 4px solid var(--di-red);
  color: #fff;
  font-size: 13px;
}

.di-top-strip .di-news-shell {
  align-items: center;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  padding: 9px 22px;
}

.di-top-label {
  background: var(--di-red);
  font-weight: 900;
  padding: 4px 9px;
  text-transform: uppercase;
}

.di-top-date {
  color: #d7deea;
  margin-right: auto;
}

.di-top-links {
  display: flex;
  gap: 16px;
  text-transform: uppercase;
}

.di-top-links a {
  color: #fff;
  font-weight: 800;
  text-decoration: none;
}

.site-header {
  background: var(--di-paper);
  border-bottom: 1px solid var(--di-line);
}

.inside-header {
  align-items: center;
  display: flex;
  justify-content: center;
  padding-bottom: 14px;
  padding-top: 14px;
}

.di-desktop-logo {
  text-align: center;
  width: 100%;
}

.di-desktop-logo a {
  display: inline-block;
}

.di-desktop-logo img {
  display: block;
  height: auto;
  max-width: min(420px, 82vw);
  width: 420px;
}

.main-title,
.main-title a {
  color: var(--di-ink) !important;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 36px;
  font-weight: 900;
  letter-spacing: 0;
}

.site-description {
  color: var(--di-muted);
  font-size: 14px;
}

.main-navigation {
  background: var(--di-paper);
  border-bottom: 1px solid var(--di-line-dark);
  border-top: 1px solid var(--di-line);
}

.main-navigation .main-nav ul li a,
.main-navigation .menu-toggle,
.main-navigation .menu-bar-items {
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.di-masthead {
  background: var(--di-paper);
  border-bottom: 1px solid var(--di-line-dark);
  padding: 18px 22px 22px;
  text-align: center;
}

.di-masthead-edition {
  align-items: center;
  color: var(--di-muted);
  display: flex;
  font-size: 12px;
  font-weight: 900;
  gap: 14px;
  justify-content: center;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.di-masthead-edition span:first-child {
  color: var(--di-red);
}

.di-masthead h1 {
  color: var(--di-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(46px, 7vw, 86px);
  font-weight: 900;
  line-height: 0.92;
  margin: 0;
}

.di-masthead-summary {
  color: var(--di-ink-soft);
  font-size: 17px;
  line-height: 1.55;
  margin: 8px auto 0;
  max-width: 780px;
}

.di-topic-nav {
  background: var(--di-paper);
  border-bottom: 1px solid var(--di-line);
  display: flex;
  gap: 0;
  justify-content: center;
  overflow-x: auto;
  padding: 0 22px;
}

.di-topic-nav a {
  border-left: 1px solid var(--di-line);
  color: var(--di-ink-soft);
  flex: 0 0 auto;
  font-size: 13px;
  font-weight: 900;
  padding: 13px 16px;
  text-decoration: none;
  text-transform: uppercase;
}

.di-topic-nav a:last-child {
  border-right: 1px solid var(--di-line);
}

.di-topic-nav a:hover {
  background: #f7f8fa;
}

.di-breaking-bar {
  align-items: center;
  background: #101827;
  color: #fff;
  display: grid;
  gap: 16px;
  grid-template-columns: auto 1fr;
  margin-top: 18px;
  padding: 11px 18px;
}

.di-breaking-bar strong {
  background: var(--di-red);
  font-size: 12px;
  padding: 5px 9px;
  text-transform: uppercase;
}

.di-breaking-bar div {
  display: flex;
  gap: 24px;
  overflow: hidden;
  white-space: nowrap;
}

.di-breaking-bar a {
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
}

.di-front-grid {
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0, 1fr) 330px;
  padding: 22px 22px 34px;
}

.di-main-column,
.di-right-rail,
.di-section-grid {
  min-width: 0;
}

.di-lead-story {
  background: var(--di-paper);
  border-bottom: 3px solid var(--di-ink);
  border-top: 3px solid var(--di-ink);
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(290px, 0.85fr);
}

.di-lead-image,
.di-story-image {
  background: #dfe5ed;
  display: block;
  overflow: hidden;
}

.di-lead-image {
  min-height: 410px;
}

.di-lead-image img,
.di-story-image img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.di-lead-copy {
  align-self: center;
  padding: 34px;
}

.di-story-meta {
  align-items: center;
  color: var(--di-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 12px;
  font-weight: 900;
  gap: 10px;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.di-story-meta span {
  color: var(--di-red);
}

.di-lead-copy h2,
.di-story-card h3,
.di-rail-panel h2,
.di-section-heading h2,
.entry-title,
.di-hub-listing h2,
.widget-title {
  color: var(--di-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 900;
  letter-spacing: 0;
}

.di-lead-copy h2 {
  font-size: clamp(32px, 4vw, 52px);
  line-height: 1.02;
  margin: 0 0 14px;
}

.di-lead-copy h2 a,
.di-story-card h3 a,
.di-rail-panel a,
.di-read-more,
.di-desk-strip a {
  text-decoration: none;
}

.di-lead-copy p,
.di-story-card p,
.di-editor-brief p {
  color: var(--di-muted);
  font-size: 16px;
  line-height: 1.65;
  margin: 0;
}

.di-read-more {
  border: 1px solid var(--di-ink);
  color: var(--di-ink);
  display: inline-block;
  font-size: 12px;
  font-weight: 900;
  margin-top: 22px;
  padding: 10px 13px;
  text-transform: uppercase;
}

.di-read-more:hover {
  background: var(--di-ink);
  color: #fff;
}

.di-story-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 18px;
}

.di-story-card {
  background: var(--di-paper);
  border: 1px solid var(--di-line);
  display: grid;
  grid-template-rows: 190px 1fr;
}

.di-story-body {
  padding: 17px;
}

.di-story-card h3 {
  font-size: 22px;
  line-height: 1.18;
  margin: 0 0 10px;
}

.di-right-rail {
  align-content: start;
  display: grid;
  gap: 18px;
}

.di-rail-panel {
  background: var(--di-paper);
  border: 1px solid var(--di-line);
  padding: 20px;
}

.di-editor-brief {
  border-top: 4px solid var(--di-blue);
}

.di-rail-panel h2 {
  border-bottom: 3px solid var(--di-ink);
  font-size: 22px;
  line-height: 1.05;
  margin: 0 0 16px;
  padding-bottom: 10px;
}

.di-link-list,
.di-most-read ol,
.di-check-list {
  margin: 0;
  padding-left: 20px;
}

.di-link-list li,
.di-most-read li,
.di-check-list li {
  border-bottom: 1px solid var(--di-line);
  font-weight: 800;
  line-height: 1.35;
  padding: 11px 0;
}

.di-link-list li:last-child,
.di-most-read li:last-child,
.di-check-list li:last-child {
  border-bottom: 0;
}

.di-check-list {
  color: var(--di-ink-soft);
  font-size: 14px;
  margin-top: 14px;
}

.di-desk-strip {
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 0 22px 34px;
}

.di-desk-strip a {
  background: #14213a;
  color: #fff;
  display: block;
  min-height: 94px;
  padding: 18px;
}

.di-desk-strip a:nth-child(2) {
  background: var(--di-green);
}

.di-desk-strip a:nth-child(3) {
  background: var(--di-gold);
}

.di-desk-strip a:nth-child(4) {
  background: var(--di-red);
}

.di-desk-strip strong,
.di-desk-strip span {
  display: block;
}

.di-desk-strip strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
  line-height: 1.05;
  margin-bottom: 8px;
}

.di-desk-strip span {
  color: rgba(255, 255, 255, 0.85);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
}

.di-section-grid {
  display: grid;
  gap: 22px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 0 22px 46px;
}

.di-news-section {
  background: var(--di-paper);
  border: 1px solid var(--di-line);
  padding: 20px;
}

.di-section-heading {
  align-items: center;
  border-bottom: 3px solid var(--di-ink);
  display: flex;
  justify-content: space-between;
  margin-bottom: 16px;
  padding-bottom: 10px;
}

.di-section-heading h2 {
  font-size: 25px;
  line-height: 1.05;
  margin: 0;
}

.di-section-heading a {
  color: var(--di-red);
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
  text-transform: uppercase;
}

.di-compact-card {
  border: 0;
  border-bottom: 1px solid var(--di-line);
  grid-template-columns: 118px minmax(0, 1fr);
  grid-template-rows: auto;
  padding: 14px 0;
}

.di-compact-card:first-of-type {
  padding-top: 0;
}

.di-compact-card:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.di-compact-card .di-story-image {
  min-height: 90px;
}

.di-compact-card .di-story-body {
  padding: 0 0 0 14px;
}

.di-compact-card h3 {
  font-size: 18px;
  margin-bottom: 6px;
}

.di-compact-card p {
  display: none;
}

.separate-containers .inside-article,
.separate-containers .comments-area,
.separate-containers .page-header,
.sidebar .widget {
  background: var(--di-paper);
  border: 1px solid var(--di-line);
  box-shadow: none;
}

.single .inside-article,
.page .inside-article {
  border-top: 4px solid var(--di-ink);
}

.entry-title {
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1.03;
}

.archive.author .page-header {
  padding: 24px 28px;
}

.archive.author .page-header h1 {
  align-items: center;
  display: flex;
  font-size: 30px;
  gap: 14px;
  line-height: 1.15;
  margin: 0;
}

.archive.author .page-header .avatar {
  border: 2px solid var(--di-line);
  border-radius: 50%;
  height: 64px;
  object-fit: cover;
  width: 64px;
}

.archive.author .generate-columns .inside-article {
  padding: 18px;
}

.archive.author .post-image {
  margin-bottom: 12px;
}

.archive.author .post-image img {
  aspect-ratio: 16 / 10;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.archive.author .entry-title {
  font-size: 21px;
  line-height: 1.18;
  margin: 0 0 8px;
}

.archive.author .featured-column .entry-title {
  font-size: 27px;
  line-height: 1.12;
}

.archive.author .entry-summary {
  color: var(--di-muted);
  font-size: 15px;
  line-height: 1.55;
}

@media (max-width: 768px) {
  .archive.author .page-header {
    padding: 20px;
  }

  .archive.author .page-header h1 {
    font-size: 26px;
  }

  .archive.author .page-header .avatar {
    height: 54px;
    width: 54px;
  }

  .archive.author .entry-title,
  .archive.author .featured-column .entry-title {
    font-size: 20px;
    line-height: 1.2;
  }
}

.entry-meta,
.entry-meta a,
.cat-links,
.tags-links {
  color: var(--di-muted);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
}

.entry-content {
  color: var(--di-ink-soft);
  font-size: 18px;
  line-height: 1.75;
}

.entry-content h2,
.entry-content h3 {
  color: var(--di-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 900;
  letter-spacing: 0;
}

.entry-content a {
  color: var(--di-blue);
  font-weight: 700;
}

.di-trust-panel {
  background: #f7f8fa;
  border-bottom: 1px solid var(--di-line);
  border-top: 4px solid var(--di-blue);
  display: grid;
  gap: 0;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0 0 28px;
}

.di-trust-item {
  border-right: 1px solid var(--di-line);
  min-width: 0;
  padding: 14px 16px;
}

.di-trust-item:nth-child(4) {
  border-right: 0;
}

.di-trust-label {
  color: var(--di-red);
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
  margin-bottom: 5px;
  text-transform: uppercase;
}

.di-trust-item strong {
  color: var(--di-ink);
  display: block;
  font-size: 14px;
  line-height: 1.25;
}

.di-trust-note {
  border-top: 1px solid var(--di-line);
  color: var(--di-muted);
  font-size: 13px;
  grid-column: 1 / -1;
  line-height: 1.55;
  padding: 12px 16px;
}

.di-trust-note a {
  color: var(--di-blue);
  font-weight: 900;
}

.page-header h1 {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 900;
}

.footer-bottom,
.site-footer {
  border-top: 1px solid var(--di-line);
}

.di-hub-listing {
  margin-top: 28px;
}

.di-hub-listing h2 {
  border-bottom: 3px solid var(--di-ink);
  font-size: 28px;
  margin: 0 0 18px;
  padding-bottom: 10px;
}

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

.di-hub-card {
  background: #fff;
  border: 1px solid var(--di-line);
  padding: 16px;
}

.di-hub-card__title {
  color: var(--di-ink);
  display: block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
  font-weight: 900;
  line-height: 1.18;
  margin-bottom: 8px;
  text-decoration: none;
}

.di-hub-card__meta {
  color: var(--di-red);
  display: block;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.di-hub-card p {
  color: var(--di-muted);
  font-size: 14px;
  line-height: 1.55;
  margin: 0;
}

@media (max-width: 980px) {
  .di-front-grid,
  .di-lead-story,
  .di-section-grid,
  .di-hub-grid {
    grid-template-columns: 1fr;
  }

  .di-lead-image {
    min-height: 320px;
  }

  .di-right-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .di-desk-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .di-top-strip .di-news-shell,
  .di-breaking-bar,
  .di-story-grid,
  .di-right-rail,
  .di-desk-strip {
    grid-template-columns: 1fr;
  }

  .di-top-strip .di-news-shell {
    align-items: flex-start;
    gap: 8px;
  }

  .di-top-date {
    margin-right: 0;
  }

  .di-top-links,
  .di-breaking-bar div,
  .di-masthead-edition {
    flex-wrap: wrap;
    white-space: normal;
  }

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

  .di-masthead {
    padding-top: 24px;
  }

  .di-lead-copy {
    padding: 22px;
  }

  .di-story-card {
    grid-template-rows: 180px 1fr;
  }

  .di-compact-card {
    grid-template-columns: 92px minmax(0, 1fr);
  }

  .entry-content {
    font-size: 16px;
  }

  .di-trust-panel {
    grid-template-columns: 1fr 1fr;
  }

  .di-trust-item:nth-child(2) {
    border-right: 0;
  }

  .di-trust-item:nth-child(3),
  .di-trust-item:nth-child(4) {
    border-top: 1px solid var(--di-line);
  }
}
