/**************************************
 EMOJIS DES 3 PILIERS
**************************************/
.mcf-emoji {
    font-size: 64px;
    line-height: 1;
    text-align: center;
    display: block;
    margin-bottom: 8px;
}

/**************************************
 BLOC HÉRO (TITRE + SOUS-TITRE + BOUTON)
**************************************/
.mcf-hero {
    text-align: center;
    padding-top: 10px !important;     /* espace sous le menu */
    padding-bottom: 12px !important;  /* espace avant le titre des piliers */
}

.mcf-hero h1 {
    margin-bottom: 8px !important;    /* espace entre H1 et sous-titre */
}

.mcf-hero p {
    margin-top: 0 !important;
    margin-bottom: 8px !important;    /* espace entre sous-titre et bouton */
}

.mcf-hero .wp-block-button {
    margin-top: 0 !important;
}

/**************************************
 TITRE "VOS 3 PILIERS FINANCIERS"
**************************************/
.mcf-pillars-wrap h2 {
    margin-top: 12px !important;      /* rapproche du bloc héro */
    margin-bottom: 12px !important;   /* rapproche des cartes */
}

/**************************************
 CARTES DES 3 PILIERS
**************************************/
.mcf-pillar {
    padding-top: 24px !important;     /* réduit l'espace emoji->titre */
    padding-bottom: 16px !important;  /* réduit la hauteur totale */
}

.mcf-pillar h3 {
    margin-top: 8px !important;       /* emoji -> titre */
    margin-bottom: 10px !important;   /* titre -> texte */
}

.mcf-pillar p {
    margin-top: 0 !important;
    margin-bottom: 14px !important;   /* texte -> bouton */
}

.mcf-pillar .wp-block-button {
    margin-top: 0 !important;
}
/**********************************
 * SECTION RESET D'AUTOMNE
 **********************************/

/* Bloc global RESET (fond beige pleine largeur) */
.mcf-reset {
    background-color: #F4EBE0;   /* beige RESET */
    padding: 64px 8%;
    margin: 64px auto;
}

/* Aligner les colonnes et réduire l'écart */
.mcf-reset .wp-block-columns {
    align-items: center;
    gap: 40px;
}

/* Largeur des colonnes sur écran d'ordinateur :
   - 60% pour le texte (gauche)
   - 40% pour l'image (droite) */
@media (min-width: 782px) {
    .mcf-reset .wp-block-column:first-child {
        flex-basis: 60% !important;
    }

    .mcf-reset .wp-block-column:last-child {
        flex-basis: 40% !important;
    }
}

/* Typo du surtitre "Le dernier hors-série" */
.mcf-reset p:first-of-type {
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 13px;
    margin-bottom: 12px;
    color: #8B7765;
}

/* Titre H2 du RESET */
.mcf-reset h2 {
    font-size: 32px;
    line-height: 1.25;
    margin-bottom: 20px;
}

/* Paragraphe de présentation */
.mcf-reset h2 + p {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 28px;
}

/* Bouton "Découvrir le Hors-Série" */
.mcf-reset .wp-block-button__link {
    background-color: #D5956A;     /* terracotta douce */
    color: #ffffff;
    border-radius: 999px;
    padding: 12px 28px;
    font-weight: 600;
}

/* Effet au survol du bouton */
.mcf-reset .wp-block-button__link:hover {
    filter: brightness(0.95);
}

/* Image à droite : pleine largeur de sa colonne,
   avec bords légèrement arrondis */
.mcf-reset img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 24px;
    object-fit: cover;
}

/* Version mobile : colonnes empilées,
   texte centré et marges réduites */
@media (max-width: 781px) {
    .mcf-reset {
        padding: 40px 20px;
        margin: 40px auto;
    }

    .mcf-reset .wp-block-columns {
        gap: 28px;
    }

    .mcf-reset .wp-block-column {
        flex-basis: 100% !important;
    }

    .mcf-reset h2,
    .mcf-reset p,
    .mcf-reset .wp-block-button {
        text-align: left;
    }
}
/* TITRES */
#astra-footer h3 {
  font-size: 18px;
  font-weight: 600;
  color: #24313a;
}

/* LIENS */
#astra-footer a {
  color: #24313a;
  text-decoration: none;
}
#astra-footer a:hover {
  text-decoration: underline;
}

/* TEXTE */
#astra-footer p, 
#astra-footer li {
  font-size: 15px;
  line-height: 1.6;
}

/* LISTES SANS PUCE */
#astra-footer ul {
  padding-left: 0;
  list-style: none;
}

/* LIGNE COPYRIGHT */
.site-below-footer-wrap {
  border-top: 1px solid rgba(0,0,0,0.1);
}
/* ----- Footer : aligner toutes les colonnes en haut ----- */
.site-footer .footer-widget-area {
    display: flex !important;
    align-items: flex-start !important;
}

/* ----- Forcer l’alignement haut des widgets ----- */
.site-footer .footer-widget-area .widget {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
/* --- Alignement vertical parfait dans la ligne 2 du footer Astra --- */
.site-footer .ast-row {
    display: flex !important;
    align-items: flex-start !important; /* Aligne tous les titres en haut */
}

/* Ajuste le logo pour qu’il ne pousse plus vers le bas */
.site-footer .ast-row img {
    margin-top: -10px; /* Ajuste si nécessaire : -5px, -8px, -12px… */
}

/* (Optionnel) Force un léger espace sous les titres pour une ligne propre */
.site-footer .footer-widget-area h2,
.site-footer .footer-widget-area h3,
.site-footer .footer-widget-area h4 {
    margin-bottom: 12px !important;
}
/* ===== MCF – PILIER VERT SAUGE ===== */

.mcf-article {
  --mcf-vert: #8FAE9A;
  --mcf-vert-soft: rgba(143,174,154,0.18);
}

/* H2 avec repère visuel doux */
.mcf-article h2 {
  border-bottom: 3px solid var(--mcf-vert-soft);
  padding-bottom: 6px;
  margin-top: 48px;
}

/* Encadrés verts (À retenir, Astuce, Point clé) */
.mcf-box {
  border-left: 5px solid var(--mcf-vert);
  background: #FAF7F0;
  padding: 20px 24px;
  margin: 32px 0;
  border-radius: 8px;
}

/* Sommaire */
.mcf-sommaire ul {
  padding-left: 18px;
}
.mcf-sommaire a {
  text-decoration-color: var(--mcf-vert);
}

/* Liens dans l’article */
.mcf-article a {
  color: var(--mcf-vert);
}
/* ===== MCF – PILIER BUDGET & ÉPARGNE ===== */

.mcf-pilier-budget{
  --mcf-accent: #D6B27C;              /* beige / doré doux */
  --mcf-accent-soft: rgba(214,178,124,0.18);
}

/* H2 : repère visuel doux */
.mcf-pilier-budget h2{
  border-bottom: 3px solid var(--mcf-accent-soft);
  padding-bottom: 6px;
  margin-top: 48px;
}

/* Encadrés : À retenir / Astuce */
.mcf-pilier-budget .mcf-box{
  border-left: 5px solid var(--mcf-accent);
  background: #FAF7F0;
  padding: 20px 24px;
  margin: 32px 0;
  border-radius: 8px;
}

/* Liens */
.mcf-pilier-budget a{
  color: var(--mcf-accent);
}

/* Sommaire */
.mcf-pilier-budget .mcf-sommaire a{
  text-decoration-color: var(--mcf-accent);
}
/* ===== MCF – PILIER RETRAITE ===== */

.mcf-pilier-retraite{
  --mcf-accent: #C07A6A;              /* terracotta doux / vieux rose */
  --mcf-accent-soft: rgba(192,122,106,0.18);
}

/* H2 : repère visuel doux */
.mcf-pilier-retraite h2{
  border-bottom: 3px solid var(--mcf-accent-soft);
  padding-bottom: 6px;
}

/* Encadrés : À retenir / Astuce */
.mcf-pilier-retraite .mcf-box{
  border-left: 5px solid var(--mcf-accent);
  background: #FAF7F0;
  padding: 20px 24px;
  margin: 32px 0;
  border-radius: 8px;
}

/* Liens */
.mcf-pilier-retraite a{
  color: var(--mcf-accent);
}

/* Sommaire */
.mcf-pilier-retraite .mcf-sommaire a{
  text-decoration-color: var(--mcf-accent);
}
/* ===== FORCER LA COULEUR DES LIENS PAR PILIER ===== */

.mcf-article.mcf-pilier-vert a {
  color: #8FAE9A;
}

.mcf-article.mcf-pilier-beige a {
  color: #c9a66b;
}

.mcf-article.mcf-pilier-rose a {
  color: #c88f86;
}
/* =====================================================
   MCF – BASE ARTICLE (COMMUN À TOUS LES PILIERS)
===================================================== */

.mcf-article {
  --mcf-main: #000;
  --mcf-trait: rgba(0,0,0,0.15);
  --mcf-border: rgba(0,0,0,0.4);
}

/* Titres H2 */
.mcf-article h2 {
  border-bottom: 3px solid var(--mcf-trait);
  padding-bottom: 6px;
  margin-top: 48px;
}

/* Encadrés (À retenir / Point clé / Astuce) */
.mcf-box {
  border-left: 5px solid var(--mcf-border);
  background: #FAF7F0;
  padding: 20px 24px;
  margin: 32px 0;
  border-radius: 8px;
}

/* =====================================================
   MCF – LIENS (FORCÉS, ANTI ASTRA / GUTENBERG)
===================================================== */

.mcf-article a,
.mcf-article a:visited,
.mcf-article a:hover,
.mcf-article a:focus {
  color: var(--mcf-main) !important;
  text-decoration-color: var(--mcf-main) !important;
}

/* Empêche Gutenberg de forcer une autre couleur */
.mcf-article a *,
.mcf-article a:visited * {
  color: inherit !important;
}

/* =====================================================
   SOMMAIRE
===================================================== */

.mcf-sommaire ul {
  padding-left: 18px;
}

.mcf-sommaire a {
  color: var(--mcf-main) !important;
  text-decoration-color: var(--mcf-main) !important;
}

/* =====================================================
   PILIER 1 – IMMOBILIER (VERT SAUGE)
===================================================== */

.mcf-article.mcf-pilier-vert {
  --mcf-main: #8FAE9A;
  --mcf-trait: rgba(143,174,154,0.25);
  --mcf-border: #8FAE9A;
}

/* =====================================================
   PILIER 2 – BUDGET (OR)
===================================================== */

.mcf-article.mcf-pilier-or {
  --mcf-main: #c9a66b;
  --mcf-trait: #E6D3B1;
  --mcf-border: #c8a46a;
}

/* =====================================================
   PILIER 3 – RETRAITE (ROSE POUDRÉ)
===================================================== */

.mcf-article.mcf-pilier-rose {
  --mcf-main: #c88f86;
  --mcf-trait: #E9C7C0;
  --mcf-border: #c88f86;
}
:root{
  --mcf-sage:#87A38F;
  --mcf-beige:#F3EBDD;
  --mcf-ink:#1f2328;
  --mcf-muted:#5f6670;
  --mcf-line:#ece6db;
  --mcf-radius:16px;
}

.mcf-callout{
  background: rgba(243,235,221,.55);
  border:1px solid var(--mcf-line);
  border-left:6px solid var(--mcf-sage);
  border-radius: var(--mcf-radius);
  padding: 18px 18px 16px;
  box-shadow: 0 10px 22px rgba(31,35,40,.04);
}
.mcf-callout .mcf-title{ margin:0 0 10px 0; color: var(--mcf-ink); }
.mcf-callout .mcf-text{ margin:0; color: var(--mcf-ink); line-height:1.65; }

.mcf-contact-photo img{
  border-radius: var(--mcf-radius);
  box-shadow: 0 10px 22px rgba(31,35,40,.06);
  border: 1px solid var(--mcf-line);
}

.mcf-contact .wp-block-jetpack-contact-form input,
.mcf-contact .wp-block-jetpack-contact-form textarea{
  border-radius: 8px !important;
  border-color: rgba(31,35,40,.18) !important;
}

.mcf-contact .wp-block-jetpack-contact-form button{
  background: var(--mcf-sage) !important;
  color: #fff !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  padding: 12px 18px !important;
  border: none !important;
  box-shadow: 0 10px 18px rgba(31,35,40,.08);
}
:root{
  --mcf-sage:#87A38F;
  --mcf-beige:#F3EBDD;
  --mcf-ink:#1f2328;
  --mcf-muted:#5f6670;
  --mcf-line:#ece6db;
  --mcf-radius:16px;
}

/* Encadré vert */
.mcf-callout{
  background: rgba(243,235,221,.55);
  border:1px solid var(--mcf-line);
  border-left:6px solid var(--mcf-sage);
  border-radius: var(--mcf-radius);
  padding: 18px 18px 16px;
  box-shadow: 0 10px 22px rgba(31,35,40,.04);
}
.mcf-callout .mcf-title{ margin:0 0 10px 0; color: var(--mcf-ink); }
.mcf-callout .mcf-text{ margin:0; color: var(--mcf-ink); line-height:1.65; }

/* Image douce */
.mcf-contact-photo img{
  border-radius: var(--mcf-radius);
  box-shadow: 0 10px 22px rgba(31,35,40,.06);
  border: 1px solid var(--mcf-line);
}

/* Jetpack form : inputs */
.mcf-contact .wp-block-jetpack-contact-form label{ color: var(--mcf-ink); }
.mcf-contact .wp-block-jetpack-contact-form input,
.mcf-contact .wp-block-jetpack-contact-form textarea{
  border-radius: 8px !important;
  border-color: rgba(31,35,40,.18) !important;
}

/* Bouton */
.mcf-contact .wp-block-jetpack-contact-form button,
.mcf-contact .wp-block-jetpack-contact-form .wp-block-button__link{
  background: var(--mcf-sage) !important;
  color: #fff !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  padding: 12px 18px !important;
  border: none !important;
  box-shadow: 0 10px 18px rgba(31,35,40,.08);
}
.mcf-callout {
  margin-bottom: 8px !important;
}

.mcf-callout + * {
  margin-top: 0 !important;
}
/* Réduction espace sous encadré contact */
.mcf-callout {
  margin-bottom: 4px !important;
  padding-bottom: 12px !important;
}

/* Supprime marge du premier bloc après l’encadré */
.mcf-callout + * {
  margin-top: 0 !important;
}

/* Sécurité : paragraphes contact plus serrés */
.mcf-contact p {
  margin-top: 8px !important;
}
/* Resserre le haut de la page contact */
.page .wp-block-columns{
  margin-top: 12px;
}

/* Titre formulaire */
.mcf-title{
  margin-top: 0;
}

/* Carte formulaire */
.mcf-form{
  margin-top: 0;
}
/* Page Contact uniquement */
.page-id-1206 .wp-block-columns{
  margin-top: 12px;
}

.page-id-1206 .mcf-title{
  margin-top: 0;
}

.page-id-1206 .mcf-form{
  margin-top: 0;
}
/* CONTACT (page-id-1206) : réduit l'espace au-dessus du contenu */
.page-id-1206 .entry-content{
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Si ton thème ajoute du padding au conteneur principal */
.page-id-1206 .site-main,
.page-id-1206 main{
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Réduit la marge du titre "Contact" */
.page-id-1206 h1,
.page-id-1206 .entry-title{
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}

/* Resserre le premier bloc après le titre */
.page-id-1206 .entry-content > *:first-child{
  margin-top: 0 !important;
}
/* Certains thèmes ajoutent une grande "hauteur mini" au header de page */
.page-id-1206 .page-header,
.page-id-1206 header.entry-header{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  min-height: 0 !important;
}
/* CONTACT : remonte franchement le contenu */
.page-id-1206 .entry-content{
  padding-top: 0 !important;
  margin-top: -100px !important; /* ajuste si besoin */
}

/* Réduit la marge sous le titre Contact */
.page-id-1206 .entry-title,
.page-id-1206 h1{
  margin-bottom: 10px !important;
}
/* CONTACT — réduit l'espace entre le callout et la section suivante */
.page-id-1206 .wp-block-columns:has(.mcf-callout){
  margin-bottom: 12px !important;
  padding-bottom: 0 !important;
}

.page-id-1206 .wp-block-columns:has(.mcf-callout) + .wp-block-columns{
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* CONTACT — remonte la colonne droite (formulaire) pour l'aligner avec le callout */
.page-id-1206 .mcf-form{
  margin-top: -145px !important; /* ajuste : -80 / -100 / -140 selon ton goût */
}
/* CONTACT — espace sous le champ message */
.page-id-1206 .mcf-form textarea{
  margin-bottom: 18px !important;
}

/* Espace sous la ligne de consentement */
.page-id-1206 .mcf-consent{
  margin-top: 10px !important;
  margin-bottom: 18px !important;
}

/* Bouton : respiration verticale */
.page-id-1206 .mcf-form button{
  margin-top: 8px !important;
}
/* CONTACT — espace au-dessus de la note de confidentialité sous le bouton */
.page-id-1206 .mcf-form p:last-child{
  margin-top: 20px !important;
}
/* ✅ Lien doré comme le sommaire (pour l'ancre Archives) */
.mcf-reset a.toc-link,
.mcf-reset a.toc-link:visited{
  color: var(--toc) !important;
  text-decoration: underline !important;
  text-decoration-color: var(--toc) !important;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.mcf-reset a.toc-link:hover{
  text-decoration-thickness: 2px;
}
.mcf-reset .archives-link{ margin: 6px 0 0 0 !important; }
/* Afficher le Header Button Astra en mobile */
@media (max-width: 921px) {
  .ast-header-button-1 {
    display: inline-flex !important;
  }
}
/* MCF — Header figé (Astra) */
.main-header-bar{
  position: sticky;
  top: 0;
  z-index: 9999;
}

/* Evite une “coupure” visuelle : petite ombre au scroll (toujours légère) */
.main-header-bar{
  box-shadow: 0 6px 18px rgba(0,0,0,0.06);
}

/* =========================
   MCF — HEADER FIGÉ (Astra)
   Compatible Astra Free
   ========================= */

/* La(les) barres de header possibles selon config Astra */
.site-header,
.main-header-bar,
.ast-primary-header-bar,
.ast-mobile-header-wrap,
.ast-desktop-header,
.ast-mobile-header {
  position: sticky;
  top: 0;
  z-index: 9999;
}

/* Petite ombre (premium) */
.site-header,
.main-header-bar,
.ast-primary-header-bar {
  box-shadow: 0 6px 18px rgba(0,0,0,0.06);
}

/* Si tu es connectée (barre admin WP), on décale */
body.admin-bar .site-header,
body.admin-bar .main-header-bar,
body.admin-bar .ast-primary-header-bar,
body.admin-bar .ast-mobile-header-wrap,
body.admin-bar .ast-desktop-header,
body.admin-bar .ast-mobile-header {
  top: 32px;
}

@media (max-width: 782px){
  body.admin-bar .site-header,
  body.admin-bar .main-header-bar,
  body.admin-bar .ast-primary-header-bar,
  body.admin-bar .ast-mobile-header-wrap,
  body.admin-bar .ast-desktop-header,
  body.admin-bar .ast-mobile-header {
    top: 46px;
  }
}


