/* Profil de confiance validé — transposition Avada/ACF, uniquement dans l’aperçu ER. */
.erpp{--erpp-red:#C0172A;--erpp-ink:#323C45;--erpp-line:#dce1e4;--erpp-paper:#f3f5f5;color:var(--erpp-ink);font:17px/1.7 Arial,sans-serif;max-width:1156px;margin:0 auto;padding:0 0 40px;box-sizing:border-box}
.erpp *{box-sizing:border-box}.erpp .fusion-fullwidth{padding:54px 28px!important;margin:0!important;scroll-margin-top:56px}.erpp .fusion-builder-row{max-width:1100px!important;gap:28px 0}.erpp .fusion-layout-column{margin-top:0!important;margin-bottom:0!important;min-width:0}.erpp .fusion-column-wrapper{min-width:0}
.erpp .erpp-soft{background:var(--erpp-paper)!important}.erpp .fusion-fullwidth:has(.erpp-section-empty),.erpp .erpp-optional-formulas:has(.erpp-column-empty){display:none!important}.erpp .fusion-layout-column:has(.erpp-column-empty){display:none!important}
.erpp .fusion-text{color:var(--erpp-ink);font:17px/1.7 Arial,sans-serif}.erpp h1,.erpp h2,.erpp h3{color:var(--erpp-ink)!important;font-family:Arial,sans-serif!important;font-weight:700!important;letter-spacing:-.025em!important;line-height:1.18!important;text-transform:none!important}
.erpp h1{font-size:clamp(32px,4.4vw,54px)!important;margin:0 0 24px!important}.erpp h2{font-size:clamp(27px,3vw,38px)!important;margin:0 0 24px!important}.erpp h3{font-size:22px!important;margin:0 0 15px!important}.erpp h1 span,.erpp h2 span{font:inherit!important;letter-spacing:inherit!important}.erpp p{margin:0 0 20px}.erpp p:last-child{margin-bottom:0}.erpp a{color:var(--erpp-red);text-underline-offset:5px}.erpp .erpp-red{color:var(--erpp-red)!important}.erpp li{margin-bottom:8px}
.erpp .erpp-kicker{font:700 12px/1.5 Arial,sans-serif!important;letter-spacing:1.9px;text-transform:uppercase!important;margin:0 0 16px!important;color:var(--erpp-red)!important}.erpp .erpp-small{font-size:14px!important;line-height:1.6;color:#58636a}.erpp .erpp-compact{padding-top:12px!important;padding-bottom:16px!important}.erpp .erpp-hero{padding-top:16px!important;padding-bottom:44px!important}.erpp .erpp-hero>.fusion-builder-row{align-items:center!important}.erpp .erpp-hero-copy .fusion-text{font-size:18px}
.erpp-preview-note{background:#fff4d6;border-left:4px solid #92691a;padding:18px 24px;margin:24px 28px 0;font-size:14px;line-height:1.5}.erpp-preview-note a{display:inline-block;margin-left:12px;text-decoration:underline}
.erpp-breadcrumb{font-size:13px;display:flex;gap:8px;flex-wrap:wrap;line-height:1.6;margin-bottom:14px}
.erpp .erpp-portrait-col>.fusion-column-wrapper{background:#e9edef;border-bottom:5px solid var(--erpp-red);padding:30px 28px 24px!important;max-width:285px;margin-left:auto!important}.erpp .erpp-portrait{width:215px;height:215px;object-fit:contain;border-radius:0!important;display:block;margin:auto}.erpp .erpp-caption{text-align:center;margin-top:18px;font:14px/1.5 Arial,sans-serif}.erpp-caption strong{font-size:18px}.erpp-portrait-placeholder{width:215px;height:215px;background:#f3e4e7;display:grid;place-items:center;color:var(--erpp-red);font-size:80px;font-weight:700}
.erpp-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0!important;margin:24px 0 0!important}.erpp-tags li{font-size:13px;font-weight:700;padding:5px 10px;background:var(--erpp-paper);border:1px solid var(--erpp-line);line-height:1.5;margin:0}
.erpp-facts{display:flex;flex-wrap:wrap;border:1px solid var(--erpp-line);margin:0 0 30px;background:white}.erpp-fact{padding:24px;border-right:1px solid var(--erpp-line);font-size:14px;line-height:1.5;flex:1 1 210px}.erpp-fact:last-child{border-right:0}.erpp-fact strong{display:block;font-size:26px;color:var(--erpp-red);margin-bottom:6px}
.erpp-jump{display:flex;gap:16px 24px;flex-wrap:wrap;border-top:1px solid var(--erpp-line);border-bottom:1px solid var(--erpp-line);padding:16px 0;font-size:14px;font-weight:700}.erpp-jump a{text-decoration:underline}
.erpp .erpp-card>.fusion-column-wrapper{border:1px solid var(--erpp-line);border-top:3px solid var(--erpp-red);padding:28px!important;background:#fff;height:100%}.erpp .erpp-card .fusion-text{font-size:16px}.erpp .erpp-subject{padding:14px 0;border-top:1px solid var(--erpp-line)}.erpp .erpp-subject:first-child{border-top:0;padding-top:0}.erpp .erpp-subject h4{font:700 17px/1.4 Arial,sans-serif!important;color:var(--erpp-ink);margin:0 0 8px}.erpp .erpp-subject p{margin-bottom:8px}
.erpp-towns{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0!important;margin:24px 0}.erpp-towns li{border-left:2px solid var(--erpp-red);padding:6px 12px;margin:0;background:var(--erpp-paper);font-size:15px;font-weight:700}.erpp-towns small{font-weight:400;color:#58636a}
.erpp-offices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.erpp-office{border:1px solid var(--erpp-line);background:white;min-width:0;align-self:start}.erpp-office:only-child{grid-column:1/-1}.erpp-office-media{position:relative}.erpp-office-media img{display:block;width:100%;height:auto;aspect-ratio:1408/804;object-fit:cover;border-radius:0!important}.erpp .erpp-phone{display:inline-flex;align-items:center;background:var(--erpp-red);color:#fff!important;padding:10px 15px;font:700 21px/1.3 Arial,sans-serif;text-decoration:none!important;position:relative;margin:-23px 22px 0;z-index:1;white-space:nowrap}.erpp-office:not(:has(.erpp-office-media)) .erpp-phone{margin-top:22px}.erpp-office-body{padding:24px}.erpp-office-body address{font-style:normal;font-size:16px;margin-bottom:16px}.erpp-office-body .erpp-btn{width:100%;padding:12px!important}.erpp-office .erpp-kicker{font-size:11px!important}
.erpp .erpp-btn,.erpp .fusion-button{display:inline-flex;align-items:center;justify-content:center;background:var(--erpp-red)!important;color:#fff!important;border:2px solid var(--erpp-red)!important;border-radius:0!important;min-height:48px;padding:13px 23px!important;font:700 16px/1.4 Arial,sans-serif!important;text-decoration:none!important;text-align:center;box-shadow:none!important;white-space:normal!important;max-width:100%;transition:background .2s,color .2s}.erpp .fusion-button span{color:inherit!important;font:inherit!important}.erpp .fusion-button.erpp-outline{background:white!important;color:var(--erpp-red)!important}.erpp .erpp-btn:hover,.erpp .fusion-button:hover,.erpp .erpp-phone:hover{background:var(--erpp-ink)!important;border-color:var(--erpp-ink)!important;color:white!important}.erpp a:focus-visible{outline:3px solid var(--erpp-red);outline-offset:4px}
.erpp .erpp-faq .panel{box-shadow:none;border-radius:0}.erpp .erpp-faq .panel-title{font:700 18px/1.4 Arial,sans-serif!important;margin:0!important}.erpp .erpp-faq .panel-title a{padding:22px 0!important;color:var(--erpp-ink)!important}.erpp .erpp-faq .panel-body{font:16px/1.7 Arial,sans-serif;padding-bottom:24px!important}.erpp .erpp-faq .fusion-toggle-icon-wrapper{margin-right:14px}.erpp .erpp-faq .fa-fusion-box{background:transparent!important;color:var(--erpp-red)!important}
.erpp .erpp-final{background:var(--erpp-red)!important;padding:38px!important;margin:0 28px 32px!important;width:calc(100% - 56px)!important}.erpp .erpp-final h2,.erpp .erpp-final p{color:white!important}.erpp .erpp-final h2{font-size:30px!important}.erpp .erpp-final .fusion-button{background:white!important;color:var(--erpp-red)!important;border-color:white!important}
@media(max-width:900px){.erpp .erpp-portrait-col>.fusion-column-wrapper{padding:24px 20px!important}.erpp .erpp-portrait{width:165px;height:165px}.erpp .erpp-hero h1{font-size:38px!important}.erpp .erpp-card>.fusion-column-wrapper{padding:24px!important}.erpp-offices{grid-template-columns:1fr}}
@media(max-width:640px){.erprof-private-preview #main{padding-left:0!important;padding-right:0!important}.erpp{padding:0 0 24px;font-size:16px}.erpp .fusion-fullwidth{padding:38px 20px!important}.erpp .fusion-builder-row{gap:24px 0}.erpp .fusion-layout-column{width:100%!important;margin-left:0!important;margin-right:0!important}.erpp .fusion-column-wrapper{margin-left:0!important;margin-right:0!important;padding:0!important}.erpp .fusion-text{font-size:16px}.erpp .erpp-hero h1{font-size:34px!important}.erpp .erpp-hero{padding-top:4px!important;padding-bottom:30px!important}.erpp .erpp-compact{padding-top:12px!important;padding-bottom:16px!important}.erpp .erpp-portrait-col>.fusion-column-wrapper{padding:16px!important;max-width:none}.erpp .erpp-portrait-col .fusion-text{display:flex;align-items:center;gap:18px}.erpp .erpp-portrait-col .fusion-text>p:empty{display:none}.erpp .erpp-portrait{width:115px;height:115px;margin:0;flex:0 0 115px}.erpp .erpp-caption{margin:0;text-align:left}.erpp-portrait-placeholder{width:115px;height:115px;min-height:0;flex:0 0 115px;font-size:60px}.erpp-preview-note{margin:16px 20px 0;padding:16px}.erpp-preview-note a{display:block;margin:8px 0 0}.erpp-facts{display:block;margin-bottom:24px}.erpp-fact{padding:15px 20px;border-right:0;border-bottom:1px solid var(--erpp-line);display:flex;align-items:center;gap:16px}.erpp-fact:last-child{border-bottom:0}.erpp-fact strong{font-size:24px;margin:0;flex:0 0 75px}.erpp-jump{gap:14px 22px}.erpp .fusion-button{width:100%;margin-right:0!important}.erpp-office-body{padding:22px}.erpp .erpp-final{margin:0 20px 32px!important;padding:28px 24px!important;width:calc(100% - 40px)!important}.erpp .erpp-final h2{font-size:27px!important}.erpp .erpp-final .fusion-builder-row{margin:0!important}}
@media(prefers-reduced-motion:reduce){.erpp *{scroll-behavior:auto!important;transition:none!important}}
/* wpautop wraps the portrait in a paragraph: keep that flex item from shrinking. */
@media(max-width:640px){.erpp .erpp-portrait-col .fusion-text>p:has(.erpp-portrait){flex:0 0 115px;width:115px;margin:0}.erpp .erpp-portrait-col .erpp-caption{flex:1;min-width:0}}
/* The portrait is an identity block, not an interactive Avada card. */
.erpp .erpp-portrait-col{align-self:flex-start!important;filter:none!important;transform:none!important}
.erpp .erpp-portrait-col>.fusion-column-wrapper{background:#e9edef!important;border:0!important;border-bottom:5px solid var(--erpp-red)!important;border-radius:0!important;box-shadow:none!important;transform:none!important;filter:none!important;backdrop-filter:none!important;opacity:1!important;transition:none!important;animation:none!important;cursor:default}
.erpp .erpp-portrait-col .erpp-portrait,.erpp .erpp-portrait-col .erpp-caption{transform:none!important;filter:none!important;opacity:1!important;transition:none!important;animation:none!important}
.erpp .erpp-portrait-col .erpp-caption{color:var(--erpp-ink)!important}
/* Tablet and phone: identify the teacher before the long introduction and CTAs. */
@media(max-width:1024px){
 .erpp .erpp-hero>.fusion-builder-row{row-gap:24px}
 .erpp .erpp-hero>.fusion-builder-row>.fusion-layout-column{width:100%!important;margin-left:0!important;margin-right:0!important}
 .erpp .erpp-hero>.fusion-builder-row>.erpp-portrait-col{order:-1!important}
 .erpp .erpp-hero .fusion-column-wrapper{margin-left:0!important;margin-right:0!important}
 .erpp .erpp-portrait-col>.fusion-column-wrapper{max-width:none;width:100%;padding:16px 20px!important}
 .erpp .erpp-portrait-col .fusion-text{display:flex;align-items:center;gap:20px}
 .erpp .erpp-portrait-col .fusion-text>p:empty{display:none}
 .erpp .erpp-portrait-col .fusion-text>p:has(.erpp-portrait){flex:0 0 112px;width:112px;margin:0}
 .erpp .erpp-portrait-col .erpp-portrait,.erpp .erpp-portrait-col .erpp-portrait-placeholder{width:112px;height:112px;margin:0;flex:0 0 112px}
 .erpp .erpp-portrait-col .erpp-caption{flex:1;min-width:0;margin:0;text-align:left;font-size:16px}
 .erpp .erpp-portrait-col .erpp-caption strong{font-size:22px}
}
@media(max-width:480px){
 .erpp .erpp-portrait-col>.fusion-column-wrapper{padding:14px!important}
 .erpp .erpp-portrait-col .fusion-text{gap:14px}
 .erpp .erpp-portrait-col .fusion-text>p:has(.erpp-portrait){flex-basis:84px;width:84px}
 .erpp .erpp-portrait-col .erpp-portrait,.erpp .erpp-portrait-col .erpp-portrait-placeholder{width:84px;height:84px;flex-basis:84px}
 .erpp .erpp-portrait-col .erpp-caption{font-size:14px;line-height:1.45}
 .erpp .erpp-portrait-col .erpp-caption strong{font-size:20px}
}
/* One answer: use the whole row, with a compact question/answer layout. */
.erpp .erpp-single-answer{padding-top:38px!important;padding-bottom:38px!important}
.erpp .erpp-single-answer>.fusion-builder-row{row-gap:24px}
.erpp .erpp-single-answer .fusion-title{margin-top:0!important;margin-bottom:0!important}
.erpp .erpp-single-answer h2,.erpp .erpp-single-answer h3{margin-bottom:0!important}
.erpp .erpp-single-answer .erpp-card>.fusion-column-wrapper,.erpp .erpp-single-answer .erpp-text-column>.fusion-column-wrapper{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:0 32px;align-content:start;align-items:start}
.erpp .erpp-single-answer .erpp-card .fusion-text,.erpp .erpp-single-answer .erpp-text-column .fusion-text{grid-column:2}
@media(max-width:800px){.erpp .erpp-single-answer{padding-top:30px!important;padding-bottom:30px!important}.erpp .erpp-single-answer>.fusion-builder-row{row-gap:20px}.erpp .erpp-single-answer .erpp-card>.fusion-column-wrapper,.erpp .erpp-single-answer .erpp-text-column>.fusion-column-wrapper{grid-template-columns:minmax(0,1fr);gap:16px}.erpp .erpp-single-answer .erpp-card .fusion-text,.erpp .erpp-single-answer .erpp-text-column .fusion-text{grid-column:1}}
/* Structured information: subjects as a grid, needs in a distinct horizontal panel. */
.erpp #matieres .fusion-title,.erpp #secteur .fusion-title{margin-top:0!important;margin-bottom:20px!important}
.erpp #matieres h2,.erpp #matieres h3,.erpp #secteur h2{margin-bottom:0!important}
.erpp .erpp-subjects-panel>.fusion-column-wrapper{border:0;padding:0!important;background:none;height:auto}
.erpp .erpp-subjects-panel>.fusion-column-wrapper>.fusion-text{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:20px}
.erpp .erpp-subjects-panel .erpp-subject,.erpp .erpp-subjects-panel .erpp-subject:first-child{padding:22px;background:var(--erpp-paper);border:1px solid var(--erpp-line);border-top:3px solid var(--erpp-red)}
.erpp .erpp-subjects-panel .erpp-subject h4{font-size:19px!important;margin-bottom:14px}
.erpp .erpp-subjects-panel .erpp-subject h4+p{font-weight:700;color:var(--erpp-red);margin-bottom:14px;font-size:15px}
.erpp .erpp-subjects-panel .erpp-competencies{grid-column:1/-1;padding-top:8px}
.erpp .erpp-subjects-panel .erpp-competencies h3{margin:0 0 20px!important}
.erpp .erpp-subjects-panel .erpp-competencies ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;padding:0;list-style:none;margin:0}
.erpp .erpp-subjects-panel .erpp-competencies li{margin:0;padding:0 0 0 16px;border-left:3px solid var(--erpp-red);font-size:15px;line-height:1.6}
.erpp .erpp-needs-panel>.fusion-column-wrapper{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,2.5fr);gap:24px;padding:26px!important;background:var(--erpp-paper);border:0;border-left:3px solid var(--erpp-red);height:auto}
.erpp #matieres .erpp-needs-panel .fusion-title{margin:0!important}
/* Towns remain in the HTML, with a native accessible disclosure for long lists. */
.erpp .erpp-towns-panel .erpp-towns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0}
.erpp .erpp-towns-panel .erpp-towns li{font-size:15px;line-height:1.5;padding:9px 12px;overflow-wrap:anywhere}
.erpp .erpp-towns-panel .erpp-towns small{display:block;font-size:13px}
.erpp-towns-more{margin:0 0 10px}
.erpp-towns-more summary{width:fit-content;max-width:100%;cursor:pointer;color:var(--erpp-red);font-weight:700;font-size:15px;padding:10px 0;text-underline-offset:4px}
.erpp-towns-more summary:hover{text-decoration:underline}
.erpp-towns-more summary:focus-visible{outline:3px solid var(--erpp-red);outline-offset:4px}
.erpp .erpp-offices-panel .erpp-offices{align-items:start}
@media(min-width:801px){.erpp .erpp-offices-panel .erpp-office:only-child:has(.erpp-office-media){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);align-items:stretch}.erpp .erpp-offices-panel .erpp-office:only-child .erpp-office-media{grid-column:1;grid-row:1;min-height:240px}.erpp .erpp-offices-panel .erpp-office:only-child .erpp-office-media img{height:100%;width:100%;object-position:50% 42%}.erpp .erpp-offices-panel .erpp-office:only-child:has(.erpp-office-media) .erpp-phone{grid-column:1;grid-row:1;align-self:end;justify-self:start;margin:0 20px 20px;font-size:22px}.erpp .erpp-offices-panel .erpp-office:only-child:has(.erpp-office-media) .erpp-office-body{grid-column:2;grid-row:1;padding:28px 32px}.erpp .erpp-offices-panel .erpp-office:only-child .erpp-office-body .erpp-btn{width:auto}}
@media(max-width:800px){.erpp .erpp-subjects-panel>.fusion-column-wrapper>.fusion-text{grid-template-columns:minmax(0,1fr)}.erpp .erpp-subjects-panel .erpp-competencies ul{grid-template-columns:minmax(0,1fr)}.erpp .erpp-needs-panel>.fusion-column-wrapper{grid-template-columns:minmax(0,1fr);gap:16px;padding:24px!important}.erpp .erpp-towns-panel .erpp-towns{grid-template-columns:repeat(2,minmax(0,1fr))}.erpp .erpp-offices-panel .erpp-office-body{padding:24px}.erpp .erpp-offices-panel .erpp-office-body h3{font-size:23px!important}}

/* 1.13: selected service links, separate from expertise badges. */
.erpp .erpp-services{grid-column:1/-1;border-top:1px solid #d8dde0;margin-top:24px;padding-top:18px}.erpp .erpp-services p{margin:0 0 10px}.erpp .erpp-services ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;list-style:none;margin:0;padding:0}.erpp .erpp-services li{margin:0}.erpp .erpp-services a{display:flex;align-items:center;gap:8px;height:100%;padding:14px 16px;background:var(--erpp-paper);border-left:3px solid #C0172A;color:#C0172A;font-weight:700;text-underline-offset:4px;line-height:1.5;overflow-wrap:anywhere}.erpp .erpp-services a:focus-visible{outline:2px solid #C0172A;outline-offset:4px}

/* Historical rating plugin appends an empty review form to the Avada header
   on migrated posts. Keep the approved profile layout, without a 0/5 widget. */
body.erprof-profile-view .rwp-review-wrap{display:none!important}
