/* =============================================================
   ARTICLE CONTENT — shared by blog-post.php and the admin editor
   Every class here can be applied from the editor toolbar.
============================================================= */
.post-content{
  --a-ink:#111;--a-body:#2b2b2b;--a-muted:#6B6B6B;--a-line:#E7E5E1;--a-panel:#F4F3F1;
  --a-green:#2F5233;--a-green-dark:#1E3A22;--a-tint:#E7EFE5;--a-gold:#C99A3E;
  font-size:1.08rem;line-height:1.85;color:var(--a-body);overflow-wrap:break-word;
}
.post-content > *:first-child{margin-top:0;}
.post-content p{margin:0 0 1.5em;}
/* Drop cap on the opening paragraph (only when the article actually starts with prose) */
.post-content > p:first-child::first-letter{float:left;font-size:3.6em;line-height:.85;font-weight:800;color:var(--a-green-dark);margin:.08em .12em 0 0;}
.post-content > p.text-lead:first-child::first-letter{font-size:1em;float:none;margin:0;color:inherit;font-weight:inherit;}

.post-content h2{position:relative;font-size:clamp(1.5rem,2.6vw,1.95rem);line-height:1.2;color:var(--a-ink);margin:2.3em 0 .75em;padding-top:.9em;letter-spacing:-.015em;scroll-margin-top:100px;}
.post-content h2::before{content:'';position:absolute;top:0;left:0;width:44px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--a-green-dark),var(--a-gold));}
.post-content h2[style*="center"]::before{left:50%;transform:translateX(-50%);}
.post-content h2[style*="right"]::before{left:auto;right:0;}
.post-content h3{font-size:clamp(1.18rem,2vw,1.38rem);line-height:1.3;color:var(--a-green-dark);margin:1.9em 0 .55em;scroll-margin-top:100px;}
.post-content h4{font-size:1.02rem;color:var(--a-ink);margin:1.6em 0 .5em;text-transform:uppercase;letter-spacing:.06em;}
.post-content h2 + h3{margin-top:.6em;}

.post-content a{color:var(--a-green-dark);text-decoration:underline;text-decoration-color:rgba(47,82,51,.35);text-underline-offset:3px;text-decoration-thickness:1.5px;transition:text-decoration-color .2s;}
.post-content a:hover{text-decoration-color:var(--a-green-dark);}
.post-content strong,.post-content b{color:var(--a-ink);font-weight:700;}
.post-content u{text-underline-offset:3px;}
.post-content mark{background:#FFF3C4;padding:.05em .25em;border-radius:3px;color:inherit;}
.post-content .hl-gold{background:linear-gradient(transparent 55%,rgba(201,154,62,.35) 55%);}
.post-content .hl-green{background:linear-gradient(transparent 55%,rgba(47,82,51,.2) 55%);}
.post-content .text-lead{font-size:1.25em;line-height:1.65;color:var(--a-ink);font-weight:500;margin-bottom:1.6em;}
.post-content .text-small{font-size:.85em;color:var(--a-muted);}

/* Lists */
.post-content ul,.post-content ol{margin:0 0 1.6em;padding-left:0;}
.post-content ul{list-style:none;}
.post-content ul li{position:relative;padding-left:1.7em;margin-bottom:.6em;}
.post-content ul li::before{content:'';position:absolute;left:.35em;top:.72em;width:8px;height:8px;border-radius:50%;background:var(--a-gold);box-shadow:0 0 0 3px rgba(201,154,62,.18);}
.post-content ol{list-style:none;counter-reset:ol;}
.post-content ol li{position:relative;padding-left:2.4em;margin-bottom:.75em;counter-increment:ol;}
.post-content ol li::before{content:counter(ol);position:absolute;left:0;top:.15em;width:1.65em;height:1.65em;border-radius:50%;background:var(--a-tint);color:var(--a-green-dark);font-weight:800;font-size:.85em;display:flex;align-items:center;justify-content:center;}
.post-content li > ul,.post-content li > ol{margin:.5em 0 0;}
.post-content li p{margin:0;}

/* Quotes */
.post-content blockquote{margin:2em 0;padding:1.4em 1.6em;background:var(--a-tint);border-left:4px solid var(--a-green-dark);border-radius:0 14px 14px 0;font-size:1.12rem;line-height:1.65;color:var(--a-green-dark);font-weight:500;}
.post-content blockquote p:last-child{margin-bottom:0;}
.post-content blockquote.post-pullquote{background:none;border:none;border-radius:0;padding:1.2em 0 1.2em;margin:2.4em 0;text-align:center;font-size:clamp(1.35rem,2.6vw,1.75rem);line-height:1.4;font-weight:700;color:var(--a-ink);letter-spacing:-.01em;border-top:1px solid var(--a-line);border-bottom:1px solid var(--a-line);position:relative;}
.post-content blockquote.post-pullquote::before{content:'\201C';position:absolute;top:-.55em;left:50%;transform:translateX(-50%);background:#fff;color:var(--a-gold);font-size:2.6em;line-height:1;padding:0 .2em;font-family:Georgia,serif;}

/* Callouts */
.post-content .callout{position:relative;margin:2em 0;padding:1.25em 1.4em 1.25em 3.4em;border-radius:14px;background:var(--a-panel);border:1px solid var(--a-line);font-size:.98em;line-height:1.7;}
.post-content .callout::before{position:absolute;left:1.05em;top:1.15em;width:1.55em;height:1.55em;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85em;font-weight:800;color:#fff;}
.post-content .callout p:last-child{margin-bottom:0;}
.post-content .callout .callout-title{margin:0 0 .3em;font-size:.82em;letter-spacing:.08em;text-transform:uppercase;}
.post-content .callout-tip{background:#EEF6EC;border-color:#CFE3CB;}
.post-content .callout-tip::before{content:'✓';background:var(--a-green);}
.post-content .callout-note{background:#EEF3FB;border-color:#D3E0F3;}
.post-content .callout-note::before{content:'i';background:#1d4e89;font-family:Georgia,serif;font-style:italic;}
.post-content .callout-warning{background:#FDF3E6;border-color:#F2DDBC;}
.post-content .callout-warning::before{content:'!';background:#C47B12;}
.post-content .callout-evidence{background:#F7F2E6;border-color:#E9DCBC;}
.post-content .callout-evidence::before{content:'§';background:var(--a-gold);}

/* Key takeaways */
.post-content .post-takeaways{margin:2.2em 0;padding:1.6em 1.7em 1.1em;border-radius:16px;background:linear-gradient(135deg,var(--a-green-dark),var(--a-green));color:#fff;}
.post-content .post-takeaways h4{color:#fff;margin:0 0 .9em;font-size:.82rem;letter-spacing:.14em;display:flex;align-items:center;gap:.6em;}
.post-content .post-takeaways h4::before{content:'';width:22px;height:2px;background:var(--a-gold);}
.post-content .post-takeaways ul li{color:rgba(255,255,255,.92);}
.post-content .post-takeaways ul li::before{background:var(--a-gold);box-shadow:none;}
.post-content .post-takeaways strong,.post-content .post-takeaways a{color:#fff;}

/* Stat */
.post-content .post-stat{margin:2em 0;padding:1.3em 1.5em;border-left:4px solid var(--a-gold);background:#FBF8F1;border-radius:0 14px 14px 0;}
.post-content .post-stat .post-stat-num{font-size:clamp(2.2rem,5vw,3rem);font-weight:800;line-height:1;margin:0 0 .25em;color:var(--a-green-dark);letter-spacing:-.02em;}
.post-content .post-stat p:last-child{margin:0;color:var(--a-muted);}

/* CTA + buttons */
.post-content .post-cta{margin:2.2em 0;padding:1.6em;text-align:center;border:1px dashed #d3d0c9;border-radius:16px;background:#fff;}
.post-content .post-cta h4{margin:0 0 .8em;text-transform:none;letter-spacing:0;font-size:1.15rem;}
.post-content .post-cta p{margin:0;}
.post-content a.post-btn{display:inline-flex;align-items:center;gap:.5em;padding:.8em 1.6em;border-radius:100px;background:var(--a-green-dark);color:#fff;text-decoration:none;font-weight:700;font-size:.95rem;box-shadow:0 10px 24px -12px rgba(30,58,34,.7);transition:transform .2s,box-shadow .2s;}
.post-content a.post-btn::after{content:'→';transition:transform .2s;}
.post-content a.post-btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px -12px rgba(30,58,34,.8);}
.post-content a.post-btn:hover::after{transform:translateX(3px);}
.post-content a.post-btn.post-btn-outline{background:transparent;color:var(--a-green-dark);border:1.5px solid var(--a-green-dark);box-shadow:none;}

/* Media */
.post-content img{max-width:100%;height:auto;border-radius:14px;display:block;margin:2em auto;}
.post-content figure{margin:2.2em 0;}
.post-content figure img{margin:0 auto;}
.post-content figcaption{font-size:.82rem;color:var(--a-muted);text-align:center;margin-top:.8em;}
.post-content figure.img-wide{margin-left:-6%;margin-right:-6%;}
.post-content figure.img-left{float:left;width:42%;margin:.3em 1.6em 1em 0;}
.post-content figure.img-right{float:right;width:42%;margin:.3em 0 1em 1.6em;}
.post-content h2,.post-content h3,.post-content hr,.post-content .callout,.post-content .post-takeaways,.post-content table{clear:both;}
.post-content hr{border:none;height:1px;background:var(--a-line);margin:2.6em 0;}
.post-content hr.post-divider{height:auto;background:none;text-align:center;margin:2.4em 0;}
.post-content hr.post-divider::after{content:'✦ ✦ ✦';color:var(--a-gold);letter-spacing:.8em;font-size:.8rem;}
.post-content code{background:var(--a-panel);padding:.15em .4em;border-radius:5px;font-size:.9em;}
.post-content pre{background:#1e1e1e;color:#eee;padding:18px;border-radius:12px;overflow-x:auto;font-size:.88rem;line-height:1.6;}
.post-content pre code{background:none;padding:0;}

/* Tables (blog-post wraps them in .post-table for mobile scrolling) */
.post-content table{width:100%;border-collapse:collapse;font-size:.92rem;}
.post-content .post-table{overflow-x:auto;margin:2em 0;border:1px solid var(--a-line);border-radius:12px;-webkit-overflow-scrolling:touch;}
.post-content .post-table table{min-width:480px;}
.post-content th,.post-content td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--a-line);vertical-align:top;}
.post-content th{background:var(--a-panel);font-weight:700;color:var(--a-ink);}
.post-content tr:last-child td{border-bottom:none;}
.post-content tbody tr:nth-child(even) td{background:#FAFAF8;}

@media (max-width:640px){
  .post-content{font-size:1.02rem;line-height:1.8;}
  .post-content > p:first-child::first-letter{font-size:3em;}
  .post-content figure.img-left,.post-content figure.img-right{float:none;width:auto;margin:1.6em 0;}
  .post-content figure.img-wide{margin-left:0;margin-right:0;}
  .post-content .callout{padding:1.1em 1.1em 1.1em 3em;}
  .post-content .post-takeaways{padding:1.3em 1.2em .8em;}
}
