.page-news {
  background: var(--bg-deep);
  color: var(--white);
  font-family: var(--font-body);
  line-height: 1.5;
  overflow-x: hidden;
}
.page-news .news-container {
  width: 100%;
  max-width: var(--container);
  margin-inline: auto;
  padding-inline: 1rem;
}
.page-news a {
  text-decoration: none;
}
.page-news img {
  max-width: 100%;
}
.page-news .news-breadcrumb {
  padding: 1.5rem 0 .5rem;
}
.page-news .news-breadcrumb-list {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin: 0;
  padding: 0;
  list-style: none;
  font-family: var(--font-mono);
  font-size: .8125rem;
}
.page-news .news-breadcrumb-list li + li::before {
  content: "/";
  margin-right: .5rem;
  color: var(--gray-blue);
}
.page-news .news-breadcrumb-list a {
  color: var(--gray-blue);
  transition: color var(--ease);
}
.page-news .news-breadcrumb-list a:hover {
  color: var(--neon);
}
.page-news .news-breadcrumb-list [aria-current="page"] {
  color: var(--neon);
}
.page-news .news-hero {
  display: grid;
  gap: 1.5rem;
  padding: 2.5rem 0 3.5rem;
  align-items: end;
  background:
    linear-gradient(120deg, rgba(0,255,157,.06), transparent 42%),
    linear-gradient(315deg, rgba(255,77,0,.05), transparent 36%);
}
.page-news .news-kicker {
  font-family: var(--font-mono);
  font-size: .8125rem;
  letter-spacing: .1em;
  color: var(--neon);
  text-transform: uppercase;
}
.page-news .news-title {
  font-family: var(--font-head);
  font-size: clamp(2rem, 5vw, 3.4rem);
  line-height: 1.08;
  margin: .75rem 0 1rem;
  padding-left: .875rem;
  position: relative;
  text-transform: uppercase;
  letter-spacing: -.02em;
}
.page-news .news-title::before {
  content: "";
  position: absolute;
  left: 0;
  top: .12em;
  bottom: .12em;
  width: .3rem;
  background: var(--neon);
  transform: skewX(-12deg);
}
.page-news .news-desc {
  margin: 0 0 1.25rem;
  color: var(--gray-blue);
  font-size: 1.0625rem;
  line-height: 1.7;
  max-width: 70ch;
}
.page-news .news-hero-links {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
}
.page-news .news-hero-links a {
  display: inline-flex;
  align-items: center;
  padding: .55rem .9rem;
  background: var(--bg-card);
  border: 1px solid var(--silver);
  color: var(--white);
  font-family: var(--font-mono);
  font-size: .8125rem;
  clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 0 100%);
  transition: background var(--ease), border-color var(--ease), color var(--ease);
}
.page-news .news-hero-links a:hover {
  background: var(--neon);
  border-color: var(--neon);
  color: var(--bg-deep);
}
.page-news .news-hero-stats {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: .75rem;
  padding: 1.25rem 1rem 1rem;
  background: var(--bg-card);
  border: 1px solid rgba(200,207,216,.2);
}
.page-news .news-hero-stats::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--neon), var(--cyan) 45%, var(--orange));
}
.page-news .hero-stat {
  border-left: 2px solid var(--neon);
  padding-left: .75rem;
}
.page-news .hero-stat:nth-child(2) {
  border-left-color: var(--cyan);
}
.page-news .hero-stat:nth-child(3) {
  border-left-color: var(--orange);
}
.page-news .hero-stat:nth-child(4) {
  border-left-color: var(--neon);
}
.page-news .hero-stat-num {
  display: block;
  font-family: var(--font-head);
  font-size: 1.6rem;
  line-height: 1.1;
  color: var(--white);
}
.page-news .hero-stat-label {
  display: block;
  margin-top: .25rem;
  font-family: var(--font-mono);
  font-size: .6875rem;
  color: var(--gray-blue);
  letter-spacing: .04em;
  text-transform: uppercase;
}
.page-news .hero-stat-note {
  grid-column: 1 / -1;
  margin: .5rem 0 0;
  padding-top: .75rem;
  border-top: 1px dashed rgba(200,207,216,.25);
  color: var(--cyan);
  font-family: var(--font-mono);
  font-size: .75rem;
  line-height: 1.5;
}
.page-news .news-latest {
  padding: 3.5rem 0 2rem;
  scroll-margin-top: 110px;
}
.page-news .news-section-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem 1rem;
  margin-bottom: 1.25rem;
}
.page-news .section-label-dot {
  width: .6rem;
  height: .6rem;
  background: var(--orange);
  transform: skewX(-12deg);
  display: inline-block;
}
.page-news .news-section-title {
  margin: 0;
  font-family: var(--font-head);
  font-size: 1.75rem;
  line-height: 1.2;
}
.page-news .news-section-desc {
  width: 100%;
  margin: 0;
  color: var(--gray-blue);
  max-width: 72ch;
  line-height: 1.6;
}
.page-news .news-radio {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  opacity: 0;
  pointer-events: none;
  clip-path: inset(50%);
}
.page-news .news-filter {
  display: flex;
  flex-wrap: wrap;
  gap: .625rem;
  align-items: center;
  padding: .9rem 1rem;
  margin-bottom: 1.5rem;
  background: rgba(19,26,35,.7);
  border: 1px solid rgba(200,207,216,.16);
}
.page-news .news-filter-title {
  width: 100%;
  margin: 0 0 .25rem;
  font-family: var(--font-mono);
  font-size: .8125rem;
  font-weight: 400;
  letter-spacing: .1em;
  color: var(--silver);
  text-transform: uppercase;
}
.page-news .news-chip {
  display: inline-flex;
  align-items: center;
  padding: .45rem .85rem;
  font-family: var(--font-mono);
  font-size: .8125rem;
  line-height: 1;
  color: var(--silver);
  background: var(--bg-deep);
  border: 1px solid rgba(200,207,216,.3);
  cursor: pointer;
  transition: background var(--ease), border-color var(--ease), color var(--ease);
}
.page-news .news-chip:hover {
  border-color: var(--neon);
  color: var(--neon);
}
.page-news #league-all:checked ~ .news-filter .news-chip[for="league-all"],
.page-news #league-premier:checked ~ .news-filter .news-chip[for="league-premier"],
.page-news #league-laliga:checked ~ .news-filter .news-chip[for="league-laliga"],
.page-news #league-seriea:checked ~ .news-filter .news-chip[for="league-seriea"],
.page-news #league-bundesliga:checked ~ .news-filter .news-chip[for="league-bundesliga"],
.page-news #league-ligue1:checked ~ .news-filter .news-chip[for="league-ligue1"] {
  background: var(--neon);
  color: var(--bg-deep);
  border-color: var(--neon);
}
.page-news #league-premier:checked ~ .article-grid .article-card:not(.lg-premier),
.page-news #league-laliga:checked ~ .article-grid .article-card:not(.lg-laliga),
.page-news #league-seriea:checked ~ .article-grid .article-card:not(.lg-seriea),
.page-news #league-bundesliga:checked ~ .article-grid .article-card:not(.lg-bundesliga),
.page-news #league-ligue1:checked ~ .article-grid .article-card:not(.lg-ligue1) {
  display: none;
}
.page-news .article-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.25rem;
}
.page-news .article-card {
  grid-column: 1 / -1;
  position: relative;
  display: flex;
  flex-direction: column;
  background: var(--bg-card);
  border: 1px solid rgba(200,207,216,.18);
  overflow: hidden;
  transition: transform var(--ease), border-color var(--ease), filter var(--ease);
  scroll-margin-top: 110px;
}
.page-news .article-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  z-index: 2;
  background: linear-gradient(90deg, var(--neon), var(--cyan) 50%, transparent);
}
.page-news .article-card:hover {
  transform: translateY(-4px);
  border-color: var(--neon);
  filter: brightness(1.1);
}
.page-news .card-media {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--bg-deep);
}
.page-news .card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}
.page-news .article-card:hover .card-media img {
  transform: scale(1.05);
}
.page-news .card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 1.25rem;
}
.page-news .card-featured .card-body {
  padding: 1.5rem;
}
.page-news .card-featured .card-title {
  font-size: 1.5rem;
}
.page-news .card-title {
  margin: 0 0 .5rem;
  font-family: var(--font-head);
  font-size: 1.125rem;
  line-height: 1.2;
  color: var(--white);
}
.page-news .card-excerpt {
  margin: 0 0 1rem;
  color: var(--gray-blue);
  line-height: 1.6;
}
.page-news .card-meta {
  margin-top: auto;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem 1rem;
  padding-top: .75rem;
  border-top: 1px dashed rgba(200,207,216,.2);
  font-family: var(--font-mono);
  font-size: .6875rem;
  color: var(--silver);
  text-transform: uppercase;
}
.page-news .card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-bottom: .75rem;
}
.page-news .news-tag {
  display: inline-block;
  padding: .3rem .625rem;
  font-family: var(--font-mono);
  font-size: .6875rem;
  line-height: 1.2;
  letter-spacing: .04em;
  color: var(--white);
  background: rgba(200,207,216,.12);
  border-left: 2px solid var(--silver);
  text-transform: uppercase;
}
.page-news .news-tag-hot,
.page-news .news-tag-orange {
  background: rgba(255,77,0,.16);
  border-left-color: var(--orange);
  color: var(--white);
}
.page-news .news-tag-cyan {
  background: rgba(0,212,255,.14);
  border-left-color: var(--cyan);
  color: var(--white);
}
.page-news .card-visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-height: 110px;
  padding: 1rem 1.5rem;
  overflow: hidden;
  background:
    linear-gradient(120deg, rgba(0,255,157,.12), transparent 40%),
    var(--bg-deep);
  border-bottom: 1px solid rgba(200,207,216,.15);
}
.page-news .card-visual-num {
  font-family: var(--font-head);
  font-size: 5rem;
  line-height: 1;
  color: rgba(0,255,157,.16);
  -webkit-text-stroke: 1px var(--neon);
}
.page-news .card-visual-line {
  position: absolute;
  left: 1.25rem;
  right: 38%;
  height: 2px;
  background: linear-gradient(90deg, var(--cyan), var(--orange));
  transform: skewX(-20deg);
}
.page-news .news-series {
  padding: 3rem 0 4rem;
  background:
    linear-gradient(180deg, rgba(0,255,157,.05), transparent 30%),
    var(--bg-deep);
  border-top: 1px solid rgba(200,207,216,.12);
  scroll-margin-top: 110px;
}
.page-news .series-grid {
  display: grid;
  gap: 1.25rem;
}
.page-news .series-card {
  position: relative;
  padding: 1.5rem;
  background: var(--bg-card);
  border: 1px solid rgba(200,207,216,.18);
  clip-path: polygon(0 0, calc(100% - 22px) 0, 100% 22px, 100% 100%, 0 100%);
  transition: border-color var(--ease), transform var(--ease);
}
.page-news .series-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--neon), transparent);
}
.page-news .series-card-round::before {
  background: linear-gradient(90deg, var(--orange), transparent);
}
.page-news .series-card-compare::before {
  background: linear-gradient(90deg, var(--neon), transparent);
}
.page-news .series-card-screen::before {
  background: linear-gradient(90deg, var(--cyan), transparent);
}
.page-news .series-card-lexicon::before {
  background: linear-gradient(90deg, var(--silver), transparent);
}
.page-news .series-card:hover {
  transform: translateY(-4px);
  border-color: var(--neon);
}
.page-news .series-num {
  position: absolute;
  right: 1rem;
  bottom: .5rem;
  font-family: var(--font-head);
  font-size: 4rem;
  line-height: 1;
  color: rgba(200,207,216,.14);
  -webkit-text-stroke: 1px rgba(200,207,216,.2);
  z-index: 0;
}
.page-news .series-inner {
  position: relative;
  z-index: 1;
}
.page-news .series-kicker {
  display: block;
  font-family: var(--font-mono);
  font-size: .6875rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--neon);
  margin-bottom: .5rem;
}
.page-news .series-card-round .series-kicker {
  color: var(--orange);
}
.page-news .series-card-screen .series-kicker {
  color: var(--cyan);
}
.page-news .series-card-lexicon .series-kicker {
  color: var(--silver);
}
.page-news .series-title {
  margin: 0 0 .5rem;
  font-family: var(--font-head);
  font-size: 1.25rem;
}
.page-news .series-title a {
  color: var(--white);
  transition: color var(--ease);
}
.page-news .series-title a:hover {
  color: var(--neon);
}
.page-news .series-desc {
  margin: 0 0 1rem;
  color: var(--gray-blue);
  line-height: 1.6;
  font-size: .9375rem;
}
.page-news .series-cta {
  display: inline-flex;
  gap: .375rem;
  font-family: var(--font-mono);
  font-size: .8125rem;
  color: var(--neon);
  border-bottom: 1px solid transparent;
  transition: border-color var(--ease);
}
.page-news .series-cta:hover {
  border-color: var(--neon);
}

@media (min-width: 768px) {
  .page-news .news-container {
    padding-inline: 1.5rem;
  }
  .page-news .news-hero {
    grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr);
    align-items: end;
  }
  .page-news .news-hero-stats {
    grid-template-columns: repeat(4, 1fr);
  }
  .page-news .hero-stat-num {
    font-size: 1.75rem;
  }
  .page-news .news-filter-title {
    width: auto;
    margin: 0 .5rem 0 0;
  }
  .page-news .card-featured {
    grid-column: span 12;
  }
  .page-news .card-side {
    grid-column: span 6;
  }
  .page-news .card-trio {
    grid-column: span 6;
  }
  .page-news .card-wide {
    grid-column: span 12;
  }
  .page-news .card-banner {
    grid-column: span 12;
  }
  .page-news .series-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1120px) {
  .page-news .news-hero {
    gap: 2rem;
  }
  .page-news .card-featured {
    grid-column: span 7;
  }
  .page-news .card-side {
    grid-column: span 5;
  }
  .page-news .card-trio {
    grid-column: span 4;
  }
  .page-news .card-wide {
    grid-column: span 8;
  }
  .page-news .card-banner {
    grid-column: 1 / -1;
  }
  .page-news .series-grid {
    grid-template-columns: repeat(4, 1fr);
  }
  .page-news .news-series {
    padding: 4rem 0 5rem;
  }
}
