body.film-modal-open{overflow:hidden}.film-modal{width:min(1120px,94vw);max-width:none;max-height:94dvh;padding:0;border:0;background:#111;color:#eeede8;overflow:auto;overscroll-behavior:contain}.film-modal::backdrop{background:#000d}.film-modal-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 23px;font:400 9px 'IBM Plex Sans',Arial,sans-serif;letter-spacing:.08em}.film-modal-close{display:flex;align-items:center;gap:12px;padding:7px 0 7px 12px;border:0;background:none;color:inherit;font:400 11px 'IBM Plex Sans',Arial,sans-serif;cursor:pointer}.film-modal-close span{font:300 25px Arial,sans-serif;line-height:1}.film-modal-player{position:relative;aspect-ratio:var(--modal-ratio,16/9);background:#000;max-height:70dvh}.film-modal-player>iframe,.film-modal-player>video{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:contain;border:0}.film-modal-info{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;padding:27px 30px 22px}.film-modal-client{margin:0 0 10px;font:400 10px 'IBM Plex Sans',Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#b8bab4}.film-modal h2{margin:0;font:400 clamp(22px,3vw,37px)/1.1 'Archivo Black','Arial Black',sans-serif;letter-spacing:-.04em;text-transform:uppercase}.film-modal-role{font:400 11px/1.5 'IBM Plex Sans',Arial,sans-serif;margin:12px 0 0;color:#b8bab4}.film-modal-credits{display:flex;flex-direction:column;gap:13px;margin:0;align-self:start}.film-modal-credits>div{display:grid;grid-template-columns:70px 1fr;gap:15px}.film-modal-credits dt{font:400 10px/1.5 'IBM Plex Sans',Arial,sans-serif;color:#91938d}.film-modal-credits dd{font:400 12px/1.5 'IBM Plex Sans',Arial,sans-serif;margin:0}.film-modal-navigation{display:flex;justify-content:center;gap:35px;padding:12px 30px 25px}.film-modal-navigation button{border:0;padding:7px 0;background:none;color:#b8bab4;font:400 10px 'IBM Plex Sans',Arial,sans-serif;cursor:pointer}.film-modal button:hover{color:#fff}.film-modal button:focus-visible{outline:2px solid #fff;outline-offset:3px}.film-modal-error{padding:30px;font:400 13px/1.6 'IBM Plex Sans',Arial,sans-serif}.film-modal-error a{text-decoration:underline}.film-modal-loading{padding:35px;font:400 12px 'IBM Plex Sans',Arial,sans-serif}.project-link[aria-haspopup=dialog]{cursor:pointer}@media(max-width:650px){.film-modal{width:96vw;max-height:94dvh}.film-modal-bar{padding:12px 16px}.film-modal-info{grid-template-columns:1fr;padding:22px 18px 12px;gap:22px}.film-modal h2{font-size:25px}.film-modal-credits{gap:10px}.film-modal-player{max-height:60dvh}.film-modal-navigation{padding:12px 18px 20px}}
/* A floating, translucent player above the visible portfolio. */
.film-modal{width:min(1040px,90vw);max-height:88dvh;background:rgba(16,18,17,.64);border:1px solid rgba(255,255,255,.13);box-shadow:0 24px 100px rgba(0,0,0,.42);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.film-modal::backdrop{background:rgba(0,0,0,.38);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.film-modal-player{background:rgba(0,0,0,.65)}
.film-modal-bar{padding:13px 20px}
.film-modal-info{padding:24px 26px 18px}
@media(max-width:650px){.film-modal{width:94vw;max-height:90dvh}.film-modal-bar{padding:10px 15px}.film-modal-info{padding:20px 18px 12px}}
