.test-nav{display:flex;justify-content:space-between;padding:28px 0;font:14px DMSans,Arial,sans-serif;text-transform:uppercase}.test-nav details{position:relative}.test-nav summary{cursor:pointer;list-style:none}.test-nav nav{position:absolute;right:0;top:35px;display:grid;gap:18px;background:#080808;padding:20px;min-width:160px;z-index:5}.test-notice{font:12px DMSans,Arial,sans-serif;color:var(--off-white);opacity:.65;margin:30px 0}.test-notice a{text-decoration:underline}.test-heading{padding:clamp(35px,6vw,95px) 0}.test-heading h1{font:700 clamp(28px,4.6vw,76px)/1.05 Arial,sans-serif;letter-spacing:-.04em;text-transform:uppercase;max-width:1000px;margin:15px 0}.test-director{font:italic clamp(19px,2.1vw,32px)/1.3 Georgia,serif;margin:16px 0 0}.test-kicker,.test-section>h2{font:400 13px DMSans,Arial,sans-serif;text-transform:uppercase;letter-spacing:.07em;color:var(--crimson,#c92343)}.test-films{display:grid;gap:35px}.test-films .original-player,.test-films .player{width:100%;max-width:none;margin:0}.test-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin:60px 0}.test-intro:empty{display:none}.test-intro>dl:only-child{grid-column:1/-1}.test-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 40px;margin:0;font:15px/1.6 DMSans,Arial,sans-serif}.test-details dt{font-size:12px;text-transform:uppercase;color:var(--crimson,#c92343);margin-bottom:6px}.test-details dd{margin:0}.test-section{margin:80px 0}.test-section>h2{margin:0 0 28px}.project-layout-test p{line-height:1.65}.test-original{max-width:850px;font:16px/1.8 DMSans,Arial,sans-serif}.test-original div{ text-align:left!important}.test-original .festival-mark{max-width:130px;max-height:80px;object-fit:contain;filter:invert(1);mix-blend-mode:screen}.test-original:empty{display:none}.project-layout-test .sheet-image img{border-radius:4px}.project-layout-test .contact-sheet{gap:14px}.project-layout-test .project-actions{margin-top:80px;font-size:15px}.project-layout-test .test-heading .test-director{line-height:1.3}@media(max-width:650px){.test-intro{grid-template-columns:1fr;gap:30px;margin:40px 0}.test-details{gap:20px}.test-section{margin:55px 0}.test-heading{padding:25px 0 40px}}

.test-specs{margin:45px 0 60px;max-width:900px;font:400 clamp(16px,1.6vw,21px)/1.65 DMSans,Arial,sans-serif}.test-specs p{margin:0 0 6px}.test-section>img,.test-section figure img{max-width:100%;height:auto}.test-section figure{margin:24px 0}.test-section iframe{display:block;width:100%;max-width:100%;min-height:200px;border:0}.test-section audio,.test-section video{max-width:100%}.test-frames summary{list-style:none;cursor:pointer;font:400 14px DMSans,Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;padding:14px 0;color:var(--off-white)}.test-frames summary:hover{color:var(--crimson,#c92343)}.test-frames .contact-sheet{margin-top:25px}.test-section .test-posters{grid-template-columns:repeat(3,minmax(0,1fr))}.test-section[data-layout-field=awards] img,.test-section[data-layout-field=festivals] img{max-width:220px;max-height:160px;object-fit:contain}@media(max-width:650px){.test-section .test-posters{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Match the homepage navigation, without applying spacing to printed letters. */
.project-layout-test .test-disclosure>summary{display:flex;align-items:center;justify-content:flex-start;gap:12px;width:max-content;margin:0 0 24px;padding:10px 0;list-style:none;cursor:pointer;font:400 14px/1.4 DMSans,Arial,sans-serif;letter-spacing:.045em;text-transform:uppercase;color:var(--off-white)}
.project-layout-test .test-disclosure>summary::-webkit-details-marker{display:none}
.project-layout-test .test-disclosure>summary span{margin:0;letter-spacing:inherit}
.project-layout-test .test-disclosure>summary>.toggle-word{display:inline-block;transition:transform .35s ease}
.project-layout-test .test-disclosure[open]>summary>.toggle-word{transform:none}
.project-layout-test .test-disclosure>summary>.toggle-arrow{display:inline-block;transition:transform .35s ease}
.project-layout-test .test-disclosure[open]>summary>.toggle-arrow{transform:rotate(180deg)}
.project-layout-test .test-disclosure>summary:hover{color:var(--crimson,#c92343)}
.project-layout-test .test-disclosure[open]>.test-disclosure-body{animation:project-section-down .3s ease both}
.project-layout-test .test-disclosure-body>p:first-child{margin-top:0}
.project-layout-test .test-disclosure .festival-mark{display:block;width:auto;max-width:130px;height:auto;max-height:80px;object-fit:contain;margin:28px 0 10px;filter:invert(1);mix-blend-mode:screen}
@keyframes project-section-down{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.project-layout-test .test-disclosure>summary>span{transition:none}.project-layout-test .test-disclosure-body{animation:none!important}}

/* Section state is conveyed by color, without flipping the label. */
.project-layout-test .test-disclosure>summary{color:var(--crimson,#c92343);transition:color .2s ease}
.project-layout-test .test-disclosure[open]>summary{color:var(--off-white)}
.project-layout-test .test-disclosure>summary>.toggle-word{transform:none;transition:none}
/* Editorial pairing: quiet factual text, softer long-form reading. */
.project-layout-test .test-specs{font:400 clamp(16px,1.35vw,18px)/1.8 DMSans,Arial,sans-serif;max-width:65ch;letter-spacing:0}
.project-layout-test .test-specs p{line-height:1.8;margin-bottom:5px}
.project-layout-test .test-disclosure-body{font:400 clamp(16px,1.3vw,18px)/1.85 DMSans,Arial,sans-serif;letter-spacing:0}
.project-layout-test .test-disclosure-body>p,.project-layout-test .test-disclosure-body>ul,.project-layout-test .test-disclosure-body>ol{max-width:66ch;line-height:1.85}
.project-layout-test [data-layout-field=description]>p,.project-layout-test [data-layout-field=description]>blockquote,.project-layout-test [data-layout-field=description]>ul,.project-layout-test [data-layout-field=description]>ol,.project-layout-test [data-layout-field=press]>p,.project-layout-test [data-layout-field=press]>blockquote,.project-layout-test [data-layout-field=press]>ul,.project-layout-test [data-layout-field=press]>ol{font:500 clamp(22px,2vw,28px)/1.55 Cormorant,Georgia,serif;max-width:58ch;letter-spacing:0}
.project-layout-test [data-layout-field=press] blockquote{margin-left:0;padding-left:24px;border-left:1px solid #383835;font-style:italic}
.project-layout-test .test-specs .print-run,.project-layout-test .test-disclosure-body .print-run,.project-layout-test [data-layout-field=description] .print-run,.project-layout-test [data-layout-field=press] .print-run{filter:none;text-shadow:none}

/* Centered typography study for project pages. */
.project-layout-test{text-align:center}
.project-layout-test .test-heading h1,
.project-layout-test .test-specs,
.project-layout-test .test-disclosure>summary,
.project-layout-test .test-disclosure-body>p,
.project-layout-test .test-disclosure-body>ul,
.project-layout-test .test-disclosure-body>ol,
.project-layout-test [data-layout-field=description]>p,
.project-layout-test [data-layout-field=description]>blockquote,
.project-layout-test [data-layout-field=description]>ul,
.project-layout-test [data-layout-field=description]>ol,
.project-layout-test [data-layout-field=press]>p,
.project-layout-test [data-layout-field=press]>blockquote,
.project-layout-test [data-layout-field=press]>ul,
.project-layout-test [data-layout-field=press]>ol,
.project-layout-test .test-disclosure .festival-mark{margin-left:auto;margin-right:auto}
.project-layout-test .test-disclosure>summary{justify-content:center}
.project-layout-test ul,.project-layout-test ol{list-style-position:inside;padding-left:0}
.project-layout-test [data-layout-field=press] blockquote{padding-left:0;border-left:0}
.project-layout-test .project-actions{justify-content:center;gap:clamp(25px,6vw,90px);text-align:center}

/* Two original-sized columns, centered within the former three-column area. */
.project-layout-test [data-layout-field=gallery] .contact-sheet{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:calc((100% - 28px) / 3 * 2 + 14px);margin-left:auto;margin-right:auto;gap:14px}
.project-layout-test .sheet-image,.project-layout-test .sheet-image img{cursor:zoom-in}
.test-nav{position:relative;align-items:center;min-height:125px}
.test-nav .test-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:260px;max-width:44vw;isolation:isolate;filter:url(#wordmark-crimson);mix-blend-mode:screen}
.test-logo>svg{display:block;width:100%;height:auto;overflow:hidden;mix-blend-mode:screen}
@media(max-width:650px){.project-layout-test [data-layout-field=gallery] .contact-sheet{width:100%}.test-nav{min-height:105px}.test-nav>a:first-child,.test-nav>details{font-size:11px}}

.project-layout-test .test-heading h1{font-family:Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:-.055em;line-height:1.15}
.project-layout-test .test-specs .test-director-credit{margin-bottom:24px}

/* Hover always uses crimson, including expanded sections. */
.project-layout-test .test-disclosure>summary:hover,
.project-layout-test .test-disclosure[open]>summary:hover,
.project-layout-test summary:hover,
.test-nav summary:hover{color:var(--crimson,#c92343)}

.test-nav nav{background:transparent;border:0;box-shadow:none;padding:18px 0;justify-items:end;text-align:right;min-width:170px}
.test-nav nav a{white-space:nowrap}
.test-nav nav a:hover{color:var(--crimson,#c92343)}
.test-nav details[open] nav{animation:project-section-down .3s ease both}
@media(prefers-reduced-motion:reduce){.test-nav details[open] nav{animation:none}}

@media(max-width:650px){
 .test-nav>a:first-child,.test-nav>details>summary{min-height:44px;display:flex;align-items:center}
 .test-nav nav a{min-height:44px;display:flex;align-items:center}
 .project-layout-test .test-disclosure>summary{min-height:44px}
 .project-layout-test .project-actions a{min-height:44px;display:flex;align-items:center}
 .test-nav nav{max-height:calc(100dvh - 100px);overflow-y:auto;gap:8px}
}

/* Shared project video sizing: padded, centered, capped at native/source width. */
.project-layout-test .test-films{display:block;padding-inline:clamp(12px,4vw,64px)}
.project-layout-test .project-video{margin:0 auto 35px;width:100%}
.project-layout-test .test-films .original-player,.project-layout-test .test-films .player,.project-layout-test .project-video-frame{width:100%;max-width:var(--video-limit,960px);margin:0 auto 35px;aspect-ratio:var(--video-ratio,16/9);padding:0;height:auto;position:relative;overflow:hidden}
.project-layout-test .test-films .original-player iframe{position:absolute;inset:0;width:100%;height:100%;min-height:0;border:0}
.project-layout-test .project-video .project-video-frame{margin-bottom:0}
.project-layout-test .project-video figcaption{margin:12px auto 0;text-align:center;font-size:14px}
.project-layout-test .native-video-frame{background:#000}
.project-layout-test .native-video-frame video{display:block;width:100%;height:auto;max-height:85vh;object-fit:contain;margin:auto}
.project-layout-test video:not([data-dimensions-ready]){visibility:hidden}
.project-layout-test video:fullscreen{visibility:visible;width:100%;height:100%;max-width:none!important;max-height:none;object-fit:contain}

/* Shared project and content-page navigation on phones. */
@media(max-width:750px){
 .test-nav{z-index:10}
 .test-nav nav{background:var(--crimson,#c92343);color:#fff;padding:12px 16px;box-sizing:border-box;max-width:calc(100vw - 32px);max-height:calc(100dvh - 120px);overflow-y:auto;gap:4px}
 .test-nav nav a{color:#fff;min-height:44px;display:flex;align-items:center}
 .test-nav nav a:hover,.test-nav nav a:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:5px}
}
