.eac-cinema {
--cine-nuit:     #16131c; --cine-nuit-2:   #221d2b;
--cine-ecran:    #fdf8ee; --cine-or:       #e9b949; --cine-or-clair: #f7dc8f;
--cine-velours:  var(--site-principal-color); --cine-texte:    #ece6f3;
--cine-doux:     #b9b0c6;
} body.eac-cinema {
background:
repeating-linear-gradient(90deg, #e6dcc6 0 1.6rem, #d9d1c5 1.6rem 3.2rem);
background-attachment: fixed;
} .eac-cinema main {
background: var(--cine-nuit);
color: var(--cine-texte);
border-color: #000;
position: relative;
padding-bottom: var(--spacing-lg);
} .eac-cinema main::before,
.eac-cinema main::after {
content: "";
position: absolute;
left: 0; right: 0;
height: 1.4rem;
background:
radial-gradient(circle at 50% 50%, var(--cine-nuit) 0 .32rem, transparent .34rem) 0 50% / 2.2rem 1.4rem repeat-x,
#000;
opacity: .9;
}
.eac-cinema main::before { top: 0;    border-radius: var(--radius-md) var(--radius-md) 0 0; }
.eac-cinema main::after  { bottom: 0; border-radius: 0 0 var(--radius-md) var(--radius-md); }
.eac-cinema main p { text-indent: 0; }
.eac-cinema main a { color: var(--cine-or-clair); }
.eac-cinema main a:hover { color: #fff; }
.eac-cinema main strong { color: #fff; } .eac-cinema .titre-page {
background: var(--cine-nuit-2);
color: var(--cine-or);
font-weight: 700;
font-style: normal;
text-transform: uppercase;
letter-spacing: .18em;
border: .3rem solid var(--cine-or);
border-radius: .6rem;
text-shadow: 0 0 .6rem rgba(233,185,73,.65), 0 0 1.6rem rgba(233,185,73,.35);
box-shadow: 0 0 0 .5rem var(--cine-nuit-2), 0 0 2.4rem rgba(233,185,73,.25);
margin-top: calc(var(--spacing-lg) + 1rem);
animation: none;
} .eac-cinema .titre-page::after {
height: .8rem;
bottom: .3rem;
background: radial-gradient(circle, var(--cine-or-clair) 0 .18rem, transparent .22rem) 0 50% / 1.6rem .8rem repeat-x;
animation: cineAmpoules 2.4s steps(2) infinite;
}
@keyframes cineAmpoules { 50% { opacity: .45; } } .eac-cinema .menu-pages-soeurs {
background: var(--cine-nuit-2);
border-color: #3a3346;
margin-top: 2.6rem;
}
.eac-cinema .menu-header { border-bottom-color: #3a3346; }
.eac-cinema .parent-link { background: transparent; color: var(--cine-or); }
.eac-cinema .parent-link:hover { background: #2e2839; border-color: #3a3346; }
.eac-cinema .menu-titre,
.eac-cinema .sibling-item a { color: var(--cine-doux); }
.eac-cinema .sibling-item.current-page a { color: var(--cine-or); } .eac-cinema .structure-pages {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(26rem, 1fr));
gap: var(--spacing-md);
margin: var(--spacing-md) 0 var(--spacing-lg);
}
.eac-cinema .structure-pages .page-fille {
position: relative;
background: var(--cine-ecran);
color: #2b2433;
border: none;
border-radius: .8rem;
padding: var(--spacing-md) var(--spacing-md) var(--spacing-md) calc(var(--spacing-md) + 1.6rem);
box-shadow: 0 1rem 2.4rem rgba(0,0,0,.45); -webkit-mask: radial-gradient(circle at 0 50%, transparent 1rem, #000 1.05rem) left / 51% 100% no-repeat,
radial-gradient(circle at 100% 50%, transparent 1rem, #000 1.05rem) right / 51% 100% no-repeat;
mask: radial-gradient(circle at 0 50%, transparent 1rem, #000 1.05rem) left / 51% 100% no-repeat,
radial-gradient(circle at 100% 50%, transparent 1rem, #000 1.05rem) right / 51% 100% no-repeat;
transition: transform var(--transition-normal);
} .eac-cinema .structure-pages .page-fille::before {
content: "";
position: absolute;
top: .8rem; bottom: .8rem; left: 1.4rem;
border-left: 2px dashed rgba(140,1,38,.35);
}
.eac-cinema .structure-pages .page-fille:hover { transform: translateY(-.3rem) rotate(-.4deg); } .eac-cinema .structure-pages .page-fille::after { content: none; }
.eac-cinema .structure-pages .page-fille:first-child::after {
content: "À l’affiche";
position: absolute;
top: 1rem; right: 1.4rem;
left: auto; bottom: auto;
width: auto; height: auto;
transition: none;
z-index: 1;
background: var(--cine-velours);
color: #fff;
font-size: var(--font-size-sm);
font-weight: 600;
padding: .2rem 1rem;
border-radius: var(--radius-xl);
}
.eac-cinema .structure-pages .page-fille h3 {
border: none;
padding: 0;
margin: 0 0 var(--spacing-sm);
font-style: normal;
font-size: var(--font-size-xl);
text-transform: uppercase;
letter-spacing: .06em;
}
.eac-cinema .structure-pages .page-fille h3 a { color: var(--cine-velours); text-decoration: none; }
.eac-cinema .structure-pages .page-fille h3 a:hover { text-decoration: underline; }
.eac-cinema .structure-pages .page-fille p { color: #4a4153; font-size: var(--font-size-sm); }
.eac-cinema .structure-pages .featured-image img { border-radius: .4rem; } .cine-programme { margin-top: var(--spacing-md); }
.cine-parcours {
margin: var(--spacing-lg) 0;
}
.eac-cinema .cine-parcours-titre {
display: flex;
align-items: center;
gap: 1.2rem;
margin: 0 0 var(--spacing-sm);
padding: 0;
border: none;
color: #fff;
font-style: normal;
font-size: var(--font-size-2xl);
letter-spacing: .04em;
} .eac-cinema .cine-parcours-titre::before {
content: "";
flex: 0 0 4.4rem;
height: 2.4rem;
border-radius: .3rem;
background: repeating-linear-gradient(-45deg, #fff 0 .7rem, #111 .7rem 1.4rem);
box-shadow: 0 .3rem 0 var(--cine-or);
}
.cine-theme {
display: flex;
flex-wrap: wrap;
align-items: baseline;
gap: .8rem;
margin: 0 0 var(--spacing-md) !important;
font-size: var(--font-size-xl);
font-style: italic;
color: var(--cine-or-clair);
}
.cine-theme-label {
font-style: normal;
font-size: var(--font-size-sm);
text-transform: uppercase;
letter-spacing: .12em;
color: var(--cine-nuit);
background: var(--cine-or);
padding: .1rem .9rem;
border-radius: var(--radius-sm);
} .cine-films {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(32rem, 1fr));
gap: var(--spacing-md);
}
.cine-film {
display: grid;
grid-template-columns: 11rem 1fr;
gap: var(--spacing-md);
align-items: start;
background: var(--cine-nuit-2);
border: 1px solid #332c3f;
border-radius: var(--radius-lg);
padding: var(--spacing-md);
box-shadow: inset 0 .3rem 0 var(--cine-velours);
transition: border-color var(--transition-normal), transform var(--transition-normal);
}
.cine-film:hover { border-color: var(--cine-or); transform: translateY(-.2rem); }
.cine-affiche { margin: 0; }
.cine-affiche-img {
display: block;
width: 100%;
height: auto;
aspect-ratio: 3 / 4;
object-fit: cover;
border-radius: .4rem;
box-shadow: 0 .8rem 1.6rem rgba(0,0,0,.6);
float: none !important;
margin: 0 !important;
}
.cine-affiche--vide {
display: grid;
place-items: center;
aspect-ratio: 3 / 4;
font-size: 3.6rem;
border-radius: .4rem;
background: repeating-linear-gradient(0deg, #2c2637 0 .6rem, #262030 .6rem 1.2rem);
}
.eac-cinema .cine-film-titre {
margin: 0 0 .6rem;
color: #fff;
font-size: var(--font-size-lg);
line-height: 1.25;
}
.cine-credits {
color: var(--cine-doux);
font-size: var(--font-size-sm);
margin: 0 0 .6rem !important;
}
.cine-infos > p:not([class]) { font-size: var(--font-size-sm); }
.cine-ressources {
display: flex;
flex-wrap: wrap;
gap: .6rem;
margin-top: var(--spacing-sm);
}
.eac-cinema .cine-bouton {
display: inline-flex;
align-items: center;
gap: .4rem;
padding: .4rem 1rem;
border-radius: var(--radius-xl);
font-size: var(--font-size-sm);
font-weight: 600;
text-decoration: none;
color: var(--cine-nuit);
background: var(--cine-or);
transition: background var(--transition-fast), transform var(--transition-fast);
}
.eac-cinema .cine-bouton:hover { background: #fff; color: var(--cine-nuit); transform: translateY(-1px); }
.eac-cinema .cine-bouton--video,
.eac-cinema .cine-bouton--support  { background: transparent; color: var(--cine-or-clair); box-shadow: inset 0 0 0 1px var(--cine-or); }
.eac-cinema .cine-bouton--genially { background: transparent; color: #d7c6ff; box-shadow: inset 0 0 0 1px #8f7cc9; }
.eac-cinema .cine-bouton--video:hover,
.eac-cinema .cine-bouton--support:hover,
.eac-cinema .cine-bouton--genially:hover { background: #fff; color: var(--cine-nuit); }
.cine-a-venir {
display: inline-block;
margin: 0 !important;
padding: .3rem 1rem;
border-radius: var(--radius-xl);
font-size: var(--font-size-sm);
font-style: italic;
color: var(--cine-doux);
border: 1px dashed #5a506a;
}
.cine-video {
width: 100% !important;
margin-top: var(--spacing-sm);
border-radius: .4rem;
overflow: hidden;
background: #000;
}
.cine-video .mejs-container,
.cine-video video {
width: 100% !important;
height: auto !important;
aspect-ratio: 16 / 9;
max-height: 22rem;
} @media (max-width: 640px) {
.cine-films { grid-template-columns: 1fr; }
.cine-film { grid-template-columns: 8.5rem 1fr; gap: var(--spacing-sm); padding: var(--spacing-sm); }
.eac-cinema .titre-page { letter-spacing: .08em; font-size: var(--font-size-2xl); }
.eac-cinema .cine-parcours-titre { font-size: var(--font-size-xl); }
.eac-cinema .structure-pages { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
.eac-cinema .titre-page::after { animation: none; }
.cine-film, .eac-cinema .structure-pages .page-fille { transition: none; }
} .eac-cinema .structure-pages .page-fille:first-child { padding-top: 4.6rem; } .cine-charte {
margin: var(--spacing-lg) 0;
padding: var(--spacing-md);
border-radius: var(--radius-md);
background: var(--cine-nuit-2, #221d2b);
border: 1px solid rgba(233,185,73,.35);
text-align: center;
}
.eac-cinema main p.cine-charte-titre {
margin: 0 0 .4rem;
color: var(--cine-or, #e9b949);
font-size: var(--font-size-xl);
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
text-indent: 0;
text-shadow: 0 0 .8rem rgba(233,185,73,.35);
}
.eac-cinema main p.cine-charte-intro { margin: 0 0 var(--spacing-md); color: var(--cine-doux, #b9b0c6); text-indent: 0; font-style: italic; }
.cine-charte-affiche { margin: 0 auto var(--spacing-md); max-width: 90rem; }
.cine-charte-affiche img {
display: block;
width: 100%;
height: auto;
border-radius: var(--radius-sm);
border: .6rem solid var(--cine-ecran, #fdf8ee);
box-shadow: 0 1.2rem 3rem rgba(0,0,0,.55);
}
.eac-cinema main p.cine-charte-boutons { display: flex; flex-wrap: wrap; justify-content: center; gap: .8rem; margin: 0 0 var(--spacing-sm); text-indent: 0; }
.eac-cinema main a.cine-charte-bouton {
padding: .6rem 1.4rem;
border-radius: var(--radius-sm);
background: var(--cine-or, #e9b949);
color: var(--cine-nuit, #16131c);
font-weight: 700;
text-decoration: none;
}
.eac-cinema main a.cine-charte-bouton--clair { background: transparent; color: var(--cine-or-clair, #f7dc8f); border: 1px solid var(--cine-or, #e9b949); }
.eac-cinema main a.cine-charte-bouton:hover { filter: brightness(1.12); }
.cine-charte-texte { max-width: 90rem; margin: 0 auto; text-align: left; }
.cine-charte-texte summary { cursor: pointer; color: var(--cine-or-clair, #f7dc8f); font-weight: 600; text-align: center; padding: .4rem; }
.cine-charte-etapes { display: grid; grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr)); gap: var(--spacing-sm); margin-top: var(--spacing-sm); }
.cine-charte-etape { padding: var(--spacing-sm) var(--spacing-md); border-radius: var(--radius-sm); background: var(--cine-ecran, #fdf8ee); color: #2b2a33; border-top: .4rem solid; }
.cine-charte-etape--avant   { border-color: #2a9d8f; }
.cine-charte-etape--pendant { border-color: #e76f24; }
.cine-charte-etape--apres   { border-color: #9bb52f; }
.cine-charte-etape strong { display: block; margin-bottom: .4rem; }
.cine-charte-etape ul { margin: 0; padding-left: 1.8rem; font-size: var(--font-size-sm); line-height: 1.55; }
.cine-charte-manque { padding: var(--spacing-sm); border: 1px dashed var(--cine-or, #e9b949); color: var(--cine-or-clair, #f7dc8f); } .eac-cinema .eac-zoom { position: relative; display: block; cursor: zoom-in; }
.eac-cinema .eac-zoom-loupe {
position: absolute; right: 1.4rem; bottom: 1.4rem;
padding: .3rem .9rem; border-radius: var(--radius-sm);
background: rgba(255,255,255,.92); color: var(--site-principal-color);
font-size: var(--font-size-sm); font-weight: 600;
}
.eac-visionneuse { max-width: 96vw; max-height: 96vh; padding: 0; border: none; border-radius: var(--radius-sm); background: #fff; overflow: auto; }
.eac-visionneuse::backdrop { background: rgba(20,20,30,.85); }
.eac-visionneuse img { display: block; max-width: 94vw; max-height: 92vh; width: auto; height: auto; margin: 0 auto; cursor: zoom-out; }
.eac-visionneuse-fermer {
position: sticky; top: .6rem; float: right; margin: .6rem .6rem -3rem 0; z-index: 1;
width: 3.6rem; height: 3.6rem; border: none; border-radius: 50%;
background: var(--site-principal-color); color: #fff; font-size: 1.8rem; cursor: pointer;
}
.eac-cinema main .cine-charte-etape, .eac-cinema main .cine-charte-etape li { color: #2b2a33; }
.eac-cinema main .cine-charte-etape--avant strong   { color: #1f7a6f; }
.eac-cinema main .cine-charte-etape--pendant strong { color: #c45a14; }
.eac-cinema main .cine-charte-etape--apres strong   { color: #6f8520; }
.eac-cinema .cine-charte .eac-zoom-loupe { top: 1.4rem; bottom: auto; } .cine-ref {
display: grid;
grid-template-columns: 17rem 1fr;
gap: var(--spacing-md);
align-items: start;
margin: var(--spacing-lg) 0;
padding: var(--spacing-md);
border-radius: var(--radius-md);
background: var(--cine-ecran, #fdf8ee);
color: #2b2a33;
} .eac-cinema main a.cine-ref-couv {
position: relative;
display: flex; flex-direction: column; justify-content: center;
aspect-ratio: 210 / 297;
padding: 1.2rem 1rem 1.2rem 3.6rem;
background: #231f20;
color: #fff;
text-decoration: none;
box-shadow: 0 .8rem 2rem rgba(0,0,0,.35);
transition: transform var(--transition-fast);
}
.eac-cinema main a.cine-ref-couv:hover { transform: rotate(-1.5deg) scale(1.02); }
.cine-ref-bande {
position: absolute; left: 0; top: 0; bottom: 0; width: 2.6rem;
background: #d12026; color: #fff;
writing-mode: vertical-rl; transform: rotate(180deg);
display: flex; align-items: center; justify-content: center;
font-size: 1.3rem; letter-spacing: .25em; text-transform: uppercase;
}
.cine-ref-titre-couv { font-size: 1.5rem; line-height: 1.2; font-weight: 300; }
.cine-ref-titre-couv em { font-style: normal; font-weight: 600; color: #ff5a5f; text-shadow: 0 0 .5rem rgba(255,60,70,.8); }
.cine-ref-date { position: absolute; right: .8rem; bottom: .6rem; font-size: 1rem; opacity: .85; }
.eac-cinema main .cine-ref p { text-indent: 0; margin: 0; color: #2b2a33; }
.eac-cinema main .cine-ref p.cine-ref-sur { color: #d12026; font-size: 1.2rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.eac-cinema main .cine-ref p.cine-ref-titre { font-size: var(--font-size-xl); font-weight: 700; line-height: 1.3; margin: .2rem 0; }
.eac-cinema main .cine-ref p.cine-ref-source { color: #6b6674; font-size: var(--font-size-sm); margin-bottom: var(--spacing-sm); }
.eac-cinema main .cine-ref p.cine-ref-intro { line-height: 1.6; margin-bottom: var(--spacing-sm); }
.cine-ref-cycles { display: grid; grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr)); gap: var(--spacing-sm); margin-bottom: var(--spacing-sm); }
.eac-cinema main a.cine-ref-cycle {
display: flex; flex-direction: column; gap: .3rem;
padding: .9rem 1.2rem;
border: 1px solid #e6dcc6; border-left: .4rem solid #d12026;
border-radius: var(--radius-sm);
background: #fff;
color: #2b2a33;
text-decoration: none;
transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}
.eac-cinema main a.cine-ref-cycle:hover { border-color: #d12026; box-shadow: var(--shadow-light); }
.cine-ref-cycle strong { color: #d12026; }
.cine-ref-cycle span { font-size: var(--font-size-sm); line-height: 1.5; }
.cine-ref-cycle small { color: #6b6674; font-weight: 600; }
.eac-cinema main p.cine-ref-boutons { margin: 0; }
@media (max-width: 640px) {
.cine-ref { grid-template-columns: 1fr; }
.eac-cinema main a.cine-ref-couv { max-width: 16rem; margin: 0 auto; }
}
.eac-cinema main a.cine-ref-cycle strong { color: #d12026; font-size: var(--font-size-base); }
.eac-cinema main a.cine-ref-cycle span, .eac-cinema main a.cine-ref-cycle small { color: #4a4652; }
.eac-cinema main .cine-ref a.cine-charte-bouton { background: #d12026; color: #fff; } .cine-rappel-charte {
display: grid;
grid-template-columns: 9rem 1fr auto;
align-items: center;
gap: var(--spacing-sm) var(--spacing-md);
margin: var(--spacing-lg) 0 0;
padding: var(--spacing-sm) var(--spacing-md);
border-radius: var(--radius-md);
background: var(--cine-nuit-2, #221d2b);
border: 1px solid rgba(233,185,73,.35);
}
.cine-rappel-charte img { width: 9rem; height: auto; border-radius: .3rem; border: .3rem solid var(--cine-ecran, #fdf8ee); }
.cine-rappel-texte { display: flex; flex-direction: column; gap: .2rem; }
.eac-cinema main .cine-rappel-texte strong { color: var(--cine-or, #e9b949); }
.cine-rappel-texte span { color: var(--cine-doux, #b9b0c6); font-size: var(--font-size-sm); }
.cine-rappel-liens { display: flex; gap: .6rem; flex-wrap: wrap; }
.eac-cinema main .cine-rappel-liens a {
padding: .4rem 1.1rem; border-radius: var(--radius-sm);
border: 1px solid var(--cine-or, #e9b949);
color: var(--cine-or-clair, #f7dc8f); font-weight: 600; font-size: var(--font-size-sm);
text-decoration: none; white-space: nowrap;
}
.eac-cinema main .cine-rappel-liens a:first-child { background: var(--cine-or, #e9b949); color: var(--cine-nuit, #16131c); }
.cine-charte { scroll-margin-top: 2rem; }
@media (max-width: 640px) {
.cine-rappel-charte { grid-template-columns: 7rem 1fr; }
.cine-rappel-charte img { width: 7rem; }
.cine-rappel-liens { grid-column: 1 / -1; }
} .cine-encarts {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(26rem, 1fr));
gap: var(--spacing-sm);
margin: var(--spacing-md) 0 var(--spacing-sm);
}
.cine-encart {
display: flex;
gap: 1.2rem;
align-items: flex-start;
padding: 1rem 1.2rem;
border-radius: var(--radius-sm);
background: var(--cine-nuit-2, #221d2b);
border: 1px solid rgba(233,185,73,.3);
font-size: var(--font-size-sm);
line-height: 1.45;
}
.cine-encart > div { display: flex; flex-direction: column; gap: .35rem; min-width: 0; }
.eac-cinema main .cine-encart strong { color: var(--cine-or, #e9b949); font-size: var(--font-size-base); }
.cine-encart span { color: var(--cine-doux, #b9b0c6); }
.cine-encart--charte img { width: 8rem; flex: 0 0 8rem; border-radius: .3rem; border: .25rem solid var(--cine-ecran, #fdf8ee); }
.eac-cinema main p.cine-encart-liens { display: flex; gap: .5rem; flex-wrap: wrap; margin: .2rem 0 0; text-indent: 0; }
.eac-cinema main .cine-encart-liens a {
padding: .25rem .9rem; border-radius: var(--radius-sm);
border: 1px solid var(--cine-or, #e9b949);
color: var(--cine-or-clair, #f7dc8f); font-weight: 600; text-decoration: none; white-space: nowrap;
}
.eac-cinema main .cine-encart-liens a:first-child { background: var(--cine-or, #e9b949); color: var(--cine-nuit, #16131c); }
.cine-encart-couv {
flex: 0 0 4.2rem; height: 5.8rem;
display: grid; place-items: center;
background: #231f20; border-left: .7rem solid #d12026;
color: #ff5a5f; font-weight: 700; font-size: 2rem;
text-shadow: 0 0 .4rem rgba(255,60,70,.8);
box-shadow: 0 .3rem .8rem rgba(0,0,0,.4);
}
.eac-cinema main a.cine-encart-cycle { color: var(--cine-texte, #ece6f3); text-decoration: none; display: block; padding: .15rem 0; }
.eac-cinema main a.cine-encart-cycle:hover { color: var(--cine-or-clair, #f7dc8f); }
.cine-encart-cycle b { color: #ff8a8e; }
.cine-encart-cycle small { color: var(--cine-or, #e9b949); font-weight: 600; white-space: nowrap; }