.soc-film {
  padding-block: clamp(40px, 5vw, 76px);
  scroll-margin-top: 90px;
  background: #f6f6fb;
}
.soc-film-inner { max-width: 960px; }
.soc-film h2 {
  margin: 0;
  color: #2a375f;
  font-size: clamp(32px, 4vw, 54px);
  font-weight: 500;
  line-height: 1.12;
}
.soc-film-intro { margin: 14px 0 24px; max-width: 64ch; line-height: 1.55; }
.soc-film video {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  background: #151f33;
}
.soc-film details { margin-top: 18px; }
.soc-film details summary { cursor: pointer; width: fit-content; padding: 8px 0; }
.soc-film details p { max-width: 74ch; margin: 12px 0; line-height: 1.6; }
.mdr-feature-copy .soc-film-link { display: block; width: fit-content; margin-top: 16px; padding-block: 8px; color: #fff; text-decoration: underline; text-underline-offset: 4px; }
