.elementor-kit-9{--e-global-color-primary:#0B3D91;--e-global-color-secondary:#0A543C;--e-global-color-text:#2B2A26;--e-global-color-accent:#D9480F;--e-global-color-fcgwhte:#FFFFFF;--e-global-color-ec62d70:#000000;--e-global-color-fcgnvyd:#0A2A63;--e-global-color-fcggrnh:#073D2B;--e-global-color-fcglink:#1F5FBF;--e-global-color-fcgorgd:#F27B35;--e-global-color-fcgsect:#5B6B7F;--e-global-color-fcgbglt:#F5F5F5;--e-global-color-36c3d84:#FEF7EC;--e-global-color-0fa1330:#151515;--e-global-color-6a1a18f:#161616;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1560px;}.e-con{--container-max-width:1560px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* FACAGRAM — the Alone theme puts .has-mini-items on <body> and reserves 46px of
   padding-bottom under 576px for a fixed mobile bar. This site never renders that
   bar, so the reservation showed as a white strip under the footer on phones. */
body.has-mini-items { padding-bottom: 0 !important; }

/* FACAGRAM — one content grid for the whole site.
   The homepage, header and footer are built from Elementor containers, whose inner
   box is min(1560px, 100% - 40px): content starts 20px in from the viewport edge,
   and 173px in at 1920. Two things pulled the other pages off that line:
     1. Solidarite / Actualites / Contact use the theme's default page template, and
        its .container.responsive wrapper capped them — content landed at 36px.
     2. A propos and Contact are built from legacy Elementor sections, whose columns
        carry their own 15px gutter — content landed at 15px. */
body.page-id-25374 .site-main > .container.responsive,
body.page-id-25375 .site-main > .container.responsive,
body.page-id-25376 .site-main > .container.responsive {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

/* A 1600px box with a 5px gutter puts 5px + the column's own 15px on the same 20px
   line, and matches the container grid at every width. The Customizer's Additional
   CSS pins top-level boxed sections to 1560px with !important, so this .elementor-kit-9 is
   deliberately one step more specific — and unlike that rule it also reaches inner
   sections, which is what "Nos piliers" on A propos sits in. */
body.page-id-8923 .elementor-section.elementor-section-boxed > .elementor-container,
body.page-id-25376 .elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1600px !important;
    padding-left: 5px;
    padding-right: 5px;
}

/* The contact form sits in a column carrying its own 90px card padding and a grey
   background, so it is the card edge, not the text, that has to meet the grid. */
body.page-id-25376 .elementor-section.elementor-element-8b0e650.elementor-section-boxed > .elementor-container {
    padding-left: 20px;
    padding-right: 20px;
}

/* ---- Phones: a 15px side gutter, so nothing touches the screen edge ----
   On mobile the Elementor containers had NO horizontal padding at all
   (the inner box spanned 0 -> 390 on a 390px screen), which is why headings
   and body copy ran off both edges. The padding goes on the inner box, never
   on the section, so section backgrounds stay edge-to-edge. */
@media (max-width: 767.98px) {

    [data-elementor-type="wp-page"] > .e-con.e-con-boxed > .e-con-inner,
    [data-elementor-type="footer"] > .e-con.e-con-boxed > .e-con-inner {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    /* The donation band is a full-bleed card that already carries its own padding. */
    [data-elementor-type="wp-page"] > .elementor-element-618a53d > .e-con-inner {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Team carousel sits in a full-width container, so it has no inner box. */
    [data-elementor-type="wp-page"] > .e-con.e-con-full.elementor-element-703369c {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    /* Legacy-section pages (A propos, Contact): take the gutter off the container
       and put a single 15px on the column, so these match the container pages
       instead of landing on 5px or 20px depending on the section. */
    [data-elementor-type="wp-page"] > .elementor-section > .elementor-container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    [data-elementor-type="wp-page"] > .elementor-section > .elementor-container > .elementor-column > .elementor-element-populated {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
    /* ...except the contact form, whose column IS the grey card. */
    body.page-id-25376 .elementor-element-8b0e650 > .elementor-container {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
    body.page-id-25376 .elementor-element-8b0e650 > .elementor-container > .elementor-column > .elementor-element-populated {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    /* Header bars on the same 15px line as the content and the footer. */
    .elementor-location-header > .elementor-element-14edfe1,
    .elementor-location-header > .elementor-element-c74b5f2 {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    /* Vertical rhythm: Organisation had no top padding at all, so it butted
       straight into the band above it, and the FAQ had no bottom padding. */
    [data-elementor-type="wp-page"] > .elementor-element-2a4e37c > .e-con-inner {
        padding-top: 45px !important;
    }
    [data-elementor-type="wp-page"] > .elementor-element-a7bedc2 > .e-con-inner {
        padding-bottom: 45px !important;
    }
}

/* ---- Elementor editor only: one header at a time, and no dashed boxes for
   CSS-drawn decorative containers.
   The plugin hides unused headers with ".elementor > .e-con.fcn-hv-d|t|m".
   In the builder the preview wraps elements in ".elementor-section-wrap", so
   that direct-child .elementor-kit-9 never matches and all three headers stack.
   ".elementor-section-wrap" exists ONLY in the editor preview, so none of this
   can reach the live site. Breakpoints follow Elementor's device modes so the
   header shown matches the device button you are on. ---- */
@media (min-width: 1025px) {
    .elementor-section-wrap > .e-con.fcn-hv-t,
    .elementor-section-wrap > .e-con.fcn-hv-m { display: none !important; }
}
@media (min-width: 760px) and (max-width: 1024px) {
    .elementor-section-wrap > .e-con.fcn-hv-d,
    .elementor-section-wrap > .e-con.fcn-hv-m { display: none !important; }
}
@media (max-width: 759px) {
    .elementor-section-wrap > .e-con.fcn-hv-d,
    .elementor-section-wrap > .e-con.fcn-hv-t { display: none !important; }
}

/* The plugin draws overlays, nav underlines and bars as childless containers
   (.fcn-ho1-d is the hero gradient, .fcn-hohd-p the 2px active-nav underline).
   Elementor inflates every childless container into a ~100px dashed "+" box,
   which is the clutter in the builder. Hide that affordance for fcn-* only;
   they stay selectable from the Navigator. */
.elementor-section-wrap .e-con[class*="fcn-"] > .elementor-empty-view { display: none !important; }

/* ---- Preloader: homepage only ----
   fcg.js appends a full-screen splash to <body> on EVERY page, with no class,
   id or opt-out: position:fixed; inset:0; z-index:9999; aria-hidden="true".
   Matched on the inline style. Note browsers normalise cssText to
   "z-index: 9999" WITH a space, so the substrings must not assume spacing. */
body:not(.home) > div[aria-hidden="true"][style*="fixed"][style*="9999"]{
    display:none !important;
}

/* ===== Nav : indicateur de page active ===== */
body:not(.home) .fcn-hohd-p,
body:not(.home) .fcn-hoht-s,
body:not(.home) .fcn-hohm-u{display:none !important}
body.page-id-26129 .fcn-hohd-r,
body.page-id-26129 .fcn-hoht-t,
body.page-id-26129 .fcn-hohm-v,
body.page-id-26130 .fcn-hohd-t,
body.page-id-26130 .fcn-hoht-u,
body.page-id-26130 .fcn-hohm-w,
body.page-id-26131 .fcn-hohd-v,
body.page-id-26131 .fcn-hoht-v,
body.page-id-26131 .fcn-hohm-x,
body.page-id-26133 .fcn-hohd-z,
body.page-id-26133 .fcn-hoht-x,
body.page-id-26133 .fcn-hohm-z,
body.page-id-26134 .fcn-hohd-11,
body.page-id-26134 .fcn-hoht-y,
body.page-id-26134 .fcn-hohm-10,
body.page-id-26135 .fcn-hoht-10,
body.page-id-26135 .fcn-hohm-12,
body.page-id-26601 .fcn-hohd-x,
body.page-id-26601 .fcn-hoht-w,
body.page-id-26601 .fcn-hohm-y{position:relative}
body.page-id-26129 .fcn-hohd-r::after,
body.page-id-26129 .fcn-hoht-t::after,
body.page-id-26129 .fcn-hohm-v::after,
body.page-id-26130 .fcn-hohd-t::after,
body.page-id-26130 .fcn-hoht-u::after,
body.page-id-26130 .fcn-hohm-w::after,
body.page-id-26131 .fcn-hohd-v::after,
body.page-id-26131 .fcn-hoht-v::after,
body.page-id-26131 .fcn-hohm-x::after,
body.page-id-26133 .fcn-hohd-z::after,
body.page-id-26133 .fcn-hoht-x::after,
body.page-id-26133 .fcn-hohm-z::after,
body.page-id-26134 .fcn-hohd-11::after,
body.page-id-26134 .fcn-hoht-y::after,
body.page-id-26134 .fcn-hohm-10::after,
body.page-id-26135 .fcn-hoht-10::after,
body.page-id-26135 .fcn-hohm-12::after,
body.page-id-26601 .fcn-hohd-x::after,
body.page-id-26601 .fcn-hoht-w::after,
body.page-id-26601 .fcn-hohm-y::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#E0561C;pointer-events:none}


/* "L’entraide en chiffres" : centrer tout le bloc, pas seulement le titre */
.fcn-ho10-d{margin-left:auto !important;margin-right:auto !important}


/* ===== En-tete mobile / tablette ===== */
/* Le bouton du menu est un conteneur vide : on dessine l icone */
.fcn-hoht-l,.fcn-hohm-n{position:relative}
.fcn-hoht-l::before,.fcn-hohm-n::before{content:"";position:absolute;top:50%;left:50%;width:20px;height:2px;margin:-1px 0 0 -10px;background:#fff;border-radius:2px;box-shadow:0 -6px 0 #fff,0 6px 0 #fff;transition:box-shadow .2s,transform .2s;pointer-events:none}
body.fg-menu-open .fcn-hoht-l::before,body.fg-menu-open .fcn-hohm-n::before{box-shadow:none;transform:rotate(45deg)}
body.fg-menu-open .fcn-hoht-l::after,body.fg-menu-open .fcn-hohm-n::after{content:"";position:absolute;top:50%;left:50%;width:20px;height:2px;margin:-1px 0 0 -10px;background:#fff;border-radius:2px;transform:rotate(-45deg);pointer-events:none}
/* Logo : largeur fixe, ratio conserve */
.fcn-hohm-k img{width:44px !important;height:auto !important;aspect-ratio:437/322;object-fit:contain}
/* Masquer le mot FaCaGraM a cote du logo sur mobile */
.fcn-hohm-l{display:none !important}


/* Accueil - actualites : image au-dessus du texte sur mobile (meme mise en page que la page Actualites) */
@media (max-width: 767.98px){
  .fcn-ho15-9{grid-template-columns:1fr !important}
  .fcn-ho15-a{grid-template-columns:1fr !important}
  .fcn-ho15-b{height:auto !important}
  .fcn-ho15-b img{width:100% !important;height:auto !important;aspect-ratio:3/2;object-fit:cover}
}


/* Adhesion : masquer la 4e ligne de cotisation (vide) */
.elementor-element-91816d5 h3 ~ div:nth-of-type(4){display:none !important}


/* ===== Article : page d’un billet ===== */
body.single-post .single-post-wrap{max-width:1170px;margin:0 auto;padding:0 20px}
body.single-post .entry-image{margin:0 0 28px}
body.single-post .entry-image img{border-radius:16px}
body.single-post .entry-cat-links{font-family:Poppins,sans-serif;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#E0561C;margin:0 0 12px}
body.single-post .entry-cat-links a{color:#E0561C;text-decoration:none}
body.single-post h1.entry-title{font-family:"Roboto Condensed",sans-serif;font-weight:700;text-transform:uppercase;color:#161616;font-size:clamp(30px,4vw,48px);line-height:1.08;margin:0 0 16px}
body.single-post ul.entry-meta{list-style:none;display:flex;flex-wrap:wrap;gap:18px;margin:0 0 26px;padding:0 0 18px;border-bottom:1px solid rgba(22,22,22,.12);font-family:Poppins,sans-serif;font-size:14px;color:#8a8a8a}
body.single-post ul.entry-meta li{margin:0}
body.single-post ul.entry-meta a{color:#8a8a8a;text-decoration:none}
body.single-post .entry-content-inner{font-family:Poppins,sans-serif;font-size:17px !important;line-height:1.8 !important;color:#333}
body.single-post .entry-content-inner p{margin:0 0 20px}
body.single-post .entry-content-inner h2,body.single-post .entry-content-inner h3,body.single-post .entry-content-inner h4{font-family:"Roboto Condensed",sans-serif;font-weight:700;text-transform:uppercase;color:#0D4D34;line-height:1.15;margin:34px 0 12px}
body.single-post .entry-content-inner h2{font-size:clamp(24px,2.6vw,32px)}
body.single-post .entry-content-inner h3{font-size:clamp(20px,2.2vw,25px)}
body.single-post .entry-content-inner h4{font-size:19px}
body.single-post .entry-content-inner a{color:#E0561C;text-decoration:underline;text-underline-offset:3px}
body.single-post .entry-content-inner ul,body.single-post .entry-content-inner ol{margin:0 0 20px;padding-left:22px}
body.single-post .entry-content-inner li{margin:0 0 8px}
body.single-post .entry-content-inner blockquote{margin:26px 0;padding:18px 22px;background:#FFF1E9;border-left:3px solid #E0561C;border-radius:0 12px 12px 0}
body.single-post .entry-content-inner blockquote p:last-child{margin:0}
body.single-post .entry-content-inner img{max-width:100%;height:auto;border-radius:12px}
body.single-post .post-navigation{max-width:1170px;margin:40px auto 0;padding:24px 20px 0;border-top:1px solid rgba(22,22,22,.12)}
body.single-post .post-navigation a{color:#0D4D34;text-decoration:none;font-weight:600}
body.single-post .post-navigation a:hover{color:#E0561C}
@media (max-width:767.98px){
  body.single-post .single-post-wrap{padding:0 15px}
  body.single-post .entry-content-inner{font-size:16px !important}
  body.single-post .entry-image img{border-radius:12px}
}


/* ===== Article : blocs complementaires (tags, partage, auteur, commentaires) ===== */
body.single-post .entry-content-inner ul{list-style:none;padding-left:0}
body.single-post .entry-content-inner ul li{position:relative;padding-left:32px}
body.single-post .entry-content-inner ul li::before{content:"";position:absolute;left:0;top:14px;width:18px;height:2px;background:#E0561C;border-radius:2px}
body.single-post .entry-content-inner ul li strong,body.single-post .entry-content-inner ol li strong{color:#0D4D34}
body.single-post .entry-footer{margin-top:38px;padding-top:22px;border-top:1px solid rgba(22,22,22,.12);display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;justify-content:space-between;font-family:Poppins,sans-serif;font-size:14px}
body.single-post .entry-footer a[rel~="tag"]{display:inline-block;background:#0D4D34;color:#fff;font-size:13px;font-weight:600;padding:6px 13px;border-radius:999px;text-decoration:none;margin:0 6px 6px 0}
body.single-post .entry-footer a[rel~="tag"]:hover{background:#E0561C}
body.single-post .entry-share a{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#0D4D34;color:#fff;margin-left:6px;text-decoration:none}
body.single-post .entry-share a:hover{background:#E0561C}
body.single-post .author-bio{max-width:1170px;margin:36px auto 0;padding:26px 20px;background:#F7F1E8;border-radius:16px;font-family:Poppins,sans-serif;color:#333}
body.single-post .author-bio h4,body.single-post .author-bio h3{font-family:"Roboto Condensed",sans-serif;font-weight:700;text-transform:uppercase;color:#0D4D34;margin:0 0 8px}
body.single-post .comment-wrapper{max-width:1170px;margin:40px auto 0;padding:0 20px;font-family:Poppins,sans-serif;color:#333}
body.single-post .comment-wrapper h2,body.single-post .comment-wrapper h3,body.single-post .related-posts-wrap h2,body.single-post .related-posts-wrap h3{font-family:"Roboto Condensed",sans-serif;font-weight:700;text-transform:uppercase;color:#161616}
body.single-post .comment-wrapper label{font-weight:600;color:#0D4D34}
body.single-post .comment-wrapper input[type=text],body.single-post .comment-wrapper input[type=email],body.single-post .comment-wrapper input[type=url],body.single-post .comment-wrapper textarea{width:100%;border:1px solid rgba(22,22,22,.14);border-radius:10px;padding:12px 14px;font-family:Poppins,sans-serif;font-size:15px;background:#fff}
body.single-post .comment-wrapper input:focus,body.single-post .comment-wrapper textarea:focus{outline:none;border-color:#E0561C}
body.single-post .comment-wrapper input[type=submit],body.single-post .comment-wrapper .submit{background:#E0561C;color:#fff;border:0;border-radius:999px;padding:12px 26px;font-weight:600;cursor:pointer}
body.single-post .comment-wrapper input[type=submit]:hover{background:#0D4D34}
body.single-post .related-posts-wrap{max-width:1170px;margin:48px auto 0;padding:0 20px}
@media (max-width:767.98px){
  body.single-post .entry-footer{flex-direction:column;align-items:flex-start}
  body.single-post .author-bio,body.single-post .comment-wrapper,body.single-post .related-posts-wrap{padding-left:15px;padding-right:15px}
}


/* ===== Actualites : cartes article (style des cartes Organisation) ===== */
.fcn-ac3-1{align-items:stretch}
.fcn-ac3-1 > a{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 6px 22px rgba(22,22,22,.07);display:flex;flex-direction:column;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease}
.fcn-ac3-1 > a:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(22,22,22,.13)}
.fcn-ac3-1 > a .fcg-ac-media{width:100%;margin:0 !important;border-radius:0 !important;overflow:hidden}
.fcn-ac3-1 > a .fcg-ac-media img{width:100%;display:block;border-radius:0 !important}
.fcn-ac3-1 > a .fcg-ac-body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1 1 auto}
.fcn-ac3-1 > a .fcg-ac-body > *{margin:0 !important}
.fcg-ac-title,.fcg-ac-title *{color:#0D4D34 !important}
.fcg-ac-text,.fcg-ac-text *{color:#555}
.fcg-ac-link{margin-top:auto !important}
.fcg-ac-link,.fcg-ac-link *{color:#E0561C}
/* Bloc "A la une" : empiler le texte au lieu de 3 colonnes */
.fcn-ac2-4 .fcn-ac2-1{display:block !important}
@media (max-width:767.98px){
  .fcn-ac3-1 > a .fcg-ac-body{padding:18px 18px 20px}
}

/* A la une : pastille et lien */
.fcn-ac2-4 .fcn-ac2-5{display:inline-block !important;width:auto !important}
.fcn-ac2-9{width:auto !important;align-items:center}
.fcn-ac2-9 .fcn-ac2-a,.fcn-ac2-9 a{white-space:nowrap}


/* A la une : mise en grille (image + texte cote a cote) */
@media (min-width:768px){
  .fcn-ac2-0{display:grid !important;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,3.4vw,56px);align-items:center}
  .fcn-ac2-0 > .fcn-ac2-1{margin:0 !important}
  .fcn-ac2-0 > .fcn-ac2-1 img{border-radius:16px}
  .fcn-ac2-0 > .fcn-ac2-4{margin:0 !important}
}


/* Accueil - actualites : grille image + texte (corrige la classe dupliquee fcn-ho15-a) */
.fcn-ho15-d .fcn-ho15-a{display:block !important}
.fcn-ho15-d{flex-direction:column;justify-content:center}
@media (min-width:1025px){
  .fcn-ho15-9{grid-template-columns:260px minmax(0,1fr) 260px minmax(0,1fr) !important;column-gap:26px;row-gap:40px;align-items:start}
}
@media (min-width:768px) and (max-width:1024.98px){
  .fcn-ho15-9{grid-template-columns:220px minmax(0,1fr) !important;column-gap:22px;row-gap:32px;align-items:start}
}

/* generique : chaque article a sa propre classe dupliquee */
.fcn-ho15-9 > a{display:block !important}
.fcn-ho15-9 > div > a{display:block !important}
.fcn-ho15-9 > a > div{width:100% !important}
.fcn-ho15-9 > a img{width:100% !important;height:auto !important;border-radius:12px}


/* ===== Formulaires (Contact Form 7) ===== */
.wpcf7{font-family:Poppins,sans-serif;color:#333}
.wpcf7-form p{margin:0 0 16px}
.fcg-f-label{display:block;font-size:14px;font-weight:600;color:#0D4D34;margin:0 0 6px}
.wpcf7-form input[type=text],.wpcf7-form input[type=email],.wpcf7-form input[type=tel],.wpcf7-form input[type=number],.wpcf7-form input[type=date],.wpcf7-form select,.wpcf7-form textarea{width:100%;border:1px solid rgba(22,22,22,.14);border-radius:10px;padding:12px 14px;font-family:Poppins,sans-serif;font-size:15px;background:#fff;color:#161616;box-sizing:border-box}
.wpcf7-form input:focus,.wpcf7-form select:focus,.wpcf7-form textarea:focus{outline:none;border-color:#E0561C;box-shadow:0 0 0 3px rgba(224,86,28,.12)}
.wpcf7-form textarea{min-height:120px;resize:vertical}
.fcg-f-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.wpcf7-list-item{display:inline-flex;align-items:center;gap:7px;margin:0 18px 8px 0}
.wpcf7-list-item-label{font-size:14px}
.fcg-f-consent .wpcf7-list-item{margin-left:0}
.wpcf7-form input.fcg-f-submit,.wpcf7-form .fcg-f-submit{background:#E0561C;color:#fff;border:0;border-radius:999px;padding:14px 30px;font-weight:600;font-size:15px;cursor:pointer;width:auto;transition:background .25s}
.wpcf7-form input.fcg-f-submit:hover,.wpcf7-form .fcg-f-submit:hover{background:#0D4D34}
.wpcf7-spinner{display:none}
.wpcf7-not-valid-tip{color:#c0392b;font-size:13px;margin-top:5px}
.wpcf7-response-output{border-radius:10px;padding:12px 16px;font-size:14px;border-width:1px;margin:14px 0 0}
@media (max-width:767.98px){.fcg-f-grid{grid-template-columns:1fr}}


/* CF7 overrides (le theme Alone out-specifie les regles de base) */
body .wpcf7 .wpcf7-form label.fcg-f-label{display:block !important;font-size:14px !important;font-weight:600 !important;color:#0D4D34 !important;margin:0 0 6px !important}
body .wpcf7 .wpcf7-form input[type=text],body .wpcf7 .wpcf7-form input[type=email],body .wpcf7 .wpcf7-form input[type=tel],body .wpcf7 .wpcf7-form input[type=number],body .wpcf7 .wpcf7-form input[type=date],body .wpcf7 .wpcf7-form select,body .wpcf7 .wpcf7-form textarea{width:100% !important;border:1px solid rgba(22,22,22,.14) !important;border-radius:10px !important;padding:12px 14px !important;font-family:Poppins,sans-serif !important;font-size:15px !important;background:#fff !important;color:#161616 !important;box-sizing:border-box !important;height:auto !important}
body .wpcf7 .wpcf7-form textarea{min-height:120px !important}
body .wpcf7 .wpcf7-form input[type=submit].fcg-f-submit{background:#E0561C !important;color:#fff !important;border:0 !important;border-radius:999px !important;padding:14px 30px !important;font-weight:600 !important;font-size:15px !important;width:auto !important;height:auto !important;cursor:pointer !important}
body .wpcf7 .wpcf7-form input[type=submit].fcg-f-submit:hover{background:#0D4D34 !important}
body .wpcf7 .wpcf7-form input[type=radio],body .wpcf7 .wpcf7-form input[type=checkbox]{width:auto !important;margin:0 !important;accent-color:#E0561C}
body .wpcf7 .fcg-f-grid{display:grid !important;grid-template-columns:1fr 1fr;gap:0 18px}
@media (max-width:767.98px){body .wpcf7 .fcg-f-grid{grid-template-columns:1fr}}

/* wpcf7-list-item overrides */
body .wpcf7 .wpcf7-form .wpcf7-list-item{display:block !important;margin:0 0 8px 0 !important}
body .wpcf7 .wpcf7-form .wpcf7-list-item label{display:flex !important;align-items:flex-start;gap:9px;font-size:14px;cursor:pointer}
body .wpcf7 .wpcf7-form .wpcf7-radio .wpcf7-list-item{margin-right:0 !important}
body .wpcf7 .fcg-f-consent .wpcf7-list-item label{align-items:center}


/* Don : onglets de frequence + grille de montants (mise en page d origine) */
body .wpcf7 .wpcf7-form fieldset.hidden-fields-container{display:none !important}
body .wpcf7 .wpcf7-form .fcg-freq{display:grid !important;grid-template-columns:1fr 1fr !important;gap:6px !important;background:#F2F2F2;padding:6px;border-radius:999px;margin-top:6px}
body .wpcf7 .wpcf7-form .fcg-freq .wpcf7-list-item{display:block !important;margin:0 !important}
body .wpcf7 .wpcf7-form .fcg-freq .wpcf7-list-item label{display:block !important;cursor:pointer;gap:0 !important}
body .wpcf7 .wpcf7-form .fcg-freq input[type=radio]{position:absolute !important;opacity:0 !important;width:0 !important;height:0 !important;margin:0 !important}
body .wpcf7 .wpcf7-form .fcg-freq .wpcf7-list-item-label{display:block !important;text-align:center !important;padding:12px 8px !important;border-radius:999px !important;font-weight:600 !important;font-size:15px !important;color:#161616;transition:background .2s,color .2s}
body .wpcf7 .wpcf7-form .fcg-freq input:checked + .wpcf7-list-item-label{background:#161616 !important;color:#fff !important}
body .wpcf7 .wpcf7-form .fcg-amt{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:10px !important;margin-top:6px}
body .wpcf7 .wpcf7-form .fcg-amt .wpcf7-list-item{display:block !important;margin:0 !important}
body .wpcf7 .wpcf7-form .fcg-amt .wpcf7-list-item label{display:block !important;cursor:pointer;gap:0 !important}
body .wpcf7 .wpcf7-form .fcg-amt input[type=radio]{position:absolute !important;opacity:0 !important;width:0 !important;height:0 !important;margin:0 !important}
body .wpcf7 .wpcf7-form .fcg-amt .wpcf7-list-item-label{display:block !important;text-align:center !important;padding:15px 8px !important;border:1px solid rgba(22,22,22,.14) !important;border-radius:999px !important;font-weight:700 !important;font-size:16px !important;background:#fff !important;color:#161616 !important;transition:all .2s}
body .wpcf7 .wpcf7-form .fcg-amt .wpcf7-list-item-label:hover{border-color:#E0561C}
body .wpcf7 .wpcf7-form .fcg-amt input:checked + .wpcf7-list-item-label{background:#E0561C !important;border-color:#E0561C !important;color:#fff !important}
@media (max-width:560px){body .wpcf7 .wpcf7-form .fcg-amt{grid-template-columns:repeat(2,1fr) !important}}


/* compactage du formulaire (hauteur identique a la maquette) */
body .wpcf7 .wpcf7-form p{margin:0 0 12px !important}
body .wpcf7 .wpcf7-form label.fcg-f-label{font-size:13px !important;margin:0 0 5px !important}
body .wpcf7 .wpcf7-form input[type=text],body .wpcf7 .wpcf7-form input[type=email],body .wpcf7 .wpcf7-form input[type=tel],body .wpcf7 .wpcf7-form input[type=number],body .wpcf7 .wpcf7-form input[type=date],body .wpcf7 .wpcf7-form select{padding:11px 14px !important;font-size:14px !important}
body .wpcf7 .wpcf7-form .fcg-amt{gap:8px !important;margin-top:4px}
body .wpcf7 .wpcf7-form .fcg-amt .wpcf7-list-item-label{padding:11px 6px !important;font-size:15px !important}
body .wpcf7 .wpcf7-form .fcg-freq{padding:5px;margin-top:4px}
body .wpcf7 .wpcf7-form .fcg-freq .wpcf7-list-item-label{padding:9px 8px !important;font-size:14px !important}
body .wpcf7 .wpcf7-form input[type=submit].fcg-f-submit{padding:13px 28px !important;margin-top:4px}
body .wpcf7 .wpcf7-form .fcg-f-grid{gap:0 16px !important}


/* Adhesion : 2 champs par ligne + cartes de type */
body .wpcf7 .wpcf7-form .fcg-f-grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:0 16px !important}
@media (max-width:600px){body .wpcf7 .wpcf7-form .fcg-f-grid{grid-template-columns:1fr !important}}
body .wpcf7 .wpcf7-form .fcg-type{display:grid !important;grid-template-columns:1fr 1fr !important;gap:12px !important;margin-top:4px}
body .wpcf7 .wpcf7-form .fcg-type .wpcf7-list-item{display:block !important;margin:0 !important}
body .wpcf7 .wpcf7-form .fcg-type .wpcf7-list-item label{display:block !important;cursor:pointer;gap:0 !important}
body .wpcf7 .wpcf7-form .fcg-type input[type=radio]{position:absolute !important;opacity:0 !important;width:0 !important;height:0 !important;margin:0 !important}
body .wpcf7 .wpcf7-form .fcg-type .wpcf7-list-item-label{display:block !important;padding:14px 16px !important;border:1px solid rgba(22,22,22,.14) !important;border-radius:14px !important;background:#fff !important;font-size:14px !important;line-height:1.45 !important;color:#161616 !important;transition:border-color .2s,background .2s}
body .wpcf7 .wpcf7-form .fcg-type input:checked + .wpcf7-list-item-label{border-color:#E0561C !important;background:#FFF1E9 !important}
@media (max-width:600px){body .wpcf7 .wpcf7-form .fcg-type{grid-template-columns:1fr !important}}


/* message de confirmation des formulaires */
.fcg-bridge-msg{margin-top:12px;padding:11px 15px;border-radius:10px;font-family:Poppins,sans-serif;font-size:14px;line-height:1.5}
.fcg-bridge-msg[data-ok="1"]{background:#E8F3EC;color:#0D4D34;border:1px solid rgba(13,77,52,.25)}
.fcg-bridge-msg[data-ok="0"]{background:#FDECEA;color:#A3301C;border:1px solid rgba(192,57,43,.25)}


/* Don : espacement des onglets et des montants */
.fcg-mock-freq{margin-bottom:16px !important}
.fcg-mock-amt{gap:12px !important;margin-bottom:18px !important}


/* Adhesion : espacement des cartes de type */
.fcg-mock-type{gap:14px !important;margin-bottom:20px !important}

/* === bridge feedback message : beat the fcg-* widget reset (padding/background: revert) === */
.fcg-bridge-msg.fcg-bridge-msg{display:block!important;margin-top:14px!important;padding:11px 15px!important;border-radius:10px!important;font-family:Poppins,sans-serif!important;font-size:14px!important;line-height:1.55!important}
.fcg-bridge-msg.fcg-bridge-msg[data-ok="1"]{background:#E8F3EC!important;color:#0D4D34!important;border:1px solid rgba(13,77,52,.25)!important}
.fcg-bridge-msg.fcg-bridge-msg[data-ok="0"]{background:#FDECEA!important;color:#A3301C!important;border:1px solid rgba(192,57,43,.25)!important}/* End custom CSS */