/*
Theme Name: GreenTV News
Theme URI: https://greentv.media
Description: News-style child theme for GreenTV Media built on Xtra.
Author: GreenTV / Hermes
Template: xtra
Version: 1.0.0
Text Domain: greentv-news
*/

:root {
  --gtv-bg: #1c2620;
  --gtv-bg-2: #24332b;
  --gtv-surface: #1f3328;
  --gtv-surface-2: #274936;
  --gtv-card: #f7f3ec;
  --gtv-card-2: #fffaf2;
  --gtv-text: #f7f3ec;
  --gtv-ink: #1c2620;
  --gtv-muted: #d8d0c3;
  --gtv-muted-dark: #687769;
  --gtv-line: rgba(212, 168, 66, 0.32);
  --gtv-green: #2d9e6b;
  --gtv-green-dark: #1a6b36;
  --gtv-lime: #d4a842;
  --gtv-blue: #d4a842;
  --gtv-orange: #d4a842;
  --gtv-radius: 18px;
  --gtv-radius-sm: 10px;
  --gtv-shadow: 0 28px 80px rgba(0,0,0,.28);
}

body.greentv-news-home,
.greentv-news-home #layout,
.greentv-news-home .page_content {
  background: var(--gtv-bg) !important;
}

.greentv-news-home .page_content {
  padding: 0 !important;
}

.gtv-site {
  font-family: 'Space Grotesk', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  color: var(--gtv-text);
  background:
    radial-gradient(circle at 15% 0%, rgba(45, 158, 107, .22), transparent 34rem),
    radial-gradient(circle at 90% 10%, rgba(212, 168, 66, .14), transparent 28rem),
    linear-gradient(180deg, #1c2620 0%, #1c2620 44%, #1c2620 100%);
  min-height: 100vh;
  padding-bottom: 64px;
}

.gtv-container {
  width: min(1480px, calc(100% - 40px));
  margin: 0 auto;
}

.gtv-hero-band {
  border-bottom: 1px solid var(--gtv-line);
  background: linear-gradient(135deg, rgba(31, 51, 40, .88), rgba(28, 38, 32, .94));
}

.gtv-nav {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(28, 38, 32, .88);
  border-bottom: 1px solid var(--gtv-line);
  backdrop-filter: blur(14px);
}

.gtv-nav__inner {
  min-height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.gtv-brand {
  color: #fff !important;
  text-decoration: none !important;
  font-size: 24px;
  line-height: 1;
  letter-spacing: -.055em;
  font-weight: 800;
}

.gtv-brand span {
  color: var(--gtv-green);
  margin-left: 4px;
}

.gtv-menu {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin: 0;
  padding: 0;
}

.gtv-menu a {
  display: inline-flex;
  padding: 10px 13px;
  border-radius: 999px;
  color: var(--gtv-muted) !important;
  text-decoration: none !important;
  font: 700 12px/1 'IBM Plex Mono', ui-monospace, monospace;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.gtv-menu a:hover {
  background: rgba(45, 158, 107, .14);
  color: #fff !important;
}

.gtv-menu li:last-child a {
  background: var(--gtv-green);
  color: #1c2620 !important;
}

.gtv-menu li:last-child a:hover {
  background: var(--gtv-blue);
}

.gtv-topline {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 0;
  color: var(--gtv-muted);
  font: 600 12px/1.2 'IBM Plex Mono', ui-monospace, monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
  border-bottom: 1px solid var(--gtv-line);
}

.gtv-masthead {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr);
  gap: 42px;
  align-items: end;
  padding: clamp(42px, 7vw, 96px) 0 44px;
}

.gtv-eyebrow,
.gtv-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  color: var(--gtv-lime);
  font: 700 11px/1 'IBM Plex Mono', ui-monospace, monospace;
  text-transform: uppercase;
  letter-spacing: .12em;
  text-decoration: none;
}

.gtv-kicker::before,
.gtv-eyebrow::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--gtv-green);
  box-shadow: 0 0 18px rgba(45, 158, 107, .72);
}

.gtv-masthead h1 {
  max-width: 940px;
  margin: 0;
  color: #fff;
  font-size: clamp(48px, 8vw, 112px);
  line-height: .94;
  letter-spacing: -0.07em;
  font-weight: 700;
}

.gtv-intro {
  margin: 0;
  color: var(--gtv-muted);
  font-size: clamp(17px, 1.4vw, 22px);
  line-height: 1.55;
}

.gtv-news-grid {
  display: grid;
  grid-template-columns: 250px minmax(0, 1fr) 300px;
  gap: 22px;
  padding-top: 30px;
  align-items: start;
}

.gtv-sidebar {
  position: sticky;
  top: 24px;
  display: grid;
  gap: 18px;
}

.gtv-sidebar h2,
.gtv-section-head h2,
.gtv-vision-strip h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(28px, 3vw, 46px);
  line-height: 1;
  letter-spacing: -.045em;
}

.gtv-sidebar h2 {
  font-size: 24px;
}

.gtv-category-nav,
.gtv-mission-card,
.gtv-connect-card,
.gtv-founder-card,
.gtv-web3-card,
.gtv-title-stack,
.gtv-beat-card {
  border: 1px solid var(--gtv-line);
  border-radius: var(--gtv-radius);
  background: rgba(16, 41, 28, .72);
  box-shadow: var(--gtv-shadow);
  backdrop-filter: blur(10px);
}

.gtv-category-nav {
  padding: 10px;
}

.gtv-category-nav a {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 12px;
  color: var(--gtv-text);
  text-decoration: none;
  border-radius: 12px;
  font-weight: 650;
}

.gtv-category-nav a:hover {
  background: rgba(45, 158, 107, .12);
  color: var(--gtv-lime);
}

.gtv-category-nav strong {
  color: var(--gtv-green);
  font-family: 'IBM Plex Mono', monospace;
}

.gtv-mission-card,
.gtv-connect-card,
.gtv-founder-card,
.gtv-web3-card {
  padding: 20px;
}

.gtv-mission-card h3,
.gtv-connect-card h2,
.gtv-founder-card h2,
.gtv-web3-card h2 {
  margin: 0 0 10px;
  color: #fff;
  font-size: 25px;
  line-height: 1.05;
  letter-spacing: -.04em;
}

.gtv-mission-card p,
.gtv-connect-card p,
.gtv-founder-card p,
.gtv-web3-card p {
  margin: 0 0 16px;
  color: var(--gtv-muted);
  line-height: 1.5;
}

.gtv-mission-card a,
.gtv-founder-card a,
.gtv-beat-card__head a {
  color: var(--gtv-lime);
  font-weight: 700;
  text-decoration: none;
}

.gtv-button {
  display: inline-flex;
  justify-content: center;
  padding: 11px 14px;
  border-radius: 999px;
  background: var(--gtv-green);
  color: #1c2620 !important;
  font-weight: 800;
  text-decoration: none !important;
}

.gtv-button:hover {
  background: var(--gtv-blue);
}

.gtv-main-column {
  display: grid;
  gap: 22px;
}

.gtv-card {
  overflow: hidden;
  border-radius: var(--gtv-radius);
  background: var(--gtv-card-2);
  color: var(--gtv-ink);
  box-shadow: var(--gtv-shadow);
  border: 1px solid rgba(255,255,255,.1);
}

.gtv-card__image {
  display: block;
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, var(--gtv-surface), #274936);
  text-decoration: none;
}

.gtv-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 190px;
  object-fit: cover;
  transition: transform .35s ease, filter .35s ease;
}

.gtv-card:hover .gtv-card__image img {
  transform: scale(1.035);
  filter: saturate(1.1);
}

.gtv-card__placeholder {
  display: flex;
  min-height: 220px;
  align-items: center;
  justify-content: center;
  color: var(--gtv-green);
  font: 800 28px/1 'IBM Plex Mono', monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.gtv-card__body {
  padding: 18px;
}

.gtv-card h3 {
  margin: 0 0 10px;
  font-size: 24px;
  line-height: 1.03;
  letter-spacing: -.04em;
  color: var(--gtv-ink);
}

.gtv-card h3 a {
  color: inherit;
  text-decoration: none;
}

.gtv-card h3 a:hover {
  color: var(--gtv-green-dark);
}

.gtv-card p {
  color: #687769;
  margin: 0 0 14px;
  line-height: 1.48;
}

.gtv-card .gtv-kicker {
  color: var(--gtv-green-dark);
}

.gtv-card .gtv-kicker::before {
  background: var(--gtv-green-dark);
  box-shadow: none;
}

.gtv-meta {
  color: var(--gtv-muted-dark);
  font: 600 12px/1 'IBM Plex Mono', monospace;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.gtv-card--hero {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(300px, .82fr);
  min-height: 460px;
}

.gtv-card--hero .gtv-card__image img,
.gtv-card--hero .gtv-card__placeholder {
  min-height: 460px;
}

.gtv-card--hero .gtv-card__body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(28px, 4vw, 48px);
}

.gtv-card--hero h3 {
  font-size: clamp(38px, 4.3vw, 72px);
  letter-spacing: -.065em;
}

.gtv-card--hero p {
  font-size: 18px;
}

.gtv-four-pack,
.gtv-card-grid,
.gtv-category-sections {
  display: grid;
  gap: 18px;
}

.gtv-four-pack {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.gtv-card--compact .gtv-card__image img,
.gtv-card--compact .gtv-card__placeholder {
  min-height: 150px;
  height: 150px;
}

.gtv-card--compact .gtv-card__body {
  padding: 14px;
}

.gtv-card--compact h3 {
  font-size: 19px;
}

.gtv-title-stack {
  padding: 24px;
}

.gtv-section-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: end;
  margin-bottom: 22px;
}

.gtv-title-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
}

.gtv-title-list li {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 18px;
  padding: 14px 0;
  border-top: 1px solid var(--gtv-line);
}

.gtv-title-list a {
  color: var(--gtv-text);
  text-decoration: none;
  font-size: clamp(18px, 1.7vw, 28px);
  line-height: 1.1;
  font-weight: 700;
  letter-spacing: -.035em;
}

.gtv-title-list a:hover {
  color: var(--gtv-lime);
}

.gtv-title-list span {
  color: var(--gtv-muted);
  font: 600 12px/1.3 'IBM Plex Mono', monospace;
  text-transform: uppercase;
}

.gtv-section {
  padding-top: 56px;
}

.gtv-vision-strip {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(280px, .7fr);
  gap: 36px;
  align-items: end;
  margin-top: 48px;
  padding: 42px;
  border-radius: calc(var(--gtv-radius) + 10px);
  background: linear-gradient(135deg, rgba(66,232,121,.18), rgba(53,194,255,.12));
  border: 1px solid var(--gtv-line);
}

.gtv-vision-strip p {
  margin: 0;
  color: var(--gtv-muted);
  font-size: 19px;
  line-height: 1.55;
}

.gtv-category-sections {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.gtv-beat-card {
  padding: 18px;
}

.gtv-beat-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}

.gtv-beat-card .gtv-card {
  box-shadow: none;
}

.gtv-beat-card .gtv-card__image img,
.gtv-beat-card .gtv-card__placeholder {
  min-height: 220px;
  height: 220px;
}

.gtv-beat-card .gtv-title-list {
  margin-top: 12px;
}

.gtv-beat-card .gtv-title-list a {
  font-size: 18px;
}

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

@media (max-width: 1200px) {
  .gtv-news-grid {
    grid-template-columns: 220px minmax(0, 1fr);
  }
  .gtv-sidebar--right {
    grid-column: 1 / -1;
    position: static;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .gtv-four-pack,
  .gtv-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 880px) {
  .gtv-container { width: min(100% - 26px, 1480px); }
  .gtv-nav__inner {
    align-items: flex-start;
    flex-direction: column;
    padding: 14px 0;
  }
  .gtv-menu {
    justify-content: flex-start;
  }
  .gtv-menu a {
    padding: 9px 11px;
    font-size: 11px;
  }
  .gtv-topline,
  .gtv-masthead,
  .gtv-news-grid,
  .gtv-card--hero,
  .gtv-vision-strip,
  .gtv-category-sections,
  .gtv-card-grid,
  .gtv-sidebar--right {
    grid-template-columns: 1fr;
  }
  .gtv-sidebar {
    position: static;
  }
  .gtv-four-pack {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .gtv-card--hero .gtv-card__image img,
  .gtv-card--hero .gtv-card__placeholder {
    min-height: 280px;
  }
  .gtv-masthead h1 { letter-spacing: -.055em; }
}

@media (max-width: 560px) {
  .gtv-four-pack,
  .gtv-card-grid {
    grid-template-columns: 1fr;
  }
  .gtv-vision-strip,
  .gtv-title-stack,
  .gtv-beat-card {
    padding: 20px;
  }
  .gtv-title-list li {
    grid-template-columns: 1fr;
    gap: 6px;
  }
}


/* Remove parent-theme chrome on GreenTV custom pages and keep palette consistent. */
.greentv-news-home header,
.greentv-news-home .header_1,
.greentv-news-home .header_2,
.greentv-news-home .header_3,
.greentv-news-home .header_4,
.greentv-news-home .page_title,
.gt-page header,
.gt-page .header_1,
.gt-page .header_2,
.gt-page .header_3,
.gt-page .header_4,
.gt-page .page_title {
  display: none !important;
}

a { color: var(--gtv-green-dark); }
a:hover { color: var(--gtv-lime); }

.gtv-footer {
  background: #1c2620;
  color: var(--gtv-muted);
  border-top: 1px solid var(--gtv-line);
  padding: 36px 0;
  font-family: 'Space Grotesk', system-ui, sans-serif;
}
.gtv-footer__inner {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: center;
}
.gtv-footer strong { color: var(--gtv-text); font-size: 22px; }
.gtv-footer p { margin: 8px 0 0; max-width: 560px; }
.gtv-footer nav { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.gtv-footer a {
  color: var(--gtv-muted) !important;
  text-decoration: none !important;
  border: 1px solid var(--gtv-line);
  border-radius: 999px;
  padding: 9px 13px;
}
.gtv-footer a:hover { color: var(--gtv-ink) !important; background: var(--gtv-lime); }

.gt-page {
  min-height: 100vh;
  background: var(--gtv-bg);
  color: var(--gtv-text);
  font-family: 'Space Grotesk', system-ui, sans-serif;
}
.gt-page-hero {
  padding: clamp(54px, 8vw, 110px) 0 44px;
  background:
    radial-gradient(circle at 10% 0%, rgba(45,158,107,.24), transparent 32rem),
    linear-gradient(135deg, #1c2620, #1f3328);
  border-bottom: 1px solid var(--gtv-line);
}
.gt-page-hero h1 {
  max-width: 980px;
  margin: 0;
  color: var(--gtv-text);
  font-size: clamp(46px, 7vw, 94px);
  line-height: .96;
  letter-spacing: -.065em;
}
.gt-page-hero p {
  max-width: 760px;
  color: var(--gtv-muted);
  font-size: 20px;
  line-height: 1.55;
}
.gt-page-content {
  padding: 48px 0 72px;
}
.gt-page-content .gtv-page-panel {
  background: var(--gtv-card);
  color: var(--gtv-ink);
  border-radius: 28px;
  padding: clamp(24px, 4vw, 48px);
  box-shadow: var(--gtv-shadow);
}
.gt-page-content h2,
.gt-page-content h3 {
  color: var(--gtv-ink);
  letter-spacing: -.045em;
  line-height: 1.05;
}
.gt-page-content h2 { font-size: clamp(32px, 4vw, 56px); }
.gt-page-content h3 { font-size: 28px; }
.gt-page-content p,
.gt-page-content li { font-size: 18px; line-height: 1.65; }
.gtv-page-grid,
.gtv-page-feature-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin: 26px 0;
}
.gtv-page-card {
  background: #fffaf2;
  border: 1px solid rgba(26,107,54,.16);
  border-radius: 20px;
  padding: 24px;
}
.gtv-page-card--dark {
  background: #1c2620;
  color: var(--gtv-text);
}
.gtv-page-card--dark h3 { color: var(--gtv-text); }
.gtv-page-card--dark p { color: var(--gtv-muted); }
.gtv-page-image {
  overflow: hidden;
  border-radius: 24px;
  min-height: 260px;
  background: linear-gradient(135deg, #1a6b36, #2d9e6b);
}
.gtv-page-image img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 260px;
  object-fit: cover;
}
.gtv-palette-strip {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  border-radius: 18px;
  overflow: hidden;
  margin: 26px 0;
  min-height: 18px;
}
.gtv-palette-strip span:nth-child(1){background:#1a6b36}.gtv-palette-strip span:nth-child(2){background:#2d9e6b}.gtv-palette-strip span:nth-child(3){background:#d4a842}.gtv-palette-strip span:nth-child(4){background:#f7f3ec}.gtv-palette-strip span:nth-child(5){background:#1c2620}

@media (max-width: 760px) {
  .gtv-footer__inner,
  .gtv-page-grid,
  .gtv-page-feature-grid { grid-template-columns: 1fr; flex-direction: column; align-items: flex-start; }
}

/* Single post pages */
body.greentv-news-single,
body.greentv-news-single #layout,
body.greentv-news-single .page_content {
  background: var(--gtv-bg) !important;
}

body.greentv-news-single > header,
body.greentv-news-single #layout > header,
.greentv-news-single .header_1,
.greentv-news-single .header_2,
.greentv-news-single .header_3,
.greentv-news-single .header_4,
.greentv-news-single .page_title {
  display: none !important;
}

.gt-post {
  min-height: 100vh;
  background: var(--gtv-bg);
  color: var(--gtv-text);
  font-family: 'Space Grotesk', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.gt-post-hero {
  padding: clamp(46px, 7vw, 96px) 0 42px;
  border-bottom: 1px solid var(--gtv-line);
  background:
    radial-gradient(circle at 8% 0%, rgba(45, 158, 107, .24), transparent 34rem),
    radial-gradient(circle at 92% 8%, rgba(212, 168, 66, .13), transparent 28rem),
    linear-gradient(135deg, #1c2620, #1f3328);
}

.gt-post-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  gap: clamp(28px, 5vw, 64px);
  align-items: center;
}

.gt-post-hero h1 {
  margin: 0 0 18px;
  color: var(--gtv-text);
  font-size: clamp(42px, 6.4vw, 92px);
  line-height: .96;
  letter-spacing: -.065em;
}

.gt-post-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  color: var(--gtv-muted);
  font: 700 12px/1.2 'IBM Plex Mono', ui-monospace, monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.gt-post-deck {
  max-width: 780px;
  margin: 24px 0 0;
  color: var(--gtv-muted);
  font-size: clamp(18px, 1.6vw, 23px);
  line-height: 1.55;
}

.gt-post-hero__image {
  overflow: hidden;
  border: 1px solid var(--gtv-line);
  border-radius: 28px;
  background: linear-gradient(135deg, var(--gtv-surface), #274936);
  box-shadow: var(--gtv-shadow);
}

.gt-post-hero__image img,
.gt-post-hero__placeholder {
  display: block;
  width: 100%;
  min-height: clamp(300px, 38vw, 540px);
  object-fit: cover;
}

.gt-post-hero__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gtv-green);
  font: 800 34px/1 'IBM Plex Mono', ui-monospace, monospace;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.gt-post-wrap {
  padding: 46px 0 70px;
}

.gt-post-layout {
  display: grid;
  grid-template-columns: 280px minmax(0, 860px);
  gap: clamp(24px, 4vw, 58px);
  align-items: start;
  justify-content: center;
}

.gt-post-sidebar {
  position: sticky;
  top: 92px;
  display: grid;
  gap: 18px;
}

.gt-post-side-card {
  padding: 20px;
  border: 1px solid var(--gtv-line);
  border-radius: var(--gtv-radius);
  background: rgba(16, 41, 28, .72);
  box-shadow: var(--gtv-shadow);
}

.gt-post-side-card h2 {
  margin: 0 0 10px;
  color: #fff;
  font-size: 24px;
  letter-spacing: -.04em;
}

.gt-post-side-card p {
  margin: 0 0 16px;
  color: var(--gtv-muted);
  line-height: 1.5;
}

.gt-post-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.gt-post-tags a {
  display: inline-flex;
  padding: 8px 10px;
  border: 1px solid var(--gtv-line);
  border-radius: 999px;
  color: var(--gtv-muted) !important;
  text-decoration: none !important;
  font-size: 13px;
  font-weight: 700;
}

.gt-post-tags a:hover {
  background: var(--gtv-lime);
  color: var(--gtv-ink) !important;
}

.gt-post-content {
  overflow: hidden;
  border-radius: 28px;
  background: var(--gtv-card);
  color: var(--gtv-ink);
  padding: clamp(26px, 4.5vw, 58px);
  box-shadow: var(--gtv-shadow);
}

.gt-post-content > *:first-child { margin-top: 0; }
.gt-post-content > *:last-child { margin-bottom: 0; }
.gt-post-content p,
.gt-post-content li {
  color: #2e3a32;
  font-size: 19px;
  line-height: 1.76;
}
.gt-post-content h2,
.gt-post-content h3,
.gt-post-content h4 {
  color: var(--gtv-ink);
  line-height: 1.08;
  letter-spacing: -.045em;
  margin-top: 1.55em;
}
.gt-post-content h2 { font-size: clamp(32px, 4vw, 52px); }
.gt-post-content h3 { font-size: clamp(26px, 3vw, 36px); }
.gt-post-content a { color: var(--gtv-green-dark); font-weight: 700; }
.gt-post-content img,
.gt-post-content iframe,
.gt-post-content video {
  max-width: 100%;
  height: auto;
  border-radius: 18px;
}
.gt-post-content figure { margin: 28px 0; }
.gt-post-content figcaption {
  color: var(--gtv-muted-dark);
  font-size: 14px;
  text-align: center;
}

.gt-post-related {
  padding: 0 0 76px;
  background: var(--gtv-bg);
}

@media (max-width: 980px) {
  .gt-post-hero__grid,
  .gt-post-layout {
    grid-template-columns: 1fr;
  }
  .gt-post-sidebar {
    position: static;
    order: 2;
  }
}

/* Category and archive pages */
body.greentv-news-archive,
body.greentv-news-archive #layout,
body.greentv-news-archive .page_content {
  background: var(--gtv-bg) !important;
}

body.greentv-news-archive > header,
body.greentv-news-archive #layout > header,
.greentv-news-archive .header_1,
.greentv-news-archive .header_2,
.greentv-news-archive .header_3,
.greentv-news-archive .header_4,
.greentv-news-archive .page_title {
  display: none !important;
}

.gt-archive {
  min-height: 100vh;
  background: var(--gtv-bg);
  color: var(--gtv-text);
  font-family: 'Space Grotesk', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.gt-archive-hero {
  padding: clamp(52px, 8vw, 108px) 0 44px;
  border-bottom: 1px solid var(--gtv-line);
  background:
    radial-gradient(circle at 9% 0%, rgba(45, 158, 107, .25), transparent 34rem),
    radial-gradient(circle at 92% 12%, rgba(212, 168, 66, .15), transparent 28rem),
    linear-gradient(135deg, #1c2620, #1f3328);
}

.gt-archive-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 240px;
  gap: 28px;
  align-items: end;
}

.gt-archive-hero h1 {
  max-width: 980px;
  margin: 0;
  color: var(--gtv-text);
  font-size: clamp(46px, 7vw, 98px);
  line-height: .94;
  letter-spacing: -.065em;
}

.gt-archive-description {
  max-width: 780px;
  margin-top: 22px;
  color: var(--gtv-muted);
  font-size: clamp(18px, 1.5vw, 22px);
  line-height: 1.55;
}

.gt-archive-stat {
  padding: 24px;
  border: 1px solid var(--gtv-line);
  border-radius: var(--gtv-radius);
  background: rgba(16, 41, 28, .72);
  box-shadow: var(--gtv-shadow);
}

.gt-archive-stat strong {
  display: block;
  color: var(--gtv-lime);
  font-size: clamp(42px, 5vw, 72px);
  line-height: .9;
  letter-spacing: -.06em;
}

.gt-archive-stat span {
  display: block;
  margin-top: 10px;
  color: var(--gtv-muted);
  font: 700 12px/1.35 'IBM Plex Mono', ui-monospace, monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.gt-archive-content {
  padding: 34px 0 78px;
}

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

.gt-archive-sidebar {
  position: sticky;
  top: 92px;
  display: grid;
  gap: 18px;
}

.gt-archive-side-card {
  padding: 18px;
  border: 1px solid var(--gtv-line);
  border-radius: var(--gtv-radius);
  background: rgba(16, 41, 28, .72);
  box-shadow: var(--gtv-shadow);
}

.gt-archive-side-card h2 {
  margin: 0 0 12px;
  color: #fff;
  font-size: 24px;
  letter-spacing: -.04em;
}

.gt-archive-side-card p {
  color: var(--gtv-muted);
  line-height: 1.5;
}

.gt-archive-category-list {
  display: grid;
  gap: 6px;
}

.gt-archive-category-list a {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 12px;
  border-radius: 12px;
  color: var(--gtv-text) !important;
  text-decoration: none !important;
  font-weight: 700;
}

.gt-archive-category-list a:hover,
.gt-archive-category-list a.is-current {
  background: rgba(45, 158, 107, .15);
  color: var(--gtv-lime) !important;
}

.gt-archive-category-list strong {
  color: var(--gtv-green);
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
}

.gt-archive-main {
  display: grid;
  gap: 24px;
}

.gt-archive-main--wide {
  max-width: 1240px;
}

.gt-archive-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.gt-archive-pagination {
  color: var(--gtv-text);
}

.gt-archive-pagination .nav-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.gt-archive-pagination a,
.gt-archive-pagination span {
  display: inline-flex;
  min-width: 42px;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  padding: 10px 13px;
  border: 1px solid var(--gtv-line);
  border-radius: 999px;
  color: var(--gtv-muted) !important;
  text-decoration: none !important;
  font-weight: 800;
}

.gt-archive-pagination .current,
.gt-archive-pagination a:hover {
  background: var(--gtv-lime);
  color: var(--gtv-ink) !important;
}

.gt-archive-empty {
  padding: 38px;
  border-radius: 24px;
  background: var(--gtv-card);
  color: var(--gtv-ink);
}

@media (max-width: 1120px) {
  .gt-archive-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 920px) {
  .gt-archive-hero__inner,
  .gt-archive-layout {
    grid-template-columns: 1fr;
  }
  .gt-archive-sidebar {
    position: static;
    order: 2;
  }
  .gt-archive-grid { grid-template-columns: 1fr; }
}
