.project-film{
  padding:96px max(6vw,28px);
  background:#f2f0ea;
  display:grid;
  grid-template-columns:minmax(260px,.78fr) minmax(420px,1.35fr);
  gap:clamp(38px,6vw,90px);
  align-items:center;
}
.project-film__copy h2{
  margin:10px 0 20px;
  font:700 clamp(38px,5vw,72px)/1 "Space Grotesk",sans-serif;
  letter-spacing:-.045em;
  color:#071421;
}
.project-film__copy>p:not(.eyebrow){
  margin:0 0 24px;
  color:#4e5961;
  font-size:1.05rem;
  line-height:1.75;
}
.project-film__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 28px;
  padding:0;
  list-style:none;
}
.project-film__meta li{
  padding:8px 12px;
  border:1px solid #c9c6bd;
  color:#26323b;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.project-film__link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#071421;
  font-weight:800;
  text-decoration:none;
  border-bottom:2px solid #e8a23b;
  padding-bottom:6px;
}
.project-film__media{
  position:relative;
  background:#071421;
  box-shadow:0 28px 70px rgba(7,20,33,.22);
}
.project-film__media::before{
  content:"";
  display:block;
  padding-top:56.25%;
}
.project-film__media iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}
.portfolio-image{
  position:relative;
  width:100%;
  aspect-ratio:16 / 10;
  min-height:0;
  overflow:hidden;
}
.portfolio-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .45s ease;
}
.portfolio-image>span{
  position:absolute;
  right:16px;
  bottom:16px;
  padding:10px 13px;
  background:rgba(7,20,33,.88);
  color:#fff;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  opacity:0;
  transform:translateY(8px);
  transition:.25s ease;
}
.portfolio-image:hover img,
.portfolio-image:focus-visible img{
  transform:scale(1.035);
  filter:brightness(.78);
}
.portfolio-image:hover>span,
.portfolio-image:focus-visible>span{
  opacity:1;
  transform:none;
}
.gallery-status{
  display:grid;
  grid-template-columns:auto minmax(120px,360px);
  align-items:center;
  gap:18px;
  margin-top:18px;
  color:#fff;
  font:700 .78rem "Manrope",sans-serif;
  letter-spacing:.12em;
}
.gallery-progress{
  height:2px;
  overflow:hidden;
  background:rgba(255,255,255,.18);
}
.gallery-progress i{
  display:block;
  width:100%;
  height:100%;
  background:#e8a23b;
  transform:scaleX(0);
  transform-origin:left;
}
.gallery-progress i.is-running{
  animation:jmbGalleryProgress 6s linear forwards;
}
@keyframes jmbGalleryProgress{to{transform:scaleX(1)}}
@media (prefers-reduced-motion:reduce){
  .portfolio-image img{transition:none}
  .gallery-progress i{animation:none!important}
}
@media (max-width:850px){
  .project-film{grid-template-columns:1fr;padding-block:72px}
}
@media (max-width:560px){
  .project-film{padding-inline:22px}
  .project-film__copy h2{font-size:38px}
  .portfolio-image>span{opacity:1;transform:none}
}

/* Compact auto-scrolling carousel — Regards aériens */
#galerie .portfolio-track{
  grid-auto-columns:clamp(220px,24vw,280px);
  gap:14px;
  scroll-behavior:smooth;
  overscroll-behavior-inline:contain;
}
#galerie .portfolio-image{
  aspect-ratio:16 / 9;
  max-height:158px;
}
#galerie .portfolio-card figcaption{
  padding:14px 16px;
}
@media (max-width:560px){
  #galerie .portfolio-track{grid-auto-columns:min(78vw,270px)}
  #galerie .portfolio-image{max-height:152px}
}
