@font-face{font-family:Satoshi;src:url(/assets/fonts/satoshi-variable.woff2) format("woff2");font-style:normal;font-weight:300 900;font-display:swap}:root{color-scheme:dark;font-family:Satoshi,Helvetica Neue,Helvetica,Arial,sans-serif;font-synthesis:none;--surface: #111111;--surface-center: #171717;--text-start: #efefef;--text-end: #777777;--accent: #607dde;--muted: #b4b4b4}*{box-sizing:border-box}html,body{min-width:320px;min-height:100%;margin:0;background:var(--surface)}html{scrollbar-gutter:stable}body.has-preview{overflow:hidden}body{overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}.experience{position:relative;z-index:1;min-height:230vh;min-height:230svh;background:transparent}.experience.is-exiting{pointer-events:none}.landing{--intro-opacity: 1;--hero-scale: 1;position:sticky;top:0;display:grid;width:100%;min-height:100vh;min-height:100svh;overflow:visible;isolation:isolate;background:radial-gradient(ellipse 49% 50% at 50% 50%,var(--surface-center) 0%,var(--surface) 72%)}.landing.is-exiting{background:transparent}.landing__halo{position:absolute;top:50%;left:50%;z-index:-2;width:min(55vw,1055px);height:min(68vh,736px);border-radius:50%;background:radial-gradient(ellipse,#191919d9,#1110 72%);opacity:var(--intro-opacity);transform:translate(-50%,-50%) scale(var(--hero-scale));will-change:opacity,transform}.landing__monogram{position:absolute;top:9.6%;left:50%;z-index:-1;width:min(22.94vw,440px);height:77.7%;opacity:calc(.48 * var(--intro-opacity));transform:translate(-36.1%) scale(var(--hero-scale));transform-origin:center;will-change:opacity,transform}.masthead{position:absolute;top:clamp(22px,3.33vh,36px);left:clamp(26px,2.68vw,52px);right:clamp(26px,2.68vw,52px);z-index:2;display:flex;align-items:center;justify-content:space-between}.brand-mark{width:17px;height:28px}.brand-mark img{width:100%;height:100%}.identity-wrap{position:relative}.identity{display:flex;align-items:center;gap:5px;min-height:41px;padding:4px 8px 4px 6px;border:1px solid #2a2a2a;border-radius:999px;background:#111;cursor:pointer;transition:border-color .18s ease,background-color .18s ease}.identity:hover,.identity[aria-expanded=true]{border-color:#3a3a3a;background:#151515}.identity:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.identity__portrait{width:32px;height:32px;overflow:hidden;border-radius:50%}.identity__portrait img{width:100%;height:100%;object-fit:cover}.identity__name{background:linear-gradient(90deg,var(--text-start),#555555);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:12px;font-weight:500;line-height:1;text-transform:uppercase}.contact-flyout{position:absolute;top:calc(100% + 9px);right:0;display:grid;gap:11px;width:196px;min-height:107px;padding:25px 15px;visibility:hidden;border:1px solid #2a2a2a;border-radius:20px;background:#111;opacity:0;transform:translateY(-8px) scale(.98);transform-origin:top right;transition:opacity .18s ease,transform .22s cubic-bezier(.22,1,.36,1),visibility .18s}.contact-flyout[aria-hidden=false]{visibility:visible;opacity:1;transform:translateY(0) scale(1)}.contact-flyout a{display:flex;align-items:center;gap:9px;color:#aeaeae;font-size:12px;line-height:20px;white-space:nowrap;transition:color .16s ease}.contact-flyout a:hover{color:#efefef}.contact-flyout a:focus-visible{border-radius:4px;outline:2px solid var(--accent);outline-offset:3px}.contact-flyout__icon{display:grid;flex:0 0 24px;width:24px;height:24px;place-items:center}.contact-flyout__platforms{display:none}.contact-flyout__icon img{width:19px;height:19px}.intro{align-self:center;justify-self:center;display:flex;flex-direction:column;align-items:center;width:min(90vw,560px);opacity:var(--intro-opacity);transform:translateY(5.2vh) scale(var(--hero-scale));will-change:opacity,transform;text-align:center}.intro__eyebrow{margin:0 0 18px;color:#aaa;font-size:clamp(10px,.85vw,13px);font-weight:500;letter-spacing:-.04em;line-height:1;text-transform:none}.intro__proof{display:flex;gap:22px;justify-content:center;flex-wrap:wrap;margin-top:30px;color:#8c8c8c;font-size:12px;line-height:1.5}.intro__proof strong{color:#dedede;font-weight:600}.intro .platforms{margin-top:32px}@media(max-width:720px){.intro__proof{gap:10px 18px;max-width:330px;font-size:11px}}h1{margin:0;background:linear-gradient(90deg,var(--text-start) 0%,#b4b4b4 50%,#727272 100%);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:clamp(35px,2.5vw,48px);font-weight:500;letter-spacing:-.052em;line-height:1.04}.platforms{display:flex;align-items:center;gap:27px;margin-top:clamp(52px,10.2vh,110px)}.platform-link,.linkedin{transition:opacity .18s ease,transform .18s ease}.platform-link{display:block}.platform-link:hover,.linkedin:hover{opacity:.72;transform:translateY(-2px)}.platform-link:focus-visible,.linkedin:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:2px}.platforms__contra{width:102px;height:18px}.platforms__upwork{width:90px;height:24px}.project-stage{position:absolute;inset:0;z-index:1;pointer-events:none;translate:0 var(--exit-hold-y, 0px)}.landing__footer{position:absolute;right:clamp(26px,2.68vw,52px);bottom:clamp(26px,2.9vh,32px);left:clamp(26px,2.68vw,52px);display:flex;align-items:end;justify-content:center}.footer-links{position:absolute;right:0;bottom:0;display:flex;align-items:center;gap:22px}.project-marketplaces{position:relative;width:83px;height:25px;transition:opacity .22s ease}.project-marketplaces>img{width:100%;height:100%}.project-marketplaces a{position:absolute;top:-6px;bottom:-6px;border-radius:4px}.project-marketplaces__contra{left:-6px;width:36px}.project-marketplaces__upwork{right:-6px;width:54px}.project-marketplaces a:hover{background:#ffffff0d}.project-marketplaces a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.linkedin{position:relative;display:block;flex:0 0 auto;width:28px;height:28px}.linkedin img{width:100%;height:100%}@media(max-width:720px){.identity{position:relative;z-index:4;width:34px;min-height:34px;padding:0;border:2px solid #b4b4b4;border-radius:7px;background:transparent}.identity__portrait,.identity__name{display:none}.landing__monogram{top:14%;width:min(58vw,360px);height:70%;transform:translate(-39%) scale(var(--hero-scale))}.intro{transform:translateY(2vh) scale(var(--hero-scale))}.intro__eyebrow{margin-bottom:14px}h1{font-size:clamp(32px,9vw,43px)}.platforms{margin-top:64px}.contact-flyout{position:fixed;inset:0;z-index:3;display:flex;width:100vw;min-height:100svh;padding:0 42px;flex-direction:column;justify-content:center;gap:38px;border:0;border-radius:0;background:#111;transform:none;transform-origin:center}.contact-flyout:before{position:absolute;top:50%;left:50%;width:min(286px,calc(100vw - 72px));height:332px;border:1px solid #2a2a2a;border-radius:18px;content:"";transform:translate(-50%,-50%)}.contact-flyout a{position:relative;z-index:1;gap:14px;font-size:20px;line-height:24px}.contact-flyout__platforms{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px}.contact-flyout__platforms a{display:block}.contact-flyout__platforms img{width:auto;height:24px}.contact-flyout__icon{flex-basis:28px;width:28px;height:28px}.contact-flyout__icon img{width:24px;height:24px}.landing__footer,.linkedin{display:none}}@media(max-height:700px){.platforms{margin-top:42px}}@media(prefers-reduced-motion:no-preference){.intro>*{animation:reveal .8s cubic-bezier(.22,1,.36,1) both}.intro h1{animation-delay:80ms}.platforms{animation-delay:.17s}@keyframes reveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}.testimonials{--portfolio-overlap: clamp(12px, 2svh, 24px);position:relative;z-index:0;margin-top:calc(-1 * var(--portfolio-overlap));min-height:calc(100svh + var(--portfolio-overlap));padding:clamp(48px,7vw,96px) clamp(20px,6vw,92px);background:#111;color:#ededed}.testimonials__inner{width:min(100%,1320px);margin:0 auto}.testimonials__heading{margin-bottom:clamp(28px,4vw,48px)}.testimonials__heading h2{margin:0;font-size:clamp(30px,3.8vw,48px);font-weight:450;letter-spacing:-.045em;line-height:1.08}.testimonials__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.review-card{display:flex;margin:0;min-width:0;min-height:310px;flex-direction:column;padding:clamp(24px,3vw,38px);border:1px solid #ffffff12;border-radius:18px;background:#191919}.review-card__top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.review-card__platform{width:80px;height:24px;object-fit:contain;object-position:left center}.review-card__platform--upwork{width:74px}.review-card__stars{color:#c9c9c9;font-family:Arial,sans-serif;font-size:12px;letter-spacing:.18em;white-space:nowrap}.review-card blockquote{flex:1;margin:0 0 32px}.review-card blockquote p{margin:0;color:#e1e1e1;font-size:clamp(18px,1.6vw,23px);font-weight:450;letter-spacing:-.02em;line-height:1.45}.review-card__bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.review-card cite{min-width:0;font-style:normal}.review-card cite strong{display:block;color:#d6d6d6;font-size:14px;font-weight:600;line-height:1.5}.review-card cite span{display:block;max-width:32ch;margin-top:4px;color:#8e8e8e;font-size:12px;line-height:1.5}.review-card__source{flex-shrink:0;padding:8px 0;color:#b6b6b6;font-size:12px;white-space:nowrap;transition:color .18s ease}.review-card__source:hover{color:#fff}.review-card__source:focus-visible{outline:2px solid #ddd;outline-offset:6px;border-radius:2px}@media(max-width:680px){.testimonials__grid{grid-template-columns:1fr;gap:14px}.review-card{min-height:0;padding:26px 24px}.review-card__top{margin-bottom:24px}.review-card blockquote p{font-size:20px}.review-card__bottom{gap:14px}.review-card cite span{max-width:24ch}}@media(prefers-reduced-motion:reduce){.testimonials{margin-top:0;min-height:100svh}}.site-footer{position:relative;z-index:0;padding:0 clamp(20px,6vw,92px);background:#111;color:#ededed}.site-footer__inner{width:min(100%,1320px);margin:0 auto;border-top:1px solid #ffffff12}.site-footer__contact{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:clamp(48px,6vw,80px) 0}.site-footer__contact h2{margin:0;font-size:clamp(32px,3.4vw,48px);font-weight:450;letter-spacing:-.045em;line-height:1.1}.site-footer__action{display:flex;flex-shrink:0;flex-direction:column;align-items:flex-end;gap:14px}.site-footer__email{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:34px;padding:14px 24px;border:1px solid #eee;border-radius:999px;background:#eee;color:#151515;font-size:14px;font-weight:600;transition:background-color .18s ease,border-color .18s ease,transform .18s ease}.site-footer__email span{font-size:20px;line-height:1}.site-footer__email:hover{border-color:#d4d4d4;background:#d4d4d4;transform:translateY(-2px)}.site-footer__address{color:#999;font-size:12px;line-height:1.5}.site-footer__base{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0 28px;border-top:1px solid #ffffff0b;color:#888;font-size:12px;line-height:1.5}.site-footer__base a{display:inline-flex;align-items:center;gap:12px;padding:4px 0;color:#aaa;transition:color .18s ease}.site-footer__base a:hover{color:#fff}.site-footer a:focus-visible{outline:2px solid #ddd;outline-offset:6px}@media(max-width:680px){.site-footer__contact{flex-direction:column;align-items:flex-start;gap:28px}.site-footer__action{align-items:flex-start}.site-footer__base{flex-wrap:wrap;gap:12px 20px;font-size:11px}}@media(prefers-reduced-motion:reduce){.site-footer__email{transition:none}.site-footer__email:hover{transform:none}}.preview{position:fixed;inset:0;z-index:90;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .36s ease,visibility 0s linear .36s}.preview.is-open{opacity:1;visibility:visible;pointer-events:auto;cursor:pointer;transition-delay:0s}.preview__stage{position:absolute;inset:0;overflow:hidden;background:#050505;transform:translateY(18px);transition:transform .52s cubic-bezier(.22,1,.36,1)}.preview.is-open .preview__stage{transform:translateY(0)}.preview__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.06);transition:transform .82s cubic-bezier(.22,1,.36,1),opacity .38s ease}.preview__image{opacity:0}.preview__image.is-active{opacity:1}.preview.is-open .preview__image{transform:scale(1)}.preview__scrim{position:absolute;inset:0;transition:opacity .38s ease;background:linear-gradient(to top,#000000c7,#00000057 34%,#0000 62%)}.preview__article{position:absolute;inset:0;z-index:2;overflow-y:auto;overscroll-behavior-y:contain;touch-action:pan-y;scrollbar-width:none;opacity:0;pointer-events:none;cursor:auto;transform:translateY(24px);transition:opacity .36s ease .18s,transform .52s cubic-bezier(.16,1,.3,1) .18s}.preview__article::-webkit-scrollbar{display:none}.preview.has-article.is-open .preview__article{opacity:1;pointer-events:auto;transform:translateY(0)}.preview.has-article.is-open.is-switching .preview__article{opacity:0;transform:translateY(10px);transition:opacity .16s ease,transform .22s ease}.preview.has-article .preview__scrim{background:linear-gradient(to bottom,#0405071a,#04050761 34%,#040507f0)}.preview__editorial{display:grid;min-height:100svh;padding:clamp(150px,25vh,290px) clamp(76px,10vw,190px) clamp(48px,8vh,92px);place-items:end center}.preview__article-panel{width:min(940px,100%);padding:clamp(34px,4vw,58px) clamp(34px,4.8vw,72px);border:1px solid rgba(255,255,255,.11);border-top:2px solid var(--accent);border-radius:clamp(18px,2vw,30px);background:#090a0ce6;box-shadow:0 30px 90px #0000006b;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.preview__article-kicker{margin:0 0 18px;color:var(--accent);font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.preview__article-title{max-width:790px;margin:0;color:#f2f2f4;font-size:clamp(2.4rem,5.2vw,5.2rem);font-weight:450;letter-spacing:-.055em;line-height:.94}.preview__article-summary{max-width:720px;margin:22px 0 0;color:#dadae2c2;font-size:clamp(1rem,1.4vw,1.25rem);line-height:1.55}.preview__article-meta{margin:20px 0 0;color:#b9b9c680;font-size:10px;letter-spacing:.17em;text-transform:uppercase}.preview__article-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,56px);margin-top:clamp(34px,4.5vw,52px);padding-top:clamp(26px,3vw,38px);border-top:1px solid rgba(255,255,255,.1)}.preview__article-body p{margin:0;color:#c6c6d2ad;font-size:clamp(.94rem,1.2vw,1.08rem);line-height:1.68}.preview__scroll-cue{display:flex;margin:clamp(28px,4vw,42px) 0 0;align-items:center;justify-content:space-between;color:#e1e1e880;font-size:10px;letter-spacing:.16em;text-transform:uppercase}.preview__scroll-cue span{color:var(--accent);font-size:18px;line-height:1}.preview__highlights{position:relative;background:#070707}.experience-view{position:relative;padding:48px clamp(24px,8vw,140px) 28px;background:#0a0a0b}.experience-view__stage{position:relative;width:100%;height:min(72svh,820px);min-height:300px;background:#0a0a0b;overflow:hidden}.experience-view__poster,.experience-view__stage video,.experience-view__app,.experience-view__stage canvas{display:block;width:100%;height:100%;border:0;object-fit:contain}.experience-view__poster{opacity:.8}.experience-view__launch{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:15px 26px;border:1px solid #ffffff70;border-radius:999px;color:#fff;background:#111e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font:inherit;font-size:14px;cursor:pointer;white-space:nowrap}.experience-view__launch:hover{background:#efefef;color:#111}.experience-view__launch:disabled{opacity:.65;cursor:progress}.experience-view__toolbar{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:20px 0 10px}.experience-view__status{color:#969696;font-size:12px;line-height:1.5}.experience-view__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px 22px}.experience-view__actions button,.experience-view__actions a{padding:7px 0;border:0;background:none;color:#ccc;font:inherit;font-size:12px;cursor:pointer;line-height:1.5}.experience-view__actions button:hover,.experience-view__actions a:hover{color:#fff}.experience-view button:focus-visible,.experience-view a:focus-visible,.experience-view input:focus-visible,.experience-view video:focus-visible{outline:2px solid #eee;outline-offset:5px}.experience-view__actions button:disabled{opacity:.4;cursor:progress}.experience-view__seek{display:block;appearance:none;width:100%;height:16px;margin:6px 0 0;background:transparent;cursor:pointer;accent-color:#ddd}.experience-view__seek::-webkit-slider-runnable-track{height:2px;background:#555}.experience-view__seek::-webkit-slider-thumb{appearance:none;width:8px;height:8px;margin-top:-3px;border-radius:50%;background:#eee}.experience-view__seek::-moz-range-track{height:2px;background:#555}.experience-view__seek::-moz-range-thumb{width:8px;height:8px;border:0;border-radius:50%;background:#eee}.experience-view__stage.is-app{min-height:640px;background:#f9f7f4;border-radius:10px}.experience-view__stage.is-mascot{max-width:680px;margin:0 auto;height:min(64svh,640px);background:#f4efef;border-radius:14px}.experience-view__stage.is-mascot canvas{width:calc(100% - 48px);height:calc(100% - 48px);margin:24px}.preview__scroll-cue[hidden]{display:none}.preview__store-release{display:flex;flex-wrap:wrap;align-items:center;gap:16px 22px;margin-top:30px}.project-store-link{display:inline-flex;min-height:50px;padding:14px 22px;align-items:center;justify-content:center;gap:20px;border:1px solid #efefef;border-radius:999px;background:#efefef;color:#111;font-size:14px;font-weight:650;line-height:1.4;text-decoration:none;transition:background .18s ease,border-color .18s ease}.project-store-link:after{content:"↗";font-size:19px;line-height:1}.project-store-link:hover{background:#fff;border-color:#fff}.project-store-link:focus-visible{outline:2px solid #fff;outline-offset:5px}.project-shipped{display:inline-flex;align-items:center;gap:9px;color:#b7b7bc;font-size:12px;line-height:1.5}.project-shipped:before{content:"";width:6px;height:6px;border-radius:50%;background:#8fbe99;flex:0 0 auto}.experience-view--case-study{padding-bottom:clamp(48px,7vw,110px)}.case-study{width:min(100%,1040px);margin:0 auto;color:#b8b8bd;font-size:16px;line-height:1.75;overflow-wrap:anywhere}.case-study__header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.case-study .case-study__role{margin:0;color:#939399;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.case-study>p,.case-study>ul,.case-study>ol{max-width:760px;margin:0 0 24px}.case-study .case-study__intro{margin-bottom:36px;color:#d4d4d8;font-size:18px;line-height:1.7}.case-study h3{max-width:800px;margin:64px 0 24px;color:#f1f1f3;font-size:clamp(26px,3vw,36px);font-weight:500;letter-spacing:-.035em;line-height:1.2}.case-study h4{margin:36px 0 18px;color:#ececef;font-size:21px;font-weight:500;letter-spacing:-.02em;line-height:1.35}.case-study strong{color:#e4e4e8;font-weight:600}.case-study ul,.case-study ol{padding-left:22px}.case-study li{padding-left:4px;margin-bottom:12px}.case-study li::marker{color:#d7d7dc}.case-study li>ul,.case-study li>ol{margin-top:12px}.case-study__image{margin:40px 0 48px;overflow:hidden;border-radius:10px;background:#1e1e1e}.case-study__image img{display:block;width:100%;height:auto}.case-study__source{display:inline-block;margin-top:24px;padding-top:24px;border-top:1px solid #303033;color:#aaaab1;font-size:12px;text-decoration:none}.case-study__source:hover{color:#fff}.case-study__source:focus-visible{outline:2px solid #eee;outline-offset:5px}@media(max-width:720px){.case-study{font-size:15px;line-height:1.7}.case-study__header{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:24px}.case-study .case-study__intro{font-size:17px}.case-study__image{margin:30px 0 36px;border-radius:7px}.case-study h3{margin-top:42px}.project-store-link{min-height:48px;padding:13px 20px}}.mascot-picker{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:10px;padding:22px 0}.mascot-picker button{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 6px;border:1px solid #303030;border-radius:10px;color:#aaa;background:#131314;font:inherit;font-size:11px;cursor:pointer}.mascot-picker button img{width:100%;height:88px;object-fit:contain}.mascot-picker button[aria-pressed=true]{border-color:#ddd;color:#eee;background:#242426}.experience-view:fullscreen{display:flex;flex-direction:column;padding:16px 24px;height:100%;width:100%;overflow:auto}.experience-view:fullscreen .experience-view__stage{flex:1;min-height:0;height:auto;max-width:none}.experience-view:fullscreen .mascot-picker{flex:0 0 auto;padding:8px 0}.experience-view:fullscreen .mascot-picker img{height:56px}@media(max-width:900px){.mascot-picker{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:720px){.experience-view{padding:24px 16px 28px}.experience-view__stage{height:65svh;min-height:260px}.experience-view__stage.is-app{min-height:500px}.experience-view__stage.is-video{height:auto;min-height:0;aspect-ratio:16/10}.experience-view__toolbar{align-items:flex-start;flex-direction:column;gap:6px}.experience-view__actions{justify-content:flex-start;gap:8px 20px}.mascot-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.experience-view:fullscreen{padding:12px}.experience-view:fullscreen .mascot-picker{display:flex;overflow-x:auto}.experience-view:fullscreen .mascot-picker button{flex:0 0 80px}}.related-work{padding:clamp(36px,6vw,96px);background:#0c0c0d}.related-work>h3{margin:0 0 30px;font-size:clamp(22px,3vw,36px);font-weight:500;letter-spacing:-.04em}.related-work__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.related-work__grid>*{display:flex;flex-direction:column;padding-bottom:18px;border-bottom:1px solid #333}.related-work img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px}.related-work h4{margin:20px 0 8px;font-size:19px;font-weight:500}.related-work p{margin:0 0 20px;color:#999;font-size:14px;line-height:1.6}.related-work span{margin-top:auto;color:#bbb;font-size:12px}.related-work a:hover span{color:#fff}.related-work a:focus-visible{outline:1px solid #fff;outline-offset:6px}@media(max-width:720px){.related-work__grid{grid-template-columns:1fr}}@media(max-width:720px){.preview__editorial{min-height:100svh;padding:28vh 14px 22px}.preview__article-panel{padding:28px 22px 34px;border-radius:18px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.preview__article-title{font-size:clamp(2.2rem,12vw,3.8rem)}.preview__article-body{grid-template-columns:1fr;gap:18px}}@media(prefers-reduced-motion:reduce){.preview__stage,.preview__image,.preview__article{transition-duration:1ms}.preview__image{transform:none}}.preview__nav{position:absolute;z-index:2;top:50%;width:clamp(48px,4vw,64px);height:clamp(48px,4vw,64px);margin-top:calc(clamp(48px,4vw,64px)/-2);padding:0;border:1px solid rgba(255,255,255,.34);border-radius:50%;background:#0c0c0c6b;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .32s ease .18s,background .2s ease,border-color .2s ease,transform .24s cubic-bezier(.16,1,.3,1)}.preview.is-open .preview__nav{opacity:1;pointer-events:auto}.preview__nav:hover,.preview__nav:focus-visible{background:#ffffffeb;border-color:transparent}.preview__nav:before,.preview__nav:after{position:absolute;top:50%;left:50%;width:12px;height:2px;border-radius:2px;background:#fff;content:"";transition:background .2s ease}.preview__nav:hover:before,.preview__nav:hover:after,.preview__nav:focus-visible:before,.preview__nav:focus-visible:after{background:#111}.preview__nav:before{transform:translate(-50%,-50%) translateY(-3.6px) rotate(var(--chevron-top))}.preview__nav:after{transform:translate(-50%,-50%) translateY(3.6px) rotate(var(--chevron-bottom))}.preview__nav--previous{--chevron-top: -45deg;--chevron-bottom: 45deg;left:clamp(20px,3vw,52px)}.preview__nav--next{--chevron-top: 45deg;--chevron-bottom: -45deg;right:clamp(20px,3vw,52px)}.preview__nav--previous:hover{transform:translate(-3px)}.preview__nav--next:hover{transform:translate(3px)}@media(max-width:720px){.preview__nav{top:auto;bottom:22px;width:44px;height:44px;margin-top:0}.preview__nav--previous{left:18px}.preview__nav--next{right:18px}}@media(prefers-reduced-motion:reduce){.preview__nav{transition-duration:1ms}}.preview__close{position:absolute;z-index:3;top:clamp(18px,2.4vw,40px);left:50%;transform:translate(-50%);width:46px;height:46px;padding:0;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:#0c0c0c6b;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);color:#fff;font-size:1.5rem;line-height:1;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .26s ease,background .2s ease,color .2s ease}.preview.is-open .preview__close{opacity:1;pointer-events:auto}.preview.is-open.is-cursor-active .preview__close{opacity:1}.preview__close:hover,.preview__close:focus-visible{background:#ffffffeb;color:#111}.preview__media{position:absolute;inset:0}.project-cards{position:absolute;inset:0;display:flex;gap:clamp(12px,1.8vw,34px);width:100%;height:100%;padding:clamp(76px,9vh,118px) clamp(14px,1.2vw,24px) clamp(14px,1.2vw,24px);opacity:1;will-change:filter}.project-stage:not(.is-ready){visibility:hidden}.project-stage.is-interactive .project-cards{pointer-events:auto}.project-stage.is-exiting .project-cards{pointer-events:none}.project-stage.is-exiting .project-card-tile{pointer-events:auto}.project-stage.is-interactive.is-exiting .project-rail-arrow{opacity:0;pointer-events:none}.project-stage.is-exited{visibility:hidden;pointer-events:none}@media(max-width:720px){.project-stage.is-exiting .project-cards{clip-path:none}}.project-rail-arrow{display:none}.project-stage:not(.is-interactive) .project-card-tile{transition:none;will-change:transform,border-radius}.project-card-tile{--exit-y: 0px;--morph-x: 0px;--morph-y: 0px;--morph-scale-x: 1;--morph-scale-y: 1;--tile-progress: 0;--tile-media-progress: 0;--tile-radius: 0px;position:relative;flex:1 1 0;min-width:0;height:100%;padding:0;overflow:hidden;border:0;border-radius:var(--tile-radius);background:var(--card-background, var(--accent));cursor:pointer;translate:0 var(--exit-y);transform:translate3d(var(--morph-x),var(--morph-y),0) scale(var(--morph-scale-x),var(--morph-scale-y));transform-origin:top left;transition:transform .42s cubic-bezier(.22,1,.36,1),box-shadow .42s ease}.project-card-tile:before{position:absolute;inset:0;z-index:5;background:#d9d9d9;opacity:calc(1 - var(--tile-progress));pointer-events:none;content:""}.project-card-tile:hover,.project-card-tile:focus-visible{transform:translateY(-8px);box-shadow:0 22px 48px #00000073}.project-card-tile__media{position:absolute;left:0;bottom:0;width:100%;height:48%;pointer-events:none}.project-card-tile__media img{width:100%;height:100%;object-fit:contain;object-position:center bottom;opacity:var(--tile-media-progress);transition:opacity .42s ease,transform .62s cubic-bezier(.22,1,.36,1)}.project-card-tile:hover .project-card-tile__media img,.project-card-tile:focus-visible .project-card-tile__media img{opacity:1;transform:scale(1.025)}.project-card-tile[data-project=alliam] .project-card-tile__media{width:120%;left:-10%;height:45%;bottom:5%}.project-card-tile[data-project=formation-engine] .project-card-tile__media{width:130%;left:-6%;height:50%;bottom:5%}.project-card-tile[data-project=mascots] .project-card-tile__media{width:110%;height:43%;bottom:1%}.project-card-tile[data-project=kamari-platform] .project-card-tile__media{width:95%;left:10%;height:48%;bottom:-3%}.project-card-tile[data-project=kamari-gold] .project-card-tile__media{width:170%;left:-17%;height:53%}.project-card-tile[data-project=vimeo] .project-card-tile__media{width:86%;left:7%;height:41%;bottom:1%}.project-card-tile:after{content:none}.project-card-tile__title{position:absolute;z-index:3;transition:opacity .26s ease;top:clamp(18px,1.8vw,34px);left:clamp(12px,.9vw,18px);right:12px;color:#f3efee;font-size:clamp(12px,1.2vw,24px);font-weight:800;letter-spacing:-.015em;line-height:1.28;text-align:left;text-transform:uppercase;white-space:normal;writing-mode:horizontal-tb;opacity:var(--tile-media-progress)}.project-card-tile__title>span{display:block}.project-card-tile:focus-visible{outline:2px solid #f5f2ed;outline-offset:4px}@media(min-width:901px)and (max-width:1100px){.project-cards{gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.project-cards::-webkit-scrollbar{display:none}.project-card-tile{flex:0 0 calc((100% - 36px)/4);scroll-snap-align:start}}@media(min-width:721px)and (max-width:900px){.project-cards{gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.project-cards::-webkit-scrollbar{display:none}.project-card-tile{flex:0 0 calc((100% - 24px) / 3);scroll-snap-align:start}}@media(min-width:721px)and (max-width:1100px){.project-rail-arrow{position:absolute;top:50%;z-index:8;display:grid;width:44px;height:64px;padding:0;place-items:center;border:0;border-radius:999px;background:#0909099e;opacity:0;pointer-events:none;cursor:pointer;transform:translateY(-50%);transition:opacity .18s ease,background-color .18s ease}.project-stage.is-interactive .project-rail-arrow{opacity:1;pointer-events:auto}.project-rail-arrow--previous{left:10px}.project-rail-arrow--next{right:10px}.project-rail-arrow:before{width:13px;height:13px;border-top:2px solid #efefef;border-right:2px solid #efefef;content:""}.project-rail-arrow--previous:before{transform:translate(3px) rotate(-135deg)}.project-rail-arrow--next:before{transform:translate(-3px) rotate(45deg)}.project-rail-arrow:hover,.project-rail-arrow:focus-visible{background:#181818e6}.project-rail-arrow:focus-visible{outline:2px solid #efefef;outline-offset:3px}.project-rail-arrow:disabled{opacity:.22;pointer-events:none}}@media(max-width:720px){.project-cards{flex-direction:column;gap:12px;padding:clamp(62px,9svh,82px) 14px 18px;overflow-x:hidden;overflow-y:auto;scroll-snap-type:y proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-y:auto;scroll-padding-top:clamp(62px,9svh,82px);clip-path:inset(clamp(62px,9svh,82px) 0 0)}.project-cards::-webkit-scrollbar{display:none}.project-card-tile{flex:0 0 clamp(156px,23svh,204px);width:100%;min-height:156px;scroll-snap-align:start}.project-card-tile__title{right:auto;top:18px;left:16px;max-height:none;max-width:43%;font-size:.9rem;letter-spacing:-.015em;white-space:normal;writing-mode:horizontal-tb;transform:none}.project-card-tile[data-project] .project-card-tile__media{inset:auto 3% 0 auto;width:49%;height:92%}.project-card-tile__media img{width:100%;height:100%;object-fit:contain;object-position:center}.project-card-tile:after{background:linear-gradient(to top,#000000c7,#0003 42%,#0000 70%)}.project-card-tile:hover,.project-card-tile:focus-visible{transform:none;box-shadow:none}}@media(prefers-reduced-motion:reduce){.project-card-tile,.project-card-tile__media img,.preview,.preview__stage,.preview__article,.preview.has-article.is-open.is-switching .preview__article{transition-duration:1ms;transition-delay:0s}}
