@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&display=swap');
:root{--paper:#f8f8f5;--white:#fff;--ink:#181b1b;--muted:#626866;--line:#d6d8d2;--blue:#3656c9;--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 var(--sans);overflow-x:hidden}body.menu-open{overflow:hidden}img{max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:#dce2f9}:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.skip{position:absolute;top:-4rem;left:1rem;background:white;padding:.7rem 1rem;z-index:100}.skip:focus{top:1rem}.micro{font-size:.69rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.accent{color:var(--blue)}
.header{height:93px;position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:3vw;padding:0 4vw;background:rgba(248,248,245,.97);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.logo{display:block;width:clamp(200px,22vw,318px);flex:none}.logo img{display:block;width:100%;height:auto}.desktop-nav{display:flex;gap:clamp(.8rem,1.7vw,2rem);align-items:center}.desktop-nav a{font-size:.77rem;font-weight:600;white-space:nowrap;transition:color .2s}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:var(--blue)}.menu-button{border:1px solid var(--ink);background:transparent;padding:.6rem .8rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;display:none;gap:1rem;align-items:center}.menu-button span{font-size:1rem}.menu-dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;padding:4vw;margin:0;border:0;background:var(--paper);color:var(--ink)}.menu-dialog::backdrop{background:rgba(24,27,27,.55)}.menu-head,.menu-foot{display:flex;justify-content:space-between;border-bottom:1px solid var(--ink);padding-bottom:1rem;font-size:.7rem;letter-spacing:.15em;font-weight:700}.menu-close{border:0;background:none;cursor:pointer;text-transform:uppercase;letter-spacing:.13em}.menu-links{display:grid;grid-template-columns:1fr 1fr;gap:0 5vw;margin:6vh 0}.menu-links a{font:400 clamp(3rem,6vw,7rem)/1.2 var(--serif);border-bottom:1px solid var(--line);padding:.1em 0}.menu-links a:hover{color:var(--blue)}.menu-foot{border-top:1px solid var(--ink);border-bottom:0;padding-top:1rem}
.home-hero{display:grid;grid-template-columns:52% 48%;min-height:calc(100svh - 93px);border-bottom:1px solid var(--ink)}.home-hero-copy{display:flex;flex-direction:column;align-items:flex-start;padding:5vw 4vw 2rem;min-width:0}.home-hero-copy h1{font:400 clamp(4.2rem,6.4vw,9.5rem)/.92 var(--serif);letter-spacing:-.065em;margin:auto 0 2.2rem}.home-hero-copy h1 em{font-weight:400;color:var(--blue)}.home-hero-copy p{max-width:520px;font-size:clamp(1.05rem,1.55vw,1.45rem);line-height:1.5;margin:0 0 2.3rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;min-width:240px;padding:1rem 1.25rem;background:var(--ink);color:white;font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;transition:background .2s,color .2s}.button:hover{background:var(--blue)}.button span{font-size:1.4rem;font-weight:400;line-height:1}.button-outline{background:transparent;color:var(--ink);border:1px solid var(--ink)}.button-outline:hover{color:white}.home-index{margin-top:auto;padding-top:3rem;font-size:.66rem;font-weight:700;letter-spacing:.15em}.home-hero-image{margin:0;position:relative;min-height:540px;background:#e7e4dc}.home-hero-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:49% 50%}.home-hero-image figcaption{position:absolute;bottom:1rem;left:1rem;background:rgba(255,255,255,.9);padding:.5rem .7rem;font-size:.63rem;font-weight:700;letter-spacing:.1em}.home-statement{display:grid;grid-template-columns:27% 1fr;padding:9rem 4vw 11rem;border-bottom:1px solid var(--ink)}.home-statement h2,.home-work h2,.home-brands h2{font:400 clamp(3rem,5.6vw,7.8rem)/1.02 var(--serif);letter-spacing:-.055em;margin:0}.home-statement p{font-size:1.25rem;max-width:560px;margin:2.3rem 0 1.5rem}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:.32rem;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.text-link:hover{color:var(--blue)}.section-wrap{padding:6rem 4vw 9rem}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;border-top:1px solid var(--ink);padding-top:1.2rem;margin-bottom:3rem}.section-heading h2{font:400 clamp(2.8rem,4.3vw,5rem)/1 var(--serif);letter-spacing:-.045em;margin:.8rem 0 0}.section-heading>p{max-width:370px;margin:0;color:var(--muted)}.featured-grid,.project-grid,.collab-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5rem 1.5rem}.project-card{min-width:0}.project-card-media{position:relative;overflow:hidden;background:#e8e8e4}.project-card-media img{display:block;width:100%;aspect-ratio:1.32/1;object-fit:cover;transition:transform .55s}.project-card a:hover img{transform:scale(1.03)}.card-arrow{position:absolute;right:1rem;bottom:1rem;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--paper);font-size:1.35rem;transition:background .2s,color .2s}.project-card a:hover .card-arrow{background:var(--blue);color:white}.card-meta{display:flex;gap:2rem;border-bottom:1px solid var(--line);padding:.9rem 0;color:var(--muted);font-size:.66rem;letter-spacing:.12em;font-weight:700;text-transform:uppercase}.card-number{color:var(--blue)}.card-title{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;padding-top:.5rem}.card-title h3{font:400 clamp(2.1rem,3.3vw,4rem)/1 var(--serif);letter-spacing:-.04em;margin:.2rem 0}.card-title>span{font-size:.78rem;color:var(--muted);text-align:right}.home-work{display:grid;grid-template-columns:1fr 1fr;min-height:650px;background:#e9ecea}.home-work-image img{display:block;width:100%;height:100%;max-height:750px;object-fit:cover;object-position:center}.home-work>div:last-child{padding:6vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.home-work h2{margin:2rem 0}.home-work p{font-size:1.2rem;max-width:500px;margin:0 0 2rem}.home-brands{padding:9rem 4vw;border-bottom:1px solid var(--ink)}.home-brands h2{max-width:1000px;margin:1.6rem 0 3rem}.home-brandline{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:2rem 0;margin-bottom:2rem;font-size:clamp(.9rem,1.9vw,1.6rem);font-weight:700;letter-spacing:.07em;line-height:2}.home-brandline span{color:var(--blue);padding:0 .4rem}
.page-title{padding:5rem 4vw 5.5rem;border-bottom:1px solid var(--ink);min-height:36rem;display:flex;flex-direction:column;justify-content:space-between}.page-title .micro{display:flex;justify-content:space-between;gap:1rem}.page-title h1{font:400 clamp(5rem,10vw,12rem)/.9 var(--serif);letter-spacing:-.075em;margin:auto 0 2rem;overflow-wrap:anywhere}.page-title p{max-width:800px;align-self:end;font-size:clamp(1.25rem,2vw,2rem);line-height:1.35;margin:0}.project-index{padding:3rem 4vw 9rem}.filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:3.5rem}.filters button{border:1px solid var(--ink);background:transparent;padding:.6rem 1.1rem;cursor:pointer;font-size:.7rem;text-transform:uppercase;font-weight:700;letter-spacing:.08em}.filters button[aria-pressed=true],.filters button:hover{background:var(--ink);color:white}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4rem 1.2rem}.project-grid>div[hidden]{display:none}.project-grid .card-title h3{font-size:clamp(1.8rem,2.6vw,3rem)}.project-grid .card-title{display:block}.project-grid .card-title>span{text-align:left;display:block;margin-top:.4rem}.empty-filter{font-size:1.2rem}
.detail-back{display:flex;justify-content:space-between;gap:1rem;padding:1.5rem 4vw;border-bottom:1px solid var(--line);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.detail-back a:hover{color:var(--blue)}.detail-intro{padding:4.5rem 4vw 5rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem 4vw}.detail-intro .micro{grid-column:1/-1}.detail-intro h1{font:400 clamp(4.5rem,8vw,11rem)/.93 var(--serif);letter-spacing:-.075em;margin:2.5rem 0 0;overflow-wrap:anywhere}.detail-intro p{align-self:end;font-size:clamp(1.3rem,2.2vw,2.3rem);line-height:1.3;max-width:660px;margin:0}.detail-hero{margin:0 4vw;background:#e8e9e5}.detail-hero img{display:block;width:100%;height:min(78svh,920px);object-fit:contain}.detail-hero figcaption,.detail-photo figcaption{padding:.7rem 0;background:var(--paper);color:var(--muted);font-size:.67rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.detail-story{display:grid;grid-template-columns:27% 1fr;gap:3vw;padding:8rem 4vw}.detail-story p{font:400 clamp(1.8rem,3.1vw,3.5rem)/1.22 var(--serif);letter-spacing:-.025em;max-width:990px;margin:0}.detail-story>div{grid-column:2;display:flex;gap:2rem;flex-wrap:wrap;border-top:1px solid var(--ink);padding-top:1rem;margin-top:2.5rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.detail-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5rem 1.4rem;padding:0 4vw 10rem}.detail-photo{margin:0}.detail-photo:nth-child(3n){grid-column:1/-1}.image-button{display:block;width:100%;border:0;padding:0;background:#e8e9e5;cursor:zoom-in}.detail-photo img{display:block;width:100%;height:min(47vw,690px);object-fit:contain}.detail-photo:nth-child(3n) img{height:min(67vw,850px)}.detail-next{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ink)}.detail-next a{padding:3rem 4vw;border-right:1px solid var(--ink);min-height:180px}.detail-next a:last-child{text-align:right;border-right:0}.detail-next span{display:block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.detail-next strong{display:block;font:400 clamp(2rem,4vw,5rem)/1 var(--serif);margin-top:1rem}.detail-next a:hover{background:#eaede9}
.works-grid{padding:6rem 4vw 10rem;display:grid;grid-template-columns:1fr 1fr;gap:8rem 1.5rem}.work{margin:0}.work:nth-child(even){padding-top:10rem}.work img{display:block;width:100%;aspect-ratio:1/1;object-fit:contain}.work figcaption{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--ink);padding-top:.8rem;margin-top:.6rem;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.work figcaption span:last-child{color:var(--muted)}.works-note{padding:7rem 4vw 9rem;background:#e9ecea;display:grid;grid-template-columns:27% 1fr}.works-note h2{font:400 clamp(4rem,7vw,8rem)/1 var(--serif);letter-spacing:-.055em;margin:0}.works-note p{grid-column:2;max-width:670px;font-size:1.25rem}
.collab-lead{display:grid;grid-template-columns:27% 1fr;padding:6rem 4vw 4rem}.collab-lead p{font:400 clamp(2rem,3.7vw,4.6rem)/1.15 var(--serif);max-width:1000px;margin:0}.collab-projects{padding:2rem 4vw 8rem;grid-template-columns:repeat(3,minmax(0,1fr));gap:4rem 1.2rem}.collab-projects .card-title{display:block}.collab-projects .card-title h3{font-size:clamp(1.8rem,2.6vw,3rem)}.collab-projects .card-title>span{display:block;text-align:left;margin-top:.4rem}.brand-section{padding:6rem 4vw 10rem;background:white}.brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.brand{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;min-height:180px;padding:1.2rem;text-align:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}.brand span{font-weight:700;font-size:clamp(1.2rem,2vw,2.5rem);letter-spacing:-.05em;line-height:1.05}.brand-0 span,.brand-4 span{font:400 clamp(1.6rem,2.4vw,3rem)/1 var(--serif);letter-spacing:-.03em}.brand-2 span{text-transform:uppercase;letter-spacing:.08em}.brand-3 span{font-weight:400;letter-spacing:.09em}.brand-5 span{font-style:italic}.brand small{font-size:.6rem;text-transform:uppercase;letter-spacing:.12em;color:var(--blue);opacity:0;transition:opacity .2s}.brand:hover{background:var(--paper)}.brand:hover small{opacity:1}
.brand-logo{display:block;width:auto;max-width:75%;height:60px;object-fit:contain;mix-blend-mode:multiply}.brand-logo[hidden]{display:none!important}.brand:has(.brand-logo:not([hidden])) span{font:600 .75rem/1.2 var(--sans);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding:8rem 4vw}.about-photo img{width:100%;display:block;aspect-ratio:.85/1;object-fit:cover}.about-photo>span{font-size:.67rem;letter-spacing:.1em;font-weight:700;display:block;margin-top:.6rem}.about-copy{padding-top:3rem}.about-copy h2{font:400 clamp(3.5rem,5.5vw,7rem)/1.03 var(--serif);letter-spacing:-.05em;margin:3rem 0}.about-copy p{max-width:620px;font-size:1.18rem;line-height:1.6}.process-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:0 4vw 9rem}.process-row figure{margin:0}.process-row img{width:100%;height:430px;object-fit:cover;display:block}.process-row figcaption{border-top:1px solid var(--ink);margin-top:.6rem;padding-top:.7rem;font-size:.7rem;letter-spacing:.1em;font-weight:700}.timeline{padding:6rem 4vw 10rem;background:#e9ecea}.timeline-list>div{display:grid;grid-template-columns:11% 1fr 33%;gap:1rem;border-top:1px solid var(--line);padding:1.1rem 0}.timeline-list>div:last-child{border-bottom:1px solid var(--ink)}.timeline-list span{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.timeline-list strong{font:400 clamp(1.4rem,2.2vw,2.6rem)/1.08 var(--serif)}
.press-group{padding:6rem 4vw 1rem}.press-group:last-of-type{padding-bottom:9rem}.press-item{display:grid;grid-template-columns:10% 30% 1fr 2rem;gap:1rem;align-items:center;border-bottom:1px solid var(--line);min-height:100px;padding:1.3rem 0;transition:background .2s,padding .2s}.press-item:hover{background:#ecede9;padding-left:.8rem}.press-item span{font-size:.78rem}.press-item strong{font:400 clamp(1.5rem,2.6vw,3rem)/1.08 var(--serif)}.press-item b{text-align:right;font-weight:400;font-size:1.5rem}.contact-page{min-height:calc(100svh - 93px);padding:5rem 4vw 3rem;display:flex;flex-direction:column}.contact-page h1{font:400 clamp(5rem,10vw,14rem)/.9 var(--serif);letter-spacing:-.075em;margin:auto 0 3rem}.contact-page p{font-size:1.3rem}.contact-page>a{font:400 clamp(1.5rem,3.5vw,4rem)/1 var(--serif);border-bottom:1px solid var(--ink);padding-bottom:1rem;overflow-wrap:anywhere}.contact-page>div{margin-top:auto;padding-top:5rem;font-size:.7rem;letter-spacing:.12em;font-weight:700}.contact-page>div span{color:var(--blue);padding:0 1rem}
.footer{background:#e9ecea;padding:6rem 4vw 2rem}.footer-top h2{font:400 clamp(3.5rem,6vw,8rem)/1 var(--serif);letter-spacing:-.06em;margin:2rem 0 3rem}.footer-email{display:inline-block;border-bottom:1px solid var(--ink);font-size:1.1rem;padding-bottom:.4rem}.footer-email:hover{color:var(--blue)}.footer-bottom{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;border-top:1px solid var(--ink);margin-top:8rem;padding-top:1rem;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.footer-bottom nav{display:flex;gap:1rem 2rem;flex-wrap:wrap}
.lightbox{width:min(96vw,1500px);max-height:96vh;margin:auto;padding:0;border:0;background:#f8f8f5}.lightbox::backdrop{background:rgba(16,19,19,.94)}.lightbox-bar{display:flex;justify-content:space-between;align-items:center;padding:.7rem 1rem;font-size:.65rem;letter-spacing:.1em;font-weight:700}.lightbox-bar button{background:transparent;border:0;cursor:pointer;text-transform:uppercase}.lightbox img{display:block;max-height:calc(96vh - 100px);max-width:100%;margin:auto;object-fit:contain}.lightbox p{margin:.3rem 1rem 1rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}
@media(max-width:1160px){.desktop-nav{display:none}.menu-button{display:flex}.project-grid,.collab-projects{grid-template-columns:repeat(2,minmax(0,1fr))}.home-hero-copy h1{font-size:clamp(3.7rem,6.3vw,6.5rem)}}
@media(max-width:800px){.home-hero{grid-template-columns:1fr}.home-hero-copy{min-height:650px;padding:5rem 5vw 2rem}.home-hero-copy h1{font-size:clamp(4.8rem,12vw,8rem)}.home-hero-image{min-height:65svh}.home-statement,.detail-story,.works-note,.collab-lead{grid-template-columns:1fr;gap:2rem}.home-statement{padding:7rem 5vw}.detail-intro{grid-template-columns:1fr}.detail-intro h1{margin:1.5rem 0}.detail-story>div,.works-note p{grid-column:1}.about-grid{grid-template-columns:1fr;gap:3rem}.about-photo img{aspect-ratio:1.2/1}.about-copy{padding:0}.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.timeline-list>div{grid-template-columns:15% 1fr}.timeline-list>div span:last-child{grid-column:2}.press-item{grid-template-columns:12% 32% 1fr 1.5rem}}
@media(max-width:600px){.header{height:72px;padding:0 5vw}.logo{width:200px}.menu-dialog{padding:5vw}.menu-links{grid-template-columns:1fr;margin:3vh 0}.menu-links a{font-size:clamp(2.8rem,10vw,4.5rem);padding:.08em 0}.home-hero-copy{min-height:580px}.home-hero-copy h1{font-size:clamp(4.3rem,13vw,6rem)}.home-hero-copy p{font-size:1.08rem}.home-hero-image{min-height:54svh}.home-statement{padding:5rem 5vw}.home-statement h2,.home-work h2,.home-brands h2{font-size:clamp(3.2rem,11vw,5.8rem)}.home-statement p{font-size:1.1rem}.section-wrap{padding:4rem 5vw 6rem}.section-heading{align-items:flex-start}.section-heading h2{font-size:2.6rem}.section-heading .text-link{font-size:.64rem;text-align:right}.featured-grid,.project-grid,.collab-projects,.works-grid{grid-template-columns:1fr;gap:3.3rem}.card-title h3{font-size:2.7rem}.home-work{grid-template-columns:1fr}.home-work-image img{height:70svh;object-fit:cover}.home-work>div:last-child{padding:5rem 5vw}.home-brands{padding:6rem 5vw}.home-brandline{font-size:1rem}.page-title{padding:3rem 5vw 4rem;min-height:27rem}.page-title .micro span:last-child{display:none}.page-title h1{font-size:clamp(4.5rem,15vw,7rem)}.page-title p{font-size:1.25rem}.project-index,.collab-projects{padding:3rem 5vw 6rem}.filters{gap:.4rem}.filters button{padding:.5rem .7rem;font-size:.65rem}.detail-back{padding:1rem 5vw}.detail-intro{padding:3rem 5vw}.detail-intro h1{font-size:clamp(4rem,13vw,7rem)}.detail-intro p{font-size:1.4rem}.detail-hero{margin:0 5vw}.detail-hero img{height:62svh}.detail-story{padding:5rem 5vw}.detail-story p{font-size:2rem}.detail-gallery{grid-template-columns:1fr;padding:0 5vw 6rem;gap:3rem}.detail-photo:nth-child(3n){grid-column:auto}.detail-photo img,.detail-photo:nth-child(3n) img{height:auto;max-height:80svh}.detail-next a{padding:2rem 5vw;min-height:150px}.detail-next strong{font-size:1.9rem}.works-grid{padding:4rem 5vw 6rem}.work:nth-child(even){padding:0}.works-note{padding:5rem 5vw}.works-note h2{font-size:4rem}.collab-lead{padding:5rem 5vw 2rem}.collab-lead p{font-size:2.4rem}.brand-section{padding:5rem 5vw}.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand{min-height:130px;padding:.6rem}.brand span{font-size:1.35rem}.brand small{opacity:1}.about-grid{padding:5rem 5vw}.about-photo img{aspect-ratio:1/1}.about-copy h2{font-size:3.8rem}.process-row{padding:0 5vw 6rem;grid-template-columns:1fr}.process-row img{height:360px}.timeline{padding:5rem 5vw}.timeline-list>div{grid-template-columns:18% 1fr}.timeline-list span{font-size:.65rem}.press-group{padding:4rem 5vw 1rem}.press-item{grid-template-columns:1fr 2rem;gap:.2rem;min-height:90px}.press-item span:first-child{grid-column:1/-1;font-size:.65rem}.press-item strong{grid-column:1;font-size:1.8rem}.press-item span:nth-child(3){grid-column:1;grid-row:3}.press-item b{grid-column:2;grid-row:2/4}.contact-page{min-height:70svh;padding:4rem 5vw 2rem}.contact-page h1{font-size:clamp(4.8rem,15vw,7rem)}.footer{padding:5rem 5vw 2rem}.footer-top h2{font-size:3.9rem}.footer-bottom{margin-top:5rem}.footer-bottom nav{order:3;width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* Le nom de l'artiste reste lisible dans l'en-tête, même sur un petit écran. */
.logo{display:flex;flex-direction:column;gap:.3rem;width:auto;min-width:0;line-height:1;color:var(--ink)}
.logo strong{font-family:var(--serif);font-size:clamp(1.45rem,2.05vw,2.15rem);font-weight:400;letter-spacing:-.055em;white-space:nowrap}
.logo small{font-size:.56rem;font-weight:700;letter-spacing:.2em;white-space:nowrap}
.logo:hover strong{color:var(--blue)}
.home-hero-image img{object-position:center 48%}
.detail-gallery-archive{grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem 1.2rem}
.detail-gallery-archive .detail-photo:nth-child(3n){grid-column:auto}
.detail-gallery-archive .detail-photo img,.detail-gallery-archive .detail-photo:nth-child(3n) img{height:auto;aspect-ratio:1/1;object-fit:contain}
@media(max-width:900px){.detail-gallery-archive{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.logo strong{font-size:1.32rem}.logo small{font-size:.48rem;letter-spacing:.12em}.detail-gallery-archive{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.8rem .65rem}.detail-gallery-archive .detail-photo figcaption{font-size:.55rem}}

/* Démarche artistique : progression du signe vers la présence du visiteur. */
.home-hero-copy h1{font-size:clamp(4.3rem,6vw,8.8rem)}
.home-manifesto{padding:8rem 4vw 9rem;display:grid;grid-template-columns:23% 1fr;border-bottom:1px solid var(--ink)}
.home-manifesto p{font:400 clamp(3.4rem,5.4vw,7.5rem)/1.06 var(--serif);letter-spacing:-.055em;margin:0;max-width:1100px}
.home-manifesto em,.practice-end em{font-style:normal;color:var(--blue)}
.manifesto-line{grid-column:2;width:30%;height:1px;background:var(--blue);margin-top:3rem}
.home-axes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;padding:7rem 4vw 9rem;border-bottom:1px solid var(--ink)}
.axis{display:block;min-width:0}.axis:nth-child(2){padding-top:6rem}.axis:nth-child(3){padding-top:12rem}
.axis figure{margin:0;background:#e9ecea;overflow:hidden}.axis img{display:block;width:100%;aspect-ratio:.88/1;object-fit:cover;transition:transform .5s}.axis:hover img{transform:scale(1.025)}
.axis>span{display:block;font-size:.65rem;letter-spacing:.15em;font-weight:700;margin-top:1.5rem}.axis h2{font:400 clamp(2.7rem,4vw,5rem)/1 var(--serif);letter-spacing:-.05em;margin:.9rem 0}
.axis p{font-size:1.05rem;line-height:1.5;max-width:360px}.axis b{display:inline-block;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid currentColor;padding:.5rem 0}
.home-invitations{display:grid;grid-template-columns:48% 52%;border-top:1px solid var(--ink);background:#ecedea}
.home-invitations>div{padding:8vw 5vw 6vw 4vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.home-invitations h2{font:400 clamp(3.8rem,5.5vw,7.5rem)/1 var(--serif);letter-spacing:-.055em;margin:2rem 0}
.home-invitations p{font-size:1.18rem;line-height:1.5;max-width:530px;margin:0 0 2rem}
.home-invitations figure{margin:0;position:relative;min-height:650px}.home-invitations img{display:block;width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.home-invitations figcaption{position:absolute;left:1rem;bottom:1rem;background:rgba(255,255,255,.92);padding:.6rem .8rem;font-size:.63rem;font-weight:700;letter-spacing:.1em}
.practice-intro{display:grid;grid-template-columns:23% 1fr;padding:7rem 4vw 10rem;border-bottom:1px solid var(--ink)}
.practice-intro p{font:400 clamp(2.5rem,4.3vw,5.8rem)/1.18 var(--serif);letter-spacing:-.035em;margin:0;max-width:1100px}
.practice-axis{display:grid;grid-template-columns:54% 46%;gap:0;min-height:850px;padding:9rem 4vw;border-bottom:1px solid var(--ink);scroll-margin-top:95px}
.practice-axis-reverse{background:#ecedea;grid-template-columns:46% 54%}
.practice-axis-reverse .practice-images{order:2}.practice-axis-reverse .practice-copy{order:1;padding-left:0;padding-right:7vw}
.practice-images{position:relative;min-height:650px;margin-right:4vw}.practice-axis-reverse .practice-images{margin:0 0 0 4vw}
.practice-images figure{margin:0;background:#e4e7e4}.practice-images figure:first-child{width:74%;height:75%}.practice-images figure:nth-child(2){position:absolute;width:48%;height:53%;right:0;bottom:0;border:9px solid var(--paper)}
.practice-axis-reverse .practice-images figure:nth-child(2){border-color:#ecedea}
.practice-images img{width:100%;height:100%;object-fit:cover;display:block}
.practice-copy{padding:5rem 0 0 5vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.practice-copy h2{font:400 clamp(3.8rem,5vw,7rem)/1.02 var(--serif);letter-spacing:-.055em;margin:2.2rem 0}
.practice-copy p{font-size:1.15rem;line-height:1.6;max-width:590px;margin:0 0 2rem}
.practice-end{padding:10rem 4vw 12rem}.practice-end h2{font:400 clamp(4rem,6.8vw,9rem)/1.02 var(--serif);letter-spacing:-.055em;margin:2rem 0 4rem}
@media(max-width:900px){.home-axes{grid-template-columns:1fr 1fr}.axis:nth-child(2),.axis:nth-child(3){padding-top:0}.axis:nth-child(3){grid-column:1/-1;max-width:60%}.practice-axis,.practice-axis-reverse{grid-template-columns:1fr;min-height:0;gap:3rem}.practice-axis-reverse .practice-images,.practice-axis-reverse .practice-copy{order:initial;margin:0}.practice-images{min-height:600px;margin:0}.practice-copy,.practice-axis-reverse .practice-copy{padding:0}}
@media(max-width:600px){.home-hero-copy h1{font-size:clamp(4.3rem,12vw,6rem)}.home-manifesto,.practice-intro{grid-template-columns:1fr;gap:2rem;padding:6rem 5vw}.home-manifesto p{font-size:clamp(3rem,10vw,5rem)}.manifesto-line{grid-column:1}.home-axes{grid-template-columns:1fr;padding:5rem 5vw 7rem;gap:4rem}.axis:nth-child(3){grid-column:auto;max-width:none}.axis img{aspect-ratio:1.08/1}.axis h2{font-size:3.4rem}.home-invitations{grid-template-columns:1fr}.home-invitations>div{padding:5rem 5vw}.home-invitations h2{font-size:clamp(3.5rem,10vw,5rem)}.home-invitations figure{min-height:65svh}.practice-intro p{font-size:clamp(2.5rem,8vw,4rem)}.practice-axis{padding:5rem 5vw 6rem;scroll-margin-top:72px}.practice-images{min-height:420px}.practice-images figure:nth-child(2){border-width:5px}.practice-copy h2{font-size:clamp(3.3rem,10vw,5.2rem)}.practice-end{padding:6rem 5vw 8rem}.practice-end h2{font-size:clamp(3.2rem,10vw,5rem)}}

/* La galerie avance au rythme des images : carrés réguliers, sans décalage. */
.works-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;padding:4rem 4vw 2.5rem}
.works-heading h1{font:400 clamp(4.8rem,9vw,10rem)/.9 var(--serif);letter-spacing:-.07em;margin:1.4rem 0 0}
.works-count{font-size:.68rem;font-weight:700;letter-spacing:.14em;white-space:nowrap}
.works-grid{padding:0 4vw 8rem;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem}
.work,.work:nth-child(even){position:relative;padding:0;overflow:hidden;background:#e8e9e6}
.work .image-button{width:100%;aspect-ratio:1/1;overflow:hidden}
.work img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .35s}
.work:hover img,.work:focus-within img{transform:scale(1.035)}
.work figcaption{position:absolute;inset:auto 0 0;display:block;margin:0;padding:2.3rem .8rem .7rem;border:0;background:linear-gradient(transparent,rgba(0,0,0,.65));color:#fff;font-size:.69rem;letter-spacing:.05em;text-transform:none;opacity:0;pointer-events:none;transition:opacity .2s}
.work:hover figcaption,.work:focus-within figcaption{opacity:1}
@media(max-width:1100px){.works-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.works-heading{padding:2.8rem 4vw 1.8rem}.works-heading h1{font-size:clamp(4.3rem,14vw,6.8rem)}.works-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 2vw 5rem;gap:.25rem}.work figcaption{display:none}.works-count{font-size:.6rem}}

/* Accueil : les proportions et l'angle coupé viennent des sculptures. */
.home-page .desktop-nav{display:none}
.home-page .menu-button{display:flex}
.entry{padding:0 4vw 3vw;background:var(--paper)}
.entry-stage{display:grid;grid-template-columns:45% 55%;min-height:calc(100svh - 93px - 3vw)}
.entry-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;min-width:0;padding:5vw 3vw 2vw 0}
.entry-footnote{font-size:.65rem;font-weight:700;letter-spacing:.16em}
.entry-index{color:var(--blue)}
.entry-copy h1{font:400 clamp(4.8rem,7vw,9.4rem)/.9 var(--serif);letter-spacing:-.065em;margin:auto 0;white-space:nowrap}
.entry-copy h1 em{font-weight:400;color:var(--blue)}
.entry-links{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}
.entry-primary{display:flex;align-items:center;justify-content:space-between;gap:2.5rem;min-width:240px;padding:1rem 1.25rem;background:var(--ink);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:background .2s}
.entry-primary:hover{background:var(--blue)}
.entry-primary span{font-size:1.5rem;font-weight:400;line-height:1}
.entry-secondary{border-bottom:1px solid currentColor;padding:.45rem 0;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.entry-secondary:hover{color:var(--blue)}
.entry-footnote{margin-top:0;color:var(--muted)}
.entry-art{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0;margin:0;position:relative}
.entry-photo{position:relative;min-height:620px;overflow:hidden;background:#ddd}
.entry-photo img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 47%}
.entry-corner{position:absolute;right:0;bottom:0;width:clamp(85px,10vw,190px);aspect-ratio:1;background:linear-gradient(135deg,transparent 49.4%,var(--blue) 49.6%,var(--blue) 50%,var(--paper) 50.2%);pointer-events:none}
.entry-art figcaption{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 0;font-size:.61rem;font-weight:700;letter-spacing:.12em}
@media(max-width:1100px){.entry-stage{grid-template-columns:43% 57%}.entry-copy h1{font-size:clamp(4.2rem,7.5vw,7rem)}.entry-links{gap:1.2rem}.entry-primary{min-width:200px}}
@media(max-width:760px){.entry{padding:0 5vw 3rem}.entry-terms{height:56px;font-size:.53rem;letter-spacing:.12em}.entry-stage{display:flex;flex-direction:column;min-height:0}.entry-art{order:1;margin-top:1.1rem}.entry-photo{min-height:0;aspect-ratio:4/4.6}.entry-photo img{object-position:50% 45%}.entry-art figcaption{font-size:.53rem}.entry-copy{order:2;display:block;padding:2.8rem 0 0}.entry-copy h1{font-size:clamp(4.4rem,13vw,7.5rem);white-space:normal;margin:1.5rem 0 2rem}.entry-footnote{display:none}.entry-links{gap:1.4rem}.entry-primary{min-width:210px}}
@media(max-width:450px){.entry-copy h1{font-size:clamp(3.6rem,14vw,5.2rem)}.entry-art figcaption span:last-child{display:none}.entry-primary{width:100%}.entry-links{align-items:flex-start;flex-direction:column}}

/* Le lien boutique accompagne le bouton Menu sur ordinateur et sur mobile. */
.header-actions{display:flex;align-items:center;gap:.7rem;flex:none}
.shop-link{display:inline-flex;align-items:center;white-space:nowrap;border:1px solid var(--ink);padding:.65rem .8rem;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:background .2s,color .2s}
.shop-link:hover,.shop-link:focus-visible{background:var(--ink);color:var(--paper)}
@media(max-width:1280px){.desktop-nav{display:none}.menu-button{display:flex}}
@media(max-width:600px){.header{gap:.4rem}.logo strong{font-size:clamp(.88rem,3.6vw,1.18rem)}.logo small{font-size:.43rem;letter-spacing:.08em}.header-actions{gap:.25rem}.shop-link{border:0;border-bottom:1px solid var(--ink);padding:.5rem .2rem;font-size:.6rem;letter-spacing:.04em}.menu-button{gap:.3rem;padding:.5rem .35rem;font-size:.63rem;letter-spacing:.04em}.menu-button span{font-size:.82rem}}

/* Parcours : une biographie visuelle construite autour des œuvres. */
.bio-hero{display:grid;grid-template-columns:53% 47%;min-height:min(830px,calc(100svh - 93px));border-bottom:1px solid var(--ink)}
.bio-hero-copy{display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:2rem 4vw 3rem}
.bio-meta{display:flex;justify-content:space-between;gap:1rem;font-size:.65rem;font-weight:700;letter-spacing:.13em}
.bio-hero h1{font:400 clamp(4.7rem,7.2vw,9.3rem)/.91 var(--serif);letter-spacing:-.075em;margin:4rem 0 2.2rem}
.bio-hero h1 em{font-weight:400;color:var(--blue)}
.bio-hero-copy p{max-width:650px;font-size:clamp(1.2rem,1.7vw,1.65rem);line-height:1.4;margin:0}
.bio-scroll{width:max-content;display:flex;gap:2rem;align-items:center;border-bottom:1px solid var(--ink);padding:1rem 0 .55rem;font-size:.68rem;font-weight:700;letter-spacing:.12em}
.bio-scroll span{font-size:1.3rem;font-weight:400}
.bio-hero-image{position:relative;margin:0;min-height:640px;overflow:hidden;background:#dadbd8}
.bio-hero-image img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 40%}
.bio-hero-image figcaption{position:absolute;bottom:0;left:0;max-width:100%;background:var(--paper);padding:.8rem 1rem;font-size:.58rem;font-weight:700;letter-spacing:.1em}
.bio-intro{scroll-margin-top:93px;display:grid;grid-template-columns:25% 1fr;gap:4vw;padding:9rem 8vw 10rem;border-bottom:1px solid var(--line)}
.bio-intro .micro{padding-top:.6rem}
.bio-intro p{font:400 clamp(2.4rem,4.15vw,5.5rem)/1.12 var(--serif);letter-spacing:-.04em;margin:0;max-width:1050px}
.bio-intro em{font-weight:400;color:var(--blue)}
.bio-chapter{display:grid;grid-template-columns:minmax(0,43%) minmax(0,57%);gap:3vw;align-items:center;padding:8rem 4vw;overflow:hidden}
.bio-chapter-copy{max-width:610px;padding-right:2vw}
.bio-number{display:inline-block;color:var(--blue);font-size:.7rem;font-weight:700;letter-spacing:.16em}
.bio-chapter h2,.bio-finale h2{font:400 clamp(3.6rem,5.4vw,7.5rem)/.99 var(--serif);letter-spacing:-.06em;margin:2rem 0 2.5rem}
.bio-chapter p,.bio-finale p{font-size:clamp(1.05rem,1.3vw,1.2rem);line-height:1.65;margin:0 0 1.35rem}
.bio-chapter .text-link,.bio-finale .text-link{display:inline-block;margin-top:1rem}
.bio-image-pair{display:grid;grid-template-columns:1.15fr .8fr;gap:1vw;align-items:center}
.bio-image-pair figure{margin:0;min-width:0}
.bio-image-pair figure:first-child{transform:translateY(-2.3rem)}
.bio-image-pair figure:last-child{transform:translateY(2.3rem)}
.bio-image-pair img{display:block;width:100%;height:clamp(380px,42vw,700px);object-fit:cover}
.bio-image-pair figure:last-child img{height:clamp(280px,29vw,490px)}
.bio-image-pair figcaption,.bio-wide-image figcaption,.bio-finale figcaption{border-top:1px solid var(--ink);padding-top:.55rem;margin-top:.5rem;font-size:.58rem;line-height:1.35;font-weight:700;letter-spacing:.09em}
.bio-pull{display:grid;grid-template-columns:25% 1fr;gap:4vw;padding:6rem 8vw 7rem;background:#e9ecea}
.bio-pull .micro{padding-top:.6rem}
.bio-pull p{font:400 clamp(2.6rem,4.7vw,6rem)/1.12 var(--serif);letter-spacing:-.05em;margin:0}
.bio-pull em{color:var(--blue);font-weight:400}
.bio-chapter-reverse{grid-template-columns:minmax(0,57%) minmax(0,43%)}
.bio-chapter-reverse .bio-chapter-copy{grid-column:2;grid-row:1;padding:0 0 0 3vw}
.bio-chapter-reverse .bio-image-pair{grid-column:1;grid-row:1}
.bio-chapter-reverse .bio-image-pair{grid-template-columns:.8fr 1.1fr}
.bio-chapter-reverse .bio-image-pair figure:first-child img{height:clamp(280px,30vw,470px)}
.bio-chapter-reverse .bio-image-pair figure:last-child img{height:clamp(380px,42vw,700px)}
.bio-wide-image{position:relative;padding:0 4vw}
.bio-wide-image figure{margin:0}
.bio-wide-image img{display:block;width:100%;height:clamp(500px,67vw,830px);object-fit:cover;object-position:center 55%}
.bio-wide-image figcaption{margin-top:.6rem}
.bio-wide-image>div{position:absolute;top:7%;right:8vw;width:min(390px,37%);padding:2rem;background:var(--paper)}
.bio-wide-image>div span{font-size:.68rem;font-weight:700;letter-spacing:.14em;color:var(--blue)}
.bio-wide-image>div p{font:400 clamp(1.6rem,2.6vw,3rem)/1.15 var(--serif);letter-spacing:-.04em;margin:2rem 0 0}
.bio-chapter-places{padding-top:9rem;padding-bottom:11rem}
.bio-finale{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center;padding:8rem 4vw 10rem;border-top:1px solid var(--ink)}
.bio-finale>div{max-width:720px}
.bio-finale figure{margin:0}
.bio-finale img{display:block;width:100%;height:clamp(500px,57vw,780px);object-fit:cover;object-position:center 40%}
.bio-timeline{background:#e9ecea}
@media(max-width:1100px){.bio-hero h1{font-size:clamp(4rem,7vw,6rem)}.bio-hero-image{min-height:620px}.bio-chapter{grid-template-columns:1fr 1fr}.bio-chapter-reverse{grid-template-columns:1fr 1fr}.bio-chapter h2,.bio-finale h2{font-size:clamp(3.1rem,5vw,5rem)}}
@media(max-width:760px){.bio-hero{display:flex;flex-direction:column;min-height:0}.bio-hero-copy{min-height:560px;padding:1.5rem 5vw 2.5rem}.bio-meta{font-size:.56rem}.bio-hero h1{font-size:clamp(4.3rem,11.7vw,7rem);margin:2rem 0 1.5rem}.bio-hero-copy p{font-size:1.15rem}.bio-hero-image{min-height:0;aspect-ratio:4/4.5}.bio-intro,.bio-pull{display:block;padding:5.5rem 5vw}.bio-intro .micro,.bio-pull .micro{display:block;margin-bottom:2rem}.bio-intro p{font-size:clamp(2.5rem,8vw,4.4rem)}.bio-pull p{font-size:clamp(2.5rem,8vw,4rem)}.bio-chapter,.bio-chapter-reverse{display:flex;flex-direction:column;align-items:stretch;gap:3rem;padding:6rem 5vw}.bio-chapter-copy,.bio-chapter-reverse .bio-chapter-copy{max-width:none;padding:0}.bio-chapter h2,.bio-finale h2{font-size:clamp(3.5rem,10vw,5.5rem);margin:1.5rem 0 2rem}.bio-chapter p,.bio-finale p{font-size:1.07rem}.bio-image-pair{gap:2vw}.bio-image-pair img,.bio-chapter-reverse .bio-image-pair figure:last-child img{height:62vw}.bio-image-pair figure:last-child img,.bio-chapter-reverse .bio-image-pair figure:first-child img{height:47vw}.bio-image-pair figure:first-child{transform:translateY(-.8rem)}.bio-image-pair figure:last-child{transform:translateY(.8rem)}.bio-wide-image{padding:0 5vw}.bio-wide-image img{height:65vw;min-height:360px}.bio-wide-image>div{position:static;width:auto;padding:1.8rem 0}.bio-wide-image>div p{margin:1rem 0 0}.bio-finale{display:flex;flex-direction:column;align-items:stretch;gap:3rem;padding:6rem 5vw}.bio-finale img{height:auto;aspect-ratio:4/5}.bio-timeline{padding-top:5rem}}
@media(max-width:420px){.bio-hero-copy{min-height:520px}.bio-hero h1{font-size:clamp(3.8rem,11.5vw,4.7rem)}.bio-meta span:last-child{max-width:130px;text-align:right}.bio-image-pair figcaption,.bio-wide-image figcaption,.bio-finale figcaption{font-size:.51rem}.bio-intro p{font-size:2.25rem}}

/* Projets : les œuvres décisives précèdent la sélection puis le catalogue. */
[data-project-section][hidden],[data-category][hidden]{display:none!important}
.projects-opening{min-height:390px;padding:3rem 4vw 4rem;display:flex;flex-direction:column;justify-content:space-between;border-bottom:1px solid var(--ink)}
.projects-opening .micro{display:flex;justify-content:space-between;gap:1rem}
.projects-opening>div:last-child{display:flex;justify-content:space-between;align-items:end;gap:3rem}
.projects-opening h1{font:400 clamp(6rem,11vw,12rem)/.9 var(--serif);letter-spacing:-.075em;margin:2rem 0 0}
.projects-opening p{font-size:clamp(1.1rem,1.6vw,1.45rem);line-height:1.42;max-width:560px;margin:0 0 .4rem}
.projects-filter-bar{display:grid;grid-template-columns:25% 1fr;align-items:center;gap:2rem;padding:1.3rem 4vw;border-bottom:1px solid var(--line)}
.projects-filter-bar .filters{margin:0}
.project-section-heading{display:grid;grid-template-columns:25% minmax(0,1fr) 25%;align-items:end;gap:1rem;padding-top:1.3rem;border-top:1px solid var(--ink);margin-bottom:3rem}
.project-section-heading .micro{align-self:start}
.project-section-heading h2{font:400 clamp(2.8rem,4.2vw,5.6rem)/1 var(--serif);letter-spacing:-.05em;margin:0}
.project-section-heading p{font-size:.94rem;line-height:1.45;color:var(--muted);margin:0}
.projects-major,.projects-selection,.projects-archive{padding:6rem 4vw 8rem}
.major-primary{background:#e9ecea}
.major-primary>a{display:grid;grid-template-columns:52% 48%;min-height:620px}
.major-primary-image{position:relative;min-height:620px;overflow:hidden}
.major-primary-image img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 42%;transition:transform .6s}
.major-primary:hover img{transform:scale(1.025)}
.major-primary-copy{display:flex;flex-direction:column;justify-content:space-between;gap:2rem;padding:3rem clamp(2rem,4vw,5rem)}
.major-primary h3{font:400 clamp(4rem,5.2vw,7rem)/.96 var(--serif);letter-spacing:-.06em;margin:0 0 1.8rem}
.major-primary p{max-width:520px;font-size:clamp(1.15rem,1.5vw,1.55rem);line-height:1.45;margin:0 0 2rem}
.major-link{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:1px solid var(--ink);min-width:220px;padding-bottom:.6rem;font-size:.67rem;font-weight:700;letter-spacing:.12em}
.major-link b{font-size:1.4rem;font-weight:400;line-height:1}
.major-place{font-size:.66rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.major-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem;margin-top:4rem}
.major-card{min-width:0}
.major-card-image{overflow:hidden;background:#e7e8e4}
.major-card img{display:block;width:100%;aspect-ratio:1.25/1;object-fit:cover;transition:transform .5s}
.major-card:hover img{transform:scale(1.035)}
.major-card-meta{display:flex;justify-content:space-between;gap:.5rem;padding-top:1rem;border-top:1px solid var(--ink);margin-top:.8rem;font-size:.61rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.major-card h3{font:400 clamp(2.4rem,3.1vw,4rem)/1 var(--serif);letter-spacing:-.045em;margin:1.2rem 0 .8rem}
.major-card p{font-size:1rem;line-height:1.45;max-width:450px;min-height:4.3rem;margin:0 0 1.2rem}
.major-card-link{font-size:.65rem;font-weight:700;letter-spacing:.11em;border-bottom:1px solid currentColor;padding-bottom:.3rem}
.major-card:hover .major-card-link{color:var(--blue)}
.projects-selection{background:#e9ecea}
.selection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3.8rem 1.3rem}
.selection-grid .project-card-media img{aspect-ratio:1.15/1}
.selection-grid .card-title{display:block}
.selection-grid .card-title h3{font-size:clamp(2rem,2.7vw,3.3rem)}
.selection-grid .card-title>span{display:block;text-align:left;margin-top:.4rem}
.projects-archive{background:white}
.archive-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3.5rem 1.2rem}
.archive-grid .project-card-media img{aspect-ratio:1/1}
.archive-grid .card-meta{font-size:.58rem;padding:.7rem 0}
.archive-grid .card-title{display:block}
.archive-grid .card-title h3{font-size:clamp(1.5rem,2vw,2.4rem);line-height:1.05}
.archive-grid .card-title>span{display:block;text-align:left;margin-top:.4rem;font-size:.7rem}
.empty-filter:not([hidden]){display:block;padding:2rem 4vw 6rem;margin:0}
@media(max-width:1100px){.projects-opening>div:last-child{align-items:start}.project-section-heading{grid-template-columns:23% 1fr}.project-section-heading p{grid-column:2}.major-primary>a{min-height:560px}.major-primary-image{min-height:560px}.major-primary h3{font-size:clamp(3.5rem,5vw,5.5rem)}.archive-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.projects-opening{min-height:0;padding:2rem 5vw 3rem}.projects-opening>div:last-child{display:block}.projects-opening h1{font-size:clamp(5rem,17vw,8rem);margin:3rem 0 1.5rem}.projects-opening p{font-size:1.16rem}.projects-filter-bar{display:block;padding:1.2rem 5vw}.projects-filter-bar .micro{display:block;margin-bottom:1rem}.projects-filter-bar .filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:.4rem}.projects-filter-bar .filters button{flex:none}.projects-major,.projects-selection,.projects-archive{padding:4.5rem 5vw 6rem}.project-section-heading{display:block;margin-bottom:2rem}.project-section-heading h2{font-size:clamp(2.7rem,9vw,4rem);margin:1.5rem 0 .7rem}.project-section-heading p{max-width:500px}.major-primary>a{display:flex;flex-direction:column;min-height:0}.major-primary-image{min-height:0;aspect-ratio:4/4.1}.major-primary-copy{padding:2rem;gap:3rem}.major-primary h3{font-size:clamp(3.6rem,11vw,6rem)}.major-primary p{font-size:1.18rem}.major-grid{grid-template-columns:1fr;gap:3.6rem;margin-top:4rem}.major-card img{aspect-ratio:1.3/1}.major-card h3{font-size:3rem}.major-card p{min-height:0}.selection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem 1rem}.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem .75rem}.archive-grid .card-title h3{font-size:clamp(1.35rem,4vw,2rem)}.archive-grid .card-meta{letter-spacing:.04em}.archive-grid .card-title>span{font-size:.65rem}}
@media(max-width:500px){.selection-grid{grid-template-columns:1fr}.selection-grid .project-card-media img{aspect-ratio:1.2/1}.selection-grid .card-title h3{font-size:2.5rem}.archive-grid .card-arrow{width:34px;height:34px;font-size:1rem;right:.5rem;bottom:.5rem}.archive-grid .card-meta{font-size:.52rem}.archive-grid .card-title h3{font-size:1.3rem}.archive-grid .card-title>span{font-size:.58rem}.major-primary-copy{padding:1.6rem}}
.project-section-heading{grid-template-columns:25% minmax(0,1fr)}
.archive-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.archive-grid .project-card-media img{aspect-ratio:1.15/1}
.archive-grid .card-meta{font-size:.66rem;padding:.9rem 0;letter-spacing:.1em}
.archive-grid .card-title h3{font-size:clamp(2rem,2.7vw,3.3rem)}
.archive-grid .card-title>span{font-size:.78rem}
@media(max-width:1100px){.project-section-heading{grid-template-columns:23% minmax(0,1fr)}.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-grid .card-title h3{font-size:clamp(1.7rem,4.8vw,2.4rem)}}
@media(max-width:500px){.archive-grid{grid-template-columns:1fr}.archive-grid .project-card-media img{aspect-ratio:1.2/1}.archive-grid .card-title h3{font-size:2.5rem}.archive-grid .card-title>span{font-size:.78rem}.archive-grid .card-arrow{width:46px;height:46px;font-size:1.35rem;right:1rem;bottom:1rem}.archive-grid .card-meta{font-size:.66rem;letter-spacing:.1em}}

/* Catalogue par pratique : toutes les fiches conservent le même poids visuel. */
.catalog-section{padding:6rem 4vw 8rem;border-bottom:1px solid var(--line)}
.catalog-section:nth-of-type(even){background:#e9ecea}
.catalog-heading{display:grid;grid-template-columns:25% 1fr auto;align-items:end;gap:1rem;border-top:1px solid var(--ink);padding-top:1.2rem;margin-bottom:3rem}
.catalog-heading .micro{align-self:start;padding-top:.5rem}
.catalog-heading h2{font:400 clamp(3.7rem,6vw,7rem)/.98 var(--serif);letter-spacing:-.055em;margin:0}
.catalog-heading>span:last-child{font-size:.67rem;font-weight:700;letter-spacing:.13em;white-space:nowrap}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4.5rem 1.3rem}
.catalog-grid .project-card-media img{aspect-ratio:1.15/1}
.catalog-grid .card-title{display:block}
.catalog-grid .card-title h3{font-size:clamp(2rem,2.7vw,3.3rem)}
.catalog-grid .card-title>span{display:block;text-align:left;margin-top:.4rem}
.catalog-section[data-category="Street art"] .catalog-grid,.catalog-section[data-category="Édition"] .catalog-grid,.catalog-section[data-category="Joaillerie"] .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.exhibition-ledger{margin-top:8rem;border-top:1px solid var(--ink)}
.exhibition-ledger-head{display:flex;justify-content:space-between;gap:2rem;align-items:center;padding:1.5rem 0 2.3rem}
.exhibition-ledger-head>span:last-child{font-size:.68rem;font-weight:700;letter-spacing:.1em}
.exhibition-ledger-list>div{display:grid;grid-template-columns:12% 1fr 38%;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}
.exhibition-ledger-list>div:last-child{border-bottom:1px solid var(--ink)}
.exhibition-ledger-list span{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}
.exhibition-ledger-list strong{font:400 clamp(1.3rem,2vw,2.4rem)/1.1 var(--serif)}
@media(max-width:1100px){.catalog-heading{grid-template-columns:23% 1fr auto}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.projects-filter-bar .filters{flex-wrap:wrap;overflow:visible;padding-bottom:0}.catalog-section{padding:4.5rem 5vw 6rem}.catalog-heading{display:flex;flex-wrap:wrap;align-items:baseline;margin-bottom:2rem}.catalog-heading .micro{width:100%;padding-top:0}.catalog-heading h2{font-size:clamp(3.5rem,10vw,5.5rem);margin:1rem auto 0 0}.catalog-heading>span:last-child{font-size:.6rem}.catalog-grid,.catalog-section[data-category="Street art"] .catalog-grid,.catalog-section[data-category="Édition"] .catalog-grid,.catalog-section[data-category="Joaillerie"] .catalog-grid{grid-template-columns:1fr;gap:3.3rem}.catalog-grid .card-title h3{font-size:clamp(2.4rem,8vw,3.3rem)}.exhibition-ledger{margin-top:5rem}.exhibition-ledger-list>div{grid-template-columns:4rem 1fr;gap:.2rem 1rem}.exhibition-ledger-list>div span:last-child{grid-column:2;font-size:.61rem}.exhibition-ledger-list strong{font-size:1.5rem}}
@media(max-width:420px){.catalog-heading h2{font-size:clamp(3rem,10vw,4.5rem)}.catalog-heading>span:last-child{width:100%}.exhibition-ledger-head{align-items:flex-start;flex-direction:column;gap:.5rem}}

/* Le mouvement suit le reflet et les facettes, sans déplacer la grille. */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .entry-photo,.project-card-media,.work .image-button,.detail-photo .image-button{isolation:isolate}
  .work .image-button,.detail-photo .image-button{position:relative;overflow:hidden}
  .entry-photo::after,.project-card-media::after,.work .image-button::after,.detail-photo .image-button::after{
    content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
    background:radial-gradient(circle at var(--glint-x,50%) var(--glint-y,50%),
      rgba(255,255,255,.39) 0,rgba(255,255,255,.14) 19%,transparent 48%);
    opacity:0;transition:opacity .35s ease;mix-blend-mode:screen;
  }
  .entry-photo:hover::after,.project-card a:hover .project-card-media::after,
  .work .image-button:hover::after,.work .image-button:focus-visible::after,
  .detail-photo .image-button:hover::after,.detail-photo .image-button:focus-visible::after{opacity:1}
  .entry-photo img,.project-card-media img,.work img,.detail-photo img{
    will-change:transform;
    transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .65s ease;
  }
  .entry-photo:hover img,.project-card a:hover .project-card-media img,
  .work .image-button:hover img,.work .image-button:focus-visible img,
  .detail-photo .image-button:hover img,.detail-photo .image-button:focus-visible img{
    transform:scale(1.055) translate3d(var(--pan-x,0px),var(--pan-y,0px),0);
  }
  .entry-corner{z-index:2;transform-origin:100% 100%;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
  .entry-photo:hover .entry-corner{transform:scale(1.15)}
  .project-card .card-title h3{transition:color .35s ease,transform .45s cubic-bezier(.2,.7,.2,1)}
  .project-card a:hover .card-title h3,.project-card a:focus-visible .card-title h3{
    color:var(--blue);transform:translateX(.22rem);
  }
  .project-card .card-arrow{z-index:2;transition:transform .4s cubic-bezier(.2,.7,.2,1),background .3s,color .3s}
  .project-card a:hover .card-arrow{transform:translate(.2rem,-.2rem) rotate(8deg)}
  .work figcaption{transform:translateY(.5rem);transition:opacity .3s,transform .4s}
  .work:hover figcaption,.work:focus-within figcaption{transform:translateY(0)}
  .desktop-nav a,.menu-links a,.entry-secondary,.text-link,.footer-email{position:relative}
  .desktop-nav a::after,.menu-links a::after,.entry-secondary::after,.text-link::after,.footer-email::after{
    content:"";position:absolute;left:0;bottom:-.28rem;width:100%;height:1px;
    background:var(--blue);transform:scaleX(0);transform-origin:left center;
    transition:transform .45s cubic-bezier(.2,.7,.2,1);
  }
  .desktop-nav a:hover::after,.desktop-nav a:focus-visible::after,
  .menu-links a:hover::after,.menu-links a:focus-visible::after,
  .entry-secondary:hover::after,.entry-secondary:focus-visible::after,
  .text-link:hover::after,.text-link:focus-visible::after,
  .footer-email:hover::after,.footer-email:focus-visible::after{transform:scaleX(1)}
  .entry-primary span,.button span,.shop-link,.menu-button span{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
  .entry-primary:hover span,.button:hover span{transform:translate(.28rem,-.18rem)}
  .shop-link:hover{transform:translateY(-2px)}
  .menu-button:hover span{transform:rotate(90deg)}
  .filters button{transition:background .25s,color .25s,transform .3s,border-color .25s}
  .filters button:hover{transform:translateY(-3px);border-color:var(--blue);background:var(--blue)}
  .brand{transition:background .3s}
  .brand img,.brand span{transition:transform .45s cubic-bezier(.2,.7,.2,1)}
  .brand:hover img,.brand:hover span{transform:translateY(-4px)}
  .press-item b,.detail-next strong{transition:transform .35s,color .35s}
  .press-item:hover b{transform:translate(.3rem,-.2rem);color:var(--blue)}
  .detail-next a:hover strong{transform:translateX(.3rem);color:var(--blue)}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* Une signature cobalt dessinée comme un repère, sur des surfaces claires. */
.header::after{
  content:"";position:absolute;left:4vw;bottom:-1px;
  width:clamp(55px,8vw,116px);height:2px;background:var(--blue);
}
.menu-dialog{border-top:5px solid var(--blue)}
.menu-links a:hover,.menu-links a:focus-visible{color:var(--blue)}
.works-heading,.catalog-heading,.section-heading{position:relative}
.works-heading{border-top:1px solid var(--ink)}
.works-heading::before,.catalog-heading::before,.section-heading::before{
  content:"";position:absolute;top:-1px;left:0;
  width:clamp(48px,7vw,98px);height:2px;background:var(--blue);
}
.works-count,.projects-opening .micro span:first-child,
.catalog-heading .micro,.bio-pull .micro,.footer-top .micro{color:var(--blue)}
.projects-filter-bar{border-top:1px solid var(--ink)}
.filters button[aria-pressed=true]{
  background:var(--blue);border-color:var(--blue);color:#fff;
}
.catalog-section:nth-of-type(even){background:#f3f4f1}
.exhibition-ledger-list>div span:first-child{color:var(--blue);font-weight:700}
.press-item b{color:var(--blue)}
.brand:hover,.press-item:hover{background:#eff1f8}
@media(max-width:760px){
  .header::after{left:5vw}
}

/* Le diamant original signe les espaces de navigation et le pied de page. */
.logo{flex-direction:row;align-items:center;gap:.72rem}
.logo-wordmark{display:flex;flex-direction:column;gap:.3rem;min-width:0}
.logo img.logo-mark{display:block;width:35px;height:35px;object-fit:contain;flex:none}
.menu-signature,.footer-signature{display:flex;align-items:center;gap:.8rem}
.menu-signature img{display:block;width:30px;height:30px;object-fit:contain}
.footer-signature img{display:block;width:28px;height:28px;object-fit:contain}
/* Projets : un index compact, avec un format identique dans chaque catégorie. */
.projects-opening{min-height:0;padding:2.2rem 4vw 2.5rem}
.projects-opening h1{font-size:clamp(4rem,6.5vw,6.5rem);margin:1.4rem 0 0}
.projects-opening p{font-size:1.05rem;max-width:440px}
.projects-filter-bar{padding-top:1rem;padding-bottom:1rem}
.catalog-section{padding:3rem 4vw 3.5rem}
.catalog-heading{display:flex;align-items:baseline;justify-content:space-between;max-width:1200px;margin:0 auto 1.6rem;padding-top:1rem}
.catalog-heading .micro{display:none}
.catalog-heading h2{font-size:clamp(2.4rem,3.6vw,3.6rem);margin:0}
.catalog-heading>span:last-child{width:auto;font-size:.61rem}
.catalog-section[data-category] .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1200px;margin:0 auto;gap:2.3rem 1.25rem}
.catalog-grid .project-card-media img{aspect-ratio:4/3}
.catalog-grid .card-meta{padding:.6rem 0;font-size:.58rem;letter-spacing:.07em}
.catalog-grid .card-title{padding-top:.35rem}
.catalog-grid .card-title h3{font-size:clamp(1.45rem,2vw,2rem);line-height:1.12;overflow-wrap:anywhere}
.catalog-grid .card-title>span{font-size:.7rem;margin-top:.3rem}
.catalog-grid .card-arrow{width:34px;height:34px;right:.65rem;bottom:.65rem;font-size:1.1rem}
.exhibition-ledger{max-width:1200px;margin:3.5rem auto 0}
@media(max-width:760px){
  .projects-opening{padding:1.6rem 5vw 2rem}
  .projects-opening h1{font-size:4rem;margin:1.8rem 0 1rem}
  .projects-opening p{font-size:1rem;max-width:34rem}
  .catalog-section{padding:2.3rem 5vw 2.8rem}
  .catalog-heading{flex-wrap:nowrap;gap:.75rem;margin-bottom:1.2rem;padding-top:.9rem}
  .catalog-heading h2{font-size:clamp(2rem,6.8vw,3rem);margin:0}
  .catalog-heading>span:last-child{width:auto;font-size:.53rem}
  .catalog-section[data-category] .catalog-grid,
  .catalog-section[data-category="Street art"] .catalog-grid,
  .catalog-section[data-category="Édition"] .catalog-grid,
  .catalog-section[data-category="Joaillerie"] .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.65rem .85rem}
  .catalog-grid .card-title{padding-top:.45rem}
  .catalog-grid .card-title h3{font-size:clamp(1.1rem,3.7vw,1.6rem);line-height:1.15;margin:0}
  .catalog-grid .card-meta,.catalog-grid .card-title>span,.catalog-grid .card-arrow{display:none}
  .exhibition-ledger{margin-top:2.8rem}
}
@media(max-width:600px){
  .logo{gap:.45rem}
  .logo img.logo-mark{width:28px;height:28px}
  .logo-wordmark{gap:.2rem}
}
@media(max-width:390px){
  .logo{gap:.3rem}
  .logo img.logo-mark{width:23px;height:23px}
  .logo strong{font-size:.85rem}
  .logo small{font-size:.37rem}
}

/* Corrections d'affichage non destructives des photographies de la Chapelle. */
img[src="/media/chapelle-wide.jpg"]{filter:brightness(1.07) contrast(1.035) saturate(.88)}
img[src="/media/chapelle-room.jpg"]{filter:brightness(1.16) contrast(.94) saturate(.86)}
img[src="/media/chapelle-detail.jpg"]{filter:brightness(1.025) contrast(1.045) saturate(.88)}
img[src="/media/chapelle-corridor.jpg"]{filter:brightness(1.045) contrast(1.025) saturate(.88)}

.menu-dialog{overflow-y:auto}.menu-links a{overflow-wrap:anywhere}@media(max-width:600px){.menu-links a{font-size:clamp(2rem,8.5vw,3.5rem)}}

.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:1px solid #ddd;background:rgba(255,255,255,.94);color:#171717;font-size:24px;cursor:pointer;z-index:2}.lightbox-prev{left:12px}.lightbox-next{right:12px}.lightbox-arrow:hover{background:#3656c9;color:#fff}.lightbox-arrow:focus-visible{outline:3px solid #3656c9;outline-offset:2px}.lightbox img{touch-action:pan-y}@media(max-width:600px){.lightbox-arrow{width:40px;height:40px}.lightbox-prev{left:5px}.lightbox-next{right:5px}}

/* Newsletter */
.newsletter-invite{margin:32px 4vw 0;padding:48px 0 56px;border-top:1px solid #d9dce7;display:grid;grid-template-columns:1fr 3fr auto;gap:32px;align-items:start;scroll-margin-top:100px}.newsletter-invite h2{font-size:clamp(26px,3vw,44px);font-weight:400;line-height:1.12;margin:0 0 14px;letter-spacing:-.035em}.newsletter-invite p{font-size:15px;line-height:1.6;color:#62646b;margin:0}.newsletter-link{color:#2449e8;border-bottom:1px solid currentColor;padding:8px 0;display:flex;gap:40px;align-items:center;font-size:16px;text-decoration:none}.newsletter-link span{transition:transform .2s}.newsletter-link:hover span{transform:translate(3px,-3px)}.newsletter-link:focus-visible{outline:2px solid #2449e8;outline-offset:6px}@media(max-width:650px){.newsletter-invite{grid-template-columns:1fr;gap:22px;margin:24px 6vw 0;padding:32px 0 40px}.newsletter-link{justify-self:start}}@media(prefers-reduced-motion:reduce){.newsletter-link span{transition:none}}

/* Above-the-fold newsletter invitation */
.home-page .newsletter-invite{margin:0 4vw;padding:16px 0;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;border-top:0;border-bottom:1px solid #d9dce7}.home-page .newsletter-invite h2{font-size:18px;line-height:1.25;letter-spacing:-.02em;margin:0}.home-page .newsletter-invite p{font-size:12px;margin-top:4px}.home-page .newsletter-link{font-size:14px;gap:18px;white-space:nowrap}.home-page .newsletter-invite>.micro{color:#2449e8}@media(max-width:650px){.home-page .newsletter-invite{margin:0 6vw;padding:12px 0;grid-template-columns:1fr auto;gap:12px}.home-page .newsletter-invite>.micro{display:none}.home-page .newsletter-invite h2{font-size:16px}.home-page .newsletter-invite p{font-size:11px;line-height:1.35;max-width:230px}.home-page .newsletter-link{font-size:13px;gap:8px}}
