/* Moving scenes and the presentation player. */
.reel-motion,.cinema-motion,.demo-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;opacity:0;transition:opacity .5s}
.reel-motion.is-playing,.cinema-motion.is-playing,.demo-video.is-playing{opacity:1}
.cinema-motion{object-position:center 60%;transform:scale(var(--scene-scale,1.04)) translateX(var(--scene-x,0px))}
.cinema-scene:nth-child(2) .cinema-motion{object-position:center 57%}.cinema-scene:nth-child(3) .cinema-motion{object-position:center 45%}
.imagination-aura{position:absolute;inset:0;pointer-events:none;overflow:hidden;opacity:0;transition:opacity .8s;mix-blend-mode:screen}
.is-moving>.imagination-aura{opacity:.65}
.imagination-aura::before{content:'';position:absolute;width:60%;height:60%;left:18%;top:10%;border-radius:50%;background:radial-gradient(ellipse,rgb(255 126 63 / 26%),transparent 68%);animation:orb-breath 7s ease-in-out infinite;animation-play-state:paused}
.imagination-aura::after{content:'';position:absolute;width:3px;height:3px;border-radius:50%;left:35%;top:65%;background:#ffe4ac;box-shadow:72px -90px 0 #ffc79c,-48px -35px 0 #fff,33px 40px 0 #ffe4ac,104px 16px 0 #fff,-90px -116px 0 #fff,135px -171px 0 #ffccaa;animation:imagination-drift 9s ease-in-out infinite;animation-play-state:paused}
.is-moving>.imagination-aura::before,.is-moving>.imagination-aura::after{animation-play-state:running}
@keyframes orb-breath{0%,100%{transform:translateY(4%) scale(.9);opacity:.65}50%{transform:translateY(-4%) scale(1.2);opacity:1}}
@keyframes imagination-drift{0%,100%{transform:translate3d(0,8px,0);opacity:.4}50%{transform:translate3d(10px,-22px,0);opacity:.9}}
.presentation-dialog{width:1000px;padding:28px;overflow:auto}.presentation-heading{display:flex;justify-content:space-between;align-items:start;gap:30px;margin-bottom:20px}.presentation-heading .dialog-close{position:relative;top:0;right:0;flex:none;width:36px;height:36px}
.presentation-heading h2{font-size:31px;letter-spacing:-.04em;margin-top:8px}.presentation-heading .eyebrow{font-size:8px}
#presentation-video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#242524;border-radius:5px}
.presentation-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px;margin:18px 0;font-size:11px}.presentation-actions p{color:var(--muted)}.presentation-actions a{font-size:10px;display:flex;align-items:center;gap:9px}
.presentation-transcript{font-size:12px;line-height:1.8;border-top:1px solid var(--line);padding:14px 0;margin-bottom:18px}.presentation-transcript summary{cursor:pointer;font-size:11px}.presentation-transcript div{max-width:720px}.presentation-transcript p{margin-top:14px;color:var(--muted)}
.presentation-dialog>.button{font-size:11px}.presentation-dialog [role=status]{font-size:12px;margin-top:14px;color:var(--coral-dark)}
.motion-paused .imagination-aura{opacity:0}.motion-paused .cinema-motion{transform:none}
@media(max-width:600px){.footer-top{gap:18px}.presentation-dialog{padding:22px 16px}.presentation-heading{gap:15px;margin-bottom:17px}.presentation-heading h2{font-size:25px}.presentation-heading .eyebrow{font-size:7px}.presentation-heading .dialog-close{width:32px;height:32px}.presentation-actions{font-size:10px;line-height:1.7}.presentation-actions a{font-size:10px}.presentation-dialog>.button{width:100%;font-size:10px;padding:13px}.cinema-motion{object-position:center center!important}.imagination-aura::after{box-shadow:42px -60px 0 #ffc79c,-38px -25px 0 #fff,23px 30px 0 #ffe4ac,64px 16px 0 #fff}}
@media(prefers-reduced-motion:reduce){.imagination-aura{display:none}.cinema-motion{transform:none}}

/* Section « Le film » (2026-10-12) : film de présentation visible dans la page ; une version par format d'écran. */
.film-section{max-width:1240px;margin:auto;padding-left:var(--gutter);padding-right:var(--gutter);text-align:center}
.film-heading{max-width:720px;margin:0 auto 34px}.film-heading h2{margin:14px 0 16px}.film-heading p:last-child{color:var(--muted)}
.film-frame{position:relative;border-radius:14px;overflow:hidden;background:var(--ink);box-shadow:0 30px 70px rgb(39 38 29 / 18%)}
.film-video{display:block;width:100%;background:var(--ink)}.film-paysage{aspect-ratio:16/9}.film-portrait{display:none;aspect-ratio:9/16;max-height:82vh;margin:auto}
@media (max-aspect-ratio:3/4),(max-width:600px){.film-paysage{display:none}.film-portrait{display:block}.film-frame{max-width:440px;margin:auto}}
