.tcg-site-header {
    position: sticky;
    top: 0;
    z-index: 9999;
    background: rgba(5, 8, 22, 0.82);
    backdrop-filter: blur(18px);
    border-bottom: 1px solid rgba(255,255,255,0.12);
    font-family: Inter, Arial, sans-serif;
  }

  .tcg-header-wrap {
    max-width: 1180px;
    margin: 0 auto;
    padding: 14px 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
  }

  .tcg-brand {
    display: flex;
    align-items: center;
    gap: 14px;
    text-decoration: none !important;
  }

  .tcg-brand img {
    width: 58px;
    height: auto;
  }

  .tcg-brand-text {
    color: #fff;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -0.5px;
  }

  .tcg-nav {
    display: flex;
    align-items: center;
    gap: 26px;
  }

  .tcg-nav a {
    color: #cbd5e1 !important;
    text-decoration: none !important;
    font-weight: 700;
    font-size: 15px;
    transition: 0.2s ease;
  }

  .tcg-nav a:hover {
    color: #ffffff !important;
  }

  .tcg-nav .tcg-nav-cta {
    padding: 12px 18px;
    border-radius: 14px;
    color: #fff !important;
    background: linear-gradient(135deg, #38bdf8, #8b5cf6);
    box-shadow: 0 12px 35px rgba(56,189,248,.25);
  }

  .tcg-mobile-menu {
    display: none;
  }

  @media (max-width: 800px) {
    .tcg-header-wrap {
      padding: 12px 18px;
    }

    .tcg-brand img {
      width: 48px;
    }

    .tcg-brand-text {
      font-size: 18px;
    }

    .tcg-nav {
      display: none;
    }

    .tcg-mobile-menu {
      display: inline-flex;
      color: #fff !important;
      background: rgba(255,255,255,0.08);
      border: 1px solid rgba(255,255,255,0.16);
      padding: 10px 14px;
      border-radius: 12px;
      text-decoration: none !important;
      font-weight: 800;
    }
  }
  .tcg-site-footer {
    font-family: Inter, Arial, sans-serif;
    background:
      radial-gradient(circle at top left, rgba(56,189,248,0.14), transparent 34%),
      linear-gradient(180deg, #050816, #03050d);
    border-top: 1px solid rgba(255,255,255,0.12);
    color: #cbd5e1;
    padding: 64px 22px 28px;
  }

  .tcg-footer-wrap {
    max-width: 1180px;
    margin: 0 auto;
  }

  .tcg-footer-main {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr;
    gap: 34px;
  }

  .tcg-footer-brand {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
  }

  .tcg-footer-brand img {
    width: 62px;
    height: auto;
  }

  .tcg-footer-brand strong {
    color: #fff;
    font-size: 24px;
    letter-spacing: -0.7px;
  }

  .tcg-footer-about {
    max-width: 360px;
    line-height: 1.6;
    color: #94a3b8;
    margin: 0;
  }

  .tcg-footer-col h4 {
    color: #fff;
    font-size: 15px;
    margin: 0 0 16px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
  }

  .tcg-footer-col a {
    display: block;
    color: #cbd5e1 !important;
    text-decoration: none !important;
    margin-bottom: 11px;
    font-weight: 600;
  }

  .tcg-footer-col a:hover {
    color: #ffffff !important;
  }

  .tcg-footer-cta {
    margin-top: 34px;
    padding: 28px;
    border-radius: 26px;
    background:
      linear-gradient(135deg, rgba(56,189,248,0.18), rgba(139,92,246,0.18));
    border: 1px solid rgba(255,255,255,0.14);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
  }

  .tcg-footer-cta h3 {
    margin: 0 0 6px;
    color: #fff;
    font-size: 26px;
    letter-spacing: -1px;
  }

  .tcg-footer-cta p {
    margin: 0;
    color: #cbd5e1;
  }

  .tcg-footer-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 22px;
    border-radius: 15px;
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 900;
    background: linear-gradient(135deg, #38bdf8, #8b5cf6);
    white-space: nowrap;
  }

  .tcg-footer-bottom {
    margin-top: 34px;
    padding-top: 24px;
    border-top: 1px solid rgba(255,255,255,0.1);
    display: flex;
    justify-content: space-between;
    gap: 16px;
    color: #94a3b8;
    font-size: 14px;
  }

  @media (max-width: 850px) {
    .tcg-footer-main {
      grid-template-columns: 1fr;
    }

    .tcg-footer-cta {
      display: block;
      text-align: center;
    }

    .tcg-footer-btn {
      margin-top: 20px;
      width: 100%;
    }

    .tcg-footer-bottom {
      display: block;
      text-align: center;
      line-height: 1.8;
    }
  }
/* Make homepage full width */
.home .site-content .ast-container,
.home .ast-container {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.home #primary,
.home .content-area,
.home .entry-content,
.home article,
.home .site-main {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.home .entry-content > * {
  max-width: 100% !important;
}

.home .tcg-home {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}
/* Remove Astra/WordPress gap under custom header */
.home #content,
.home .site-content,
.home .ast-container,
.home #primary,
.home .content-area,
.home .site-main,
.home article,
.home .entry-content,
.home .wp-block-html {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Hide homepage title/header area if Astra is outputting one */
.home .entry-header,
.home .ast-single-post-order,
.home .post-thumb-img-content {
  display: none !important;
}

/* Remove spacing from first block on homepage */
.home .entry-content > *:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Pull the homepage section directly under the nav */
.home .tcg-home {
  margin-top: -1px !important;
}
/* Force the first homepage block upward */
.home .entry-content {
  position: relative;
  top: -20px;
}

.home .tcg-home {
  margin-bottom: -20px;
}
/* Remove white gap caused by custom header/Astra layout */
.tcg-site-header {
  margin-bottom: 0 !important;
}

#page {
  background: #050816 !important;
}

#content {
  margin-top: 0 !important;
  padding-top: 0 !important;
  background: #050816 !important;
}

.ast-container {
  background: transparent !important;
}

/* Remove the default white background from Astra body/content */
body,
.site,
.site-content,
.ast-separate-container,
.ast-article-single {
  background: #050816 !important;
}
.tcg-footer-main {
  align-items: start !important;
}

.tcg-footer-cta {
  margin: 0 0 44px !important;
}

.tcg-footer-cta {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.tcg-footer-cta h3 {
  max-width: 720px;
}

.tcg-footer-cta p {
  max-width: 760px;
}

.tcg-footer-bottom {
  margin-top: 44px !important;
}
/* =========================
   DARK BLOG (MATCH LANDING PAGES)
========================= */

/* Ensure blog uses same dark background */
.single-post,
.blog,
.archive,
.single-post #page,
.single-post #content,
.blog #page,
.archive #page {
  background: #050816 !important;
}

/* Headings (match landing pages) */
.single-post h1,
.single-post h2,
.single-post h3,
.blog h1,
.blog h2,
.blog h3,
.archive h1,
.archive h2,
.archive h3 {
  color: #ffffff !important;
  font-family: Inter, Arial, sans-serif !important;
  font-weight: 950;
  letter-spacing: -0.02em;
  text-shadow: 0 3px 25px rgba(0,0,0,0.6);
}

/* Paragraphs (MAIN FIX) */
.single-post p,
.blog p,
.archive p {
  color: #cbd5e1 !important; /* same as landing pages */
  font-size: 18px;
  line-height: 1.75;
}

/* Lists */
.single-post li,
.blog li,
.archive li {
  color: #cbd5e1 !important;
}

/* Links */
.single-post a,
.blog a,
.archive a {
  color: #38bdf8 !important;
  font-weight: 600;
}

/* Strong text */
.single-post strong {
  color: #ffffff !important;
}

/* Blockquotes / highlights */
.single-post blockquote {
  border-left: 3px solid #8b5cf6;
  padding-left: 16px;
  color: #e2e8f0;
}
/* =========================
   GRADIENT HEADINGS FOR BLOG
========================= */

.single-post h1,
.single-post h2,
.single-post h3,
.blog h1,
.blog h2,
.blog h3,
.archive h1,
.archive h2,
.archive h3 {
  background: linear-gradient(90deg, #38bdf8, #60a5fa, #8b5cf6, #ec4899);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent !important;
  font-family: Inter, Arial, sans-serif !important;
  font-weight: 950;
  letter-spacing: -0.02em;
}
/* =========================
   PREMIUM DARK BLOG DESIGN
========================= */

.single-post .site-content,
.single-post #content,
.single-post #page {
  background:
    radial-gradient(circle at 10% 0%, rgba(56,189,248,.14), transparent 30%),
    radial-gradient(circle at 90% 8%, rgba(139,92,246,.16), transparent 32%),
    linear-gradient(180deg, #060b18 0%, #050816 45%, #03050d 100%) !important;
}

/* Main article card */
.single-post article {
  max-width: 900px !important;
  margin: 70px auto !important;
  padding: 44px !important;
  border-radius: 34px;
  background:
    radial-gradient(circle at top right, rgba(56,189,248,.10), transparent 35%),
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 28px 90px rgba(0,0,0,.28);
}

/* Title */
.single-post .entry-title {
  font-size: clamp(38px, 5vw, 64px) !important;
  line-height: 1.02 !important;
  letter-spacing: -2px !important;
  margin-bottom: 16px !important;
  background: linear-gradient(90deg, #38bdf8, #60a5fa, #8b5cf6, #ec4899);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Meta text */
.single-post .entry-meta,
.single-post .entry-meta a {
  color: #38bdf8 !important;
  font-weight: 800;
}

/* Featured image */
.single-post .entry-content img,
.single-post .post-thumb img {
  border-radius: 24px !important;
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 22px 70px rgba(0,0,0,.35);
  margin: 30px 0 !important;
}

/* Body text */
.single-post .entry-content p {
  color: #cbd5e1 !important;
  font-size: 19px !important;
  line-height: 1.85 !important;
  margin-bottom: 24px !important;
}

/* Headings inside article */
.single-post .entry-content h2,
.single-post .entry-content h3 {
  margin-top: 54px !important;
  margin-bottom: 18px !important;
  color: #ffffff !important;
  -webkit-text-fill-color: unset !important;
  background: none !important;
  text-shadow: 0 4px 24px rgba(0,0,0,.55);
}

.single-post .entry-content h2 {
  font-size: clamp(30px, 4vw, 44px) !important;
}

.single-post .entry-content h3 {
  font-size: 28px !important;
}

/* Make lists look like landing-page cards */
.single-post .entry-content ul,
.single-post .entry-content ol {
  margin: 28px 0 !important;
  padding: 0 !important;
  list-style: none !important;
  display: grid;
  gap: 12px;
}

.single-post .entry-content li {
  padding: 16px 18px;
  border-radius: 18px;
  background: rgba(255,255,255,.065);
  border: 1px solid rgba(255,255,255,.13);
  color: #e5edff !important;
  font-size: 17px;
  line-height: 1.55;
}

.single-post .entry-content ul li::before {
  content: "✓";
  color: #22c55e;
  font-weight: 950;
  margin-right: 10px;
}

/* Blockquotes / callouts */
.single-post blockquote {
  margin: 34px 0 !important;
  padding: 26px 28px !important;
  border-radius: 24px;
  border-left: 0 !important;
  background:
    radial-gradient(circle at top left, rgba(139,92,246,.18), transparent 35%),
    rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.15) !important;
  color: #ffffff !important;
}

/* Links */
.single-post .entry-content a {
  color: #38bdf8 !important;
  font-weight: 850;
}

/* Optional: make each major section feel boxed if using WP separators */
.single-post .entry-content hr {
  border: 0;
  height: 1px;
  margin: 46px 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent);
}

/* Comments / navigation cleanup */
.single-post .post-navigation,
.single-post .comments-area {
  max-width: 900px;
  margin: 30px auto;
}

/* Mobile */
@media (max-width: 768px) {
  .single-post article {
    margin: 30px 14px !important;
    padding: 26px 20px !important;
    border-radius: 26px;
  }

  .single-post .entry-title {
    font-size: 36px !important;
    letter-spacing: -1.4px !important;
  }

  .single-post .entry-content p {
    font-size: 17px !important;
  }
}
.tcg-mobile-toggle,
.tcg-mobile-nav {
  display: none;
}

@media (max-width: 800px) {
  .tcg-header-wrap {
    padding: 12px 18px;
  }

  .tcg-brand {
    min-width: 0;
  }

  .tcg-brand img {
    width: 46px;
  }

  .tcg-brand-text {
    font-size: 20px;
    line-height: 1.05;
    max-width: 130px;
  }

  .tcg-nav,
  .tcg-mobile-menu {
    display: none !important;
  }

  .tcg-mobile-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 16px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.16);
    background: rgba(255,255,255,.08);
    color: #fff;
    font-weight: 900;
    font-family: Inter, Arial, sans-serif;
    cursor: pointer;
  }

  .tcg-mobile-nav {
    display: none;
    position: fixed;
    top: 72px;
    left: 14px;
    right: 14px;
    z-index: 9998;
    padding: 18px;
    border-radius: 22px;
    background: rgba(5,8,22,.96);
    border: 1px solid rgba(255,255,255,.14);
    box-shadow: 0 24px 80px rgba(0,0,0,.4);
  }

  body.tcg-menu-open .tcg-mobile-nav {
    display: grid;
    gap: 10px;
  }

  .tcg-mobile-nav a {
    display: flex;
    align-items: center;
    min-height: 48px;
    padding: 0 14px;
    border-radius: 14px;
    color: #dbeafe !important;
    text-decoration: none !important;
    font-weight: 850;
    background: rgba(255,255,255,.055);
    border: 1px solid rgba(255,255,255,.08);
  }

  .tcg-mobile-nav .tcg-mobile-cta {
    justify-content: center;
    color: #fff !important;
    background: linear-gradient(135deg, #38bdf8, #8b5cf6);
    border: none;
    margin-top: 4px;
  }
}