@import url('https://fonts.googleapis.com/css2?family=Inter+Tight:wght@300;400;500&display=swap');
:root{--sage:#a3ad99;--deep:#34473c;--ink:#20231f;--paper:#f7f6f1}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}header{height:110px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #dddcd4}.brand{font-family:'Libre Caslon Display',Georgia,serif;font-size:38px;letter-spacing:6px}.brand small{display:block;font:10px Arial;letter-spacing:3px;margin-top:7px}nav{display:flex;gap:26px;align-items:center}nav a{font-size:13px;padding:12px 0;position:relative}nav a:after{content:'';position:absolute;bottom:3px;left:0;width:0;height:1px;background:#667d5e;transition:width .3s}nav a:hover:after,nav a.active:after{width:100%}.contact{border:1px solid #797d70;padding:13px 17px!important}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:3px;color:var(--deep)}h1,h2,h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400}h1{font-size:clamp(50px,6vw,88px);line-height:1.02;margin:25px 0}h2{font-size:clamp(38px,4vw,60px);line-height:1.12;margin:20px 0}h3{font-size:32px;margin:18px 0}p{line-height:1.8}em{font-weight:400;color:#627a57}.hero{display:grid;grid-template-columns:46% 54%;min-height:640px;margin:30px 3% 0}.hero-copy{padding:65px 8% 50px 5%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero-copy p{max-width:360px;color:#61655c}.hero-photo{width:100%;height:100%;min-height:640px;object-fit:cover;object-position:62% center}.button{display:inline-flex;gap:34px;align-items:center;border-bottom:1px solid var(--ink);padding:16px 0;margin-top:24px;font-size:14px}.button span{font-size:22px}.caption{display:flex;justify-content:space-between;padding:25px 5%;font-size:11px;letter-spacing:2px;text-transform:uppercase}.intro{padding:90px 10%;display:grid;grid-template-columns:1fr 1.3fr;gap:10%;border-top:1px solid #d9dccf;margin-top:28px}.intro h2{margin-top:0}.intro p{margin:0 0 20px}.sage{background:var(--sage)}.section{padding:85px 8%}.split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.split img{width:100%;display:block;object-fit:cover}.portrait{max-height:680px}.page-top{padding:60px 8% 40px}.page-top h1{max-width:900px}.wide{width:100%;height:380px;object-fit:cover}.office{display:grid;grid-template-columns:1.4fr 1fr;gap:6%;align-items:center;padding:75px 8%}.office.reverse{grid-template-columns:1fr 1.2fr;background:#e4e8df}.office img{width:100%;display:block}.office .detail{margin-top:35px;height:260px;object-fit:cover}.office p{max-width:400px}.vase{height:640px;width:240px!important;object-fit:cover;object-position:29% center;justify-self:center}.commitments{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.commitments article{border-top:1px solid #89917f;padding-top:25px}.number{color:#607255;font-size:13px;letter-spacing:2px}.team-work{height:650px;overflow:hidden}.team-work img{width:100%;height:100%;object-fit:cover;object-position:center 24%}.small{font-size:14px;color:#687064}.notice{background:#ece9df;padding:12px 5%;font-size:12px;color:#66695e}.pending{padding:110px 10%;min-height:55vh}.pending p{max-width:580px}footer{padding:55px 5%;background:var(--ink);color:var(--paper);display:flex;justify-content:space-between;gap:30px}footer p{font-size:13px;color:#bac2b4}footer a{font-size:13px}.reveal{animation:enter .8s both}@keyframes enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.menu{display:none;background:none;border:1px solid #aaa;padding:10px;font:inherit}@media(max-width:900px){header{height:auto;min-height:90px;padding:22px 5%;flex-wrap:wrap}.menu{display:block}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:2px;padding-top:25px}nav.open{display:flex}.hero{grid-template-columns:1fr;margin:0}.hero-copy{padding:50px 7%}.hero-photo{height:420px;min-height:0}.intro,.split,.office,.office.reverse{grid-template-columns:1fr;gap:35px}.intro,.section,.office{padding:55px 7%}.commitments{grid-template-columns:1fr;gap:20px}.caption{font-size:10px;gap:20px}.vase{height:520px}.wide{height:260px}footer{flex-direction:column}.team-work{height:500px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.team-original{position:relative;width:100%;aspect-ratio:690/459;overflow:hidden}.team-original img{position:absolute;width:183.043%;max-width:none;left:-51.739%;top:-16.993%}.vase{width:150px!important;object-position:12% center}.team-work{height:auto;aspect-ratio:1376/1535}.team-work img{height:auto;display:block;object-fit:initial;width:100%}

/* Full-width photographic welcome, with readable overlay. */
.hero{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr;margin:0;min-height:calc(100svh - 150px);overflow:hidden;background:#30352d}
.hero-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center 55%}
.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(16,23,18,.76),rgba(16,23,18,.36) 48%,rgba(16,23,18,.06) 85%)}
.hero-copy{padding:70px 7%;min-height:inherit;color:#fff;max-width:850px}
.hero-copy .eyebrow{color:#b9c8aa}.hero-copy h1{font-size:clamp(54px,6.6vw,96px)}
.hero-copy em{color:#a8b995;text-shadow:0 2px 14px rgba(16,23,18,.55)}.hero-copy p{color:#fff;text-shadow:0 1px 8px #172016;max-width:420px}
.hero-copy .button{color:#fff;border-color:#d8dfcd}.hero-copy .button:hover{color:#c7d7ba}
@media(max-width:900px){.hero{min-height:calc(100svh - 140px)}.hero-copy{padding:65px 7%;max-width:100%}.hero-photo{height:100%;object-position:61% center}.hero:before{background:linear-gradient(90deg,rgba(16,23,18,.78),rgba(16,23,18,.3))}.hero-copy h1{font-size:clamp(50px,10vw,76px)}}

/* Preserve the complete original image and its natural aspect ratio. */
.hero{display:grid;min-height:0;overflow:visible}
.hero-photo{position:relative;inset:auto;grid-area:1/1;align-self:center;width:100%;height:auto;min-height:0;object-fit:contain;object-position:center}
.hero-copy{grid-area:1/1;z-index:1;min-height:0;align-self:center;padding:45px 7%}
@media(max-width:900px){.hero{min-height:0}.hero-photo{grid-area:1/1;align-self:start;height:auto;object-fit:contain;object-position:center}.hero-copy{grid-area:2/1;padding:38px 7%;background:#34473c;max-width:none;width:100%}.hero:before{display:none}.hero-copy h1{font-size:clamp(44px,9vw,68px)}}

.hero-copy .hero-identity{max-width:none;margin:16px 0 0}.lawyer-names{display:block;font-family:'Inter Tight',Arial,sans-serif;font-size:clamp(30px,3vw,44px);font-weight:300;line-height:1.16;letter-spacing:-.015em}.lawyer-title{display:block;font-size:16px;line-height:1.5;letter-spacing:.8px;margin-top:16px}@media(max-width:900px){.lawyer-names{font-size:clamp(30px,6vw,42px)}}

/* Team photos retain their native aspect ratios and source resolution. */
main[data-page="equipe"] .split img{height:auto;max-height:none;object-fit:contain}
main[data-page="equipe"] .split>div:first-child{max-width:1402px}
main[data-page="equipe"] .split>div:nth-child(2){max-width:2048px}
main[data-page="equipe"] .team-original{max-width:690px;margin-inline:auto}
main[data-page="equipe"] .team-work{max-width:1554px;margin-inline:auto;aspect-ratio:1554/1730}
main[data-page="equipe"] .team-work img{height:auto;max-height:none;object-fit:contain}

main[data-page="equipe"] .team-original{width:100%;max-width:2048px;aspect-ratio:auto;overflow:visible;margin-inline:auto}
main[data-page="equipe"] .team-original img{position:static;display:block;width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain}

/* Reconstitution finale — sauge affirmé, images originales et navigation mobile. */
:root{--sage:#a6a997;--deep:#515a4e;--sage-ink:#6f7767;--camel-dark:#92684a}
.notice{display:none}
.eyebrow,em{color:var(--sage-ink)}
header{position:sticky;top:0;z-index:20;background:rgba(243,239,232,.98);border-bottom-color:#ddd5c9;backdrop-filter:blur(10px)}
nav{gap:clamp(14px,2vw,30px)}
nav a{font-size:clamp(16px,1.45vw,18px);font-weight:500;padding:14px 1px}
@media(min-width:901px) and (max-width:1100px){header{padding-inline:3%}nav{gap:12px}nav a{font-size:16px}}
nav a:after{bottom:4px;height:2px;background:var(--camel-dark)}
.hero-photo{display:block;width:100%;height:auto;object-fit:contain}
.hero-copy em{color:#bfd0ae}
.team-portraits>div{align-self:start}
.team-portraits img{width:100%;height:auto!important;max-height:none!important;object-fit:contain!important}
.team-story{display:block;max-width:1100px;margin:0 auto}
.team-story h2{max-width:760px;margin-bottom:48px}
.team-story>div{max-width:900px;margin-left:auto}
.team-story p{text-align:justify;hyphens:auto;text-wrap:pretty}
header>.brand::before,footer>.brand::before{content:"";display:inline-block;width:5px;height:31px;margin-right:16px;border-radius:1px;background:var(--sage-ink);transform:skew(-18deg);vertical-align:baseline}
main[data-page="equipe"] .page-top .eyebrow{display:block;margin:0;padding:0}
main[data-page="equipe"] .page-top h1{font-size:clamp(44px,5.2vw,76px);margin-left:0}
footer{background:var(--sage);color:var(--ink)}
footer p{color:#1f2c25}
footer a{color:#18211c}
body{font-family:'Inter Tight',Arial,sans-serif;font-weight:400}
.brand{font-family:'Inter Tight',Arial,sans-serif;font-size:31px;font-weight:400;letter-spacing:2.6px;color:var(--deep)}
.brand small{font:400 12px/1.35 'Inter Tight',Arial,sans-serif;letter-spacing:.8px;margin-top:6px}
h1,h2,h3{font-family:'Inter Tight',Arial,sans-serif;letter-spacing:-.02em}
h1,h2{font-weight:300}
h3{font-weight:400}
em{font-style:normal;font-weight:inherit}
.eyebrow{letter-spacing:1.8px}
header>.brand::before,footer>.brand::before{width:3px;height:24px;margin-right:10px}
footer .brand{font-size:27px;letter-spacing:2.2px;color:#152019}
footer>.brand::before{background:var(--deep)}
main[data-page="accueil"]+footer{display:none}
.contact-page .legal-link{display:inline-block;margin-top:56px;padding-top:18px;border-top:1px solid #cfd2c8;font-size:14px}
@media(min-width:901px){header{height:96px}}
.hero-copy .hero-identity{max-width:620px;padding:0;border:0;background:transparent;backdrop-filter:none}
.hero-copy .lawyer-names{font-size:clamp(38px,4.2vw,58px);color:#fff;text-shadow:0 2px 14px rgba(16,23,18,.7)}
.hero-copy .lawyer-title{font-size:18px;letter-spacing:.9px;text-transform:uppercase;color:#eef2e9}
@media(max-width:900px){
  header{gap:18px}
  .menu{display:none}
  nav{display:flex;width:100%;flex-direction:row;align-items:center;gap:22px;padding:4px 0 2px;overflow-x:auto;scrollbar-width:none;white-space:nowrap}
  nav::-webkit-scrollbar{display:none}
  nav a{font-size:15px;font-weight:500;flex:0 0 auto}
  nav .contact{border:0;padding:12px 0!important}
  .hero-copy{color:#fff}
  .hero-copy .eyebrow{color:#c7d7ba}
  .lawyer-names{font-size:clamp(34px,8vw,48px)}
  .hero-copy .hero-identity{padding:0}
  .hero-copy .lawyer-title{font-size:16px}
  .team-story h2{margin-bottom:32px}
  .team-story>div{margin-left:0}
  main[data-page="equipe"] .page-top h1{font-size:clamp(40px,8vw,60px)}
}
@media(max-width:900px){
  header{min-height:82px;padding-top:17px;padding-bottom:17px}
  .brand{font-size:28px}
  .brand small{font-size:12px;letter-spacing:.9px}
}
.cabinet-gallery{display:grid;gap:clamp(24px,4vw,56px);padding-top:20px}
.cabinet-gallery>img,.cabinet-gallery-pair img{display:block;width:100%;height:auto}
.cabinet-gallery-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,42px);align-items:start}
.cabinet-gallery-pair--portraits{grid-template-columns:1.185fr 1fr}
.cabinet-gallery-feature{width:min(100%,1060px)!important}
.cabinet-gallery-feature:nth-of-type(even){justify-self:end}
.cabinet-gallery-view{width:min(62%,740px)!important;justify-self:end;margin-top:clamp(8px,2vw,24px)}
@media(max-width:700px){.cabinet-gallery-pair{grid-template-columns:1fr}.cabinet-gallery-feature{width:100%!important}.cabinet-gallery-view{width:82%!important;justify-self:center}}

/* Portrait du cabinet en filigrane sur toutes les pages intérieures. */
main:not([data-page="accueil"]){position:relative;isolation:isolate;background:transparent}
main:not([data-page="accueil"])::before{content:"";position:fixed;inset:96px 0 0;z-index:-1;pointer-events:none;background:url("assets/photo-039-background.jpg") center 28%/cover no-repeat;opacity:.115}
main:not([data-page="accueil"]) .sage{background:rgba(166,169,151,.9)}
@media(max-width:900px){main:not([data-page="accueil"])::before{inset:128px 0 0;background-position:center 22%;opacity:.1}}

/* Titres des rubriques : une échelle légèrement plus discrète. */
main:not([data-page="accueil"]) h1{font-size:clamp(38px,4.4vw,64px)}
main:not([data-page="accueil"]) h2{font-size:clamp(33px,3.5vw,52px)}
main:not([data-page="accueil"]) h3{font-size:28px}
main[data-page="equipe"] .page-top h1{font-size:clamp(38px,4.4vw,64px)}
@media(max-width:900px){main:not([data-page="accueil"]) h1,main[data-page="equipe"] .page-top h1{font-size:clamp(36px,7vw,52px)}}

/* Compétences et coordonnées du cabinet. */
.page-lead{max-width:760px;margin:26px 0 0;color:#495146;font-size:clamp(18px,1.7vw,21px);line-height:1.55}
.expertise-section{border-top:1px solid #d8d9ce}
.expertise-section--sage{background:rgba(166,169,151,.82)}
.expertise-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8%;align-items:end;margin-bottom:54px}
.expertise-heading h2{margin-bottom:0}
.expertise-heading>p{max-width:540px;margin:0;color:#41483f}
.expertise-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 7%}
.practice-card{border-top:1px solid #8b9987;padding:23px 0 5px}
.practice-card h3{max-width:470px;margin:13px 0 8px;line-height:1.18}
main[data-page^="competences"] .practice-card h3{font-size:clamp(22px,2.1vw,26px)}
.practice-card p{max-width:500px;margin:0;color:#4d564c}
.practice-card ul{max-width:510px;margin:14px 0 0;padding-left:21px;color:#4d564c;line-height:1.6}
.practice-card li+li{margin-top:8px}
main[data-page="competences-thibaud"] .expertise-heading>p,
main[data-page="competences-thibaud"] .practice-card p,
main[data-page="competences-thibaud"] .practice-card li{text-align:justify;hyphens:auto}
main[data-page="competences-thibaud"] .expertise-heading>p,
main[data-page="competences-thibaud"] .practice-card p,
main[data-page="competences-thibaud"] .practice-card ul{max-width:none}
.expertise-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #d8d9ce}
.expertise-cta p{font-size:clamp(20px,2vw,26px);margin:0}
.expertise-cta .button{margin:0;white-space:nowrap}
main[data-page="contact"] .page-top h1{max-width:1000px}
.contact-layout{padding-top:36px}
.contact-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,6vw,90px)}
.contact-person{border-top:1px solid #9da898;padding-top:24px}
.contact-person h2{margin:14px 0 25px}
.contact-person a{display:block;width:max-content;max-width:100%;overflow-wrap:anywhere;margin:10px 0;border:0;text-decoration:none;font-size:clamp(17px,1.6vw,20px)}
.contact-person a small{display:block;margin-bottom:3px;color:var(--deep);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.contact-person a:hover,.contact-visit .button:hover{color:var(--camel-dark)}
.contact-lower{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:8%;align-items:start;margin-top:clamp(48px,6vw,90px)}
.contact-photo{min-width:0;margin:0}
.contact-photo img{display:block;width:100%;height:auto}
.contact-visit{align-self:start;background:rgba(166,169,151,.88);padding:clamp(28px,3vw,48px)}
.contact-visit h2{margin:20px 0 28px}
.contact-visit address{font-size:clamp(23px,2.1vw,28px);font-style:normal;line-height:1.4}
.contact-visit p{max-width:350px;margin:24px 0 0}
.contact-bottom{display:flex;align-items:end;justify-content:space-between;gap:24px;padding-top:15px}
.contact-bottom .legal-link{display:inline-block;border-top:1px solid #a2ad9f;padding-top:15px;font-size:14px}
.contact-bottom p{margin:0;color:#687064;font-size:13px;letter-spacing:.04em}
@media(max-width:800px){.expertise-heading,.contact-lower{grid-template-columns:1fr;gap:28px}.expertise-grid{gap:24px 6%}.expertise-heading{margin-bottom:36px}.expertise-cta{align-items:flex-start;flex-direction:column}.contact-layout{padding-top:10px}.contact-people{gap:20px}.contact-visit{order:-1}}
@media(max-width:600px){.expertise-grid{grid-template-columns:1fr}.contact-visit{padding:30px 24px}.page-lead{font-size:18px}main[data-page="contact"] .contact-person h2{font-size:clamp(20px,5vw,28px);line-height:1.12}.contact-person a{font-size:14px;line-height:1.35}.contact-person .eyebrow{font-size:12px;letter-spacing:.7px}.contact-bottom{align-items:flex-start;flex-direction:column}}

/* Navigation et signature du cabinet. */
header>.brand::before,footer>.brand::before{background:var(--ink)}
nav .contact{border:0;padding:14px 1px!important}

/* Entrée des compétences et navigation entre les deux associés. */
.expertise-navigation{padding-top:16px;padding-bottom:40px}
.expertise-navigation--landing{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,80px);align-items:center;padding-top:26px;padding-bottom:66px}
.expertise-intro-photo{width:100%;aspect-ratio:1554/1660;overflow:hidden;margin:0;background:#e7e4db}
.expertise-intro-photo img{display:block;width:100%;height:auto}
.expertise-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.expertise-navigation--landing .expertise-tabs{grid-template-columns:1fr}
.expertise-tab{display:flex;flex-direction:column;gap:14px;min-width:0;min-height:158px;padding:24px clamp(18px,2.3vw,34px);border:1px solid #9ba495;background:rgba(247,246,241,.7);transition:background .2s,border-color .2s}
.expertise-tab:hover,.expertise-tab:focus-visible{background:rgba(166,169,151,.3);border-color:var(--deep)}
.expertise-tab[aria-current="page"]{background:rgba(166,169,151,.36);border-color:var(--deep);box-shadow:inset 0 3px 0 var(--deep)}
.expertise-tab-title{font-size:clamp(23px,2.5vw,34px);font-weight:300;line-height:1.15}
.expertise-tab-domain{font-size:14px;line-height:1.45;color:var(--deep)}
.expertise-tab-action{margin-top:auto;font-size:13px;color:var(--camel-dark)}
@media(max-width:800px){.expertise-navigation--landing{grid-template-columns:1fr}.expertise-intro-photo{max-width:640px;margin-inline:auto}.expertise-navigation--landing .expertise-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.expertise-tabs,.expertise-navigation--landing .expertise-tabs{gap:10px}.expertise-tab{padding:18px 13px;min-height:164px;gap:10px}.expertise-tab-title{font-size:clamp(19px,5vw,25px)}.expertise-tab-domain{font-size:12px}.expertise-tab-action{font-size:12px}}

.brand-dot{display:inline-block;width:.26em;height:.26em;margin-left:.1em;border-radius:50%;background:var(--ink);vertical-align:.06em;letter-spacing:0}

.expertise-navigation--landing{display:block}
.expertise-navigation--landing .expertise-intro-photo{max-width:620px;margin-inline:auto}
.expertise-navigation--landing .expertise-tabs{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;margin-top:clamp(38px,5vw,70px);gap:clamp(20px,4vw,56px)}
.expertise-choice{display:flex;flex-direction:column;gap:18px;min-width:0}
.expertise-choice-photo{margin:0}
.expertise-choice-photo img{display:block;width:100%;height:clamp(300px,35vw,480px);object-fit:contain;object-position:center top}
@media(max-width:600px){.expertise-navigation--landing .expertise-tabs{grid-template-columns:1fr}.expertise-choice-photo img{height:auto}.expertise-choice{gap:12px}}

/* Même format visible que le portrait de Clémentine, recadré sur Thibaud. */
.expertise-choice-photo--thibaud{position:relative;width:clamp(205px,23.96vw,328px);height:clamp(300px,35vw,480px);margin-inline:auto;overflow:hidden}
.expertise-choice-photo--thibaud img{position:absolute;left:-11.5%;top:-32.3%;width:219.6%;max-width:none;height:auto;object-fit:initial}
@media(max-width:600px){.expertise-choice-photo--thibaud{width:100%;height:auto;aspect-ratio:1402/2048}}

/* Deux publics pour Clémentine, puis des thèmes consultables séparément. */
[hidden]{display:none!important}
.audience-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid #9ca797;gap:clamp(12px,3vw,40px)}
.audience-tab,.topic-tab{font:inherit;color:var(--ink);cursor:pointer;text-align:left;background:none;border:0}
.audience-tab{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(26px,3vw,38px);padding:16px 4px 20px;border-bottom:3px solid transparent;line-height:1.2}
.audience-tab[aria-selected="true"]{border-bottom-color:var(--deep);color:var(--deep)}
.audience-tab:hover,.topic-tab:hover{color:var(--deep)}
.audience-tab:focus-visible,.topic-tab:focus-visible{outline:2px solid var(--deep);outline-offset:3px}
.audience-panel{padding-top:clamp(28px,4vw,55px)}
.topic-layout{display:grid;grid-template-columns:minmax(200px,.85fr) minmax(0,2fr);gap:clamp(26px,5vw,78px);align-items:start}
.topic-tabs{display:flex;flex-direction:column;gap:0;border-top:1px solid #abb3a5}
.topic-tab{font-size:clamp(15px,1.35vw,18px);line-height:1.4;padding:17px 10px 17px 0;border-bottom:1px solid #abb3a5;min-height:58px}
.topic-tab[aria-selected="true"]{color:var(--deep);font-weight:600;padding-left:14px;box-shadow:inset 3px 0 var(--deep)}
.topic-panel{background:rgba(247,246,241,.86);border-top:1px solid #8b9987;padding:clamp(26px,3vw,46px);min-height:315px}
.topic-panel h3{font-family:'Libre Caslon Display',Georgia,serif;margin:12px 0 20px;line-height:1.2}
.topic-panel p{font-size:16px;line-height:1.7;max-width:720px;margin:0 0 16px;color:#41483f}
.topic-panel p:last-child{margin-bottom:0}
.topic-panel p.topic-source{font-size:14px;color:#62685e;margin-top:20px}
.topic-source a{color:var(--brand-camel-text);text-decoration:underline;text-underline-offset:.2em}
@media(max-width:800px){.topic-layout{grid-template-columns:1fr;gap:25px}.topic-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px}.topic-panel{min-height:0}}
@media(max-width:600px){.audience-tab{font-size:clamp(22px,5.5vw,28px)}.topic-tabs{grid-template-columns:1fr}.topic-tab{min-height:0;padding:13px 10px 13px 0}.topic-panel{padding:24px 20px}.topic-panel p{font-size:16px}}

/* Les accès directs de la page d’accueil restent l’un sous l’autre. */
.hero-copy .button+.button{margin-top:4px}
.hero-copy .hero-identity+.button{margin-top:clamp(44px,4vw,58px)}
.hero-copy .lawyer-names{white-space:nowrap}
@media(max-width:600px){.hero-copy .lawyer-names{font-size:clamp(23px,6.5vw,38px)}}

/* Les compétences détaillées de Thibaud reprennent la lecture par onglets. */
.topic-panel ul{max-width:720px;margin:18px 0 0;padding-left:21px;color:#41483f;line-height:1.7}
.topic-panel li+li{margin-top:9px}
main[data-page="competences-thibaud"] .topic-panel p,
main[data-page="competences-thibaud"] .topic-panel li{text-align:justify;hyphens:auto}
main[data-page="competences-thibaud"] .topic-panel p,
main[data-page="competences-thibaud"] .topic-panel ul{max-width:none}

/* Mentions légales du cabinet. */
.legal-page{max-width:1200px;margin-inline:auto;padding-top:20px}
.legal-intro{max-width:850px;font-size:18px}
.legal-source-note{max-width:850px;background:rgba(166,169,151,.46);padding:18px 22px;color:#343d35}
.legal-block{border-top:1px solid #9da898;padding:38px 0 28px}
.legal-block h2{font-size:clamp(28px,3vw,42px);margin:12px 0 18px}
.legal-block p{max-width:900px;margin:0 0 16px}
.legal-block a{text-decoration:underline;text-underline-offset:.16em;overflow-wrap:anywhere}
.legal-entities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,5vw,70px);margin:28px 0}
.legal-entity{border-top:1px solid #bcc3b7;padding:20px 0}
.legal-entity h3{font-size:clamp(21px,2vw,26px);margin:0 0 14px}
.legal-entity p{overflow-wrap:anywhere}
@media(max-width:700px){.legal-entities{grid-template-columns:1fr;gap:8px}.legal-block{padding:28px 0 18px}}

/* Un seul public pour Thibaud, avec les mêmes onglets et le même fond que Clémentine. */
.audience-tabs--single{grid-template-columns:1fr}
.audience-tab--static{cursor:default;border-bottom-color:var(--deep);color:var(--deep)}
.audience-panel#audience-cadres{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,3vw,40px)}
.cadres-content{grid-column:2;color:#41483f}
.cadres-content p{font-size:18px;line-height:1.7;text-align:justify;hyphens:auto;margin:0 0 20px}
.cadres-content p:last-child{margin-bottom:0}
@media(max-width:700px){.audience-panel#audience-cadres{grid-template-columns:1fr}.cadres-content{grid-column:1}}

/* Camel doré lumineux pour les accents ; la barre et le point du logo restent noirs. */
:root{--brand-camel:#d8a568;--brand-camel-text:#a46c35}
header .brand,footer .brand{color:var(--brand-camel)}
header .brand small,footer .brand small{color:var(--ink)}

/* Les traits de sélection reprennent le camel du logo. */
header nav a::after{background:var(--brand-camel)}
.audience-tab[aria-selected="true"],.audience-tab--static{border-bottom-color:var(--brand-camel)}

/* Accents camel dans la rubrique Nos compétences. */
main[data-page^="competences"] .page-top .eyebrow,
main[data-page^="competences"] .expertise-heading .eyebrow,
main[data-page^="competences"] .expertise-tab-domain,
main[data-page^="competences"] .expertise-tab-action{color:var(--brand-camel-text)}
main[data-page^="competences"] .expertise-tab-action{text-decoration:underline;text-decoration-color:var(--brand-camel);text-underline-offset:.25em}
main[data-page^="competences"] .expertise-tab[aria-current="page"]{box-shadow:inset 0 3px 0 var(--brand-camel)}
main[data-page^="competences"] .topic-tab[aria-selected="true"]{box-shadow:inset 3px 0 var(--brand-camel)}
main[data-page^="competences"] .topic-panel{border-top-color:var(--brand-camel)}
main[data-page^="competences"] .expertise-cta .button{border-bottom-color:var(--brand-camel)}

/* Lecture des compétences de Clémentine, côté entreprises. */
#audience-entreprise .topic-panel p:not(.topic-source){text-align:justify;hyphens:auto}

/* Navigation et onglets utilisables sur les petits écrans. */
@media(max-width:700px){
  header .menu{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;border:1px solid var(--ink);padding:10px 14px;color:var(--ink);cursor:pointer}
  header .menu:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
  header nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:0 0 8px;overflow:visible;white-space:normal}
  header nav.open{display:flex}
  header nav a{display:block;width:100%;padding:14px 0;border-bottom:1px solid #c6c6ba;white-space:normal;font-size:16px}
  header nav .contact{padding:14px 0!important}
  .audience-tab{font-size:clamp(17px,4.5vw,24px);overflow-wrap:anywhere}
  .topic-tabs{display:flex;overflow-x:auto;gap:12px;border-top:0;padding-bottom:8px;scroll-snap-type:x proximity;scrollbar-width:thin}
  .topic-tab{flex:0 0 min(68vw,250px);scroll-snap-align:start;border:1px solid #abb3a5;min-height:72px;padding:12px 14px}
  .topic-tab[aria-selected="true"]{padding-left:14px}
}

/* Avis Google, placés sous le portrait de chaque associé. */
.reviews-panel{min-width:0;min-height:225px;margin-top:5px;padding:23px 25px 25px;border-top:2px solid var(--brand-camel);background:rgba(247,246,241,.9)}
.reviews-heading{margin:0 0 20px;font-size:15px;font-weight:600;line-height:1.4}
.reviews-viewport{overflow:hidden}
.reviews-track{display:flex;transition:transform .8s ease-in-out}
.review-card{flex:0 0 100%;min-width:0;margin:0;padding:0}
.review-stars{display:block;color:var(--brand-camel-text);font-size:22px;letter-spacing:3px;white-space:nowrap}
.review-card p{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(20px,2vw,25px);line-height:1.35;min-height:70px;margin:12px 0}
.review-card footer{display:block;background:none;color:#515950;padding:0;font-size:13px}
.review-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:14px;color:#41483f}
.review-summary p{flex-basis:100%;margin:7px 0 0;font-size:15px;line-height:1.5}
.reviews-controls{display:flex;align-items:center;gap:13px;margin-top:14px;font-size:13px;color:#4b5149}
.reviews-controls button{padding:5px 0;border:0;border-bottom:1px solid #a7ac9f;background:transparent;color:inherit;font:inherit;cursor:pointer}
.reviews-controls button:focus-visible,.reviews-google-link:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.reviews-google-link{display:inline-block;margin-top:18px;font-size:14px;line-height:1.4;text-decoration:underline;text-decoration-color:var(--brand-camel);text-underline-offset:.25em}
@media(max-width:900px){
  .expertise-navigation .expertise-tabs,.expertise-navigation--landing .expertise-tabs{grid-template-columns:minmax(0,1fr);max-width:600px;margin-inline:auto;gap:38px}
  .expertise-tab{min-height:0}
  .expertise-tab-title,.expertise-tab-domain{white-space:normal;overflow-wrap:break-word}
  .expertise-choice-photo--thibaud{max-width:100%}
}
@media(max-width:700px){
  .contact-people{grid-template-columns:minmax(0,1fr)}
  .hero-copy .lawyer-names{white-space:normal}
  main[data-page^="competences"] .page-top h1{hyphens:auto;overflow-wrap:break-word}
  .reviews-panel{padding:23px 20px 25px}
}
@media(prefers-reduced-motion:reduce){.reviews-track{transition:none}}
