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

/* CALLOUT */
.callout { background: var(--s2); border-left: 3px solid var(--accent); border-radius: 0 var(--r) var(--r) 0; padding: 1.2rem 1.5rem; margin: 2rem 0 }
.callout p { margin: 0; font-size: 0.95rem !important; color: var(--ink) !important }
.callout-label { font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--accent); font-weight: 500; margin-bottom: 0.4rem }

/* STAT ROW (navy box style — overrides base .stat-label for this page) */
.stat-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 2rem 0 }
.stat-box { background: var(--navy); border-radius: var(--rl); padding: 1.5rem 1.2rem; text-align: center }
.stat-num { font-family: var(--serif); font-size: 1.8rem; color: #fff; line-height: 1; margin-bottom: 0.4rem }
.stat-label { font-size: 0.75rem; color: rgba(255,255,255,0.5); line-height: 1.4 }

/* FLOW DIAGRAM */
.flow { background: var(--s2); border-radius: var(--rl); padding: 2rem; margin: 2rem 0 }
.flow-title { font-size: 0.72rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--ink4); margin-bottom: 1.2rem }
.flow-steps { display: flex; flex-direction: column; gap: 0 }
.flow-step { display: flex; gap: 1rem; align-items: flex-start }
.flow-step-left { display: flex; flex-direction: column; align-items: center; flex-shrink: 0 }
.flow-dot { width: 28px; height: 28px; border-radius: 50%; background: var(--accent); display: flex; align-items: center; justify-content: center; font-size: 0.72rem; font-weight: 500; color: #fff; flex-shrink: 0 }
.flow-line { width: 1px; flex: 1; min-height: 20px; background: var(--border); margin: 3px 0 }
.flow-content { padding: 0.1rem 0 1.4rem }
.flow-content strong { font-size: 0.88rem; color: var(--ink); display: block; margin-bottom: 0.2rem }
.flow-content span { font-size: 0.8rem; color: var(--ink3); line-height: 1.5 }

@media (max-width: 700px) {
  .stat-row { grid-template-columns: 1fr }
}
