/* =========================
   STYLE (Pages / specific)
========================= */

/* Titles */
h1{ font-weight: 700; }

/* Helpers */
.rounded-4{ border-radius: 16px !important; }

/* Hero (bannière accueil) */
.hero-img{
  height: 280px;
  border-radius: 16px;
  overflow: hidden;
  background: #f1f3f5;
}

.hero-img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Galerie photos
   - cadres strictement identiques
   - aucune photo coupée
*/
.photo-card{
  border: none;
  border-radius: 16px;
  overflow: hidden;
  transition: transform .15s ease, box-shadow .15s ease;
}

.photo-card:hover{ transform: translateY(-2px); }

.photo-frame{
  width: 100%;
  height: 180px;
  border-radius: 16px;
  overflow: hidden;

  background: #fff;
  border: 1px solid #e9ecef;
  box-shadow: 0 6px 18px rgba(0,0,0,.04);

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 10px;
}

.photo-frame img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  padding: 6px;
}

.badge{ font-weight: 600; }

/* Actus cards */
article h3{ line-height: 1.2; }

/* Plan du site cards hover */
a.border.rounded-4:hover{
  background: #f8f9fa;
}

/* =========================
   HERO – PAGE ACCUEIL
========================= */
.hero-logo{
  background: linear-gradient(180deg, #f3a1c4, #e86aa3);
  padding: 80px 20px;
  text-align: center;
}

.hero-logo img{
  max-width: 1000px;
  width: 100%;
}

/* Home blocks: ensure text color applies inside sanitized HTML content */
.me-block .me-content,
.me-block .me-content *{
  color: inherit;
}