/* Package 20: additions use the existing site.css design system.
   No product-specific page fonts, colors, backgrounds, heading styles or buttons.
   Product identity lives in the artwork. These rules only size new content. */
header.site nav a{display:inline-flex;align-items:center;min-height:36px}
header.site nav a[aria-current=page]{color:var(--yellow)}
.site-teaser section[id],.press-new[id]{scroll-margin-top:8rem}
.upcoming{margin-top:72px}
.upcoming .cards{grid-template-columns:repeat(2,minmax(0,1fr));margin:24px 0}
.upcoming .card .pad{padding-bottom:24px}
.teaser-cast figure{text-align:center}
.teaser-cast img{width:min(100%,240px);aspect-ratio:1/1;object-fit:contain;margin:auto}
.teaser-cast h3{font-size:20px;margin:18px 0 8px}
.teaser-cast p{font-size:14px;margin:0}
.site-teaser .gallery figcaption{padding:12px 14px}
.site-teaser .gallery figcaption h3{font-size:20px;margin:0 0 10px}
.site-teaser .gallery figcaption p{font-size:14px;margin:0}
.site-teaser .gallery.portrait img{width:100%}
.studio-film video{width:min(100%,315px);margin-inline:auto}
.studio-film .video-note{text-align:center}
.teaser-follow{text-align:center}
.press-new{border-top:1px solid rgba(255,45,158,.2);padding-top:28px;margin-top:40px}
.press-new img{width:100%;border-radius:12px;margin:18px 0}
.press-links{display:flex;gap:18px;flex-wrap:wrap;font-size:15px}
@media(max-width:520px){
 header.site{flex-wrap:wrap;justify-content:center;gap:4px 20px;padding:8px 14px}
 header.site nav{gap:25px;justify-content:center;width:100%}
 header.site nav a{min-height:38px;font-size:11px}
 .upcoming .cards{grid-template-columns:1fr}
}
