/* ============================================================
   Harrimont Partners — Insights / blog
   Loaded AFTER css/styles.css + css/legal.css (reuses tokens, header,
   footer and .prose body styling from the legal pages).
   ============================================================ */

/* ---------- shared: image hero overlay ---------- */
.img-hero{position:relative;overflow:hidden;background:var(--navy-900);color:var(--white);}
.img-hero .hero-photo{position:absolute;inset:0;z-index:0;}
.img-hero .hero-photo img{width:100%;height:100%;object-fit:cover;}
.img-hero::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(175deg,rgba(13,19,33,.55) 0%,rgba(13,19,33,.6) 45%,rgba(13,19,33,.92) 100%);
}
.img-hero .wrap{position:relative;z-index:2;}

/* ---------- blog index hero ---------- */
.blog-hero{padding:clamp(124px,18vw,190px) 0 clamp(48px,7vw,78px);}
.blog-hero .eyebrow{margin-bottom:18px;color:var(--gold);}
.blog-hero h1{font-size:clamp(2.4rem,6vw,4rem);max-width:16ch;color:var(--white);}
.blog-hero .blog-intro{
  margin-top:20px;max-width:62ch;color:var(--gray-100);
  font-family:"Playfair Display",serif;font-style:italic;
  font-size:clamp(1.15rem,2.3vw,1.5rem);line-height:1.45;
}

/* ---------- card grid ---------- */
.blog-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,36px);
}
.post-card{
  display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);
  border-radius:8px;overflow:hidden;box-shadow:var(--shadow);
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);
}
.post-card:hover{transform:translateY(-6px);box-shadow:0 30px 60px -30px rgba(13,19,33,.45);border-color:var(--line-gold);}
.post-card-media{aspect-ratio:16/10;overflow:hidden;background:var(--navy-900);}
.post-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease);}
.post-card:hover .post-card-media img{transform:scale(1.05);}
.post-card-body{display:flex;flex-direction:column;gap:12px;padding:clamp(22px,2.4vw,30px);flex:1;}
.post-tag{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-ink);font-weight:600;}
.post-card h2{font-family:"Playfair Display",serif;font-weight:500;font-size:1.28rem;line-height:1.25;color:var(--ink);}
.post-card-dek{margin:0;color:var(--ink-soft);font-size:.94rem;line-height:1.55;flex:1;}
.post-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:6px;}
.post-card .more{font-size:.8rem;font-weight:600;color:var(--gold-ink);letter-spacing:.02em;display:inline-flex;align-items:center;gap:6px;transition:gap .25s var(--ease);}
.post-card:hover .more{gap:11px;}

/* ---------- meta line ---------- */
.post-meta{font-size:.76rem;letter-spacing:.03em;color:var(--ink-soft);display:inline-flex;align-items:center;gap:9px;}
.post-meta .sep{opacity:.45;}

/* ---------- article hero ---------- */
.post-hero{display:flex;align-items:flex-end;min-height:clamp(380px,54vh,540px);}
.post-hero .wrap{padding-top:clamp(122px,16vw,168px);padding-bottom:clamp(38px,5vw,58px);}
.post-hero .legal-breadcrumb{margin-bottom:18px;}
.post-hero .eyebrow{color:var(--gold);margin-bottom:16px;}
.post-hero h1{font-size:clamp(2rem,4.6vw,3.3rem);max-width:20ch;color:var(--white);line-height:1.1;}
.post-hero .post-dek{
  margin:16px 0 18px;max-width:54ch;color:var(--gray-100);
  font-family:"Playfair Display",serif;font-style:italic;font-size:clamp(1.1rem,2.2vw,1.4rem);line-height:1.4;
}
.post-hero .post-meta{color:rgba(230,230,232,.85);}
.post-hero .post-meta .sep{color:rgba(230,230,232,.5);}

/* ---------- article body extras (reuses .legal-main + .prose) ---------- */
.post-body .prose>.post-dek-inline{display:none;}
.post-cta{
  margin-top:clamp(42px,6vw,66px);padding:clamp(26px,3.5vw,38px);
  border:1px solid var(--line-gold);border-radius:8px;background:var(--gold-soft);
}
.post-cta h3{font-family:"Playfair Display",serif;font-weight:500;font-size:1.35rem;color:var(--ink);margin:0 0 10px;}
.post-cta p{margin:0 0 20px;color:var(--ink-soft);font-size:1rem;line-height:1.7;}
.post-cta .btn-gold{border:0;}

/* small "more insights" strip at the foot of an article */
.post-more{border-top:1px solid var(--line);margin-top:clamp(40px,6vw,60px);padding-top:clamp(28px,4vw,40px);}
.post-more h4{font-family:"Montserrat",sans-serif;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-ink);margin:0 0 16px;}
.post-more ul{list-style:none;padding:0;margin:0;display:grid;gap:12px;}
.post-more a{color:var(--ink);font-family:"Playfair Display",serif;font-size:1.05rem;text-decoration:none;transition:color .25s var(--ease);}
.post-more a:hover{color:var(--gold-ink);}

/* ---------- responsive ---------- */
@media(max-width:900px){.blog-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){.blog-grid{grid-template-columns:1fr;}}
