:root{--red:#e60019;--ink:#171719;--muted:#66666b;--line:#e4e4e6;--paper:#fff;--wash:#f5f5f5}
*{box-sizing:border-box}
body{margin:0;background:var(--wash);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;border-top:5px solid var(--red)}
.page{max-width:960px;margin:auto;background:var(--paper);padding:0 56px}
.brand{padding:38px 0 34px;border-bottom:1px solid var(--line);text-align:center}
.logo{display:block;width:min(100%,470px);height:auto;margin:auto}
.intro{padding:32px 0 28px}
.eyebrow,.role{font-size:.75rem;font-weight:700;letter-spacing:.13em;margin:0 0 10px}
.eyebrow{color:var(--red)}
h1{font-size:clamp(2rem,5vw,3rem);font-weight:500;letter-spacing:-.045em;line-height:1.12;margin:0}
.cabinet-grid,.expert-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.detail{border-top:2px solid var(--ink);padding:18px 0 28px;display:flex;flex-direction:column;align-items:flex-start}
.number{color:var(--red);font-size:.8rem;font-weight:700;letter-spacing:.07em}
h2{font-size:1.3rem;line-height:1.3;letter-spacing:-.025em;margin:8px 0 12px}
.detail p,address{font-style:normal;margin:0 0 20px;overflow-wrap:anywhere;color:var(--muted)}
.button{min-height:48px;width:100%;padding:11px 18px;display:flex;justify-content:space-between;gap:12px;align-items:center;text-decoration:none;font-weight:700;border:1px solid var(--red);margin-top:auto;border-radius:3px}
.primary{background:var(--red);color:white}.secondary{color:var(--ink);border-color:var(--line);background:white}
.button[href]:hover{background:var(--ink);border-color:var(--ink);color:white}
a[aria-disabled=true]{opacity:.55;cursor:default}
a:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.team{border-top:1px solid var(--line);padding:26px 0 32px}
.section-heading{display:flex;align-items:baseline;gap:14px;margin-bottom:20px}.section-heading h2{margin:0}
.expert{padding:22px;background:var(--wash);border-left:2px solid var(--red)}
.role{color:var(--muted);font-size:.75rem;letter-spacing:.06em}
h3{margin:0 0 10px;font-size:1.2rem;line-height:1.4;letter-spacing:-.02em;overflow-wrap:anywhere}
.email{font-size:.875rem;color:var(--muted);margin:0 0 18px;overflow-wrap:anywhere}
.email-link{display:flex;gap:12px;justify-content:space-between;align-items:center;min-height:44px;color:var(--red);font-size:.875rem;font-weight:700;text-decoration:underline;text-underline-offset:4px}
footer{border-top:1px solid var(--line);padding:24px 0 30px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--muted);font-size:.8rem}
footer img{width:76px;height:auto;flex-shrink:0}.footer-dot{color:var(--red);padding:0 7px}.footer-description{display:inline-block;margin-top:6px;font-size:.875rem;line-height:1.6;max-width:420px}.site-address{color:var(--muted);text-underline-offset:3px;display:inline-block;padding:8px 0}
[hidden]{display:none!important}.noscript{padding:16px;border:1px solid var(--line)}
@media(max-width:620px){.page{padding:0 24px}.brand{padding:28px 0 26px}.intro{padding:28px 0 24px}.cabinet-grid,.expert-grid{grid-template-columns:1fr;gap:0}.detail{padding-bottom:24px}.team{padding-top:24px}.expert-grid{gap:14px}.expert{padding:20px}.section-heading{gap:10px}footer{gap:16px}footer>span{max-width:220px}.footer-dot{padding:0 3px}}
@media(max-width:360px){.page{padding:0 18px}h2{font-size:1.2rem}}
@media print{body{background:white;border-top:0}.page{padding:0 24px}.button,.email-link{display:none}.expert{break-inside:avoid}}

/* Variante : logo EC à côté du titre. */
.intro{display:flex;align-items:center;justify-content:space-between;gap:20px}.intro>div{min-width:0}.intro-ec{width:104px;height:auto;flex-shrink:0}
@media(max-width:620px){.intro{gap:12px}.intro-ec{width:68px}.intro h1{font-size:clamp(1.65rem,6.5vw,2rem)}}

/* Logo centré dans la seconde colonne, alignée avec Nous trouver. */
.intro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}.intro-ec{justify-self:center}
@media(max-width:620px){.intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.intro h1{font-size:clamp(1.3rem,5.5vw,2rem)}}

/* Logo EC agrandi, toujours contenu dans sa colonne. */
.intro-ec{width:150px;max-width:100%;height:auto}
@media(max-width:620px){.intro-ec{width:96px}}

/* Variante B : domaines du cabinet et ronds sur les actions. */
.expertise-domains{font-size:.875rem;font-weight:700;line-height:1.7;letter-spacing:.035em;margin:18px 0 0;overflow-wrap:anywhere}
.action-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:currentColor;flex-shrink:0}
@media(max-width:620px){.expertise-domains{font-size:.875rem;letter-spacing:0;line-height:1.6;margin-top:14px}}
