/* ============================================================
   Rispondu — blog.css (complète assets/styles.css)
   Palette identique : vert pin #11504A, doré #B97711.
   ============================================================ */

.article-hero {
  background:
    radial-gradient(1200px 500px at 85% -10%, rgba(185, 119, 17, 0.12), transparent 60%),
    linear-gradient(180deg, var(--cream) 0%, var(--ivory) 100%);
  padding: clamp(2.5rem, 6vw, 4.5rem) 0 clamp(1.5rem, 3vw, 2.5rem);
}
.article-hero h1 { max-width: 840px; }
.article-meta {
  color: var(--ink-soft);
  font-size: 0.9rem;
  margin: 0;
}

.article-section { padding: clamp(2rem, 4vw, 3.5rem) 0; }
.article-body { max-width: 780px; }
.article-body h2 { margin-top: 2.4rem; font-size: clamp(1.35rem, 2.6vw, 1.75rem); }
.article-body ul, .article-body ol {
  color: var(--ink-soft);
  margin: 0 0 1em;
  padding-left: 1.3rem;
}
.article-body li { margin-bottom: 0.45rem; }
.article-body strong { color: var(--ink); }
.article-lead { font-size: 1.12rem; }

.cta-box {
  background: linear-gradient(160deg, var(--pin) 0%, var(--pin-dark) 100%);
  color: var(--white);
  border-radius: var(--radius-lg);
  padding: clamp(1.5rem, 3vw, 2rem);
  margin: 2.5rem 0;
  box-shadow: var(--shadow-md);
}
.cta-box h2 { color: var(--white); margin-top: 0; font-size: 1.3rem; }
.cta-box p { color: rgba(255, 255, 255, 0.87); }
.cta-actions { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.cta-box .btn-secondary { border-color: rgba(255,255,255,0.7); color: var(--white); }
.cta-box .btn-secondary:hover { background: rgba(255,255,255,0.15); color: var(--white); }

.article-signature {
  margin-top: 2.5rem;
  font-style: italic;
  color: var(--ink-soft);
}

.voisins {
  margin-top: 2.5rem;
  border-top: 1px solid var(--line);
  padding-top: 1.5rem;
}
.voisins h2 { font-size: 1.15rem; margin-top: 0; }
.voisins ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.55rem; }
.voisins a { font-weight: 600; text-decoration: none; }
.voisins a:hover { text-decoration: underline; }

/* ---- Index du blog ---- */
.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}
@media (max-width: 980px) { .blog-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 620px) { .blog-grid { grid-template-columns: 1fr; } }

.post-card {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  padding: 1.4rem;
  box-shadow: var(--shadow-sm);
  display: flex;
  flex-direction: column;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.post-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.post-tag {
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--gold);
  margin-bottom: 0.6rem;
}
.post-card h2 { font-size: 1.08rem; margin-bottom: 0.5rem; }
.post-card h2 a { text-decoration: none; color: var(--pin-dark); }
.post-card h2 a:hover { color: var(--pin); }
.post-card p { font-size: 0.9rem; flex: 1; margin-bottom: 0.9rem; }
.post-link {
  font-weight: 700;
  color: var(--gold);
  text-decoration: none;
  font-size: 0.9rem;
}
.post-link:hover { color: var(--gold-light); }

.blog-section-title {
  margin: 2.75rem 0 1.25rem;
  font-size: clamp(1.3rem, 2.4vw, 1.6rem);
}
.blog-section-title:first-of-type { margin-top: 0; }
