/* Hero : une composition unique, sans surface indépendante autour du film. */
.studio-page #accueil.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:center;gap:clamp(24px,2vw,72px);min-height:0;padding:clamp(32px,3vw,100px) var(--gutter) clamp(36px,3.5vw,120px);background:var(--bg,#010101);isolation:isolate;overflow:clip}
.hero-copy{min-width:0;max-width:100%;position:relative;z-index:2;overflow-wrap:break-word}.hero-kicker{font:400 calc(clamp(12.6px,0.585vw,21.6px) * var(--text-scale,1))/1.5 Arial,Helvetica,sans-serif;color:#b9c0ba;margin-bottom:clamp(18px,1.2vw,36px)}
.hero h1{font:400 calc(clamp(37.8px,2.79vw,90px) * var(--text-scale,1))/1.05 Arial,Helvetica,sans-serif;letter-spacing:-.05em;color:#f1f0ec;margin:0 0 clamp(22px,1.4vw,42px)}.hero-description{max-width:34ch;font:400 calc(clamp(16.2px,0.765vw,27.9px) * var(--text-scale,1))/1.7 Arial,Helvetica,sans-serif;color:#b9c0ba}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin-top:clamp(24px,1.8vw,54px)}.studio-page .hero .sf-button{font-size:calc(clamp(14.4px,0.63vw,23.4px) * var(--text-scale,1));padding:17px 24px;gap:22px;min-height:54px}.hero-secondary{display:inline-flex;align-items:center;gap:16px;min-height:48px;padding:10px 0;font-size:calc(clamp(14.4px,0.63vw,23.4px) * var(--text-scale,1));color:#d0d6cf}.hero-secondary:hover{text-decoration:underline;text-underline-offset:6px;text-decoration-color:#c0c9c1}
.hero-media{min-width:0;width:100%;max-width:100%;position:relative;transform:none;align-self:center}.studio-page .hero .cinema{position:relative;display:block;width:100%;max-width:none;margin:0;aspect-ratio:16/9;background:transparent;overflow:hidden;mix-blend-mode:screen;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.hero-poster{position:absolute;inset:0;display:block;opacity:1;transition:opacity 280ms ease}.hero-poster img{display:block;width:100%;height:100%;object-fit:contain}.studio-page .hero .cinema video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;visibility:hidden;transition:opacity 280ms ease}.studio-page .hero .cinema[data-state=playing] video,.studio-page .hero .cinema[data-state=paused] video,.studio-page .hero .cinema[data-state=ended] video{visibility:visible;opacity:1}.hero .cinema[data-state=playing] .hero-poster,.hero .cinema[data-state=paused] .hero-poster,.hero .cinema[data-state=ended] .hero-poster{opacity:0;pointer-events:none}
.hero-video-toolbar{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:8px;margin-top:8px;padding-inline:4%}.hero-video-caption{color:#9ca59e;font-size:calc(clamp(11.7px,0.495vw,18px) * var(--text-scale,1));line-height:1.5}.hero .scene-controls{position:static;display:flex;flex-wrap:wrap;gap:8px;visibility:visible}.studio-page .hero .scene-controls button{min-height:44px;min-width:44px;padding:8px 12px;border:1px solid #ffffff24;background:transparent;backdrop-filter:none;color:#c9d0ca;font:400 calc(clamp(11.7px,0.495vw,18px) * var(--text-scale,1))/1.4 Arial,Helvetica,sans-serif;letter-spacing:0;border-radius:2px;box-shadow:none}.studio-page .hero .scene-controls button:hover{border-color:#ffffff60;color:#fff;box-shadow:none}.hero-video-status{min-height:1.5em;font-size:calc(clamp(11.7px,0.495vw,18px) * var(--text-scale,1));color:#aab5ad;margin:8px 4% 0}.hero-video-status:empty{visibility:hidden}
@media(min-width:2200px){.studio-page #accueil.hero{min-height:0;padding-block:80px 100px}}
@media(max-width:1100px) and (min-width:901px){.studio-page #accueil.hero{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:24px;padding-top:48px}.hero h1{font-size:calc(clamp(37.8px,4.05vw,48.6px) * var(--text-scale,1))}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-media{transform:none}}
@media(max-width:900px){.studio-page #accueil.hero{grid-template-columns:minmax(0,1fr);min-height:0;gap:28px;padding-top:36px;padding-bottom:40px}.hero-copy{max-width:680px}.hero h1{font-size:calc(clamp(37.8px,6.3vw,63px) * var(--text-scale,1));line-height:1.07;margin-bottom:22px}.hero-kicker{margin-bottom:20px}.hero-description{max-width:42ch;font-size:calc(17.1px * var(--text-scale,1))}.hero-media{transform:none;width:100%;max-width:850px;justify-self:center}.hero-actions{margin-top:24px;gap:12px 24px}.hero .hero-video-toolbar{padding-inline:0}.hero-video-status{margin-inline:0}}
@media(max-width:500px){.studio-page #accueil.hero{padding-top:30px;gap:22px}.hero h1{font-size:calc(clamp(36px,9.9vw,48.6px) * var(--text-scale,1))}.hero-kicker{font-size:calc(12.6px * var(--text-scale,1))}.hero-description{font-size:calc(16.2px * var(--text-scale,1))}.hero-actions{align-items:flex-start;flex-direction:column;gap:8px}.studio-page .hero .sf-button{font-size:calc(14.4px * var(--text-scale,1));max-width:100%;padding:15px 18px;gap:16px}.hero-video-toolbar{align-items:flex-start;gap:8px}.hero-video-caption{font-size:calc(11.7px * var(--text-scale,1))}.hero .scene-controls{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.hero-poster,.studio-page .hero .cinema video{transition:none}}

/* Mobile : film bord à bord dans sa propre rangée, après le texte. */
@media(max-width:900px){.studio-page #accueil.hero{row-gap:30px}.hero-media{width:calc(100% + var(--gutter)*2);max-width:none;margin-inline:calc(var(--gutter)*-1);justify-self:stretch}.hero .hero-video-toolbar{padding-inline:var(--gutter)}.hero-video-status{margin-inline:var(--gutter)}.studio-page .hero .cinema{mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent)}}
@media(max-width:500px){.studio-page #accueil.hero{row-gap:24px}.hero h1{font-size:calc(clamp(34.2px,9vw,45px) * var(--text-scale,1))}.hero-actions{margin-top:20px}.hero .scene-controls{margin-left:auto}}

/* Le film rejoint directement le bas du bandeau de navigation. */
.studio-page #accueil.hero{padding-top:0}
.studio-page #accueil.hero .hero-media{align-self:start}
@media(max-width:900px){.studio-page #accueil.hero .hero-media{grid-row:1}.studio-page #accueil.hero .hero-copy{grid-row:2}}

/* Transition plus courte vers le laboratoire. */
.studio-page #accueil.hero{padding-bottom:16px}

/* Attendre la premiere image du film sans montrer son image finale. */
.studio-page .hero .cinema[data-state=poster] .hero-poster,
.studio-page .hero .cinema[data-state=loading] .hero-poster{opacity:0;visibility:hidden;transition:none}
.studio-page .hero .video-loader{z-index:3;pointer-events:none;opacity:0;visibility:hidden;gap:16px}
.studio-page .hero .cinema[data-state=loading] .video-loader{opacity:1;visibility:visible}
.studio-page .hero .loader-track{display:block;width:124px;height:1px;background:color-mix(in srgb,currentColor 20%,transparent);overflow:hidden}
.studio-page .hero .loader-track>span{background:currentColor}
.studio-page .hero .loader-track.is-indeterminate>span{width:35%;animation:hero-download 1.2s ease-in-out infinite}
@keyframes hero-download{from{transform:translateX(-110%)}to{transform:translateX(390%)}}
@media(prefers-reduced-motion:reduce){.studio-page .hero .loader-track.is-indeterminate>span{animation:none;width:100%;opacity:.4}}