/* ============================================================================
   GFA Blog / Journal skin
   Brands the Twenty Twenty-Four FSE blog (index, single posts, archives,
   search) to the Ink & Champagne system. Scoped to body.gfa-blog so it never
   touches Elementor-canvas pages. design.css :root tokens are already loaded.
   ============================================================================ */

body.gfa-blog{background:var(--bg)!important;color:var(--fg)!important;font-family:var(--gfa-body);padding-top:84px}
body.gfa-blog .wp-site-blocks,
body.gfa-blog main.wp-block-group{background:var(--bg)}
body.gfa-blog a{color:var(--gfa-champagne)}
/* strip theme light backgrounds on generic groups (header/footer/hero set their own) */
body.gfa-blog .wp-block-group.has-base-background-color,
body.gfa-blog .wp-block-group.has-background{background-color:transparent!important}

/* HEADER + FOOTER: the theme's header/footer template parts now hold the real
   GFA markup (.brand/.nav-links/.nav-cta, .foot-grid…) and are styled entirely
   by design.css — identical to the Elementor pages. The body padding-top above
   clears the fixed GFA header on these theme-rendered views. */

/* ---------------- BLOG INDEX HERO (injected .gfa-blog-hero) ---------------- */
.gfa-blog-hero{text-align:center;padding:110px 24px 26px;max-width:900px;margin:0 auto}
.gfa-blog-hero .gfa-blog-eyebrow{
  display:block;font-family:var(--gfa-caption);font-weight:400;font-size:13px;
  letter-spacing:.34em;text-transform:uppercase;color:var(--gfa-champagne);margin-bottom:18px
}
.gfa-blog-hero h1{
  font-family:var(--gfa-display);text-transform:uppercase;color:var(--fg);
  font-size:clamp(2.8rem,7vw,5rem);line-height:1;margin:0 0 16px;font-weight:400;letter-spacing:.01em
}
.gfa-blog-hero p{color:var(--gfa-slate);font-size:1.05rem;max-width:560px;margin:0 auto;line-height:1.6}
.gfa-blog-hero::after{content:"";display:block;width:60px;height:1px;background:var(--gfa-champagne);margin:26px auto 0;opacity:.6}

/* ---------------- POST LIST (archive / blog index) ---------------- */
body.gfa-blog ul.wp-block-post-template{
  list-style:none;max-width:1080px;margin:0 auto 30px!important;padding:0 24px
}
body.gfa-blog li.wp-block-post{
  background:var(--bg2);border:1px solid rgba(var(--gfa-champagne-rgb),.12);
  border-radius:4px;padding:24px 30px;margin:0 0 18px;
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease
}
body.gfa-blog li.wp-block-post:hover{
  transform:translateY(-3px);border-color:rgba(var(--gfa-champagne-rgb),.32);box-shadow:var(--gfa-lux-shadow)
}
body.gfa-blog li.wp-block-post .wp-block-separator,
body.gfa-blog li.wp-block-post > hr{display:none!important}
body.gfa-blog li.wp-block-post .wp-block-columns{margin:0!important}
body.gfa-blog .wp-block-post-title{margin:0}
body.gfa-blog li.wp-block-post .wp-block-post-title a{
  font-family:var(--gfa-display)!important;text-transform:uppercase;letter-spacing:.01em;
  color:var(--fg)!important;font-size:clamp(1.3rem,2.4vw,1.85rem)!important;
  line-height:1.12!important;text-decoration:none;font-weight:400
}
body.gfa-blog li.wp-block-post .wp-block-post-title a:hover{color:var(--gfa-champagne)!important}
body.gfa-blog li.wp-block-post .wp-block-post-date,
body.gfa-blog li.wp-block-post .wp-block-post-date a,
body.gfa-blog li.wp-block-post .wp-block-post-date time{
  font-family:var(--gfa-caption)!important;text-transform:uppercase;letter-spacing:.2em;
  font-size:11px!important;color:var(--gfa-champagne)!important;text-decoration:none
}
body.gfa-blog li.wp-block-post .wp-block-template-part{background:transparent!important}
body.gfa-blog .wp-block-post-excerpt__excerpt{color:var(--gfa-slate);line-height:1.6}

/* ---------------- PAGINATION ---------------- */
body.gfa-blog .wp-block-query-pagination{max-width:1080px;margin:10px auto 80px!important;padding:0 24px}
body.gfa-blog .wp-block-query-pagination a,
body.gfa-blog .wp-block-query-pagination-numbers *,
body.gfa-blog .wp-block-query-pagination-next,
body.gfa-blog .wp-block-query-pagination-previous{
  color:var(--gfa-champagne)!important;font-family:var(--gfa-caption)!important;
  letter-spacing:.15em;text-transform:uppercase;font-size:12px;text-decoration:none
}
body.gfa-blog .wp-block-query-pagination .current{color:var(--fg)!important;font-weight:600}

/* ---------------- SINGLE POST ---------------- */
body.gfa-blog.single-post .wp-block-post-title{
  font-family:var(--gfa-display)!important;text-transform:uppercase;color:var(--fg)!important;
  text-align:center;font-size:clamp(2rem,5vw,3.4rem)!important;line-height:1.05;
  margin:80px auto 14px;max-width:900px;padding:0 24px;font-weight:400
}
body.gfa-blog.single-post .wp-block-post-date,
body.gfa-blog.single-post .wp-block-post-terms,
body.gfa-blog.single-post .wp-block-post-author-name,
body.gfa-blog.single-post .wp-block-post-author-name a{
  font-family:var(--gfa-caption)!important;text-transform:uppercase;letter-spacing:.18em;
  font-size:12px!important;color:var(--gfa-champagne)!important;text-align:center;text-decoration:none
}
body.gfa-blog.single-post .wp-block-post-featured-image{max-width:1000px;margin:30px auto}
body.gfa-blog.single-post .wp-block-post-featured-image img{
  border-radius:6px;max-height:540px;object-fit:cover;width:100%
}
body.gfa-blog.single-post .entry-content,
body.gfa-blog.single-post .wp-block-post-content{
  max-width:760px;margin:24px auto 0;font-family:var(--gfa-body);
  font-size:1.08rem;line-height:1.8;color:var(--gfa-slate)
}
body.gfa-blog.single-post .entry-content p{margin:0 0 1.4em;color:#E4E2DE}
body.gfa-blog.single-post .entry-content h2{
  font-family:var(--gfa-display);text-transform:uppercase;color:var(--fg);
  font-size:1.9rem;margin:2em 0 .55em;font-weight:400;letter-spacing:.01em
}
body.gfa-blog.single-post .entry-content h3{
  font-family:var(--gfa-body);color:var(--fg);font-size:1.3rem;margin:1.7em 0 .5em;font-weight:600
}
body.gfa-blog.single-post .entry-content a{color:var(--gfa-champagne);text-decoration:underline;text-underline-offset:3px}
body.gfa-blog.single-post .entry-content blockquote{
  border-left:3px solid var(--accent);padding:4px 0 4px 26px;margin:1.6em 0;
  font-family:var(--gfa-display);font-size:1.4rem;color:var(--fg)
}
body.gfa-blog.single-post .entry-content ul,
body.gfa-blog.single-post .entry-content ol{padding-left:1.3em;margin:0 0 1.4em}
body.gfa-blog.single-post .entry-content li{margin:.4em 0}
body.gfa-blog.single-post .entry-content img{border-radius:6px;max-width:100%;height:auto}
body.gfa-blog.single-post .entry-content strong{color:var(--fg)}

/* post navigation + tags */
body.gfa-blog .wp-block-post-navigation-link a,
body.gfa-blog .post-navigation-link__title{
  color:var(--gfa-champagne)!important;font-family:var(--gfa-caption);text-transform:uppercase;
  letter-spacing:.12em;font-size:12px;text-decoration:none
}
body.gfa-blog .post-navigation-link__label{color:var(--gfa-slate)}
body.gfa-blog .wp-block-post-terms.is-style-pill a{
  background:rgba(var(--gfa-champagne-rgb),.1);color:var(--gfa-champagne)!important;
  border:1px solid rgba(var(--gfa-champagne-rgb),.2);border-radius:20px;padding:4px 14px
}

/* comments / forms */
body.gfa-blog .comment-respond,
body.gfa-blog .wp-block-post-comments-form{max-width:760px;margin:44px auto;padding:0 24px}
body.gfa-blog .comment-respond *{color:var(--gfa-slate)}
body.gfa-blog textarea,
body.gfa-blog input[type=text],
body.gfa-blog input[type=email],
body.gfa-blog input[type=url]{background:var(--bg2);border:1px solid var(--line);color:var(--fg);border-radius:3px;padding:11px}
body.gfa-blog .wp-block-button__link,
body.gfa-blog .form-submit .submit,
body.gfa-blog button[type=submit]{
  background:var(--gfa-champagne)!important;color:var(--gfa-ink)!important;border:none;
  text-transform:uppercase;letter-spacing:.12em;font-family:var(--gfa-caption);
  padding:12px 28px;border-radius:2px;cursor:pointer
}

body.gfa-blog .wp-block-comments-title,
body.gfa-blog .comments-title,
body.gfa-blog .wp-block-comments h2,
body.gfa-blog .wp-block-comments .wp-block-heading,
body.gfa-blog .comment-reply-title{color:var(--fg)!important;font-family:var(--gfa-display);text-transform:uppercase}

/* FOOTER is the real GFA footer via the theme footer part — styled by design.css. */

/* archive / search title */
body.gfa-blog .wp-block-query-title,
body.gfa-blog .wp-block-term-description{
  font-family:var(--gfa-display);text-transform:uppercase;color:var(--fg);text-align:center;
  max-width:900px;margin:90px auto 20px;padding:0 24px
}

@media (max-width:781px){
  .gfa-blog-hero{padding:90px 20px 20px}
  body.gfa-blog li.wp-block-post{padding:20px 22px}
  body.gfa-blog li.wp-block-post .wp-block-columns{flex-wrap:wrap;gap:6px!important}
}

