:root{--sans: "Archivo", "Helvetica Neue", Arial, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace;--gutter: clamp(16px, 2.2vw, 32px);--ease: cubic-bezier(.2, .7, .1, 1);--light-bg: #ebe3d3;--dark-bg: #070707}body[data-theme=light]{--fg: #1f1710;--muted: rgba(31, 23, 16, .5);--line: rgba(31, 23, 16, .25);--accent: #a9571a;--bg: var(--light-bg)}body[data-theme=dark]{--fg: #ededea;--muted: rgba(237, 237, 234, .45);--line: rgba(237, 237, 234, .2);--bg: var(--dark-bg)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--bg);color:var(--fg);font:400 15px/1.5 var(--sans);-webkit-font-smoothing:antialiased;overflow:hidden;overscroll-behavior:none;transition:background-color .4s}body.scrolls{overflow:auto;overflow-x:hidden;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}h1,h2,h3,p{margin:0}:focus-visible{outline:1px solid var(--fg);outline-offset:4px}.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;left:12px;top:-60px;z-index:100;background:var(--fg);color:var(--bg);padding:8px 12px;font:600 12px var(--mono)}.skip-link:focus{top:12px}.chrome,.chapters,.corner,.kicker,.tab,.item,.caption,.count,.w,.pager span,.meta dt,.open-hint,.all-work{font-family:var(--sans);font-stretch:112%;font-weight:600;text-transform:uppercase;letter-spacing:.08em}#gl{position:fixed;inset:0;width:100%;height:100%;display:block;z-index:0}body[data-gl="0"] #gl{visibility:hidden}#page{position:relative;z-index:1;min-height:100%;outline:none}.page{position:fixed;inset:0;overflow:hidden;touch-action:none}body.scrolls .page{position:relative;inset:auto;overflow:visible;touch-action:auto}.chrome{position:fixed;inset:0 0 auto;z-index:20;display:grid;grid-template-columns:1fr auto 1fr;align-items:start;padding:18px var(--gutter);font-size:11px;pointer-events:none}.chrome a{pointer-events:auto;position:relative;padding:4px 0}.chrome .role{color:var(--muted);padding:4px 0}.chrome .contact{justify-self:end}.chrome .contact:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease)}.chrome .contact:hover:after{transform:scaleX(1);transform-origin:left}.chapters{position:fixed;left:50%;bottom:16px;z-index:20;transform:translate(-50%);display:flex;gap:26px;font-size:11px;padding:6px 16px 10px;border-radius:999px;background:color-mix(in srgb,var(--bg) 62%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.chapters a{display:flex;gap:7px;align-items:baseline;color:var(--muted);transition:color .3s;padding:4px 0}.chapters a:hover,.chapters a.on{color:var(--fg)}.chapters .n{font:500 10px var(--mono);letter-spacing:0;opacity:.7}.chapters .fill{position:absolute;left:16px;bottom:6px;width:1px;height:1px;background:var(--fg);transform-origin:left;transform:scaleX(0)}.corner{position:fixed;z-index:10;font-size:11px}.corner.bl{left:var(--gutter);bottom:22px}.corner.br{right:var(--gutter);bottom:22px}.muted{color:var(--muted)}.grain{position:fixed;inset:0;z-index:30;pointer-events:none;background-image:var(--grain);background-size:var(--grain-size, 128px);opacity:.045;mix-blend-mode:multiply}body[data-theme=dark] .grain{opacity:.035;mix-blend-mode:screen}#curtain{position:fixed;inset:0;z-index:40;pointer-events:none;background:var(--dark-bg);opacity:0;transition:opacity .48s var(--ease)}#curtain[data-theme=light]{background:var(--light-bg)}#curtain.on{opacity:1;pointer-events:auto}html.custom-cursor,html.custom-cursor *{cursor:none!important}#cursor{position:fixed;left:0;top:0;z-index:50;pointer-events:none;width:0;height:0;color:var(--fg);mix-blend-mode:difference}#cursor i,#cursor b{position:absolute;left:0;top:0;display:block;transition:transform .25s var(--ease),opacity .25s}#cursor i{width:22px;height:22px;transform:translate(-50%,-50%);background:linear-gradient(#fff,#fff) 0 50% / 7px 1px no-repeat,linear-gradient(#fff,#fff) 100% 50% / 7px 1px no-repeat,linear-gradient(#fff,#fff) 50% 0 / 1px 7px no-repeat,linear-gradient(#fff,#fff) 50% 100% / 1px 7px no-repeat}#cursor b{width:26px;height:26px;border:1px solid #fff;transform:translate(-50%,-50%) scale(.4);opacity:0}#cursor.hot i{transform:translate(-50%,-50%) scale(.5) rotate(45deg);opacity:.8}#cursor.hot b{transform:translate(-50%,-50%) scale(1);opacity:1}#cursor.grab i{transform:translate(-50%,-50%) scale(1.25)}#cursor.down i{transform:translate(-50%,-50%) scale(.75)}.home .w{position:absolute;left:0;top:0;white-space:nowrap;will-change:transform,opacity;font-size:13px;line-height:1;padding:6px 2px;transition:color .2s}.home .w.t1{font-size:11px;font-weight:500;letter-spacing:.06em}.home .w:hover{color:var(--accent)}.marker{position:absolute;left:0;top:0;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border:1px solid var(--fg);opacity:0;transition:opacity .2s;pointer-events:none}.marker.on{opacity:1}.about{background:transparent}.about .node{position:absolute;left:0;top:0;margin:-14px 0 0 -14px;padding:7px 10px 7px 28px;display:flex;gap:8px;align-items:baseline;white-space:nowrap;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#ededeabf;transition:color .2s;will-change:transform,opacity}.about .node .n{font:500 10px var(--mono);letter-spacing:0;color:hsl(var(--hue, 280) 75% 74%)}.about .node:hover,.about .node:focus-visible,.about .node.on{color:#ededea}.about .node.on .l{text-decoration:underline;text-underline-offset:4px}.about .panel{position:absolute;left:56vw;top:50%;width:min(440px,36vw);transform:translateY(-50%);z-index:2;isolation:isolate;transition:opacity .18s var(--ease),transform .18s var(--ease)}.about .panel.out{opacity:0;transform:translateY(calc(-50% + 10px))}.about .panel:before{content:"";position:absolute;inset:-60px -80px;z-index:-1;background:radial-gradient(closest-side,#070707d1,#07070700)}.about .kicker{font-size:11px;letter-spacing:.3em;color:hsl(var(--hue, 280) 75% 74%);margin-bottom:18px;text-transform:uppercase}.about .title{font-weight:800;font-stretch:118%;text-transform:uppercase;font-size:clamp(24px,2.6vw,42px);line-height:1.02;margin-bottom:18px}.about .body{font-size:clamp(14px,1.05vw,16px);line-height:1.75;color:#ededeac7;max-width:46ch}.about .cta{display:inline-block;margin-top:22px;font:600 11px var(--sans);font-stretch:112%;text-transform:uppercase;letter-spacing:.16em;border-bottom:1px solid currentColor;padding-bottom:4px}.work{background:transparent}.work .rulers{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.work .frame{position:absolute;display:block;border:1px solid rgba(255,255,255,.85);z-index:3}.work .frame .flash{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none}.work .frame .c{position:absolute;width:9px;height:9px;border:0 solid #fff}.work .frame .c.tl{left:-5px;top:-5px;border-left-width:2px;border-top-width:2px}.work .frame .c.tr{right:-5px;top:-5px;border-right-width:2px;border-top-width:2px}.work .frame .c.bl{left:-5px;bottom:-5px;border-left-width:2px;border-bottom-width:2px}.work .frame .c.br{right:-5px;bottom:-5px;border-right-width:2px;border-bottom-width:2px}.work .water{position:absolute;inset:0;display:grid;place-items:center;font:800 11px var(--sans);font-stretch:118%;letter-spacing:.18em;text-transform:uppercase;color:#ffffff24;pointer-events:none}.work .open-hint{position:absolute;left:50%;bottom:-26px;transform:translate(-50%);font-size:11px;letter-spacing:.18em;opacity:0;transition:opacity .3s;white-space:nowrap}.work .frame:hover .open-hint,.work .frame:focus-visible .open-hint{opacity:.8}.work .reel{position:absolute;left:50%;top:0;width:0;height:0;z-index:2}.work .item{position:absolute;left:0;top:0;white-space:nowrap;font-size:11px;letter-spacing:.16em;color:#ededeae6;padding:3px 8px;will-change:transform,opacity}.work .item:hover,.work .item:focus-visible{color:#fff;opacity:1!important}.work .caption{position:absolute;z-index:3;text-align:right;width:30vw;right:calc(50% + min(10vw,180px) + 14px);top:calc(50% - min(9.2vw,165px) + 6px)}.work .caption .num{font-size:11px;letter-spacing:.16em;color:var(--muted)}.work .caption .name{font-size:clamp(15px,1.25vw,19px);font-weight:600;letter-spacing:.06em;margin:4px 0 3px}.work .caption .sub{font-size:11px;letter-spacing:.1em;color:var(--muted)}.work .count{position:absolute;right:var(--gutter);top:64px;font-size:11px;color:var(--muted);z-index:3}.project .panel{position:relative;z-index:2;margin-left:66vw;width:34vw;min-height:100vh;padding:110px clamp(20px,2.4vw,40px) 90px;background:linear-gradient(90deg,#07070799,#070707 22%)}.project .kicker{font-size:11px;letter-spacing:.14em;color:var(--muted)}.project h1{font-size:clamp(34px,3.6vw,60px);font-weight:800;font-stretch:115%;letter-spacing:-.01em;line-height:1;margin:14px 0 18px;text-transform:uppercase}.project .lede{font-size:15px;line-height:1.7;color:#ededead9}.project .meta{margin:26px 0;border-top:1px solid var(--line)}.project .meta div{display:grid;grid-template-columns:70px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.project .meta dt{font-size:11px;letter-spacing:.12em;color:var(--muted);padding-top:2px}.project .meta dd{margin:0}.project .visit{display:inline-flex;gap:10px;align-items:center;font:600 11px var(--sans);font-stretch:112%;text-transform:uppercase;letter-spacing:.16em;padding:12px 16px;border:1px solid var(--fg);transition:background .25s,color .25s}.project .visit:hover{background:var(--fg);color:#070707}.project .shot{margin:40px 0 0}.project .shot img{display:block;width:100%;height:auto;border:1px solid rgba(255,255,255,.08)}.project .pager{margin-top:80px;border-top:1px solid var(--line)}.project .pager a{display:block;padding:20px 0;font-weight:700;font-stretch:112%;transition:color .2s}.project .pager .next{font-size:clamp(26px,2.6vw,40px);text-transform:uppercase;line-height:1.05}.project .pager .next i{font-style:normal;display:inline-block;transition:transform .3s var(--ease)}.project .pager .next:hover i{transform:translate(8px)}.project .pager .prev{font-size:15px;font-weight:600;color:var(--muted);border-top:1px solid var(--line)}.project .pager a:hover{color:var(--accent)}.project .pager span{display:block;font-size:11px;letter-spacing:.14em;color:var(--muted);margin-bottom:8px;font-weight:600}.project .all-work{position:fixed;left:var(--gutter);top:64px;z-index:10;font-size:11px;padding:6px 0;color:var(--fg)}.project .all-work span{display:inline-block;transition:transform .3s var(--ease)}.project .all-work:hover span{transform:translate(-5px)}.project .story-hint{position:fixed}.contact .details{position:absolute;left:50%;bottom:13vh;width:min(760px,90vw);text-align:center;opacity:0}.contact .details .kicker{font-size:11px;letter-spacing:.34em;color:var(--muted)}.contact .big{font-weight:800;font-stretch:118%;text-transform:uppercase;font-size:clamp(26px,3.6vw,56px);line-height:1.02;letter-spacing:-.01em;margin:14px 0 20px}.contact .who{font:500 11px var(--mono);color:var(--muted);letter-spacing:.06em}.contact .mail{display:inline-block;margin-top:18px;font-size:clamp(16px,1.6vw,22px);border-bottom:1px solid currentColor;padding-bottom:3px}.contact .links{display:flex;gap:22px;justify-content:center;flex-wrap:wrap;margin-top:26px;font:600 11px var(--sans);font-stretch:112%;text-transform:uppercase;letter-spacing:.18em}.contact .links a{color:var(--muted);transition:color .2s}.contact .links a:hover{color:var(--fg)}.noscript{padding:40px;font:16px/1.6 var(--sans)}@media(max-width:819px){.chrome{padding-top:14px;grid-template-columns:1fr auto}.chrome .role{display:none}.chrome .name{max-width:40vw;line-height:1.3}.chapters{gap:18px;bottom:max(10px,env(safe-area-inset-bottom))}.chapters .n,.corner.br,.corner.bl,.story-hint{display:none}.home .w{font-size:11px}.about .node .l{display:none}.about .node.on .l{display:inline}.about .panel{left:var(--gutter);right:var(--gutter);top:auto;bottom:74px;width:auto;transform:none}.about .panel.out{transform:translateY(10px)}.about .title{font-size:22px;margin-bottom:12px}.about .body{font-size:14px;line-height:1.6}.work .caption{width:90vw;right:auto;left:50%;transform:translate(-50%);text-align:center;top:76px}.work .count{display:none}.project .all-work{top:52px}.project .panel{margin-left:0;width:100%;background:linear-gradient(180deg,#07070700 0,#070707d9 40vh,#070707 70vh);padding-top:45vh}.contact .details{bottom:80px}}@media(prefers-reduced-motion:reduce){#curtain{transition-duration:.12s}}
