/* Public OnShow presentation: warm charcoal, quiet typography, films first. */
:root{color-scheme:dark;--paper:#1b1b1a;--ink:#eee9df;--muted:#b6b0a5;--accent:#dfa783;--surface:#242422;--line:#3a3833;--text-title:clamp(32px,4vw,50px);--text-section:clamp(25px,2.7vw,34px);--text-card:19px}
body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}
.shell{max-width:1280px;padding:42px 5%}
.header{max-width:1380px;padding:22px 5%;border-color:var(--line)}
.header nav{gap:28px;font-size:14px}
.header nav a{color:var(--muted);transition:color .18s}
.header nav a:hover,.header nav a[aria-current=page]{color:var(--ink)}
.header nav a:last-child{color:var(--accent)}
body h1,body .hero h1,body .filmDetail .filmHero h1{font-weight:600;letter-spacing:-.025em;line-height:1.16;text-wrap:balance}
body .hero h1{max-width:900px;font-size:clamp(34px,4.6vw,56px);margin:12px 0 26px}
.hero{padding:28px 0 46px;max-width:1080px}
body .hero .event{font-size:clamp(18px,2vw,23px);font-weight:500;line-height:1.5;color:var(--ink);max-width:760px}
.hero p{max-width:710px}
body h2{font-weight:550;line-height:1.25}
body h3{font-weight:600}
body .eyebrow{color:#c1af96;font-size:11px;letter-spacing:.16em;font-weight:500}
.actions{margin:26px 0;gap:12px}
.button,button{border-radius:4px;padding:12px 20px;font-size:14px;font-weight:600;line-height:1.45;background:var(--accent);border-color:var(--accent);color:#211c17}
.button:hover,button:hover{background:#ebba99;border-color:#ebba99;color:#211c17}
.button.secondary{color:var(--ink);border-color:#676055;background:transparent}
.button.secondary:hover{background:var(--surface);border-color:var(--muted)}
.section{border-color:var(--line);padding:42px 0 48px}
.section>h2{margin-top:12px}
.section>p{color:var(--muted);max-width:760px;margin-bottom:28px}
.columns{gap:40px}
.columns h2{font-size:clamp(25px,2.4vw,30px);margin-top:14px}
.columns a,.document a{color:#d5bda2}
.notice,.festivalNote,.box,.filmEmpty{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:26px 30px}
.notice h2{margin-top:0;font-size:clamp(23px,2.5vw,30px)}
.notice p{max-width:850px;color:var(--muted)}
.notice strong{color:var(--ink)}
.film-showcase-value{margin:20px 0 42px}
.filmGrid,.festivalFilmGrid{gap:38px 26px}
.festivalFilmCard{display:block;min-width:0;color:inherit;text-decoration:none}
.festivalPoster{aspect-ratio:2/3;overflow:hidden;background:#151514;border:1px solid var(--line);border-radius:5px}
.festivalPoster img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .25s}
.festivalFilmCard:hover .festivalPoster img{transform:scale(1.018)}
body .festivalFilmCard h3{font-size:var(--text-card);font-weight:600;margin:14px 0 6px;line-height:1.35}
body .festivalFilmCard p{font-size:12px;line-height:1.65;margin:6px 0;color:var(--muted)}
body .festivalFilmCard .filmStatus,body .filmStatus{font-size:11px;color:#bdae98;border-top:1px solid var(--line);padding-top:10px}
.festivalFilmSection,.festivalWelcome,.festivalSchedule td,.festivalSchedule th,.festivalFAQ details,.filmDetail .filmHero{border-color:var(--line)}
body .filmDetail{padding:24px 0 48px!important}
body .filmDetail .filmHero{grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:center;padding-bottom:36px}
body .filmDetail .filmHero>img{width:100%;max-height:480px;object-fit:contain;background:#151514;border:1px solid var(--line);border-radius:5px}
body .filmDetail .filmHero h1{font-size:clamp(32px,4vw,48px);margin:18px 0}
.filmDetail .filmHero>div>span:first-child{color:var(--muted);line-height:1.6}
body .filmDetail .badge{color:#c4b59f;border-color:var(--line);font-size:12px;margin-top:20px}
.filmDetail .filmBio{color:#d2ccc2;line-height:1.85;max-width:780px}
#submitted-films .row{gap:8px}
#submitted-films [data-result]{background:transparent;color:var(--muted);border:1px solid var(--line);padding:8px 14px;font-size:13px}
#submitted-films [data-result]:hover{color:var(--ink);border-color:#746b5d}
#submitted-films [data-result][aria-pressed=true]{background:#3a3027;border-color:#8a6f54;color:#f0dfc9}
#submitted-films .filmSearch{background:var(--surface);border-color:#5d564b}
#submitted-films .filmCollectionNotice{color:var(--muted);font-size:13px;line-height:1.75}
#film-status{color:var(--muted);font-size:13px;margin:24px 0}
.filmPagination button{background:transparent;border-color:var(--line)}
input,select,textarea,body .entryForm input:not([type=checkbox]),body .entryForm textarea,body .entryForm select{background:var(--surface);color:var(--ink);border-color:#70685c}
input::placeholder,textarea::placeholder{color:#aca497;opacity:1}
.document{margin:12px auto 48px}
.document>p,.festivalIntro,.festivalFAQ p{color:#ccc5ba}
.footer{border-color:var(--line);color:#9d968b;font-size:12px;padding-top:30px;padding-bottom:32px}
.footer nav{gap:20px}
.footer>span{max-width:760px;line-height:1.7}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:800px){.shell{padding:28px 5%}.header{padding:18px 5%;gap:18px}.header nav{gap:20px}.hero{padding:16px 0 30px}body .hero h1{font-size:clamp(32px,7vw,44px);line-height:1.2}.section{padding:32px 0 38px}.columns{gap:32px}.filmGrid,.festivalFilmGrid{gap:28px 16px}.notice,.festivalNote,.box{padding:22px}.film-showcase-value{margin-bottom:30px}body .filmDetail .filmHero{grid-template-columns:1fr;gap:24px}body .filmDetail .filmHero>img{max-height:420px;max-width:290px;margin:auto}body .filmDetail .filmHero h1{font-size:36px}body .festivalFilmCard h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){.festivalPoster img,.header nav a{transition:none}}

/* Keep the search at half the catalogue width and anchored to the right. */
#submitted-films .filmCollectionHeading{display:block}
#submitted-films #film-search{display:block;width:50%;max-width:520px;min-width:0;margin:18px 0 0 auto;flex:none}
#submitted-films #film-search .filmSearch{box-sizing:border-box;width:100%;margin:0;padding:8px 12px}
#submitted-films #film-search .filmSearchRow{display:flex;align-items:center;gap:8px;min-width:0}
#submitted-films #film-search input{min-width:0;width:100%;padding:4px 0}
@media(max-width:750px){#submitted-films #film-search{width:50%;max-width:520px;flex:none;margin-left:auto}#submitted-films #film-search .filmSearch{padding:8px}}

/* Pair the catalogue notice with search instead of leaving an empty row. */
#submitted-films .filmCollectionTools{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:32px;margin:20px 0 24px}
#submitted-films .filmCollectionTools .filmCollectionNotice{max-width:none;margin:0;overflow-wrap:break-word}
#submitted-films .filmCollectionTools #film-search{width:100%;max-width:520px;justify-self:end;margin:0;flex:none}
@media(max-width:650px){#submitted-films .filmCollectionTools{grid-template-columns:minmax(0,1fr);gap:14px;margin-top:16px}#submitted-films .filmCollectionTools #film-search{width:50%;max-width:320px;margin-left:auto}}
