/* A quiet, readable partnership lockup above the hero photograph. */
.production-partner {
  position: absolute;
  top: 150px;
  right: clamp(24px, 5vw, 84px);
  z-index: 5;
  box-sizing: border-box;
  width: 310px;
  padding: 19px 23px 17px;
  border: 1px solid rgba(255,255,255,.8);
  border-top: 3px solid #24a644;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 12px 36px rgba(7,38,27,.18);
  color: #174d37;
  text-align: center;
}
.production-partner img { display: block; width: 100%; height: auto; }
.production-partner-title {
  margin: 12px 0 0;
  padding-top: 13px;
  border-top: 1px solid #e5eee6;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.65;
  letter-spacing: -.035em;
  word-break: keep-all;
}
.production-partner-title strong { font-size: 20px; font-weight: 800; }
.production-partner-detail { margin: 8px 0 0; color: #65786b; font-size: 12px; letter-spacing: .03em; }
@media (min-width: 761px) and (max-width: 1180px) {
  .production-partner { top: 150px; width: 270px; padding: 14px 18px; }
  .production-partner-title { font-size: 14px; }
}
@media (max-width: 760px) {
  .production-partner { top: 145px; right: 20px; width: 240px; padding: 10px 15px 12px; border-radius: 11px; }
  .production-partner img { width: 184px; margin: 0 auto; }
  .production-partner-title { margin-top: 5px; padding-top: 7px; font-size: 12px; line-height: 1.5; }
  .production-partner-title strong { font-size: 16px; }
  .production-partner-detail { margin-top: 5px; font-size: 10px; }
  .platform-hero { min-height: 960px; }
  .platform-hero .hero-content { top: 330px; transform: none; }
}
