/* ============================================================
   Ride Services — Blog Archive Custom Styles (Elementor)
   Skin : archive-posts.archive_classic / elementor-posts--skin-classic
   Sélecteurs extraits du HTML réel — !important sur clés critiques
   Design system : Cormorant Garamond · Montserrat · #1C1C1C · #C9A84C
   ============================================================ */

/* ── Fonts Google ────────────────────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=Montserrat:wght@300;400;500;600&display=swap');

/* ── Variables ──────────────────────────────────────────────── */
:root {
  --rs-anthracite: #1C1C1C;
  --rs-or:         #C9A84C;
  --rs-or-dark:    #a8882e;
  --rs-ivoire:     #F9F7F2;
  --rs-card-bg:    #ffffff;
  --rs-bg:         #F0F2F5;
  --rs-font-title: 'Cormorant Garamond', Georgia, serif;
  --rs-font-ui:    'Montserrat', 'Helvetica Neue', sans-serif;
}

/* ── 1. Page background ─────────────────────────────────────── */
body.blog,
body.archive {
  background-color: var(--rs-bg) !important;
}

/* ── 2. Grille Elementor — laisser le layout à Elementor,
        on ne touche qu'aux gaps et au fond ───────────────────── */
.elementor-posts-container.elementor-posts--skin-classic {
  row-gap: 28px !important;
}

/* ── 3. Card article ────────────────────────────────────────── */
article.elementor-post {
  background: var(--rs-card-bg) !important;
  border-top: 3px solid var(--rs-or) !important;
  border-radius: 2px !important;
  box-shadow: 0 2px 14px rgba(28, 28, 28, 0.08) !important;
  transition: box-shadow 0.25s ease, transform 0.25s ease !important;
  overflow: hidden !important;
}

article.elementor-post:hover {
  box-shadow: 0 6px 28px rgba(28, 28, 28, 0.15) !important;
  transform: translateY(-4px) !important;
}

/* ── 4. Image thumbnail (si activée) ────────────────────────── */
.elementor-post__thumbnail__link,
.elementor-post__thumbnail {
  overflow: hidden !important;
  display: block !important;
}

.elementor-post__thumbnail img {
  transition: transform 0.4s ease !important;
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
}

article.elementor-post:hover .elementor-post__thumbnail img {
  transform: scale(1.05) !important;
}

/* ── 5. Zone texte ──────────────────────────────────────────── */
.elementor-post__text {
  padding: 20px 24px 24px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  background: none !important;
}

/* ── 6. Titre H3 ─────────────────────────────────────────────── */
h3.elementor-post__title {
  font-family: var(--rs-font-title) !important;
  font-size: 1.2rem !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.01em !important;
  margin: 0 !important;
  padding: 0 !important;
}

h3.elementor-post__title a {
  font-family: var(--rs-font-title) !important;
  font-size: inherit !important;
  font-weight: 400 !important;
  color: var(--rs-anthracite) !important;
  text-decoration: none !important;
  background-image: linear-gradient(var(--rs-or), var(--rs-or)) !important;
  background-repeat: no-repeat !important;
  background-size: 0% 1px !important;
  background-position: 0 100% !important;
  transition: background-size 0.3s ease, color 0.2s ease !important;
  display: inline !important;
}

article.elementor-post:hover h3.elementor-post__title a {
  background-size: 100% 1px !important;
  color: var(--rs-anthracite) !important;
}

/* ── 7. Extrait (si activé dans le widget) ───────────────────── */
.elementor-post__excerpt p,
.elementor-post__excerpt {
  font-family: var(--rs-font-title) !important;
  font-size: 0.92rem !important;
  font-weight: 300 !important;
  line-height: 1.7 !important;
  color: #4a4a4a !important;
  margin: 0 !important;
}

/* ── 8. Meta (date, auteur) ─────────────────────────────────── */
.elementor-post__meta-data {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 !important;
}

span.elementor-post-date {
  font-family: var(--rs-font-ui) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #999 !important;
  font-variant-numeric: tabular-nums !important;
}

/* Séparateur entre meta items */
.elementor-post__meta-data .elementor-post-author::before,
.elementor-post__meta-data span + span::before {
  content: '·' !important;
  margin-right: 8px !important;
  color: #ccc !important;
}

/* ── 9. CTA "Lire plus »" ───────────────────────────────────── */
a.elementor-post__read-more {
  font-family: var(--rs-font-ui) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: var(--rs-or) !important;
  text-decoration: none !important;
  margin-top: auto !important;
  padding-top: 14px !important;
  border-top: 1px solid #ebebeb !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  transition: color 0.2s ease, gap 0.2s ease !important;
}

/* Remplacer "Lire plus »" par "LIRE L'ARTICLE →" via CSS */
a.elementor-post__read-more {
  font-size: 0 !important; /* masquer le texte original */
}

a.elementor-post__read-more::before {
  content: 'LIRE L\2019 ARTICLE' !important;
  font-family: var(--rs-font-ui) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.16em !important;
  color: var(--rs-or) !important;
}

a.elementor-post__read-more::after {
  content: '→' !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: var(--rs-or) !important;
  letter-spacing: 0 !important;
  transition: transform 0.2s ease !important;
  display: inline-block !important;
}

a.elementor-post__read-more:hover {
  gap: 10px !important;
}

a.elementor-post__read-more:hover::before {
  color: var(--rs-or-dark) !important;
}

a.elementor-post__read-more:hover::after {
  color: var(--rs-or-dark) !important;
  transform: translateX(3px) !important;
}

/* ── 10. Catégorie (si affichée) ────────────────────────────── */
.elementor-post__badge,
a.elementor-post-category {
  font-family: var(--rs-font-ui) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--rs-or) !important;
  text-decoration: none !important;
  background: rgba(201, 168, 76, 0.1) !important;
  padding: 3px 10px !important;
  border-radius: 2px !important;
}

/* ── 11. Pagination Elementor ───────────────────────────────── */
.elementor-pagination {
  margin-top: 40px !important;
  text-align: center !important;
}

.elementor-pagination .page-numbers {
  font-family: var(--rs-font-ui) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  color: var(--rs-anthracite) !important;
  padding: 8px 14px !important;
  border: 1px solid #ddd !important;
  border-radius: 2px !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  margin: 0 3px !important;
  display: inline-block !important;
}

.elementor-pagination .page-numbers.current {
  background: var(--rs-or) !important;
  border-color: var(--rs-or) !important;
  color: #fff !important;
}

.elementor-pagination .page-numbers:hover:not(.current) {
  border-color: var(--rs-or) !important;
  color: var(--rs-or) !important;
}

/* ── 12. Responsive (Elementor gère les colonnes,
         on ajuste seulement l'espacement) ───────────────────── */
@media (max-width: 767px) {
  .elementor-post__text {
    padding: 16px !important;
  }
}
