/* F1 news-portal family stylesheet — newspaper system.
   Palette: press red + editorial navy on paper white. */
:root {
  --nw-red: #a61c1c;
  --nw-red-dark: #7d1212;
  --nw-navy: rgb(23,54,93);
  --nw-navy-dark: #10263f;
  --nw-ink: #1d1d1b;
  --nw-mute: #6f6a5f;
  --nw-line: #ddd8cc;
  --nw-line-soft: rgb(236,232,220);
  --nw-paper: #fdfcf9;
  --nw-band: rgb(244,241,232);
  --nw-maxw: 1120px;
  --nw-serif: "Songti SC","STSong","SimSun",Georgia,"Times New Roman",serif;
  --nw-sans: system-ui,-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
}

* {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  background: var(--nw-paper);
  color: var(--nw-ink);
  font-family: var(--nw-sans);
  font-size: 16px;
  line-height: 1.78;
}

a {
  color: var(--nw-navy);
  text-decoration: none;
}

a:hover {
  color: var(--nw-red);
  text-decoration: underline;
}

a:focus-visible {
  outline: 2px solid var(--nw-red);
  outline-offset: 2px;
}

::selection {
  background: #f3d9d9;
}

.nw-wrap {
  max-width: var(--nw-maxw);
  margin: 0 auto;
  padding: 0 16px;
}

main {
  display: block;
  max-width: var(--nw-maxw);
  margin: 0 auto;
  padding: 0 16px 10px;
}

main h1 {
  font-family: var(--nw-serif);
  font-size: 29px;
  line-height: 1.35;
  margin: 14px 0 8px;
  color: var(--nw-ink);
}

main h2 {
  font-family: var(--nw-serif);
  font-size: 21px;
  line-height: 1.4;
  margin: 1.4em 0 .5em;
}

main h3 {
  font-size: 17px;
  line-height: 1.5;
  margin: 1.1em 0 .4em;
}

main p {
  margin: 0 0 1em;
}

main ul,main ol {
  margin: .2em 0 1.1em;
  padding-left: 1.35em;
}

main li {
  margin: .26em 0;
}

main strong {
  color: var(--nw-red-dark);
}

main img {
  max-width: 100%;
  height: auto;
}

.nw-datebar {
  background: var(--nw-navy-dark);
  color: rgb(207,217,230);
  font-size: 12.5px;
}

.nw-datebar .nw-wrap {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding-top: 5px;
  padding-bottom: 5px;
  flex-wrap: wrap;
}

.nw-datebar b {
  color: #FFFFFF;
  font-weight: 600;
}

.nw-masthead {
  background: rgb(255,255,255);
  border-bottom: 3px double var(--nw-ink);
}

.nw-mastrow {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 22px;
  padding: 18px 0 13px;
}

.nw-brand {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.nw-kickerline {
  font-size: 12px;
  letter-spacing: .34em;
  color: var(--nw-red);
  font-weight: 700;
  margin: 0;
}

.nw-sitename {
  font-family: var(--nw-serif);
  font-size: 31px;
  font-weight: 900;
  line-height: 1.25;
  color: var(--nw-red-dark);
  margin: 0;
}

.nw-tagline {
  font-size: 13.5px;
  color: var(--nw-mute);
  margin: 0;
}

.nw-headpick {
  flex: none;
  max-width: 330px;
  border-left: 1px solid var(--nw-line);
  padding-left: 18px;
  font-size: 13.5px;
  line-height: 1.6;
}

.nw-headpick span {
  display: block;
  font-size: 11.5px;
  letter-spacing: .22em;
  color: var(--nw-red);
  font-weight: 700;
  margin-bottom: 3px;
}

.nw-headpick a {
  font-family: var(--nw-serif);
  font-size: 16.5px;
  font-weight: 700;
  color: var(--nw-ink);
}

.nw-nav {
  background: var(--nw-navy);
  border-bottom: 3px solid var(--nw-red);
}

.nw-nav .nw-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}

.nw-nav a {
  color: rgb(232,237,244);
  font-size: 15.5px;
  font-weight: 600;
  padding: 9px 15px;
  border-right: 1px solid rgba(255,255,255,.14);
}

.nw-nav a:first-child {
  background: var(--nw-red);
  color: rgb(255,255,255);
}

.nw-nav a:hover {
  background: var(--nw-navy-dark);
  color: #ffffff;
  text-decoration: none;
}

.nw-nav a:first-child:hover {
  background: var(--nw-red-dark);
}

.nw-ticker {
  display: flex;
  gap: 12px;
  align-items: baseline;
  background: var(--nw-band);
  border: 1px solid var(--nw-line);
  border-top: none;
  padding: 7px 13px;
  margin: 0 0 4px;
  font-size: 13.5px;
  overflow: hidden;
}

.nw-ticker b {
  flex: none;
  background: var(--nw-red);
  color: rgb(255,255,255);
  font-size: 12px;
  letter-spacing: .18em;
  padding: 1px 8px;
}

.nw-ticker a {
  color: var(--nw-ink);
  white-space: nowrap;
}

.nw-ticker a+a::before {
  color: var(--nw-mute);
  margin-right: 12px;
  content: "·";
}

.nw-crumbs {
  font-size: 13px;
  color: var(--nw-mute);
  margin: 12px 0 0;
}

.nw-crumbs ol {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 2px 5px;
  padding: 0;
  margin: 0;
}

.nw-crumbs li {
  margin: 0;
}

.nw-crumbs li+li::before {
  content: ">";
  margin-right: 5px;
  color: var(--nw-mute);
}

.nw-crumbs a {
  color: var(--nw-mute);
  text-decoration: underline;
}

.nw-hero {
  border-bottom: 2px solid var(--nw-ink);
  padding: 14px 0 18px;
  margin-bottom: 6px;
}

.nw-heroband {
  border-top: 4px solid var(--nw-red);
  padding-top: 10px;
}

.nw-herokick {
  font-size: 12.5px;
  letter-spacing: .3em;
  color: var(--nw-red);
  font-weight: 700;
  margin: 0 0 4px;
}

.nw-h1 {
  font-family: var(--nw-serif);
  font-size: 44px;
  font-weight: 900;
  line-height: 1.15;
  margin: 0 0 8px;
  color: var(--nw-ink);
}

.nw-lede {
  font-size: 17.5px;
  line-height: 1.85;
  color: rgb(51,48,42);
  margin: 0 0 6px;
  max-width: 760px;
}

.nw-herometa {
  font-size: 13px;
  color: var(--nw-mute);
  margin: 0;
}

.nw-leadgrid {
  display: grid;
  grid-template-columns: 1.9fr 1fr;
  gap: 22px;
  margin-top: 16px;
}

.nw-lead {
  border-right: 1px solid var(--nw-line);
  padding-right: 22px;
}

.nw-lead figure {
  margin: 0 0 10px;
}

.nw-lead figure img {
  height: 320px;
  width: 100%;
  display: block;
  object-fit: cover;
}

.nw-leadfigcap {
  margin-top: 5px;
  font-size: 12.5px;
  color: var(--nw-mute);
}

.nw-leadtitle {
  font-family: var(--nw-serif);
  font-size: 27px;
  line-height: 1.35;
  margin: 0 0 8px;
}

.nw-leadtitle a {
  color: var(--nw-ink);
}

.nw-leadtitle a:hover {
  color: var(--nw-red-dark);
}

.nw-leadsum {
  font-size: 15.5px;
  color: #3D3A33;
  line-height: 1.8;
  margin: 0 0 8px;
}

.nw-meta {
  font-size: 12.5px;
  color: var(--nw-mute);
}

.nw-meta a {
  color: var(--nw-red-dark);
}

.nw-sidestack {
  display: flex;
  flex-direction: column;
}

.nw-sideitem {
  padding: 10px 0;
  border-bottom: 1px solid var(--nw-line-soft);
  overflow: hidden;
}

.nw-sideitem:first-child {
  padding-top: 0;
}

.nw-sideitem img {
  float: left;
  width: 96px;
  height: 60px;
  object-fit: cover;
  margin: 2px 11px 4px 0;
}

.nw-sideitem h3 {
  font-family: var(--nw-serif);
  font-size: 16.5px;
  line-height: 1.45;
  margin: 0 0 4px;
}

.nw-sideitem h3 a {
  color: var(--nw-ink);
}

.nw-sideitem p {
  font-size: 13px;
  color: var(--nw-mute);
  line-height: 1.6;
  margin: 0;
}

.nw-sechead {
  display: flex;
  align-items: baseline;
  gap: 12px;
  border-bottom: 2px solid var(--nw-ink);
  padding-bottom: 5px;
  margin: 26px 0 12px;
}

.nw-sechead h2 {
  font-family: var(--nw-serif);
  font-size: 21px;
  margin: 0;
}

.nw-sechead .nw-seckick {
  font-size: 11px;
  letter-spacing: .26em;
  color: var(--nw-red);
  font-weight: 700;
}

.nw-sechead .nw-secmore {
  white-space: nowrap;
  font-size: 13.5px;
  margin-left: auto;
}

.nw-newslist {
  list-style: none;
  margin: 0;
  padding: 0;
}

.nw-newsitem {
  display: flex;
  gap: 16px;
  padding: 11px 2px;
  border-bottom: 1px solid var(--nw-line-soft);
}

.nw-ndate {
  flex: none;
  width: 86px;
  font-size: 12.5px;
  color: var(--nw-mute);
  border-right: 1px solid var(--nw-line);
  padding-right: 12px;
  line-height: 1.5;
}

.nw-ndate b {
  display: block;
  font-family: var(--nw-serif);
  font-size: 19px;
  color: var(--nw-red-dark);
}

.nw-nbody {
  min-width: 0;
}

.nw-nbody h3 {
  font-family: var(--nw-serif);
  font-size: 18px;
  margin: 0 0 3px;
  line-height: 1.45;
}

.nw-nbody h3 a {
  color: var(--nw-ink);
}

.nw-nbody p {
  font-size: 14px;
  color: var(--nw-mute);
  line-height: 1.65;
  margin: 0;
}

.nw-chip {
  display: inline-block;
  font-size: 11.5px;
  color: var(--nw-navy);
  border: 1px solid var(--nw-navy);
  padding: 0 6px;
  margin-right: 8px;
  line-height: 1.7;
}

.nw-cols {
  display: grid;
  grid-template-columns: 1fr 308px;
  gap: 30px;
  margin-top: 8px;
}

.nw-main {
  min-width: 0;
}

.nw-side {
  min-width: 0;
}

.nw-catblock {
  margin: 0 0 24px;
}

.nw-cathead {
  display: flex;
  align-items: baseline;
  gap: 11px;
  background: var(--nw-band);
  border-top: 2px solid var(--nw-navy);
  padding: 7px 12px;
}

.nw-cathead h3 {
  font-family: var(--nw-serif);
  font-size: 19px;
  margin: 0;
}

.nw-cathead h3 a {
  color: var(--nw-navy-dark);
}

.nw-catkick {
  font-size: 10.5px;
  letter-spacing: .24em;
  color: var(--nw-red);
  font-weight: 700;
}

.nw-catcount {
  margin-left: auto;
  font-size: 12.5px;
  color: var(--nw-mute);
  white-space: nowrap;
}

.nw-catintro {
  font-size: 14px;
  color: var(--nw-mute);
  margin: 9px 2px 4px;
  line-height: 1.7;
}

.nw-numlist {
  list-style: none;
  margin: 0;
  padding: 0;
}

.nw-numitem {
  display: flex;
  gap: 13px;
  padding: 8px 2px;
  border-bottom: 1px solid var(--nw-line-soft);
}

.nw-num {
  flex: none;
  font-family: var(--nw-serif);
  font-size: 21px;
  font-weight: 900;
  color: var(--nw-red);
  line-height: 1.2;
  width: 34px;
}

.nw-numitem h4 {
  font-family: var(--nw-serif);
  font-size: 16.5px;
  margin: 0 0 2px;
  line-height: 1.45;
}

.nw-numitem h4 a {
  color: var(--nw-ink);
}

.nw-numitem p {
  font-size: 13px;
  color: var(--nw-mute);
  margin: 0;
  line-height: 1.6;
}

.nw-numitem img {
  flex: none;
  width: 104px;
  height: 62px;
  object-fit: cover;
}

.nw-longread article {
  border: 1px solid var(--nw-line);
  border-left: 4px solid var(--nw-red);
  padding: 13px 16px 8px;
  margin: 0 0 13px;
  background: #ffffff;
}

.nw-lrkick {
  font-size: 11px;
  letter-spacing: .22em;
  color: var(--nw-red);
  font-weight: 700;
  margin: 0 0 4px;
}

.nw-longread h3 {
  font-family: var(--nw-serif);
  font-size: 19px;
  margin: 0 0 6px;
  line-height: 1.45;
}

.nw-longread h3 a {
  color: var(--nw-ink);
}

.nw-longread p {
  font-size: 14px;
  color: var(--nw-mute);
  line-height: 1.7;
  margin: 0 0 6px;
}

.nw-widget {
  border: 1px solid var(--nw-line);
  background: rgb(255,255,255);
  margin: 0 0 18px;
}

.nw-widget h2 {
  font-family: var(--nw-serif);
  font-size: 16.5px;
  margin: 0;
  background: var(--nw-navy);
  color: rgb(255,255,255);
  padding: 7px 13px;
  border: none;
}

.nw-widget .nw-wbody {
  padding: 10px 13px 12px;
}

.nw-widget ol {
  margin: 0;
  padding-left: 1.4em;
}

.nw-widget ol li {
  margin: .42em 0;
  font-size: 14px;
  line-height: 1.6;
}

.nw-widget ol li::marker {
  color: var(--nw-red);
  font-weight: 700;
}

.nw-widget ol p {
  font-size: 12.5px;
  color: var(--nw-mute);
  margin: 1px 0 0;
  line-height: 1.55;
}

.nw-catindex {
  list-style: none;
  margin: 0;
  padding: 0;
}

.nw-catindex li {
  display: flex;
  justify-content: space-between;
  padding: 6px 0;
  border-bottom: 1px dotted var(--nw-line);
  font-size: 14.5px;
  margin: 0;
}

.nw-catindex li:last-child {
  border-bottom: none;
}

.nw-catindex span {
  color: var(--nw-mute);
  font-size: 13px;
}

.nw-tagcloud {
  line-height: 2.05;
}

.nw-tagcloud a {
  display: inline-block;
  font-size: 13.5px;
  border: 1px solid var(--nw-line);
  padding: 0 9px;
  margin: 0 5px 5px 0;
  color: var(--nw-navy);
  background: var(--nw-band);
}

.nw-tagcloud a:hover {
  border-color: var(--nw-red);
  text-decoration: none;
}

.nw-seclink {
  font-size: 12.5px;
  color: var(--nw-red-dark);
  white-space: nowrap;
}

.nw-faqdirect {
  list-style: none;
  margin: 9px 0 2px;
  padding: 8px 0 0;
  border-top: 1px dotted var(--nw-line);
}

.nw-faqdirect li {
  margin: .32em 0;
  font-size: 13.5px;
  line-height: 1.55;
}

.nw-widget details {
  border-bottom: 1px dotted var(--nw-line);
  padding: 7px 0;
}

.nw-widget details:last-child {
  border-bottom: none;
}

.nw-widget summary {
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.55;
}

.nw-widget details p {
  font-size: 13px;
  color: rgb(61,58,51);
  margin: 5px 0 2px;
  line-height: 1.65;
}

.nw-infobar {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 18px;
  font-size: 13px;
  color: var(--nw-mute);
  border-top: 1px solid var(--nw-line);
  border-bottom: 1px solid var(--nw-line);
  padding: 7px 2px;
  margin: 10px 0 16px;
}

.nw-infobar b {
  color: var(--nw-ink);
  font-weight: 600;
}

.nw-toc {
  border: 1px solid var(--nw-line);
  background: var(--nw-band);
  padding: 10px 16px 4px;
  margin: 0 0 16px;
}

.nw-toc h2 {
  font-size: 15.5px;
  margin: 0 0 5px;
  border: none;
  padding: 0;
}

.nw-toc ol {
  margin: 0 0 8px;
  padding-left: 1.4em;
  font-size: 14.5px;
}

.nw-toc li {
  margin: .18em 0;
}

.nw-article {
  overflow: hidden;
}

.nw-article .nw-lede {
  font-size: 17.5px;
  font-weight: 700;
  line-height: 1.85;
  color: var(--nw-ink);
}

.nw-figfloat {
  float: right;
  width: 44%;
  margin: 4px 0 12px 20px;
}

.nw-figfloat img {
  width: 100%;
  display: block;
}

.nw-figfloat figcaption {
  margin-top: 5px;
  color: var(--nw-mute);
  font-size: 12.5px;
  line-height: 1.55;
}

.nw-tagline2 {
  font-size: 14px;
  border-top: 1px dotted var(--nw-line);
  padding-top: 10px;
}

.nw-srcline {
  font-size: 13px;
  color: var(--nw-mute);
}

.nw-top5 {
  border: 1px solid var(--nw-line);
  background: #ffffff;
  padding: 4px 16px 10px;
  margin: 20px 0;
}

.nw-top5 h2 {
  font-size: 17px;
  margin: .7em 0 .4em;
}

.nw-top5 ol {
  margin: 0 0 6px;
  padding-left: 1.5em;
}

.nw-top5 li {
  margin: .35em 0;
}

.nw-top5 li::marker {
  color: var(--nw-red);
  font-weight: 700;
}

.nw-related {
  margin: 20px 0;
}

.nw-related h2 {
  font-size: 18px;
  border-bottom: 2px solid var(--nw-ink);
  padding-bottom: 5px;
}

.nw-related ul {
  list-style: none;
  margin: 0;
  padding: 0;
  columns: 2;
  column-gap: 28px;
}

.nw-related li {
  margin: 0;
  padding: 7px 0;
  border-bottom: 1px solid var(--nw-line-soft);
  break-inside: avoid;
  font-family: var(--nw-serif);
  font-size: 15.5px;
}

.nw-related li::before {
  content: "▸";
  color: var(--nw-red);
  margin-right: 7px;
}

.nw-prevnext {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  border-top: 2px solid var(--nw-ink);
  margin: 22px 0 6px;
  padding-top: 11px;
  font-size: 14.5px;
}

.nw-catcover {
  margin: 12px 0;
}

.nw-catcover img {
  width: 100%;
  height: 260px;
  object-fit: cover;
  display: block;
}

.nw-entryrows {
  list-style: none;
  margin: 0;
  padding: 0;
}

.nw-entryrow {
  overflow: hidden;
  padding: 13px 2px;
  border-bottom: 1px solid var(--nw-line-soft);
}

.nw-entryrow img {
  float: left;
  width: 150px;
  height: 88px;
  object-fit: cover;
  margin: 2px 14px 6px 0;
}

.nw-entryrow h3 {
  font-family: var(--nw-serif);
  font-size: 18.5px;
  margin: 0 0 4px;
  line-height: 1.45;
}

.nw-entryrow h3 a {
  color: var(--nw-ink);
}

.nw-entryrow p {
  font-size: 14px;
  color: var(--nw-mute);
  line-height: 1.65;
  margin: 0;
}

.nw-faqpage details {
  border: 1px solid var(--nw-line);
  background: #ffffff;
  padding: 11px 15px;
  margin: 0 0 10px;
}

.nw-faqpage summary {
  cursor: pointer;
  font-family: var(--nw-serif);
  font-size: 16.5px;
  font-weight: 700;
  line-height: 1.5;
}

.nw-faqpage summary::marker {
  color: var(--nw-red);
}

.nw-faqpage details p {
  margin: .6em 0 .2em;
  color: #33302a;
}

.nw-tagsec h2 {
  border-bottom: 1px solid var(--nw-line);
  padding-bottom: 4px;
}

.nw-foot {
  background: var(--nw-navy-dark);
  color: #c3cede;
  margin-top: 34px;
  border-top: 4px solid var(--nw-red);
  font-size: 14px;
}

.nw-footgrid {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr;
  gap: 26px;
  padding: 24px 0 6px;
}

.nw-footname {
  font-family: var(--nw-serif);
  font-size: 19px;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 7px;
}

.nw-foot p {
  margin: 0 0 8px;
  line-height: 1.75;
}

.nw-footnav {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.nw-foothead {
  font-weight: 700;
  margin-bottom: 3px;
  color: #ffffff;
}

.nw-footnav a {
  color: #c3cede;
}

.nw-footnav a:hover {
  color: #FFFFFF;
}

.nw-footline {
  border-top: 1px solid rgba(255,255,255,.22);
  margin: 16px 0 0;
  padding: 12px 0 18px;
  font-size: 12.5px;
  color: rgb(147,163,186);
}

@media (max-width: 900px) {
  .nw-cols {
    grid-template-columns: 1fr;
  }

  .nw-leadgrid {
    grid-template-columns: 1fr;
  }

  .nw-lead {
    border-right: none;
    padding-right: 0;
  }

  .nw-h1 {
    font-size: 34px;
  }

  .nw-mastrow {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .nw-headpick {
    border-left: none;
    padding-left: 0;
    max-width: none;
  }

  .nw-footgrid {
    grid-template-columns: 1fr 1fr;
  }

  .nw-related ul {
    columns: 1;
  }
}

@media (max-width: 560px) {
  body {
    font-size: 15.5px;
  }

  .nw-sitename {
    font-size: 25px;
  }

  .nw-h1 {
    font-size: 28px;
  }

  main h1 {
    font-size: 24px;
  }

  .nw-lead figure img {
    height: 210px;
  }

  .nw-ndate {
    width: 64px;
  }

  .nw-ndate b {
    font-size: 16px;
  }

  .nw-figfloat {
    float: none;
    width: 100%;
    margin: 0 0 12px;
  }

  .nw-entryrow img {
    width: 110px;
    height: 66px;
  }

  .nw-footgrid {
    grid-template-columns: 1fr;
  }

  .nw-prevnext {
    flex-direction: column;
  }

  .nw-ticker a {
    white-space: normal;
  }
}

@media print {
  .nw-datebar,.nw-nav,.nw-ticker,.nw-foot {
    display: none;
  }
  body {
    font-size: 12pt;
  }
}
