/* Section « Vidéo de présentation » (accueil), aux couleurs de la maquette. */
.nds-film { padding-block: clamp(4.5rem, 7vw, 8rem); background: var(--navy-deep); color: #fff; font: 400 1rem/1.55 var(--font-sans); border-top: 1px solid rgba(231,182,61,.28); }
.nds-film *, .nds-film *::before, .nds-film *::after { box-sizing: border-box; }
.nds-film-inner { width: min(100% - 9vw, 1240px); margin-inline: auto; }
.nds-film-tete { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr); gap: clamp(1.5rem, 5vw, 5rem); align-items: end; margin-bottom: clamp(2rem, 4vw, 3.5rem); }
.nds-film-surtitre { display: flex; align-items: center; gap: .8rem; margin: 0 0 1.3rem; color: var(--gold); font-size: .81rem; font-weight: 700; letter-spacing: .22em; line-height: 1.5; text-transform: uppercase; }
.nds-film-surtitre::before { content: ""; width: 2.7rem; height: 2px; flex: 0 0 auto; background: currentColor; }
.nds-film-titre { margin: 0; font-size: clamp(2.3rem, 4.2vw, 4.4rem); font-weight: 750; letter-spacing: -.045em; line-height: 1.08; color: #fff; }
.nds-film-titre em { color: var(--gold); font-style: normal; }
.nds-film-texte { max-width: 480px; margin: 0 0 .35rem; color: #cbd8e2; font-size: clamp(1rem, 1.3vw, 1.15rem); line-height: 1.62; }

.nds-film-cadre { position: relative; margin: 0; aspect-ratio: 16 / 9; overflow: hidden; border-radius: .55rem; background: #000; box-shadow: 0 30px 80px rgba(0,0,0,.35); }
.nds-film-cadre.is-vertical { aspect-ratio: 9 / 16; width: min(100%, calc(80svh * 9 / 16)); margin-inline: auto; }
.nds-film-video { display: block; width: 100%; height: 100%; object-fit: cover; background: #000; }
.nds-film-lecture { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1rem; width: 100%; padding: 0; border: 0; background: linear-gradient(0deg, rgba(9,30,53,.35), rgba(9,30,53,0) 45%); color: #fff; font: inherit; cursor: pointer; }
.nds-film-lecture[hidden] { display: none; }
.nds-film-play { display: grid; place-items: center; width: clamp(4.5rem, 7vw, 6.2rem); height: clamp(4.5rem, 7vw, 6.2rem); border-radius: 50%; background: var(--gold); color: var(--navy-deep); box-shadow: 0 14px 40px rgba(0,0,0,.35); transition: transform .2s ease; }
.nds-film-play svg { width: 42%; height: 42%; margin-left: 8%; }
.nds-film-duree { padding: .45rem .95rem; border-radius: 999px; background: rgba(9,30,53,.78); font-size: .9rem; font-weight: 700; letter-spacing: .02em; }
.nds-film-lecture:hover .nds-film-play { transform: scale(1.06); }
.nds-film-lecture:focus-visible { outline: 3px solid var(--gold); outline-offset: -6px; }
.nds-film-cadre.is-playing .nds-film-lecture { display: none; }

.nds-film-transcription { margin-top: 1.4rem; color: #cbd8e2; font-size: .95rem; }
.nds-film-transcription summary { display: inline-flex; gap: .5rem; padding-bottom: .2rem; border-bottom: 2px solid var(--gold); color: #fff; font-weight: 700; cursor: pointer; list-style: none; }
.nds-film-transcription summary::-webkit-details-marker { display: none; }
.nds-film-transcription summary::after { content: "+"; color: var(--gold); }
.nds-film-transcription[open] summary::after { content: "–"; }
.nds-film-transcription p { max-width: 760px; margin: .7rem 0 0; }

@media (max-width: 900px) { .nds-film-tete { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .nds-film-play { transition: none; } }
