/* Module autonome : aucun style global sur le site qui l’accueille. */
.pixel-gallery { position: relative; display: block; width: 100%; max-width: none; margin: 0; padding: 0; overflow-anchor: none; background: #000000 !important; }
.pixel-gallery .pixel-journey { position: relative; width: 100%; margin: 0; padding: 0; height: var(--distance, 260vh); height: var(--distance-svh, 260svh); }
.pixel-gallery .pixel-stage { position: sticky; top: 0; width: 100%; height: 100vh; height: 100svh; overflow: hidden; background: #000000 !important; }
.pixel-gallery .pixel-surface { position: absolute; top: 0; left: 0; display: block; margin: 0; padding: 0; border: 0; max-width: none; }
.pixel-gallery--fullwidth { grid-column: 1 / -1; width: var(--pixel-page-width, 100vw); left: calc(50% - var(--pixel-page-width, 100vw) / 2); }
.pixel-stills img { display: block; width: 100%; height: 100vh; height: 100svh; margin: 0; object-fit: contain; background: #000000 !important; }
@media (prefers-reduced-motion: reduce) { .pixel-gallery .pixel-journey { height: 100vh; height: 100svh; } .pixel-gallery .pixel-stage { position: relative; } }





/* Harmonised typography: a single quiet text scale. */
@font-face{font-family:'Fira Code';src:url('FiraCode-Light-Site-v6.woff') format('woff');font-style:normal;font-weight:300;font-display:swap}
.pixel-gallery{--iteration-edge:clamp(24px,4.2vw,76px);color:#eee;font-family:'Fira Code',monospace;font-weight:300;font-variant-ligatures:none}
.pixel-gallery .iteration-spoken{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pixel-gallery .iteration-label{position:absolute;z-index:2;left:var(--iteration-edge);bottom:calc(24px + env(safe-area-inset-bottom));display:flex;align-items:baseline;gap:12px;margin:0;color:#fff;font:300 11px/1.6 'Fira Code',monospace;letter-spacing:.015em;text-transform:none;mix-blend-mode:difference;pointer-events:none}
.pixel-gallery .iteration-label span{font:inherit;letter-spacing:inherit}
.pixel-gallery .pixel-verse{position:relative;display:flex;align-items:center;min-height:22vh;min-height:22svh;margin:0;padding:48px var(--iteration-edge);background:#000}
.pixel-gallery .pixel-verse:first-child{min-height:20vh;min-height:20svh}
.pixel-gallery .pixel-verse p{width:100%;max-width:680px;margin:0;padding:0;color:#eee;font:300 18px/1.9 'Fira Code',monospace;letter-spacing:.015em;text-transform:none;text-wrap:pretty}
.pixel-gallery .verse-line,.pixel-gallery .verse-small,.pixel-gallery .verse-medium,.pixel-gallery .verse-mass{display:inline;max-width:none;width:auto;font:inherit;letter-spacing:inherit;margin:0;padding:0}
.verse-ready .verse-line{opacity:.15;transition:opacity .65s ease;transition-delay:0ms !important}
.verse-ready.is-visible .verse-line{opacity:1}
body.iteration-edition{background:#000;font-family:'Fira Code',monospace;font-weight:300;letter-spacing:.015em;font-synthesis:none;font-variant-ligatures:none}
body.iteration-edition :is(h1,h2,h3,h4,p,a,button,input,textarea,select,span,nav,dialog,label){font-family:'Fira Code',monospace;font-weight:300;font-style:normal}
body.iteration-edition .header .wordmark,body.iteration-edition .hero h1{font:300 18px/1.6 'Fira Code',monospace;letter-spacing:.04em}
body.iteration-edition #approach{display:grid;grid-template-columns:1fr 3fr;gap:36px;padding:76px var(--pad,4.2vw) 64px;background:#000;color:#eee;border:0}
body.iteration-edition #approach .about-label{margin:0}
body.iteration-edition #approach .about-copy{padding:0;max-width:680px;margin:0;min-width:0}
body.iteration-edition #approach h2.eyebrow,body.iteration-edition #contact h2.eyebrow{margin:4px 0 0;font:300 12px/1.6 'Fira Code',monospace;letter-spacing:.015em;text-transform:none;color:#bbb}
body.iteration-edition #approach .approach-entry p{margin:0;font:300 18px/1.9 'Fira Code',monospace;letter-spacing:.015em;text-wrap:pretty}
body.iteration-edition #approach .approach-after{display:inline;margin:0;font:inherit;letter-spacing:inherit}
body.iteration-edition #contact{display:flex;flex-direction:column;align-items:flex-start;background:#000;color:#eee;border:0;padding:40px var(--pad,4.2vw) 64px}
body.iteration-edition #contact > .contact-email{margin-top:20px;padding:0;border:0;font:300 16px/1.9 'Fira Code',monospace;letter-spacing:.015em}
body.iteration-edition #contact > .contact-instagram{margin-top:16px;padding:0;border:0;font:300 12px/1.8 'Fira Code',monospace;letter-spacing:.015em;color:#bbb}
body.iteration-edition footer{display:grid;grid-template-columns:1fr 3fr 1fr;gap:24px;align-items:center;margin:0;padding:28px var(--pad,4.2vw) 40px;background:#000;color:#bbb;border:0;font:300 11px/1.8 'Fira Code',monospace;letter-spacing:.015em}
body.iteration-edition footer .footer-brand{font:inherit;letter-spacing:inherit;color:#ddd}
body.iteration-edition footer p{margin:0;padding:0}
body.iteration-edition footer > a:last-child{justify-self:end;width:auto;font-size:inherit}
body.iteration-edition .menu-dialog{font-family:'Fira Code',monospace;font-weight:300;letter-spacing:.015em}
body.iteration-edition .menu-dialog .wordmark{font:300 18px/1.6 'Fira Code',monospace;letter-spacing:.04em}
body.iteration-edition .menu-dialog nav a{font:300 18px/1.8 'Fira Code',monospace;letter-spacing:.015em}
body.iteration-edition .menu-head button,body.iteration-edition .menu-head button span,body.iteration-edition .menu-bottom,body.iteration-edition .skip{font:300 12px/1.6 'Fira Code',monospace;letter-spacing:.015em}
@media(max-width:700px){
 .pixel-gallery .pixel-verse,.pixel-gallery .pixel-verse:first-child{min-height:18svh;padding:36px 24px}
 .pixel-gallery .pixel-verse p{font-size:16px}
 body.iteration-edition #approach{grid-template-columns:1fr;gap:24px;padding:56px 24px}
 body.iteration-edition #approach .approach-entry p{font-size:16px}
 body.iteration-edition #contact{padding:32px 24px 48px}
 body.iteration-edition footer{grid-template-columns:1fr 1fr;gap:24px;padding:24px 24px 36px}
 body.iteration-edition footer p{grid-column:1/-1;grid-row:2;margin:0}
}
@media(prefers-reduced-motion:reduce){.verse-ready .verse-line{opacity:1;transition:none}}
