/* Couche propre à la copie statique : remplace ce que faisait le JavaScript de Squarespace. */
@font-face{font-family:aktiv-grotesk;src:url(/assets/fonts/inter-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:aktiv-grotesk;src:url(/assets/fonts/inter-latin-ext-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+1E00-1E9F,U+20A0-20C0}
@font-face{font-family:aktiv-grotesk;src:url(/assets/fonts/inter-latin-wght-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
.preFade,.preSlide,.preScale,.preClip,.preFlex,[data-animation-role]{opacity:1!important;transform:none!important;clip-path:none!important}

/* Bandeau d'images : positions calculées en JS remplacées par un défilement natif. */
.gallery-reel-list{display:flex!important;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;height:auto!important;scrollbar-width:none}
.gallery-reel-list::-webkit-scrollbar{display:none}
.gallery-reel-wrapper,.gallery-reel{height:auto!important;min-height:0!important}
.gallery-reel-item{position:relative!important;transform:none!important;flex:0 0 auto;max-width:88vw;height:auto!important;aspect-ratio:3/2;scroll-snap-align:center}

/* Visionneuse */
.copie-visionneuse{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center}
.copie-visionneuse img{max-width:92vw;max-height:92vh;object-fit:contain}
.copie-visionneuse button{position:absolute;background:none;border:0;color:#fff;font-size:44px;line-height:1;padding:16px;cursor:pointer}
.copie-visionneuse [data-a="-1"]{left:8px;top:50%;transform:translateY(-50%)}
.copie-visionneuse [data-a="1"]{right:8px;top:50%;transform:translateY(-50%)}
.copie-visionneuse [data-a="0"]{right:8px;top:8px}

@media (max-width:767px){
  .gallery-grid-wrapper{grid-template-columns:var(--colonnes-mobile,repeat(2,1fr))!important}
  .gallery-strips-wrapper,.gallery-strips{height:auto!important}
  .gallery-strips-item{position:static!important;width:100%!important;height:auto!important;transform:none!important;margin:0 0 12px!important}
  .gallery-strips-item-wrapper{height:auto!important}
  .gallery-strips-item-wrapper img{position:static!important;width:100%!important;height:auto!important}
}

/* Mobile : blocs de texte qui se chevauchaient déjà sur Squarespace (trouvés par scripts/chevauchements.mjs). */
@media (max-width:767px){
  .fe-block-ffe25ffc246003e6b213{grid-row:8/11!important}
  .fe-block-a91a5ba7b301498b336a{grid-row:5/7!important}
  .fe-block-yui_3_17_2_1_1702564498282_17205{grid-row:7/9!important}
  .fe-block-yui_3_17_2_1_1702564498282_28314{grid-row:11/14!important}
}

/* Surlignage de texte (« marqueur ») : Squarespace le dessinait en JS ; couleur du thème = noir. */
.sqsrte-text-highlight{background-color:#000;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .08em}

/* Images : hauteur de conteneur écrite en pixels par le JS à la largeur de capture. */
.fluid-image-component-root{--image-component-container-height:100%!important}

/* Lecteur vidéo : même cadre 16:9 que l'original, l'image n'est jamais recadrée. */
.sqs-native-video video{aspect-ratio:16/9!important;height:auto!important;object-fit:contain!important}
@media (max-width:767px){.gallery-slideshow{height:auto!important}.gallery-slideshow .gallery-slideshow-wrapper{height:auto!important;aspect-ratio:1!important}}

/* Vidéos et intégrations : largeur écrite en pixels au moment de la capture. */
.sqs-block-video iframe,.sqs-block-embed iframe,.embed-block-wrapper iframe,.sqs-video-wrapper iframe{max-width:100%}
html,body{overflow-x:clip}

/* Sélecteur de langue FR / EN */
/* Police, taille et couleur d'en-tête viennent des règles Squarespace de .language-picker (mêmes que la nav). */
.langue{display:flex;align-items:center;white-space:nowrap;color:var(--navigationLinkColor)}
.langue .langue-lien{display:inline-flex;align-items:center;color:inherit;text-decoration:none;padding:.2em 0}
.langue .langue-sep{padding:0 .35em}
/* Langue courante : même trait que l'onglet actif de la nav (LAB, ACCUEIL…). */
.langue .langue-lien[aria-current="true"],.langue .langue-lien:hover{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-size:100% 1px;background-position:0 calc(100% - .3em)}
.langue .langue-lien[aria-current="true"]{cursor:default}
.langue .langue-lien:focus-visible{outline:1px solid currentColor;outline-offset:3px}
.header-menu .langue{color:var(--menuOverlayNavigationLinkColor)}
/* Menu mobile : une ligne à part au-dessus des icônes, cible tactile de 44 px. */
.header-menu-actions:has(.header-menu-actions-action--langue){flex-wrap:wrap}
.header-menu-actions-action--langue{flex-basis:100%;display:flex;justify-content:center;margin:0}
.header-menu .langue{font-size:20px}
.header-menu .langue .langue-lien{min-width:44px;min-height:44px;justify-content:center;padding:0;background:none}
.header-menu .langue .langue-lien[aria-current="true"],.header-menu .langue .langue-lien:hover{text-decoration:underline 1px;text-underline-offset:.25em}
.header-menu .langue .langue-sep{padding:0;margin:0 -2px;pointer-events:none}
@media (forced-colors:active){.langue .langue-lien[aria-current="true"]{text-decoration:underline}}

/* Lecteur audio : le temps écrit déborde du bloc étroit, la barre de progression suffit. */
.sqs-audio-embed .secondary-controls .time { display: none !important; }
