/* ==========================================================================
   Blocs d'appel a l'action — remplacent le widget call-to-action d'Elementor Pro.
   Toutes les valeurs ont ete relevees au navigateur sur le rendu d'origine
   (getComputedStyle) et dans le CSS genere par Elementor, pas estimees.
   ========================================================================== */
.csr-cta{display:flex;flex-wrap:wrap;overflow:hidden;position:relative;transition:.5s;}
.csr-cta__content{width:100%;display:flex;flex-wrap:wrap;align-items:center;align-content:center;
  text-align:center;transition:background-color .4s;}
.csr-cta__title,.csr-cta__description{width:100%;position:relative;transition:.5s;}

/* --------------------------------------------------------------------------
   Famille « bandeau » — pages prestations et communes (33 blocs)
   -------------------------------------------------------------------------- */
.csr-cta--bandeau .csr-cta__content{background-color:#F9FAFA;padding:35px;}
/* Typographie alignee sur le corps de page (H2 24px / texte 16px), et non plus
   sur les valeurs d'origine du widget Pro (40px gris + 32px sur interligne 24px),
   qui detonnaient avec le reste de la page. */
.csr-cta--bandeau .csr-cta__title{
  font-family:"Saira Condensed",Sans-serif;font-size:24px;font-weight:700;line-height:1.3em;
  color:var(--e-global-color-secondary,#0C1015);margin:0 0 12px;}
.csr-cta--bandeau .csr-cta__description{
  font-family:"Roboto",Sans-serif;font-size:16px;font-weight:400;line-height:1.65;
  color:var(--e-global-color-text,#494B4F);margin:0;}
@media (max-width:767px){
  .csr-cta--bandeau .csr-cta__description:not(:last-child){margin-bottom:21px;}
}

/* --------------------------------------------------------------------------
   Famille « carte » — les 9 prestations de l'accueil
   -------------------------------------------------------------------------- */
.csr-cta--carte{flex-direction:column;}
.csr-cta--carte .csr-cta__bg-wrapper{position:relative;width:100%;min-height:280px;overflow:hidden;}
.csr-cta--carte .csr-cta__bg{position:absolute;inset:0;background-size:cover;background-position:50% 50%;
  transition:transform 1.5s ease;}
.csr-cta--carte:hover .csr-cta__bg{transform:scale(1.1);}       /* equivalent de bg-transform zoom-in */
.csr-cta--carte .csr-cta__overlay{position:absolute;inset:0;background-color:transparent;transition:1.5s;}
.csr-cta--carte:hover .csr-cta__overlay{background-color:#FFFFFF00;}
.csr-cta--carte .csr-cta__content{background-color:#FBF3EA;padding:32px 24px;}
.csr-cta--carte:hover .csr-cta__content{background-color:#FFFFFF;}
.csr-cta--carte .csr-cta__title{font-size:24px;font-weight:700;line-height:1.2em;
  color:#0C1015;margin:0 0 16px;}
.csr-cta--carte:hover .csr-cta__title{color:#E4511B;}
.csr-cta--carte .csr-cta__button-wrapper{width:100%;margin:0;padding:0;}
.csr-cta--carte .csr-cta__button{display:inline-block;
  color:#0C1015;background-color:transparent;
  border:2px solid #E4511B;transition:.3s;}
.csr-cta--carte .csr-cta__button:hover,
.csr-cta--carte:hover .csr-cta__button{color:#FFFFFF;background-color:#E4511B;border-color:#E4511B;}
@media (max-width:767px){
  .csr-cta--carte .csr-cta__bg-wrapper{min-height:220px;}
}

/* ==========================================================================
   Media : remplacent `media-carousel` et `gallery` d'Elementor Pro.
   Valeurs reprises des reglages des widgets d'origine.
   ========================================================================== */
.csr-media{width:100%;}
.csr-media img{display:block;width:100%;height:45em;object-fit:contain;border-radius:6px;}
@media (max-width:1024px){ .csr-media img{height:440px;} }
@media (max-width:767px){ .csr-media img{height:264px;} }

/* galerie du bloc lateral : 2 colonnes, gouttiere 12px, ratio 4:3, rayon 6px */
.csr-galerie{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
.csr-galerie a,.csr-galerie figure{margin:0;display:block;}
.csr-galerie img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px;
  transition:transform .3s ease;}
.csr-galerie img:hover{transform:scale(1.1);}
@media (max-width:1024px){ .csr-galerie{grid-template-columns:repeat(3,1fr);} }
@media (max-width:767px){ .csr-galerie{grid-template-columns:repeat(2,1fr);} }

/* plan du site — remplace le widget `sitemap` de Pro */
.csr-plan__titre{font-family:"Saira Condensed",Sans-serif;font-size:24px;font-weight:700;
  color:var(--e-global-color-secondary,#0C1015);margin:32px 0 12px;}
.csr-plan__titre:first-child{margin-top:0;}
.csr-plan__liste{list-style:none;margin:0;padding:0;column-gap:32px;}
@media (min-width:768px){ .csr-plan__liste{columns:2;} }
.csr-plan__liste li{margin:0 0 8px;break-inside:avoid;}
.csr-plan__liste a{font-family:"Roboto",Sans-serif;font-size:16px;line-height:1.65;
  color:var(--e-global-color-text,#494B4F);text-decoration:none;}
.csr-plan__liste a:hover{color:var(--e-global-color-primary,#E4511B);text-decoration:underline;}

/* Marges laterales du corps de page en mobile.
   La colonne de contenu (conteneur 411d2029, partagee par les 12 pages
   prestations et les 20 pages communes) n'avait que 16px de chaque cote,
   contre 40px pour le bandeau du haut de page : le texte paraissait colle
   aux bords. Porte a 26px, plus proche du rythme du reste de la page. */
@media (max-width:767px){
  .elementor-element.elementor-element-411d2029{
    --padding-left:26px;--padding-right:26px;}
}
