/* The festival record follows the site's typeface, gutters and quiet editorial rules. */
.vf-production-awards { padding:clamp(32px,4vw,64px) var(--vf-header-inset); color:#171717; }
.vf-production-awards-heading { padding-bottom:24px; border-bottom:1px solid #d4d4cc; }
.vf-production-awards-heading h2 { margin:0; font-size:clamp(24px,2.5vw,36px); line-height:1.15; font-weight:450; letter-spacing:-.035em; }
.vf-production-awards-list { list-style:none; margin:0; padding:0; }
.vf-award-detail { display:grid; grid-template-columns:minmax(110px,160px) minmax(0,1fr); align-items:start; gap:clamp(24px,4vw,64px); padding-block:30px; border-bottom:1px solid #d4d4cc; }
.vf-award-logo { --vf-laurel-display-height:72px; --vf-award-logo-limit:140px; display:flex; align-items:center; justify-content:center; min-width:0; min-height:128px; padding:10px; background:#eeeee9; }
.vf-award-logo .vf-laurel-graphic { --vf-award-fitted-height:min(var(--vf-laurel-display-height),calc(var(--vf-award-logo-limit)/var(--vf-laurel-ratio,1))); width:calc(var(--vf-award-fitted-height)*var(--vf-laurel-ratio,1)); height:var(--vf-award-fitted-height); }
.vf-award-logo .vf-laurel-image { filter:brightness(0); }
.vf-award-logo > img { display:block; max-width:100%; max-height:84px; width:auto; height:auto; object-fit:contain; }
.vf-award-copy { min-width:0; }
.vf-award-meta { display:flex; flex-wrap:wrap; align-items:center; gap:10px 20px; margin-bottom:14px; }
.vf-production-awards .vf-award-result { margin:0; padding:6px 10px; border:1px solid #bdbdb5; border-radius:24px; color:#55554d; font-size:11px; line-height:1.3; font-weight:500; letter-spacing:.035em; }
.vf-production-awards .vf-award-result.is-winner { border-color:#23231f; background:#23231f; color:#fff; }
.vf-production-awards .vf-award-year { margin:0 0 0 auto; color:#66665f; font-size:14px; line-height:1.3; font-variant-numeric:tabular-nums; }
.vf-award-copy h3 { max-width:32ch; margin:0; color:inherit; font-size:clamp(22px,2.2vw,30px); line-height:1.18; font-weight:450; letter-spacing:-.025em; overflow-wrap:anywhere; }
.vf-production-awards .vf-award-category { margin:10px 0 0; color:#33332f; font-size:16px; line-height:1.4; font-weight:500; }
.vf-award-description { max-width:68ch; margin-top:16px; color:#66665f; }
.vf-production-awards .vf-award-description p { margin:0 0 .8em; font-size:16px; line-height:1.6; }
.vf-production-awards .vf-award-description p:last-child { margin-bottom:0; }
.vf-award-festival-link { display:inline-flex; align-items:center; gap:9px; margin-top:18px; color:#33332f; font-size:12px; line-height:1.4; text-decoration:underline; text-underline-offset:4px; }
.vf-award-festival-link > span[aria-hidden] { display:inline-block; transition:transform .2s ease; }
.vf-award-festival-link:hover > span[aria-hidden] { transform:translate(2px,-2px); }
.vf-award-festival-link:focus-visible { outline:2px solid currentColor; outline-offset:4px; }
@media(max-width:767px) {
    .vf-production-awards { padding-block:30px 36px; }
    .vf-production-awards-heading { padding-bottom:20px; }
    .vf-award-detail { grid-template-columns:84px minmax(0,1fr); gap:20px; padding-block:24px; }
    .vf-award-logo { --vf-laurel-display-height:46px; --vf-award-logo-limit:66px; min-height:96px; padding:9px; }
    .vf-award-meta { gap:8px; margin-bottom:12px; }
    .vf-production-awards .vf-award-result { padding:5px 8px; font-size:10px; letter-spacing:0; }
    .vf-production-awards .vf-award-year { font-size:12px; }
    .vf-award-copy h3 { font-size:20px; }
    .vf-production-awards .vf-award-category { font-size:15px; }
    .vf-production-awards .vf-award-description p { font-size:15px; line-height:1.55; }
    .vf-award-festival-link { margin-top:14px; }
}
@media(max-width:359px) { .vf-award-detail { grid-template-columns:66px minmax(0,1fr); gap:16px; } .vf-award-logo { --vf-award-logo-limit:50px; padding:8px; min-height:84px; } }
@media(prefers-reduced-motion:reduce) { .vf-award-festival-link > span[aria-hidden] { transition:none; } }
