/* Rural Land Reality Check — article pages */

.hero-article { padding: 3rem 0 2.25rem; }
.wordmark-link { display: inline-block; text-decoration: none; }
.article-meta { font-size: 0.9rem; color: var(--text-muted); margin: 0; }

.article { padding: 2rem 0 3rem; }
.article h2 { margin-top: 2.5rem; font-size: 1.45rem; }
.article .lead { font-size: 1.1rem; }
.article .answer {
  background: var(--card);
  border-left: 4px solid var(--forest);
  border-radius: 0 var(--radius) var(--radius) 0;
  padding: 0.9rem 1.1rem;
  font-weight: 500;
}

.toc {
  background: var(--bg-alt);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 1rem 1.25rem;
  margin: 1.5rem 0;
}
.toc-title { font-weight: 700; margin: 0 0 0.5rem; color: var(--forest-dark); }
.toc ol { margin: 0; padding-left: 1.25rem; }
.toc li { margin-bottom: 0.3rem; }

.checklist { padding-left: 1.25rem; }
.checklist li { margin-bottom: 0.6rem; }

.calc { margin: 1.25rem 0 1.5rem; }
.calc-title { font-weight: 700; color: var(--forest-dark); margin: 0 0 1rem; }
.calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.calc-grid label { display: flex; flex-direction: column; gap: 0.35rem; font-size: 0.95rem; font-weight: 500; }
.calc-grid input {
  font: inherit;
  padding: 0.6rem 0.75rem;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
}
.calc-grid input:focus { outline: 3px solid var(--focus); outline-offset: 1px; }
.calc-result {
  margin-top: 1.25rem;
  background: var(--bg-alt);
  border-radius: 10px;
  padding: 0.25rem 1rem;
}
.calc-note { font-size: 0.85rem; color: var(--text-muted); margin: 0.9rem 0 0; }

.cta-box {
  margin: 3rem 0 2rem;
  background: var(--forest);
  color: #fff;
  border-radius: var(--radius);
  padding: 1.5rem;
  text-align: center;
}
.cta-box h2 { color: #fff; margin-top: 0; }
.cta-box .btn-primary { background: var(--clay); border-color: var(--clay); }

.boundaries { font-size: 0.9rem; color: var(--text-muted); }

@media (max-width: 480px) {
  .calc-grid { grid-template-columns: 1fr; }
}
