*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:#111;font:12px/1.55 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif}
a{color:inherit;text-decoration:none;border-bottom:1px solid #ccc}
a:hover{border-bottom-color:#111}
a:has(img){border:0}
header{position:sticky;top:0;z-index:5;background:#fff;padding:16px;display:flex;flex-wrap:wrap;gap:4px 14px}
header .ancres{width:100%;margin-top:2px;color:#555}
header .corpus-titre{width:100%;margin:10px 0 0;font-size:inherit;font-weight:700}
header .corpus-titre a{border:0}
header .corpus-titre a:hover{text-decoration:underline;text-underline-offset:3px}
header .corpus-titre span{font-weight:700;color:#555}
header .ancres a{text-decoration:none}
#textes,#photos{scroll-margin-top:130px}
header a{border:0}
header a:hover,header a[aria-current]{text-decoration:underline;text-underline-offset:3px}
header .nom{width:100%;font-weight:600}
header .nom .devise{display:block;font-weight:400;font-size:10px;color:#aaa;margin-top:1px;letter-spacing:.01em}
main{padding:24px 16px 64px;max-width:640px}
main.large{max-width:none}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:600;margin:1.8em 0 .4em}
main>h1:first-child{margin-top:0}
p{margin:0 0 .6em;overflow-wrap:anywhere;text-align:justify;hyphens:auto}
ul{margin:0 0 1em;padding:0;list-style:none}
li{margin:0 0 .2em}
img,video{display:block;max-width:100%;height:auto;margin:0 0 .6em}
audio{display:block;width:100%;margin:0 0 .6em}
.video{position:relative;aspect-ratio:16/9;margin:0 0 .6em;background:#f5f5f5}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:0 0 1em}
.grille img{margin:0;width:100%}
.liste a{border:0}
.grille-oeuvres{list-style:none;margin:0 auto;padding:0;max-width:900px;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.grille-oeuvres a{position:relative;display:block;border:0;transition:box-shadow .2s ease}
.grille-oeuvres a:hover,.grille-oeuvres a:focus-visible{z-index:1;outline:0;box-shadow:0 0 0 16px #111}
.grille-oeuvres li{margin:0;padding:0}
.grille-oeuvres img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;margin:0}
.grille-oeuvres .etiquette{position:absolute;left:0;right:0;bottom:0;padding:22px 12px 9px;color:#fff;font-size:11px;background:linear-gradient(transparent,rgba(0,0,0,.45))}
.grille-oeuvres .etiquette em{font-style:italic;color:#eee}
@media (max-width:600px){.grille-oeuvres{grid-template-columns:1fr}}
header .vues a[aria-current]{color:#111;text-decoration:underline;text-underline-offset:3px}
.liste .ico{display:inline-block;width:12px;height:12px;margin:0 7px 0 0;vertical-align:-1px;fill:currentColor}

.liste .corpus{margin:.6em 0 .2em}
.liste .corpus ul{list-style:none;margin:.15em 0 .6em;padding:0 0 0 19px}
.liste em,.liste-archives em{font-style:italic;color:#9a9a9a}
.liste a:hover{text-decoration:underline;text-underline-offset:3px}
.liste .survol{display:none}
.liste .resume{display:block;margin-top:8px;width:100%;color:#111;text-align:justify;hyphens:auto}
.liste a:hover .survol.serie,.liste a:focus-visible .survol.serie{width:min(76vw,780px)}
.liste .resume.ligne{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}
.liste .theme{display:block;margin-top:8px;width:100%;font-weight:600}
@media (hover:hover){.liste a:hover .survol,.liste a:focus-visible .survol{display:flex;flex-direction:column;align-items:center;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(52vw,640px);background:#fff;pointer-events:none}
.liste .survol img{display:block;margin:0;width:auto;max-width:100%;max-height:calc(100vh - 320px);object-fit:contain}}
.texte{max-width:900px;margin:0 auto}
.page-expos{max-width:900px;margin:0}
.page-expos p,.page-expos li{text-align:justify;hyphens:auto}
.page-expos img,.page-expos video,.page-expos iframe{max-width:100%}
.texte>*{max-width:none}
.planche{margin:0 auto 64px;display:grid;grid-template-columns:1fr;gap:56px;max-width:900px}
.planche figure{margin:0}
.planche .cartes{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 24px}
.planche .cartes figcaption{font-size:11px}
@media (max-width:600px){.planche .cartes{grid-template-columns:repeat(2,1fr)}}
.planche img,.planche video{display:block;width:100%;height:auto;margin:0 0 8px}
.planche .video{width:100%}
.planche figcaption div{margin:0 0 .15em}
.note{color:#666}
.portrait{width:200px;margin:0 0 6px}
.credit{color:#666;margin:0 0 24px;max-width:320px;text-align:left;hyphens:manual}
.cv li,.presse li{display:grid;grid-template-columns:44px 1fr;gap:0 8px;margin:0 0 .35em}
.presse li{grid-template-columns:72px 1fr}
.expos{margin-top:32px}
.logos{display:flex;gap:16px;align-items:center}
.logos a{border:0;display:block;line-height:0}
.logos a:hover{opacity:.55}
.logo-presse img{width:110px;height:auto;margin:0 0 16px}
img.logo,.planche img.logo,.grille img.logo{display:inline-block;width:auto;max-width:120px;max-height:56px;height:auto;margin:0 20px 10px 0;vertical-align:middle}
.logos-partenaires{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin:8px 0 16px}
.logos-partenaires img.logo{margin:0}
.planche figure:has(img.logo) figcaption{display:none}
.corpus-lien{margin:0 0 20px;color:#555}
.declinaisons{margin:16px 0 28px}
.declinaisons ul{margin:.3em 0 0}
.legende{text-align:left;hyphens:manual;margin-bottom:24px}
footer{padding:0 16px 24px;color:#666}
