/*
Theme Name: Parallax Architecture
Author: Parallax Architecture
Description: Portfolio sur mesure : accueil animé, projets en masonry et galeries individuelles. Gestion des projets intégrée.
Version: 1.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: parallax-architecture
License: GPL-2.0-or-later
*/

:root{--ink:#181b1a;--paper:#f5f3ed;--muted:#787b75;--gold:#a48c65;--line:rgba(24,27,26,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.site-head{position:fixed;top:0;left:0;right:0;z-index:50;height:84px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;color:white;transition:background .3s,color .3s}.site-head.scrolled,.site-head.light{background:rgba(245,243,237,.96);backdrop-filter:blur(18px);color:var(--ink);border-bottom:1px solid var(--line)}.brand{font-size:22px;letter-spacing:.24em;font-weight:500}.brand span{font-size:9px;letter-spacing:.32em;display:block;margin-top:4px}.nav{display:flex;gap:34px;align-items:center;font-size:12px;letter-spacing:.16em;text-transform:uppercase}.nav a:hover{color:var(--gold)}.mobile-menu{display:none}.hero{height:100svh;min-height:600px;position:relative;color:white;overflow:hidden}.hero-img,.project-cover{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.015)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.49),rgba(0,0,0,.02) 76%),linear-gradient(0deg,rgba(0,0,0,.45),transparent 40%)}.hero-content{position:absolute;z-index:2;bottom:14%;left:7vw;max-width:820px}.eyebrow{font-size:11px;letter-spacing:.28em;text-transform:uppercase}.hero h1{font-family:Georgia,serif;font-weight:400;line-height:.98;letter-spacing:-.048em;font-size:clamp(64px,9vw,144px);margin:30px 0}.hero h1 em{font-weight:400}.hero-bottom{display:flex;align-items:center;gap:34px;font-size:12px;letter-spacing:.15em;text-transform:uppercase}.round-arrow{height:54px;width:54px;border:1px solid currentColor;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:24px;transition:transform .3s}.round-arrow:hover{transform:translate(6px,-6px)}.hero-side{position:absolute;z-index:2;bottom:8%;right:5vw;font-size:11px;letter-spacing:.18em}.section{padding:130px 7vw}.section-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:55px}.section h2{font:normal clamp(52px,6vw,96px)/1.02 Georgia,serif;letter-spacing:-.045em;margin:22px 0}.section-lead{font-size:16px;max-width:410px;line-height:1.7;color:#60635e}.filters{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 40px}.filter{border:1px solid var(--line);background:transparent;border-radius:30px;padding:12px 21px;font-size:11px;letter-spacing:.10em;text-transform:uppercase}.filter.active,.filter:hover{background:var(--ink);color:#fff}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px 28px}.project-card{min-width:0}.project-card:nth-child(4n+2){margin-top:100px}.project-card:nth-child(5n+3){grid-column:span 2;max-width:78%;margin:0 auto}.project-image{position:relative;display:block;aspect-ratio:1.38;overflow:hidden;background:#d8d5ce}.project-card:nth-child(5n+3) .project-image{aspect-ratio:1.8}.project-image img{height:100%;width:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.2,.7,.2,1)}.project-card:hover .project-image img{transform:scale(1.06)}.image-cover-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.3),transparent 60%)}.project-number{position:absolute;top:22px;left:22px;color:white;font-size:11px;letter-spacing:.1em}.project-link{position:absolute;bottom:20px;right:20px;color:white}.project-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:20px 0}.project-meta h3{font:normal clamp(24px,2.2vw,38px) Georgia,serif;margin:0}.project-meta p{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);margin:0;text-align:right}.statement{background:#252923;color:#f3f1e9;padding:145px 7vw}.statement p{font:normal clamp(37px,5.7vw,88px)/1.17 Georgia,serif;letter-spacing:-.035em;max-width:1200px;margin:42px 0 50px}.statement em{color:#c8b89b}.about-strip{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.about-strip img{width:100%;height:520px;object-fit:cover}.about-strip .copy{max-width:530px}.about-strip .copy p{font-size:18px;line-height:1.7;color:#5d625a}.text-link{border-bottom:1px solid currentColor;padding-bottom:8px;font-size:11px;text-transform:uppercase;letter-spacing:.2em;display:inline-flex;gap:36px;margin-top:20px}.site-footer{background:#1b201c;color:#eeeae0;padding:90px 7vw 35px}.site-footer h2{font:normal clamp(55px,8vw,128px) Georgia,serif;letter-spacing:-.05em;max-width:1100px;margin:35px 0 90px}.footer-bottom{border-top:1px solid #555;padding-top:27px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.1em}.archive-hero{padding:190px 7vw 65px}.archive-hero h1{font:normal clamp(70px,11vw,170px) Georgia,serif;letter-spacing:-.06em;margin:15px 0 0}.single-hero{height:85svh;min-height:560px;position:relative;color:white}.single-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.6),transparent 55%)}.single-title{position:absolute;z-index:2;bottom:8%;left:7vw}.single-title h1{font:normal clamp(64px,9vw,132px)/1 Georgia,serif;margin:18px 0}.single-layout{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding:100px 7vw}.single-facts{font-size:12px;line-height:3;text-transform:uppercase;letter-spacing:.1em}.single-story{font:normal clamp(24px,3vw,44px)/1.4 Georgia,serif}.single-content{padding:0 7vw 100px;max-width:1200px;margin:auto;font-size:18px;line-height:1.7}.single-content img{max-width:100%;height:auto}.empty-state{padding:40px;color:var(--muted)}@media(max-width:760px){.site-head{height:70px}.brand{font-size:16px}.nav{gap:15px;font-size:10px}.nav a:nth-child(2){display:none}.hero{min-height:520px}.hero-content{bottom:17%}.hero h1{font-size:clamp(56px,14vw,90px)}.hero-side{display:none}.section{padding:85px 6vw}.section-top{display:block}.section h2{font-size:57px}.project-grid{grid-template-columns:1fr;gap:36px}.project-card:nth-child(n){grid-column:auto;max-width:none;margin:0}.project-card:nth-child(n) .project-image{aspect-ratio:1.22}.project-meta h3{font-size:28px}.statement{padding:90px 6vw}.about-strip{grid-template-columns:1fr}.about-strip img{height:350px}.site-footer{padding:75px 6vw 30px}.site-footer h2{margin-bottom:55px}.footer-bottom{gap:15px;flex-direction:column}.single-layout{grid-template-columns:1fr;padding:65px 6vw;gap:25px}.single-title h1{font-size:60px}}

[hidden]{display:none!important}.prototype-note{position:fixed;right:20px;bottom:20px;z-index:60;background:#272b28;color:#fff;padding:12px 17px;border-radius:3px;font-size:11px;letter-spacing:.04em;box-shadow:0 10px 30px #0003}.prototype-note button{border:1px solid #9c9c92;background:none;color:white;padding:9px;margin-left:14px;cursor:pointer}.project-image img{background:#aaa}.demo-modal{display:none;position:fixed;z-index:120;inset:0;background:rgba(0,0,0,.75);overflow:auto;padding:5vh 5vw}.demo-modal.open{display:block}.demo-panel{max-width:900px;margin:auto;background:#f5f3ed;color:#181b1a;padding:40px;position:relative}.demo-panel h2{font:normal 45px Georgia,serif;margin:12px 0 24px}.close-btn{position:absolute;top:23px;right:26px;background:none;border:0;font-size:30px}.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.demo-grid label{font-size:11px;text-transform:uppercase;letter-spacing:.13em}.demo-grid input,.demo-grid select,.demo-grid textarea{width:100%;border:1px solid #d1d0c9;background:white;border-radius:0;padding:14px;margin-top:9px;color:#222}.demo-grid .wide{grid-column:span 2}.dark-button{background:#242822;color:white;border:0;padding:15px 22px;letter-spacing:.1em;text-transform:uppercase;font-size:11px}.demo-help{line-height:1.6;font-size:12px;color:#777}.hero-content h1{max-width:750px}.demo-modal .tiny{font-size:11px;text-transform:uppercase;letter-spacing:.2em}.detail{display:none;position:fixed;inset:0;z-index:100;background:#f5f3ed;overflow:auto}.detail.open{display:block}.detail .close-detail{position:fixed;z-index:3;right:5vw;top:25px;border:0;background:#f6f3ed;padding:12px 17px}.detail-hero{height:65vh;min-height:380px;background-size:cover;background-position:center;position:relative}.detail-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0009,transparent)}.detail-name{position:absolute;z-index:2;color:white;bottom:9%;left:7vw;font:normal clamp(54px,8vw,110px) Georgia,serif}.detail-body{display:grid;grid-template-columns:1fr 2fr;gap:50px;padding:80px 7vw}.detail-body .lead{font:normal clamp(24px,3vw,43px)/1.4 Georgia,serif}.demo-pill{display:inline-flex;gap:10px;align-items:center}@media(max-width:700px){.prototype-note{left:10px;right:10px;bottom:10px;display:flex;justify-content:space-between;align-items:center}.demo-panel{padding:28px 20px}.demo-grid{grid-template-columns:1fr}.demo-grid .wide{grid-column:span 1}.detail-body{display:block}.demo-panel h2{font-size:36px}}

/* Floating identity: geometric lowercase lettering redrawn from the supplied logo. */
.pa-letter-field{position:fixed;inset:0;z-index:51;pointer-events:none;overflow:hidden;user-select:none;mix-blend-mode:difference;color:#fff}
.pa-floating-letter{position:absolute;left:var(--x);top:var(--y);width:clamp(64px,var(--size),210px);opacity:var(--alpha);will-change:transform;transform-origin:0 0}
.pa-floating-letter svg{display:block;width:100%;height:auto;overflow:visible}
.pa-floating-letter.is-stem{width:clamp(24px,4vw,62px)}
.pa-wordmark{position:absolute;right:7vw;top:19%;width:clamp(220px,32vw,560px);opacity:.48;will-change:transform}
.pa-wordmark svg{display:block;width:100%;overflow:visible}
.brand{display:block;width:190px;line-height:0;letter-spacing:normal}
.brand svg{display:block;width:100%;height:auto;filter:invert(1);mix-blend-mode:screen}
.site-head.scrolled .brand svg,.site-head.light .brand svg{filter:none;mix-blend-mode:multiply}
@media(max-width:700px){.brand{width:133px}.nav{gap:12px;font-size:9px}.pa-floating-letter{width:clamp(50px,17vw,90px);opacity:calc(var(--alpha) * .85)}.pa-floating-letter.is-stem{width:24px}.pa-wordmark{top:20%;right:7vw;width:65vw;opacity:.48}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pa-floating-letter,.pa-wordmark{will-change:auto;}}

/* Project section: six-card masonry selection and full project gallery. */
#projets .project-grid,#all-projects-grid{display:block;columns:3;column-gap:28px}
#projets .project-card,#all-projects-grid .project-card{display:inline-block;vertical-align:top;width:100%;min-width:0;max-width:none;margin:0 0 36px;break-inside:avoid}
#projets .project-card:nth-child(3n+1) .project-image,#all-projects-grid .project-card:nth-child(3n+1) .project-image{aspect-ratio:4/5}
#projets .project-card:nth-child(3n+2) .project-image,#all-projects-grid .project-card:nth-child(3n+2) .project-image{aspect-ratio:4/3}
#projets .project-card:nth-child(3n) .project-image,#all-projects-grid .project-card:nth-child(3n) .project-image{aspect-ratio:1}
#projets .project-meta,#all-projects-grid .project-meta{display:block;padding:17px 0}
#projets .project-meta h3,#all-projects-grid .project-meta h3{font-size:clamp(24px,2vw,32px)}
#projets .project-meta p,#all-projects-grid .project-meta p{text-align:left;margin-top:9px;line-height:1.5}
.projects-more{text-align:center;margin-top:20px}.projects-more button{display:inline-flex;align-items:center;justify-content:center;gap:36px;border:1px solid var(--ink);padding:22px 34px;background:transparent;color:var(--ink);font-size:11px;letter-spacing:.16em;text-transform:uppercase;transition:background .2s,color .2s}.projects-more button:hover{background:var(--ink);color:var(--paper)}
#all-projects{border:0;background:var(--paper);color:var(--ink);width:min(1240px,94vw);max-width:94vw;max-height:90svh;padding:55px 4vw;overflow:auto}#all-projects::backdrop{background:#000b}#all-projects h2{font:normal clamp(36px,5vw,64px) Georgia,serif;margin:0 0 40px}#close-projects{float:right;border:1px solid var(--line);padding:10px 15px;background:var(--paper);color:var(--ink)}
@media(max-width:1000px){#projets .project-grid,#all-projects-grid{columns:2}}
@media(max-width:600px){#projets .project-grid,#all-projects-grid{columns:1}#all-projects{padding:28px 6vw}#all-projects h2{clear:both;padding-top:25px}.projects-more button{width:100%}}

/* A single stable word preserves exact spacing once the letters have gathered. */
.pa-readable-word{position:fixed;z-index:51;top:90px;left:50%;width:min(312px,78vw);padding:12px 18px 8px;background:transparent;color:#242724;border-radius:3px;pointer-events:none;opacity:0;transform:translateX(-50%);will-change:transform,opacity;box-shadow:none}
.pa-readable-word svg{display:block;width:100%;height:auto}
@media(max-width:700px){.pa-readable-word{top:78px;width:min(290px,78vw);padding:10px 16px 6px}}

/* Office location and contact details. */
.office-location{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(0,1.4fr);gap:6vw;align-items:start;margin:75px 0 65px;padding-top:45px;border-top:1px solid #555}
.office-location h3{font:normal clamp(27px,3vw,40px)/1.2 Georgia,serif;margin:20px 0 25px}
.office-location address{font-style:normal;font-size:17px;line-height:1.8;color:#d0d2c9}
.office-contact{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin:27px 0;font-size:16px;overflow-wrap:anywhere}.office-contact a:hover{color:#c8b89b}
.office-map{min-width:0}.office-map iframe{display:block;border:0;width:100%;height:390px;background:#dedfd7}.office-map>a{display:inline-block;font-size:11px;letter-spacing:.1em;margin-top:14px;border-bottom:1px solid #777;padding-bottom:5px}
@media(max-width:760px){.office-location{grid-template-columns:1fr;gap:35px;margin:50px 0 45px}.office-map iframe{height:320px}}
html{scroll-padding-top:100px}@media(max-width:700px){html{scroll-padding-top:84px}}

/* Full-width location block — Canari 2022-10 digital reference. */
.site-footer .office-location{display:block;margin:75px -7vw 65px;padding:0;border-top:0;background:#ffd501;color:#181b1a}
.office-location-copy{padding:50px 7vw 45px}
.office-location address{color:#303329}
.office-location .office-contact a:hover{color:#181b1a;text-decoration:underline}
.office-location .office-map{width:100%}
.office-location .office-map>a{margin:18px 7vw 24px;border-bottom-color:rgba(24,27,26,.45)}
@media(max-width:760px){.site-footer .office-location{margin:50px -6vw 45px}.office-location-copy{padding:38px 6vw}.office-location .office-map>a{margin-left:6vw;margin-right:6vw}}

/* Editorial architecture direction inspired by ZHA; original Parallax identity retained. */
:root{--paper:#f7f7f4;--ink:#171917;--muted:#70736e;--gold:#ffd501;--line:rgba(23,25,23,.19)}
body{font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
.site-head{padding:0 4vw;height:84px;border-bottom:1px solid rgba(255,255,255,.22)}
.site-head.scrolled,.site-head.light{background:rgba(247,247,244,.95);border-bottom:1px solid var(--line)}
.nav{gap:30px;font-size:11px;letter-spacing:.075em}.nav a{position:relative;padding:10px 0}.nav a:after{content:"";position:absolute;bottom:3px;left:0;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s}.nav a:hover:after,.nav a:focus-visible:after{transform:scaleX(1)}.nav a:hover{color:inherit}
.hero{min-height:680px}.hero:after{background:linear-gradient(90deg,rgba(0,0,0,.42),rgba(0,0,0,.07) 85%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 65%)}
.hero-content{left:4vw;right:4vw;bottom:12%;max-width:1120px}
.hero-content h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(62px,7.9vw,126px);font-weight:400;line-height:1.01;letter-spacing:-.062em;max-width:1100px;margin:30px 0 36px}
.hero h1 em{display:block;font-style:normal;font-weight:400}
.hero-content .eyebrow{display:flex;align-items:center;gap:12px;letter-spacing:.14em;font-size:10px}.hero-content .eyebrow:before{content:"";height:7px;width:7px;border-radius:50%;background:var(--gold);flex:none}
.hero-bottom{gap:18px;font-size:10px;letter-spacing:.13em}.hero-bottom .round-arrow{width:44px;height:44px;font-size:22px}.hero-side{right:4vw;bottom:4%;font-size:9px;letter-spacing:.1em}
.section{padding:112px 4vw}.section-top{align-items:end;padding-top:24px;border-top:1px solid var(--line);margin-bottom:55px;gap:70px}
.eyebrow{font-size:10px;letter-spacing:.12em}
.section h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(52px,6.6vw,100px);line-height:1.02;font-weight:400;letter-spacing:-.065em;margin:25px 0 0}
.section-lead{font-size:15px;line-height:1.65;max-width:350px;color:#60635e;padding-bottom:4px}
#projets .section h2{margin-bottom:0}#projets .section-top h2 span{color:var(--gold)!important}
#projets .project-grid,#all-projects-grid{column-gap:22px}
#projets .project-card,#all-projects-grid .project-card{margin-bottom:40px}
#projets .project-meta,#all-projects-grid .project-meta{padding:15px 0 18px;border-bottom:1px solid var(--line)}
#projets .project-meta h3,#all-projects-grid .project-meta h3{font-family:Arial,Helvetica,sans-serif;font-size:clamp(21px,1.8vw,29px);font-weight:400;letter-spacing:-.035em;line-height:1.15}
#projets .project-meta p,#all-projects-grid .project-meta p{font-size:9px;letter-spacing:.08em;margin-top:9px;color:#646760}
.project-number{font-size:9px;top:17px;left:17px;letter-spacing:.1em}.project-link{width:39px;height:39px;bottom:17px;right:17px;font-size:21px;backdrop-filter:blur(5px)}
.project-image img{transition:transform 1.1s cubic-bezier(.2,.65,.25,1)}.project-card:hover .project-image img{transform:scale(1.035)}
.projects-more{margin-top:15px}.projects-more button{width:100%;padding:24px 0;justify-content:space-between;border:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);font-size:11px;letter-spacing:.12em;text-align:left}.projects-more button span{font-size:26px;transition:transform .3s}.projects-more button:hover{background:transparent;color:var(--ink)}.projects-more button:hover span{transform:translate(5px,-4px)}
.about-strip{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.about-strip .copy{max-width:620px}.about-strip h2{font-size:clamp(48px,5.8vw,88px);margin:24px 0 32px}.about-strip .copy p{font-size:16px;line-height:1.75;max-width:470px}.about-strip img{height:580px}.text-link{font-size:10px;letter-spacing:.1em;padding-bottom:11px}
.site-footer{background:#171b18}.site-footer h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(60px,8vw,122px);font-weight:400;line-height:1.02;letter-spacing:-.065em;max-width:1120px;margin:35px 0 45px}.site-footer h2 em{font-style:normal;color:#ffd501}
.office-location h3{font-family:Arial,Helvetica,sans-serif;font-size:clamp(30px,3.3vw,48px);font-weight:400;letter-spacing:-.045em}.office-location address{font-size:16px}.footer-bottom{font-size:9px;letter-spacing:.1em;line-height:1.6}
.detail-name,.detail-body .lead,#all-projects h2{font-family:Arial,Helvetica,sans-serif;font-weight:400;letter-spacing:-.045em}
.prototype-note{font-size:9px;letter-spacing:.08em;padding:9px 12px;border-radius:0;box-shadow:none;background:rgba(23,27,24,.9)}
a:focus-visible,button:focus-visible{outline:2px solid #bf9900;outline-offset:6px}
@media(min-width:1500px){.hero-content{max-width:1300px}.hero-content h1{max-width:1250px}}
@media(max-width:1000px){.hero-content h1{font-size:clamp(62px,8.5vw,85px)}.section-top{gap:35px}.section-lead{max-width:300px}.about-strip{gap:5vw}.about-strip img{height:480px}}
@media(max-width:760px){.site-head{height:70px;padding:0 6vw}.nav{gap:13px;font-size:9px;letter-spacing:.03em}.hero{min-height:620px}.hero-content{left:6vw;right:6vw;bottom:13%}.hero-content h1{font-size:clamp(45px,9vw,67px);line-height:1.03;letter-spacing:-.055em;margin:27px 0 32px}.hero h1 em{margin-top:7px}.hero-content .eyebrow{font-size:8px;letter-spacing:.08em}.hero-bottom{font-size:9px}.section{padding:75px 6vw}.section-top{margin-bottom:32px}.section h2{font-size:clamp(45px,10vw,65px);margin-top:20px}.section-lead{max-width:420px;margin-top:27px;font-size:14px}.about-strip{grid-template-columns:1fr;gap:35px}.about-strip h2{font-size:clamp(46px,10vw,65px)}.about-strip img{height:390px}.site-footer h2{font-size:clamp(52px,11vw,80px)}.prototype-note{left:auto;right:8px;bottom:8px;font-size:8px;padding:7px 9px}}
@media(prefers-reduced-motion:reduce){.project-image img,.project-link,.nav a:after,.projects-more button span{transition:none}}
.brand{mix-blend-mode:screen}.brand svg{mix-blend-mode:normal}.site-head.scrolled .brand,.site-head.light .brand{mix-blend-mode:multiply}
.brand svg{filter:brightness(0) invert(1)}.site-head.scrolled .brand svg,.site-head.light .brand svg{filter:none}

/* Imported introduction; all rules scoped to this section and its single traveling word. */
#top.pa-intro{position:relative;height:100svh;min-height:580px;overflow:hidden;color:#fff;background:#262624}
#top.pa-intro:after{display:none}
.pa-intro .slides{position:absolute;inset:0;will-change:transform}
.pa-intro .slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.09);transition:opacity 1.6s ease,transform 0s 1.6s}
.pa-intro .slide.on{opacity:1;transform:scale(1);transition:opacity 1.6s ease,transform 9s linear}
.pa-intro .shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.55),rgba(0,0,0,0) 58%),linear-gradient(180deg,rgba(0,0,0,.32),rgba(0,0,0,0) 20%)}
.pa-intro .hero-in{position:absolute;left:clamp(20px,3.2vw,48px);right:clamp(20px,3.2vw,48px);bottom:0;padding-bottom:clamp(16px,2.6vh,28px);font-family:"Instrument Sans","Helvetica Neue",Helvetica,Arial,sans-serif}
#top.pa-intro h1.tag{font-family:inherit;font-size:clamp(20px,2.3vw,36px);font-weight:400;line-height:1.1;letter-spacing:-.02em;max-width:19ch;margin:0 0 clamp(22px,4.5vh,52px)}
.pa-intro .mark{position:relative;aspect-ratio:110/25;margin-bottom:clamp(14px,3vh,30px)}
.pa-intro .hero-foot{display:grid;grid-template-columns:1fr auto 1fr;align-items:baseline;gap:16px;font-size:13px}
.pa-intro .cap{display:flex;gap:12px;align-items:baseline}.pa-intro .cap b{font-weight:500}.pa-intro .cap span{opacity:.72}.pa-intro .down{justify-self:end}
.pa-unified-field{position:fixed;inset:0;z-index:51;pointer-events:none;overflow:hidden;color:#fff;mix-blend-mode:difference;user-select:none}
.pa-unified-letter{position:absolute;left:0;top:0;width:calc(var(--w)*1px);transform-origin:0 0;will-change:transform,opacity}
.pa-unified-letter svg{display:block;width:100%;height:auto;overflow:visible}
@keyframes pa-intro-draw{to{stroke-dashoffset:0}}
.pa-unified-field.draw path{stroke-dasharray:1 2;stroke-dashoffset:1;animation:pa-intro-draw 1.9s cubic-bezier(.2,.7,.1,1) forwards;animation-delay:calc(var(--n)*110ms + 250ms)}
@media(max-width:760px){#top.pa-intro h1.tag{max-width:16ch}.pa-intro .hero-foot{grid-template-columns:1fr auto}.pa-intro .clock{display:none}.pa-intro .cap{flex-direction:column;gap:0}}
@media(prefers-reduced-motion:reduce){.pa-intro .slide,.pa-intro .slide.on{transition:none;transform:none}.pa-unified-letter{will-change:auto}.pa-unified-field.draw path{animation:none;stroke-dashoffset:0}}

/* 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}}

.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{clip:auto;width:auto;height:auto;z-index:100001;background:#ffd501;color:#171917;padding:15px;left:15px;top:15px}
.admin-bar .site-head{top:32px}.projects-more a{display:flex;width:100%;align-items:center;justify-content:space-between;border-top:1px solid;border-bottom:1px solid;padding:24px 0;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.projects-more a span{font-size:26px}
.project-sheet-page{padding:0}.project-sheet-page .project-photo-gallery{padding-top:104px}.project-sheet-description p+p{margin-top:1em}.project-sheet-description a{text-decoration:underline}.project-sheet-description img{max-width:100%;height:auto}.project-sheet-facts dd{overflow-wrap:anywhere}.project-sheet-nav strong{overflow-wrap:anywhere}
@media(max-width:782px){.admin-bar .site-head{top:46px}}@media(max-width:760px){.nav a:nth-child(2){display:block}.nav a:nth-child(3){display:none}.project-sheet-page .project-photo-gallery{padding-top:88px}}
/* Accueil : photos complètes, sans zoom */
#projets .project-image {
  aspect-ratio: auto !important;
}

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

/* Même largeur que « Tous les projets » */
@media (min-width: 1001px) {
  #projets .project-grid {
    column-count: 3;
    column-gap: 24px;
  }
}
/* Afficher la photo du bureau en entier */
#atelier img {
  display: block;
  width: 100%;
  height: auto !important;
  object-fit: contain;
}