/* ========================================
   TITRE DE PAGE AVEC LIGNE DYNAMIQUE
======================================== */
h2.titre_page {
  display: flex;
  align-items: center;
  gap: 15px;
}

h2.titre_page::after {
  content: "";
  flex: 1;
  height: 1px;
  background-color: #b98c3e;
}

/* ========================================
   CTA — Soulignement animé
======================================== */
.cta-link {
  position: relative;
  display: inline-block;
  text-decoration: none;
  border-bottom: none;
  transition: transform 0.3s ease;
  will-change: transform;
}

.cta-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: currentColor;
  transform: scaleX(1);
  transform-origin: right;
  transition: transform 0.4s ease;
}

.cta-link:hover {
  transform: translateY(-2px);
}

.cta-link:hover::after {
  transform: scaleX(0);
}

/* ========================================
   CLASSES UTILITAIRES & MÉDIAS
======================================== */
.isCSwg {
  background-color: #f0f3f5 !important;
}

/* Page Équipe : Mutualisation propre des sélecteurs (CSS natif compatible) */
#cg-card_group_co40 .cg-grid div div .img-figure .img-media,
#cg-card_group_kv60 .cg-grid div div .img-figure .img-media,
#cg-card_group_xkhs .cg-grid div div .img-figure .img-media {
  height: 600px;
  object-fit: cover;
}

.sale-hero-media img,
.sale-card-media img,
.news-card-img img,
.img-media,
.lot-card-media {
  border-radius: 10px;
}

/* ========================================
   CARTES (SALE CALENDAR, NEWS, ETC.)
======================================== */
.sale-card,
.news-card,
.carreSpecialites,
.lot-card {
  padding: 12px;
  background-color: #ffffff;
  border-radius: 10px;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.11);
  transition:
    box-shadow 0.35s ease,
    transform 0.35s ease;
  will-change: transform, box-shadow;
}

.sale-card,
.news-card {
  align-self: stretch;
}

.sale-card:hover,
.news-card:hover {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.09);
  transform: translateY(-3px);
}

.sale-type {
  width: fit-content;
  padding: 2px 10px;
  background-color: #fbf6ed;
  border-radius: 50px;
}

.news-card-date,
.sale-card-date {
  font-style: italic;
}

/* ========================================
   RESPONSIVE — TABLETTE (max 1024px)
======================================== */
@media (max-width: 1024px) {
  .footer .legal-links--split {
    justify-content: center;
    text-align: center;
  }

  .footer .footer-grid {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  #s-footer-brand > div > div > div > div,
  #s-footer-nav > div > div > div > div,
  #s-footer-contact > div > div > div > div,
  #block_rich_text_jn9t > div > div > div > div > ul,
  .footer-col > div > div > div > .rich-text-body,
  .social.social--icons.social--circle {
    text-align: center;
  }
}

/* Grille des spécialités (Tablette) */
@media (max-width: 991px) {
  .specialites-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }
}

/* ========================================
   RESPONSIVE — MOBILE (max 575px)
======================================== */
@media (max-width: 575px) {
  .specialites-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
