:root{--bg:#0b1824;--panel:#112432;--text:#f6f3ea;--muted:#b5bfc6;--gold:#d7ad70;--line:#ffffff26}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}header{position:absolute;z-index:10;top:0;width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 5%;border-bottom:1px solid var(--line)}.brand{font-family:Georgia,serif;font-size:20px;letter-spacing:1.8px;line-height:1.1;font-weight:bold}.brand span{display:block;font:12px/1.4 Arial,sans-serif;letter-spacing:5px;margin-top:5px}nav{display:flex;gap:8px}nav a{font-size:14px;padding:5px 12px;transition:color .2s,background .2s}nav a:hover{background:var(--gold);color:var(--bg)}.header-action{border:1px solid #ffffff70;padding:8px 17px;font-size:14px;white-space:nowrap}.header-action:hover{background:var(--gold);color:var(--bg);border-color:var(--gold)}.menu{display:none}.hero{height:95svh;min-height:740px;max-height:1050px;position:relative;display:flex;align-items:end;overflow:hidden}.hero-photo,.hero-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-photo{object-position:center 38%}.hero-overlay{background:linear-gradient(0deg,#0b1824 0%,#0b1824b0 32%,#0b182420 72%,#06121b90),linear-gradient(90deg,#05111b80,transparent)}.hero-copy{position:relative;z-index:1;padding:130px 7% 110px;width:100%}.eyebrow{font-size:12px;letter-spacing:2.3px;font-weight:600;margin:0;color:var(--gold)}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(54px,8.6vw,145px);letter-spacing:-3px;font-weight:400;line-height:1.05;margin:25px 0 22px}h1 span{display:block;font-family:Arial,sans-serif;letter-spacing:12px;font-size:.31em;color:var(--gold);margin:13px 0 0 5px}h2{font:400 clamp(36px,4.4vw,68px)/1.14 Georgia,serif;letter-spacing:-1.5px;margin:0 0 30px}em{font-style:normal;color:var(--gold)}.tagline{font-size:21px;line-height:1.5;margin:0 0 28px;max-width:500px}.actions{display:flex;gap:32px;align-items:center}.button{display:inline-block;background:var(--gold);color:#081522;padding:12px 24px;border:1px solid var(--gold);font-size:14px;transition:.2s}.button:hover{background:#edcda1;border-color:#edcda1}.link{font-size:14px;border-bottom:1px solid var(--gold);padding-bottom:5px}.hero-bottom{position:absolute;bottom:28px;left:7%;right:7%;display:flex;justify-content:space-between;color:var(--muted);font-size:12px;letter-spacing:2px}.festival-band{padding:25px 7%;display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--line);background:#0e1d2a}.festival-mark{width:150px;height:95px;flex-shrink:0;background:var(--text);mask-image:url('/assets/selection.webp');mask-mode:luminance;mask-size:contain;mask-repeat:no-repeat;mask-position:center}.festival-band p{margin:0}.festival-band div>p:last-child{font-family:Georgia,serif;font-size:25px;margin-top:6px}.festival-note{margin-left:auto;color:var(--muted);font-size:14px}.section{padding:85px 7%}.section-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:45px}.section-top>span{font-size:12px;color:var(--muted);letter-spacing:1.5px}.story-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:11%;align-items:center}.story-grid p{max-width:650px;color:var(--muted)}.story-grid .lead{font-size:22px;color:var(--text)}details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:30px}summary{cursor:pointer;color:var(--gold);padding:16px 0;font-size:14px}.poster{margin:0;max-width:390px;justify-self:end}.poster img{width:100%;display:block;box-shadow:0 20px 70px #0005}.poster figcaption{margin-top:16px;font-size:12px;color:var(--muted);letter-spacing:1.3px}.image-interlude{height:560px;position:relative;overflow:hidden}.image-interlude>img{width:100%;height:100%;object-fit:cover;object-position:center 42%}.image-interlude>div{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:end;padding:60px 7%;background:linear-gradient(0deg,#06121bed,transparent 95%)}.image-interlude div>p:last-child{font:400 clamp(27px,3.4vw,54px)/1.25 Georgia,serif;max-width:1000px;margin:18px 0 0}.gallery-section{background:var(--panel);overflow:hidden}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:35px}.gallery-heading h2{margin:0}.gallery-heading>div{max-width:360px;color:var(--muted)}.gallery-controls{display:flex;gap:12px;margin-top:18px}.gallery-controls button{color:var(--text);border:1px solid var(--line);background:transparent;padding:8px 18px;font-size:14px}.gallery-controls button:hover{background:var(--gold);color:var(--bg)}.gallery-strip{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-color:var(--gold) var(--panel);padding-bottom:20px}.gallery-tile{flex:0 0 48%;height:360px;border:0;padding:0;background:#06121b;overflow:hidden;scroll-snap-align:start}.gallery-tile:nth-child(3n){flex-basis:30%}.gallery-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}.gallery-tile:hover img{transform:scale(1.035)}.gallery-tile[data-src="/assets/gallery/11.webp"] img{object-fit:contain}.makers-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.makers-grid p{max-width:430px;color:var(--muted)}.outline{background:transparent;color:var(--gold);margin-top:20px}.outline:hover{color:var(--bg)}dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:32px}dt{font-size:12px;letter-spacing:1.5px;color:var(--gold)}dd{margin:10px 0 0;font-size:17px;line-height:1.6}.participants p{color:var(--muted);margin:0 0 20px}.contact{background:#193448;border-top:1px solid #456279}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact h2{font-size:clamp(38px,4.2vw,65px)}.contact-grid>div>p{max-width:430px;color:#c0cbd3}.email{display:inline-block;font-size:16px;border-bottom:1px solid var(--gold);margin-top:12px;padding-bottom:8px;overflow-wrap:anywhere;max-width:100%}.contact-form label{display:flex;flex-direction:column;font-size:14px;gap:7px;margin-bottom:18px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form input,.contact-form textarea{width:100%;min-width:0;background:#0b182455;border:1px solid #8395a3;color:var(--text);border-radius:0;padding:11px 12px;font-size:16px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#a9bac6}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--gold);outline-offset:2px}.contact-form textarea{min-height:120px;resize:vertical}.contact-form button:disabled{opacity:.6;cursor:wait}.form-note,.form-status{font-size:13px;color:var(--muted);margin:10px 0 0}.gallery-lightbox{position:fixed;inset:0;width:min(1300px,96vw);max-width:96vw;height:94svh;max-height:94svh;margin:auto;padding:60px 25px 20px;border:1px solid var(--line);background:var(--bg);color:var(--text)}.gallery-lightbox::backdrop{background:#000e}.gallery-close{position:absolute;top:15px;right:25px}.gallery-lightbox button{background:transparent;color:var(--text);border:1px solid var(--line);padding:8px 16px;font-size:14px}.gallery-lightbox button:hover{background:var(--gold);color:var(--bg)}.lightbox-image{height:calc(100% - 70px);display:flex;align-items:center;justify-content:center}.lightbox-image img{max-width:100%;max-height:100%;object-fit:contain}.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:15px}.lightbox-count{font-size:14px;color:var(--muted)}body:has(.gallery-lightbox[open]){overflow:hidden}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:38px 7%;border-top:1px solid var(--line)}footer p,footer>a:last-child{font-size:13px;color:var(--muted)}@media(min-width:1700px){.section{padding-left:max(7%,calc((100vw - 1450px)/2));padding-right:max(7%,calc((100vw - 1450px)/2))}}@media(max-width:1000px){header{gap:15px}nav a{padding:5px 7px;font-size:13px}.header-action{display:none}.story-grid{gap:7%}.makers-grid{gap:7%}.gallery-tile{height:300px}.gallery-heading{gap:35px}.contact-grid{gap:6%}dl{grid-template-columns:1fr;gap:20px}}@media(max-width:650px){header{padding:18px 6%}.brand{font-size:17px}.menu{display:block;border:1px solid #ffffff60;background:transparent;color:var(--text);padding:5px 14px;font-size:14px}nav{display:none;position:absolute;top:84px;left:0;right:0;background:#0b1824fa;padding:25px 6%}nav.open{display:flex;flex-direction:column;gap:16px}nav a{font-size:18px;padding:5px 10px}.hero{min-height:680px;height:92svh}.hero-photo{object-position:45% center}.hero-copy{padding:130px 6% 100px}h1{font-size:clamp(35px,8.9vw,58px);letter-spacing:-1px;overflow-wrap:normal}.hero .eyebrow{max-width:260px;font-size:12px;line-height:1.8;letter-spacing:1.5px}.tagline{font-size:18px;margin-top:25px}.actions{gap:20px;flex-wrap:wrap}.hero-bottom{font-size:11px;letter-spacing:1px;left:6%;right:6%}.festival-band{padding:22px 6%;gap:18px}.festival-mark{width:105px;height:80px}.festival-band div>p:last-child{font-size:19px}.festival-band .eyebrow{font-size:11px;letter-spacing:1px}.festival-note{display:none}.section{padding:55px 6%}.section-top{margin-bottom:30px;align-items:start}.section-top>span{font-size:11px;text-align:right}.eyebrow{font-size:12px;letter-spacing:1.5px}h2{font-size:38px;letter-spacing:-1px}.story-grid,.makers-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.story-grid .lead{font-size:20px}.poster{max-width:300px;justify-self:center}.image-interlude{height:440px}.image-interlude>div{padding:35px 6%}.image-interlude div>p:last-child{font-size:30px}.gallery-heading{display:block}.gallery-heading>div{max-width:none;margin-top:20px}.gallery-strip{gap:12px}.gallery-tile,.gallery-tile:nth-child(3n){flex-basis:87%;height:290px}dl{grid-template-columns:1fr 1fr;gap:25px 18px}dd{font-size:16px}dt{font-size:11px;letter-spacing:1px}.contact h2{font-size:38px}.form-pair{grid-template-columns:1fr;gap:0}.gallery-lightbox{padding:60px 12px 15px}.gallery-lightbox button{padding:8px 12px}footer{flex-wrap:wrap;padding:30px 6%}footer p{margin:0}.brand span{font-size:12px}.email{font-size:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Updated production photograph and brighter final carousel shot. */
.image-interlude>img{object-position:center 38%}.image-interlude>div{background:linear-gradient(0deg,#06121be8 0%,#06121b80 35%,transparent 80%)}.gallery-tile[data-src="/assets/gallery/11.webp"]{flex-basis:30%}.gallery-tile[data-src="/assets/gallery/11.webp"] img{object-fit:cover;object-position:center;filter:brightness(1.18)}.gallery-lightbox img[src$="/11.webp"]{filter:brightness(1.18)}@media(max-width:650px){.gallery-tile[data-src="/assets/gallery/11.webp"]{flex-basis:72%}.image-interlude>img{object-position:55% center}}

/* Display the poster artwork without the black padding in the source file. */
.story-grid{grid-template-columns:1.25fr 1fr;gap:8%}.poster{width:100%;max-width:460px}.poster-frame{aspect-ratio:2/3;overflow:hidden;box-shadow:0 20px 70px #0005}.poster-frame img{width:100%;height:100%;object-fit:cover;object-position:47% center;box-shadow:none}@media(max-width:650px){.story-grid{grid-template-columns:1fr;gap:35px}.poster{max-width:360px}}

/* Production partners beneath the film label in the hero. */
.hero-bottom{align-items:end}.hero-partners{text-align:right}.hero-partners>span{display:block;margin-bottom:16px}.partner-logos{display:flex;align-items:center;justify-content:flex-end;gap:24px}.partner-logos>img,.dbff-crop{width:120px;height:56px;object-fit:contain;display:block}.partner-southroad{filter:url(#logo-clear)}.dbff-crop{overflow:hidden;position:relative}.dbff-crop img{position:absolute;width:78px;height:auto;left:21px;top:-16px;filter:url(#logo-clear)}.hero-copy{padding-bottom:165px}.hero-partners .partner-southroad{width:135px}@media(max-width:650px){.hero-bottom{align-items:start;gap:15px;flex-direction:column;bottom:22px}.hero-partners{text-align:left;width:100%}.hero-partners>span{margin-bottom:12px}.partner-logos{justify-content:flex-start;gap:18px}.partner-logos>img,.dbff-crop{width:85px;height:42px}.hero-partners .partner-southroad{width:100px}.dbff-crop img{width:60px;left:12px;top:-12px}.hero-copy{padding-bottom:205px}.hero{min-height:780px}}
.dbff-crop img{width:62px;left:29px;top:-12px}@media(max-width:650px){.dbff-crop img{width:48px;left:18px;top:-9px}}

/* The period couple anchors the community story. */
.image-interlude{height:600px}.image-interlude>img{object-position:center 42%}.image-interlude>div{background:linear-gradient(0deg,#06121bf0 0%,#06121b80 25%,transparent 65%)}@media(max-width:650px){.image-interlude{height:480px}.image-interlude>img{object-position:55% center}.image-interlude div>p:last-child{font-size:27px}}

/* Keep the burning building and camera monitor in the upper crop. */
.image-interlude>img{object-position:center top}.image-interlude>div{background:linear-gradient(0deg,#06121be8 0%,#06121b65 24%,transparent 60%)}@media(max-width:650px){.image-interlude>img{object-position:52% top}}

/* Zoom into the projected scene, excluding the source photo's black sides. */
.image-interlude{height:clamp(600px,50vw,760px)}.image-interlude>img{position:absolute;top:0;left:-40%;width:180%;max-width:none;height:100%;object-fit:cover;object-position:center top}@media(max-width:650px){.image-interlude{height:480px}.image-interlude>img{left:-40%;width:180%;object-position:52% top}}

/* Directors Notes: full-width scene without the previous photograph's zoom. */
.image-interlude{height:600px}.image-interlude>img{left:0;top:0;width:100%;height:100%;object-fit:cover;object-position:center 48%}.image-interlude>div{background:linear-gradient(0deg,#06121bf0 0%,#06121b80 25%,transparent 75%)}@media(max-width:650px){.image-interlude{height:480px}.image-interlude>img{left:0;width:100%;object-position:58% center}}

/* Press coverage has its own quiet space below the festival selection. */
.press-feature{padding:28px 7% 30px;border-bottom:1px solid var(--line);text-align:center}.press-feature blockquote{max-width:760px;margin:0 auto 16px;font:400 clamp(20px,2vw,27px)/1.5 Georgia,serif;color:var(--text)}.press-source{display:flex;flex-direction:column;align-items:center;gap:8px}.press-source>span:last-child{font-size:12px;color:var(--muted)}.press-logo{display:block;position:relative;width:225px;height:24px;overflow:hidden}.press-logo img{position:absolute;width:950px;height:auto;max-width:none;left:-367px;top:0;filter:url(#press-red)}@media(max-width:650px){.press-feature{padding:24px 6% 26px}.press-feature blockquote{font-size:20px;max-width:440px}.press-logo{width:195px;height:22px}.press-logo img{width:825px;left:-319px}}

/* Side-by-side project statement and newspaper coverage. */
.press-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px}.project-statement{display:flex;flex-direction:column;align-items:center;gap:14px}.project-headline{margin:0;font:400 clamp(20px,2vw,27px)/1.5 Georgia,serif;color:#fff}.press-coverage{border-left:1px solid var(--line);padding-left:48px}.project-logo{position:relative;display:block;width:160px;height:42px;overflow:hidden}.project-logo img{position:absolute;max-width:none;width:506px;height:auto;left:-166px;top:-406px;filter:url(#project-white)}@media(max-width:750px){.press-feature{grid-template-columns:1fr;gap:24px}.press-coverage{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}.project-headline{font-size:20px}}

/* Keep both statements on one line, scaling with their available column width. */
.project-statement,.press-coverage{container-type:inline-size;min-width:0}.project-headline,.press-feature blockquote{white-space:nowrap;font-size:clamp(10px,2.4cqi,22px);line-height:1.5;max-width:none}.press-feature{gap:32px}.press-coverage{padding-left:32px}@media(max-width:750px){.press-coverage{padding-left:0}.project-headline,.press-feature blockquote{font-size:clamp(8px,2.4cqi,20px)}}

/* Larger single-line quotes, with no divider and unchanged logo sizing. */
.press-feature{gap:24px;padding-left:5%;padding-right:5%}.press-coverage{border:0;padding-left:0}.project-headline,.press-feature blockquote{font-size:clamp(10px,2.75cqi,24px)}@media(max-width:750px){.press-feature{padding-left:6%;padding-right:6%}.press-coverage{border:0}.project-headline,.press-feature blockquote{font-size:clamp(8px,2.75cqi,22px)}}


/* Crop the original poster to the photographic strip shown in the reference. */
.image-interlude{height:auto;aspect-ratio:1600/430}.image-interlude>img{width:100%;height:auto;max-width:none;left:0;top:-23.26%;object-fit:initial}.image-interlude>div{padding:30px 7%;background:linear-gradient(0deg,#06121be8,transparent 85%)}.image-interlude div>p:last-child{font-size:clamp(24px,2.8vw,44px);margin-top:10px}@media(max-width:650px){.image-interlude{height:340px;aspect-ratio:auto}.image-interlude>img{width:auto;height:210%;left:50%;top:-23.26%;transform:translateX(-42%);object-fit:initial}.image-interlude>div{padding:26px 6%}.image-interlude div>p:last-child{font-size:27px}}

/* Raise the photographic crop until the hat meets the upper edge. */
.image-interlude>img{top:-36.5%;width:110%;left:-5%}@media(max-width:650px){.image-interlude>img{top:-33%;width:auto;left:50%}}

/* Use the larger project wordmark source, keeping its displayed size. */
.project-logo img{width:341.33px;left:-94.2px;top:-71.1px}.image-interlude>img{width:120%;left:-10%;top:-44%}@media(max-width:650px){.image-interlude>img{width:auto;height:225%;left:50%;top:-38%;transform:translateX(-42%)}}

/* Restore the original unzoomed photographic strip. */
.image-interlude>img{width:100%;height:auto;left:0;top:-23.26%;transform:none}@media(max-width:650px){.image-interlude>img{width:auto;height:210%;left:50%;top:-23.26%;transform:translateX(-42%)}}

/* Move the text-free photo upward without changing its scale. */
.image-interlude>img{top:-42%}@media(max-width:650px){.image-interlude>img{top:-38%}}

/* Crisp native wordmark: no clipped screenshot or browser-dependent image filter. */
.project-logo{width:160px;height:42px;display:flex;align-items:center;justify-content:center;gap:2px;overflow:visible;flex-shrink:0;color:#fff;font-family:Arial,Helvetica,sans-serif;line-height:1}.wordmark-the{writing-mode:vertical-rl;transform:rotate(180deg);font-size:13px;font-weight:700}.wordmark-lines{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.wordmark-lines strong{font-size:22px;letter-spacing:-.5px}.wordmark-lines>span{font-size:19px;font-weight:700;letter-spacing:-.3px}
@media(max-width:750px){.press-feature{gap:20px}.press-coverage{padding-top:0}}
/* Mobile imagery keeps the whole scene instead of enlarging a narrow crop. */
@media(max-width:650px){
.hero{display:block;height:auto;min-height:0;max-height:none;padding-top:85px;background:#0b1824}.hero-photo{position:relative;display:block;inset:auto;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;object-position:center}.hero-overlay{top:85px;bottom:auto;height:65vw;background:linear-gradient(0deg,#0b1824,transparent 45%)}.hero-copy{padding:20px 6% 26px}.hero h1{font-size:clamp(38px,10vw,62px);margin:18px 0}.hero .tagline{margin-top:20px;font-size:18px}.hero-bottom{position:relative;inset:auto;padding:0 6% 26px;gap:18px}.hero-partners{width:100%}.partner-logos{gap:16px;flex-wrap:wrap}.hero .eyebrow{max-width:none}.festival-band{gap:16px}.festival-band div{min-width:0}.festival-band div>p:last-child{font-size:18px}.festival-mark{width:95px}.poster{max-width:300px}.poster-frame img{object-fit:contain}.image-interlude{height:auto;aspect-ratio:auto}.image-interlude>img{position:relative;display:block;width:100%;height:auto;max-width:100%;left:auto;top:auto;transform:none;object-fit:contain}.image-interlude>div{position:relative;inset:auto;padding:24px 6% 28px;background:#0b1824}.image-interlude div>p:last-child{font-size:clamp(23px,6vw,29px);line-height:1.3}.gallery-tile,.gallery-tile:nth-child(3n){height:auto;aspect-ratio:3/2;flex-basis:90%;background:#081522}.gallery-tile img{object-fit:contain}.gallery-tile:hover img{transform:none}.gallery-heading h2{font-size:36px}.section{padding:44px 6%}.section-top{gap:12px}dl{grid-template-columns:1fr;gap:22px}.contact h2{font-size:36px}
}
