
:root{--paper:#f7f7f4;--ink:#171917;--muted:#70736e;--line:rgba(23,25,23,.19);--yellow:#ffd501}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #aa8500;outline-offset:5px}[hidden]{display:none!important}
.site-head{position:fixed;inset:0 0 auto;z-index:50;display:flex;justify-content:space-between;align-items:center;height:84px;padding:0 4vw;border-bottom:1px solid var(--line);background:rgba(247,247,244,.96);backdrop-filter:blur(14px)}.brand{display:block;width:190px;line-height:0}.brand svg{display:block;width:100%;height:auto}.nav{display:flex;gap:30px;font-size:11px;letter-spacing:.075em;text-transform:uppercase}.nav a{position:relative;padding:10px 0}.nav a:after{content:"";position:absolute;bottom:3px;left:0;width:100%;height:2px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .3s}.nav a:hover:after,.nav a[aria-current="page"]:after{transform:scaleX(1)}
main{padding:145px 4vw 90px}.back{font-size:10px;letter-spacing:.09em;text-transform:uppercase;display:inline-block}.archive-heading{display:flex;justify-content:space-between;align-items:end;gap:6vw;margin:48px 0 46px}.archive-heading h1{font-size:clamp(70px,10vw,152px);letter-spacing:-.075em;line-height:.88;font-weight:400;margin:0}.archive-heading h1 span{display:block}.archive-heading h1 i{color:var(--yellow);font-style:normal}.archive-heading p{font-size:15px;line-height:1.65;color:#60635e;max-width:330px;margin:0 0 5px}
.archive-tools{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:21px 0;border-top:1px solid var(--ink);margin-bottom:24px}.filters{display:flex;flex-wrap:wrap;gap:9px 24px}.filter{border:0;background:none;padding:6px 0;font-size:12px;color:var(--muted);position:relative}.filter.active{color:var(--ink)}.filter.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--yellow)}.count{white-space:nowrap;font-size:10px;color:var(--muted);letter-spacing:.08em}
.masonry{columns:3;column-gap:24px}.project-card{display:inline-block;width:100%;margin:0 0 36px;break-inside:avoid;vertical-align:top}.project-image{display:block;position:relative;overflow:hidden;aspect-ratio:var(--ratio);background:#deded8}.project-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.65,.25,1)}.project-card:hover img{transform:scale(1.035)}.project-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0004,transparent 35%);pointer-events:none}.project-arrow{position:absolute;z-index:1;right:18px;bottom:18px;height:40px;width:40px;display:grid;place-items:center;border:1px solid #fff9;border-radius:50%;color:#fff;font-size:22px;transition:background .25s,color .25s}.project-card:hover .project-arrow{background:var(--yellow);border-color:var(--yellow);color:var(--ink)}.project-meta{padding:16px 0 18px;border-bottom:1px solid var(--line)}.project-meta h2{font-weight:400;font-size:clamp(22px,1.85vw,30px);line-height:1.15;letter-spacing:-.04em;margin:0 0 10px}.project-info{display:flex;gap:10px;justify-content:space-between;color:#646760;font-size:10px;letter-spacing:.055em;text-transform:uppercase;line-height:1.5}.empty{font-size:18px;line-height:1.6;padding:50px 0}.archive-end{margin-top:30px;padding:22px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.archive-footer{background:var(--yellow);padding:52px 4vw 24px}.archive-footer .invitation{display:flex;justify-content:space-between;align-items:center;gap:30px}.archive-footer h2{font-size:clamp(35px,5vw,72px);font-weight:400;line-height:1;letter-spacing:-.055em;margin:0}.archive-footer .contact-link{font-size:12px;border-bottom:1px solid;padding-bottom:8px;white-space:nowrap}.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:45px;padding-top:18px;border-top:1px solid #0004;font-size:10px;color:#383b30}
.detail{display:none;position:fixed;inset:0;z-index:100;background:var(--paper);overflow:auto;overscroll-behavior:contain}.detail.open{display:block}.close-detail{position:fixed;z-index:2;right:4vw;top:22px;border:0;background:var(--paper);padding:13px 20px}.detail-hero{height:65vh;min-height:340px;background-size:cover;background-position:center;position:relative;background-color:#383b34}.detail-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0009,transparent)}.detail-name{position:absolute;z-index:1;bottom:8%;left:6vw;right:6vw;color:white;font-size:clamp(44px,7vw,110px);font-weight:400;letter-spacing:-.045em;margin:0}.detail-body{display:grid;grid-template-columns:1fr 2fr;gap:55px;padding:70px 6vw}.single-facts{font-size:11px;line-height:2.5;text-transform:uppercase;letter-spacing:.06em}.lead{font-size:clamp(24px,3vw,43px);line-height:1.4;letter-spacing:-.035em}
@media(max-width:1000px){.masonry{columns:2}.archive-heading h1{font-size:clamp(70px,11vw,110px)}.archive-heading p{max-width:270px}}
@media(max-width:700px){.site-head{height:70px;padding:0 6vw}.brand{width:125px}.nav{gap:13px;font-size:9px;letter-spacing:0}.nav a:nth-child(3){display:none}main{padding:112px 6vw 60px}.archive-heading{display:block;margin:38px 0 30px}.archive-heading h1{font-size:clamp(65px,16vw,100px)}.archive-heading p{margin:27px 0 0;max-width:340px;font-size:14px}.archive-tools{align-items:start;flex-direction:column;gap:14px}.filters{gap:9px 20px}.masonry{columns:1}.project-meta h2{font-size:27px}.archive-footer{padding:40px 6vw 24px}.archive-footer .invitation{align-items:start;flex-direction:column}.detail-body{grid-template-columns:1fr;gap:30px}.archive-end{gap:18px;font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-image img,.project-arrow,.nav a:after{transition:none}}

/* Project sheet: photographs first, project information below, two-way navigation. */
.detail{background:#f7f7f4}.detail.open{display:block}
.detail .close-detail{position:fixed;top:18px;right:4vw;z-index:4;border:1px solid #17191733;background:#f7f7f4e8;color:#171917;padding:11px 16px;font-size:11px;backdrop-filter:blur(12px)}
.project-photo-gallery{padding:80px 24px 24px;columns:3;column-gap:18px}
.project-photo-gallery figure{display:inline-block;vertical-align:top;break-inside:avoid;width:100%;margin:0 0 18px;background:#e1e1db;overflow:hidden}
.project-photo-gallery img{display:block;width:100%;height:auto;min-height:160px;cursor:default}
.project-sheet-info{display:grid;grid-template-columns:1fr 1.55fr;gap:9vw;margin:60px 6vw 95px;padding-top:28px;border-top:1px solid #17191755;color:#171917}
.project-sheet-facts{margin:0}.project-sheet-facts>div{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid #17191725}.project-sheet-facts dt,.project-sheet-description h2{font:400 10px Arial,Helvetica,sans-serif;letter-spacing:.11em;text-transform:uppercase;color:#70736e}.project-sheet-facts dd{margin:0;font-size:16px;line-height:1.5}.project-sheet-description h2{margin:15px 0 20px}.project-sheet-description p{font:400 clamp(22px,2.4vw,36px)/1.4 Arial,Helvetica,sans-serif;letter-spacing:-.025em;margin:0;white-space:pre-line}.project-demo-note{font-size:10px;line-height:1.6;letter-spacing:.03em;color:#70736e;margin-top:22px}
.project-sheet-nav{display:grid;grid-template-columns:1fr 1fr;min-height:300px}.project-sheet-nav>*{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:35px;padding:45px 6vw;border:0;border-radius:0;text-align:left;text-decoration:none;font-family:Arial,Helvetica,sans-serif;cursor:pointer}.project-next{background:#171b18;color:#f7f7f4}.project-back{background:#ffd501;color:#171917}.project-sheet-nav small{font-size:10px;text-transform:uppercase;letter-spacing:.13em}.project-sheet-nav strong{font-size:clamp(28px,3.7vw,57px);font-weight:400;line-height:1.06;letter-spacing:-.045em}.project-sheet-nav .nav-arrow{font-size:30px;align-self:flex-end;transition:transform .25s}.project-sheet-nav>*:hover .nav-arrow{transform:translateX(6px)}.project-sheet-nav>*:focus-visible{outline:3px solid #9a7800;outline-offset:-6px}
@media(max-width:1000px){.project-photo-gallery{columns:2}}
@media(max-width:600px){.project-photo-gallery{columns:1;padding:72px 14px 14px;column-gap:14px}.project-photo-gallery figure{margin-bottom:14px}.project-sheet-info{grid-template-columns:1fr;gap:26px;margin:35px 6vw 55px}.project-sheet-nav{min-height:240px}.project-sheet-nav>*{padding:28px 6vw;gap:25px}.project-sheet-nav strong{font-size:clamp(23px,5.6vw,32px)}.project-sheet-nav small{font-size:8px}.project-sheet-nav .nav-arrow{font-size:24px}}
@media(prefers-reduced-motion:reduce){.project-sheet-nav .nav-arrow{transition:none}}

.project-card:nth-child(n){max-width:none;margin:0 0 36px}.brand,.brand svg{filter:none;mix-blend-mode:normal}.project-meta{display:block}.project-image{aspect-ratio:var(--ratio)!important}.project-meta p{margin:0;text-align:left}.project-sheet-page{padding:0}.project-sheet-page .project-photo-gallery{padding-top:104px}.project-sheet-page .project-photo-gallery img{min-height:0}.project-sheet-page .project-sheet-description p+p{margin-top:1em}@media(max-width:700px){.nav a:nth-child(2){display:block}.project-sheet-page .project-photo-gallery{padding-top:88px}}
@media (min-width: 1001px) {
  #gallery.masonry {
    column-count: 3;
    column-gap: 24px;
  }
}
/* Photos complètes dans « Tous les projets » */
#gallery .project-image {
  aspect-ratio: auto !important;
}

#gallery .project-image img {
  width: 150%;
  height: auto !important;
  object-fit: contain;
  transform: none !important;
  transition: none;
}