/* A viewport-sized frame must not inherit old pixel minimums or caps. */
.top-redesign-v151.site-v79 .hero.hero--cinematic,
.top-redesign-v151 .flow .flow-news,
.top-redesign-v151 .flow .flow-recruit,
.top-redesign-v151 .flow .contact-proposal {
  box-sizing: border-box;
  height: 100vh;
  height: 100dvh;
  min-height: 0;
  max-height: none;
  scroll-margin-top: 0;
}
.contact-proposal__title { text-wrap: balance; }
.hero--video .cinematic-visual {
  inset: 0;
  height: 100%;
  aspect-ratio: auto;
  background: #202020;
}
.hero--video .cinematic-visual::after { content: none; }
.cinematic-video,
.cinematic-video__end,
.cinematic-video__end img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.hero--video .cinematic-copy[hidden],
.hero--video .cinematic-footer[hidden],
.cinematic-video__end[hidden],
.cinematic-video__play[hidden] { display: none !important; }
.cinematic-video__end { z-index: 1; }
.cinematic-video__play {
  position: absolute;
  z-index: 4;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  padding: 16px 24px;
  border: 1px solid #fff;
  background: #202020;
  color: #fff;
  font: 700 14px/1.5 var(--sans);
  cursor: pointer;
}
.cinematic-video__play:focus-visible { outline: 3px solid #ff6b00; outline-offset: 4px; }
@media (max-width: 700px) {
  .top-redesign-v151 .flow .contact-proposal { padding: 92px 0 28px; }
  .top-redesign-v151 .flow .contact-proposal .contact-proposal__heading { margin-bottom: 22px; }
  .contact-proposal__entrances { gap: 24px; }
  .top-redesign-v151 .flow .contact-proposal .contact-proposal__lead { margin-top: 10px; }
  .top-redesign-v151 .flow .contact-proposal .contact-v171__links { margin-top: 18px; }
}
/* Short windows retain readable controls inside their one-screen frame. */
@media (max-height: 600px) {
  .top-redesign-v151 .talent-v92--motion .talent-v92__stage { height: 100svh; min-height: 0; }
  .top-redesign-v151 .talent-v92--motion .talent-v92__message .talent-v92__headline { font-size: 26px; }
  .top-redesign-v151 .talent-v92--motion .talent-v92__brand { font-size: 13px; margin-bottom: 12px; }
  .top-redesign-v151 .talent-v92--motion .talent-v92__brand span { font-size: 11px; }
  .top-redesign-v151 .talent-v92--motion .talent-v92__description { font-size: 11px; margin-top: 12px; }
  .top-redesign-v151 .flow .flow-news,
  .top-redesign-v151 .flow .contact-proposal { overflow-y: auto; padding-top: 82px; padding-bottom: 24px; }
  .top-redesign-v151 .flow .contact-proposal .flow-contact__inner { height: auto; min-height: 100%; }
  .top-redesign-v151 .flow .flow-recruit__inner { padding-top: 82px; padding-bottom: 24px; }
  .top-redesign-v151 .flow .flow-recruit__headline { font-size: 30px; line-height: 1.3; }
  .top-redesign-v151 .flow .flow-recruit__inner > .section-heading { margin-bottom: 18px; }
}
@media (max-width: 700px) and (max-height: 600px) {
  .contact-proposal__entrances { gap: 16px; }
  .top-redesign-v151 .flow .contact-proposal .contact-proposal__heading { margin-bottom: 16px; }
  .top-redesign-v151 .flow .contact-proposal .contact-proposal__title { font-size: 24px; }
  .top-redesign-v151 .flow .contact-proposal .contact-proposal__lead { max-width: calc(100% - 24px); }
  .top-redesign-v151 .flow .contact-proposal .contact-proposal__audience { margin-bottom: 10px; }
  .contact-proposal__entry--career { padding-top: 18px; }
  .top-redesign-v151 .flow .contact-proposal .contact-v171__links { margin-top: 14px; }
}
