:root{color-scheme:dark;--inset:0px;--radius:0px;--logo-y:0px;--logo-scale:1;--film-scale:1.045;--logo-alpha:1;--pad:6vw;--line:#292929;--muted:#929292}*{box-sizing:border-box}html{scroll-behavior:smooth;background:#000;scroll-padding-top:110px}body{margin:0;background:#000;color:#f3f3f1;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}body.is-opening,body.dialog-open{overflow:hidden}a,button{-webkit-tap-highlight-color:transparent;color:inherit}a{text-decoration:none}button{border:0;background:none;font:inherit;cursor:pointer;padding:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:1px solid white;outline-offset:6px}button svg,a svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}[hidden]{display:none!important}::selection{background:#fff;color:#000}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;color:#000;background:#fff;padding:14px}.skip-link:focus{top:20px}.site-header{position:fixed;z-index:8;top:0;left:0;right:0;padding:22px 34px;display:flex;align-items:center;justify-content:space-between;pointer-events:none;transition:opacity .7s;mix-blend-mode:screen}.site-header>*{pointer-events:auto}.site-header nav{display:flex;align-items:center;gap:30px}.site-header nav a{font-size:14px;position:relative;padding:10px 0;text-shadow:0 1px 12px #000}.site-header nav a:after{content:'';position:absolute;bottom:3px;height:1px;background:currentColor;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .3s}.site-header nav a[aria-current],.site-header nav a:hover{color:white}.site-header nav a[aria-current]:after,.site-header nav a:hover:after{transform:scaleX(1)}.home-mark{width:58px;height:52px;display:grid;place-items:center}.home-mark img{width:100%;filter:grayscale(1) invert(1) contrast(1.7);mix-blend-mode:screen}body[data-page=home] .site-header{opacity:0}.film-scroll{height:180svh;position:relative}.film-sticky{position:sticky;top:0;height:100svh;overflow:hidden}.film-frame{position:absolute;inset:var(--inset);border-radius:var(--radius);overflow:hidden;background:#050505;opacity:0;will-change:inset,border-radius}.film-frame video{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transform:scale(var(--film-scale));will-change:transform}.film-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0007,transparent 35%,#0002 60%,#0008);pointer-events:none}.logo-overlay{position:absolute;left:50%;top:50%;width:clamp(288px,38.4vw,624px);transform:translate(-50%,calc(-50% + var(--logo-y))) scale(var(--logo-scale));transform-origin:center;opacity:var(--logo-alpha);pointer-events:none;will-change:transform,opacity;mix-blend-mode:screen}.logo-overlay img{display:block;width:100%;filter:grayscale(1) invert(1) contrast(1.8);mix-blend-mode:screen}.logo-overlay p{font-size:clamp(13px,1.1vw,16px);font-weight:400;letter-spacing:.12em;margin:-3% 0 0;text-align:center;white-space:nowrap}.logo-overlay p span{margin:0 10px;color:#bcbcbc}.film-controls{position:absolute;right:34px;bottom:32px;display:flex;gap:10px}.film-controls button{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#0002;backdrop-filter:blur(7px);transition:background .25s,transform .25s}.film-controls button:hover{background:#0007;transform:scale(1.08)}.sound-on{display:none}[aria-pressed=true] .sound-on{display:block}[aria-pressed=true] .sound-off{display:none}.scroll-cue{position:absolute;left:36px;bottom:36px;display:grid;place-items:center;width:36px;height:36px;transition:transform .3s}.scroll-cue:hover{transform:translateY(5px)}.enter{position:absolute;left:50%;top:72%;transform:translate(-50%,-50%);padding:14px 24px;border:1px solid #ffffff80;border-radius:30px;backdrop-filter:blur(10px);font-size:14px}.video-error{position:absolute;bottom:90px;left:30px;font-size:14px}.section{padding:65px var(--pad)}.section-heading{display:flex;justify-content:space-between;gap:25px;align-items:baseline;margin-bottom:36px}.section-heading h1,.section-heading h2{font-size:clamp(26px,3vw,44px);font-weight:400;letter-spacing:-.04em;margin:0}.section-heading p,.library-note{font-size:14px;color:var(--muted);margin:13px 0 0}.text-link{font-size:14px;display:inline-block;border-bottom:1px solid #555;padding:0 0 7px;transition:border-color .3s}.text-link:hover{border-color:white}.eyebrow{font-size:12px;font-weight:400;letter-spacing:.13em;color:#999}.project-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:65px 4vw;align-items:start}.project-card{display:block;position:relative;text-align:left;width:100%}.project-card:nth-child(even){margin-top:110px}.project-image{overflow:hidden;aspect-ratio:1.3;background:#111;position:relative}.project-card:nth-child(even) .project-image{aspect-ratio:1}.project-image img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .6s}.project-card:hover img{transform:scale(1.035);filter:grayscale(0)}.project-arrow{position:absolute;right:20px;bottom:18px;font-size:28px;opacity:0;transform:translate(-6px,6px);transition:opacity .3s,transform .3s}.project-card:hover .project-arrow,.project-card:focus-visible .project-arrow{opacity:1;transform:translate(0)}.project-meta{display:flex;justify-content:space-between;gap:20px;padding-top:17px;font-size:15px}.project-meta small{font-size:12px;color:#777}.selected{padding-bottom:90px}.home-studio{margin-top:30px;padding-top:80px;padding-bottom:100px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr auto;gap:20px;align-items:center}.home-studio h2{font-size:clamp(36px,5vw,76px);font-weight:400;letter-spacing:-.05em;line-height:1.08;margin:0}.circle-link{width:70px;height:70px;border:1px solid #444;border-radius:50%;display:grid;place-items:center;font-size:32px;transition:color .3s,background .3s}.circle-link:hover{background:white;color:#000}.page-intro{padding-top:175px;padding-bottom:65px}.page-intro h1{font-size:clamp(60px,8.4vw,132px);letter-spacing:-.065em;line-height:.99;font-weight:400;margin:42px 0 0}.page-intro em{font-style:normal;color:#777}.filter-bar{display:flex;gap:34px;border-bottom:1px solid var(--line);padding-bottom:20px;flex-wrap:wrap}.filter-bar button{font-size:14px;color:#929292;position:relative;min-height:30px}.filter-bar button[aria-pressed=true]{color:white}.filter-bar button[aria-pressed=true]:after{content:'';position:absolute;bottom:-21px;left:0;right:0;height:1px;background:white}.filter-bar sup{font-size:10px;margin-left:5px}.library-note{margin:22px 0 36px}.work-library{padding-top:0;padding-bottom:110px}.filter-empty{min-height:340px;border-bottom:1px solid var(--line);padding:90px 0}.filter-empty>span{font-size:clamp(30px,4vw,56px);letter-spacing:-.04em}.filter-empty p{font-size:16px;color:#888;margin-bottom:30px}.studio-about{display:grid;grid-template-columns:1fr 2fr;gap:35px;border-top:1px solid var(--line);padding-top:70px;padding-bottom:95px}.studio-about .large-copy{font-size:clamp(30px,3.4vw,52px);letter-spacing:-.04em;line-height:1.15;margin:0 0 30px;max-width:680px}.studio-about p:not(.large-copy){font-size:18px;line-height:1.7;color:#999;max-width:560px;margin:0}.services{background:#eeeeea;color:#111;padding-top:80px;padding-bottom:85px}.services .eyebrow{color:#777}.services details{border-top:1px solid #bbb}.services details:last-child{border-bottom:1px solid #bbb}.services summary{list-style:none;display:grid;grid-template-columns:80px 1fr auto;align-items:center;cursor:pointer;padding:30px 0;gap:10px}.services summary::-webkit-details-marker{display:none}.services summary>span{font-size:12px;color:#777}.services h3{font-weight:400;font-size:clamp(24px,3vw,44px);letter-spacing:-.04em;margin:0}.services summary b{font-size:26px;font-weight:400;transition:transform .3s}.services details[open] summary b{transform:rotate(45deg)}.services details>p{margin:0 0 32px 90px;max-width:600px;font-size:16px;line-height:1.6;color:#555}.process{padding-top:95px;padding-bottom:110px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:70px}.process article{border-top:1px solid var(--line);padding-top:22px}.process article>span{font-size:12px;letter-spacing:.07em;color:#888}.process h3{font-size:29px;font-weight:400;letter-spacing:-.035em;margin:35px 0 20px}.process p{font-size:16px;line-height:1.6;color:#999;max-width:280px}.contact-intro{padding-bottom:75px}.contact-details{padding-top:0;padding-bottom:120px;max-width:1100px}.contact-note{font-size:14px;color:#888;margin:0 0 35px}.contact-details dl{margin:0}.contact-details dl>div{display:grid;grid-template-columns:1fr 2fr;border-top:1px solid var(--line);padding:27px 0;gap:30px}.contact-details dt{font-size:14px;color:#888}.contact-details dd{margin:0;font-size:clamp(20px,2.4vw,34px);letter-spacing:-.03em;overflow-wrap:anywhere;display:flex;gap:20px;flex-wrap:wrap}.contact-details a:hover{text-decoration:underline;text-underline-offset:5px}.pending{color:#555}footer{margin:0 var(--pad);border-top:1px solid var(--line)}.footer-contact{display:flex;justify-content:space-between;align-items:center;font-size:clamp(45px,7vw,105px);letter-spacing:-.06em;padding:60px 0}.footer-contact span{font-size:.7em;transition:transform .4s}.footer-contact:hover span{transform:translate(6px,-6px)}.footer-bottom{border-top:1px solid var(--line);padding:18px 0 30px;display:flex;align-items:center;justify-content:space-between}.footer-bottom img{width:145px;filter:grayscale(1) invert(1) contrast(1.7)}.footer-bottom span{font-size:12px;letter-spacing:.12em;color:#666}.footer-bottom>a{font-size:24px;padding:12px}body[data-page=contact] .footer-contact{display:none}.opening{position:fixed;inset:0;z-index:20;background:#000;touch-action:none}.opening canvas{display:block;width:100%;height:100%}.portal-hit{position:absolute;width:var(--portal-size,650px);height:calc(var(--portal-size,650px)*.68);left:50%;top:50%;transform:translate(-50%,-50%);border:0;cursor:crosshair;outline-offset:20px!important}.portal-hit:disabled{cursor:default}.portal-label{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:20px;font-size:14px;letter-spacing:.1em;opacity:0;transition:opacity .5s;white-space:nowrap;padding:12px 0}.portal-label:after{content:'';position:absolute;bottom:0;height:1px;background:#fff;width:100%;left:0;transform:scaleX(var(--hover-progress,0));transform-origin:left}.opening[data-state=ready] .portal-label{opacity:.85}.portal-hint{position:absolute;bottom:42px;left:50%;transform:translateX(-50%);font-size:12px;letter-spacing:.08em;color:#777;white-space:nowrap;opacity:0;transition:opacity .4s}.opening[data-state=ready] .portal-hint{opacity:1}.portal-hint span{display:none}.portal-signature{position:absolute;left:34px;top:32px;font-size:17px;letter-spacing:-.04em;color:#777}.portal-static{display:none}.opening[data-state=entering] .portal-label,.opening[data-state=entering] .portal-signature{opacity:0}.film-frame:fullscreen{inset:0!important;border-radius:0!important;height:100%;width:100%;opacity:1!important}.film-frame:fullscreen .logo-overlay{transform:translate(-50%,-50%);opacity:1}.film-frame:fullscreen .scroll-cue{display:none}dialog{width:min(1200px,94vw);max-height:94svh;padding:20px;background:#080808;color:#fff;border:1px solid #333}dialog::backdrop{background:#000e;backdrop-filter:blur(12px)}.dialog-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.dialog-bar h2{font-size:14px;font-weight:400;margin:0}.dialog-bar button{font-size:14px;padding:8px}dialog video{display:block;width:100%;max-height:77svh;aspect-ratio:16/9;background:#000}.no-script{padding:20px;color:#999}@media(max-width:700px){:root{--pad:22px}.site-header{padding:15px 18px}.home-mark{width:44px;height:44px}.site-header nav{gap:17px}.site-header nav a{font-size:12px}.film-scroll{height:150svh}.logo-overlay{width:336px;max-width:98vw}.logo-overlay p{font-size:13px;letter-spacing:.06em}.logo-overlay p span{margin:0 7px}.film-controls{right:16px;bottom:22px}.scroll-cue{left:20px;bottom:26px}.section{padding-top:48px;padding-bottom:48px}.section-heading{gap:12px;margin-bottom:25px}.section-heading h1,.section-heading h2{font-size:28px}.text-link{font-size:13px;white-space:nowrap}.project-grid{grid-template-columns:1fr;gap:32px}.project-card:nth-child(n){margin:0}.project-card:nth-child(n) .project-image{aspect-ratio:1.35}.project-arrow{opacity:1;transform:none}.home-studio{grid-template-columns:1fr auto;gap:35px;padding-top:50px;padding-bottom:65px}.home-studio .eyebrow{grid-column:1/-1}.home-studio h2{font-size:38px}.circle-link{width:52px;height:52px;font-size:25px}.page-intro{padding-top:135px;padding-bottom:48px}.page-intro h1{font-size:clamp(46px,11vw,76px);margin-top:30px}.filter-bar{gap:10px 22px;padding-bottom:16px}.filter-bar button{font-size:13px}.filter-bar button[aria-pressed=true]:after{bottom:-4px}.work-library{padding-top:0}.studio-about{grid-template-columns:1fr;gap:30px}.studio-about p:not(.large-copy){font-size:16px}.services summary{grid-template-columns:35px 1fr auto;padding:25px 0}.services details>p{margin-left:45px}.process-grid{grid-template-columns:1fr;gap:30px;margin-top:35px}.process h3{margin-top:25px}.process p{max-width:none}.contact-details dl>div{grid-template-columns:90px 1fr;gap:20px}.contact-details dd{font-size:22px}.footer-contact{padding:42px 0}.footer-bottom img{width:120px}.footer-bottom span{font-size:10px}.portal-signature{left:24px;top:28px}.portal-hint{bottom:30px}.portal-label{top:calc(100% + 5px)}dialog{padding:13px}.dialog-bar{margin-bottom:10px}}@media(hover:none){.portal-hint{font-size:0}.portal-hint span{display:inline;font-size:12px}.portal-hit{cursor:pointer}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.film-scroll{height:100svh}.film-frame video{transform:none}.opening canvas{display:none}.portal-static{display:block;position:absolute;width:var(--portal-size);left:50%;top:50%;transform:translate(-50%,-50%);filter:grayscale(1) invert(1) contrast(1.7)}}
