/* article-specific rules only — base in article-base.css */

/* COST BREAKDOWN STAGES */
.cost-stages { display: flex; flex-direction: column; gap: 1px; background: var(--border); border: 1px solid var(--border); border-radius: var(--rl); overflow: hidden; margin: 2rem 0 }
.cs-item { display: grid; grid-template-columns: 110px 1fr 80px; gap: 0; padding: 1rem 1.2rem; background: var(--surface); align-items: center }
.cs-item.cs-total { background: var(--navy); }
.cs-stage { font-size: 0.7rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--accent) }
.cs-item.cs-total .cs-stage { color: rgba(232,86,42,0.85) }
.cs-desc { font-size: 0.88rem; color: var(--ink2); line-height: 1.45; padding: 0 1rem }
.cs-item.cs-total .cs-desc { color: rgba(255,255,255,0.7) }
.cs-duration { font-size: 0.92rem; font-weight: 600; color: var(--ink); text-align: right }
.cs-item.cs-total .cs-duration { color: #fff; font-size: 1.1rem }
@media (max-width: 600px) { .cs-item { grid-template-columns: 80px 1fr; } .cs-duration { display: none } }

/* COST CALLOUT */
.cost-callout { background: rgba(192,57,43,0.08); border: 1px solid rgba(192,57,43,0.2); border-radius: var(--rl); padding: 1.8rem 2rem; margin: 2rem 0; text-align: center }
.cc-label { font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.12em; color: #c0392b; margin-bottom: 0.5rem }
.cc-n { font-family: var(--serif); font-size: 3rem; color: #c0392b; line-height: 1 }
.cc-sub { font-size: 0.82rem; color: var(--ink3); margin-top: 0.5rem; line-height: 1.5 }
