:root{--paper:#f7f7f5;--ink:#151515;--muted:#656565;--line:#cececb;--font:"Helvetica Neue",Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{scrollbar-gutter:stable;scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}::selection{background:var(--ink);color:var(--paper)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:5px}.wrap{width:100%;max-width:1560px;margin-inline:auto;padding-inline:48px}.skip{position:absolute;top:-100px;left:20px;z-index:50;padding:16px;background:var(--paper)}.skip:focus{top:12px}.topbar{min-height:83px;display:flex;align-items:center;justify-content:flex-end;gap:24px}.identity{font-size:13px;font-weight:500}nav{display:flex;gap:30px;font-size:14px}nav a{padding-block:12px}nav a:hover,footer a:hover{text-decoration:underline;text-underline-offset:5px}.introduction{padding:17px 0 49px}h1{margin:0 0 0 -.065em;font-size:clamp(80px,16.8vw,260px);font-weight:800;letter-spacing:-.065em;line-height:.87;white-space:nowrap}.section-line{border-top:1px solid var(--ink);padding-top:24px;margin-bottom:30px}.section-line h2{margin:0;font-size:32px;font-weight:500;letter-spacing:-.035em;line-height:1.15}.featured{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(0,1fr);gap:48px;align-items:stretch}.poster{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;overflow:hidden;background:#dededb;text-align:left}.poster img{position:relative;display:block;width:100%;height:100%;object-fit:cover}.featured-poster{aspect-ratio:4/3}.featured-poster img{object-fit:contain}.feature-copy{display:flex;flex-direction:column;align-items:flex-start;padding-top:4px}.eyebrow{margin:0;font-size:14px;line-height:1.5;color:var(--muted)}.feature-copy h3{margin:33px 0 25px;font-size:clamp(32px,3.5vw,52px);line-height:.99;font-weight:600;letter-spacing:-.055em}.logline{max-width:280px;font-size:16px;line-height:1.6;margin:0 0 22px}.credit{font-size:14px;line-height:1.6;color:var(--muted);margin:0;max-width:245px}.project-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.directing-grid{margin-top:58px}.project-label{display:flex;justify-content:space-between;align-items:flex-end;gap:15px;padding-top:17px}.project-label .eyebrow{margin-bottom:7px}.project h3{margin:0;font-size:clamp(22px,2.25vw,33px);letter-spacing:-.04em;font-weight:500;line-height:1.12}.role{color:var(--muted);font-size:14px;white-space:nowrap;padding-bottom:3px}.play-icon{display:inline-block;width:20px;height:20px;fill:currentColor}.watch-label{position:absolute;top:20px;right:20px;display:flex;align-items:center;gap:10px;min-height:44px;padding:12px 16px;color:#fff;background:#151515eb;font-size:14px;font-weight:500;line-height:20px;white-space:nowrap;pointer-events:none;transition:background .18s,color .18s}.watch-label .play-icon{width:14px;height:14px;flex:none}.featured-poster:focus-visible .watch-label{background:#fff;color:var(--ink)}@media(hover:hover){.featured-poster:hover .watch-label{background:#fff;color:var(--ink)}}.thumbnail-fallback{position:absolute;inset:0;display:grid;place-items:center;background:#dededb;color:var(--ink);font-size:54px;font-weight:700;letter-spacing:-.065em}.editing-section{margin-top:112px}.project-note{font-size:14px;line-height:1.6;color:var(--muted);margin:15px 0 0}.contact-section{border-top:1px solid var(--ink);margin-top:100px;padding:35px 0 76px;display:flex;align-items:baseline;justify-content:space-between;gap:30px}.contact-section h2{font-size:clamp(40px,5vw,70px);font-weight:500;letter-spacing:-.055em;margin:0}.email{font-size:clamp(19px,2.5vw,33px);letter-spacing:-.04em;line-height:1.5;border-bottom:1px solid transparent}.email span{margin-left:14px}.email:hover{border-color:currentColor}footer{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;font-size:12px}footer:before{content:"";position:absolute;top:0;left:48px;right:48px;height:1px;background:var(--line)}.preview-note{color:var(--muted)}body.film-open{position:fixed;width:100%;overflow:hidden}
@media(max-width:980px){.wrap{padding-inline:32px}.featured{gap:30px;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}.feature-copy h3{margin:23px 0 19px;font-size:34px}footer:before{left:32px;right:32px}}
@media(max-width:680px){.watch-label{top:14px;right:14px}.wrap{padding-inline:22px}.topbar{min-height:72px;gap:10px}.identity{font-size:11px}nav{gap:20px;font-size:14px}.introduction{padding:20px 0 35px}h1{font-size:16.5vw;letter-spacing:-.065em}.section-line{padding-top:20px;margin-bottom:26px}.section-line h2{font-size:28px}.featured{grid-template-columns:1fr;gap:22px}.feature-copy{display:block;padding:0}.feature-copy h3{margin:14px 0 17px;font-size:clamp(34px,7.4vw,46px)}.feature-copy h3 br{display:none}.feature-copy h3 br:after{content:" "}.logline{max-width:365px;margin-bottom:16px}.credit{max-width:none}.project-grid{gap:35px;grid-template-columns:1fr}.directing-grid{margin-top:45px}.project h3{font-size:25px}.project-label{padding-top:14px}.editing-section{margin-top:76px}.contact-section{margin-top:65px;padding:28px 0 48px;flex-direction:column;gap:19px}.contact-section h2{font-size:44px}.email{font-size:23px}.preview-note{display:none}footer{min-height:70px}footer:before{left:22px;right:22px}}
@media(max-width:360px){.wrap{padding-inline:18px}nav{gap:12px}.identity{font-size:10px}.feature-copy h3{font-size:31px}.project h3{font-size:22px}.email{font-size:21px}footer:before{left:18px;right:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* The film uses the full browser viewport; native fullscreen stays optional. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.film-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100vh;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#000;color:#fff;overflow:hidden;overscroll-behavior:contain}
.film-dialog[open]{display:flex;flex-direction:column}
html:has(.film-dialog[open]){background:#000}
.film-dialog::backdrop{background:#000}
.film-toolbar{display:flex;justify-content:flex-end;flex:none;padding:env(safe-area-inset-top,0px) max(16px,env(safe-area-inset-right,0px)) 0 max(16px,env(safe-area-inset-left,0px))}
.close-film{display:flex;align-items:center;justify-content:center;gap:12px;min-width:80px;min-height:48px;padding:0 8px;border:0;background:transparent;color:#fff;font-size:14px}
.close-film span{font-size:26px;line-height:1}
.close-film:hover{color:#bcbcbc}
.close-film:focus-visible{outline:1px solid #fff;outline-offset:-4px}
.film-stage{flex:1;min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;padding:0 env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}
.film-dialog video{display:block;width:100%;height:100%;min-height:0;object-fit:contain;background:#000}
.player-error{flex:none;margin:0;padding:12px 20px max(16px,env(safe-area-inset-bottom,0px));font-size:13px;line-height:1.5;text-align:center}
.player-error a{text-decoration:underline;text-underline-offset:3px}

.corner-play{position:absolute;right:14px;bottom:14px;width:36px;height:36px;background:#fff;display:grid;place-items:center;font-size:23px;pointer-events:none;transition:color .18s,background .18s}.poster:focus-visible .corner-play{background:var(--ink);color:#fff}@media(hover:hover){.poster:hover .corner-play{background:var(--ink);color:#fff}}

/* Draw arrows consistently instead of using emoji-capable font characters. */
.arrow-icon{display:inline-block;width:1em;height:1em;vertical-align:-.1em;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:square;stroke-linejoin:miter}.corner-play .arrow-icon{display:block;width:23px;height:23px}
