/* CMS composition: content belongs to billets, structure to reusable widgets. */
.jpc-cms2 .jpc-cms-menu{list-style:none;padding:0;margin:0}.jpc-cms2 .jpc-cms-menu-principal{display:flex;align-items:center;gap:24px}.jpc-cms2 .jpc-cms-menu-footer{display:grid;gap:12px}.jpc-cms2 .jpc-cms-menu-categories{display:flex;flex-wrap:wrap;gap:12px}.jpc-cms2 .jpc-cms-menu-categories a{display:block;border:1px solid #ddd;padding:10px 16px}.jpc-cms2 .jpc-cms-menu-categories a[aria-current]{color:#b73c2a;border-color:currentColor}.jpc-cms2 .jpc-cms-image{width:100%;height:auto;object-fit:cover}.jpc-cms2 .jpc-cms-breadcrumb{padding-top:22px}.jpc-cms2 .jpc-cms-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.jpc-cms2 .jpc-cms-expertises .jpc-cms-items{grid-template-columns:repeat(4,minmax(0,1fr))}.jpc-cms2 .jpc-cms-etapes .jpc-cms-items{grid-template-columns:1fr}.jpc-cms2 .jpc-cms-etapes_resume .jpc-cms-items{grid-template-columns:repeat(5,minmax(0,1fr))}.jpc-cms2 .jpc-cms-cartes .jpc-cms-items{grid-template-columns:repeat(2,minmax(0,1fr))}.jpc-cms2 .jpc-cms-card{min-width:0}.jpc-cms2 .jpc-cms-card h3{font-size:20px;line-height:1.35}.jpc-cms2 .jpc-cms-card p{font-size:15px;line-height:1.75}.jpc-cms2 .jpc-cms-detail{color:#555}.jpc-cms2 .jpc-cms-card>.jpc-cms-image{aspect-ratio:4/3}.jpc-cms2 .jpc-footer-coordinates address{font-style:normal}.jpc-cms2 .jpc-hero{background:#292b29}.jpc-cms2 .jpc-hero-copy{max-width:650px}.jpc-cms2 .jpc-cms-logo{display:block}.jpc-cms2 .jpc-cms-list>.jpc-title{margin-bottom:30px}
@media(max-width:1000px){.jpc-cms2 .jpc-cms-expertises .jpc-cms-items,.jpc-cms2 .jpc-cms-etapes_resume .jpc-cms-items{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.jpc-cms2 .jpc-cms-menu-principal{display:grid;gap:0}.jpc-cms2 .jpc-cms-menu-principal a{display:block;padding:12px}}
@media(max-width:600px){.jpc-cms2 .jpc-cms-items,.jpc-cms2 .jpc-cms-cartes .jpc-cms-items,.jpc-cms2 .jpc-cms-expertises .jpc-cms-items,.jpc-cms2 .jpc-cms-etapes_resume .jpc-cms-items{grid-template-columns:1fr}}

.jpc-cms2 .jpc-breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0}.jpc-cms2 .jpc-breadcrumb li+li:before{content:"/";margin-right:8px;color:#888}.jpc-cms2 .jpc-cms-pagination{display:flex;gap:12px;margin-top:24px}

@media(min-width:1001px){.jpc-cms2 .jpc-cms-columns-4 .jpc-cms-items{grid-template-columns:repeat(4,minmax(0,1fr))}.jpc-cms2 .jpc-cms-columns-3 .jpc-cms-items{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* CMS shared spacing and legal navigation */
.jpc-cms2 .jpc-hero-description,.jpc-cms2 .jpc-footer-coordinates address{white-space:normal}
.jpc-cms2 .jpc-footer-bottom .jpc-cms-menu-footer{display:flex;flex-wrap:wrap;gap:10px 20px}
.jpc-cms2 .jpc-cms-cartes .jpc-cms-card{display:flex;flex-direction:column}
.jpc-cms2 .jpc-cms-cartes .jpc-cms-card>.jpc-button{margin-top:auto;align-self:flex-start}
.jpc-cms2 .jpc-cms-expertises .jpc-cms-card h3{min-height:2.7em}
.jpc-cms2 .jpc-cms-expertises .jpc-icon{display:block;margin-bottom:14px;font-size:38px}
@media(max-width:600px){.jpc-cms2 .jpc-cms-expertises .jpc-cms-card h3{min-height:0}}

/* Restore the established visual hierarchy while keeping every content block editable. */
.jpc-cms2 .jpc-cms-breadcrumb{background:#f5f3f0;max-width:none;padding:20px max(24px,calc((100% - 1180px)/2)) 0}
.jpc-cms2 .jpc-cms-breadcrumb .jpc-breadcrumb{margin-bottom:0;padding-bottom:0}
.jpc-cms2 .jpc-timeline h3{font-family:Georgia,serif;font-weight:400;font-size:28px;line-height:1.25;margin:0 0 12px}
.jpc-cms2 .jpc-cms-etapes+.jpc-container{padding-top:0}
.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 32px}
.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card{border-top:1px solid #d8cec7;padding-top:20px}
.jpc-cms2 .jpc-cms-expertises--detail .jpc-icon{display:none}
.jpc-cms2 .jpc-cms-expertises--detail h3,.jpc-cms2 .jpc-cms-valeurs h3{font-family:Georgia,serif;font-size:25px;font-weight:400;min-height:0;margin:0 0 12px}
.jpc-cms2 .jpc-cms-valeurs .jpc-cms-card{border-top:2px solid #b73c2a;padding:22px;background:#f5f3f0}
.jpc-cms2 .jpc-cms-cartes .jpc-cms-card h3{margin:18px 0 10px;font-family:Georgia,serif;font-size:25px;font-weight:400}
.jpc-cms2 .jpc-cms-cartes .jpc-cms-card>.jpc-cms-image{aspect-ratio:16/10}
.jpc-cms2 .jpc-cms-cartes .jpc-cms-card>.jpc-button{margin-top:auto;width:auto;min-width:0}
.jpc-cms2 .jpc-cms-contact-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;padding-top:36px;padding-bottom:36px;align-items:start}
.jpc-cms2 .jpc-cms-contact-copy>.jpc-container{width:100%;padding:0;margin:0 0 28px}
.jpc-cms2 .jpc-cms-contact-copy>.jpc-container+ .jpc-container{background:#f5f3f0;padding:24px}
.jpc-cms2 .jpc-cms-contact-layout .jpc-native-form{min-width:0;padding:0}
.jpc-cms2 .jpc-cms-contact-layout .jpc-native-form .jpc-form-panel{margin:0}
@media(max-width:900px){.jpc-cms2 .jpc-cms-contact-layout{grid-template-columns:1fr;gap:24px}}
@media(max-width:600px){.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-items{grid-template-columns:1fr}.jpc-cms2 .jpc-timeline h3{font-size:24px}.jpc-cms2 .jpc-cms-breadcrumb{padding-left:24px;padding-right:24px}.jpc-cms2 .jpc-cms-valeurs .jpc-cms-card{padding:20px}.jpc-cms2 .jpc-cms-cartes .jpc-cms-card h3{font-size:23px}}

.jpc-cms2 .jpc-cms-breadcrumb{width:100%;margin:0;box-sizing:border-box}
.jpc-cms2 .jpc-cms-about{display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px;align-items:center}
.jpc-cms2 .jpc-cms-about>.jpc-photo-panel{grid-column:1;grid-row:1}
.jpc-cms2 .jpc-cms-about>div:first-child{grid-column:2}
.jpc-cms2 .jpc-cms-about .jpc-sprite--badge{display:block;width:220px;height:220px;border-radius:50%}
.jpc-cms2 .jpc-contact-form .jpc-form-fields>.row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 18px}
.jpc-cms2 .jpc-contact-form .jpc-form-fields>.row>.col-12{grid-column:span 12;width:auto;padding:0;min-width:0}
@media(min-width:701px){.jpc-cms2 .jpc-contact-form .jpc-form-fields>.row>.col-md-6{grid-column:span 6}.jpc-cms2 .jpc-contact-form .jpc-form-fields>.row>.col-md-8{grid-column:span 8}.jpc-cms2 .jpc-contact-form .jpc-form-fields>.row>.col-md-4{grid-column:span 4}}
@media(max-width:700px){.jpc-cms2 .jpc-cms-about{grid-template-columns:1fr;gap:24px}.jpc-cms2 .jpc-cms-about>div:first-child{grid-column:1}.jpc-cms2 .jpc-cms-about>.jpc-photo-panel{grid-row:auto}.jpc-cms2 .jpc-cms-about .jpc-sprite--badge{width:160px;height:160px;margin:auto}}

.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card h3{min-height:0}
.jpc-cms2 .jpc-cms-columns-4 .jpc-cms-card h3{font-family:Montserrat,Arial,sans-serif;font-size:19px;font-weight:600;min-height:2.7em}
.jpc-cms2 .jpc-cms-step-count{font-family:Georgia,serif;font-size:26px}
.jpc-cms2 .jpc-cms-etapes_resume .jpc-steps{margin-top:24px}
@media(max-width:600px){.jpc-cms2 .jpc-cms-columns-4 .jpc-cms-card h3{min-height:0}}

.jpc-cms2 .jpc-cms-content>.jpc-breadcrumb{background:#f5f3f0;padding:20px max(24px,calc((100% - 1180px)/2));margin:0 0 32px}
.jpc-cms2 #erreur404{padding:28px 0 60px}
.jpc-cms2 #erreur404 .cadre{border:1px solid #e0d7d0;border-top:3px solid #b73c2a;background:#f5f3f0;padding:32px;max-width:680px;margin:0 auto;box-shadow:none}
.jpc-cms2 #erreur404 .titre{font-family:Georgia,serif;color:#b73c2a;font-size:36px;font-weight:400;text-transform:none;margin:0 0 18px}
.jpc-cms2 #erreur404 a{color:#a83425;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.jpc-cms2 #erreur404 .cadre{padding:24px 18px}.jpc-cms2 #erreur404 .titre{font-size:28px}}

/* FAQ éditoriale native : accessible au clavier, sans dépendance JavaScript. */
.jpc-cms-faq{padding-top:30px;padding-bottom:40px;max-width:960px}.jpc-cms-faq h2{font-family:Georgia,serif;font-size:1.65rem;margin:0 0 20px}.jpc-faq-item{border-top:1px solid #dedbd7}.jpc-faq-item:last-child{border-bottom:1px solid #dedbd7}.jpc-faq-item summary{cursor:pointer;font-weight:600;padding:18px 8px;color:#292725}.jpc-faq-item summary::marker{color:#b83e2e}.jpc-faq-answer{padding:0 8px 18px;line-height:1.7}.jpc-faq-answer p:last-child{margin-bottom:0}.jpc-faq-item summary:focus-visible{outline:2px solid #b83e2e;outline-offset:2px}

/* Contenu éditorial du groupe natif texte_bas, administrable par page. */
.jpc-cms2 .jpc-texte-bas{max-width:1040px;padding-top:34px;padding-bottom:24px;border-top:1px solid #e0d7d0;margin-top:24px}
.jpc-cms2 .jpc-texte-bas h2{font-family:Georgia,serif;font-size:30px;font-weight:400;line-height:1.25;margin:0 0 20px}
.jpc-cms2 .jpc-texte-bas h3{font-family:Georgia,serif;font-size:23px;font-weight:400;line-height:1.35;margin:25px 0 10px}
.jpc-cms2 .jpc-texte-bas p{line-height:1.75;margin:0 0 14px;max-width:90ch}
.jpc-cms2 .jpc-texte-bas a{color:#9f3224;text-decoration:underline;text-underline-offset:3px}
.jpc-cms2 .jpc-texte-bas a:hover{color:#692317}.jpc-cms2 .jpc-texte-bas a:focus-visible{outline:2px solid #b73c2a;outline-offset:3px}
@media(max-width:600px){.jpc-cms2 .jpc-texte-bas{padding-top:26px;margin-top:16px}.jpc-cms2 .jpc-texte-bas h2{font-size:25px}.jpc-cms2 .jpc-texte-bas h3{font-size:21px}}

/* Cartes de missions : présentation détaillée uniquement, contenu piloté par le CMS. */
.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-items{gap:20px}
.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:20px;align-content:start;padding:28px;border:1px solid #e6dfd8;border-top:3px solid #a33b2b;border-radius:4px;background:#f7f5f2}
.jpc-cms2 .jpc-expertise-symbol{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#eee1da;color:#9e3829;grid-column:1;grid-row:1 / span 3}
.jpc-cms2 .jpc-expertise-symbol svg{width:32px;height:32px;display:block}
.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card h3{grid-column:2;margin:2px 0 12px;font-size:24px;line-height:1.25;min-height:0}
.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card p{grid-column:2;margin:0;color:#4c4944;font-size:15px;line-height:1.75}
.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card .jpc-cms-detail{margin-top:12px}
.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card>.jpc-button{grid-column:2;justify-self:start;margin-top:18px}
.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card>.jpc-cms-image{grid-column:1 / -1;margin-bottom:20px}
.jpc-cms2 .jpc-cms-expertises--detail>.jpc-title{margin-bottom:24px}
@media(max-width:1000px){.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card{grid-template-columns:44px minmax(0,1fr);column-gap:14px;padding:22px}.jpc-cms2 .jpc-expertise-symbol{width:44px;height:44px}.jpc-cms2 .jpc-expertise-symbol svg{width:27px;height:27px}.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card p{grid-column:1 / -1;margin-top:8px}.jpc-cms2 .jpc-cms-expertises--detail .jpc-expertise-symbol{grid-row:1}.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card h3{align-self:center;margin:0;font-size:22px}}
@media(max-width:600px){.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-items{gap:16px}.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card{padding:20px}.jpc-cms2 .jpc-cms-expertises--detail .jpc-cms-card>.jpc-button{grid-column:1 / -1}}

/* Accueil : chaque séquence dispose de ses propres repères visuels. */
.jpc-home .jpc-cms-expertises--resume{padding-top:12px;padding-bottom:44px}
.jpc-home .jpc-cms-expertises--resume .jpc-cms-items{gap:18px}
.jpc-home .jpc-cms-expertises--resume .jpc-cms-card{padding:24px 20px;background:#f7f5f2;border:1px solid #e6dfd8;border-top:3px solid #a33b2b;border-radius:4px;text-align:left}
.jpc-home .jpc-cms-expertises--resume .jpc-expertise-symbol{margin-bottom:18px}
.jpc-home .jpc-cms-expertises--resume .jpc-cms-card h3{font-size:18px;line-height:1.4;margin:0 0 10px;min-height:2.8em}
.jpc-home .jpc-cms-expertises--resume .jpc-cms-card p{margin:0;color:#4c4944;line-height:1.65}
.jpc-home .jpc-cms-cartes{width:100%;max-width:none;padding:40px max(24px,calc((100% - 1180px)/2));background:#f0eeea;border-top:1px solid #e7e1db;border-bottom:1px solid #e7e1db}
.jpc-home .jpc-cms-cartes .jpc-cms-items{gap:20px}
.jpc-home .jpc-cms-cartes .jpc-cms-card{background:#fff;border:1px solid #e3ddd6;border-radius:4px;overflow:hidden;padding-bottom:20px}
.jpc-home .jpc-cms-cartes .jpc-cms-card h3,.jpc-home .jpc-cms-cartes .jpc-cms-card p{margin-left:18px;margin-right:18px}
.jpc-home .jpc-cms-cartes .jpc-cms-card>.jpc-button{margin-left:18px;margin-right:18px}
.jpc-home .jpc-cms-cartes .jpc-cms-card p{font-size:14px;line-height:1.65}
.jpc-home .jpc-cms-cartes .jpc-cms-card .jpc-cms-detail{font-size:12px;color:#665f59}
.jpc-home .jpc-cms-etapes_resume{padding-top:40px;padding-bottom:40px}
.jpc-home .jpc-cms-list>.jpc-title:after{content:"";display:block;width:42px;height:2px;margin:15px auto 0;background:#a33b2b}
.jpc-cms2 .jpc-texte-bas{max-width:1180px;padding:32px;margin-top:12px;margin-bottom:30px;background:#f7f5f2;border:1px solid #e6dfd8;border-left:3px solid #a33b2b;border-radius:4px}
.jpc-home .jpc-cms-faq{padding-top:18px;padding-bottom:36px}
.jpc-home .jpc-cms-faq h2{text-align:center;margin-bottom:24px}
@media(max-width:600px){.jpc-home .jpc-cms-expertises--resume{padding-bottom:30px}.jpc-home .jpc-cms-expertises--resume .jpc-cms-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px 14px;padding:20px}.jpc-home .jpc-cms-expertises--resume .jpc-expertise-symbol{margin:0;grid-row:1}.jpc-home .jpc-cms-expertises--resume .jpc-cms-card h3{align-self:center;min-height:0;margin:0}.jpc-home .jpc-cms-expertises--resume .jpc-cms-card p{grid-column:1 / -1}.jpc-home .jpc-cms-cartes{padding-top:30px;padding-bottom:30px}.jpc-home .jpc-cms-etapes_resume{padding-top:30px;padding-bottom:30px}.jpc-cms2 .jpc-texte-bas{padding:24px 20px}}
