/* MCN v15 : ecole enregistree, moteur a deux univers, autour de mon ecole.
   Toutes les couleurs de texte sont posees explicitement : une regle descendante de
   section ne doit jamais pouvoir rendre un titre invisible. */
.mcn-echip{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:#1b2a21;background:#fff;border:1px solid var(--mcn-line,#e3e1d8);border-radius:999px;padding:3px 4px 3px 10px;line-height:1.5;max-width:min(46vw,300px)}
.mcn-echip a{color:#1b2a21;text-decoration:none;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mcn-echip a:hover{text-decoration:underline}
.mcn-echip__ed{border:0;background:var(--mcn-green-l,#e8f3ec);color:var(--mcn-green-d,#1f5c39);font:inherit;font-size:.72rem;border-radius:999px;padding:2px 9px;cursor:pointer}
.mcn-echip__ed:hover{background:#d6ebde}
.mcn-echip--empty{border:1px dashed var(--mcn-green,#2e7d4f);background:#fff;color:var(--mcn-green-d,#1f5c39);font:inherit;font-size:.78rem;font-weight:600;padding:4px 12px;cursor:pointer;border-radius:999px}
.mcn-echip--empty:hover{background:var(--mcn-green-l,#e8f3ec)}

/* ---- modale d'enregistrement ---- */
.mcn-emod{position:fixed;inset:0;z-index:9999;background:rgba(27,42,33,.55);display:none;align-items:flex-start;justify-content:center;padding:6vh 16px}
.mcn-emod.open{display:flex}
.mcn-emod__box{background:#fff;color:#1b2a21;border-radius:var(--mcn-radius,16px);max-width:520px;width:100%;padding:26px 24px 18px;position:relative;box-shadow:0 20px 60px rgba(27,42,33,.3);max-height:86vh;overflow:auto}
.mcn-emod__x{position:absolute;top:10px;right:12px;border:0;background:none;font-size:1.7rem;line-height:1;color:#5c6b61;cursor:pointer}
.mcn-emod__box h2{margin:0 0 6px;font-size:1.25rem;color:#1b2a21}
.mcn-emod__sub{margin:0 0 16px;color:#5c6b61;font-size:.88rem;line-height:1.5}
.mcn-emod__lab{display:block;font-size:.8rem;font-weight:700;color:#1b2a21;margin-bottom:5px}
.mcn-emod__in{width:100%;padding:11px 13px;border:1px solid var(--mcn-line,#e3e1d8);border-radius:10px;font:inherit;color:#1b2a21;background:#fff}
.mcn-emod__in:focus{outline:2px solid var(--mcn-green,#2e7d4f);outline-offset:1px}
.mcn-emod__list{margin-top:12px;display:flex;flex-direction:column;gap:5px}
.mcn-emod__hint{margin:6px 0;color:#5c6b61;font-size:.82rem}
.mcn-emod__it{display:block;width:100%;text-align:left;border:1px solid var(--mcn-line,#e3e1d8);background:#fff;border-radius:10px;padding:9px 12px;cursor:pointer;font:inherit;color:#1b2a21}
.mcn-emod__it:hover{border-color:var(--mcn-green,#2e7d4f);background:var(--mcn-green-l,#e8f3ec)}
.mcn-emod__it strong{display:block;font-size:.9rem;color:#1b2a21}
.mcn-emod__it span{display:block;font-size:.76rem;color:#5c6b61;margin-top:2px}
.mcn-emod__it--alt{border-color:var(--mcn-amber,#c2872e);background:#fdf6ea}
.mcn-emod__typ{font-style:normal;font-size:.68rem;font-weight:700;padding:1px 6px;border-radius:4px;margin-right:4px;color:#fff}
.mcn-emod__typ--e{background:#2e7d4f}.mcn-emod__typ--c{background:#0e7c9d}.mcn-emod__typ--l{background:#7E4A86}
.mcn-emod__back{border:0;background:none;color:var(--mcn-green-d,#1f5c39);font:inherit;font-size:.82rem;cursor:pointer;padding:8px 0;text-align:left}
.mcn-emod__note{margin:14px 0 0;font-size:.72rem;color:#5c6b61}

/* ---- moteur ---- */
.mcn-mo{color:#1b2a21}
.mcn-mo__load{color:#5c6b61;padding:30px 0;text-align:center}
.mcn-mo__q{font-size:1.5rem;margin:0 0 18px;color:#1b2a21}
.mcn-mo__choice{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.mcn-mo__pt{display:block;text-align:left;background:#fff;border:2px solid var(--mcn-line,#e3e1d8);border-radius:var(--mcn-radius,16px);padding:22px 20px;cursor:pointer;font:inherit;color:#1b2a21;transition:border-color .15s,transform .15s}
.mcn-mo__pt:hover{border-color:var(--mcn-green,#2e7d4f);transform:translateY(-2px)}
.mcn-mo__pt-i{font-size:2rem;display:block;margin-bottom:8px}
.mcn-mo__pt strong{display:block;font-size:1.12rem;margin-bottom:5px;color:#1b2a21}
.mcn-mo__pt span{display:block;font-size:.85rem;color:#5c6b61;line-height:1.45}
.mcn-mo__pt em{display:inline-block;margin-top:10px;font-style:normal;font-size:.76rem;font-weight:700;color:var(--mcn-green-d,#1f5c39);background:var(--mcn-green-l,#e8f3ec);padding:3px 10px;border-radius:999px}
.mcn-mo__note{margin-top:14px;font-size:.8rem;color:#5c6b61}
.mcn-mo__head{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.mcn-mo__badge{background:var(--mcn-green-d,#1f5c39);color:#fff;font-size:.82rem;font-weight:700;padding:5px 14px;border-radius:999px}
.mcn-mo__switch{border:1px solid var(--mcn-line,#e3e1d8);background:#fff;color:#1b2a21;border-radius:999px;font:inherit;font-size:.78rem;padding:4px 12px;cursor:pointer}
.mcn-mo__from{background:var(--mcn-sand,#f7f3ec);border:1px solid var(--mcn-line,#e3e1d8);border-radius:10px;padding:9px 14px;font-size:.85rem;color:#1b2a21;margin-bottom:14px}
.mcn-mo__from--ok{background:var(--mcn-green-l,#e8f3ec);border-color:#c8e2d2}
.mcn-mo__from strong{color:#1b2a21}
.mcn-mo__from span{color:#5c6b61;font-size:.8rem}
.mcn-mo__setec,.mcn-mo__chg{border:0;background:none;color:var(--mcn-green-d,#1f5c39);font:inherit;font-size:inherit;font-weight:700;text-decoration:underline;cursor:pointer;padding:0}
.mcn-mo__form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;background:#fff;border:1px solid var(--mcn-line,#e3e1d8);border-radius:var(--mcn-radius,16px);padding:16px}
.mcn-mo__f{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:700;color:#1b2a21}
.mcn-mo__f select,.mcn-mo__f input[type=number]{font:inherit;font-weight:400;font-size:.88rem;color:#1b2a21;background:#fff;padding:8px 10px;border:1px solid var(--mcn-line,#e3e1d8);border-radius:8px;width:100%}
.mcn-mo__f--chk{flex-direction:row;align-items:center;gap:7px}
.mcn-mo__f--chk input{width:auto}
.mcn-mo__count{margin:18px 0 6px;font-size:1.05rem;color:#1b2a21}
.mcn-mo__count strong{font-size:1.5rem;color:var(--mcn-green-d,#1f5c39)}
.mcn-mo__crit{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.mcn-mo__crit em{font-style:normal;font-size:.74rem;background:var(--mcn-sand,#f7f3ec);border:1px solid var(--mcn-line,#e3e1d8);color:#1b2a21;padding:2px 9px;border-radius:999px}
.mcn-mo__none{color:#8a5a2b;font-size:.92rem}
.mcn-mo__res{display:flex;flex-direction:column;gap:14px;margin-top:14px}
.mcn-mo__btn{display:inline-block;background:var(--mcn-green,#2e7d4f);color:#fff;border:0;border-radius:999px;font:inherit;font-weight:700;padding:11px 26px;cursor:pointer;margin-top:16px;text-decoration:none}
.mcn-mo__btn:hover{background:var(--mcn-green-d,#1f5c39)}
.mcn-mo__seoh{font-size:1rem;margin:26px 0 10px;color:#1b2a21}

/* ---- carte resultat moteur ---- */
.mcn-mr{display:flex;gap:16px;background:#fff;border:1px solid var(--mcn-line,#e3e1d8);border-radius:var(--mcn-radius,16px);overflow:hidden}
.mcn-mr__img{flex:0 0 200px;display:block;background:var(--mcn-sand,#f7f3ec)}
.mcn-mr__img img{width:100%;height:100%;object-fit:cover;display:block;min-height:150px}
.mcn-mr__noimg{display:flex;align-items:center;justify-content:center;height:100%;min-height:150px;font-size:2.2rem}
.mcn-mr__body{flex:1;padding:14px 16px 12px;min-width:0}
.mcn-mr__body h3{margin:0 0 3px;font-size:1.05rem;line-height:1.3}
.mcn-mr__body h3 a{color:#1b2a21;text-decoration:none}
.mcn-mr__body h3 a:hover{color:var(--mcn-green-d,#1f5c39);text-decoration:underline}
.mcn-mr__loc{margin:0 0 9px;font-size:.8rem;color:#5c6b61}
.mcn-mr__grid{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;font-size:.8rem;align-items:baseline}
.mcn-mr__k{color:#5c6b61;white-space:nowrap}
.mcn-mr__v{color:#1b2a21}
.mcn-mr__cost{margin:9px 0 0;font-size:.78rem;color:#1b2a21;background:var(--mcn-sand,#f7f3ec);border-radius:8px;padding:6px 10px}
.mcn-mr__cost em{font-style:normal;color:#5c6b61;font-size:.72rem}
.mcn-mr__match{display:flex;align-items:center;gap:9px;margin-top:10px}
.mcn-mr__pct{flex:0 0 auto;font-size:.8rem;font-weight:700;color:#1b2a21;background:linear-gradient(90deg,#cfe6d8 calc(var(--p)*1%),#eef1ec 0);border-radius:999px;padding:3px 11px}
.mcn-mr__why{font-size:.74rem;color:#5c6b61;line-height:1.35}
.mcn-mr__go{margin:11px 0 0;display:flex;align-items:center;gap:10px}
.mcn-mr__go a{color:var(--mcn-green-d,#1f5c39);font-weight:700;font-size:.85rem;text-decoration:none}
.mcn-mr__go a:hover{text-decoration:underline}
.mcn-fav-btn--inline{position:static;border:1px solid var(--mcn-line,#e3e1d8);background:#fff;color:#8a5f1c;border-radius:999px;width:28px;height:28px;cursor:pointer;line-height:1}
@media(max-width:640px){.mcn-mr{flex-direction:column}.mcn-mr__img{flex:none}.mcn-mr__img img{height:160px}}

/* ---- autour de mon ecole ---- */
.mcn-au__empty{text-align:center;background:#fff;border:1px solid var(--mcn-line,#e3e1d8);border-radius:var(--mcn-radius,16px);padding:44px 24px;color:#1b2a21}
.mcn-au__empty-i{font-size:2.6rem;display:block;margin-bottom:10px}
.mcn-au__empty h2{margin:0 0 8px;font-size:1.35rem;color:#1b2a21}
.mcn-au__empty p{margin:0 auto;max-width:520px;color:#5c6b61;line-height:1.55}
.mcn-au__priv{font-size:.75rem!important;margin-top:12px!important;color:#5c6b61!important}
.mcn-au__head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;background:var(--mcn-green-l,#e8f3ec);border:1px solid #c8e2d2;border-radius:var(--mcn-radius,16px);padding:16px 20px}
.mcn-au__lab{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--mcn-green-d,#1f5c39);font-weight:700}
.mcn-au__head h2{margin:2px 0 2px;font-size:1.2rem;color:#1b2a21}
.mcn-au__head p{margin:0;font-size:.85rem;color:#5c6b61}
.mcn-au__chg{border:1px solid var(--mcn-green,#2e7d4f);background:#fff;color:var(--mcn-green-d,#1f5c39);border-radius:999px;font:inherit;font-size:.78rem;font-weight:600;padding:6px 14px;cursor:pointer}
.mcn-au__counters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0}
.mcn-au__c{background:#fff;border:2px solid var(--mcn-line,#e3e1d8);border-radius:var(--mcn-radius,16px);padding:14px 12px;text-align:center;cursor:pointer;font:inherit;color:#1b2a21}
.mcn-au__c:hover{border-color:var(--mcn-green,#2e7d4f)}
.mcn-au__c.is-on{border-color:var(--mcn-green,#2e7d4f);background:var(--mcn-green-l,#e8f3ec)}
.mcn-au__c-m{display:block;font-size:.78rem;color:#5c6b61}
.mcn-au__c strong{display:block;font-size:1.9rem;line-height:1.15;color:var(--mcn-green-d,#1f5c39)}
.mcn-au__c-l{display:block;font-size:.74rem;color:#5c6b61}
.mcn-au__filters{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:14px;font-size:.8rem;color:#5c6b61}
.mcn-au__ths{display:flex;flex-wrap:wrap;gap:6px}
.mcn-au__th{border:1px solid var(--mcn-line,#e3e1d8);background:#fff;color:#1b2a21;border-radius:999px;font:inherit;font-size:.78rem;padding:4px 11px;cursor:pointer}
.mcn-au__th em{font-style:normal;color:#5c6b61;font-size:.72rem}
.mcn-au__th.is-on{border-color:var(--c,#2e7d4f);background:var(--mcn-sand,#f7f3ec);font-weight:700}
.mcn-au__layout{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;align-items:start}
.mcn-au__map{height:560px;border-radius:var(--mcn-radius,16px);overflow:hidden;border:1px solid var(--mcn-line,#e3e1d8)}
.mcn-au__list{max-height:560px;overflow:auto;border:1px solid var(--mcn-line,#e3e1d8);border-radius:var(--mcn-radius,16px);background:#fff;padding:8px}
.mcn-au__lh{margin:6px 8px 10px;font-size:.85rem;color:#5c6b61}
.mcn-au__lh strong{color:var(--mcn-green-d,#1f5c39);font-size:1.05rem}
.mcn-au__it{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;text-decoration:none;color:#1b2a21}
.mcn-au__it:hover{background:var(--mcn-sand,#f7f3ec)}
.mcn-au__it-i{flex:0 0 30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.95rem}
.mcn-au__it-b{flex:1;min-width:0}
.mcn-au__it-b strong{display:block;font-size:.86rem;color:#1b2a21;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mcn-au__it-b span{display:block;font-size:.74rem;color:#5c6b61;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mcn-au__it-m{flex:0 0 auto;font-size:.76rem;font-weight:700;color:var(--mcn-green-d,#1f5c39)}
.mcn-au__more{margin:12px 8px;font-size:.85rem}
.mcn-au__more a{color:var(--mcn-green-d,#1f5c39);font-weight:700}
.mcn-au__note{margin-top:14px;font-size:.75rem;color:#5c6b61;line-height:1.5}
.mcn-pin__b{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 6px rgba(27,42,33,.35);font-size:.8rem}
.mcn-pop__min{color:#1f5c39;font-weight:600}
@media(max-width:860px){.mcn-au__layout{grid-template-columns:1fr}.mcn-au__map{height:400px}.mcn-au__list{max-height:none}}

/* ---- pertinence sur les cartes de listing ---- */
.mcn-card__aff{display:inline-block;font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:999px;margin:4px 0 0}
.mcn-card__aff--3{background:var(--mcn-green-l,#e8f3ec);color:var(--mcn-green-d,#1f5c39)}
.mcn-card__aff--2{background:var(--mcn-sand,#f7f3ec);color:#6b5a3a}
.mcn-card__pill--min{background:rgba(27,42,33,.82);color:#fff}

/* ---- bandeau intention SEO ---- */
.mcn-int__hero{background:var(--mcn-green-l,#e8f3ec);border:1px solid #c8e2d2;border-radius:var(--mcn-radius,16px);padding:22px 24px;margin-bottom:22px}
.mcn-int__hero h1{margin:0 0 8px;color:#1b2a21}
.mcn-int__hero p{margin:0;color:#3a4a3f;line-height:1.6}
.mcn-int__facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.mcn-int__facts span{background:#fff;border:1px solid #c8e2d2;color:#1b2a21;font-size:.78rem;padding:4px 12px;border-radius:999px}
.mcn-int__why{background:var(--mcn-sand,#f7f3ec);border-left:3px solid var(--mcn-amber,#c2872e);padding:10px 14px;margin:8px 0 0;font-size:.82rem;color:#3a4a3f;border-radius:0 8px 8px 0}

/* ============================================================ v15 : 3e porte
   Â« Que souhaitez-vous travailler avec vos eleves ? Â» : niveau, matiere, notion,
   puis point de depart. Toutes les couleurs de texte sont posees explicitement.
   Les blocs mcn-int__* etaient utilises par les gabarits sans jamais avoir ete
   styles : ils sont repris ici. */
.mcn-pd{color:#1b2a21}
.mcn-pd__load{color:#5c6b61;padding:30px 0;text-align:center}
.mcn-pd__q{font-size:1.55rem;line-height:1.25;margin:0 0 10px;color:#1b2a21}
.mcn-pd__lead{margin:0 0 22px;color:#41544a;font-size:.95rem;line-height:1.6;max-width:70ch}

/* ---- langage naturel ---- */
.mcn-pd__nl{background:var(--mcn-green-l,#e8f3ec);border:1px solid #cfe4d6;border-radius:var(--mcn-radius,16px);padding:16px 18px;margin:0 0 26px}
.mcn-pd__nl label{display:block;font-size:.8rem;font-weight:700;color:#1f5c39;margin-bottom:7px}
.mcn-pd__nlrow{display:flex;gap:8px;flex-wrap:wrap}
.mcn-pd__nlrow input{flex:1 1 260px;min-width:0;padding:11px 13px;border:1px solid #c3dccc;border-radius:10px;font:inherit;color:#1b2a21;background:#fff}
.mcn-pd__nlrow input:focus{outline:2px solid var(--mcn-green,#2e7d4f);outline-offset:1px}
.mcn-pd__nlrow button{border:0;background:var(--mcn-green,#2e7d4f);color:#fff;font:inherit;font-weight:700;padding:11px 20px;border-radius:10px;cursor:pointer}
.mcn-pd__nlrow button:hover{background:var(--mcn-green-d,#1f5c39)}
.mcn-pd__nlnote{margin:9px 0 0;font-size:.78rem;color:#41544a;line-height:1.5}
.mcn-pd__nlnote strong{color:#1f5c39}

/* ---- etapes ---- */
.mcn-pd__steps{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 18px;font-size:.82rem}
.mcn-pd__steps span{color:#8a9a90}
.mcn-pd__crumb{border:1px solid var(--mcn-line,#e3e1d8);background:#fff;color:#1f5c39;font:inherit;font-size:.82rem;font-weight:600;border-radius:999px;padding:5px 13px;cursor:pointer}
.mcn-pd__crumb:hover{border-color:var(--mcn-green,#2e7d4f);background:var(--mcn-green-l,#e8f3ec)}
.mcn-pd__cyc{margin:0 0 22px}
.mcn-pd__cyc h3{font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;color:#5c6b61;margin:0 0 9px;font-weight:700}
.mcn-pd__opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px}
.mcn-pd__opts--mat{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.mcn-pd__opt{display:flex;flex-direction:column;gap:3px;align-items:flex-start;text-align:left;background:#fff;border:2px solid var(--mcn-line,#e3e1d8);border-radius:12px;padding:13px 15px;cursor:pointer;font:inherit;color:#1b2a21;transition:border-color .15s,transform .15s}
.mcn-pd__opt:hover{border-color:var(--mcn-green,#2e7d4f);transform:translateY(-2px)}
.mcn-pd__opt strong{font-size:1rem;color:#1b2a21}
.mcn-pd__opt em{font-style:normal;font-size:.76rem;color:#5c6b61}

/* ---- notions ---- */
.mcn-pd__notions{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.mcn-pd__notion{display:flex;flex-direction:column;gap:6px;text-align:left;background:#fff;border:2px solid var(--mcn-line,#e3e1d8);border-radius:var(--mcn-radius,16px);padding:17px 18px;cursor:pointer;font:inherit;color:#1b2a21;transition:border-color .15s,transform .15s}
.mcn-pd__notion:hover{border-color:var(--mcn-green,#2e7d4f);transform:translateY(-2px)}
.mcn-pd__notion strong{font-size:1.05rem;color:#1b2a21}
.mcn-pd__notion span{font-size:.85rem;line-height:1.5;color:#41544a}
.mcn-pd__notion em{font-style:normal;font-size:.78rem;font-weight:700;color:#1f5c39}

/* ---- resultats ---- */
.mcn-pd__what{background:#fff;border:1px solid var(--mcn-line,#e3e1d8);border-left:4px solid var(--mcn-green,#2e7d4f);border-radius:12px;padding:16px 20px;margin:0 0 18px}
.mcn-pd__what h2{margin:0 0 6px;font-size:1.3rem;color:#1b2a21}
.mcn-pd__what p{margin:0;color:#41544a;font-size:.93rem;line-height:1.6}
.mcn-pd__bar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;margin:0 0 14px}
.mcn-pd__fmt{display:flex;gap:8px;flex-wrap:wrap}
.mcn-pd__fmt button{border:2px solid var(--mcn-line,#e3e1d8);background:#fff;color:#1b2a21;font:inherit;font-size:.88rem;font-weight:600;border-radius:999px;padding:8px 16px;cursor:pointer}
.mcn-pd__fmt button em{font-style:normal;font-weight:800;color:#1f5c39;margin-left:5px}
.mcn-pd__fmt button.on{border-color:var(--mcn-green,#2e7d4f);background:var(--mcn-green-l,#e8f3ec)}
.mcn-pd__geo{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:.86rem;color:#41544a}
.mcn-pd__from--ok strong{color:#1b2a21}
.mcn-pd__setec{border:1px dashed var(--mcn-green,#2e7d4f);background:#fff;color:#1f5c39;font:inherit;font-size:.86rem;font-weight:700;border-radius:999px;padding:5px 13px;cursor:pointer}
.mcn-pd__setec:hover{background:var(--mcn-green-l,#e8f3ec)}
.mcn-pd__chg{border:0;background:var(--mcn-green-l,#e8f3ec);color:#1f5c39;font:inherit;font-size:.76rem;border-radius:999px;padding:2px 9px;cursor:pointer;margin-left:4px}
.mcn-pd__min{display:inline-flex;align-items:center;gap:6px;font-size:.84rem;color:#41544a}
.mcn-pd__min select{padding:7px 10px;border:1px solid var(--mcn-line,#e3e1d8);border-radius:9px;font:inherit;font-size:.84rem;color:#1b2a21;background:#fff}
.mcn-pd__count{margin:0 0 16px;font-size:1.02rem;line-height:1.6;color:#1b2a21}
.mcn-pd__count strong{font-size:1.25rem;color:#1f5c39}
.mcn-pd__hors{display:block;font-size:.82rem;color:#5c6b61;margin-top:3px}
.mcn-pd__none{color:#8a5a12;background:#fdf6ea;border:1px solid #f0dcb8;border-radius:10px;padding:11px 14px;display:block;font-size:.9rem;line-height:1.55}
.mcn-pd__res{display:grid;gap:16px}
.mcn-pd__more{text-align:center;margin:18px 0 0}
.mcn-pd__btn{border:2px solid var(--mcn-green,#2e7d4f);background:#fff;color:#1f5c39;font:inherit;font-weight:700;border-radius:999px;padding:11px 26px;cursor:pointer}
.mcn-pd__btn:hover{background:var(--mcn-green-l,#e8f3ec)}
.mcn-pd__reste{display:block;margin:8px 0 0;font-size:.86rem;color:#4a5b52}
.mcn-pd__aff{display:inline-block;margin-left:8px;font-size:.72rem;font-weight:700;color:#1f5c39;background:var(--mcn-green-l,#e8f3ec);border-radius:999px;padding:2px 9px}
.mcn-pd__aff--2{color:#8a5a12;background:#fdf6ea}
.mcn-pd__match{margin:10px 0 0;background:#f6faf7;border:1px solid #dcebe1;border-radius:10px;padding:9px 12px}
.mcn-pd__matchk{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#1f5c39;margin-bottom:2px}
.mcn-pd__matchv{display:block;font-size:.86rem;color:#1b2a21;line-height:1.5}

/* ---- prolongements ---- */
.mcn-pd__pe,.mcn-pd__seo{margin:30px 0 0;background:#fff;border:1px solid var(--mcn-line,#e3e1d8);border-radius:var(--mcn-radius,16px);padding:20px 22px}
.mcn-pd__pe h3,.mcn-pd__seo h3{margin:0 0 8px;font-size:1.1rem;color:#1b2a21}
.mcn-pd__pe p{margin:0 0 12px;color:#41544a;font-size:.9rem;line-height:1.55}
.mcn-pd__pe ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.mcn-pd__pe li a{display:block;background:var(--mcn-green-l,#e8f3ec);border-radius:10px;padding:10px 14px;color:#1f5c39;font-weight:600;font-size:.9rem;text-decoration:none}
.mcn-pd__pe li a:hover{background:#d6ebde;text-decoration:underline}
.mcn-pd--res .mcn-pe-cta{margin-top:30px}

/* ---- blocs de gabarit restes sans style ---- */
.mcn-int__how{margin-top:34px}
.mcn-int__cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-top:14px}
.mcn-int__card{background:#fff;border:1px solid var(--mcn-line,#e3e1d8);border-radius:var(--mcn-radius,16px);padding:20px}
.mcn-int__card h3{margin:8px 0 7px;font-size:1.02rem;color:#1b2a21}
.mcn-int__card p{margin:0;font-size:.88rem;line-height:1.6;color:#41544a}
.mcn-int__ic{font-size:1.6rem;line-height:1}
.mcn-int__src{margin-top:30px}
.mcn-int__src p{font-size:.9rem;line-height:1.65;color:#41544a;margin:0 0 10px}
.mcn-int__note{font-size:.82rem;color:#5c6b61}
@media(max-width:640px){
  .mcn-pd__q{font-size:1.3rem}
  .mcn-pd__bar{align-items:flex-start;flex-direction:column;gap:10px}
  .mcn-pd__opts{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}
}


/* ============ Barre utilitaire : une seule ligne en mobile (2026-08-16) ============
   Avant : .mcn-util__in etait en flex-wrap:wrap avec un spacer margin-left:auto, et
   .mcn-util__fav{display:inline-flex} (declare plus loin que le @media hidem) rouvrait
   Favoris en mobile. Resultat : 3 lignes empilees, 148px de haut, libelle du chip
   coupe sur 2 lignes. Ici on garde 2 elements sur une ligne : le chip ecole et le
   CTA structures. Le compteur, Favoris et les liens hidem restent accessibles en
   desktop, dans le hero et dans le footer. */
.mcn-echip__sm{display:none}
@media(max-width:720px){
  .mcn-util__in{flex-wrap:nowrap;gap:10px;padding:6px 14px;justify-content:space-between}
  .mcn-util__sp{display:none}
  .mcn-util__in>.mcn-util__i:first-child{display:none}
  .mcn-util__hidem,.mcn-util__fav{display:none}
  .mcn-util__ecole{flex:0 1 auto;min-width:0;overflow:hidden}
  .mcn-echip,.mcn-echip--empty{max-width:100%;white-space:nowrap;font-size:.74rem;padding:4px 11px;overflow:hidden;text-overflow:ellipsis}
  .mcn-util__pro{flex:0 0 auto;white-space:nowrap;font-size:.74rem;padding:4px 12px}
}
@media(max-width:384px){
  .mcn-echip__lg{display:none}
  .mcn-echip__sm{display:inline}
  /* Sous 384px le libelle "Modifier" mange la place du nom de commune :
     on le reduit a un crayon, l'action reste la meme. */
  .mcn-echip__ed{font-size:0;padding:2px 7px}
  .mcn-echip__ed::after{content:"\270E";font-size:.78rem}
  .mcn-util__pro{font-size:.7rem;padding:4px 10px}
}

/* Desktop : les 7 elements demandent 1324px pour 1140 disponibles (mesure 1440px,
   container plafonne a 1180). La barre passait donc sur 2 lignes a TOUTE largeur
   desktop. On retire la 3e reassurance ; le compteur et "Catalogue officiel"
   restent, et la barre tient sur une ligne des 721px. */
@media(min-width:721px){
  .mcn-util__hidewide{display:none}
}
/* Paliers intermediaires : le container est plafonne a 1180px, la barre demande
   1053px sans la 3e reassurance. Sous 1280px de fenetre on retire "Catalogue
   officiel", sous 900px on retire aussi "Guides pratiques" (present dans le menu). */
@media(min-width:721px) and (max-width:1279px){
  .mcn-util__hidemid{display:none}
}
@media(min-width:721px) and (max-width:899px){
  .mcn-util__hidesm{display:none}
}

/* ------------------------------------------------------------------
   NAV PRINCIPALE DESKTOP - debordement sous la barre de recherche.
   Les 13 entrees demandent 1071px alors que le container du header est
   plafonne a 1240px : la nav n'en recoit que ~800-830px et deborde a
   GAUCHE (overflow visible), donc "Mer / Montagne / Foret / Ferme /
   Patrimoine" passent SOUS le champ de recherche, a TOUTES les largeurs
   desktop. Pieges mesures : le font-size de .mcn-nav n'atteint pas les
   <a> (ils sont deja a 13.6px, le baisser les AGRANDIT), et la nav est
   en justify-content:flex-end donc l'excedent part vers la gauche sans
   aucune barre de defilement. Leviers retenus : gap resserre, container
   elargi au-dela de 1520px, et entrees d'exploration retirees en
   dessous (elles restent dans le menu, dans le hero et en page).
   ------------------------------------------------------------------ */
@media(min-width:1101px){
  .mcn-nav{gap:6px}
  /* 20px rendus a la nav : sans cette marge les paliers tiennent au pixel
     pres et le moindre libelle rallonge fait replonger le menu sous la
     recherche, sans aucun signe visible cote CMS. */
  .mcn-hsearch{flex:0 0 140px}
}
@media(min-width:1520px){
  .mcn-header__bar{max-width:1480px}
}
/* IMPORTANT : le menu burger mobile est CETTE MEME nav.mcn-nav, simplement
   depliee. Toute regle de masquage doit donc etre bornee au-dessus du seuil
   de bascule (burger a partir de 1120px), sinon les entrees disparaissent
   aussi du menu mobile. */
@media(min-width:1121px) and (max-width:1519px){
  .mcn-nav__hidewide,.mcn-nav__hidemid{display:none}
}
@media(min-width:1121px) and (max-width:1219px){
  /* "Guides" vient de la boucle {{#each header.menu.items}} : pas de classe
     possible dessus, on le cible par son href. */
  .mcn-nav a[href="./guides/"]{display:none}
}
/* MCN-MOBILE-OVERFLOW 2026-08-19 */
@media (max-width:640px){
 .mcn-inline__i{white-space:normal!important;overflow-wrap:anywhere;max-width:100%}
 .mcn-filters__row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
 .mcn-filters__row .mcn-field,.mcn-filters__row select,.mcn-filters__row input{min-width:0!important;max-width:100%!important}
 .mcn-article__layout{grid-template-columns:minmax(0,1fr)!important}
 table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
}
/* /MCN-MOBILE-OVERFLOW */
