/* ======================================
   SOURCE THEME — CAMPAIGN MINIMAL MODE
   ====================================== */

/* --- Remove blog-style metadata --- */
.gh-card-meta,
.gh-card-author,
.gh-card-date,
.gh-post-meta,
.gh-post-authors,
.gh-post-reading-time {
    display: none !important;
}

/* --- Remove share/social UI --- */
.gh-social,
.gh-share,
.post-share,
.share {
    display: none !important;
}

/* --- Hide post thumbnails on lists (huge visual improvement) --- */
.gh-card-image,
.gh-feature-image {
    display: none !important;
}

/* --- Typography: civic + calm --- */
body {
    font-size: 18px;
    line-height: 1.6;
    color: #222;
}

/* Serif headings for professional tone */
h1, h2, h3 {
    font-family: "Cinzel", Georgia, serif;
    letter-spacing: 0.03em;
    font-weight: 500;
}

/* --- Narrow content width for credibility --- */
.gh-outer,
.gh-inner,
.gh-content {
    max-width: 720px;
}

/* --- Tighten spacing --- */
.gh-card {
    padding: 0.75rem 0;
    border-bottom: 1px solid rgba(0,0,0,0.05);
}

/* --- Navigation cleanup --- */
.gh-head-menu a {
    font-weight: 500;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    font-size: 0.85rem;
}

/* --- Remove loud hero spacing --- */
.gh-hero {
    margin-bottom: 1rem;
}

/* --- Footer more restrained --- */
footer {
    font-size: 0.85rem;
    opacity: 0.75;
}

/* --- HOME PAGE: remove the big top gap Source adds --- */
body.page-home .gh-main,
body.page-home .gh-outer,
body.page-home .gh-inner {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

body.page-home .gh-article,
body.page-home .gh-article-header {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Source often gives headings a lot of breathing room */
body.page-home .gh-article-title {
    margin-top: 0 !important;
}

/* SOURCE: kill big top spacing on the static homepage */
body.page-home .gh-main,
body.page-home .gh-outer,
body.page-home .gh-inner,
body.page-home main,
body.page-home header {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* If Source is using a large hero/header wrapper */
body.page-home .gh-hero,
body.page-home .gh-hero-inner,
body.page-home .gh-header,
body.page-home .gh-post-header {
  margin-bottom: 1rem !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Hide the literal "Home" title (looks like a CMS artifact) */
body.page-home .gh-article-title,
body.page-home .gh-post-title {
  display: none !important;
}

/* ======================================
   SOURCE: HOMEPAGE SPACING FIX
   (applies when <body> has class home-template)
   ====================================== */

/* Reduce the large top padding/margin Source gives the homepage */
body.home-template .gh-main,
body.home-template .gh-outer,
body.home-template .gh-inner {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* If a hero/header wrapper is creating the gap */
body.home-template .gh-hero,
body.home-template .gh-hero-inner,
body.home-template .gh-header,
body.home-template .gh-post-header {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Tighten first content block so it sits naturally under header */
body.home-template .gh-card:first-child,
body.home-template .gh-content:first-child {
  margin-top: 0 !important;
}
