/* ============================================
   FFF Home Donate Blurb (Divi)
   Module class: fff-home-donate
============================================ */

.et_pb_blurb.fff-home-donate{
  background: #f4f7fc;                 /* bleu-gris très léger (FFF feel) */
  border: 1px solid rgba(0,0,0,0.10);
  border-radius: 4px;
  box-shadow: 0 10px 22px rgba(0,0,0,0.08);
  overflow: hidden;                    /* coins propres */
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}

/* Hover discret */
.et_pb_blurb.fff-home-donate:hover{
  background: #eef3ff;                 /* bleu soft */
  border-color: rgba(66,103,178,0.35);
  box-shadow: 0 14px 30px rgba(0,0,0,0.10);
  transform: translateY(-1px);
}

/* Padding global: donne de l'air à l'image et au texte */
.et_pb_blurb.fff-home-donate .et_pb_blurb_content{
  padding: 18px;
}

/* Image */
.et_pb_blurb.fff-home-donate .et_pb_main_blurb_image{
  margin: 0 0 14px;
}

.et_pb_blurb.fff-home-donate .et_pb_main_blurb_image img{
  display: block;
  width: 100%;
  height: auto;
  border-radius: 4px;                 /* cohérent avec ton max 4px ailleurs */
}

/* Conteneur texte: pas de padding ici (déjà sur blurb_content) */
.et_pb_blurb.fff-home-donate .et_pb_blurb_container{
  padding: 0;
}

/* Titre */
.et_pb_blurb.fff-home-donate .et_pb_module_header{
  margin: 0 0 10px;
  font-size: 1.25rem;
  line-height: 1.25;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #0c121c !important;          /* foncé stable */
  -webkit-text-fill-color: #0c121c !important;
  text-align: center;
}

/* Texte: lisible, stable, pas de sélection globale sur * */
.et_pb_blurb.fff-home-donate .et_pb_blurb_description{
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.6;
  font-weight: 500;
  letter-spacing: 0.01em;
  color: rgba(12,18,28,0.80) !important;
  -webkit-text-fill-color: rgba(12,18,28,0.80) !important;
  opacity: 1 !important;
  text-align: justify;
}

.et_pb_blurb.fff-home-donate .et_pb_blurb_description p{
  margin: 0 0 0.65rem;
}
.et_pb_blurb.fff-home-donate .et_pb_blurb_description p:last-child{
  margin-bottom: 0;
}

/* Liens éventuels */
.et_pb_blurb.fff-home-donate .et_pb_blurb_description a{
  color: rgba(66,103,178,0.95) !important;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
.et_pb_blurb.fff-home-donate .et_pb_blurb_description a:hover{
  color: rgba(66,103,178,1) !important;
}

/* CTA optionnel si tu l'utilises */
.et_pb_blurb.fff-home-donate .fff-donate-cta-wrap{
  display: flex;
  justify-content: flex-start;
  margin-top: 14px;
}

.et_pb_blurb.fff-home-donate .fff-donate-cta{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.65rem 1.3rem;
  font-size: 0.82rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  border-radius: 999px;
  border: 1px solid rgba(66,103,178,1);
  background: rgba(66,103,178,1);
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.et_pb_blurb.fff-home-donate .fff-donate-cta:hover,
.et_pb_blurb.fff-home-donate .fff-donate-cta:focus{
  background: rgba(50,82,150,1);
  border-color: rgba(50,82,150,1);
  box-shadow: 0 14px 32px rgba(66,103,178,0.30);
  transform: translateY(-1px);
}

/* ============================================
   BLURB CARD – style commun (compact)
   Classe: .blurb-fff-normal
============================================ */

.blurb-fff-normal.et_pb_blurb{
  background: #fbfaf7; /* ivoire très léger, différent du bleu-gris */
  border: 1px solid rgba(12,18,28,0.10);
  border-radius: 4px;
  padding: 1.2rem;
  text-align: center;
  box-shadow: 0 10px 22px rgba(15,23,42,0.08);
  margin-bottom: 1rem;

  overflow: hidden;
  -webkit-font-smoothing: antialiased;

  transition:
    transform 0.18s ease,
    box-shadow 0.18s ease,
    border-color 0.18s ease,
    background-color 0.18s ease;
}

/* Icône (font/SVG) */
.blurb-fff-normal .et_pb_main_blurb_image{
  margin: 0 0 0.65rem;
  font-size: clamp(28px, 3.4vw, 38px);
  line-height: 1;
  color: rgba(66,103,178,0.95);
  transition: transform 0.18s ease, opacity 0.18s ease, color 0.18s ease;
}

/* Image */
.blurb-fff-normal .et_pb_main_blurb_image img{
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid rgba(12,18,28,0.10);
  border-radius: 4px;
  margin: 0 0 0.35rem;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

/* Titre */
.blurb-fff-normal h4{
  margin: 0 0 0.45rem;
  font-size: clamp(0.98rem, 0.92rem + 0.35vw, 1.08rem);
  font-weight: 900;
  letter-spacing: 0.02em;
  color: rgba(12,18,28,0.95);
  text-align: center;
}

/* Texte (compact + justification desktop) */
.blurb-fff-normal .et_pb_blurb_description{
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.35;
  font-weight: 500;
  color: rgba(12,18,28,0.76);

  text-align: justify;
  text-justify: inter-word;
}

/* Eviter les marges par défaut des <p> de Divi */
.blurb-fff-normal .et_pb_blurb_description p{
  margin: 0;
}

/* Hover */
.blurb-fff-normal.et_pb_blurb:hover{
  background: #f3f7ff; /* bleu très doux au hover */
  border-color: rgba(66,103,178,0.45);
  box-shadow: 0 16px 30px rgba(15,23,42,0.12);
  transform: translateY(-2px);
}

.blurb-fff-normal.et_pb_blurb:hover .et_pb_main_blurb_image{
  color: rgba(50,82,150,1);
  transform: translateY(-1px);
  opacity: 0.98;
}

.blurb-fff-normal.et_pb_blurb:hover .et_pb_main_blurb_image img{
  box-shadow: 0 6px 14px rgba(66,103,178,0.16);
  transform: scale(1.03);
}

/* Focus clavier */
.blurb-fff-normal.et_pb_blurb:focus-within{
  outline: 2px solid rgba(66,103,178,0.45);
  outline-offset: 3px;
}

/* Mobile: éviter les trous de justification */
@media (max-width: 680px){
  .blurb-fff-normal .et_pb_blurb_description{
    text-align: left;
    text-justify: auto;
  }
}

/* Responsive padding */
@media (max-width: 980px){
  .blurb-fff-normal.et_pb_blurb{ padding: 1.05rem; }
}
@media (max-width: 768px){
  .blurb-fff-normal.et_pb_blurb{ padding: 0.95rem; }
}

/* Préférence utilisateur */
@media (prefers-reduced-motion: reduce){
  .blurb-fff-normal.et_pb_blurb,
  .blurb-fff-normal.et_pb_blurb *{
    transition: none !important;
  }
}