/*
Theme Name: M&C Mandat & Conseil
Theme URI: https://www.mandatetconseil.fr/
Author: Orylis
Author URI: https://orylis.fr/
Description: Thème sur mesure de M&C Mandat & Conseil, reproduisant les maquettes codées par Lucas (18-21/09/2026) : accueil en Manrope (logo carré « M&C », boutons pilule « ↗ », cartes arrondies, navy et or) ; pages Dirigeants et Particuliers dans leur propre langage (Instrument Serif, DM Sans, DM Mono). Chaque section des pages est un bloc « HTML personnalisé » modifiable dans l'éditeur.
Version: 2.0.0
Requires at least: 6.6
Requires PHP: 8.1
License: GNU General Public License v2 or later
Text Domain: mc-mandat
*/

/* ---------- Police de l'accueil de Lucas (Manrope), hébergée sur le site ---------- */
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url('assets/fonts/manrope-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url('assets/fonts/manrope-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ================================================================
   1. Feuille de style de l'accueil de Lucas (index.html du 21/09), reprise telle quelle
   ================================================================ */
html { scroll-behavior: smooth; }
body { margin:0; background:#ffffff; color:#0e2440; font-family:'Manrope', system-ui, sans-serif; font-size:16px; line-height:1.65; -webkit-font-smoothing:antialiased; }
* { box-sizing:border-box; }
a { color:inherit; text-decoration:none; }
h1,h2,h3,h4,p,ul,ol,li,figure,figcaption,dl,dd,dt,blockquote { margin:0; padding:0; }
ul,ol { list-style:none; }
summary { cursor:pointer; list-style:none; }
summary::-webkit-details-marker { display:none; }
input,select,textarea,button { font:inherit; color:inherit; }
::selection { background:#c9a24a; color:#0e2440; }
::-webkit-scrollbar { width:10px; }
::-webkit-scrollbar-track { background:#eef2f7; }
::-webkit-scrollbar-thumb { background:#c3d0de; border-radius:99px; }
::-webkit-scrollbar-thumb:hover { background:#9a7327; }

.wrap { max-width:1280px; margin:0 auto; padding:0 clamp(18px,3.4vw,44px); }
.sect { padding:clamp(64px,8vw,132px) 0; }
.h1 { font-size:clamp(40px,6vw,82px); font-weight:500; line-height:1.03; letter-spacing:-0.035em; text-wrap:balance; }
.h2 { font-size:clamp(30px,4.2vw,58px); font-weight:500; line-height:1.07; letter-spacing:-0.03em; text-wrap:balance; }
.h3 { font-size:clamp(19px,2vw,26px); font-weight:600; line-height:1.2; letter-spacing:-0.018em; }
.lead { font-size:clamp(15px,1.15vw,18px); line-height:1.75; color:rgba(14,36,64,0.62); }
.or { color:#b8862b; }
.pill { display:inline-flex; align-items:center; gap:8px; padding:8px 16px; border-radius:999px; background:#0e2440; color:#fff; font-size:12.5px; font-weight:500; }
.pill-l { display:inline-flex; align-items:center; gap:8px; padding:8px 16px; border-radius:999px; background:rgba(255,255,255,0.14); border:1px solid rgba(255,255,255,0.26); color:#fff; font-size:12.5px; font-weight:500; backdrop-filter:blur(8px); }
.btn { display:inline-flex; align-items:center; gap:12px; padding:7px 7px 7px 24px; border-radius:999px; background:#0e2440; color:#fff; font-size:15px; font-weight:600; transition:background .25s, transform .25s; }
.btn:hover { background:#1b3c63; transform:translateY(-1px); }
.btn span.a { display:flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:999px; background:#c9a24a; color:#0e2440; font-size:15px; flex:none; }
.btn-w { background:#fff; color:#0e2440; }
.btn-w:hover { background:#f2f5f9; }
.btn-w span.a { background:#0e2440; color:#fff; }
.btn-o { display:inline-flex; align-items:center; gap:10px; padding:14px 26px; border-radius:999px; border:1px solid rgba(255,255,255,0.35); color:#fff; font-size:15px; font-weight:500; transition:background .25s,color .25s; }
.btn-o:hover { background:#fff; color:#0e2440; }
.tag { display:inline-flex; padding:7px 15px; border-radius:999px; background:rgba(14,36,64,0.06); font-size:12.5px; font-weight:500; color:rgba(14,36,64,0.72); }
.ico { display:flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:999px; background:#fff; border:1px solid rgba(14,36,64,0.1); font-size:17px; }
.grid { display:grid; gap:clamp(14px,1.6vw,22px); }
.g2 { grid-template-columns:repeat(2,1fr); }
.g3 { grid-template-columns:repeat(3,1fr); }
.g4 { grid-template-columns:repeat(4,1fr); }
.split { display:grid; grid-template-columns:1fr 1fr; gap:clamp(24px,3.4vw,56px); align-items:center; }
.media { position:relative; border-radius:22px; overflow:hidden; background:#e4edf6; }
.acc { border-radius:18px; background:#f6f8fb; overflow:hidden; transition:background .3s; }
.acc[open] { background:#eef3f9; }
.acc + .acc { margin-top:10px; }
.acc summary { display:flex; align-items:center; gap:18px; padding:20px clamp(18px,2vw,26px); }
.acc summary .n { font-size:14px; font-weight:600; color:rgba(14,36,64,0.35); flex:none; }
.acc summary .t { flex:1; font-size:clamp(16px,1.5vw,20px); font-weight:600; letter-spacing:-0.015em; }
.acc summary .c { flex:none; width:26px; height:26px; border-radius:999px; border:1px solid rgba(14,36,64,0.18); display:flex; align-items:center; justify-content:center; font-size:11px; transition:transform .3s, background .3s; }
.acc[open] summary .c { transform:rotate(180deg); background:#c9a24a; border-color:#c9a24a; }
.acc p { padding:0 clamp(18px,2vw,26px) 22px calc(clamp(18px,2vw,26px) + 32px); font-size:15px; line-height:1.75; color:rgba(14,36,64,0.62); }
.stack-card { position:sticky; background:#fff; border-radius:26px; padding:clamp(16px,1.6vw,22px); box-shadow:0 -18px 50px rgba(14,36,64,0.10), 0 2px 8px rgba(14,36,64,0.04); }
.stack-card + .stack-card { margin-top:clamp(28px,4vw,70px); }
@media (max-width:760px) { .stack-card { position:static; box-shadow:0 2px 14px rgba(14,36,64,0.06); } }
.chk { display:flex; align-items:flex-start; gap:12px; font-size:15px; font-weight:500; }
.chk b { color:#b8862b; font-weight:700; flex:none; }
@media (max-width:1000px) { .g4 { grid-template-columns:repeat(2,1fr); } .g3 { grid-template-columns:repeat(2,1fr); } }
@media (max-width:760px) { .g2,.g3,.g4,.split { grid-template-columns:1fr; } }
@media (max-width:1180px) { #mc-head nav a.nv, #mc-bar nav a.nv, #mc-head nav .mc-dd, #mc-bar nav .mc-dd { display:none; } } /* 10/10 : 7 liens (menu GeoFirst) → burger seul sous 1180 px */
#mc-bar a, #mc-head a { white-space:nowrap; }
@media (min-width:1181px) and (max-width:1360px) { #mc-bar nav, #mc-head nav { gap:15px !important; } #mc-bar nav a.nv, #mc-head nav a.nv { font-size:13.5px !important; } }

/* ================================================================
   2. Équivalents des composants de la maquette
   ================================================================ */
/* <image-slot> de l'outil de maquette : même boîte (bloc, 100 %, ratio 3/2 par défaut), photo en « cover » */
.islot { display:block; position:relative; width:100%; height:100%; aspect-ratio:3/2; overflow:hidden; }
.islot > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.mc-img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.mc-skip { position:fixed; left:12px; top:-80px; z-index:9999; background:#fff; color:#0e2440; padding:10px 14px; border-radius:999px; }
.mc-skip:focus { top:12px; }
a:focus-visible, summary:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline:3px solid #c9a24a; outline-offset:2px; }
.mc-progress { position:fixed; top:0; left:0; height:2px; width:0; background:#c9a24a; z-index:90; transition:width .12s linear; pointer-events:none; }

/* ---------- Menu mobile (ajout : la maquette masquait la navigation sous 880 px sans la remplacer) ---------- */
.mc-menu { display:none; }
.mc-menu > summary { display:flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:999px; background:rgba(255,255,255,0.14); border:1px solid rgba(255,255,255,0.28); color:#fff; }
#mc-bar .mc-menu-accueil > summary { background:#0e2440; border-color:#0e2440; }
.mc-menu-serif > summary { width:44px; height:44px; border-radius:0; background:transparent; border:1px solid rgba(255,255,255,0.34); }
.mc-menu > summary span, .mc-menu > summary span::before, .mc-menu > summary span::after { display:block; width:18px; height:1.6px; border-radius:2px; background:currentColor; position:relative; transition:transform .3s, background .3s; }
.mc-menu > summary span::before, .mc-menu > summary span::after { content:""; position:absolute; left:0; }
.mc-menu > summary span::before { top:-6px; } .mc-menu > summary span::after { top:6px; }
.mc-menu[open] > summary span { background:transparent; }
.mc-menu[open] > summary span::before { transform:translateY(6px) rotate(45deg); }
.mc-menu[open] > summary span::after { transform:translateY(-6px) rotate(-45deg); }
.mc-drawer { position:fixed; left:12px; right:12px; top:84px; max-height:calc(100svh - 96px); overflow:auto; z-index:100; background:#0e2440; color:#fff; border-radius:26px; padding:14px 22px 24px; box-shadow:0 24px 60px rgba(0,0,0,0.3); text-align:left; }
.mc-drawer ul li { border-bottom:1px solid rgba(255,255,255,0.1); }
.mc-drawer ul a { display:flex !important; justify-content:space-between; align-items:center; padding:14px 2px; font-size:17px; font-weight:600; letter-spacing:-0.015em; color:#fff; }
.mc-drawer ul a::after { content:"↗"; font-size:13px; color:#e8c887; }
.mc-drawer .btn { margin-top:20px; display:inline-flex !important; }
.mc-menu-serif .mc-drawer { border-radius:0; border-top:2px solid #c9a24a; font-family:'DM Sans', system-ui, sans-serif; }
.mc-menu-serif .mc-drawer ul a { font-weight:400; font-size:16px; letter-spacing:0; }
.mc-menu-serif .mc-drawer ul a::after { content:"→"; font-family:'DM Mono', monospace; color:#e3c27f; }
.mc-drawer-cta { margin-top:20px; display:inline-flex !important; align-items:center; gap:10px; padding:15px 26px; background:#c9a24a; color:#0e2440 !important; font-size:14px; font-weight:500; }
@media (max-width:1180px) { .mc-menu { display:block; } #mc-head nav, #mc-bar nav { gap:10px !important; } }
@media (max-width:560px) {
  .mc-v-accueil #mc-head nav > .btn, .mc-v-accueil #mc-bar nav > .btn { display:none; }
  .mc-v-serif #mc-head nav > a:last-of-type, .mc-v-serif #mc-bar nav > a:last-of-type { display:none !important; }
}

/* ================================================================
   3. Pages déclinées dans le langage de l'accueil (composants Orylis, 28/09)
   ================================================================ */
#top { overflow-x:clip; }
.or-d { color:#e8c887; }
.mc-center { text-align:center; }
.mc-head { margin-bottom:clamp(30px,3.6vw,52px); }
.mc-head .pill, .mc-head .pill-l { margin-bottom:20px; }
.mc-head .h2 { max-width:22ch; margin-bottom:18px; }
.mc-head .h2:last-child { margin-bottom:0; }
.mc-head.mc-center .h2 { margin-left:auto; margin-right:auto; }
.mc-head .lead { max-width:58ch; }
.mc-head.mc-center .lead { margin-left:auto; margin-right:auto; }
.sect-alt { background:#f6f8fb; }
.sect-d { background:#0e2440; color:#fff; }
.sect-d .lead { color:rgba(255,255,255,0.72); }
.sect-g { background:#c9a24a; color:#0e2440; }
.mc-ctas { display:flex; flex-wrap:wrap; gap:14px; align-items:center; }
.mc-more { margin-top:clamp(26px,3vw,40px); }
.mc-more.mc-center .btn { margin:0 auto; }
.btn-o-l { border-color:rgba(14,36,64,0.22); color:#0e2440; }
.btn-o-l:hover { background:#0e2440; color:#fff; border-color:#0e2440; }
.mc-prose { margin:0 auto; display:flex; flex-direction:column; gap:18px; }
.split .mc-prose { margin:0; }
.kicker { display:block; font-size:12.5px; font-weight:600; color:#b8862b; margin-bottom:14px; }
.sect-d .kicker, .card-dl .kicker, .fee-d .kicker { color:#e8c887; }
.note { margin-top:20px; font-size:13px; color:rgba(14,36,64,0.45); }
.sect-d .note { color:rgba(255,255,255,0.45); }
.note-l { margin-top:22px; font-size:14.5px; line-height:1.7; color:rgba(14,36,64,0.55); max-width:80ch; }
.sect-d .note-l { color:rgba(255,255,255,0.6); }
.num { font-size:clamp(26px,2.6vw,34px); font-weight:700; letter-spacing:-0.03em; line-height:1.1; }
.media > .mc-img { filter:saturate(0.9); }

/* cartes (« le troisième chemin » de Lucas) */
.card { border-radius:22px; padding:clamp(24px,2.6vw,34px); background:#f6f8fb; display:flex; flex-direction:column; }
.sect-alt .card { background:#fff; }
.card .ico { margin-bottom:20px; }
.card .h3 { margin-bottom:12px; }
.card p { font-size:15px; line-height:1.7; color:rgba(14,36,64,0.62); }
.card-dl, .sect-alt .card-dl { background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); }
.card-dl p { color:rgba(255,255,255,0.62); }
.card-g, .sect-alt .card-g { background:#c9a24a; color:#0e2440; }
.card-g p { color:rgba(14,36,64,0.78); }
.ico-d { background:rgba(255,255,255,0.08); border-color:rgba(255,255,255,0.16); color:#e8c887; }
.ico-g { background:rgba(14,36,64,0.12); border-color:rgba(14,36,64,0.18); }
.ico-n { font-size:14px; font-weight:700; letter-spacing:-0.01em; }
.card-more { margin-top:auto; padding-top:14px; display:inline-flex; align-items:center; gap:8px; font-size:14px; font-weight:600; color:#b8862b; }
.card-more i { font-style:normal; }
.card.lists .h3 { margin-bottom:18px; }
.card.lists ul { display:flex; flex-direction:column; gap:14px; }
.card.lists .chk { font-weight:500; line-height:1.6; }
.card-dl.lists .chk b { color:#e8c887; }
.chk-l { color:#b8862b; }
.chk-t { font-weight:400; color:rgba(14,36,64,0.72); }
/* cartes blanches posées sur une section navy */
.stack-card { color:#0e2440; }
.sect-d .stack-card .lead { color:rgba(14,36,64,0.62); }
.sect-d .stack-card .kicker { color:#b8862b; }
.sect-d .stack + .note { color:rgba(255,255,255,0.45); }
.case ul { display:flex; flex-direction:column; gap:11px; margin-top:16px; }
.case .chk { font-weight:400; font-size:14.5px; color:rgba(14,36,64,0.72); }
.case .num { margin-bottom:6px; }
.card.dl p { color:#0e2440; }

/* étapes */
.step { border-radius:22px; padding:clamp(22px,2.4vw,30px); background:#f6f8fb; display:flex; flex-direction:column; gap:10px; }
.sect-alt .step { background:#fff; }
.step-n { font-size:12.5px; font-weight:600; color:#b8862b; }
.step p { font-size:15px; line-height:1.7; color:rgba(14,36,64,0.62); }
.step-d { background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); }
.step-d .step-n { color:#e8c887; }
.step-d p { color:rgba(255,255,255,0.65); }

/* honoraires (cartes de Lucas) */
.fee { border-radius:22px; padding:clamp(22px,2.2vw,30px); background:#f6f8fb; }
.sect-alt .fee { background:#fff; }
.fee .kicker { margin-bottom:16px; }
.fee-m { font-size:clamp(26px,2.6vw,34px); font-weight:700; letter-spacing:-0.03em; margin-bottom:6px; }
.fee-u { font-size:13.5px; color:rgba(14,36,64,0.5); margin-bottom:16px; }
.fee p { font-size:14.5px; line-height:1.65; color:rgba(14,36,64,0.62); }
.fee-d, .sect-alt .fee-d { background:#0e2440; color:#fff; }
.fee-d .fee-u { color:rgba(255,255,255,0.5); }
.fee-d p { color:rgba(255,255,255,0.7); }

/* listes de liens (situations) */
.mc-rows li { border-top:1px solid rgba(14,36,64,0.1); }
.mc-rows li:last-child { border-bottom:1px solid rgba(14,36,64,0.1); }
.mc-rows a { display:grid; grid-template-columns:minmax(0,170px) minmax(0,1.2fr) minmax(0,1fr) 38px; gap:clamp(10px,2vw,32px); align-items:center; padding:clamp(16px,1.8vw,22px) 4px; transition:color .2s; }
.mc-rows .kicker { margin:0; }
.mc-rows .rl-t { font-size:clamp(17px,1.5vw,20px); font-weight:600; letter-spacing:-0.015em; line-height:1.3; }
.mc-rows .rl-d { font-size:14.5px; line-height:1.6; color:rgba(14,36,64,0.6); }
.mc-rows i { font-style:normal; display:flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:999px; border:1px solid rgba(14,36,64,0.16); font-size:14px; transition:background .2s, border-color .2s; }
.mc-rows a:hover .rl-t { color:#b8862b; }
.mc-rows a:hover i { background:#c9a24a; border-color:#c9a24a; }
.mc-rows-d li { border-color:rgba(255,255,255,0.12) !important; }
.mc-rows-d .rl-d { color:rgba(255,255,255,0.62); }
.mc-rows-d i { border-color:rgba(255,255,255,0.3); }
@media (max-width:760px) { .mc-rows a { grid-template-columns:1fr 38px; } .mc-rows .kicker, .mc-rows .rl-t, .mc-rows .rl-d { grid-column:1; } .mc-rows i { grid-column:2; grid-row:1 / span 3; } }

/* blocs de la méthode */
.blocs { grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr)); }
.bloc { border-radius:18px; background:#fff; padding:20px 18px; }
.bloc-n { display:block; font-size:12.5px; font-weight:600; color:#b8862b; }
.bloc-t { display:block; margin-top:6px; font-size:19px; font-weight:600; letter-spacing:-0.015em; }

/* citations */
.mc-band { padding-top:clamp(40px,5vw,72px); padding-bottom:clamp(40px,5vw,72px); }
.mc-quote { border-radius:26px; overflow:hidden; position:relative; background:#0e2440; color:#fff; min-height:300px; display:flex; align-items:center; }
.mc-quote .mc-img { filter:saturate(0.85); }
.mc-quote::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(14,36,64,0.92) 0%, rgba(14,36,64,0.72) 55%, rgba(14,36,64,0.35) 100%); }
.mc-quote > div { position:relative; z-index:1; padding:clamp(28px,4vw,64px); max-width:780px; }
.mc-quote .pill-l { margin-bottom:18px; }
.mc-quote p { font-size:clamp(21px,2.4vw,32px); font-weight:500; line-height:1.3; letter-spacing:-0.02em; text-wrap:balance; }
.mc-quote small { display:block; margin-top:16px; font-size:13.5px; font-weight:500; color:#e8c887; }
.mc-bq { border-radius:22px; background:#f6f8fb; padding:clamp(22px,2.6vw,34px); max-width:900px; }
.sect-alt .mc-bq { background:#fff; }
.mc-bq p { font-size:clamp(18px,1.8vw,24px); font-weight:500; line-height:1.4; letter-spacing:-0.015em; }
.mc-bq small { display:block; margin-top:12px; font-size:13.5px; font-weight:600; color:#b8862b; }
.mc-bq-d, .sect-d .mc-bq { background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); }
.mc-bq-d small, .sect-d .mc-bq small { color:#e8c887; }
.acc-d { background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); }
.acc-d[open] { background:rgba(255,255,255,0.08); }
.acc-d p { color:rgba(255,255,255,0.72); }
.mc-faq .acc p { padding-left:clamp(18px,2vw,26px); }
.mc-faq { max-width:980px; margin:0 auto; }

/* héros des pages (celui de l'accueil de Lucas, moins haut) */
.mc-hero { position:relative; min-height:clamp(560px,82vh,860px); display:flex; flex-direction:column; background:#0e2440; overflow:hidden; }
.mc-hero-full { min-height:100vh; min-height:100svh; }
.mc-hero-s { min-height:clamp(460px,62vh,640px); }
.mc-hero-bg { position:absolute; inset:0; }
.mc-hero-veil { position:absolute; inset:0; background:linear-gradient(180deg, rgba(14,36,64,0.72) 0%, rgba(14,36,64,0.45) 38%, rgba(14,36,64,0.88) 100%); pointer-events:none; }
.mc-hero-in { position:relative; flex:1; display:flex; align-items:flex-end; padding:clamp(48px,7vw,90px) 0 clamp(34px,4vw,56px); }
.mc-hero-in .wrap { width:100%; }
.mc-hero .pill-l { margin-bottom:clamp(20px,2.4vw,28px); }
.mc-hero .h1 { color:#fff; max-width:16ch; margin-bottom:clamp(20px,2.2vw,26px); }
.mc-hero .h1 span { color:#e8c887; }
.mc-hero .h1.mc-long { max-width:19ch; font-size:clamp(38px,5.2vw,72px); }
.mc-hero .lead { color:rgba(255,255,255,0.8); max-width:52ch; margin-bottom:clamp(26px,3vw,38px); }

/* bloc final « Premier échange » de Lucas + formulaire */
.mc-cta { position:relative; padding:clamp(80px,10vw,150px) 0; background:#0e2440; overflow:hidden; color:#fff; }
.mc-cta-bg { position:absolute; inset:0; }
.mc-cta-veil { position:absolute; inset:0; background:linear-gradient(180deg, rgba(14,36,64,0.82) 0%, rgba(14,36,64,0.72) 50%, rgba(14,36,64,0.9) 100%); }
.mc-cta .wrap { position:relative; }
.mc-cta-c { text-align:center; }
.mc-cta .pill-l { margin-bottom:22px; }
.mc-cta .h2 { max-width:34ch; margin:0 auto 20px; }
.mc-cta .lead { color:rgba(255,255,255,0.78); max-width:52ch; margin:0 auto clamp(28px,3vw,40px); }
.mc-cta-c .mc-ctas { justify-content:center; margin-bottom:clamp(34px,4vw,52px); }
.mc-cta-info { display:flex; flex-wrap:wrap; gap:clamp(20px,3vw,56px); justify-content:center; font-size:14.5px; color:rgba(255,255,255,0.68); }
.mc-cta-info a:hover { color:#fff; }
.mc-form-card { background:#fff; color:#0e2440; border-radius:26px; padding:clamp(22px,2.6vw,36px); box-shadow:0 30px 80px rgba(0,0,0,0.25); text-align:left; max-width:760px; margin:clamp(40px,5vw,64px) auto 0; }
.mc-form-card > .kicker { margin-bottom:6px; }
.mc-form-card > .h3 { margin-bottom:18px; }

/* Contact Form 7 — formulaire « Premier échange » dans le style de l'accueil */
.mc-form .wpcf7 form { display:flex; flex-direction:column; gap:14px; }
.mc-form .wpcf7 form > p { margin:0; }
.mc-f-row { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr)); gap:14px; }
.mc-form .wpcf7 label { display:flex; flex-direction:column; gap:7px; font-size:13px; font-weight:600; color:#0e2440; }
.wpcf7 .wpcf7-form-control-wrap { display:block; }
.mc-form .wpcf7 input[type=text], .mc-form .wpcf7 input[type=email], .mc-form .wpcf7 input[type=tel], .mc-form .wpcf7 select, .mc-form .wpcf7 textarea { width:100%; padding:14px 16px; border-radius:14px; border:1px solid rgba(14,36,64,0.14); background:#f6f8fb; font-size:15px; font-weight:500; color:#0e2440; transition:border-color .2s, background .2s; }
.mc-form .wpcf7 textarea { min-height:120px; height:130px; resize:vertical; }
.mc-form .wpcf7 input:focus, .mc-form .wpcf7 select:focus, .mc-form .wpcf7 textarea:focus { background:#fff; border-color:#c9a24a; outline:none; box-shadow:0 0 0 3px rgba(201,162,74,0.25); }
.mc-form .wpcf7 .wpcf7-submit { align-self:flex-start; appearance:none; -webkit-appearance:none; border:0; cursor:pointer; height:52px; padding:7px 60px 7px 24px; border-radius:999px; background:#0e2440 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='38' height='38' viewBox='0 0 38 38'%3E%3Ccircle cx='19' cy='19' r='19' fill='%23c9a24a'/%3E%3Cpath d='M15 23l8-8M16.5 15H23v6.5' fill='none' stroke='%230e2440' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 7px center / 38px 38px; color:#fff; font-size:15px; font-weight:600; transition:background-color .25s, transform .25s; }
.mc-form .wpcf7 .wpcf7-submit:hover { background-color:#1b3c63; transform:translateY(-1px); }
.mc-form .wpcf7 .mc-f-note { font-size:12.5px; line-height:1.6; color:rgba(14,36,64,0.55); }
.wpcf7 .wpcf7-spinner { margin:0 0 0 12px; }
.wpcf7 .wpcf7-not-valid-tip { font-size:12.5px; font-weight:500; color:#b3261e; margin-top:4px; }
.wpcf7 form .wpcf7-response-output { margin:4px 0 0; padding:12px 16px; border-radius:14px; font-size:14px; }

/* Contact Form 7 — formulaires de Dirigeants / Particuliers (balisage de Lucas, champs aux mêmes réglages) */
.lf-wrap > .wpcf7 { width:100%; }
.wpcf7 .hidden-fields-container { display:none; }
.lf-form { display:flex; flex-direction:column; }
.lf-form.lf-p { gap:14px; }
.lf-form.lf-c { gap:16px; }
.lf-in { width:100%; padding:13px 14px; border:1px solid rgba(14,36,64,0.18); border-radius:0; background:#f4f8fc; font-size:14.5px; outline:none; color:#0e2440; }
.lf-in-p { border-color:rgba(14,36,64,0.28); background:rgba(255,255,255,0.6); }
textarea.lf-in { resize:vertical; }
select.lf-in { appearance:auto; }
.lf-accept .wpcf7-list-item { margin:0; }
.lf-accept label { display:flex; gap:10px; align-items:flex-start; cursor:pointer; }
.lf-accept input { margin-top:4px; flex:none; }
.lf-form .wpcf7-response-output { border-radius:0 !important; font-family:'DM Sans', system-ui, sans-serif; }

/* ---------- Journal, articles ---------- */
.mc-posts { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr)); gap:clamp(14px,1.6vw,22px); }
.mc-post { display:flex; flex-direction:column; gap:10px; border-radius:22px; background:#f6f8fb; padding:clamp(22px,2.4vw,32px); transition:background .25s, transform .25s; }
.mc-post:hover { background:#eef3f9; transform:translateY(-2px); }
.mc-post .kicker { margin-bottom:0; }
.mc-post p { font-size:15px; line-height:1.7; color:rgba(14,36,64,0.62); }
.mc-post .btn { align-self:flex-start; margin-top:auto; }
.mc-article { max-width:760px; margin:0 auto; font-size:17px; line-height:1.8; color:rgba(14,36,64,0.8); }
.mc-article > * + * { margin-top:1.1em; }
.mc-article h2 { font-size:clamp(24px,2.6vw,34px); font-weight:500; letter-spacing:-0.03em; line-height:1.15; color:#0e2440; margin-top:1.8em; }
.mc-article h3 { font-size:clamp(19px,2vw,24px); font-weight:600; letter-spacing:-0.018em; color:#0e2440; margin-top:1.5em; }
.mc-article ul { list-style:disc; padding-left:1.2em; } .mc-article ol { list-style:decimal; padding-left:1.2em; }
.mc-article a { color:#b8862b; text-decoration:underline; }
.mc-article img { max-width:100%; height:auto; border-radius:22px; }
.mc-pagination { margin-top:40px; display:flex; gap:10px; }
.mc-pagination .page-numbers { display:inline-flex; min-width:44px; height:44px; align-items:center; justify-content:center; border-radius:999px; background:#f6f8fb; font-weight:600; padding:0 14px; }
.mc-pagination .current { background:#0e2440; color:#fff; }
.mc-foot-l a:hover { color:#0e2440; }
.screen-reader-text { position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(1px,1px,1px,1px); }
@media print { #mc-bar, .mc-progress, .mc-menu { display:none !important; } [data-reveal] { opacity:1 !important; transform:none !important; } }

/* ---------- 10/10/2026 : cahier SEO GeoFirst ---------- */
/* « Le cabinet » : sous-menu au survol et au clavier */
.mc-dd { position:relative; display:inline-flex; align-items:center; }
.mc-dd > a.nv::after { content:"▾"; font-size:10px; margin-left:5px; opacity:.7; }
.mc-dd-m { display:none; position:absolute; top:100%; left:-16px; z-index:95; min-width:220px; padding:10px; margin-top:0; background:#fff; border-radius:16px; box-shadow:0 18px 50px rgba(14,36,64,0.18); flex-direction:column; }
.mc-dd-m::before { content:""; position:absolute; left:0; right:0; top:-14px; height:14px; }
.mc-dd:hover .mc-dd-m, .mc-dd:focus-within .mc-dd-m { display:flex; }
.mc-dd-m a { display:block; padding:9px 14px; border-radius:10px; font-size:14.5px; font-weight:500; color:#0e2440 !important; white-space:nowrap; }
.mc-dd-m a:hover, .mc-dd-m a:focus { background:#f6f8fb; }
/* Fil d'Ariane (Rank Math) sous le héros */
.mc-ariane { background:#fff; border-bottom:1px solid rgba(14,36,64,0.07); font-size:13px; line-height:1.5; color:rgba(14,36,64,0.55); }
.mc-ariane .wrap { padding-top:12px; padding-bottom:12px; }
.mc-ariane p { margin:0; overflow-wrap:anywhere; }
.mc-ariane a { color:rgba(14,36,64,0.7); text-decoration:underline; text-decoration-color:rgba(14,36,64,0.2); text-underline-offset:3px; }
.mc-ariane .separator { margin:0 6px; color:rgba(14,36,64,0.35); }
.mc-ariane .last { color:#0e2440; font-weight:500; }
/* Bloc réponse (40-60 mots juste sous le H1) */
.mc-reponse-s { padding:clamp(26px,3.4vw,44px) 0 0; background:#fff; }
.mc-reponse { max-width:860px; margin:0 auto; padding:clamp(20px,2.4vw,28px) clamp(22px,2.8vw,34px); border-radius:22px; background:#f6f8fb; border-left:4px solid #c9a24a; }
.mc-reponse p { margin:0; font-size:clamp(16px,1.35vw,18px); line-height:1.7; color:#0e2440; }
/* Textes longs fournis par GeoFirst (nouvelles pages, Dirigeants) */
.mc-prose { max-width:780px; margin:0 auto; }
.mc-prose h2 { font-size:clamp(24px,2.4vw,32px); line-height:1.2; letter-spacing:-0.02em; margin:clamp(34px,4vw,52px) 0 16px; color:#0e2440; }
.mc-prose h2:first-child { margin-top:0; }
.mc-prose h3 { font-size:clamp(18px,1.6vw,21px); line-height:1.3; margin:28px 0 10px; color:#0e2440; }
.mc-prose p, .mc-prose li { font-size:16.5px; line-height:1.75; color:rgba(14,36,64,0.78); }
.mc-prose p { margin:0 0 16px; }
.mc-prose ul, .mc-prose ol { margin:0 0 18px; padding-left:1.3em; display:flex; flex-direction:column; gap:8px; }
.mc-prose ul { list-style:disc; } .mc-prose ol { list-style:decimal; }
.mc-prose a { color:#0e2440; font-weight:600; text-decoration:underline; text-decoration-color:#c9a24a; text-underline-offset:3px; }
.mc-prose table { width:100%; border-collapse:collapse; margin:10px 0 22px; font-size:15px; }
.mc-prose .wp-block-table { overflow-x:auto; margin:0; }
.mc-prose th, .mc-prose td { border:1px solid rgba(14,36,64,0.12); padding:11px 13px; text-align:left; vertical-align:top; line-height:1.55; color:rgba(14,36,64,0.8); }
.mc-prose th { background:#f6f8fb; color:#0e2440; font-weight:600; }
/* Section « Recouvrement amiable de vos créances » de l'accueil */
.mc5-reco .mc-prose p { font-size:16.5px; }
.mc5-reco .mc5-links { justify-content:center; }
/* Articles : sommaire, encadré « Besoin d'aide ? », auteur et dates */
.mc-art-meta { display:flex; flex-wrap:wrap; gap:6px 18px; align-items:center; font-size:14px; color:rgba(14,36,64,0.6); margin:0 0 26px; }
.mc-art-meta b { color:#0e2440; }
.mc-toc { margin:0 0 30px; padding:18px 22px; border-radius:18px; background:#f6f8fb; }
.mc-toc p { margin:0 0 8px; font-weight:600; color:#0e2440; }
.mc-toc ol { margin:0; padding-left:1.2em; list-style:decimal; display:flex; flex-direction:column; gap:6px; font-size:15px; }
.mc-toc a { color:#0e2440; text-decoration:underline; text-decoration-color:rgba(14,36,64,0.2); }
.mc-art-credit { margin:30px 0 0 !important; font-size:12.5px !important; color:rgba(14,36,64,0.5) !important; }
.mc-art-credit a { color:inherit; text-decoration:underline; text-underline-offset:2px; }
.mc-aide { margin:34px 0 0; padding:24px 26px; border-radius:20px; background:#0e2440; color:#fff; }
.mc-aide p { color:rgba(255,255,255,0.85) !important; margin:0 0 14px; }
.mc-aide .mc-aide-t { font-size:20px; font-weight:700; color:#fff !important; }
.mc-aide a.btn { background:#fff; color:#0e2440; }
.mc-art-auteur { display:flex; gap:16px; align-items:center; margin:34px 0 0; padding-top:24px; border-top:1px solid rgba(14,36,64,0.1); }
.mc-art-auteur img { width:64px; height:64px; border-radius:50%; object-fit:cover; }
.mc-art-auteur p { margin:0; font-size:14.5px; line-height:1.6; color:rgba(14,36,64,0.7); }
.mc-hx.is-light #mc-head > nav > .mc-dd > a.nv { color:rgba(14,36,64,0.72) !important; }
.mc-hx.is-light #mc-head > nav > .mc-dd > a.nv:hover { color:#0e2440 !important; }
