:root{--black:#060606;--white:#f4f4f2;--grey:#06060673;--coin:min(62vmin, 460px);--font-display:"Manrope", system-ui, sans-serif;--font-mono:"DM Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--white);color:var(--black);font-family:var(--font-display);-webkit-font-smoothing:antialiased;overflow:hidden}::selection{background:var(--black);color:var(--white)}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer;background:0 0;border:none;font-family:inherit}@media (pointer:fine){body,body a,body button{cursor:none}}.grain{pointer-events:none;z-index:200;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;position:fixed;inset:0}.cursor-dot,.cursor-ring{pointer-events:none;z-index:300;mix-blend-mode:difference;border-radius:50%;position:fixed;top:0;left:0}.cursor-dot{will-change:transform;background:#fff;width:10px;height:10px}.cursor-ring{will-change:transform;border:1px solid #fff9;width:42px;height:42px}@media (pointer:coarse){.cursor-dot,.cursor-ring{display:none}}.preloader{z-index:400;background:var(--white);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.preloader-dot{background:var(--black);border-radius:50%;width:24px;height:24px}.preloader-label{font-family:var(--font-mono);letter-spacing:.22em;text-transform:lowercase;color:var(--grey);font-size:.78rem;font-weight:300;position:absolute;bottom:3rem}.dot-field{z-index:0;pointer-events:none;position:fixed;top:0;left:0}.stage{z-index:2;justify-content:center;align-items:center;height:100dvh;display:flex;position:relative}.corner{z-index:150;font-family:var(--font-mono);letter-spacing:.16em;text-transform:lowercase;color:#b8b8b8;mix-blend-mode:difference;align-items:center;gap:.6rem;font-size:.74rem;font-weight:300;display:flex;position:fixed}.corner-tr{top:1.8rem;right:2rem}.corner-tl{top:1.8rem;left:2rem}.site-nav{z-index:160;color:#d8d8d8;mix-blend-mode:difference;align-items:center;gap:1.75rem;display:flex;position:fixed;top:1.5rem;left:50%;transform:translate(-50%)}.site-nav a{font-family:var(--font-mono);letter-spacing:.2em;text-transform:lowercase;opacity:.45;flex-direction:column;align-items:center;gap:.35rem;padding:.2rem 0;font-size:.74rem;font-weight:300;transition:opacity .3s;display:inline-flex;position:relative}.site-nav a:hover{opacity:.8}.site-nav a.is-active{opacity:1}.site-nav-line{background:currentColor;width:100%;height:1px;display:block}.corner-br{bottom:1.8rem;right:2rem}.corner-bl{bottom:1.8rem;left:2rem}.corner-tc{top:1.8rem;left:50%;transform:translate(-50%)}.corner-bc{animation:3s ease-in-out infinite hint-fade;bottom:3.6rem;left:50%;transform:translate(-50%)}@keyframes hint-fade{0%,to{opacity:1}50%{opacity:.35}}.float{justify-content:center;align-items:center;animation:7s ease-in-out infinite float-bob;display:flex;position:relative}@keyframes float-bob{0%,to{translate:0}50%{translate:0 -10px}}@media (prefers-reduced-motion:reduce){.float{animation:none}.grain{display:none}}.flip{width:var(--coin);height:var(--coin);perspective:1400px;border-radius:50%;position:relative}.flip-nudge-layer{width:100%;height:100%;transform-style:preserve-3d}.flip-nudge-layer.is-nudging{animation:4.8s ease-in-out 2s infinite flip-hint}@keyframes flip-hint{0%,72%,to{transform:rotateY(0)}80%{transform:rotateY(-16deg)}88%{transform:rotateY(9deg)}95%{transform:rotateY(-3deg)}}.flip-hint{letter-spacing:.22em}@media (prefers-reduced-motion:reduce){.flip-nudge-layer.is-nudging{animation:none}}.flip-tilt{width:100%;height:100%;transform-style:preserve-3d}.flip-inner{width:100%;height:100%;transform-style:preserve-3d;position:relative}.flip-face{backface-visibility:hidden;border-radius:50%;position:absolute;inset:0;overflow:hidden;box-shadow:0 26px 70px #06060629}.flip-front{background:var(--black);color:var(--white);justify-content:center;align-items:center;display:flex;transform:translateZ(1px)}.particle-text{width:100%;height:100%;position:absolute;inset:0}.flip-back{background:var(--black);color:var(--white);justify-content:center;align-items:center;gap:calc(var(--coin) * .055);text-align:center;flex-direction:column;display:flex;transform:rotateY(180deg)translateZ(1px)}.flip-back-greet{font-family:var(--font-mono);font-weight:300;font-size:calc(var(--coin) * .032);letter-spacing:.2em;opacity:.55}.flip-back-blurb{font-family:var(--font-display);font-weight:700;font-size:calc(var(--coin) * .052);letter-spacing:-.015em;text-transform:lowercase;line-height:1.3}.flip-back-dot{width:calc(var(--coin) * .035);height:calc(var(--coin) * .035);background:var(--white);border-radius:50%}.flip-back-contact{gap:calc(var(--coin) * .02);font-family:var(--font-mono);font-weight:400;font-size:calc(var(--coin) * .038);letter-spacing:.02em;flex-direction:column;display:flex}.flip-back-contact a{padding:.15em 0;position:relative}.flip-back-contact a:after{content:"";background:var(--white);transform-origin:100%;width:100%;height:1px;transition:transform .35s cubic-bezier(.6,0,.2,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.flip-back-contact a:hover:after{transform-origin:0;transform:scaleX(1)}.scene{color:var(--black);z-index:1;background:0 0;position:fixed;inset:0;overflow:hidden}.work-stage{overflow-y:auto}.work{z-index:2;box-sizing:border-box;flex-direction:column;align-items:center;gap:clamp(1.4rem,3vh,2.4rem);width:100%;max-width:1100px;margin:0 auto;padding:5rem 1.5rem 4.5rem;display:flex;position:relative}.work-kicker{font-family:var(--font-mono);letter-spacing:.22em;color:var(--grey);font-size:.74rem;font-weight:300}.work-body{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(2rem,5vw,4rem);width:100%;display:flex}.site-frame{background:var(--white);border:1px solid #06060666;border-radius:14px;width:min(620px,86vw,105vh);display:block;overflow:hidden;box-shadow:0 30px 80px #0606062e}.site-chrome{border-bottom:1px solid #06060629;align-items:center;gap:7px;padding:10px 14px;display:flex}.site-chrome-dot{border:1.2px solid #060606bf;border-radius:50%;width:9px;height:9px}.site-chrome-url{font-family:var(--font-mono);letter-spacing:.08em;color:#0606068c;background:#0606060f;border-radius:999px;margin-left:10px;padding:3px 14px;font-size:.66rem;font-weight:300}.site-viewport{aspect-ratio:1440/900;--site-scale:.43;width:100%;display:block;position:relative;overflow:hidden}.site-viewport iframe{width:1440px;height:900px;transform:scale(var(--site-scale));transform-origin:0 0;pointer-events:none;border:0;display:block}.site-placeholder{background:radial-gradient(circle at 50% 40%,#0606060f,#0000 55%),repeating-linear-gradient(0deg,#0000,#0000 11px,#0606060a 11px 12px);width:100%;height:100%;display:block}.site-live{font-family:var(--font-mono);letter-spacing:.2em;text-transform:lowercase;color:var(--white);background:#060606c7;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.6rem;display:inline-flex;position:absolute;top:10px;right:10px}.site-live-dot{background:#fff;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.55)}}.work-copy{flex-direction:column;align-items:flex-start;gap:.9rem;max-width:300px;display:flex}.work-copy h2{letter-spacing:-.02em;text-transform:lowercase;font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:800}.work-desc{color:#060606b3;font-size:.95rem;line-height:1.65}.work-tags{font-family:var(--font-mono);letter-spacing:.16em;color:var(--grey);font-size:.72rem;font-weight:300}.work-visit{font-family:var(--font-mono);letter-spacing:.06em;border-bottom:1px solid;padding-bottom:2px;font-size:.8rem;transition:opacity .25s}.work-visit:hover{opacity:.6}.work-next{font-family:var(--font-mono);letter-spacing:.1em;color:var(--grey);text-align:center;font-size:.74rem;font-weight:300}.work-next a{border-bottom:1px solid;padding-bottom:1px}.work-next a:hover{color:var(--black)}.rotate-gate{z-index:10000;background:var(--white);color:var(--black);font-family:var(--font-mono);letter-spacing:.18em;text-transform:lowercase;place-items:center;font-size:.85rem;font-weight:300;display:grid;position:fixed;inset:0}@media (width<=640px){:root{--coin:min(90vw, calc(100dvh - 7.5rem))}.corner-tr,.corner-br{right:1.25rem}.corner-tr{top:1.2rem}.corner-br{bottom:1.2rem}.corner-bl{bottom:1.2rem;left:1.25rem}.site-nav{top:max(.65rem, env(safe-area-inset-top,0px));z-index:500;mix-blend-mode:normal;color:var(--black);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f4f4f2d1;border-radius:999px;gap:1.6rem;padding:.4rem 1rem}.site-nav a{letter-spacing:.18em;opacity:.4;font-size:.92rem}.site-nav a.is-active{opacity:1}.corner{mix-blend-mode:normal;color:#06060673}.work-stage{justify-content:flex-start;align-items:stretch}.work{--work-col:min(86vw, 26rem);justify-content:center;gap:.75rem;min-height:100%;padding:3.6rem 1.25rem 3.1rem}.work-body{width:var(--work-col);flex-flow:column;align-items:stretch;gap:.75rem}.site-frame{border-radius:12px;width:100%;box-shadow:0 16px 40px #06060624}.site-chrome{gap:5px;padding:7px 10px}.site-chrome-dot{width:7px;height:7px}.site-chrome-url{margin-left:6px;padding:2px 10px;font-size:.58rem}.site-viewport{aspect-ratio:16/10}.site-live{padding:3px 8px;font-size:.52rem;top:7px;right:7px}.work-copy{gap:.45rem;width:100%;max-width:none}.work-copy h2{font-size:1.45rem}.work-desc{font-size:.82rem;line-height:1.45}.work-visit{font-size:.72rem}.work-next{width:var(--work-col);text-align:left;letter-spacing:.06em;margin:.15rem 0 0;font-size:.64rem}.work-kicker{font-size:.66rem}}@media (width<=640px) and (height<=720px){:root{--coin:min(90vw, calc(100dvh - 6.75rem))}.site-nav{top:max(.45rem, env(safe-area-inset-top,0px));gap:1.35rem;padding:.32rem .85rem}.site-nav a{gap:.25rem;font-size:.84rem}.work{gap:.55rem;padding:3.35rem 1.15rem 2.7rem}.work-body{gap:.55rem}.site-viewport{aspect-ratio:16/9}.site-chrome{padding:5px 9px}.work-copy h2{font-size:1.28rem}.work-desc{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.76rem;line-height:1.4;display:-webkit-box;overflow:hidden}.work-next{font-size:.6rem}}
