:root{--paper:#fbfaf7;--sand:#f0f1ec;--ink:#1a2528;--muted:#617073;--sea:#1d666d;--deep:#113f45;--line:#d6dbd7;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0;background:var(--paper)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.shell{width:min(1180px,calc(100% - 40px));margin:auto}.header{position:sticky;top:0;z-index:8;border-bottom:1px solid var(--line);background:#fbfaf7f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.nav{display:flex;min-height:76px;align-items:center;justify-content:space-between;gap:1rem}.brand{font-family:"Source Serif 4",serif;font-size:1.45rem;letter-spacing:-.04em}.brand span{display:block;margin-top:.2rem;font-family:Manrope;font-size:.58rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.nav nav{display:flex;gap:1.1rem}.nav nav a{font-size:.67rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.menu{display:none;border:1px solid var(--line);background:transparent;padding:.55rem}.hero{padding:5rem 0 2.4rem;border-bottom:1px solid var(--line)}.hero .project{margin:0;font-family:"Source Serif 4",serif;font-size:clamp(3rem,7vw,7rem);line-height:.88;letter-spacing:-.06em}.hero h1{margin:.85rem 0 1.5rem;color:var(--sea);font-size:.85rem;letter-spacing:.2em;text-transform:uppercase}.hero>p:last-child{max-width:680px;margin:0;color:var(--muted);line-height:1.8}.video-block{padding:2.3rem 0 4rem}.vimeo{position:relative;aspect-ratio:16/9;background:#0a1112}.vimeo iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-fallback{position:absolute;right:1rem;bottom:1rem;padding:.7rem .8rem;background:#113f45f0;color:#fff;font-size:.75rem}.caption{max-width:800px;padding-top:1rem;color:var(--muted);line-height:1.7}.eyebrow{margin:0;font-size:.64rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--sea)}.statement{border-block:1px solid var(--line);background:var(--sand)}.two{display:grid;grid-template-columns:.45fr 1fr;gap:2rem;padding:4rem 0}.two h2,.section h2,.feature h2,.page h1,.contact h2,.empty h2{margin:0;font-family:"Source Serif 4",serif;font-weight:400;letter-spacing:-.045em;line-height:1.05}.two h2{font-size:clamp(2rem,4vw,4rem)}.section{padding:4rem 0}.section-head,.panel-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.6rem}.section h2{font-size:2.7rem;margin-top:.35rem}.text-link{display:inline-flex;align-items:center;gap:.35rem;margin-top:1rem;color:var(--sea);font-size:.75rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.film-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.film-card .poster{position:relative;aspect-ratio:16/9;margin-bottom:1rem;overflow:hidden;background:var(--deep)}.poster img{width:100%;height:100%;object-fit:cover}.poster span{position:absolute;right:.8rem;bottom:.8rem;display:grid;width:2.5rem;height:2.5rem;place-items:center;background:var(--paper);color:var(--deep)}.film-card h3{margin:.3rem 0;font-family:"Source Serif 4",serif;font-size:2rem;font-weight:400;letter-spacing:-.04em}.film-card>p:last-child{margin:0;color:var(--muted);font-size:.85rem;line-height:1.7}.feature{padding:clamp(2rem,5vw,5rem);background:var(--deep);color:#fff}.feature .eyebrow{color:#a9cdcf}.feature h2{max-width:750px;margin:.7rem 0;font-size:clamp(2.3rem,5vw,4.6rem)}.feature p:not(.eyebrow){max-width:740px;color:#d8e4e4;line-height:1.8}.light{color:#fff}.page{padding:3.5rem 0 5rem}.page-intro{display:grid;grid-template-columns:.4fr 1fr;gap:2rem;align-items:end;padding-bottom:3.5rem;border-bottom:1px solid var(--line)}.page-intro h1{font-size:clamp(2.7rem,5vw,5rem)}.page-intro div>p{max-width:680px;color:var(--muted);line-height:1.8}.filters{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:2rem 0;background:var(--line);border:1px solid var(--line)}.filters label,.filters button{display:grid;gap:.5rem;border:0;background:var(--sand);padding:1rem;text-align:left}.filters span{font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.filters select{border:0;background:transparent}.filters button{place-items:center;background:var(--sea);color:#fff;text-align:center;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.library{grid-template-columns:repeat(2,1fr);gap:2rem}.film-player{padding-bottom:1rem}.film-detail{display:grid;grid-template-columns:.4fr 1fr;gap:2rem;padding-bottom:5rem}.back{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.film-detail h1{margin:.5rem 0 1rem;font-family:"Source Serif 4",serif;font-size:clamp(3rem,6vw,5.5rem);font-weight:400;letter-spacing:-.05em}.lead{max-width:740px;color:var(--muted);font-size:1.1rem;line-height:1.85}.details{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin:2.5rem 0;border-top:1px solid var(--line);padding-top:1.5rem}.details dt{font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--sea)}.details dd{margin:.5rem 0 0;color:var(--muted);line-height:1.6}.managed{display:grid;grid-template-columns:.4fr 1fr;gap:2rem;border-bottom:1px solid var(--line);padding:4rem 0}.managed.with-image{grid-template-columns:.8fr .3fr .9fr}.managed-image{min-height:240px;background:linear-gradient(135deg,#edf3f2,var(--sand))}.managed-image img{width:100%;height:100%;object-fit:cover}.managed h2{margin:0;font-family:"Source Serif 4",serif;font-size:clamp(2rem,4vw,3.6rem);font-weight:400;letter-spacing:-.045em;line-height:1.05}.managed p:not(.eyebrow){color:var(--muted);line-height:1.85}.equipment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;border:1px solid var(--line);background:var(--line)}.equipment-card{min-height:320px;padding:2rem;background:var(--paper)}.equipment-card img{width:calc(100% + 4rem);height:180px;margin:-2rem -2rem 1.5rem;object-fit:cover}.equipment-card h2{margin:2.5rem 0 .7rem;font-family:"Source Serif 4",serif;font-size:2rem;font-weight:400;letter-spacing:-.04em}.equipment-card>p:not(.eyebrow){color:var(--muted);line-height:1.8}.contact,.empty{margin-top:3rem;padding:3rem;background:var(--sand)}.contact h2,.empty h2{max-width:820px;font-size:clamp(2rem,4vw,3.5rem)}.contact p,.empty p{color:var(--muted);line-height:1.8}.button{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--sea);background:var(--sea);padding:.75rem 1rem;color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.error{margin:1rem 0;color:#9a3838}.footer{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding:2.4rem 0}.footer strong{font-family:"Source Serif 4",serif;font-size:1.4rem}.footer p{margin:.4rem 0 0;color:var(--muted);font-size:.78rem}.footer>div:last-child{display:flex;align-items:end;gap:1rem;font-size:.75rem;color:var(--muted)}.login{display:grid;min-height:100vh;place-items:center;background:var(--sand)}.login>div{width:min(480px,calc(100% - 40px))}.login h1,.admin-head h1{margin:.7rem 0;font-family:"Source Serif 4",serif;font-size:clamp(3.2rem,6vw,5rem);font-weight:400;letter-spacing:-.05em;line-height:.92}.login p:not(.eyebrow),.admin-head p:not(.eyebrow){color:var(--muted);line-height:1.8}.login form{display:grid;gap:.8rem;margin-top:1.4rem}.login input,.fields input,.fields textarea,.fields select,.contact-setting input,.select select{width:100%;border:1px solid var(--line);background:#fff;padding:.75rem}.admin{padding:3rem 0 5rem}.tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:2rem 0}.tabs button{border:1px solid var(--line);background:transparent;padding:.65rem .8rem;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tabs .active{border-color:var(--sea);background:var(--sea);color:#fff}.notice{padding:.75rem;background:#e6f0ef;color:var(--sea)}.admin-panel{border:1px solid var(--line);padding:1.3rem}.panel-head h2,.editor h2{margin:.35rem 0;font-family:"Source Serif 4",serif;font-size:2.2rem;font-weight:400;letter-spacing:-.04em}.panel-head p:not(.eyebrow){max-width:640px;color:var(--muted);line-height:1.7}.admin-list article{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding:1rem 0}.admin-list h3{margin:.3rem 0}.admin-list p:not(.eyebrow){margin:0;color:var(--muted);font-size:.8rem}.admin-list button,.editor header button,.image-input button{border:1px solid var(--line);background:transparent;padding:.45rem;color:var(--sea)}.admin-list .danger{color:#9a3838}.editor{margin-top:1.5rem;border:1px solid var(--line);padding:1.2rem;background:var(--sand)}.editor header{display:flex;align-items:start;justify-content:space-between}.fields{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:1rem 0}.fields label,.image-input{display:grid;gap:.4rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.fields .wide{grid-column:span 2}.checks{display:flex;gap:1rem;grid-column:span 2}.checks label{display:flex;align-items:center;gap:.35rem}.actions{display:flex;justify-content:flex-end;gap:.6rem}.actions>button:first-child{border:1px solid var(--line);background:transparent;padding:.75rem}.image-input img{max-width:260px;max-height:170px;object-fit:cover}.empty-image{display:grid;min-height:80px;place-items:center;background:#fff}.contact-setting{margin:1rem 0}.contact-setting label,.select{display:grid;max-width:420px;gap:.5rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}@media (max-width:760px){.shell{width:min(100% - 28px,1180px)}.nav{min-height:63px}.menu{display:block}.nav nav{display:none}.nav nav.open{position:absolute;top:63px;left:0;right:0;display:grid;gap:0;border-bottom:1px solid var(--line);background:var(--paper);padding:1rem 14px}.nav nav.open a{padding:.6rem 0}.hero{padding-top:3rem}.two,.page-intro,.film-detail,.managed,.managed.with-image{grid-template-columns:1fr;gap:1rem}.two{padding:2.8rem 0}.film-grid,.library,.equipment-grid,.filters{grid-template-columns:1fr}.section,.managed{padding:3rem 0}.managed-image{min-height:200px}.footer{display:grid}.footer>div:last-child{align-items:start;flex-wrap:wrap}.fields{grid-template-columns:1fr}.fields .wide,.checks{grid-column:span 1}.admin-list article{align-items:start}.panel-head{align-items:start;flex-direction:column}}
