:root{--paper:#F4F1EA;--ink:#191919;--muted:#77736D;--line:#D9D3C8;--gutter:20px;--margin:48px;--font:"Helvetica Neue",Helvetica,Arial,sans-serif;--transition:280ms cubic-bezier(.2,.7,.3,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.45 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:6px}::selection{background:var(--ink);color:var(--paper)}.skip{position:fixed;top:-100px;left:20px;background:var(--ink);color:var(--paper);padding:15px;z-index:100}.skip:focus{top:15px}.meta{font-size:12px;letter-spacing:.025em;line-height:1.5}.site-header{position:sticky;top:0;z-index:10;background:var(--paper)}.header-inner{height:96px;margin:auto;max-width:1600px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.site-header,.page-grid{margin:0 var(--margin)}.monogram{font-size:36px;font-weight:700;letter-spacing:-3px;line-height:1}.site-header nav,footer nav{display:flex;gap:38px}.site-header nav a{font-size:14px;position:relative;padding:10px 0}.site-header nav a::after{content:'';position:absolute;bottom:4px;left:0;height:1px;width:100%;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform var(--transition)}.site-header nav a:hover::after,.site-header nav a[aria-current]::after{transform:scaleX(1)}.menu-toggle{display:none}.page-grid{max-width:1600px;border-left:1px solid var(--line);border-right:1px solid var(--line);background-image:linear-gradient(to right,transparent calc(100% - 1px),rgba(217,211,200,.42) calc(100% - 1px));background-size:calc(100% / 12) 100%}.hero{position:relative}.hero-top{display:flex;justify-content:space-between;padding:30px 0 20px;text-transform:uppercase}.hero-top>span:last-child{width:33.33%;text-transform:none}.hero-composition{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));min-height:660px;border-bottom:1px solid var(--line)}.hero-copy{grid-row:1;grid-column:1/8;position:relative;z-index:2;padding-top:32px;pointer-events:none}.hero-copy a{pointer-events:auto}h1{font-size:clamp(76px,8.2vw,120px);line-height:.97;letter-spacing:-.075em;font-weight:400;margin:0 0 34px}h1>span{display:block;width:fit-content}.title-bold{font-weight:700;padding-left:14%}.title-end{padding-left:3%}h1 i{font-weight:400}.hero-copy>p{font-size:16px;line-height:1.6;max-width:335px;margin:0 0 26px}.text-link{font-size:12px;letter-spacing:.035em;text-transform:uppercase;display:inline-flex;align-items:center;gap:24px;border-bottom:1px solid var(--ink);padding:0 0 8px;min-height:32px}.text-link span{font-size:22px;line-height:1;transition:transform var(--transition)}.text-link:hover span{transform:translate(3px,-3px)}.portrait{margin:0;grid-column:7/13;align-self:end;position:relative;grid-row:1;height:650px;min-width:0;overflow:hidden}.portrait img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:grayscale(1);display:block;animation:portraitIn .7s both}.portrait figcaption{position:absolute;right:10px;bottom:15px;background:var(--paper);padding:4px 8px}.hero-side{position:absolute;right:0;top:50px;writing-mode:vertical-rl;letter-spacing:.08em}.hero-foot{display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line);text-transform:uppercase}.section{padding:100px 0 0;scroll-margin-top:10px}.section-heading{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gutter);align-items:start;margin-bottom:50px}.section-index{grid-column:1/3;padding-top:11px}.section-heading h2{grid-column:3/10;font-size:clamp(42px,4.5vw,64px);font-weight:400;letter-spacing:-.06em;line-height:1.02;margin:0}.section-heading>p{grid-column:10/13;font-size:14px;margin:8px 0 0;color:var(--muted)}.project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:66px var(--gutter)}.project-card{grid-column:span 7;border:0;background:none;text-align:left;padding:0;min-width:0;align-self:start}.project-card:nth-child(4n+2),.project-card:nth-child(4n+3){grid-column:span 5}.project-card:nth-child(even){margin-top:105px}.project-art{aspect-ratio:1.4;overflow:hidden;background:#e9e7e1;position:relative}.project-card:nth-child(4n+2) .project-art,.project-card:nth-child(4n+3) .project-art{aspect-ratio:1.06}.project-art img{width:100%;height:100%;object-fit:contain;display:block;transition:transform 500ms cubic-bezier(.2,.7,.3,1)}.project-card:hover img{transform:scale(1.025)}.project-meta{display:grid;grid-template-columns:35px 1fr 30px;gap:12px;padding:17px 0 0;border-top:1px solid var(--line)}.project-number{font-size:12px;padding-top:7px;color:var(--muted)}.project-meta h3{font-size:clamp(25px,2.3vw,36px);letter-spacing:-.045em;font-weight:400;line-height:1.2;margin:0 0 7px}.project-category{font-size:12px;color:var(--muted)}.project-arrow{font-size:27px;transition:transform var(--transition)}.project-card:hover .project-arrow{transform:translate(3px,-3px)}.all-projects{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:27px 0;margin-top:64px;gap:20px}.expertise-grid{display:grid;grid-template-columns:1fr 1fr}.expertise-grid article{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr 2fr;gap:20px;padding:35px 20px 40px 0;min-height:200px}.expertise-grid article:nth-child(even){padding-left:20px;border-left:1px solid var(--line)}.expertise-number{font-size:clamp(46px,5vw,76px);line-height:1;font-weight:300;letter-spacing:-.08em;color:#a8a399;align-self:end}.expertise-grid h3{font-size:28px;font-weight:400;letter-spacing:-.045em;line-height:1.15;margin:0}.expertise-grid p{font-size:14px;line-height:1.55;color:var(--muted);margin:5px 0 0;align-self:end}.about{display:grid;grid-template-columns:1fr 1fr;gap:var(--gutter);border-top:1px solid var(--line);margin-top:0}.about .section-heading{display:block}.about .section-index{display:block;margin-bottom:35px}.about .section-heading h2{font-size:clamp(42px,4.5vw,64px)}.about-content{padding:46px 0 0 20px}.about-lead{font-size:clamp(25px,2.4vw,36px);line-height:1.25;letter-spacing:-.035em;margin:0 0 25px}.about-content>p:not(.about-lead){max-width:490px;font-size:16px;line-height:1.65;color:var(--muted);margin:0 0 28px}.approach-preview{margin-top:50px;padding-top:22px;border-top:1px solid var(--line);scroll-margin-top:120px}.approach-preview ol{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:18px}.approach-preview li{font-size:18px;letter-spacing:-.025em}.approach-preview li span{font-size:12px;color:var(--muted);margin-right:14px}.contact{margin-top:100px;border-top:1px solid var(--line);padding-bottom:80px}.contact-composition{display:grid;grid-template-columns:7fr 5fr;gap:20px;margin-top:38px}.contact h2{font-size:clamp(64px,8vw,116px);font-weight:400;letter-spacing:-.075em;line-height:.98;margin:0}.contact h2 i{font-weight:400}.contact-detail{display:flex;flex-direction:column;justify-content:space-between;padding:10px 0 0 20px}.contact-detail>p{font-size:clamp(28px,3vw,42px);letter-spacing:-.045em;margin:0}.contact-pending{border-top:1px solid var(--line);padding-top:15px;max-width:320px;margin-top:40px}.contact-pending>p{font-size:14px;color:var(--muted);margin:8px 0 0}footer{border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;gap:25px;padding:27px 0;align-items:center}footer nav{gap:24px;font-size:12px}.footer-wordmark{font-size:clamp(60px,15.2vw,222px);font-weight:500;letter-spacing:-.085em;line-height:1.05;white-space:nowrap;padding:28px 0;border-top:1px solid var(--line)}.footer-wordmark span{color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:18px 0 24px;color:var(--muted)}dialog{width:min(1180px,95vw);max-height:92vh;background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:0}dialog::backdrop{background:rgba(25,25,25,.7)}.dialog-bar{position:sticky;top:0;background:var(--paper);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:18px 28px;z-index:2}.dialog-bar button{border:0;background:none;padding:4px 0}.dialog-bar button span{font-size:26px;margin-left:16px}.detail-intro{padding:40px 6%}.detail-intro h2{font-size:clamp(36px,6vw,76px);letter-spacing:-.055em;font-weight:400;line-height:1.03;margin:15px 0 25px}.detail-intro h3{font-size:23px;font-weight:400}.detail-intro p{max-width:720px;color:var(--muted);line-height:1.65}.detail-images{padding:0 3% 30px;display:grid;gap:16px}.detail-images img{display:block;width:100%;height:auto}.detail-bottom{padding:0 6% 40px}body.modal-open{overflow:hidden}h1>span{animation:titleIn .65s both}h1>span:nth-child(2){animation-delay:80ms}h1>span:nth-child(3){animation-delay:160ms}.reveal{animation:sectionIn .65s both}@keyframes titleIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes portraitIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes sectionIn{from{opacity:.2;transform:translateY(15px)}to{opacity:1;transform:none}}@media(min-width:1696px){.page-grid{margin:auto}.site-header{margin:0 auto;padding:0 48px}}@media(max-width:1050px){:root{--margin:30px}.page-grid{background-size:12.5% 100%}.hero-composition{min-height:580px}.portrait{height:570px}.hero-copy{padding-top:35px}h1{font-size:clamp(72px,9vw,100px)}.hero-copy>p{max-width:300px}.expertise-grid article{grid-template-columns:1fr 3fr}.expertise-grid h3{font-size:26px}.expertise-grid p{grid-column:2}.expertise-number{grid-row:1/3}.footer-top{flex-wrap:wrap}.footer-top nav{order:3;width:100%}.section-heading h2{grid-column:3/11}.section-heading>p{display:none}}@media(max-width:700px){:root{--margin:20px;--gutter:14px}html{scroll-padding-top:90px}.header-inner{height:76px}.monogram{font-size:32px}.menu-toggle{display:flex;gap:18px;align-items:center;background:none;border:0;padding:10px 0;font-size:14px}.menu-toggle span{font-size:23px}.site-header nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:20px;gap:20px;flex-direction:column}.site-header nav.open{display:flex}.site-header nav a{font-size:23px;align-self:flex-start}.page-grid{background-size:25% 100%}.hero-top{padding-top:23px;font-size:10px;gap:20px}.hero-top>span:last-child{width:auto;text-align:right}.hero-composition{display:flex;flex-direction:column;min-height:0}.hero-copy{padding-top:25px}.hero-copy h1{font-size:clamp(66px,13.8vw,96px);margin-bottom:28px}.title-bold{padding-left:12%}.hero-copy>p{max-width:320px;font-size:15px}.hero-copy>.text-link{font-size:11px}.portrait{height:auto;width:85%;align-self:flex-end;margin-top:28px;overflow:hidden}.portrait img{height:auto;max-height:470px;object-fit:contain;object-position:right bottom}.portrait figcaption{font-size:10px;right:0;bottom:10px}.hero-side{display:none}.hero-foot{font-size:10px;gap:15px}.hero-foot span:last-child{text-align:right}.section{padding-top:65px}.section-heading{display:block;margin-bottom:30px}.section-index{display:block;margin-bottom:22px}.section-heading h2{font-size:44px}.project-grid{grid-template-columns:1fr;gap:38px}.project-card,.project-card:nth-child(n){grid-column:auto;margin-top:0}.project-card .project-art,.project-card:nth-child(n) .project-art{aspect-ratio:1.25}.project-meta{grid-template-columns:25px 1fr 25px;gap:10px}.project-meta h3{font-size:28px}.all-projects{align-items:flex-start;flex-direction:column;margin-top:38px;padding:24px 0;gap:15px}.expertise-grid{grid-template-columns:1fr}.expertise-grid article,.expertise-grid article:nth-child(even){padding:27px 0;border-left:0;grid-template-columns:65px 1fr 1fr;min-height:160px;gap:12px}.expertise-grid h3{font-size:25px}.expertise-grid p{grid-column:3;font-size:13px;grid-row:1}.expertise-number{font-size:53px;grid-row:1}.about{display:block}.about .section-heading{margin-bottom:20px}.about-content{padding:0}.about-lead{font-size:27px}.contact{margin-top:65px;padding-bottom:50px}.contact-composition{grid-template-columns:1fr;margin-top:30px;gap:30px}.contact h2{font-size:clamp(66px,14vw,92px)}.contact-detail{padding:0}.contact-detail>p{font-size:32px}.contact-pending{margin-top:25px}.footer-top{gap:22px;padding:24px 0}.footer-top>span{font-size:10px}footer nav{gap:19px}.footer-top>a{font-size:10px}.footer-wordmark{font-size:16.4vw;padding:25px 0}.footer-bottom{font-size:10px;gap:20px}.footer-bottom>a{text-align:right}.dialog-bar{padding:12px 16px}.dialog-bar>.meta{font-size:10px}.detail-intro{padding-top:25px}.detail-intro p{font-size:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;transform:none!important}}

/* Ajustements ciblés du Hero — aucune modification de sa géométrie. */
.hero{--line:color-mix(in srgb,#D9D3C8 75%,#F4F1EA);background-color:var(--paper);background-image:linear-gradient(to right,transparent calc(100% - 1px),rgba(217,211,200,.30) calc(100% - 1px));background-size:calc(100% / 12) 100%}
.hero .hero-side{right:20px}
.hero-copy>.text-link span{font-size:26px;font-weight:500}
@media(min-width:1051px){.hero .portrait{overflow:visible}.hero .portrait img{position:absolute;bottom:0;left:-8%;width:110%;height:110%;max-width:none}}
@media(max-width:1050px){.hero{background-size:12.5% 100%}}
@media(max-width:700px){.hero{background-size:25% 100%}}

/* Section Projets : composition de la référence, palette noire. */
#projets{background:#111111;color:#F4F1EA;padding:58px 32px 0;isolation:isolate}
#projets .section-heading{display:grid;grid-template-columns:1fr 1fr;gap:10px 32px;align-items:end;margin-bottom:34px}
#projets .section-index{grid-column:1/-1;padding:0;margin:0 0 4px;font-size:11px;letter-spacing:.055em;color:#A8A8A8}
#projets .section-heading h2{grid-column:1;font-size:clamp(52px,5.5vw,80px);line-height:1;letter-spacing:-.065em}
#projets .section-heading>p{display:block;grid-column:2;margin:0 0 8px;font-size:14px;line-height:1.55;color:#A8A8A8;justify-self:start}
#projets .project-grid{display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:16px;align-items:stretch}
#projets .project-tile{position:relative;display:block;grid-column:span 12;height:clamp(260px,26vw,390px);min-width:0;background:var(--tile-bg);color:var(--tile-ink);overflow:hidden;border:1px solid #333333;isolation:isolate}
#projets .project-tile-0{grid-column:span 14;--tile-bg:#eaeae8;--tile-ink:#191919}
#projets .project-tile-1{grid-column:span 10;--tile-bg:#15162e;--tile-ink:#F4F1EA}
#projets .project-tile-2{grid-column:span 11;--tile-bg:#ededeb;--tile-ink:#191919}
#projets .project-tile-3{grid-column:span 13;--tile-bg:#eee7cf;--tile-ink:#191919}
#projets .project-tile-4{--tile-bg:#dadada;--tile-ink:#191919}
#projets .project-tile-5{--tile-bg:#171310;--tile-ink:#F4F1EA}
#projets .tile-art{position:absolute;inset:0;z-index:0;pointer-events:none}
#projets .tile-art img{position:absolute;right:0;bottom:0;width:100%;height:100%;object-fit:contain;object-position:right center;display:block;transition:transform 400ms cubic-bezier(.22,1,.36,1);transform-origin:75% 50%}
#projets .project-tile-0 .tile-art img{width:70%}
#projets .project-tile-1 .tile-art img{width:64%}
#projets .project-tile-2 .tile-art img{width:100%;object-position:center bottom}
#projets .project-tile-3 .tile-art img{width:60%}
#projets .project-tile-4 .tile-art img{width:82%;object-position:right bottom}
#projets .project-tile-5 .tile-art img{width:70%}
#projets .tile-number,#projets .tile-title,#projets .tile-category,#projets .tile-arrow{position:absolute;z-index:1;margin:0}
#projets .tile-number{top:22px;left:22px;font-size:12px;line-height:1}
#projets .tile-title{top:65px;left:22px;font-size:clamp(26px,2.8vw,42px);font-weight:500;line-height:.98;letter-spacing:-.045em;max-width:calc(100% - 44px);background:var(--tile-bg);padding:3px 6px 5px 0}
#projets .tile-category{bottom:25px;left:22px;max-width:calc(100% - 75px);font-size:11px;line-height:1.4;background:var(--tile-bg);padding:4px 6px 4px 0}
#projets .tile-arrow{bottom:22px;right:22px;font-size:25px;line-height:1;background:var(--tile-bg);padding:3px;transition:transform 400ms cubic-bezier(.22,1,.36,1)}
#projets .project-tile:focus-visible{outline:2px solid #F4F1EA;outline-offset:4px}
@media(hover:hover){#projets .project-tile:hover .tile-art img{transform:scale(1.03)}#projets .project-tile:hover .tile-arrow{transform:translate(3px,-3px)}}
#projets .project-tile:focus-visible .tile-art img{transform:scale(1.03)}
#projets .all-projects{border-color:#333333;margin-top:28px;padding:24px 0 28px;color:#A8A8A8}
#projets .all-projects .text-link{border-color:#A8A8A8;color:#F4F1EA}
#projets a:focus-visible{outline-color:#F4F1EA}
@media(max-width:1050px){#projets{padding:48px 24px 0}#projets .project-grid{gap:12px}#projets .project-tile{height:270px}#projets .section-heading>p{font-size:12px}#projets .tile-title{font-size:28px;left:17px;top:58px}#projets .tile-number{left:17px;top:18px}#projets .tile-category{left:17px;font-size:10px;bottom:18px}#projets .tile-arrow{right:14px;bottom:15px}}
@media(max-width:700px){#projets{padding:42px 16px 0}#projets .section-heading{grid-template-columns:1fr;gap:14px;margin-bottom:26px}#projets .section-index{font-size:10px}#projets .section-heading h2{font-size:54px}#projets .section-heading>p{grid-column:1;font-size:13px;margin:0}#projets .section-heading>p br{display:none}#projets .project-grid{grid-template-columns:1fr;gap:12px}#projets .project-tile{grid-column:auto;height:clamp(250px,72vw,390px)}#projets .tile-title{font-size:32px;top:61px}#projets .tile-category{font-size:10px}#projets .all-projects{margin-top:22px}#projets .all-projects .text-link{font-size:10px}}
@media(prefers-reduced-motion:reduce){#projets .tile-art img,#projets .tile-arrow{transition:none;transform:none!important}}

/* Section 03 uniquement — cinq expertises, grille continue. */
#expertises{background:#F4F1EA;color:#191919;padding-top:72px}
#expertises .section-heading{display:block;margin:0 0 48px}
#expertises .expertise-kicker{display:flex;justify-content:space-between;gap:20px;margin-bottom:34px;color:#77736D;letter-spacing:.04em}
#expertises .section-heading h2{font-size:clamp(44px,4.5vw,64px);line-height:1.05;margin:0 0 20px;font-weight:400;letter-spacing:-.06em}
#expertises .section-heading>p{display:block;font-size:16px;line-height:1.6;margin:0;color:#77736D}
#expertises .expertise-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid #D9D3C8;border-left:1px solid #D9D3C8}
#expertises .expertise-grid article{position:relative;display:flex;align-items:center;justify-content:center;height:260px;min-height:260px;padding:46px 28px;border:0;border-right:1px solid #D9D3C8;border-bottom:1px solid #D9D3C8;background:#F4F1EA;transition:background-color 400ms cubic-bezier(.22,1,.36,1);cursor:default}
#expertises .expertise-grid article:last-child{grid-column:1/-1}
#expertises .expertise-number{position:absolute;top:22px;left:24px;font-size:26px;line-height:1;font-weight:400;letter-spacing:-.035em;color:#77736D;transition:color 400ms cubic-bezier(.22,1,.36,1)}
#expertises .expertise-content{width:100%;text-align:center;transition:transform 400ms cubic-bezier(.22,1,.36,1)}
#expertises .expertise-content h3{font-size:clamp(36px,3vw,40px);line-height:1.15;font-weight:400;letter-spacing:-.04em;color:#191919;margin:0;transition:color 400ms cubic-bezier(.22,1,.36,1)}
#expertises .expertise-content p{font-size:15px;line-height:1.5;color:#77736D;margin:14px auto 0;max-width:420px;transition:color 400ms cubic-bezier(.22,1,.36,1)}
@media(hover:hover){#expertises .expertise-grid article:hover{background:#191919}#expertises .expertise-grid article:hover h3{color:#F4F1EA}#expertises .expertise-grid article:hover p,#expertises .expertise-grid article:hover .expertise-number{color:#C7C1B7}#expertises .expertise-grid article:hover .expertise-content{transform:translateY(-5px)}}
@media(max-width:1050px){#expertises .expertise-content h3{font-size:32px}#expertises .expertise-content p{font-size:14px}#expertises .expertise-grid article{padding:46px 22px}}
@media(max-width:700px){#expertises{padding-top:52px}#expertises .expertise-kicker{font-size:10px;margin-bottom:28px}#expertises .section-heading{margin-bottom:32px}#expertises .section-heading h2{font-size:42px}#expertises .section-heading>p{font-size:15px}#expertises .expertise-grid{grid-template-columns:minmax(0,1fr)}#expertises .expertise-grid article{height:240px;min-height:240px;padding:48px 18px}#expertises .expertise-number{top:20px;left:20px;font-size:24px}#expertises .expertise-content h3{font-size:clamp(27px,7vw,34px)}#expertises .expertise-content p{font-size:14px;max-width:340px}}
@media(prefers-reduced-motion:reduce){#expertises .expertise-grid article,#expertises .expertise-content,#expertises .expertise-content h3,#expertises .expertise-content p,#expertises .expertise-number{transition:none}#expertises .expertise-content{transform:none!important}}

/* Section 04 uniquement : portrait expérimental et présentation validée. */
#a-propos{display:block;background:#F4F1EA;color:#191919;padding:76px 7% 0;border-top:1px solid #D9D3C8}
#a-propos .section-heading{display:block;margin:0 0 54px}
#a-propos .about-kicker{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #D9D3C8;padding-bottom:22px;margin-bottom:34px;color:#77736D;letter-spacing:.035em}
#a-propos .section-heading h2{font-size:clamp(64px,5.5vw,80px);line-height:1.05;letter-spacing:-.055em;font-weight:400;margin:0}
#a-propos .about-editorial{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:clamp(64px,5vw,80px);align-items:stretch}
#a-propos .about-portrait{margin:0;min-width:0}
#a-propos .about-portrait-frame{aspect-ratio:3/4;overflow:hidden}
#a-propos .about-portrait img{width:100%;height:100%;object-fit:cover;object-position:62% center;display:block;filter:none;transition:transform 700ms cubic-bezier(.2,.8,.2,1)}
#a-propos .about-portrait figcaption{display:flex;justify-content:space-between;gap:12px;margin-top:15px;font-size:10px;color:#77736D;letter-spacing:.025em}
#a-propos .about-content{display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:0;margin:0}
#a-propos .about-eyebrow{display:block;color:#77736D;font-size:11px;letter-spacing:.05em;margin-bottom:18px}
#a-propos .about-copy h3{font-size:clamp(42px,3.8vw,56px);font-weight:400;letter-spacing:-.055em;line-height:1.08;margin:0 0 25px;padding-bottom:24px;border-bottom:1px solid #D9D3C8}
#a-propos .about-copy p{font-size:16px;line-height:1.75;color:#77736D;margin:0 0 21px}
#a-propos .about-copy .about-intro{font-size:19px;line-height:1.6;color:#191919}
#a-propos .about-copy p:last-child{margin-bottom:0}
#a-propos .about-path{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #191919;padding-top:18px;margin-top:36px;font-size:12px;letter-spacing:.035em;cursor:default;min-height:50px}
#a-propos .about-path>span{display:block;transition:transform 350ms cubic-bezier(.2,.8,.2,1)}
#a-propos .about-path-arrow{font-size:27px;line-height:1}
#a-propos .about-path:focus-visible{outline:2px solid #191919;outline-offset:6px}
#a-propos .about-path:focus-visible>span:first-child{transform:translateX(5px)}
#a-propos .about-path:focus-visible>.about-path-arrow{transform:translate(5px,-5px)}
@media(hover:hover){#a-propos .about-portrait-frame:hover img{transform:scale(1.055)}#a-propos .about-path:hover>span:first-child{transform:translateX(5px)}#a-propos .about-path:hover>.about-path-arrow{transform:translate(5px,-5px)}}
@media(max-width:1050px){#a-propos{padding:60px 6% 0}#a-propos .about-editorial{gap:34px}#a-propos .section-heading{margin-bottom:40px}#a-propos .section-heading h2{font-size:60px}#a-propos .about-copy h3{font-size:40px}#a-propos .about-copy .about-intro{font-size:18px}#a-propos .about-copy p{font-size:15px;line-height:1.65}#a-propos .about-portrait figcaption{font-size:9px;flex-wrap:wrap}}
@media(max-width:760px){#a-propos{padding:50px 6% 0}#a-propos .about-kicker{font-size:10px;margin-bottom:28px;padding-bottom:18px}#a-propos .section-heading h2{font-size:52px}#a-propos .section-heading{margin-bottom:32px}#a-propos .about-editorial{grid-template-columns:minmax(0,1fr);gap:36px}#a-propos .about-portrait{width:100%;max-width:460px}#a-propos .about-portrait img{object-position:66% center}#a-propos .about-portrait figcaption{font-size:10px}#a-propos .about-copy h3{font-size:clamp(34px,8vw,44px)}#a-propos .about-copy .about-intro{font-size:18px}#a-propos .about-copy p{font-size:16px}#a-propos .about-path{font-size:11px}}
@media(prefers-reduced-motion:reduce){#a-propos .about-portrait img,#a-propos .about-path>span{transition:none;transform:none!important}}

/* Mon approche uniquement : quatre étapes reliées de centre à centre. */
#a-propos #approche{background:#F4F1EA}
#a-propos #approche ol{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:32px 0 0;padding:0;list-style:none;isolation:isolate}
#a-propos #approche ol::before{content:"";position:absolute;top:22px;left:12.5%;right:12.5%;height:1px;background:#77736D;z-index:-1}
#a-propos #approche li{display:flex;flex-direction:column;align-items:center;min-width:0;text-align:center;font-size:24px;line-height:1.3;letter-spacing:-.025em;color:#191919}
#a-propos #approche li span{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;margin:0 0 16px;border:1px solid #77736D;border-radius:50%;background:#F4F1EA;color:#191919;font-size:13px;line-height:1;letter-spacing:0;transition:background-color 300ms ease,color 300ms ease,transform 300ms ease}
@media(hover:hover){#a-propos #approche li:hover span{background:#191919;color:#F4F1EA;transform:scale(1.08)}}
@media(max-width:1050px){#a-propos #approche li{font-size:19px}}
@media(max-width:700px){#a-propos #approche li{font-size:12px}#a-propos #approche li span{width:36px;height:36px;font-size:11px}#a-propos #approche ol::before{top:18px}}
@media(prefers-reduced-motion:reduce){#a-propos #approche li span{transition:none;transform:none!important}}

/* Formulaire uniquement — grille et composition Contact conservées. */
#contact .contact-form{display:flex;flex-direction:column;gap:14px;width:100%;min-width:0;margin-top:40px;border-top:1px solid #D9D3C8;padding-top:15px}
#contact .contact-form label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#191919}
#contact .contact-form input,#contact .contact-form textarea{box-sizing:border-box;width:100%;min-width:0;border:1px solid #D9D3C8;border-radius:0;background:#F4F1EA;color:#191919;padding:12px;font:14px/1.5 var(--font);box-shadow:none;transition:border-color 200ms ease}
#contact .contact-form textarea{resize:vertical;min-height:120px}
#contact .contact-form input:focus,#contact .contact-form textarea:focus{border-color:#191919;outline:1px solid #191919;outline-offset:0}
#contact .contact-count{align-self:flex-end;font-size:12px;color:#77736D;margin-top:-6px}
#contact .contact-form button{align-self:flex-end;min-height:44px;border:1px solid #191919;border-radius:0;padding:12px 22px;background:#191919;color:#F4F1EA;font:14px/1.4 var(--font);transition:background-color 300ms ease,color 300ms ease}
#contact .contact-form button:hover,#contact .contact-form button:focus-visible{background:#F4F1EA;color:#191919}
#contact .contact-form button:disabled{cursor:wait}
#contact #contact-status{margin:0;font-size:14px;line-height:1.5;color:#77736D;overflow-wrap:anywhere}
#contact #contact-status:empty{display:none}
@media(prefers-reduced-motion:reduce){#contact .contact-form input,#contact .contact-form textarea,#contact .contact-form button{transition:none}}
