@font-face{font-family:Geist;src:url('/assets/geist.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
:root{--paper:#fafafa;--ink:#18181b;--secondary:#62626a;--line:#e8e8ed;--focus:#545c94}
html{background:var(--paper);color:var(--ink);color-scheme:light;scroll-behavior:smooth;scroll-padding-top:120px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Geist,Arial,sans-serif;font-size:16px;line-height:1.5;min-width:320px;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}h1,h2,p{margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:default}:focus-visible{outline:2px solid var(--focus);outline-offset:5px}::selection{background:#dcdde9;color:var(--ink)}button{border:0;background:none;color:inherit}img,video{max-width:100%;display:block}main{min-height:60vh}
.skip-link{position:fixed;top:-80px;left:20px;background:var(--ink);color:white;padding:12px 20px;z-index:1000}.skip-link:focus{top:12px}
.site-header{height:108px;display:flex;justify-content:center;align-items:center;gap:9px;position:relative;z-index:30}
.brand-mark{width:52px;height:52px;border-radius:50%;background:white;display:flex;justify-content:center;align-items:center;font-size:35px;letter-spacing:-4px;font-weight:650;padding-right:4px;box-shadow:0 3px 20px #18181b08;border:1px solid #ededf0;transition:transform .3s}.brand-mark:hover{transform:rotate(-9deg)}.brand-mark span{font-size:28px}
.site-header nav{display:flex;align-items:center;gap:4px;padding:7px 9px;border:1px solid #ededf0;border-radius:40px;background:#fffffff5;box-shadow:0 3px 20px #18181b06}
.site-header nav a{padding:9px 16px;font-size:14px;color:#71717a;white-space:nowrap;transition:color .2s}.site-header nav a.current,.site-header nav a:hover{color:var(--ink)}.nav-label{display:block;height:21px;overflow:hidden}.nav-label>span{display:block;transition:transform .35s cubic-bezier(.22,1,.36,1)}nav a:hover .nav-label>span{transform:translateY(-100%)}
.intro{text-align:center;padding:55px 24px 65px}.intro-brand{font-size:16px;font-weight:500;letter-spacing:-.04em;margin-bottom:20px}.intro h1,.assets-intro h1,.contact-copy h1{font-size:clamp(46px,5.2vw,76px);line-height:1.02;letter-spacing:-.067em;font-weight:500}.intro h1 span,.assets-intro h1 span,.contact-copy h1 span{color:#85858e}.intro-description{font-size:16px;line-height:1.55;color:var(--secondary);margin-top:24px;letter-spacing:-.018em}
.gallery{max-width:1480px;padding:0 48px;margin:0 auto}.gallery-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;font-size:14px}.gallery-heading p span{color:#8a8a94;margin-left:7px;font-size:12px}.preview-toggle{font-size:13px;color:var(--secondary);padding:8px 0 8px 10px}.preview-toggle span{margin-left:10px;font-size:15px}.preview-toggle:hover{color:var(--ink)}
.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px 28px}.project:first-child,.project:last-child{grid-column:1/-1}.project:last-child{width:81%;justify-self:center;margin-top:20px}.film-frame{aspect-ratio:16/9;position:relative;border-radius:18px;overflow:hidden;background:#efeff3;isolation:isolate}.film-frame video{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.film-frame:hover video{transform:scale(1.015)}.film-open{position:absolute;inset:0;width:100%;height:100%;display:flex;justify-content:flex-end;align-items:flex-end;padding:22px}.film-open-label{font-size:14px;background:#fffffff2;color:var(--ink);padding:10px 15px;border-radius:30px;box-shadow:0 2px 10px #00000008;transition:transform .3s,opacity .3s}.film-open-label span{margin-left:15px}.film-open:active .film-open-label{transform:scale(.97)}.project-caption{display:flex;align-items:start;justify-content:space-between;padding:16px 3px 0}.project-caption h2{font-size:18px;font-weight:500;letter-spacing:-.035em}.project-caption p{font-size:14px;color:var(--secondary);margin-top:2px}.duration{font-size:12px;color:#808089;font-variant-numeric:tabular-nums;padding-top:3px}
.closing{text-align:center;padding:160px 24px 150px}.closing>p{font-size:16px;color:var(--secondary);margin-bottom:10px}.closing>a{font-size:clamp(34px,5vw,64px);letter-spacing:-.055em;font-weight:450;display:inline-block}.closing>a>span{display:inline-block;margin-left:20px;transition:transform .35s}.closing>a:hover>span{transform:translate(5px,-5px)}
.site-footer{max-width:1480px;margin:0 auto;padding:0 48px 24px}.footer-top{display:grid;grid-template-columns:1fr 1fr auto;border-top:1px solid var(--line);padding:38px 0 65px;gap:30px;font-size:14px;line-height:1.7}.footer-top p span{color:var(--secondary)}.footer-label{display:block;font-size:13px;color:#81818a;margin-bottom:5px}.footer-top a{transition:color .2s}.footer-top a:hover{color:var(--focus)}.footer-top a span{margin-left:14px}.footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.footer-wordmark{font-size:clamp(52px,14.2vw,202px);font-weight:500;line-height:1.05;letter-spacing:-.08em;display:flex;align-items:flex-start;white-space:nowrap;position:relative}.footer-wordmark>span{font-size:.14em;letter-spacing:0;margin-left:.4em;margin-top:1.2em}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#71717a;padding-top:28px}.footer-bottom a{color:var(--ink)}
.custom-cursor{position:fixed;left:0;top:0;width:28px;height:28px;z-index:900;pointer-events:none;opacity:0;display:grid;place-items:center;transition:opacity .12s;will-change:transform}.custom-cursor img{width:100%;height:100%;object-fit:contain;transition:transform .2s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 1px 1px #00000018)}.custom-cursor[data-kind=link] img{transform:scale(1.12)}.custom-cursor.is-pressed img{transform:scale(.85)}
@media(pointer:fine) and (prefers-reduced-motion:no-preference){html.cursor-ready,html.cursor-ready *{cursor:none!important}.cursor-ready input,.cursor-ready textarea,.cursor-ready [contenteditable="true"]{cursor:text!important}.cursor-ready select,.cursor-ready dialog,.cursor-ready dialog *{cursor:auto!important}.film-open-label{opacity:0;transform:translateY(8px)}.film-frame:hover .film-open-label,.film-open:focus-visible .film-open-label{opacity:1;transform:translateY(0)}}
.film-dialog{padding:0;border:none;margin:auto;width:min(94vw,1280px);max-width:none;max-height:92dvh;border-radius:18px;background:#161619;color:white;overflow:auto;box-shadow:0 20px 100px #0005}.film-dialog::backdrop{background:#111119dc;backdrop-filter:blur(8px)}.player-header{display:flex;justify-content:space-between;align-items:center;padding:18px 24px}.player-header h2{font-size:16px;font-weight:450}.player-header button{font-size:14px;color:#ddd;display:flex;gap:16px;align-items:center;min-height:36px}.player-header button span{font-size:26px}.player-shell>video{width:100%;max-height:75dvh;background:#111;object-fit:contain}.player-shell>p{padding:18px}.player-shell>p a{text-decoration:underline}
.assets-page{max-width:1220px;margin:0 auto;padding:65px 48px 130px}.assets-intro{text-align:center;padding-bottom:65px}.assets-intro p{color:var(--secondary);margin-top:24px}.assets-empty{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:80px 70px;display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:center}.empty-mark{font-size:190px;font-weight:550;letter-spacing:-.08em;line-height:1;text-align:center}.empty-mark span{color:#b8b8c0}.coming-soon{color:var(--secondary);font-size:14px;margin-bottom:12px}.assets-empty h2{font-size:30px;font-weight:450;line-height:1.2;letter-spacing:-.04em;margin-bottom:15px}.assets-empty p:not(.coming-soon){color:var(--secondary);font-size:16px}.assets-contact{display:inline-block;margin-top:26px;font-size:15px;border-bottom:1px solid #a6a6ae;padding-bottom:4px}.assets-contact span{margin-left:26px;display:inline-block;transition:transform .3s}.assets-contact:hover span{transform:translate(3px,-3px)}
.contact-page{max-width:1220px;margin:auto;padding:85px 48px 150px;display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-copy>p{color:var(--secondary);margin-top:28px}.contact-email{display:inline-block;font-size:15px;margin-top:45px;overflow-wrap:anywhere}.contact-email span{margin-left:10px}.contact-form-section label{display:block;font-size:14px;font-weight:450;margin-bottom:22px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.optional{color:var(--secondary);font-size:12px;font-weight:400}.contact-form-section input,.contact-form-section select,.contact-form-section textarea{width:100%;margin-top:8px;border:1px solid #e5e5eb;background:#f4f4f6;border-radius:10px;padding:13px 14px;outline-offset:2px;font-size:15px;color:var(--ink);transition:border-color .2s;box-shadow:none}.contact-form-section textarea{resize:vertical;min-height:136px}.contact-form-section input::placeholder,.contact-form-section textarea::placeholder{color:#777780}.contact-form-section select{min-height:50px;appearance:auto}.submit-brief{display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px 20px;border-radius:10px;background:var(--ink);color:#fff;font-size:15px;transition:background .2s,transform .2s}.submit-brief:hover{background:#33333b}.submit-brief:active{transform:scale(.99)}.form-note{font-size:13px;color:var(--secondary);margin-top:13px;line-height:1.6}.draft-result{margin-top:26px;border-top:1px solid var(--line);padding-top:24px}.draft-result h2{font-size:20px;font-weight:500}.draft-result p{font-size:14px;color:var(--secondary);margin:12px 0}.draft-result p a{text-decoration:underline;overflow-wrap:anywhere}.copy-brief{border:1px solid #ddd;padding:9px 15px;border-radius:8px;font-size:14px}.draft-result details{font-size:14px;margin-top:18px}.draft-result pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;padding:15px;background:#f0f0f3}.error-page{text-align:center;padding:160px 24px;display:flex;flex-direction:column;align-items:center;gap:25px}.error-page h1{font-size:48px;letter-spacing:-.05em}.error-page a,.error-page button{text-decoration:underline}
@media(min-width:1600px){.footer-wordmark{font-size:202px}}@media(max-width:900px){.gallery,.site-footer{padding-left:28px;padding-right:28px}.contact-page{gap:42px;padding:60px 28px 100px}.contact-copy h1{font-size:56px}.form-row{grid-template-columns:1fr;gap:0}.assets-empty{gap:30px;padding:55px 25px}.assets-page{padding-left:28px;padding-right:28px}.footer-top{grid-template-columns:1fr 1fr}.footer-nav{grid-column:2;grid-row:1/3;justify-self:end}.footer-top>div:not(.footer-nav){grid-column:1}.project-grid{gap:42px 20px}}
@media(max-width:600px){.site-header{height:88px;gap:7px}.brand-mark{width:43px;height:43px;font-size:30px}.site-header nav{padding:4px 6px}.site-header nav a{padding:8px 12px;font-size:13px}.intro{padding:42px 20px 44px}.intro-brand{font-size:14px;margin-bottom:18px}.intro h1{font-size:58px}.intro-description{font-size:15px;margin-top:20px}.gallery,.site-footer{padding-left:18px;padding-right:18px}.gallery-heading{font-size:13px;margin-bottom:12px}.preview-toggle{font-size:12px}.project-grid{grid-template-columns:1fr;gap:34px}.project:first-child,.project:last-child{grid-column:auto}.project:last-child{width:100%;margin-top:0}.film-frame{border-radius:12px}.film-open{padding:12px}.film-open-label{font-size:12px;padding:7px 11px}.project-caption{padding-top:12px}.project-caption h2{font-size:17px}.project-caption p{font-size:13px}.closing{padding:94px 20px}.closing>a{font-size:43px}.closing>p{font-size:14px}.footer-top{padding:27px 0 44px;font-size:13px;gap:24px 12px}.footer-top>div:not(.footer-nav) a{font-size:12px}.footer-wordmark{font-size:14vw}.footer-bottom{font-size:11px;padding-top:22px;gap:8px}.footer-bottom>span:nth-child(2){display:none}.assets-page{padding:45px 22px 85px}.assets-intro{padding-bottom:42px}.assets-intro h1{font-size:50px}.assets-empty{grid-template-columns:1fr;text-align:center;gap:30px;padding:44px 12px}.empty-mark{font-size:115px}.assets-empty h2{font-size:26px}.assets-empty p:not(.coming-soon){font-size:15px}.contact-page{padding:45px 22px 90px;display:block}.contact-copy h1{font-size:58px}.contact-copy>p{font-size:15px}.contact-email{margin-top:25px;font-size:14px}.contact-form-section{margin-top:48px}.form-row{grid-template-columns:1fr}.contact-form-section input,.contact-form-section textarea,.contact-form-section select{font-size:16px}.film-dialog{width:96vw;border-radius:12px}.player-header{padding:12px 16px}.player-shell>video{max-height:78dvh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.custom-cursor{display:none}.film-open-label{opacity:1;transform:none}}

[hidden]{display:none!important}


.form-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.submit-brief:disabled{opacity:.65;cursor:wait}.form-result{margin-top:20px;padding:18px;border-radius:10px;font-size:14px;background:#edf5ee;color:#25442b}.form-result[data-kind=error]{background:#fff0ed;color:#803a2d}
