.region-film {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  align-items: center;
  gap: clamp(16px, 3.5vw, 42px);
  padding: clamp(18px, 3vw, 34px);
  margin: 24px 0 0;
  border-radius: 12px;
  background: #fffdfa;
  color: #182f34;
  border: 1px solid #dfe4dd;
  scroll-margin-top: 24px;
}
.region-film-copy > span { color: #5c5648; font-size: .76rem; font-weight: 750; letter-spacing: .1em; }
.region-film-copy h2 { margin: .35em 0; font-size: clamp(25px, 3.4vw, 42px); line-height: 1.1; letter-spacing: -.04em; }
.region-film-copy p { margin: .4rem 0; color: #43565b; }
.region-film-copy a { display: inline-flex; align-items: center; min-height: 44px; color: #9f1527; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.region-film video { display: block; width: 100%; height: auto; aspect-ratio: 16/9; border-radius: 8px; background: #182f34; }
@media (max-width: 700px) {
  .region-film { grid-template-columns: 1fr; }
}
