/* Studio Allee — styles spécifiques au journal (/blog/).
   Complète styles.css (classes lp-*) sans le modifier. Chargé sur les pages blog seulement. */

.lp-main.article,
.lp-main.blog-index {
  max-width: 760px;
  margin-inline: auto;
  padding-block: clamp(6rem, 12vh, 9rem) var(--section);
}

/* Méta sous le H1 d'un article */
.article-meta {
  font-family: var(--font-body);
  font-size: 0.82rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--mute);
  margin-bottom: 1.5rem;
}

/* Confort de lecture du corps */
.lp-main.article h2 {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: clamp(1.4rem, 3vw, 1.85rem);
  line-height: 1.2;
  margin-top: 2.6rem;
  margin-bottom: 0.8rem;
}
.lp-main.article h3 {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 1.1rem;
  margin-top: 1.6rem;
  margin-bottom: 0.4rem;
}
.lp-main.article p { line-height: 1.7; margin-bottom: 1rem; }
.lp-main.article a { color: var(--gold-deep); text-underline-offset: 3px; }
.lp-main.article a:hover { color: var(--ink); }

/* Bloc d'appel à l'action en fin d'article */
.article-cta {
  margin-top: 3.5rem;
  padding: 2rem;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--paper-warm);
}
.article-cta h2 { margin-top: 0; }
.article-cta .btn { margin-top: 0.5rem; display: inline-block; }

/* Index du journal */
.blog-grid { list-style: none; display: grid; gap: 1rem; margin-top: 2.5rem; padding: 0; }
.blog-card a {
  display: grid;
  gap: 0.4rem;
  padding: 1.4rem 1.6rem;
  border: 1px solid var(--line);
  border-radius: 14px;
  text-decoration: none;
  color: var(--ink);
  transition: border-color 0.25s var(--ease), transform 0.25s var(--ease);
}
.blog-card a:hover { border-color: var(--gold); transform: translateY(-2px); }
.blog-card-cluster {
  font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--gold-deep);
}
.blog-card-title { font-family: var(--font-display); font-weight: 600; font-size: 1.2rem; line-height: 1.25; }
.blog-card-desc { color: var(--mute); font-size: 0.95rem; line-height: 1.55; }
.blog-card-meta { font-size: 0.78rem; color: var(--mute); letter-spacing: 0.03em; }

/* Pied de page du journal */
.blog-foot {
  border-top: 1px solid var(--line);
  padding: 2.5rem var(--gutter);
  text-align: center;
  color: var(--mute);
  font-size: 0.9rem;
}
.blog-foot nav { display: flex; gap: 1.4rem; justify-content: center; flex-wrap: wrap; margin-bottom: 1rem; }
.blog-foot a { color: var(--mute); text-decoration: none; }
.blog-foot a:hover { color: var(--ink); }

@media (max-width: 600px) {
  .lp-main.article, .lp-main.blog-index { padding-inline: var(--gutter); }
}
