/* ersatz.me — piste B « Saturation » : le nom est l'équaliseur.
   Traduction de maquettes/piste-b.html sur le balisage des blocs (sections de build/contenu, parties du thème).
   Couleurs : palette du theme.json (base noir, surface noir de scène (cobalt jusqu'au 25/10/2026), accent rose, primary jaune, contrast blanc).
   Les états masqués d'une animation ne valent que sous html.wpsw-anime (posée par wpsw-base, jamais sous
   mouvement réduit) ; la structure ajoutée par le script (lettres, barres, couches, lecteur) porte ses propres classes. */

/* ---------- Voix du pied de page (catalogue wizm, chargées seulement quand le script les demande) ---------- */
@font-face{font-family:"Big Shoulders Stencil Display";src:url(../fonts/voix/big-shoulders-stencil-display/big-shoulders-stencil-display-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:block}
@font-face{font-family:"Bungee Inline";src:url(../fonts/voix/bungee-inline/bungee-inline-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:"Abril Fatface";src:url(../fonts/voix/abril-fatface/abril-fatface-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:"Rubik Mono One";src:url(../fonts/voix/rubik-mono-one/rubik-mono-one-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:"Shrikhand";src:url(../fonts/voix/shrikhand/shrikhand-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:"Black Ops One";src:url(../fonts/voix/black-ops-one/black-ops-one-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:"Rye";src:url(../fonts/voix/rye/rye-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:"Special Elite";src:url(../fonts/voix/special-elite/special-elite-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:"Bodoni Moda";src:url(../fonts/voix/bodoni-moda/bodoni-moda-latin-wght-italic.woff2) format("woff2");font-weight:400 900;font-style:italic;font-display:block}
@font-face{font-family:"Dela Gothic One";src:url(../fonts/voix/dela-gothic-one/dela-gothic-one-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:"Unbounded";src:url(../fonts/voix/unbounded/unbounded-latin-wght-normal.woff2) format("woff2");font-weight:200 900;font-style:normal;font-display:block}
@font-face{font-family:"Fraunces";src:url(../fonts/voix/fraunces/fraunces-latin-wght-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:block}
@font-face{font-family:"Syne";src:url(../fonts/voix/syne/syne-latin-wght-normal.woff2) format("woff2");font-weight:400 800;font-style:normal;font-display:block}

:root{
  --cobalt:var(--wp--preset--color--surface);--rose:var(--wp--preset--color--accent);--jaune:var(--wp--preset--color--primary);
  --noir:var(--wp--preset--color--base);--blanc:var(--wp--preset--color--contrast);
  --affiche:var(--wp--preset--font-family--heading);--texte:var(--wp--preset--font-family--body);
  --marge:clamp(16px,2.8vw,40px);
  --scene:min(46vh,440px);
  --diode:linear-gradient(to top,var(--jaune) 0 55%,var(--rose) 100%);
}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
:focus-visible{outline:3px solid currentColor;outline-offset:4px}
.sr,.sr-titre{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}

/* Les sections pleine largeur se touchent : pas d'espace de bloc entre deux aplats (le rythme vient des couleurs) */
.wp-site-blocks>footer,.wp-site-blocks>main,.entry-content>.seuil,.entry-content>.rubrique,.wp-block-post-content>.seuil,.wp-block-post-content>.rubrique{margin-block-start:0!important;margin-block-end:0}
.wp-site-blocks>main{padding-bottom:0}
body>.wpsw-annonce{position:absolute!important;margin:0!important}

/* Couleurs d'encre par aplat (barres, diodes) */
.has-surface-background-color{--encre:var(--blanc);--barre:var(--blanc);--fond:var(--cobalt)}
.has-accent-background-color{--encre:var(--noir);--barre:var(--noir);--fond:var(--rose)}
.has-base-background-color{--encre:var(--blanc);--barre:var(--blanc);--fond:var(--noir)}
.has-primary-background-color{--encre:var(--noir);--barre:var(--noir);--fond:var(--jaune)}

.phrase{font-style:italic;font-weight:400;font-size:20px;line-height:1.45;max-width:34ch;margin:0}
.vers,.vers a{font-family:var(--affiche);font-weight:800;text-transform:uppercase;font-size:22px;letter-spacing:.06em;text-decoration:none}
.vers a{border-bottom:3px solid currentColor;padding:6px 0;display:inline-block}
.vers a:hover{border-bottom-color:transparent}

/* ---------- Lettres-barres (posées par le script : .mot > .l > .g, et lamelles .lam) ---------- */
.mot{display:flex;align-items:flex-end;font-family:var(--affiche);text-transform:uppercase;line-height:.86;letter-spacing:0}
.l{position:relative;display:block;text-align:center;font-weight:700;transform-origin:50% 100%;transform:scaleY(calc(var(--s,1) * var(--in,1)));--cut:0%;--sat:0}
.l .g{display:block}
.lam{position:absolute;inset:0;display:block;pointer-events:none;opacity:calc(var(--sat) * 6)}
.lam.a{color:var(--rose);clip-path:inset(0 0 calc(100% - var(--cut) / 3) 0);transform:translate(calc(var(--sat) * .07em),calc(var(--sat) * -.05em))}
.lam.b{color:var(--jaune);clip-path:inset(calc(var(--cut) / 3) 0 calc(100% - var(--cut) * 2 / 3) 0);transform:translate(calc(var(--sat) * -.05em),calc(var(--sat) * -.03em))}
.lam.c{color:var(--jaune);clip-path:inset(calc(var(--cut) * 2 / 3) 0 calc(100% - var(--cut)) 0);transform:translate(calc(var(--sat) * .03em),calc(var(--sat) * -.012em))}
.mot .saut{display:none}

/* ---------- En-tête : nom en petites barres, « Écrire », menu en barres ---------- */
.wp-site-blocks>header{position:fixed;inset:0 0 auto 0;z-index:40;margin:0;transition:background-color .3s,filter .7s cubic-bezier(.2,.7,.2,1)}
.admin-bar .wp-site-blocks>header{top:var(--wp-admin--admin-bar--height,32px)}
html.entete-plein .wp-site-blocks>header{background:var(--noir)}
body:not(.home) .wp-site-blocks>header{background:var(--entete-fond,var(--noir))}
body:not(.home) .wp-site-blocks>header .entete{color:var(--entete-encre,var(--blanc))}
body:not(.home) .entete .btn-ecrire .wp-block-button__link,body:not(.home) .menu-barres .wp-block-navigation__responsive-container-open{color:var(--entete-encre,var(--blanc))}
body:not(.home) .entete .btn-ecrire .wp-block-button__link:hover{background:var(--entete-encre,var(--blanc));color:var(--entete-fond,var(--noir))}
html.wpsw-anime body.home .wp-site-blocks>header{z-index:60}
html:not(.entete-plein) body.home .wp-site-blocks>header{background:linear-gradient(rgba(0,0,0,.38),rgba(0,0,0,0))}
html.entete-plein body.home .wp-site-blocks>header{background:var(--noir)}
.entete{padding:12px var(--marge)!important;color:var(--blanc);gap:16px}
.entete .wpsw-marque a,.entete .wp-block-site-title a{color:inherit;text-decoration:none}
.entete .wp-block-site-title{font-size:30px;line-height:1;margin:0}
.entete .wp-block-site-title a{display:flex;height:40px;align-items:flex-end;padding-bottom:4px}
.entete .mot{gap:2px}
.entete .l{font-weight:500}
.entete-droite{gap:10px!important}
.entete-droite .wp-block-buttons{margin:0}
.btn-ecrire .wp-block-button__link{background:transparent;color:var(--blanc);border:2px solid currentColor;font-size:19px;letter-spacing:.16em;padding:10px 16px;min-height:44px}
.btn-ecrire .wp-block-button__link:hover{background:var(--blanc);color:var(--noir)}
/* Bouton du menu : trois barres d'équaliseur dessinées, l'icône du cœur masquée */
.menu-barres .wp-block-navigation__responsive-container-open{width:44px;height:44px;padding:0;color:var(--blanc);
  background:linear-gradient(currentColor,currentColor) 10px 100%/6px 60% no-repeat,linear-gradient(currentColor,currentColor) 19px 100%/6px 100% no-repeat,linear-gradient(currentColor,currentColor) 28px 100%/6px 35% no-repeat;
  background-origin:content-box;border:9px solid transparent;transition:background-size .2s}
.menu-barres .wp-block-navigation__responsive-container-open:hover{background-size:6px 100%,6px 100%,6px 80%}
.menu-barres .wp-block-navigation__responsive-container-open svg{opacity:0}
/* Menu plein écran : trois barres géantes qui montent vers le curseur, posées sur la ligne des deux tiers */
.menu-barres .wp-block-navigation__responsive-container.is-menu-open{background:var(--noir)!important;color:var(--blanc)!important;padding:0!important}
.menu-barres .wp-block-navigation__responsive-container.is-menu-open::after{content:"";position:absolute;left:0;right:0;top:66.6%;height:2px;background:var(--blanc);pointer-events:none}
.menu-barres .is-menu-open .wp-block-navigation__responsive-close{max-width:none;height:100%}
.menu-barres .is-menu-open .wp-block-navigation__responsive-dialog{height:100%}
.menu-barres .is-menu-open .wp-block-navigation__responsive-container-close{top:14px;right:var(--marge);width:auto;min-height:44px;padding:8px 16px;border:2px solid var(--blanc);color:var(--blanc);z-index:3}
.menu-barres .is-menu-open .wp-block-navigation__responsive-container-content{padding:0!important;height:100%;align-items:stretch!important}
.menu-barres .is-menu-open .wp-block-navigation__container{display:grid!important;grid-template-columns:repeat(3,1fr);gap:0!important;width:100%;height:100%;align-items:stretch!important}
.menu-barres .is-menu-open .wp-block-navigation-item{position:relative;border-left:1px solid #333;margin:0!important;--h:10%}
.menu-barres .is-menu-open .wp-block-navigation-item:first-child{border-left:0}
.menu-barres .is-menu-open .wp-block-navigation-item:nth-child(1){--h:40%}  /* 13 galeries */
.menu-barres .is-menu-open .wp-block-navigation-item:nth-child(2){--h:34%}  /* 11 morceaux : 11/13 de la première */
.menu-barres .is-menu-open .wp-block-navigation-item:nth-child(3){--h:3.1%} /* 1 pièce */
.menu-barres .is-menu-open .wp-block-navigation-item__content{position:absolute!important;inset:0;display:block;text-decoration:none;padding:0!important}
.menu-barres .is-menu-open .wp-block-navigation-item__content::before{content:"";position:absolute;left:22%;right:22%;bottom:33.4%;height:var(--h);background:var(--blanc);transition:height .25s cubic-bezier(.2,.8,.2,1)}
.menu-barres .is-menu-open .wp-block-navigation-item__content:hover::before{background:var(--diode)}
.menu-barres .is-menu-open .wp-block-navigation-item__content:focus-visible{outline:3px solid var(--blanc);outline-offset:-10px}
.menu-barres .is-menu-open .wp-block-navigation-item__content:focus-visible::before{height:62%;background:var(--diode)}
.menu-barres .is-menu-open .wp-block-navigation-item__label{position:absolute;left:22%;top:calc(66.6% + 14px);font-family:var(--affiche);font-weight:800;text-transform:uppercase;font-size:clamp(40px,6vw,92px);line-height:1}
html.wpsw-anime .menu-barres .is-menu-open .wp-block-navigation__responsive-container-content{animation:menu-monte .45s cubic-bezier(.65,0,.35,1)}
@keyframes menu-monte{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}

/* ---------- Ouverture : le désert plein écran, le logo sur la ligne du tiers bas ---------- */
.ouverture{position:relative;height:100svh;min-height:520px;overflow:hidden;padding:0!important;margin:0!important}
.ouverture .feuille{position:absolute;inset:0;overflow:hidden;background:var(--cobalt)}
.ouverture figure{margin:0!important}
.ouverture .desert{position:absolute;inset:0;background:#2a2230}
.ouverture .desert img{width:100%;height:100%;object-fit:cover;object-position:34% 42%}
.ouverture .logo-ersatz{position:absolute;left:50%;top:66.6%;width:min(46vw,500px);transform:translate(-50%,-50%)}
.ouverture .logo-ersatz img{width:100%;height:auto}
.ouverture::after{content:"";position:absolute;left:50%;bottom:calc(20px + env(safe-area-inset-bottom));width:2px;height:48px;transform:translateX(-50%);
  background:linear-gradient(var(--blanc),var(--blanc)) 0 0/100% 40% no-repeat,rgba(255,255,255,.3);animation:defiler 1.8s cubic-bezier(.6,0,.3,1) infinite;z-index:2;transition:opacity .3s}
.ouverture.entamee::after{opacity:0}
@keyframes defiler{from{background-position:0 -100%}to{background-position:0 250%}}
.ouverture>*,.heros>*,.couche>*{margin-block-start:0!important}
html.wpsw-anime .ouverture.prete{position:fixed;inset:0;height:auto;min-height:0;z-index:55;background:none!important;perspective:900px;perspective-origin:50% 50%}
html.wpsw-anime .seuil.avec-ouverture .heros{position:sticky;top:0}
html.wpsw-anime .seuil.avec-ouverture::after{content:"";display:block;height:200svh}
html.wpsw-anime .seuil.avec-ouverture{margin-bottom:-100svh!important}
html.wpsw-anime .rubrique-photo{position:relative;z-index:3}
.ouverture.dechiree{visibility:hidden}
.ouverture.vue{display:none}
.lambeau{position:absolute;inset:0;will-change:transform}
.lambeau .fibre{position:absolute;inset:0;background:#fbfaf7}

/* ---------- Héros noir : le nom est l'équaliseur ---------- */
.seuil{padding:0!important}
.heros{position:relative;min-height:max(100svh,720px);overflow:hidden;padding:0!important;margin:0!important}
.heros::before{content:"";position:absolute;left:0;right:0;bottom:33.4%;height:2px;background:var(--blanc);opacity:.9;z-index:1}
html.ez-js .heros::before{display:none}
.heros .ligne-base{position:absolute;left:0;right:0;bottom:33.4%;height:2px;background:var(--blanc);opacity:.9;z-index:1}
.heros .nom-equaliseur{position:absolute;left:var(--marge);right:var(--marge);bottom:33.4%;margin:0;z-index:3;font-size:19vw;font-weight:700;line-height:.86;color:var(--blanc);letter-spacing:0}
.heros .nom-btn{display:block;width:100%;text-align:left;color:inherit;background:none;border:0;padding:0;cursor:pointer;font:inherit}
.heros .nom-btn .mot{justify-content:space-between;font-size:20vw}
.heros .l{z-index:3}
/* Photos du héros : la première est en place, les autres attendent que le script les fasse paraître */
/* 25/10/2026 : bien plus grande (avis de l'utilisateur), centrée dans la hauteur, derrière le nom */
.heros-photos{position:absolute!important;left:50%;top:max(92px,calc((100% - min(80vh,780px,100vw - 80px)) / 2));bottom:auto;width:min(80vh,780px,100vw - 80px);aspect-ratio:1;transform:translateX(-50%);z-index:2;margin:0!important;display:block!important;pointer-events:none}
.heros-photos>figure{width:100%!important;height:100%;margin:0!important;background:var(--rose);isolation:isolate;position:relative}
.heros-photos>figure:not(:first-child){display:none!important}
.heros-photos>figure img{width:100%!important;height:100%!important;object-fit:cover;object-position:60% 35%;filter:grayscale(1) contrast(1.6) brightness(1.2);mix-blend-mode:multiply}
.heros-photos>figure::after{content:"";position:absolute;inset:0;pointer-events:none;mix-blend-mode:multiply;opacity:.4;background:repeating-linear-gradient(90deg,#000 0 1px,transparent 1px 5px)}
.heros-photos.cachee{visibility:hidden}
.heros .vagues,.heros .mosaique{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.heros .vagues{z-index:0}
.heros .mosaique{z-index:2}
.heros .fantome{position:absolute;z-index:0;pointer-events:none;opacity:.6}
.pause-photos{position:absolute;z-index:4;right:var(--marge);top:84px;width:44px;height:44px;display:grid;place-items:center;border:2px solid var(--blanc);color:var(--blanc);background:none;cursor:pointer;padding:0}
.pause-photos svg{width:14px;height:14px;fill:currentColor}
.pause-photos:hover{background:var(--blanc);color:var(--cobalt)}
.sous-base{position:absolute!important;left:var(--marge);right:var(--marge);top:66.6%;padding-top:22px;display:flex!important;justify-content:space-between;align-items:flex-start;gap:24px;z-index:3;margin:0!important}
.sous-base>*{margin:0!important}
/* 25/10/2026 : les grandes photos roses passent sous ces textes ; une ombre sombre les garde lisibles */
.sous-base .phrase,.lancer .wp-block-button__link{text-shadow:0 0 10px rgba(0,0,0,.85),0 0 2px rgba(0,0,0,.9)}
.lancer .wp-block-button__link{display:flex;gap:16px;align-items:center;text-align:left;background:none;color:var(--blanc);padding:0;letter-spacing:.02em;text-transform:none;font-family:var(--texte)}
.lancer .wp-block-button__link::before{content:"";flex:none;width:64px;height:64px;border:2px solid currentColor;box-sizing:border-box}
.lancer .wp-block-button__link::after{content:"";position:absolute;left:23px;top:50%;width:20px;height:22px;transform:translateY(-50%);background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%)}
.lancer .wp-block-button__link:hover{background:none;color:var(--blanc)}
.lancer .wp-block-button__link:hover::before{background:var(--blanc)}
.lancer .wp-block-button__link:hover::after{background:var(--cobalt)}
.lancer strong{display:block;font-family:var(--affiche);font-weight:800;text-transform:uppercase;font-size:30px;line-height:1}
.lancer em{display:block;font-size:18px;font-style:italic;font-weight:400}
.lancer .wp-block-button__link.joue::after{clip-path:none;width:18px;left:23px;background:linear-gradient(90deg,currentColor 0 35%,transparent 35% 65%,currentColor 65%)}
.heros .rubriques{position:absolute;right:var(--marge);bottom:28px;display:flex;align-items:flex-end;gap:18px;z-index:3;list-style:none;margin:0;padding:0;transition:right .4s cubic-bezier(.2,.8,.2,1)}
html.avec-lecteur .heros .rubriques{right:calc(var(--marge) + 316px)}
.heros .rubriques li{margin:0}
.heros .rubriques li:nth-child(1){--v:1}       /* 13 galeries */
.heros .rubriques li:nth-child(2){--v:.846}    /* 11 morceaux */
.heros .rubriques li:nth-child(3){--v:.077}    /* 1 pièce */
.heros .rubriques a{display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;text-decoration:none;min-width:112px;min-height:44px;color:var(--blanc)}
.heros .rubriques a::before{content:"";display:block;width:112px;background:var(--blanc);height:calc(var(--v) * 120px);min-height:4px;transform-origin:50% 100%;transform:scaleY(var(--monte,1))}
.heros .rubriques a:hover::before,.heros .rubriques a:focus-visible::before{background:var(--diode)}
.heros .rubriques strong{display:block;margin-top:8px;font-family:var(--affiche);font-weight:800;text-transform:uppercase;font-size:24px;line-height:1}
.heros .rubriques em{display:block;font-style:italic;font-size:16px;line-height:1.3}
/* Héros en couches espacées dans la profondeur (ordinateur, script actif) : posées par le script */
.scene3d,.couche{display:contents}
@media (min-width:761px){
  html.wpsw-anime .heros.en-3d{perspective:1400px;perspective-origin:calc(50% + var(--px,0) * 1%) calc(50% + var(--py,0) * 1%);transition:perspective-origin .8s cubic-bezier(.2,.8,.2,1)}
  html.wpsw-anime .heros.en-3d .scene3d{display:block;position:absolute;inset:0;transform-style:preserve-3d;pointer-events:none}
  html.wpsw-anime .heros.en-3d .couche{display:block;position:absolute;inset:0;pointer-events:none;transform-origin:50% 50%;
    transform:translate3d(var(--dx,0px),0,calc(var(--z) + var(--dz,0px))) rotateY(var(--ry,0deg)) scale(var(--k))}
  html.wpsw-anime .heros.en-3d .couche-fond{--z:-900px;--k:1.642857}
  html.wpsw-anime .heros.en-3d .couche-fond .vagues{inset:-8%;width:116%;height:116%}
  html.wpsw-anime .heros.en-3d .couche-photo{--z:-420px;--k:1.3}
  html.wpsw-anime .heros.en-3d .couche-nom{--z:-220px;--k:1.157143}
  html.wpsw-anime .heros.en-3d .couche-devant{--z:0px;--k:1}
  html.wpsw-anime .heros.en-3d .couche :is(.nom-btn,.lancer a,.rubriques a,.pause-photos){pointer-events:auto}
}

/* ---------- Rubriques : ligne de base aux deux tiers ---------- */
.rubrique{position:relative;padding:clamp(96px,12vh,140px) var(--marge) 72px!important}
.rubrique>*{margin-block-start:0}
.tete{display:flex!important;justify-content:space-between;align-items:flex-end;gap:16px 32px;flex-wrap:wrap;margin-bottom:clamp(32px,6vh,64px)!important}
.tete>*{margin:0!important}
.tete .titre-vivant{font-size:clamp(96px,17vw,250px);font-weight:200;line-height:.86;margin:0;flex-basis:100%}
.tete .titre-vivant .l{font-weight:200}
.tete .phrase{flex:1 1 30ch}
.tete .vers,.tete .meta{flex:none}
.rubrique-scene{position:relative;display:flex!important;align-items:flex-end;gap:clamp(24px,4vw,64px);min-height:var(--scene);border-bottom:2px solid var(--encre)}
.rubrique-scene>*{margin:0!important}

/* Photo : les galeries posées nonchalamment sur le noir, à trois profondeurs (taille = profondeur, jauge = nombre réel) */
.rubrique-photo{overflow:clip}
.rubrique-photo:not(.page-galerie):not(.page-rubrique){padding-bottom:clamp(180px,34vh,340px)!important}
.posees{position:relative;aspect-ratio:1360/1130;width:100%;margin:0}
.tirage{position:absolute!important;left:calc(var(--x) / 1360 * 100%);top:calc(var(--y) / 1130 * 100%);width:calc(var(--t) / 1360 * 100%);rotate:var(--r,0deg);z-index:calc(4 - var(--prof));margin:0!important}
.tirage:nth-child(1){--x:40;--y:20;--t:300;--r:-3deg;--prof:1;--n:22;--maniere:monter}
.tirage:nth-child(2){--x:390;--y:120;--t:200;--r:4deg;--prof:2;--n:28;--maniere:glisser}
.tirage:nth-child(3){--x:640;--y:30;--t:140;--r:-6deg;--prof:3;--n:13;--maniere:monter}
.tirage:nth-child(4){--x:820;--y:170;--t:150;--r:3deg;--prof:3;--n:18;--maniere:tourner}
.tirage:nth-child(5){--x:1030;--y:20;--t:210;--r:-2deg;--prof:2;--n:19;--maniere:monter}
.tirage:nth-child(6){--x:1185;--y:330;--t:150;--r:5deg;--prof:3;--n:9;--maniere:glisser}
.tirage:nth-child(7){--x:110;--y:480;--t:230;--r:2deg;--prof:2;--n:18;--maniere:tourner}
.tirage:nth-child(8){--x:420;--y:430;--t:290;--r:-4deg;--prof:1;--n:37;--maniere:monter}
.tirage:nth-child(9){--x:820;--y:420;--t:320;--r:2deg;--prof:1;--n:49;--maniere:monter}
.tirage:nth-child(10){--x:1185;--y:640;--t:165;--r:-5deg;--prof:3;--n:46;--maniere:monter}
.tirage:nth-child(11){--x:60;--y:830;--t:160;--r:-3deg;--prof:3;--n:13;--maniere:glisser}
.tirage:nth-child(12){--x:330;--y:850;--t:200;--r:4deg;--prof:2;--n:9;--maniere:monter}
.tirage:nth-child(13){--x:700;--y:860;--t:150;--r:-2deg;--prof:3;--n:9;--maniere:tourner}
.tirage:is(:hover,:focus-within){z-index:5}
.tirage-photo{position:relative;display:block;aspect-ratio:1;background:#222;margin:0!important}
.tirage-photo a{display:block;width:100%;height:100%}
.tirage-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.25) brightness(calc(.86 - var(--prof,1) * .06));transition:filter .45s}
.tirage:is(:hover,:focus-within,.en-vue) .tirage-photo img,.serie:is(:hover,:focus-within,.en-vue) .tirage-photo img{filter:saturate(1.35) contrast(1.05)}
.tirage-photo::after{content:"";position:absolute;right:-12px;bottom:0;width:6px;height:calc(var(--n,0) / 49 * 100%);background:var(--blanc);pointer-events:none}
.tirage:is(:hover,:focus-within) .tirage-photo::after{background:linear-gradient(to bottom,var(--rose) 0 7px,var(--jaune) 7px 16px,var(--blanc) 16px)}
.tirage-infos{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;margin:10px 0 0!important;font-size:15px;line-height:1.25}
.tirage-infos strong{flex-basis:100%;font-family:var(--affiche);font-weight:800;text-transform:uppercase;font-size:calc(30px - var(--prof,1) * 4px);line-height:1;letter-spacing:.02em}
.tirage-infos .nb{font-family:var(--affiche);font-weight:800;font-size:22px;line-height:1;font-variant-numeric:tabular-nums}
.tirage-infos em{font-size:15px}
html.wpsw-anime .tirage{will-change:translate}

/* Index des galeries (page Photo) */
.index-galeries{margin-top:calc(var(--marge) * 2)!important;border-top:2px solid var(--encre)}
.ligne-galerie{display:flex!important;justify-content:space-between;align-items:baseline;gap:8px 32px;flex-wrap:wrap;border-bottom:1px solid #444;padding:18px 0;margin:0!important}
.ligne-galerie>*{margin:0!important}
.ligne-galerie h2{font-size:clamp(40px,5vw,72px);font-weight:800;line-height:1}
.ligne-galerie h2 a{text-decoration:none}
.ligne-galerie h2 a:hover{background:var(--diode);-webkit-background-clip:text;background-clip:text;color:transparent}
.ligne-galerie .meta{font-style:italic;font-size:18px;max-width:60ch}

/* Pages de galerie : séries, planche, suite */
.page-galerie .meta{font-family:var(--affiche);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:20px}
.series{margin-bottom:clamp(48px,8vh,96px)!important}
.series>h2,.planche-galerie>h2{font-size:clamp(40px,5vw,64px);font-weight:200;margin:0 0 24px!important}
.series-liste{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,3vw,40px)}
.serie{margin:0!important;--prof:1}
.serie:nth-child(2n){rotate:1.5deg}.serie:nth-child(2n+1){rotate:-1.5deg}
.serie h3{font-size:30px;font-weight:800;margin:12px 0 4px!important}
.serie h3 a{text-decoration:none;color:inherit}.serie h3 a:hover,.serie h3 a:focus-visible{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px}
.serie .tirage-photo a{cursor:pointer}
.serie .tirage-infos{margin:0!important}
.series .note{font-style:italic;font-size:16px;margin-top:20px!important}
.planche{display:block!important;columns:4 240px;column-gap:clamp(10px,1.4vw,18px)}
.planche>figure{display:block!important;width:100%!important;margin:0 0 clamp(10px,1.4vw,18px)!important;break-inside:avoid;cursor:zoom-in;position:relative}
.planche>figure img{display:block;width:100%!important;height:auto!important;object-fit:contain!important}
/* Galeries (retour de recette, tour 1) : photos en couleur, dans le format de leur fichier, sans recadrage */
.page-galerie .serie .tirage-photo{aspect-ratio:auto;background:none}
.page-galerie .serie .tirage-photo img{height:auto;object-fit:contain;filter:none}
.planche>figure:focus-visible{outline:3px solid var(--jaune);outline-offset:3px}
.fin-galerie{display:flex!important;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin:clamp(48px,8vh,96px) calc(-1 * var(--marge)) -72px!important;padding:clamp(40px,8vh,96px) var(--marge) 40px;background:var(--rose);color:var(--noir);--encre:var(--noir)}
.fin-galerie a{color:var(--noir)}
.fin-galerie .suivant a{display:inline-flex;align-items:flex-end;gap:16px;font-size:clamp(28px,3.4vw,48px);border:0;padding:0}
.fin-galerie .suivant a::before{content:"";width:56px;height:calc(var(--n,20) / 49 * 160px);min-height:8px;background:var(--noir);transform-origin:50% 100%;transition:transform .25s}
.fin-galerie .suivant a:hover::before{background:linear-gradient(to top,var(--noir) 0 70%,var(--jaune) 70%)}
.jauge-9{--n:9}.jauge-13{--n:13}.jauge-18{--n:18}.jauge-19{--n:19}.jauge-22{--n:22}.jauge-28{--n:28}.jauge-37{--n:37}.jauge-46{--n:46}.jauge-49{--n:49}
.fin-galerie>*{margin:0!important}
/* Visionneuse maison (la visionneuse de WordPress couperait la musique : elle force un chargement complet) */
.visionneuse{position:fixed;inset:0;z-index:75;background:rgba(0,0,0,.94);display:grid;grid-template-rows:auto 1fr auto;padding:14px var(--marge) 24px;color:var(--blanc)}
.visionneuse[hidden]{display:none}
.visionneuse .haut{display:flex;justify-content:flex-end;gap:8px}
.visionneuse button{min-height:44px;min-width:44px;padding:8px 16px;font-family:var(--affiche);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:18px;border:2px solid var(--blanc);background:none;color:var(--blanc);cursor:pointer}
.visionneuse button:hover{background:var(--jaune);color:var(--noir);border-color:var(--jaune)}
.visionneuse figure{margin:0;display:grid;place-items:center;min-height:0}
/* Tour 2 : photos d'origine, affichées dans leur format, aussi grandes que la fenêtre le permet */
.visionneuse img{max-width:100%;max-height:calc(100svh - 150px);width:auto;height:auto;object-fit:contain}
.visionneuse p{margin:12px 0 0;font-style:italic;text-align:center}

/* Musique : chaque album est un spectre (barres posées par le script ; sans lui, une liste lisible) */
.rubrique-musique .rubrique-scene{margin-bottom:116px!important}
/* Courbes en fond (canvas posé par le script) : sous le contenu, au-dessus de l'aplat */
.rubrique-musique{isolation:isolate}
.rubrique-musique>.courbes{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.album{display:flex!important;flex-direction:column;justify-content:flex-end;align-self:stretch}
.album-nom{margin:0 0 12px!important;font-family:var(--affiche);font-weight:800;text-transform:uppercase;font-size:32px;line-height:1;max-width:230px}
.album-nom strong{font-weight:800}
.album-nom em{font-family:var(--texte);font-weight:400;text-transform:none;font-size:18px;display:block;margin-top:6px}
.spectre{margin:0;padding:0 0 0 1.2em;font-size:18px}
.spectre li em{font-variant-numeric:tabular-nums}
.spectre.pret{list-style:none;padding:0;display:flex;align-items:flex-end;gap:10px;height:calc(var(--scene) - 60px);margin-bottom:0}
.spectre.pret li{position:relative;height:100%;display:flex;align-items:flex-end;margin:0}
.spectre.pret li.vide{width:22px}
.piste{display:block;height:100%;width:76px;position:relative;text-align:left;background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer}
.piste .barre{position:absolute;left:0;right:0;bottom:0;height:calc(var(--d) * (100% - 40px));border:2px solid var(--barre);transform-origin:50% 100%}
.piste .plein{position:absolute;left:0;right:0;bottom:0;height:calc(var(--d) * (100% - 40px));background:var(--barre);transform-origin:50% 100%;transform:scaleY(var(--p,1))}
.piste.joue .plein{background:linear-gradient(to top,var(--barre) 0 calc(100% - 14px),var(--jaune) calc(100% - 14px) calc(100% - 6px),var(--blanc) calc(100% - 6px))}
.piste:hover .plein,.piste:focus-visible .plein{background:linear-gradient(to top,var(--barre) 0 calc(100% - 14px),var(--jaune) calc(100% - 14px))}
.piste .infos{position:absolute;top:calc(100% + 14px);left:0;width:76px;font-size:15px;line-height:1.25}
.piste .infos strong{display:block;font-family:var(--affiche);font-weight:800;font-size:26px;line-height:1}
.piste .infos .titre-piste{display:block}
.piste .infos em{display:block;font-variant-numeric:tabular-nums;font-style:italic}
.spectre .vide span{position:absolute;top:calc(100% + 14px);font-family:var(--affiche);font-weight:300;font-size:26px;line-height:1;opacity:.75}
.photo-carree{margin:0!important}
.rubrique-musique .photo-carree{margin-left:auto!important;align-self:flex-end;width:min(380px,30vw);aspect-ratio:1;flex:none}
.photo-carree img{width:100%;height:100%;object-fit:cover}
.photo-carree.trame{position:relative;background:var(--rose);isolation:isolate}
.photo-carree.trame img{filter:grayscale(1) contrast(1.7) brightness(1.25);mix-blend-mode:multiply}
.photo-carree.trame::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;mix-blend-mode:multiply;opacity:.55;background:radial-gradient(circle,#000 0 28%,transparent 31%) 0 0/5px 5px}
.hors-album{font-size:17px;padding-top:16px;margin:0!important}

/* e-stuffs : la pièce dans un carré noir */
.rubrique-estuffs .rubrique-scene{min-height:var(--scene);height:auto;margin-bottom:24px!important}
.piece{position:relative;flex:none;width:min(600px,46vw);aspect-ratio:1;background:var(--noir);color:var(--blanc);overflow:hidden;cursor:crosshair;touch-action:none;--x:50%;--y:50%;padding:0!important}
.piece:focus-visible{outline:3px solid var(--noir);outline-offset:4px}
.piece .torche{position:absolute;inset:0;z-index:2;pointer-events:none}
html.wpsw-anime .piece .torche{background:radial-gradient(circle 190px at var(--x) var(--y),rgba(0,0,0,0) 0 55%,rgba(0,0,0,.5) 100%)}
.piece .petit{position:absolute;left:28px;right:28px;bottom:26px;font-style:italic;font-size:16px;line-height:1.35;color:#bdbdbd;margin:0!important}
.piece .mots{position:absolute;inset:28px 28px 90px 28px;margin:0!important;display:flex;flex-wrap:wrap;align-content:center;gap:0 .18em;font-family:var(--affiche);font-weight:800;text-transform:uppercase;font-size:clamp(44px,5.6vw,84px);line-height:.95;color:var(--jaune)}
.piece .mots .mot-fuyant{display:inline-block;will-change:transform}
.piece .mots .blanc,.piece .mots .blanc .mot-fuyant{color:var(--blanc)}
.piece .mots .blanc{display:contents}
.tampon{position:absolute;z-index:3;padding:6px 12px;border:4px solid var(--rose);color:var(--rose);font-family:var(--affiche);font-weight:900;font-size:30px;line-height:1;text-transform:uppercase;letter-spacing:.06em;pointer-events:none;transform:translate(-50%,-50%) rotate(var(--r,-8deg))}
.fiche{display:flex!important;flex-direction:column;gap:18px;align-self:flex-end;max-width:440px}
.fiche>*{margin:0!important}
.fiche .photo-carree{width:min(220px,18vw);aspect-ratio:1}
.fiche h3{font-size:44px;font-weight:800;line-height:1}
.fiche .meta{font-size:16px}
.fiche .vers a{border-bottom-color:currentColor}
.disques{margin-top:clamp(56px,9vh,96px)!important;border-top:2px solid var(--encre);padding-top:22px}
.disques>*{margin:0 0 10px!important}
.disques h3{font-size:44px;font-weight:800;line-height:1}
.disques .note{font-style:italic;font-size:16px;max-width:70ch}
/* Passages entre rubriques (voiles posés par le script) */
.voile{position:absolute;left:0;right:0;top:0;z-index:20;pointer-events:none;overflow:hidden}
.voile .volet{position:absolute;inset:0;will-change:transform}
.voile .bord,.voile .fond{position:absolute;inset:0}
.voile .bord{background:var(--bord,var(--jaune))}
.voile .fond{background:var(--aplat,var(--noir))}

/* La pièce en plein écran */
.rubrique-piece{min-height:100svh}
.rubrique-piece>*{margin:0 0 18px!important}
.rubrique-piece .titre-piece{font-size:clamp(28px,3vw,44px);font-weight:800}
.rubrique-piece .mode-emploi{font-style:italic;font-size:17px}
.piece.piece-plein{width:100%;aspect-ratio:auto;height:min(78svh,900px)}
.piece-plein .mots{font-size:clamp(56px,9vw,160px)}

/* ---------- Pied noir : le nom au repos, qui change de voix ---------- */
.pied{padding:120px var(--marge) 36px!important;overflow:hidden;margin:0!important}
.pied>*{margin-block-start:0}
.pied .wpsw-marque{display:block!important}
.pied .wp-block-site-logo{display:none}
.pied .wp-block-site-title.voix{margin:0;font-size:20vw;font-weight:100;line-height:.86;text-transform:uppercase}
.pied .wp-block-site-title.voix a{color:inherit;text-decoration:none;display:block}
.pied .voix .mot{justify-content:space-between;cursor:default;align-items:flex-end;height:.86em;contain:layout}
.pied .voix .l{font-weight:100;height:.86em;flex:none}
.pied .voix .l .g{display:block;line-height:.86;height:.86em;white-space:nowrap;transform-origin:50% 100%;transform:scale(var(--k,1))}
.pied-bas{border-top:2px solid var(--blanc);padding-top:18px;margin-top:6px!important;font-size:16px;gap:16px 24px}
.pied-bas>*{margin:0!important}
.pied-bas .wp-block-site-tagline{font-style:italic;font-size:18px}
.pied .wp-block-navigation{font-size:16px;gap:24px}
.pied .wp-block-navigation a{text-decoration:underline;text-underline-offset:4px}
.pied .wpsw-mention{margin-top:28px!important;font-size:14px;opacity:.9}
.pied .wpsw-mention a{color:inherit}

/* ---------- Lecteur persistant : carré en bas à droite (posé par le script au premier lancement) ---------- */
.lecteur{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:45;width:300px;background:var(--noir);color:var(--blanc);border:2px solid var(--blanc);display:grid;grid-template-columns:14px 1fr;transition:transform .35s;font-family:var(--texte)}
.lecteur[hidden]{display:none}
.lecteur .niveau{position:relative;background:#333}
.lecteur .niveau span{position:absolute;left:0;right:0;bottom:0;height:100%;transform-origin:50% 100%;transform:scaleY(var(--p,0));background:var(--diode)}
.lecteur .corps{padding:14px 14px 12px}
.lecteur .titre{font-family:var(--affiche);font-weight:800;text-transform:uppercase;font-size:26px;line-height:1.05;margin:0}
.lecteur .album-t{font-style:italic;font-size:15px;margin:2px 0 8px}
.lecteur .temps{font-variant-numeric:tabular-nums;font-size:15px}
.lecteur .cmd{display:flex;gap:6px;margin-top:8px}
.lecteur button{width:44px;height:44px;display:grid;place-items:center;border:2px solid var(--blanc);background:none;color:var(--blanc);cursor:pointer;padding:0}
.lecteur .cmd button:hover{background:var(--jaune);color:var(--noir);border-color:var(--jaune)}
.lecteur svg{width:16px;height:16px;fill:currentColor}
.lecteur .cmd .fermer{margin-left:auto}
.lecteur .avenir{font-style:italic;font-size:14px;line-height:1.3;color:var(--jaune);margin:10px 0 0}
.lecteur .bascule{display:none}
.lecteur.range{transform:translateX(calc(100% - 22px))}

/* ---------- Fenêtre « Écrire » : aplat jaune plein écran (ouverte par l'en-tête ; sans script, par l'ancre) ---------- */
.modale{display:none!important;position:fixed!important;inset:0;z-index:70;overflow:auto;margin:0!important;padding:0!important;max-width:none!important}
.modale:target,.modale.ouverte{display:block!important}
.modale-int{max-width:1200px;margin:0 auto!important;padding:24px var(--marge) 48px!important;display:grid!important;grid-template-columns:1fr 1.2fr;gap:24px 64px;align-items:end;min-height:100%}
.modale-int>*{margin:0!important}
.modale-tete{display:flex!important;flex-direction:column;gap:18px}
.modale-tete>*{margin:0!important}
.fermer-modale{align-self:flex-end;position:fixed;top:14px;right:var(--marge);z-index:2}
.fermer-modale a,.modale .bouton-fermer{display:inline-block;min-height:44px;min-width:44px;padding:8px 16px;font-family:var(--affiche);font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:19px;border:2px solid var(--noir);color:var(--noir);text-decoration:none;background:var(--jaune);cursor:pointer}
.modale .titre-vivant{font-size:clamp(110px,16vw,240px);font-weight:800;line-height:.86;margin:0}
.modale .titre-vivant .l{font-weight:800}
.modale :focus-visible{outline-color:var(--cobalt)}
.modale .wpcf7 form{display:grid;gap:20px}
.modale .wpcf7 form>p{margin:0}
.modale .champ{display:grid;grid-template-columns:12px 1fr;gap:0 14px;align-items:stretch}
.modale .champ .jauge{background:rgba(0,0,0,.15);position:relative}
.modale .champ .jauge span{position:absolute;left:0;right:0;bottom:0;height:100%;background:var(--noir);transform-origin:50% 100%;transform:scaleY(var(--j,0));transition:transform .15s}
.modale .wpcf7 label{display:block;font-family:var(--affiche);font-weight:800;text-transform:uppercase;font-size:22px;letter-spacing:.04em;line-height:1.2;color:var(--noir)}
.modale .wpcf7 input:not([type=submit]):not([type=hidden]),.modale .wpcf7 textarea{display:block;font-family:var(--texte);text-transform:none;letter-spacing:0;font-weight:400;font-size:20px;color:var(--noir);background:transparent;border:0;border-bottom:2px solid var(--noir);padding:8px 0;border-radius:0;width:100%;margin-top:4px}
.modale .wpcf7 textarea{min-height:120px;height:160px;resize:vertical}
.modale .wpcf7 input:focus,.modale .wpcf7 textarea:focus{outline:none;border-bottom-width:4px}
.modale .wpcf7-submit{font-family:var(--affiche);font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:24px;padding:12px 28px;background:var(--noir)!important;color:var(--jaune)!important;min-height:52px;border:0;border-radius:0;cursor:pointer}
.modale .wpcf7-submit:hover{background:var(--cobalt)!important;color:var(--blanc)!important}
.modale .wpcf7-response-output{border-color:var(--noir)!important;font-style:italic;margin:0!important}
.modale .wpcf7-not-valid-tip{color:#000;font-style:italic;font-size:16px}
html.modale-ouverte,html.modale-ouverte body{overflow:hidden}

/* ---------- Transition entre les pages : l'aplat suivant monte en barres ---------- */
.transition-barres{position:fixed;inset:0;z-index:80;display:flex;pointer-events:none}
.transition-barres span{flex:1;background:var(--t,var(--rose));transform:scaleY(0);transform-origin:50% 100%}

/* ---------- Fil d'Ariane (bloc ersatz/fil-ariane, posé par les modèles de page) : étiquette noire sous l'en-tête ---------- */
.fil-ariane{position:absolute;top:72px;left:var(--marge);z-index:5;margin:0!important;max-width:calc(100% - 2 * var(--marge))}
.admin-bar .fil-ariane{top:calc(72px + var(--wp-admin--admin-bar--height,32px))}
.fil-ariane ol{display:flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0 12px;background:var(--noir);color:var(--blanc);font-family:var(--affiche);font-weight:700;font-size:15px;line-height:1.2;letter-spacing:.06em;text-transform:uppercase}
.fil-ariane li{display:flex;align-items:center;margin:0}
.fil-ariane li+li::before{content:"/";margin:0 .6em;color:var(--rose)}
.fil-ariane a{color:inherit;text-decoration:none;display:inline-block;padding:7px 0}
.fil-ariane a:hover,.fil-ariane a:focus-visible{color:var(--jaune);text-decoration:underline;text-underline-offset:3px}
.fil-ariane a:focus-visible{outline:2px solid var(--jaune);outline-offset:2px}
.fil-ariane [aria-current]{padding:7px 0;color:var(--wp--preset--color--muted)}
main:has(>.fil-ariane) .wp-block-post-content>.rubrique:first-child{padding-top:clamp(128px,15vh,170px)!important}
.fil-ariane+.wp-block-post-title{margin-top:92px!important}

/* ---------- Discothèque (extension discogs-me, partagée avec expli.site) ----------
   Une seule linéale pour tout le module (comme sur expli.site), pas les titres condensés ni le romain du site ;
   texte foncé sur ses panneaux blancs (barre de filtres, fiche d'un disque), qui héritaient du blanc du site. */
.discogs-me-wrap,.dm-modal{font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.discogs-me-wrap :is(h1,h2,h3,h4,h5,h6,button,input,select,textarea),.dm-modal :is(h1,h2,h3,h4,h5,h6,button,a){font-family:inherit;letter-spacing:normal;text-transform:none}
.discogs-toolbar,.dm-modal__panel{color:#1c1a17}

/* ---------- Galeries en calque : la page quittée, figée, floutée et presque éteinte ; la galerie par-dessus ---------- */
.fond-calque{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:var(--noir);transition:filter .7s cubic-bezier(.2,.7,.2,1)}
.fond-calque.devant{z-index:35}
.fond-calque>.copie{position:absolute;left:0;right:0;margin:0!important}
.wp-site-blocks>footer,.wp-site-blocks main{transition:filter .7s cubic-bezier(.2,.7,.2,1)}
html.flou-calque .fond-calque,html.flou-calque .wp-site-blocks>header,html.flou-calque .wp-site-blocks>footer,html.flou-retour .wp-site-blocks main{filter:blur(30px) brightness(.14) saturate(1.3)}
html.sans-transition .wp-site-blocks>*,html.sans-transition .wp-site-blocks main{transition:none!important}
html.calque .wp-site-blocks>header{pointer-events:none}
html.calque .wp-site-blocks>footer{display:none}
html.calque .wp-site-blocks main{position:relative;z-index:1}
html.calque .wp-site-blocks main .has-base-background-color{background-color:transparent!important}
.fermer-calque{display:none;position:fixed;top:12px;right:var(--marge);z-index:50;align-items:center;gap:10px;min-height:44px;padding:0 14px;border:0;background:var(--jaune);color:var(--noir);font-family:var(--affiche);font-weight:800;font-size:17px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.fermer-calque svg{width:18px;height:18px;fill:currentColor}
.fermer-calque:hover{background:var(--blanc)}
.fermer-calque:focus-visible{outline:3px solid var(--blanc);outline-offset:3px}
html.calque .fermer-calque{display:flex}

/* ---------- Pièces e-stuffs en modale : la pièce plein écran par-dessus le site (iframe), bouton « Fermer » jaune ---------- */
.modale-piece{position:fixed;inset:0;z-index:72;margin:0;background:var(--noir)}
.modale-piece[hidden]{display:none}
.modale-piece iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}
.fermer-piece{position:absolute;top:12px;right:var(--marge);z-index:2;display:flex;align-items:center;gap:10px;min-height:44px;padding:0 14px;border:0;background:var(--jaune);color:var(--noir);font-family:var(--affiche);font-weight:800;font-size:17px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.fermer-piece svg{width:18px;height:18px;fill:currentColor}
.fermer-piece:hover{background:var(--blanc)}
.fermer-piece:focus-visible{outline:3px solid var(--blanc);outline-offset:3px}

/* ---------- Pages légales (modèle « page ») ---------- */
body:not(.home) main>.wp-block-post-title:first-child{margin-top:clamp(110px,14vh,150px)!important;font-size:clamp(56px,9vw,140px);font-weight:200}
main .wp-block-post-content h2{font-size:clamp(32px,3vw,48px);font-weight:800}

/* ---------- Mobile ---------- */
@media (max-width:760px){
  .phrase{font-size:18px}
  .entete .wp-block-site-title{font-size:24px}
  .btn-ecrire .wp-block-button__link{font-size:16px;padding:8px 12px;letter-spacing:.12em}
  .heros{min-height:100svh;padding-bottom:28px!important}
  .heros .nom-equaliseur{position:relative;left:auto;right:auto;bottom:auto;padding:100px var(--marge) 0;font-size:34vw}
  .heros .nom-btn .mot{flex-wrap:wrap;font-size:38vw;line-height:.84;justify-content:flex-start}
  .heros .nom-btn .mot .saut{display:block;flex-basis:100%;height:0}
  .heros-photos{left:auto;right:var(--marge);bottom:auto;top:calc(100px + 33vw);transform:none;width:54vw}
  .heros::before,.heros .ligne-base{bottom:auto;top:calc(100px + 33vw + 54vw)}
  .pause-photos{top:calc(100px + 33vw + 10px);right:calc(var(--marge) + 10px);background:var(--cobalt)}
  .sous-base{position:relative!important;left:auto;right:auto;top:auto;margin-top:calc(54vw - 26vw + 20px)!important;padding:0 var(--marge)}
  .sous-base .phrase{display:none}
  .ouverture .logo-ersatz{width:84vw}
  .lancer strong{font-size:26px}
  .heros .rubriques,html.avec-lecteur .heros .rubriques{position:relative;left:auto;right:auto;bottom:auto;margin:28px var(--marge) 0 var(--marge)!important;padding-right:84px;gap:10px}
  .lancer em{background:var(--cobalt);box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:0 4px;margin-left:-4px;display:inline-block}
  .lancer strong{background:var(--cobalt);display:inline-block}
  .heros .rubriques li{flex:1}
  .heros .rubriques a{min-width:0}
  .heros .rubriques a::before{width:100%;height:calc(var(--v) * 84px)}
  .heros .rubriques strong{font-size:20px}
  .heros .rubriques em{font-size:14px}
  :root{--scene:auto}
  .tete .titre-vivant{font-size:21vw}
  .tete{display:block!important}
  .tete .phrase,.tete .vers,.tete .meta{margin-top:16px!important}
  .rubrique-scene{height:auto;flex-direction:column;align-items:stretch;border-bottom:0;border-left:2px solid var(--encre);gap:28px;padding:8px 0}
  .rubrique-musique .rubrique-scene{margin-bottom:24px!important}
  .album{align-self:auto}
  .album-nom{padding-left:14px}
  .spectre.pret{flex-direction:column;align-items:stretch;height:auto;gap:6px}
  .spectre.pret li{height:auto}
  .spectre.pret li.vide{width:auto;height:14px}
  .spectre .vide span{position:static;font-size:15px;padding-left:14px;opacity:.75}
  .piste{width:100%;height:auto;min-height:48px;display:grid;grid-template-columns:1fr;padding:0}
  .piste .barre,.piste .plein{top:4px;bottom:auto;height:20px;width:calc(var(--d) * 100%);right:auto;transform-origin:0 50%}
  .piste .plein{transform:scaleX(var(--p,1))}
  .piste .infos{position:static;width:auto;padding:28px 0 0 14px;display:flex;gap:10px;align-items:baseline}
  .piste .infos strong{font-size:20px}
  .piste .infos .titre-piste,.piste .infos em{display:inline}
  .rubrique-musique .photo-carree{width:62vw;margin:0 0 0 auto!important}
  .posees{aspect-ratio:auto;display:grid!important;grid-template-columns:1fr 1fr;gap:36px 22px;align-items:start}
  .tirage{position:relative!important;left:auto;top:auto;width:auto;rotate:calc(var(--r,0deg) * .6)}
  .tirage:is(:nth-child(3),:nth-child(4),:nth-child(6),:nth-child(10),:nth-child(11),:nth-child(13)){width:78%;justify-self:center}
  .tirage:is(:nth-child(2),:nth-child(5),:nth-child(7),:nth-child(12)){width:90%;justify-self:end}
  .tirage-infos strong{font-size:20px}
  .tirage-infos .nb{font-size:18px}
  .series-liste{grid-template-columns:1fr 1fr}
  .planche{columns:2}
  .piece{width:100%}
  .piece .mots{font-size:13vw}
  .fiche .photo-carree{width:46vw}
  .fiche,.disques{padding-left:14px}
  .lecteur{width:64px;height:64px;grid-template-columns:1fr;right:12px}
  .lecteur .niveau{position:absolute;left:0;top:0;bottom:0;width:8px}
  .lecteur .corps{display:none}
  .lecteur .bascule{display:grid;place-items:center;width:100%;height:100%;padding-left:8px;border:0}
  .lecteur .bascule svg{width:22px;height:22px}
  .lecteur.ouvert{width:calc(100vw - 24px);height:auto;grid-template-columns:10px 1fr}
  .lecteur.ouvert .niveau{position:relative;width:auto}
  .lecteur.ouvert .corps{display:block}
  .lecteur.ouvert .bascule{position:absolute;right:6px;top:6px;width:44px;height:44px;padding:0;border:2px solid var(--blanc)}
  .menu-barres .is-menu-open .wp-block-navigation__container{grid-template-columns:1fr;grid-template-rows:repeat(3,1fr)}
  .menu-barres .is-menu-open .wp-block-navigation-item{border-left:0;border-top:1px solid #333}
  .menu-barres .is-menu-open .wp-block-navigation-item__content::before{left:var(--marge);right:auto;bottom:auto;top:20%;height:44px;width:var(--h)}
  .menu-barres .is-menu-open .wp-block-navigation-item__content:focus-visible::before{width:80%;height:44px}
  .menu-barres .is-menu-open .wp-block-navigation-item__label{left:var(--marge);top:auto;bottom:16px;font-size:48px}
  .menu-barres .wp-block-navigation__responsive-container.is-menu-open::after{display:none}
  .modale-int{grid-template-columns:1fr;align-items:start;padding-top:80px!important}
  .modale .titre-vivant{font-size:30vw}
}

/* ---------- Mode sombre : la couleur quitte les surfaces pour les signes ---------- */
/* Mode sombre : les aplats rose (Musique) et jaune (e-stuffs) restent en couleur (avis de l'utilisateur, 25/10/2026) */
@media (prefers-color-scheme:dark){
  .pied.has-surface-background-color{background-color:var(--noir)!important;border-top:2px solid var(--blanc)}
}

/* ---------- Mouvement réduit : graisse 700 fixe, aucune animation ---------- */
@media (prefers-reduced-motion:reduce){
  .l{transform:none!important;--sat:0!important;--cut:0%!important}
  .heros .l,.entete .l{font-weight:700!important}
  .lam{display:none}
  .lecteur,.menu-barres .wp-block-navigation-item__content::before,.modale .champ .jauge span,.wp-site-blocks>header,.tirage-photo img{transition:none}
  .ouverture::after{animation:none;background:rgba(255,255,255,.6)}
}
