/* 1.7.15 : finitions dans la palette et les formes du thème d’origine. */
:root { --header-height:66px; }
.header-inner { padding-block:4px; }
.header-boat { top:auto;bottom:-10px;width:54px;height:50px;pointer-events:none; }
.header-boat svg { width:54px;height:50px; }
/* Introduction directement sur la photographie, sans encart ni surtitre. */
.home-hero--photo-fullscreen .hero-photo-fullscreen-note {
 background:none;border:0;border-block:1px solid rgba(211,190,132,.75);border-radius:0;padding:18px 0;box-shadow:none;color:#fffaf1;
 font-family:var(--font-serif);font-size:clamp(20px,1.55vw,24px);line-height:1.5;
 max-width:31ch;text-align:left!important;text-shadow:0 1px 4px rgba(0,0,0,.9),0 2px 18px rgba(0,0,0,.6);
}

.home-hero--photo-fullscreen .hero-photo-fullscreen-note::before { content:none;display:none; }
.home-hero--photo-fullscreen .hero-photo-fullscreen-media::after {
 background:linear-gradient(90deg,rgba(8,20,16,.25),rgba(8,20,16,.28) 50%,rgba(8,20,16,.62));
}
/* Six cartes compactes, avec des lignes de texte maîtrisées. */
.widgets-grid .widget-card { height:252px;min-height:252px;padding:22px; }
.widgets-grid .home-card { display:flex;flex-direction:column;justify-content:flex-start;gap:0; }
.widgets-grid .home-card > strong { flex:0 0 auto;font-size:29px;line-height:1.1;margin:17px 0 0;max-width:16ch; }
.widgets-grid .home-card .home-card-text { display:block;margin:12px 0 0;font-size:13px;line-height:1.45;max-width:27ch; }
.widgets-grid .home-card > em { margin-top:auto;padding-top:14px;line-height:1.45; }
.home-card em::after { content:" ↗";font-style:normal; }
.map-widget em::after,.gallery-widget em::after { content:none; }
.widgets-grid .home-card--cabinet { isolation:isolate;overflow:hidden;background:#173d32; }
.widgets-grid .home-card--cabinet > .home-card-cabinet-portrait {
 position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;
 object-position:center 70%;opacity:.60;filter:grayscale(1);mix-blend-mode:luminosity;z-index:0;pointer-events:none;
}
.widgets-grid .home-card--cabinet > .home-card-cabinet-wash { position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(12,32,26,.82),rgba(12,32,26,.5) 42%,rgba(12,32,26,.02)); }
.widgets-grid .home-card--cabinet > :not(.home-card-cabinet-portrait):not(.home-card-cabinet-wash) { position:relative;z-index:2; }
.widgets-grid .home-card--cabinet strong { max-width:10ch;font-size:30px; }
.widgets-grid .home-card--cabinet .home-card-text { max-width:20ch;color:#f7f3eb; }
.widgets-grid .home-card--cabinet em,.widgets-grid .home-card--cabinet .widget-kicker { color:#faf7ef; }
.home-card--expertises { background:linear-gradient(140deg,#f8f5ed 55%,#e7ece4); }
.widgets-grid .home-card--expertises strong { white-space:pre-line; }
.widgets-grid .home-card--veille { background:linear-gradient(150deg,#f8f5ed,#ede6d6); }
.widgets-grid .home-card--veille strong { max-width:13ch; }
.widgets-grid .home-card--contact-strong { background:linear-gradient(145deg,#173d32,#102e26); }
.widgets-grid .home-card--contact-strong strong { margin-block:auto;max-width:13ch; }
.widgets-grid .home-card--contact-strong em,.widgets-grid .home-card--contact-strong .widget-kicker { color:#faf7ef; }
.widgets-grid .gallery-widget .gallery-playback { position:absolute;inset:18px 18px auto auto;transform:none;width:36px;height:36px;min-width:36px;max-width:36px;padding:0;border-radius:50%;display:grid;place-items:center;z-index:5; }
.widgets-grid .gallery-widget .widget-kicker,.widgets-grid .gallery-widget em { color:#faf7ef; }
.widgets-grid .gallery-widget .widget-kicker { margin-right:54px; }
.widgets-grid .gallery-widget > strong { margin-block:auto; }
.widgets-grid .home-card--marseille .home-card-address { font-size:22px;max-width:none; }
.home-feature-panel { min-height:280px;padding:30px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:16px; }
.home-feature-panel h3 { margin:0;font-family:var(--font-serif);font-size:27px;font-weight:400;letter-spacing:-.025em;line-height:1.2;color:var(--color-green); }
.home-feature-panel p { margin:0;line-height:1.7; }
.home-feature-panel .section-kicker { font-size:10px; }
.home-feature-panel .button { margin-top:4px; }
.home-feature-panel .home-contact-direct { font-size:15px;line-height:1.8;text-align:left; }
/* Cabinet : arrondis et cartes ivoire comme dans le thème. */
.cabinet-hero .page-title-lines { font-size:clamp(36px,5vw,66px);line-height:1.08; }
.cabinet-hero__grid { grid-template-columns:1fr; }
.cabinet-hero { padding-bottom:24px; }
.cabinet-mode-editorial .cabinet-lawyer-layout { grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr);gap:26px;align-items:start; }
.cabinet-mode-editorial .cabinet-lawyer-layout.has-photo > .cabinet-lawyer-photo-card,
.cabinet-mode-editorial .cabinet-lawyer-layout.has-photo > .cabinet-lawyer-card { grid-column:auto;grid-row:auto;width:100%;min-width:0; }
.cabinet-mode-editorial .cabinet-lawyer-card { padding:30px;border-radius:28px;background:rgba(249,246,238,.97);height:auto;align-self:start; }
.cabinet-mode-editorial .cabinet-lawyer-photo-card { margin:0;padding:0;height:auto;min-height:0;aspect-ratio:3/4;border-radius:28px;align-self:start; }
.cabinet-mode-editorial .cabinet-lawyer-photo__image { width:100%;height:100%;object-fit:cover;object-position:center 58%; }
.cabinet-mode-editorial .cabinet-profile-card { padding:28px;border-radius:28px;background:rgba(249,246,238,.97); }
.cabinet-profile-grid { margin-top:26px;gap:26px; }
.cabinet-profile-card h3 { font-size:27px;line-height:1.15; }
.cabinet-profile-card__lines { font-size:14px;line-height:1.75; }
.cabinet-profile-card__lines > span + span { margin-top:16px; }
.cabinet-profile-card__lines strong { font-weight:600;color:var(--color-green); }
.cabinet-lawyer-text p { font-size:16px;line-height:1.75;max-width:68ch;text-align:justify;hyphens:auto;-webkit-hyphens:auto; }
.cabinet-lawyer-text p + p { margin-top:18px; }
.cabinet-parcours-anchor { display:block;scroll-margin-top:135px; }
.cabinet-mode-editorial .cabinet-lawyer-layout.is-text-only { grid-template-columns:1fr; }
/* Expertises : quelques thèmes clairement séparés, sans listes redondantes. */
.expertise-detail-hero .page-title-lines,.expertises-hero .page-title-lines { font-size:clamp(39px,5vw,68px);line-height:1.07; }
.expertise-detail-hero .hero-note,.expertises-hero .expertises-hero__note { font-size:18px;line-height:1.6;max-width:35ch; }
.expertise-detail-intro { max-width:800px;padding:18px 22px;background:rgba(249,246,238,.90);border-radius:16px; }
.expertise-detail-intro::before { display:none; }
.expertise-detail-intro p:first-child,.expertise-detail-intro p + p { font-family:var(--font-sans);font-size:17px;line-height:1.7;letter-spacing:0;color:#34443c; }
.expertise-detail-prose { width:100%;max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:30px; }
.expertise-detail-prose__section { padding:25px;border:1px solid rgba(23,61,50,.08);border-radius:26px;background:rgba(249,246,238,.96); }
.expertise-detail-prose__section h2 { font-size:27px;line-height:1.18;margin-bottom:14px; }
.expertise-detail-prose__section p { font-size:16px;line-height:1.75;text-align:justify;hyphens:auto;-webkit-hyphens:auto;color:#34443c; }
.expertise-detail-cta { margin-top:30px; }
.expertise-related { margin-top:48px; }
/* Contact : deux cartes accueillantes et des réponses directement lisibles. */
.contact-refined .page-hero { padding-bottom:24px; }
.contact-refined .page-title-lines { font-size:clamp(40px,5vw,68px); }
.contact-intro { max-width:66ch;margin:22px 0 0;font-size:17px;line-height:1.7; }
.contact-refined .page-content { padding-top:20px; }
.contact-refined-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;align-items:stretch; }
.contact-refined-grid .content-card { border-radius:28px;padding:30px;background:rgba(249,246,238,.97);display:flex;flex-direction:column;align-items:flex-start;gap:18px; }
.contact-refined h2 { font-size:32px;line-height:1.12;margin:0; }
.contact-refined .section-kicker { margin:0; }
.contact-refined-direct .contact-refined-coordinates { display:grid;gap:10px;margin:8px 0;font-size:20px;overflow-wrap:anywhere; }
.contact-refined-direct > p:not(.section-kicker) { max-width:45ch;font-size:16px;line-height:1.75; }
.contact-refined-direct .contact-actions { margin-top:auto; }
.contact-refined .contact-vcard-action { font-size:12px;margin:0; }
.contact-refined-access address { font-style:normal;font-size:18px;line-height:1.65; }
.contact-refined-access .contact-map { width:100%;height:210px;min-height:210px;border-radius:18px;margin:0; }
.contact-refined-access .map-consent-layer p { font-size:12px;line-height:1.5; }
.contact-refined-access .contact-itinerary { font-size:13px; }
.single-analysis__body > p,.legal-card p:not(:has(br)):not(:has(strong)) { font-size:16px;line-height:1.8;max-width:70ch;text-align:justify;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word; }
.single-analysis__body > p + p,.legal-card p + p { margin-top:16px; }
@media(max-width:900px) {
 .cabinet-mode-editorial .cabinet-lawyer-layout { grid-template-columns:1fr; }
 .cabinet-mode-editorial .cabinet-lawyer-photo-card { max-width:400px;width:100%;aspect-ratio:4/5; }
 .contact-refined-grid { grid-template-columns:1fr; }
 .header-inner { padding-block:4px; }
}
@media(max-width:760px) {
 :root { --header-height:66px; }
 .widgets-grid .widget-card { height:252px;min-height:252px; }
 .home-hero--photo-fullscreen .hero-photo-fullscreen-note { font-size:19px;max-width:34ch; }
 .expertise-detail-prose { grid-template-columns:1fr; }
 .expertise-detail-prose__section { padding:22px; }
 .expertise-detail-prose__section h2 { font-size:25px; }
 .expertise-detail-intro p:first-child { font-size:16px; }
 .cabinet-lawyer-text p,.expertise-detail-prose__section p,.single-analysis__body > p,.legal-card p:not(:has(br)):not(:has(strong)) { text-align:left; }
 .contact-refined-grid .content-card,.cabinet-mode-editorial .cabinet-lawyer-card,.cabinet-mode-editorial .cabinet-profile-card { padding:24px; }
 
 .contact-refined h2 { font-size:28px; }
 .contact-refined-direct .contact-refined-coordinates { font-size:17px; }
 .home-feature-panel { padding:26px;min-height:260px; }
}

/* Keep the full photo width while leaving room for the sailboat. */
.home-hero--photo-fullscreen .hero-photo-fullscreen-media.is-position-center .hero-photo-fullscreen__image {
  object-position:center 90%;
}
@media(min-width:761px) {
  .home-hero--photo-fullscreen .hero-photo-fullscreen-media.is-position-center .hero-photo-fullscreen__image {
    width:100%;
    object-position:center bottom;
  }
}
@media(min-width:1101px) {
  .home-hero--photo-fullscreen .hero-photo-fullscreen-words {
    font-size:clamp(76px, 6.5vw, 104px);
  }
}
.home-hero--photo-fullscreen::after { height:72px; }
@media(max-width:760px) {
  .home-hero--photo-fullscreen .hero-photo-fullscreen-media.is-position-center .hero-photo-fullscreen__image {
    object-position:40% center;
  }
}

/* A quiet, consistent language control in the header and menu. */
.header-actions .language-switch,
.menu-foot .menu-language-switch {
  display:inline-grid;
  grid-template-columns:repeat(2,31px);
  align-items:center;
  gap:2px;
  min-height:34px;
  padding:3px;
  border:1px solid rgba(23,61,50,.16);
  border-radius:999px;
  background:rgba(23,61,50,.045);
  box-sizing:border-box;
  letter-spacing:0;
  line-height:1;
  text-transform:uppercase;
}
.header-actions .language-switch:has(a:only-child),
.menu-foot .menu-language-switch:has(a:only-child) { grid-template-columns:31px; }
.header-actions .language-switch a,
.menu-foot .menu-language-switch a {
  display:grid;
  place-items:center;
  min-height:26px;
  padding:0;
  border-radius:999px;
  color:#596b61;
  font:700 10px/1 var(--font-sans);
  letter-spacing:.04em;
  text-decoration:none;
  transition:background-color .18s ease,color .18s ease;
}
.header-actions .language-switch a[aria-current="page"],
.menu-foot .menu-language-switch a[aria-current="page"] {
  background:var(--color-green);
  color:#faf7ef;
}
.header-actions .language-switch a:not([aria-current="page"]):hover,
.menu-foot .menu-language-switch a:not([aria-current="page"]):hover {
  background:rgba(164,124,42,.13);
  color:#7e5e20;
}
.header-actions .language-switch a:focus-visible,
.menu-foot .menu-language-switch a:focus-visible { outline:2px solid var(--color-gold);outline-offset:2px; }
@media(max-width:760px) {
  .header-actions .language-switch { display:none; }
  .menu-panel { position:relative; }
  .menu-foot .menu-language-switch {
    position:absolute;
    top:18px;
    right:22px;
    z-index:3;
    grid-template-columns:repeat(2,34px);
    min-height:38px;
  }
  .menu-foot .menu-language-switch:has(a:only-child) { grid-template-columns:34px; }
  .menu-foot .menu-language-switch a { min-height:30px; }
}
.widgets-grid .home-card--cabinet > .home-card-cabinet-portrait { object-position:center 48%; }
.widgets-grid .home-card--marseille .home-card-address { margin-top:12px; }
.contact-refined .section-kicker { font-size:10px;letter-spacing:.19em; }
.cabinet-mode-editorial .cabinet-lawyer-layout.has-photo > .cabinet-lawyer-photo-card,
.cabinet-mode-editorial .cabinet-lawyer-layout.has-photo > .cabinet-lawyer-card { height:auto;align-self:start; }
@media(max-width:560px) {
 .widgets-grid .home-card--marseille .home-card-address { font-size:19px;margin-top:7px; }
 .widgets-grid .home-card--marseille > em { padding-top:6px; }
}
#acces-rapides { scroll-margin-top:var(--header-height); }

/* 1.7.15 : la même sérif, les mêmes accents et des coordonnées composées. */
.home-feature-panel h3 a { color:inherit;text-decoration:none;font:inherit; }
.home-feature-panel h3 a:hover { color:var(--color-gold); }
.home-feature-panel > p:not(.section-kicker) { font-size:15px;max-width:56ch; }
.home-feature-panel { gap:18px; }
.home-feature-panel .is-gold { color:var(--color-gold); }
.contact-link-list { width:100%;display:grid;gap:0;margin:2px 0; }
.contact-link-list .contact-link-row { display:grid;grid-template-columns:64px minmax(0,1fr) 16px;align-items:center;gap:12px;min-height:54px;padding:12px 0;border-bottom:1px solid rgba(159,137,77,.26);color:var(--color-green);text-decoration:none; }
.contact-link-label { font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#786438; }
.contact-link-value { font-family:var(--font-sans);font-size:15px;font-weight:400;line-height:1.5;overflow-wrap:anywhere; }
.contact-link-row:hover .contact-link-value { text-decoration:underline;text-underline-offset:4px; }
.contact-link-row:focus-visible,.home-feature-panel h3 a:focus-visible { outline:2px solid var(--color-gold);outline-offset:5px;border-radius:3px; }
.contact-refined h2 { font-family:var(--font-serif);font-weight:400;font-size:32px;letter-spacing:-.025em; }
.contact-refined-access { position:relative; }
.contact-refined-access h2,.contact-refined-access address { padding-right:160px; }
.contact-signature-mark { position:absolute;right:30px;top:26px;width:140px;height:152px;object-fit:contain; }
.contact-refined .contact-vcard-action { margin-top:auto;text-decoration:none;border-bottom:1px solid rgba(159,137,77,.45);padding-bottom:4px; }
.veille-hero__grid { display:block; }
.veille-hero .veille-hero__note { max-width:62ch;margin:24px 0 0;padding:0;font:16px/1.7 var(--font-sans); }
#veille,#contact { scroll-margin-top:calc(var(--header-height) + 48px); }
@media(max-width:760px) {
 .home-feature-panel h3 { font-size:25px; }
 .contact-refined h2 { font-size:28px; }
 .contact-link-list .contact-link-row { grid-template-columns:minmax(0,1fr) 16px;gap:4px 10px; }
 .contact-link-label { grid-column:1; }
 .contact-link-value { grid-column:1;grid-row:2;font-size:14px; }
 .contact-link-row > span:last-child { grid-column:2;grid-row:1 / 3; }
 .contact-signature-mark { right:24px;top:22px;width:92px;height:100px; }
 .contact-refined-access h2,.contact-refined-access address { padding-right:110px; }
}

/* Signature du menu. */
.menu-foot { display:flex;align-items:center;gap:24px; }
.menu-foot > span:first-of-type { flex:1;min-width:0; }
.menu-social:empty { display:none; }
@media(max-width:900px) {
 .menu-foot { flex-wrap:wrap;gap:14px; }
 .menu-foot > span:first-of-type { order:3;flex-basis:100%; }
}
@media(prefers-reduced-motion:reduce) {
 .gallery-widget .gallery-media img { transition:none;transform:none; }
}

.cabinet-profile-access { margin-top:24px;padding:20px 0;border-top:1px solid rgba(159,137,77,.28);border-bottom:1px solid rgba(159,137,77,.28); }
.cabinet-profile-access .section-kicker { display:block;font-size:10px;margin:0 0 10px; }
.cabinet-profile-link { display:inline-flex;align-items:center;gap:20px;color:var(--color-green);font:20px/1.4 var(--font-serif);text-decoration:none; }
.cabinet-profile-link > span[aria-hidden] { color:var(--color-gold); }
.cabinet-profile-link:hover { color:var(--color-gold); }
.cabinet-profile-link:focus-visible { outline:2px solid var(--color-gold);outline-offset:5px;border-radius:3px; }
@media(max-width:760px) { .cabinet-profile-link { font-size:18px; } }

/* Photo et présentation : une seule rangée, aux bords communs. */
@media(min-width:901px) {
 #presentation.cabinet-lawyer-layout.has-photo { align-items:stretch; }
 #presentation.cabinet-lawyer-layout.has-photo > .cabinet-lawyer-photo-card,
 #presentation.cabinet-lawyer-layout.has-photo > .cabinet-lawyer-card { margin:0;height:auto;align-self:stretch; }
 #presentation.cabinet-lawyer-layout.has-photo > .cabinet-lawyer-photo-card { position:relative;aspect-ratio:auto;min-height:0; }
 #presentation.cabinet-lawyer-layout.has-photo .cabinet-lawyer-photo__image { position:absolute;inset:0;width:100%;height:100%;object-fit:cover; }
}

/* Une signature au terme de la présentation et de chaque analyse. */
.editorial-signature { display:flex;align-items:center;gap:24px;margin:28px 0 0;padding:24px 0 0;border-top:1px solid rgba(159,137,77,.28); }
.editorial-signature > img { flex:0 0 144px;width:144px;height:158px;object-fit:contain; }
.editorial-signature__text { display:grid;gap:5px;min-width:0; }
.editorial-signature__name { font:600 25px/1.35 var(--font-serif);letter-spacing:.05em;color:var(--color-green); }
.editorial-signature__caption,.editorial-signature__text a { font:14px/1.5 var(--font-sans);color:#786438; }
.editorial-signature__text a { text-decoration:none;text-underline-offset:4px; }
.editorial-signature__text a:hover { text-decoration:underline; }
.editorial-signature__text a:focus-visible { outline:2px solid var(--color-gold);outline-offset:4px;border-radius:2px; }
.editorial-signature--article { margin:32px 0;padding:22px 0;border-bottom:1px solid rgba(159,137,77,.28); }
.editorial-signature + .cabinet-profile-access { border-top:0;margin-top:0; }
@media(max-width:760px) {
 .editorial-signature { gap:18px; }
 .editorial-signature > img { flex-basis:88px;width:88px;height:96px; }
 .editorial-signature__name { font-size:18px; }
}

.editorial-signature--article > img { flex-basis:76px;width:76px;height:84px; }
.editorial-signature--article .editorial-signature__name { font-size:18px; }
@media(max-width:760px) {
 .editorial-signature--article > img { flex-basis:64px;width:64px;height:70px; }
 .editorial-signature__caption,.editorial-signature__text a { font-size:12px; }
}

/* Un parcours éditorial, sans cartes de CV ni hauteur artificielle. */
.cabinet-parcours-editorial { display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:40px;align-items:start;margin-top:32px;padding:34px;border-radius:28px;background:rgba(249,246,238,.97);scroll-margin-top:calc(var(--header-height) + 48px); }
.cabinet-parcours-editorial__head .section-kicker { margin:0 0 16px; }
.cabinet-parcours-editorial__head h2 { margin:0;font:400 clamp(34px,3.5vw,48px)/1.08 var(--font-serif);letter-spacing:-.04em; }
.cabinet-parcours-editorial__head h2 span { display:block; }
.cabinet-parcours-editorial__head h2 span:last-child { color:var(--color-gold); }
.cabinet-parcours-editorial__body { min-width:0; }
.cabinet-parcours-editorial__item { margin:0;padding:0;height:auto;min-height:0;scroll-margin-top:calc(var(--header-height) + 48px); }
.cabinet-parcours-editorial__item + .cabinet-parcours-editorial__item { margin-top:24px;padding-top:24px;border-top:1px solid rgba(159,137,77,.28); }
.cabinet-parcours-editorial__item h3 { margin:0 0 14px;color:var(--color-green);font:400 28px/1.2 var(--font-serif);letter-spacing:-.025em; }
.cabinet-parcours-editorial__item p { margin:0;font:16px/1.75 var(--font-sans);color:#34443c;text-align:justify;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word; }
.cabinet-parcours-editorial__item p + p { margin-top:12px; }
@media(max-width:900px) {
 .cabinet-parcours-editorial { grid-template-columns:1fr;gap:24px;padding:26px; }
 .cabinet-parcours-editorial__head h2 span { display:inline; }
 .cabinet-parcours-editorial__head h2 span + span::before { content:" "; }
}
@media(max-width:760px) {
 .cabinet-parcours-editorial { padding:24px; }
 .cabinet-parcours-editorial__item h3 { font-size:25px; }
 .cabinet-parcours-editorial__item p { text-align:left;font-size:15px; }
}


/* Le menu conserve tous ses liens accessibles même dans une fenêtre basse. */
.menu-panel { grid-template-rows:minmax(0,1fr) auto; }
.menu-main { min-height:0;max-height:100%;overflow-y:auto;scrollbar-width:thin; }
@media(max-height:640px) and (min-width:901px) {
}

/* Le menu reprend les dimensions et le survol du bloc-marque du header. */
.menu-foot { flex-wrap:wrap; }
.menu-foot-brand { flex:0 0 auto;max-width:100%; }
.menu-foot-brand .brand-link { max-width:100%; }

/* Présentation simple : un portrait contenu et trois paragraphes courts. */
.cabinet-simple .cabinet-hero { padding-bottom:20px; }
.cabinet-simple .page-title-lines { font:400 clamp(34px,3.4vw,48px)/1.1 var(--font-serif);letter-spacing:-.025em; }
.cabinet-simple .cabinet-page-content { padding-top:16px; }
.cabinet-simple-layout { display:grid;grid-template-columns:minmax(220px,340px) minmax(0,1fr);gap:40px;align-items:start; }
.cabinet-simple-layout.is-text-only { grid-template-columns:minmax(0,1fr); }
.cabinet-simple-photo { margin:0;width:100%;aspect-ratio:4/5;max-height:425px;overflow:hidden;border-radius:24px; }
.cabinet-simple-photo .cabinet-lawyer-photo__image { display:block;position:static;width:100%;height:100%;object-fit:cover;object-position:center 48%; }
.cabinet-simple-copy { min-width:0;padding:0; }
.cabinet-simple-prose { max-width:66ch; }
.cabinet-simple-prose p { margin:0;font:16px/1.75 var(--font-sans);color:#34443c;text-align:justify;hyphens:auto;-webkit-hyphens:auto; }
.cabinet-simple-prose p + p,.cabinet-simple-prose > div { margin-top:18px; }
.cabinet-simple-actions { display:flex;align-items:center;gap:18px;margin-top:24px; }
.cabinet-linkedin-icon { display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;color:var(--color-green);border-radius:5px; }
.cabinet-linkedin-icon:hover { color:var(--color-gold); }
.cabinet-linkedin-icon:focus-visible { outline:2px solid var(--color-gold);outline-offset:3px; }
.cabinet-simple-anchor,#formation,#experience-professionnelle { scroll-margin-top:calc(var(--header-height) + 48px); }
/* Un seul fond pour toute la barre ; le voilier suit le filet sur toute sa largeur. */
.site-header { background:#f7f3eb;backdrop-filter:none;-webkit-backdrop-filter:none; }
.header-inner { position:relative;z-index:2;padding-block:4px; }
.header-inner > .brand-link,.header-inner .header-actions { background:transparent; }
.header-maritime-line { position:absolute;bottom:0;left:0;right:0;z-index:3;pointer-events:none; }
.header-boat { z-index:0;left:0;bottom:-7px;width:34px;height:38px;transform:translateX(var(--aa-sailboat-x,0px));will-change:transform;animation:none; }
.header-boat svg { width:34px;height:38px; }
.widgets-grid .gallery-widget .gallery-media { position:absolute;inset:0;width:100%;height:100%;z-index:0; }
.cabinet-simple-prose p { text-align:left;hyphens:none;-webkit-hyphens:none; }
.contact-refined-direct#preparer { scroll-margin-top:calc(var(--header-height) + 24px); }

/* Photographies éditoriales de la veille et crédits des auteurs. */
.veille-card--editorial { grid-template-rows:auto 1fr; }
.veille-page--editorial .veille-grid--editorial,
.archive .veille-grid--editorial,
.blog .veille-grid--editorial { width:100%; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.veille-card--editorial { min-height:0; border-radius:18px; }
.veille-card--editorial .veille-card__media { aspect-ratio:16 / 9; }
.veille-card--editorial .veille-card__body { min-height:0; gap:10px; padding:17px 18px 19px; }
.veille-card--editorial h2 { font-size:clamp(22px,1.75vw,28px); line-height:1.12; }
.veille-card--editorial .veille-card__body > p:not(.veille-card__meta) { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; font-size:13px; line-height:1.45; }
.veille-card--editorial .veille-card__link { margin-top:2px; }
@media (max-width:900px) {
  .veille-page--editorial .veille-grid--editorial,
  .archive .veille-grid--editorial,
  .blog .veille-grid--editorial { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:620px) {
  .veille-page--editorial .veille-grid--editorial,
  .archive .veille-grid--editorial,
  .blog .veille-grid--editorial { grid-template-columns:1fr; }
}
@media(max-width:900px) {
 .cabinet-simple-layout { grid-template-columns:minmax(0,1fr);gap:26px; }
 .cabinet-simple-photo { width:min(100%,320px);max-height:400px; }
}
@media(max-width:760px) {
 .cabinet-simple-prose p { font-size:15px;line-height:1.7;text-align:left; }
 .cabinet-simple .page-title-lines { font-size:34px; }
 .cabinet-simple-actions { gap:14px; }
}

/* Hauteur compacte explicite ; le rail du voilier reste hors du flux. */
.site-header { min-height:var(--header-height);padding-block:0; }
.site-header .header-inner { min-height:var(--header-height);padding-block:4px; }
@media(max-width:760px) {
 .home-hero--photo-fullscreen .hero-photo-fullscreen-note { padding-block:14px; }
}

/* Mobile navigation: let the whole panel scroll, with a compact reading rhythm. */
@media (max-width: 760px) {
  .menu-overlay { padding: 8px; }
  .menu-panel {
    display: block;
    height: calc(100% - 16px);
    padding: 22px 22px 18px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    border-radius: 22px;
  }
  .menu-main {
    width: 100%;
    max-height: none;
    padding: 0;
    overflow: visible;
  }
  .menu-grid { gap: 18px; }
  .menu-card { padding-bottom: 15px; }
  .menu-card-main { display: block; }
  .menu-card-title { font-size: clamp(30px, 8.2vw, 36px); line-height: 1.05; }
  .menu-card-links { margin-top: 7px; font-size: 14px; line-height: 1.45; }
  .menu-card-links a { min-height: 38px; display: inline-flex; align-items: center; padding: 4px 0; }
  .menu-foot {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 12px;
    align-items: center;
    margin-top: 22px;
    padding-top: 14px;
    font-size: 10px;
  }
  .menu-foot-brand { grid-column: 1; }
  .menu-foot > span:first-of-type { grid-column: 1 / -1; grid-row: 2; }
  .menu-foot > span:nth-of-type(2) { grid-column: 2; grid-row: 1; }
  .menu-social { grid-column: 1 / -1; grid-row: 3; justify-self: start; }
  .menu-foot .brand-block--header .brand-block__mark { width: 38px; height: 36px; flex-basis: 38px; }
  .menu-foot .brand-block--header .brand-block__mark img { max-width: 38px; max-height: 36px; }
  .menu-foot .brand-block--header .brand-block__text { padding-left: 10px; }
  .menu-foot .brand-block--header .brand-block__text::before { height: 26px; }
}

/* Touch screens have no hover: keep the editorial gold rule visible. */
@media (hover: none), (pointer: coarse) {
  .aa-card--interactive::after,
  .cabinet-profile-card::before,
  .cabinet-publication-card::before,
  .domain-grid.page-domains .domain-card::before,
  .expertise-detail-card::before {
    transform: scaleX(1);
    background: rgba(164, 124, 42, .56);
  }
  .menu-card::after { transform: scaleX(.36); }
  .aa-card--interactive:hover,
  .cabinet-profile-card:hover,
  .cabinet-publication-card:hover,
  .domain-grid.page-domains .domain-card:hover,
  .expertise-detail-card:hover { transform: none; }
}

@media (max-width: 360px) {
  .site-header .brand-block--header .brand-block__signature {
    display: grid;
    justify-items: start;
    gap: 1px;
    white-space: nowrap;
  }
  .site-header .brand-block--header .brand-block__text {
    justify-items: start;
  }
}

/* Editorial reading text: justified without automatic word division. */
.site main p,
.site main li,
.site footer p,
.site footer li {
  text-align: justify !important;
  text-justify: inter-word;
  hyphens: none !important;
  -webkit-hyphens: none !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}
.site main :is(h1,h2,h3,h4,h5,h6,p,li),
.site footer :is(h1,h2,h3,h4,h5,h6,p,li) {
  hyphens: none !important;
  -webkit-hyphens: none !important;
  word-break: normal !important;
}
/* Addresses and URLs can be longer than a phone screen. */
.site main a[href^="mailto:"],
.site main a[href^="http:"],
.site main a[href^="https:"],
.site main code,
.site footer a[href^="mailto:"] {
  overflow-wrap: anywhere;
}

/* Keep the close label on one line; change only the existing menu pictogram. */
.header-actions .menu-toggle { padding-inline: 12px; }
.header-actions .menu-toggle span { white-space: nowrap; }
.header-actions .menu-toggle[aria-expanded="true"] i {
  display: inline-block;
  flex: 0 0 18px;
  height: 18px;
}
.header-actions .menu-toggle[aria-expanded="true"] i::before,
.header-actions .menu-toggle[aria-expanded="true"] i::after {
  top: 8px;
  bottom: auto;
  transform-origin: center;
}
.header-actions .menu-toggle[aria-expanded="true"] i::before { transform: rotate(45deg); }
.header-actions .menu-toggle[aria-expanded="true"] i::after { transform: rotate(-45deg); }

/* Compact LinkedIn monogram in the menu, with an accessible link label. */
.menu-foot .menu-linkedin { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; text-decoration: none; }
.menu-linkedin__mark {
  width: 27px;
  height: 27px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  background: var(--color-green);
  color: #fffaf1;
  font: 700 17px/1 Arial, sans-serif;
  letter-spacing: -.07em;
  text-transform: none;
}
.menu-linkedin:hover .menu-linkedin__mark,
.menu-linkedin:focus-visible .menu-linkedin__mark { background: var(--color-gold); }

/* Short card copy needs a natural rhythm; keep justification for reading prose. */
.site main :is(
  .widgets-grid,
  .domain-grid,
  .home-feature-panel,
  .method-list,
  .veille-grid,
  .contact-refined-grid,
  .contact-practical-inline,
  .expertise-related__grid,
  .cabinet-profile-grid,
  .expertise-detail-grid
) :is(p, li) {
  text-align: left !important;
  text-wrap: pretty;
}
.split-section .domain-grid > a {
  justify-content: flex-start;
  gap: 12px;
}
.split-section .domain-grid > a h3,
.split-section .domain-grid > a p { margin: 0; }

/* Structured professional profile in the existing editorial palette. */
.cabinet-profile-details { margin-top:clamp(48px,6vw,88px);display:grid;gap:clamp(32px,4vw,52px); }
.cabinet-profile-story { display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:clamp(28px,5vw,72px);padding:34px 0 40px;border-top:1px solid rgba(159,137,77,.36);border-bottom:1px solid rgba(159,137,77,.36); }
.cabinet-profile-story__heading h2 { max-width:12ch; }
.cabinet-profile-story__text { max-width:66ch; }
.cabinet-profile-story__text p { margin:0; }
.cabinet-profile-story__text p + p { margin-top:18px; }
.cabinet-simple-layout { grid-template-columns:minmax(250px,390px) minmax(0,1fr);gap:clamp(34px,5vw,76px);align-items:center; }
.cabinet-simple-photo { max-height:490px; }
.cabinet-simple-copy { max-width:650px; }
.cabinet-simple-copy > .section-kicker { margin:0 0 18px;color:var(--color-gold); }
.cabinet-simple-copy h2 { max-width:14ch;margin:0 0 24px;color:var(--color-green);font:400 clamp(36px,3.7vw,56px)/1.08 var(--font-serif);letter-spacing:-.045em; }
.cabinet-simple-lead { max-width:48ch;margin:0;color:#34443c;font:18px/1.6 var(--font-sans);hyphens:none;-webkit-hyphens:none; }
.site main .cabinet-simple-lead { text-align:left!important; }
.cabinet-simple-repers { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px; }
.cabinet-simple-repers span { border-top:1px solid rgba(159,137,77,.5);padding-top:12px;color:var(--color-green);font:12px/1.5 var(--font-sans);letter-spacing:.02em; }
.cabinet-simple-actions { margin-top:30px; }
.cabinet-profile-details h2 { margin:0 0 16px;font:400 clamp(30px,3vw,44px)/1.12 var(--font-serif);letter-spacing:-.035em;color:var(--color-green); }
.cabinet-profile-details h3 { margin:0 0 12px;font:400 25px/1.2 var(--font-serif);color:var(--color-green); }
.cabinet-profile-details p,.cabinet-profile-details li { font:15px/1.7 var(--font-sans);color:#34443c;hyphens:none;-webkit-hyphens:none;overflow-wrap:normal; }
.site main .cabinet-profile-details :is(p,li) { text-align:left!important; }
.cabinet-profile-details .section-kicker { margin:0 0 15px;font-size:10px;line-height:1.4;color:var(--color-gold); }
.cabinet-profile-intro { padding:0 0 34px;border-bottom:1px solid rgba(159,137,77,.36); }
.cabinet-profile-intro > p:not(.section-kicker) { max-width:60ch;margin:0 0 26px; }
.cabinet-profile-domains { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px; }
.cabinet-profile-domains a { min-height:88px;display:flex;align-items:end;justify-content:space-between;gap:12px;padding:18px;border:1px solid rgba(159,137,77,.29);border-radius:18px;background:rgba(249,246,238,.8);color:var(--color-green);font:400 20px/1.18 var(--font-serif);text-decoration:none;transition:border-color .2s,transform .2s,background .2s; }
.cabinet-profile-domains a span { color:var(--color-gold);flex:none; }
.cabinet-profile-domains a:hover { border-color:var(--color-gold);background:#fffaf0;transform:translateY(-2px); }
.cabinet-profile-domains a:focus-visible { outline:2px solid var(--color-gold);outline-offset:3px; }
.cabinet-profile-columns,.cabinet-profile-background__grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,56px); }
.cabinet-profile-block + .cabinet-profile-block { border-left:1px solid rgba(159,137,77,.36);padding-left:clamp(24px,4vw,56px); }
.cabinet-profile-block ul { margin:0;padding-left:20px;display:grid;gap:10px; }
.cabinet-profile-block p:not(.section-kicker) { margin:0;max-width:55ch; }
.cabinet-profile-background { padding:30px clamp(24px,4vw,48px) 36px;border-radius:24px;background:rgba(249,246,238,.87); }
.cabinet-profile-background__grid > div { border-top:1px solid rgba(159,137,77,.36);padding-top:20px; }
.cabinet-profile-background__grid p { margin:0;max-width:48ch; }
.cabinet-profile-languages { display:flex;align-items:baseline;gap:24px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(159,137,77,.36); }
.cabinet-profile-languages h3,.cabinet-profile-languages p { margin:0; }
@media(max-width:900px) { .cabinet-profile-domains { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .cabinet-profile-story { grid-template-columns:1fr;gap:8px;padding:30px 0 34px; } .cabinet-profile-story__heading h2 { max-width:none; } }
@media(max-width:900px) { .cabinet-simple-layout { grid-template-columns:minmax(0,1fr);gap:28px;align-items:start; } }
@media(max-width:620px) {
 .cabinet-simple-photo { width:min(100%,340px);max-height:410px; }
 .cabinet-simple-copy h2 { font-size:36px; }
 .cabinet-simple-lead { font-size:16px; }
 .cabinet-simple-repers { grid-template-columns:1fr;gap:8px;margin-top:26px; }
 .cabinet-simple-repers span { padding-top:8px; }
 .cabinet-profile-details { margin-top:44px;gap:36px; }
 .cabinet-profile-domains { gap:10px; }
 .cabinet-profile-domains a { min-height:78px;padding:14px;font-size:17px; }
 .cabinet-profile-columns,.cabinet-profile-background__grid { grid-template-columns:1fr;gap:30px; }
 .cabinet-profile-block + .cabinet-profile-block { border-left:0;border-top:1px solid rgba(159,137,77,.36);padding:28px 0 0; }
 .cabinet-profile-background { padding:26px 22px 30px; }
 .cabinet-profile-languages { gap:14px;flex-wrap:wrap; }
}

/* Bring education directly below the portrait and keep the profile concise. */
.cabinet-profile-details { margin-top:30px;gap:30px; }
.cabinet-profile-background { padding:26px clamp(22px,3vw,36px) 28px; }
.cabinet-profile-background__heading h2 { margin-bottom:20px; }
.cabinet-profile-background__grid { grid-template-columns:1.1fr 1.2fr .55fr;gap:clamp(18px,2.5vw,36px); }
.cabinet-profile-background__grid > div { padding-top:16px; }
.cabinet-profile-background__grid h3 { font-size:22px; }
.cabinet-profile-languages { display:block;margin:0;padding-top:16px; }
.cabinet-profile-languages h3 { margin:0 0 12px; }
.cabinet-profile-story { padding:28px 0 32px;border-top:0; }
.cabinet-profile-intro { padding-bottom:26px; }
@media(max-width:900px) { .cabinet-profile-background__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .cabinet-profile-languages { grid-column:1 / -1; } }
@media(max-width:620px) { .cabinet-profile-details { margin-top:28px;gap:28px; } .cabinet-profile-background__grid { grid-template-columns:1fr;gap:20px; } .cabinet-profile-languages { grid-column:auto; } .cabinet-profile-background { padding:24px 20px 26px; } .cabinet-profile-story { padding:25px 0 29px; } }

/* Short Cabinet page: presentation, background, then four practice links. */
.cabinet-profile-details { margin-top:26px;gap:24px; }
.cabinet-profile-story { border-top:1px solid rgba(159,137,77,.36);padding:27px 0 28px; }
.cabinet-profile-story__heading h2 { font-size:clamp(30px,3vw,42px); }
.cabinet-profile-background { padding:24px clamp(22px,3vw,34px) 26px; }
.cabinet-profile-background__heading h2 { font-size:clamp(28px,2.8vw,38px);margin-bottom:17px; }
.cabinet-profile-background__grid { gap:clamp(18px,2.5vw,34px); }
.cabinet-profile-background__grid > div { padding-top:12px; }
.cabinet-profile-background__grid h3 { font-size:21px;margin-bottom:8px; }
.cabinet-profile-background__grid p { font-size:14px;line-height:1.55; }
.cabinet-profile-intro { border-bottom:0;padding:2px 0 0; }
.cabinet-profile-intro h2 { font-size:clamp(28px,2.8vw,38px);margin-bottom:17px; }
.cabinet-profile-domains a { min-height:74px;padding:15px; }
@media(max-width:620px) {
 .cabinet-profile-details { margin-top:24px;gap:22px; }
 .cabinet-profile-story { padding:24px 0 26px; }
 .cabinet-profile-background { padding:22px 20px 24px; }
 .cabinet-profile-background__grid { gap:16px; }
 .cabinet-profile-domains a { min-height:68px;padding:13px; }
}

/* Cabinet profile: a single editorial composition rather than stacked cards. */
.cabinet-rework { color:var(--color-green); }
.cabinet-rework :is(h1,h2,h3,p,figure) { margin:0; }
.cabinet-rework .section-kicker { color:var(--color-gold);font-size:10px;line-height:1.4;letter-spacing:.18em; }
.cabinet-rework__hero { padding:clamp(42px,5vw,74px) 0 24px; }
.cabinet-rework__hero-grid { display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:clamp(42px,7vw,104px);align-items:center; }
.cabinet-rework__hero-grid.is-text-only { grid-template-columns:minmax(0,1fr); }
.cabinet-rework__hero-copy { min-width:0; }
.cabinet-rework__hero-copy h1 { margin:22px 0 12px;font:400 clamp(50px,5.7vw,78px)/1.02 var(--font-serif);letter-spacing:-.055em;max-width:12ch; }
.cabinet-rework__hero-copy h1 { font-size:clamp(48px,5vw,68px); }
.cabinet-rework__role { font:600 12px/1.5 var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--color-gold); }
.cabinet-rework__rule { width:90px;height:1px;background:var(--color-gold);margin:24px 0; }
.cabinet-rework__lead { max-width:25ch;font:400 clamp(25px,2.7vw,36px)/1.3 var(--font-serif);letter-spacing:-.025em; }
.site main.cabinet-rework .cabinet-rework__lead { text-align:left!important; }
.cabinet-rework__hero-intro { max-width:59ch; }
.cabinet-rework__hero-intro .section-kicker { margin-bottom:14px; }
.cabinet-rework__hero-intro > p:not(.section-kicker) { font:15px/1.64 var(--font-sans);color:#34443c;hyphens:none;-webkit-hyphens:none; }
.cabinet-rework__hero-intro > p + p { margin-top:14px; }
.site main.cabinet-rework .cabinet-rework__hero-intro > p:not(.section-kicker) { text-align:justify; }
.cabinet-rework__actions { display:flex;align-items:center;gap:20px;margin-top:26px; }
.cabinet-rework__actions .aa-cta-contact:hover,.cabinet-rework__actions .aa-cta-contact:focus-visible { background:var(--color-gold);border-color:var(--color-gold);color:#171715; }
.cabinet-rework__linkedin { display:inline-grid;place-items:center;width:33px;height:33px;border-radius:4px;background:var(--color-green);color:#fff;font:700 18px/1 Arial,sans-serif;text-decoration:none; }
.cabinet-rework__linkedin:hover { background:var(--color-gold); }
.cabinet-rework__portrait { overflow:hidden;border-radius:28px;aspect-ratio:4/5;max-height:530px;box-shadow:0 22px 45px rgba(23,61,50,.08); }
.cabinet-rework__portrait-image { display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%; }
.cabinet-rework__portrait-image.is-position-top,.cabinet-rework__portrait-image.is-position-center-top { object-position:center top; }
.cabinet-rework__portrait-image.is-position-bottom { object-position:center bottom; }
.cabinet-rework__editorial-grid { display:grid;grid-template-columns:minmax(230px,.72fr) minmax(0,1.28fr);gap:clamp(42px,7vw,110px); }
.cabinet-rework__section-title h2 { margin-top:18px;font:400 clamp(34px,3.4vw,48px)/1.1 var(--font-serif);letter-spacing:-.04em;max-width:13ch; }
.cabinet-rework__introduction { padding:70px 0 76px;border-top:1px solid rgba(164,124,42,.3); }
.cabinet-rework__prose { max-width:62ch; }
.cabinet-rework__prose p { font:16px/1.78 var(--font-sans);color:#34443c;hyphens:none;-webkit-hyphens:none; }
.cabinet-rework__prose p + p { margin-top:23px; }
.site main.cabinet-rework .cabinet-rework__prose p { text-align:justify; }
.cabinet-rework__background { padding:26px 0 44px;background:transparent;border-bottom:1px solid rgba(164,124,42,.2); }
.cabinet-rework__background .cabinet-rework__editorial-grid { grid-template-columns:minmax(250px,.5fr) minmax(0,1.5fr);grid-template-areas:"heading facts";gap:clamp(32px,3vw,48px); }
.cabinet-rework__background .cabinet-rework__section-title { grid-area:heading; }
.cabinet-rework__background .cabinet-rework__facts { grid-area:facts; }
.cabinet-rework__facts { display:grid;grid-template-columns:minmax(0,1fr) minmax(155px,.32fr);column-gap:clamp(24px,3vw,44px);border-top:1px solid rgba(164,124,42,.42); }
.cabinet-rework__fact { display:grid;grid-template-columns:1fr;gap:10px;padding:20px 0;border-bottom:1px solid rgba(164,124,42,.3);align-items:baseline; }
.cabinet-rework__fact--formation { grid-column:1/-1; }
.cabinet-rework__fact--experience,.cabinet-rework__fact--languages { border-bottom:0; }
.cabinet-rework__fact--languages { align-content:start;position:relative; }
.cabinet-rework__fact--languages::before { content:"";position:absolute;left:calc(clamp(24px,3vw,44px) / -2);top:20px;bottom:20px;width:1px;background:rgba(164,124,42,.3); }
.cabinet-rework__language-list { display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center; }
.cabinet-rework__language-list span + span::before { content:"·";color:var(--color-gold);margin-right:8px; }
.cabinet-rework__fact h3 { font:400 23px/1.2 var(--font-serif); }
.cabinet-rework__fact p { font:15px/1.62 var(--font-sans);color:#34443c; }
.cabinet-rework__degrees { display:grid;gap:8px;list-style:none;margin:0;padding:0; }
.cabinet-rework__degrees li { display:grid;grid-template-columns:14px minmax(0,1fr);gap:7px;font:15px/1.55 var(--font-sans);color:#34443c;hyphens:none;-webkit-hyphens:none; }
.cabinet-rework__degrees li::before { content:"—";color:var(--color-gold); }
.cabinet-rework__fact--formation .cabinet-rework__degrees li { white-space:nowrap;font-size:14px; }
.cabinet-rework__fact .cabinet-rework__degrees li,.cabinet-rework__fact p { white-space:nowrap; }
.cabinet-rework__degree-short { display:none; }
.site main.cabinet-rework .cabinet-rework__degrees li { text-align:left!important; }
.site main.cabinet-rework .cabinet-rework__fact p { text-align:left!important; }
.cabinet-rework__expertise { padding:44px 0 65px;background:transparent;color:var(--color-green); }
.cabinet-rework__expertise .container { display:grid;grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr);gap:clamp(42px,7vw,110px);align-items:start; }
.cabinet-rework__expertise-head { display:block;margin:0; }
.cabinet-rework__expertise-head h2 { font:400 clamp(31px,3.3vw,45px)/1.1 var(--font-serif);letter-spacing:-.035em; }
.cabinet-rework__links { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cabinet-rework__links.domain-grid.page-domains .domain-card { align-content:center; }
#presentation,#parcours,#formation,#domaines { scroll-margin-top:calc(var(--header-height) + 28px); }
@media(max-width:900px) {
 .cabinet-rework__hero-grid { grid-template-columns:minmax(0,1fr) minmax(240px,.75fr);gap:35px; }
 .cabinet-rework__hero-copy h1 { font-size:clamp(44px,5.5vw,64px); }
 .cabinet-rework__background .cabinet-rework__editorial-grid { grid-template-columns:1fr;grid-template-areas:"heading" "facts";gap:25px; }
 .cabinet-rework__expertise .container { grid-template-columns:1fr;gap:25px; }
 .cabinet-rework__links { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
 .cabinet-rework__hero { padding:35px 0 20px; }
 .cabinet-rework__hero-grid { grid-template-columns:1fr;gap:32px; }
 .cabinet-rework__hero-copy h1 { font-size:clamp(40px,10vw,55px);margin-top:16px; }
 .cabinet-rework__rule { margin:24px 0; }
 .site main.cabinet-rework .cabinet-rework__hero-intro > p:not(.section-kicker) { text-align:left!important; }
 .cabinet-rework__lead { font-size:27px; }
 .cabinet-rework__actions { margin-top:26px; }
 .cabinet-rework__portrait { width:min(100%,390px);max-height:360px;aspect-ratio:4/3; }
 .cabinet-rework__portrait-image { object-position:center 55%!important; }
 .cabinet-rework__editorial-grid { grid-template-columns:1fr;gap:22px; }
 .cabinet-rework__section-title h2 { max-width:none;margin-top:12px;font-size:35px; }
 .cabinet-rework__introduction { padding:47px 0 53px; }
 .cabinet-rework__background { padding:25px 0 35px; }
 .cabinet-rework__facts { grid-template-columns:1fr; }
 .cabinet-rework__fact--experience { padding-bottom:16px; }
 .cabinet-rework__fact--languages { display:flex;align-items:baseline;gap:18px;padding:12px 0 0;border-top:1px solid rgba(164,124,42,.3); }
 .cabinet-rework__fact--languages::before { display:none; }
 .cabinet-rework__fact--languages h3 { flex:0 0 auto; }
 .cabinet-rework__language-list { margin:0; }
 .cabinet-rework__degree-full { display:none; }
 .cabinet-rework__degree-short { display:inline; }
 .cabinet-rework__fact--formation .cabinet-rework__degrees li { font-size:clamp(11px,3.35vw,14px); }
 .site main.cabinet-rework .cabinet-rework__prose p { text-align:left!important; }
 .cabinet-rework__prose p { font-size:15px;line-height:1.7; }
 .cabinet-rework__expertise { padding:35px 0 50px; }
 .cabinet-rework__expertise-head { display:block; }
 .cabinet-rework__expertise-head h2 { margin-top:12px;font-size:35px; }
}
@media(max-width:430px) {
 .cabinet-rework__fact { grid-template-columns:1fr;gap:6px;padding:16px 0; }
 .cabinet-rework__fact h3 { font-size:22px; }
}

/* A consistent link cue on cards that actually lead somewhere. */
.site main a.aa-card--interactive::before,
.site main .domain-grid.page-domains a.domain-card::before,
.site main .veille-card:has(.veille-card__link)::before,
.site main .expertise-related-card:has(.veille-card__link)::before,
.site main .post-card:has(h2 a)::before {
  content:"↗";
  position:absolute;
  inset:18px 21px auto auto;
  z-index:5;
  width:auto;
  height:auto;
  background:none;
  color:var(--color-gold);
  font:400 24px/1 var(--font-serif);
  transform:none;
  pointer-events:none;
  transition:transform .22s ease,color .22s ease;
}
.site main a.aa-card--interactive:hover::before,
.site main .domain-grid.page-domains a.domain-card:hover::before,
.site main .domain-grid.page-domains a.domain-card:focus-visible::before,
.site main a.aa-card--interactive:focus-visible::before,
.site main .veille-card:has(.veille-card__link):hover::before,
.site main .veille-card:has(.veille-card__link):focus-within::before,
.site main .expertise-related-card:has(.veille-card__link):hover::before,
.site main .expertise-related-card:has(.veille-card__link):focus-within::before,
.site main .post-card:has(h2 a):hover::before,
.site main .post-card:has(h2 a):focus-within::before { transform:translate(2px,-2px); }
.site main .domain-grid.page-domains a.domain-card h3,
.site main .cabinet-rework__links a.domain-card h3 { padding-right:25px; }
@media(max-width:600px) {
  .site main a.aa-card--interactive::before,
  .site main .domain-grid.page-domains a.domain-card::before,
  .site main .veille-card:has(.veille-card__link)::before,
  .site main .expertise-related-card:has(.veille-card__link)::before,
  .site main .post-card:has(h2 a)::before { inset:16px 17px auto auto;font-size:21px; }
}

/* The Cabinet page uses a quieter, compact version of the practice cards. */
.site main.cabinet-rework .cabinet-rework__links.domain-grid.page-domains { gap:12px; }
.site main.cabinet-rework .cabinet-rework__links.domain-grid.page-domains .domain-card {
  min-height:96px;
  padding:17px 20px;
  border-radius:20px;
}
.site main.cabinet-rework .cabinet-rework__links.domain-grid.page-domains .domain-card h3 {
  font-size:clamp(21px,1.7vw,25px);
  line-height:1.12;
}
@media(max-width:600px) {
  .site main.cabinet-rework .cabinet-rework__links.domain-grid.page-domains { grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
  .site main.cabinet-rework .cabinet-rework__links.domain-grid.page-domains .domain-card { min-height:88px;padding:14px 15px;border-radius:17px; }
  .site main.cabinet-rework .cabinet-rework__links.domain-grid.page-domains .domain-card h3 { font-size:clamp(17px,4.7vw,20px);padding-right:8px; }
}

/* On the home practice cards, the cue must stay clear of the heading. */
.site main .split-section .domain-grid > a.aa-card--interactive::before {
  inset:17px 18px auto auto;
  font-size:16px;
}
.site main .split-section .domain-grid > a.aa-card--interactive h3 { padding-right:38px; }
@media(max-width:600px) {
  .site main .split-section .domain-grid > a.aa-card--interactive::before { inset:15px 16px auto auto;font-size:15px; }
}

/* Article end: three useful next steps in one compact desktop row. */
.single-analysis__hero h1,
.single-analysis__body h2,
.single-analysis__body h3,
.single-analysis__body h4,
.single-analysis__body p,
.single-analysis__body li,
.single-analysis__body blockquote {
  text-align:justify;
  text-align-last:left;
  hyphens:none;
  -webkit-hyphens:none;
  word-break:normal;
  overflow-wrap:normal;
}
.single-analysis__hero h1 {
  width:100%;
  max-width:900px;
  font-size:clamp(40px,3.7vw,54px);
  line-height:1.05;
  text-align:left;
  text-wrap:balance;
}
.single-analysis__content .single-analysis__media {
  width:min(100%,620px);
  max-width:620px;
  margin-bottom:30px;
  border-radius:20px;
}
.single-analysis__content .single-analysis__media img {
  aspect-ratio:16/9;
  object-fit:cover;
}
.single-analysis__body > h2:last-of-type::before {
  content:"";
  display:block;
  width:100%;
  height:1px;
  margin-bottom:24px;
  background:linear-gradient(to right,rgba(164,124,42,.8) 0 72px,rgba(164,124,42,.24) 72px 100%);
}
.single-analysis__content .single-analysis__end-grid {
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.03fr) minmax(0,1.25fr);
  gap:16px;
  align-items:stretch;
  max-width:1180px;
  margin-top:32px;
  margin-bottom:48px;
}
.single-analysis__end-grid > * { min-width:0;max-width:none;width:100%;box-sizing:border-box; }
.single-analysis__end-grid .editorial-signature--article {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  margin:0;
  padding:22px;
  border:1px solid rgba(23,61,50,.12);
  border-radius:20px;
  background:rgba(250,247,239,.88);
}
.single-analysis__end-grid .editorial-signature--article > img { flex:0 0 94px;width:86px;height:94px;object-fit:contain; }
.single-analysis__end-grid .editorial-signature__name { font-size:17px;line-height:1.2;letter-spacing:.025em; }
.single-analysis__end-grid .editorial-signature__text { gap:5px;justify-items:center; }
.single-analysis__end-grid .single-analysis__footer,
.single-analysis__end-grid .single-analysis__contact {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  margin:0;
  padding:22px;
  border:1px solid rgba(23,61,50,.12);
  border-radius:20px;
  background:rgba(250,247,239,.88);
}
.single-analysis__end-grid .single-analysis__footer h2 { margin-bottom:12px;font-size:clamp(24px,2.1vw,29px); }
.single-analysis__end-grid .single-analysis__tags { margin-bottom:14px; }
.single-analysis__end-grid .single-analysis__actions { display:grid;gap:0; }
.single-analysis__end-grid .single-analysis__actions .button {
  width:100%;min-height:43px;justify-content:space-between;gap:12px;
  padding:10px 0;border:0;border-top:1px solid rgba(23,61,50,.18);
  border-radius:0;background:transparent;color:var(--color-green);
  font-size:10.5px;line-height:1.35;text-align:left;white-space:normal;
  transform:none;
}
.single-analysis__end-grid .single-analysis__actions .button::after { content:"↗";flex:none;font-size:18px;font-weight:400;line-height:1; }
.single-analysis__end-grid .single-analysis__actions .button:hover,
.single-analysis__end-grid .single-analysis__actions .button:focus-visible { color:var(--color-gold);background:transparent;transform:none; }
.single-analysis__end-grid .single-analysis__contact { gap:12px; }
.single-analysis__end-grid .single-analysis__contact h2 { font-size:clamp(25px,2.1vw,29px);line-height:1.13; }
.single-analysis__end-grid .single-analysis__contact p:not(.section-kicker) { font-size:13px;line-height:1.48;text-align:left!important; }
.single-analysis__end-grid .single-analysis__contact .button { align-self:flex-start;margin-top:auto;min-height:42px;padding:10px 15px;font-size:11px; }
@media(max-width:1050px) {
  .single-analysis__content .single-analysis__end-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .single-analysis__end-grid .single-analysis__contact { grid-column:1/-1; }
}
@media(max-width:680px) {
  .single-analysis__hero h1,
  .single-analysis__body h2,
  .single-analysis__body h3,
  .single-analysis__body h4 { text-align:left; }
  .single-analysis__hero h1 { font-size:clamp(34px,9.5vw,40px); }
  .single-analysis__content .single-analysis__end-grid { grid-template-columns:1fr;gap:12px;margin-top:24px;margin-bottom:34px; }
  .single-analysis__end-grid .single-analysis__contact { grid-column:auto; }
  .single-analysis__end-grid .editorial-signature--article,
  .single-analysis__end-grid .single-analysis__footer,
  .single-analysis__end-grid .single-analysis__contact { padding:18px; }
}

/* Mobile visual rhythm: shorter entry cards, clearer hero, usable veille filters. */
@media(max-width:760px) {
  .widgets-grid .home-card--expertises,
  .widgets-grid .home-card--veille {
    height:auto;
    min-height:0;
    padding:20px;
  }
  .widgets-grid .home-card--expertises > strong,
  .widgets-grid .home-card--veille > strong { margin-top:14px; }
  .widgets-grid .home-card--expertises > em,
  .widgets-grid .home-card--veille > em { margin-top:18px;padding-top:0; }
  .home-hero--photo-fullscreen .hero-photo-fullscreen-media::after {
    background:linear-gradient(90deg,rgba(8,20,16,.53),rgba(8,20,16,.46) 50%,rgba(8,20,16,.62));
  }
  .hero-photo-fullscreen-words .is-photo-accent {
    color:#d5b66d;
    text-shadow:0 2px 12px rgba(0,0,0,.58);
  }
  .home-hero--photo-fullscreen .hero-photo-fullscreen-note {
    font-size:18px;
    line-height:1.46;
    text-align:left!important;
    text-shadow:0 1px 8px rgba(0,0,0,.88);
  }
  .veille-filters {
    flex-wrap:nowrap;
    gap:8px;
    max-width:100%;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding:7px 0 12px;
    border-top:0;
  }
  .veille-filters::-webkit-scrollbar { display:none; }
  .veille-filters a {
    flex:none;
    padding:9px 12px;
    border:1px solid rgba(23,61,50,.2);
    border-radius:999px;
    background:rgba(250,247,239,.88);
    letter-spacing:.08em;
    white-space:nowrap;
  }
  .veille-filters a + a::before { content:none; }
  .veille-filters a[aria-current="page"] {
    border-color:var(--color-green);
    background:var(--color-green);
    color:#faf7ef;
  }
  .veille-hero .veille-hero__note { text-align:left!important; }
  .cabinet-rework__hero-grid { gap:14px; }
  .cabinet-rework__portrait { margin:0; }
}

/* Make the first step towards an exchange visible without changing the editorial layout. */
.hero-photo-fullscreen-action {
  width:fit-content;
  min-height:44px;
  padding:10px 20px;
  border:1px solid rgba(249,244,231,.72);
  background:rgba(17,49,40,.68);
  color:#faf7ef;
  box-shadow:0 12px 28px rgba(0,0,0,.17);
  white-space:nowrap;
}
.hero-photo-fullscreen-action:hover,
.hero-photo-fullscreen-action:focus-visible {
  border-color:var(--color-gold);
  background:var(--color-gold);
  color:#fff;
}
.expertise-first-contact {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin:28px 0 38px;
  padding:19px 0;
  border-top:1px solid rgba(164,124,42,.45);
  border-bottom:1px solid rgba(164,124,42,.24);
}
.expertise-first-contact p {
  margin:0;
  color:var(--color-green);
  font-family:var(--font-serif);
  font-size:clamp(20px,2vw,26px);
  line-height:1.2;
  text-align:left;
}
.expertise-first-contact a,
.single-analysis__expertise-link {
  color:var(--color-green);
  font-family:var(--font-sans);
  font-size:11px;
  font-weight:700;
  letter-spacing:.11em;
  text-decoration:none;
  text-transform:uppercase;
  white-space:nowrap;
}
.expertise-first-contact a:hover,
.expertise-first-contact a:focus-visible,
.single-analysis__expertise-link:hover,
.single-analysis__expertise-link:focus-visible { color:var(--color-gold); }
.single-analysis__contact-links {
  display:grid;
  justify-items:start;
  gap:14px;
}
.single-analysis__expertise-link { white-space:normal; line-height:1.35; }

/* Fin d'article : une invitation sobre, à la même échelle que les deux cartes voisines. */
.single-analysis__end-grid .single-analysis__contact {
  justify-content:space-between;
  gap:18px;
  padding:24px 26px;
  border-color:rgba(23,61,50,.14);
  background:rgba(250,247,239,.88);
}
.single-analysis__end-grid .single-analysis__contact .section-kicker {
  margin:0 0 14px;
  color:var(--color-gold);
  font-size:10px;
  letter-spacing:.16em;
}
.single-analysis__end-grid .single-analysis__contact h2 {
  max-width:22ch;
  margin:0 0 10px;
  font-size:clamp(23px,1.85vw,27px);
  line-height:1.16;
  letter-spacing:-.025em;
}
.single-analysis__end-grid .single-analysis__contact p:not(.section-kicker) {
  max-width:48ch;
  font-size:13px;
  line-height:1.5;
}
.single-analysis__end-grid .single-analysis__contact-links {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-items:normal;
  gap:12px 18px;
  padding-top:15px;
  border-top:1px solid rgba(164,124,42,.28);
}
.single-analysis__end-grid .single-analysis__contact .button {
  width:auto;
  min-height:36px;
  margin:0;
  padding:8px 13px;
  border:1px solid var(--color-green);
  border-radius:999px;
  background:var(--color-green);
  box-shadow:none;
  font-size:10px;
  letter-spacing:.08em;
  white-space:normal;
  transform:none;
}
.single-analysis__end-grid .single-analysis__contact .button:hover,
.single-analysis__end-grid .single-analysis__contact .button:focus-visible {
  border-color:var(--color-gold);
  background:var(--color-gold);
  color:#171715;
  box-shadow:none;
  transform:none;
}
.single-analysis__end-grid .single-analysis__expertise-link {
  font-size:10px;
  letter-spacing:.08em;
}
@media (min-width:681px) and (max-width:1050px) {
  .single-analysis__end-grid .single-analysis__contact {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(190px,auto);
    align-items:center;
    gap:24px;
  }
  .single-analysis__end-grid .single-analysis__contact-links {
    flex-direction:column;
    align-items:flex-start;
    gap:13px;
    padding:0 0 0 20px;
    border-top:0;
    border-left:1px solid rgba(164,124,42,.28);
  }
}
@media (max-width:680px) {
  .single-analysis__end-grid .single-analysis__contact { padding:20px;gap:16px; }
  .single-analysis__end-grid .single-analysis__contact h2 { font-size:25px; }
  .single-analysis__end-grid .single-analysis__contact-links { align-items:flex-start; }
  .single-analysis__end-grid .single-analysis__contact .button { width:auto;justify-content:center; }
}
@media (min-width:761px) {
  .site-header .brand-block--header .brand-block__city {
    color:#806126;
    font-size:10px;
    letter-spacing:.21em;
  }
}
@media (max-width:760px) {
  .site-header .brand-block--header .brand-block__city {
    display:block;
    color:#806126;
    font-size:9px;
    line-height:1;
    letter-spacing:.18em;
  }
  .hero-photo-fullscreen-action {
    justify-self:end;
    min-height:42px;
    padding:9px 13px;
    font-size:10px;
    letter-spacing:.07em;
  }
  .menu-grid > .menu-card:nth-child(4) { order:-1; }
  .expertise-first-contact { align-items:flex-start; flex-direction:column; gap:12px; margin:24px 0 30px; padding:17px 0; }
  .expertise-first-contact a { font-size:11px; }
  .site main .expertises-hero__note,
  .site main .expertise-detail-hero__note,
  .site main .expertise-detail-intro p,
  .site main .expertise-first-contact p,
  .site main .expertise-detail-prose__section p,
  .site main .single-analysis__body p,
  .site main .single-analysis__body li,
  .site main .contact-intro { text-align:left!important; }
  .site main .contact-intro { font-size:16px; }
}

/* Contact: one editorial information area, kept light over the site map. */
.contact-refined .contact-practical-inline {
  margin-top:clamp(30px,4vw,48px);
  padding:0;
}
.contact-practical-inline > .section-kicker {
  margin:0 0 16px;
  color:#8a692b;
}
.contact-practical-inline__grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(26px,4vw,58px);
  padding:26px 0 0;
  border-top:1px solid rgba(164,124,42,.5);
}
.contact-practical-item {
  min-width:0;
  padding:0 clamp(16px,2vw,28px) 0 0;
}
.contact-practical-item + .contact-practical-item {
  border-left:1px solid rgba(164,124,42,.22);
  padding-left:clamp(26px,4vw,58px);
}
.contact-refined .contact-practical-item h2 {
  margin:0 0 13px;
  color:var(--color-green);
  font-size:clamp(25px,2.1vw,30px);
  line-height:1.16;
}
.contact-refined .contact-practical-item p {
  max-width:54ch;
  margin:0;
  color:var(--color-muted);
  font-size:15px;
  line-height:1.72;
  text-align:left!important;
}
@media (max-width:900px) {
  .contact-practical-inline__grid { grid-template-columns:1fr; gap:0; padding-top:22px; }
  .contact-practical-item { padding:0 0 24px; }
  .contact-practical-item + .contact-practical-item {
    border-left:0;
    border-top:1px solid rgba(164,124,42,.24);
    padding:24px 0 0;
  }
}
.single-analysis__reading{margin:20px 0 0;padding:19px 0 0;border-top:1px solid rgba(165,126,50,.42);color:var(--color-green,#173e33)}
.single-analysis__reading p,.single-analysis__reading ul{margin:0}
.single-analysis__reading p,.single-analysis__reading > div{display:flex;align-items:baseline;gap:12px}
.single-analysis__reading > div{margin-top:9px}
.single-analysis__reading-label{flex:0 0 116px;color:#866923;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.single-analysis__reading ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:7px 18px}
.single-analysis__reading a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(165,126,50,.45);line-height:1.45}
.single-analysis__reading a:hover,.single-analysis__reading a:focus-visible{color:#9b762c;border-bottom-color:currentColor}
@media(max-width:640px){.single-analysis__reading p,.single-analysis__reading > div{display:block}.single-analysis__reading-label{display:block;margin-bottom:5px}.single-analysis__reading ul{display:block}.single-analysis__reading li+li{margin-top:7px}}
