/* The Counselors Institute — Journal (single post) article system.
   Loaded on is_singular('post'). Depends on site.css tokens + FAQ styles. */

.wrap--reading{max-width:760px}
.post-hero .post-meta{margin-top:1.6rem;font-family:var(--sans);font-weight:500;font-size:.82rem;letter-spacing:.06em;color:rgba(244,241,234,.7);text-transform:none}
.post-hero .eyebrow a{text-decoration:none}
.post-hero .eyebrow a:hover{color:#fff}

/* ---- article body typography ---- */
.post-body{font-size:1.09rem;line-height:1.72;color:var(--slate)}
.post-body > p,.post-body > ul,.post-body > ol,.post-body > h2,.post-body > h3,.post-body > figure,.post-body > blockquote,.post-body > table,.post-body > .callout,.post-body > .key-takeaways{max-width:68ch}
.post-body p{margin-top:1.25rem}
.post-body .post-lede{font-size:1.24rem;line-height:1.55;color:var(--ink);font-family:var(--display);font-weight:400;margin-top:0}
.post-body h2{font-size:clamp(1.6rem,1.35rem + 1.2vw,2.15rem);color:var(--ink);margin-top:2.8rem;line-height:1.12}
.post-body h2 em{font-style:italic;color:var(--brass-lo)}
.post-body h3{font-size:1.28rem;color:var(--ink);margin-top:2rem}
.post-body a{color:var(--brass-lo);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px;text-decoration-color:rgba(140,110,55,.4)}
.post-body a:hover{text-decoration-color:var(--brass-lo)}
.post-body strong{color:var(--ink);font-weight:600}
.post-body em{font-style:italic}
.post-body ul,.post-body ol{margin-top:1.25rem;padding-left:1.3rem}
.post-body li{margin-top:.55rem;padding-left:.3rem}
.post-body li::marker{color:var(--brass-lo)}
.post-body blockquote{margin:1.8rem 0;padding:.4rem 0 .4rem 1.5rem;border-left:3px solid var(--brass);font-family:var(--display);font-style:italic;font-size:1.2rem;color:var(--ink)}
.post-body hr{margin:2.6rem 0;border:0;border-top:1px solid var(--line)}

/* ---- key takeaways box ---- */
.key-takeaways{margin-top:2.2rem;background:var(--parchment-2);border:1px solid var(--line);border-left:4px solid var(--brass);border-radius:4px;padding:1.6rem 1.8rem}
.key-takeaways h2{font-size:.74rem !important;font-family:var(--sans);font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-lo);margin-top:0 !important}
.key-takeaways ul{margin-top:1rem;padding-left:1.15rem;list-style:none}
.key-takeaways li{position:relative;margin-top:.7rem;padding-left:1.4rem;font-size:1rem;color:var(--slate)}
.key-takeaways li::before{content:"";position:absolute;left:0;top:.55em;width:.5rem;height:.5rem;background:var(--brass);border-radius:50%}
.key-takeaways li strong{color:var(--ink)}

/* ---- callout / note ---- */
.callout{margin-top:1.8rem;background:#fff;border:1px solid var(--line);border-radius:4px;padding:1.35rem 1.6rem;font-size:1rem}
.callout .label{display:block;font-family:var(--sans);font-weight:700;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-lo);margin-bottom:.5rem}
.callout--navy{background:var(--navy);border-color:var(--navy);color:rgba(244,241,234,.9)}
.callout--navy .label{color:var(--brass-2)}
.callout--navy strong{color:#fff}
.callout--navy a{color:var(--brass-2)}

/* ---- inline stat row ---- */
.stat-grid{margin-top:2rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:68ch}
.stat-grid .stat{border:1px solid var(--line);border-radius:4px;padding:1.2rem;background:var(--parchment-2)}
.stat-grid .num{font-family:var(--display);font-size:2.1rem;color:var(--brass-lo);line-height:1;font-variant-numeric:tabular-nums}
.stat-grid .lbl{margin-top:.55rem;font-size:.85rem;color:var(--slate);line-height:1.35}
@media(max-width:620px){.stat-grid{grid-template-columns:1fr}}

/* ---- figures / charts ---- */
.post-body figure{margin:2.4rem 0}
.chart-figure{border:1px solid var(--line);border-radius:5px;background:var(--parchment-2);padding:1.6rem 1.5rem 1.2rem}
.chart-figure .chart-title{font-family:var(--display);font-size:1.15rem;color:var(--ink);margin-bottom:.3rem}
.chart-figure svg{display:block;width:100%;height:auto;overflow:visible}
.post-body figcaption{margin-top:.9rem;font-size:.82rem;color:var(--slate);line-height:1.45}
.chart-figure figcaption{padding-top:.8rem;border-top:1px solid var(--line)}

/* ---- tables ---- */
.post-body .table-wrap{margin:2.4rem 0;overflow-x:auto}
.post-body table{width:100%;border-collapse:collapse;font-size:.96rem;background:var(--parchment-2);border:1px solid var(--line)}
.post-body th,.post-body td{text-align:left;padding:.8rem 1rem;border-bottom:1px solid var(--line);vertical-align:top}
.post-body thead th{background:var(--navy);color:var(--parchment);font-family:var(--sans);font-weight:600;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}
.post-body tbody tr:last-child td{border-bottom:0}
.post-body td strong{color:var(--ink)}

/* ---- FAQ heading inside post ---- */
.post-body .faq{margin-top:1.6rem}

/* ---- references / sources ---- */
.post-refs{margin-top:2.6rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.post-refs h2{font-size:.74rem !important;font-family:var(--sans);font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-lo);margin-top:0 !important}
.post-refs ol{margin-top:1rem;padding-left:1.2rem;font-size:.86rem;color:var(--slate)}
.post-refs li{margin-top:.5rem}
.post-refs a{word-break:break-word}

/* ---- disclaimer ---- */
.post-disclaimer{margin-top:2.4rem;padding-top:1.3rem;border-top:1px solid var(--line);max-width:68ch;font-size:.86rem;color:var(--slate);opacity:.85}
