.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@font-face{font-family:Inter;src:url(/assets/fonts/InterVariable-latin-v1.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+100-24F,U+20A0-20AB,U+20AD-20CF,U+219A-21FF}@font-face{font-family:Inter;src:url(/assets/fonts/InterVariable-latin-v3.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+??,U+2000-206F,U+20AC,U+2190-2199,U+2212}:root{--font-ui:"Inter", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--type-page-title:1.75rem;--type-page-title-small:1.5rem;--type-lead:1.375rem;--type-lead-small:1.25rem;--type-body:1rem;--type-meta:.875rem;--type-tooltip:.75rem;--leading-title:1.25;--leading-body:1.5;--tracking-body:-.018em;--tracking-title:-.025em;--weight-regular:400;--weight-medium:500;--weight-semibold:600}@media (width<=760px){:root{--type-page-title:var(--type-page-title-small);--type-lead:var(--type-lead-small)}}@container (width<=620px){.collection-content{--type-page-title:var(--type-page-title-small)}}@container (width<=760px){.collection-content{--type-lead:var(--type-lead-small)}}*{box-sizing:border-box}body{min-width:320px;font-family:var(--font-ui);font-variant-numeric:tabular-nums;font-size:var(--type-meta);line-height:var(--leading-body);letter-spacing:var(--tracking-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit}img,video,svg{max-width:100%;display:block}::selection{background:#292a282e}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{z-index:1000;background:var(--text);color:var(--bg);box-shadow:var(--shadow-sm);border-radius:999px;padding:10px 15px;transition:top .18s;position:fixed;top:-72px;left:16px}.skip-link:focus{top:16px}:focus:not(:focus-visible),html[data-input=pointer] :focus{outline:none}button,a{-webkit-tap-highlight-color:transparent}html:has(.canvas-page){scrollbar-gutter:auto;scroll-behavior:auto;background:#f1f1f0;overflow:hidden}.canvas-page{--bg:#f1f1f0;--text:#292a28;--muted:#73746f;--focus:#6a7659;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--bg);color:var(--text)}portfolio-canvas{height:100dvh;display:block;overflow:hidden}.personal-workspace{grid-template-columns:266px minmax(0,1fr);height:100dvh;min-height:0;padding:22px 22px 22px 0;display:grid}.personal-sidebar{scrollbar-width:none;flex-direction:column;min-width:0;height:calc(100dvh - 44px);padding:24px 27px 12px 28px;display:flex;position:sticky;top:22px;overflow:hidden auto}.personal-sidebar::-webkit-scrollbar{display:none}.sidebar-identity{align-items:center;gap:12px;display:flex}.personal-signature{flex-shrink:0;width:60px;height:auto;display:block}.sidebar-profile{box-sizing:content-box;width:52px;height:52px;box-shadow:none;border:0;border-radius:4px;flex-shrink:0}.sidebar-profile img{object-fit:contain;border-radius:4px;width:100%;height:100%;display:block}.sidebar-heading{margin-top:27px}.mobile-about-toggle{display:none}.sidebar-intro h1{white-space:nowrap;font-size:var(--type-meta);line-height:var(--leading-body);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-body);margin:0 0 9px}.sidebar-role{max-width:none;font-size:var(--type-meta);line-height:var(--leading-body);letter-spacing:var(--tracking-body);color:#686d63;text-wrap:balance;margin:0;font-weight:400}.sidebar-social-group{border-bottom:1px dashed #cccdc8;margin-top:24px;padding-bottom:16px}.sidebar-about{border-top:1px dashed #cccdc8;margin-top:22px;padding-top:23px}.sidebar-about p{font-size:var(--type-meta);line-height:var(--leading-body);color:#666961;letter-spacing:var(--tracking-body);margin:0}.sidebar-about .sidebar-invitation{color:#73766d;font-size:var(--type-meta);margin-top:22px;padding-right:12px;font-style:italic}.sidebar-invitation svg{vertical-align:middle;stroke:#8c9182;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:41px;height:23px;margin-left:8px;display:inline-block}.sidebar-socials{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sidebar-socials:has(.social-copy-email){column-gap:4px}.social-icon-link{color:#60655b;border-radius:10px;place-items:center;width:34px;height:34px;transition:color .16s,background .16s,box-shadow .16s;display:grid;position:relative}.social-copy-email{cursor:pointer;background:0 0;border:0;padding:0}.email-copy-toast{z-index:1000;bottom:max(24px, env(safe-area-inset-bottom));background:var(--text);max-width:calc(100vw - 32px);color:var(--bg);font-size:var(--type-meta);font-weight:var(--weight-medium);line-height:var(--leading-body);text-align:center;overflow-wrap:anywhere;border-radius:12px;padding:12px 18px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 4px 24px #0002}.email-copy-toast:empty{display:none}.social-icon-link>svg{width:18px;height:18px;transition:transform .2s cubic-bezier(.2,.8,.2,1)}.social-icon-link:is(:hover,:focus-visible){color:#2c3328;background:#fff;box-shadow:0 2px 7px #252f1d08,inset 0 0 0 1px #d9ddd480}.social-icon-link:is(:hover,:focus-visible)>svg{transform:translateY(-1px)}.social-tooltip{z-index:20;color:#f8f9f5;font-size:var(--type-tooltip);line-height:1rem;font-weight:var(--weight-regular);letter-spacing:0;white-space:nowrap;opacity:0;transform-origin:bottom;pointer-events:none;background:#2e332b;border:1px solid #ffffff14;border-radius:6px;padding:5px 8px;transition:opacity .14s,transform .18s cubic-bezier(.2,.8,.2,1);position:absolute;bottom:calc(100% + 9px);left:50%;transform:translate(-50%,4px)scale(.96);box-shadow:0 4px 12px #242b2020}.social-tooltip:after{content:"";background:#2e332b;border-radius:0 0 1px;width:6px;height:6px;position:absolute;bottom:-3px;left:calc(50% - 3px);transform:rotate(45deg)}.social-icon-link:is(:hover,:focus-visible) .social-tooltip{opacity:1;transform:translate(-50%)scale(1)}.social-note{color:#626a58;pointer-events:none;align-items:flex-end;min-height:36px;padding:0 0 2px 60px;display:flex;position:relative}.social-note svg{stroke:currentColor;stroke-width:1.15px;stroke-linecap:round;stroke-linejoin:round;width:48px;height:35px;position:absolute;top:-1px;left:7px}.social-note span{font-family:Bradley Hand,Segoe Print,Noteworthy,cursive;font-size:var(--type-meta);transform-origin:0;line-height:1.2;transform:rotate(-4deg)}@media (prefers-reduced-motion:no-preference){.personal-signature path{stroke-dasharray:1;stroke-dashoffset:0;animation:signature-stroke var(--segment-duration) linear var(--segment-start) both}.social-note path{stroke-dasharray:1;stroke-dashoffset:0;animation:social-arrow-draw .65s cubic-bezier(.35, .05, .4, 1) calc(var(--signature-finished,0s) + .25s) both}.social-note .social-arrow-head{animation-duration:.22s;animation-delay:calc(var(--signature-finished,0s) + .85s)}.social-note span{animation:social-note-reveal .42s ease-out calc(var(--signature-finished,0s) + 1.14s) both}}@keyframes signature-stroke{0%{stroke-dashoffset:1px;opacity:0}.01%{opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes social-arrow-draw{0%{stroke-dashoffset:1px;opacity:0}1%{opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes social-note-reveal{0%{opacity:0;transform:translateY(3px)rotate(-4deg)}to{opacity:1;transform:translateY(0)rotate(-4deg)}}.sidebar-availability{font-size:var(--type-meta);color:#73796c;align-items:center;gap:7px;margin-top:24px;line-height:1.6;display:flex}.sidebar-availability i{background:#80955c;border-radius:50%;flex:0 0 5px;height:5px;box-shadow:0 0 0 3px #80955c0d}.sidebar-availability.is-unavailable i{background:#aaa99d}.sidebar-bottom{font-size:var(--type-meta);color:#626a58;gap:7px;margin-top:auto;padding-top:36px;display:grid}.sidebar-bottom>span:last-child{align-items:center;gap:11px;display:flex}.sidebar-bottom>span>span{font-size:var(--type-body);color:#8b927b}.video-desk{isolation:isolate;contain:layout paint;background:#fff;border-radius:34px;min-width:0;height:calc(100dvh - 44px);position:relative;overflow:hidden;box-shadow:0 18px 26px -20px #34383130,0 2px 3px #fff}.desk-caption{z-index:11;pointer-events:none;background:0 0;justify-content:space-between;align-items:center;gap:16px;padding:20px 28px;display:flex;position:absolute;bottom:0;left:0;right:0}.desk-caption h2{font-size:var(--type-meta);font-weight:var(--weight-regular);color:#73776e;margin:0}.desk-hint{color:#6a7263;font-size:var(--type-meta);flex-shrink:0;align-items:center;gap:8px;display:inline-flex}.drag-hand{stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;transform-origin:50% 75%;width:19px;height:19px;animation:3.6s ease-in-out 3 canvas-grab-hint}@keyframes canvas-grab-hint{0%,15%,85%,to{transform:translate(2px)rotate(0)}35%,55%{transform:translate(-3px)rotate(-10deg)}}.desk-viewport{touch-action:none;cursor:grab;overscroll-behavior:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:relative;overflow:hidden;container-type:inline-size}.desk-viewport:focus-visible{outline-offset:-6px}.canvas-world{transform-origin:0 0;will-change:transform;position:absolute;top:0;left:0}.canvas-world:not([data-ready]){width:100%;height:100%}.canvas-world:not([data-ready]) .video-object{display:none}.canvas-world:not([data-ready]) .video-object:first-child{width:var(--initial-width);height:var(--initial-height);display:block;top:50%;left:50%;transform:translate(-50%,-50%)}@container (width<600px){.canvas-world:not([data-ready]) .video-object:first-child{transform:translate(-50%,-50%)scale(.76)}}.video-object{position:absolute}.video-card{background:#fff;background:var(--card-tone);cursor:pointer;touch-action:none;border:0;border-radius:25px;width:100%;height:100%;padding:4px;transition:box-shadow .18s;display:block;position:relative;overflow:hidden;box-shadow:0 9px 22px -12px #464a5045,0 0 0 1px #343a4007}.video-card:focus-visible{outline-offset:5px}.video-card:hover{box-shadow:0 18px 30px -15px #464a5055,0 0 0 1px #343a4008}.desk-viewport.is-panning,.desk-viewport.is-panning .video-card{cursor:grabbing}.video-card video{clip-path:inset(0 round 21px);object-fit:contain;pointer-events:none;opacity:0;border-radius:21px;width:calc(100% - 8px);height:calc(100% - 8px);display:block;position:absolute;inset:4px}.video-opening-frame{object-fit:contain;clip-path:inset(0 round 21px);pointer-events:none;opacity:0;border-radius:21px;width:calc(100% - 8px);height:calc(100% - 8px);position:absolute;inset:4px}.video-card.has-opening-frame .video-opening-frame{opacity:1}.video-card.has-opening-frame .video-placeholder{display:none}.video-card.has-video .video-opening-frame{opacity:0}.video-card.has-video{background:#fff}.video-card.has-video video{opacity:1}.video-card.is-expanded{opacity:0;pointer-events:none}.video-placeholder{color:#737671;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:25px;display:flex;position:absolute;inset:0}.placeholder-play{background:#ffffff29;border:1px solid #ffffff7a;border-radius:50%;place-items:center;width:54px;height:54px;display:grid}.placeholder-play svg{stroke:currentColor;stroke-width:1.1px;width:23px;height:23px}.preview-state{font-size:var(--type-meta);opacity:.9}.placeholder-title{font-size:var(--type-meta);font-weight:var(--weight-regular);color:#646a62;position:absolute;bottom:23px}.video-card.has-video .video-placeholder{display:none}.card-expand{opacity:0;color:#4f574f;background:#ffffff26;border:1px solid #ffffff50;border-radius:50%;place-items:center;width:29px;height:29px;transition:opacity .18s;display:grid;position:absolute;top:14px;right:14px}.video-card:hover .card-expand,.video-card:focus-visible .card-expand{opacity:1}.card-expand svg{stroke:currentColor;stroke-width:1.3px;width:16px;height:16px}.video-card.has-video .card-expand{color:#fff;background:#252a3140}.desk-toolbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:10;background:#fafbf8eb;border:1px solid #e5e7e0;border-radius:14px;padding:5px;display:flex;position:absolute;bottom:62px;right:20px;box-shadow:0 4px 18px #2a32210b}.desk-tools{align-items:center;gap:3px;display:flex}.desk-tools button{cursor:pointer;color:#71776b;background:0 0;border:0;border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.desk-tools button:hover{color:#333d2b;background:#eceee8}.desk-tools svg{stroke:currentColor;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.canvas-empty{color:#7f8676;text-align:center;width:70%;font-size:var(--type-meta);position:absolute;top:45%;left:15%}.canvas-noscript{color:#555b4e;font-size:var(--type-meta);z-index:35;background:#fff;padding:16px;position:absolute;inset:auto 30px 80px}.canvas-noscript a{text-decoration:underline}.video-dialog{color:#393d37;background:0 0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.video-dialog::backdrop{-webkit-backdrop-filter:blur(18px);opacity:0;background:#f1f1f0ed;transition:opacity .35s}.video-dialog.is-visible::backdrop{opacity:1}.video-dialog-sheet{box-shadow:none;pointer-events:none;background:0 0;border-radius:27px;position:absolute}.expanded-video-wrap{clip-path:inset(0 round 21px);isolation:isolate;contain:layout paint size;background:0 0;border-radius:21px;place-items:center;display:grid;position:absolute;overflow:hidden;transform:translateZ(0);container-type:size}.expanded-video-wrap.has-video{background:0 0}.expanded-video{width:min(100cqw, calc(100cqh * var(--video-ratio,1)));height:min(100cqh, calc(100cqw / var(--video-ratio,1)));border-radius:inherit;max-width:none;clip-path:inherit;object-fit:contain;background:0 0;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.expanded-video-state{text-align:center;color:#68725d;font-size:var(--type-meta);background:radial-gradient(at 0 0,#ffffffe0,#0000);flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:30px;display:flex;position:absolute;inset:0}.expanded-opening-frame{width:min(100cqw, calc(100cqh * var(--video-ratio,1)));height:min(100cqh, calc(100cqw / var(--video-ratio,1)));border-radius:inherit;object-fit:contain;opacity:0;pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.expanded-video-wrap.has-opening-frame .expanded-opening-frame{opacity:1}.expanded-video-wrap.has-video .expanded-opening-frame{opacity:0}.expanded-video-wrap:is(.has-video,.has-opening-frame) .expanded-video-state{display:none}.expanded-state-icon{background:#ffffff42;border:1px solid #ffffff9c;border-radius:50%;place-items:center;width:72px;height:72px;font-size:30px;font-weight:300;display:grid}.video-retry{color:#667456;cursor:pointer;background:#fff8;border:1px solid #d1d6c7;border-radius:9px;padding:8px 15px}.video-retry[hidden]{display:none}.video-dialog-info{flex-direction:column;min-width:0;padding:0;display:flex;position:absolute;overflow:hidden}.dialog-navigation{z-index:5;justify-content:space-between;align-items:flex-start;gap:14px;display:flex;position:absolute}.video-picker{scrollbar-width:thin;flex-wrap:nowrap;align-items:center;gap:6px;min-width:0;height:32px;display:flex;overflow-x:auto}.video-picker button{color:#68725d;min-width:31px;height:30px;font-size:var(--type-meta);cursor:pointer;background:#f9faf7;border:1px solid #e8ebe4;border-radius:9px}.video-picker button[aria-pressed=true]{color:#4c5b3d;background:#e9eddf;border-color:#d7decb}.video-picker-label{color:#68725d;font-size:var(--type-meta)}.dialog-close{color:#8a9084;cursor:pointer;background:#fff;border:1px solid #e9ece5;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;transition:background .15s;display:grid}.dialog-close:hover{color:#343e2a;background:#f3f5ee}.dialog-close svg{stroke:currentColor;stroke-width:1.3px;width:19px;height:19px}.dialog-description{scrollbar-width:thin;overscroll-behavior:contain;flex-shrink:1;min-height:0;margin-top:auto;padding-top:0;overflow-y:auto}.dialog-category{font-size:var(--type-meta);letter-spacing:.035em;color:#92978c;margin:0 0 12px}.dialog-title-group h2{font-size:var(--type-body);line-height:var(--leading-body);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title);overflow-wrap:anywhere;margin:0 0 10px}#video-dialog-description{font-size:var(--type-body);line-height:var(--leading-body);color:#73776e;letter-spacing:var(--tracking-body);margin:0}.dialog-tags{flex-wrap:wrap;gap:5px;margin-top:12px;display:flex}.dialog-tags span{color:#68725d;font-size:var(--type-meta);line-height:var(--leading-body);letter-spacing:0;background:#f6f7f3;border:1px solid #edeee8;border-radius:7px;padding:4px 7px}.dialog-project-link{font-size:var(--type-meta);background:#f3f4f0;border-radius:9px;justify-content:space-between;align-items:center;gap:15px;margin-top:14px;padding:11px 12px;transition:background .15s;display:flex}.dialog-project-link>span:last-child{color:#959d8b;font-size:var(--type-body)}.dialog-project-link[hidden]{display:none}.dialog-project-navigation{color:#68725d;font-size:var(--type-meta);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.dialog-project-navigation button{color:#68725d;width:44px;height:44px;font-size:var(--type-meta);cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;padding:0;display:flex}.dialog-project-navigation button:hover{color:#384628}.canvas-page:has(.video-dialog[open]){overflow:hidden}@media (width<=1100px){.personal-workspace{grid-template-columns:235px minmax(0,1fr);padding:16px 16px 16px 0}.personal-sidebar{height:calc(100dvh - 32px);padding:22px 23px 8px;top:16px}.video-desk{border-radius:28px;height:calc(100dvh - 32px)}.sidebar-intro h1,.sidebar-role,.sidebar-about p{font-size:var(--type-meta)}}@media (width<=760px){.personal-workspace{padding:0 max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));flex-direction:column;height:100dvh;display:flex}.personal-sidebar{height:auto;max-height:48dvh;padding:max(10px, env(safe-area-inset-top)) 6px 8px;flex:none;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"identity controls""intro intro""social social";align-items:center;gap:0 8px;display:grid;position:static;overflow-y:auto}.sidebar-intro{display:contents}.sidebar-identity{grid-area:identity;gap:8px}.personal-signature{width:50px}.sidebar-profile{align-self:center;width:36px;height:36px}.sidebar-heading{grid-area:intro;margin-top:0}.sidebar-name-row{justify-content:space-between;align-items:center;gap:12px;min-height:40px;display:flex}.sidebar-intro h1{font-size:var(--type-meta);margin:0;line-height:1.5}.mobile-about-toggle{min-width:60px;min-height:44px;color:var(--muted);font:inherit;font-size:var(--type-meta);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:flex-end;align-items:center;gap:4px;padding:0;display:inline-flex}.mobile-about-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.sidebar-role{max-width:none;font-size:var(--type-meta);line-height:var(--leading-body);padding:0 0 12px}.sidebar-social-group{grid-area:social;min-width:0;margin:0;padding:0 0 10px}.sidebar-socials{flex-wrap:nowrap;gap:0}.social-icon-link{width:40px;height:44px}.social-icon-link>svg{width:17px;height:17px}.social-note{display:none}.social-tooltip{left:0;transform:translateY(4px)scale(.96)}.social-icon-link:is(:hover,:focus-visible) .social-tooltip{transform:translate(0)scale(1)}.video-desk{border-radius:23px;flex:1;height:auto;min-height:0}.desk-caption{gap:10px;padding:12px 14px}.desk-caption h2{font-size:var(--type-meta)}.desk-toolbar{border-radius:12px;bottom:56px;right:13px}.video-dialog-sheet{border-radius:23px}.expanded-video-wrap{clip-path:inset(0 round 16px);border-radius:16px}.dialog-close{width:32px;height:32px}.video-dialog-info{padding:0}.dialog-description{padding-top:0}.dialog-tags{margin-top:12px}.dialog-project-link{margin-top:14px;padding:11px 12px}.dialog-project-navigation{padding-top:12px}}@media (width<=380px){.desk-hint{gap:5px}}@media (prefers-reduced-motion:reduce){.canvas-page *,.canvas-page :before,.canvas-page :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.dialog-video-date{color:#73736c;font-size:var(--type-meta);font-weight:var(--weight-regular);letter-spacing:0;line-height:var(--leading-body);margin-bottom:8px;display:block}.dialog-video-date[hidden]{display:none}.social-icon-pending{color:#969a91;cursor:default}.social-icon-pending:is(:hover,:focus-visible){color:#777e6f;box-shadow:none;background:0 0}.social-icon-pending:is(:hover,:focus-visible)>svg{transform:none}.canvas-dots{pointer-events:none;will-change:transform;background-image:radial-gradient(circle,#d4d7d7 .85px,#0000 1px);background-position:9px 9px;background-size:24px 24px;position:absolute;inset:-24px}.desk-viewport.is-panning .video-card{transition:none}.desk-viewport.is-panning .video-card:hover{box-shadow:0 9px 22px -12px #464a5045,0 0 0 1px #343a4007}.desk-viewport.is-panning .card-expand{opacity:0;transition:none}.video-playback{z-index:4;border-radius:0;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;color:#fff;height:88px;box-shadow:none;text-shadow:0 1px 5px #0008;background:linear-gradient(#0000,#0008);border:0;grid-template-rows:44px 24px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:0 4px;padding:12px 8px 8px;display:grid;position:absolute}.video-playback[hidden]{display:none}.video-play-toggle{width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;transition:background .12s,transform .12s;display:grid}.video-play-toggle:hover{background:#ffffff16}.video-play-toggle:active{transform:scale(.9)}.video-play-toggle:focus-visible{outline-offset:-3px;outline-color:#fff}.video-play-toggle svg{fill:currentColor;grid-area:1/1;width:18px;height:18px}.video-play-toggle .pause-icon,.video-play-toggle[data-playing=true] .play-icon{display:none}.video-play-toggle[data-playing=true] .pause-icon{display:block}.video-time{grid-template-columns:var(--time-part-width,4ch) auto var(--time-part-width,4ch);letter-spacing:0;font-variant-numeric:tabular-nums;white-space:nowrap;justify-self:end;align-items:center;column-gap:.2em;margin:0;font-size:12px;line-height:1;display:inline-grid}.sidebar-role p{white-space:pre-wrap;margin:0}.sidebar-role p+p{margin-top:.8em}.sidebar-role strong{font-weight:var(--weight-semibold)}.sidebar-role em{font-style:italic}.video-time [data-elapsed],.video-time [data-duration]{text-align:right}.signature-replay{min-width:44px;min-height:44px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:grid;position:relative}.signature-replay:focus-visible{outline:2px solid var(--muted);outline-offset:4px}.signature-credit-group{flex-shrink:0;position:relative}.signature-credit-group .signature-credit{visibility:hidden;transition:opacity .14s,transform .18s,visibility .18s;top:calc(100% + 7px);bottom:auto}.signature-credit:before{content:"";height:12px;position:absolute;top:-12px;left:0;right:0}.signature-credit-group .signature-credit:after{top:-3px;bottom:auto}.signature-credit-group:is(:hover,:focus-within) .signature-credit{visibility:visible;opacity:1;pointer-events:auto;transform:translate(-50%)scale(1)}.signature-credit a{color:inherit;font-weight:var(--weight-semibold);text-underline-offset:3px;padding-block:4px;text-decoration:underline;text-decoration-thickness:1px;display:inline-block}.signature-credit a:hover{text-decoration-thickness:2px}.signature-credit a:focus-visible{outline-offset:3px;border-radius:2px;outline:1px solid}@media (width>=500px) and (width<=1000px) and (height<=500px){.personal-workspace{padding:16px max(16px, env(safe-area-inset-right)) 16px env(safe-area-inset-left);grid-template-columns:clamp(184px,24vw,210px) minmax(0,1fr);display:grid}.personal-sidebar{align-items:stretch;height:calc(100dvh - 32px);max-height:none;padding:12px 16px;display:flex;position:static}.sidebar-intro{display:block}.video-desk{height:calc(100dvh - 32px)}.sidebar-profile{width:36px;height:36px}.personal-signature{width:50px}.sidebar-heading{margin-top:8px}.sidebar-name-row{justify-content:space-between;align-items:center;gap:4px;display:flex}.sidebar-intro h1{font-size:var(--type-meta);margin:0}.mobile-about-toggle{min-width:52px;min-height:44px;color:var(--muted);font:inherit;font-size:var(--type-meta);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:flex-end;align-items:center;gap:2px;padding:0;display:inline-flex}.mobile-about-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.sidebar-role{font-size:var(--type-meta);padding-bottom:10px}.sidebar-social-group{margin-top:0;padding:6px 0 10px}.sidebar-socials{gap:0}.social-icon-link{width:40px;height:44px}.social-note{display:none}.desk-caption{padding:12px 14px}}@media (width<=760px){.signature-credit-group .signature-credit{left:0;transform:translateY(4px)scale(.96)}.signature-credit-group:is(:hover,:focus-within) .signature-credit{transform:translate(0)scale(1)}}.mobile-feed-hint{display:none}@media (width<=760px),(width<=1000px) and (height<=500px){.desk-viewport{touch-action:pan-y pinch-zoom;overscroll-behavior-y:contain;cursor:auto;scrollbar-width:none;overflow-anchor:none;overflow:hidden auto}.desk-viewport::-webkit-scrollbar{display:none}.canvas-world{will-change:auto;position:relative;transform:none}.canvas-dots{will-change:auto;position:fixed;inset:0;transform:none}.video-object[inert]{display:none}.video-card{touch-action:pan-y pinch-zoom}.desk-viewport.is-panning,.desk-viewport.is-panning .video-card{cursor:auto}.desktop-canvas-hint,.desk-hint .drag-hand{display:none}.mobile-feed-hint{display:inline}.canvas-world:not([data-ready]){padding-top:20px}.canvas-world:not([data-ready]) .video-object:first-child{--feed-first-width:min(calc(100cqw - 40px), calc(clamp(240px, 62dvh, 520px) * var(--initial-ratio)));width:calc(var(--feed-first-width) + 8px);height:calc(var(--feed-first-width) / var(--initial-ratio) + 8px);margin-inline:auto;position:relative;top:auto;left:auto;transform:none}}@media (width>=500px) and (width<=1000px) and (height<=500px){.social-icon-link{width:36px}}@media (width<=760px),(width<=1000px) and (height<=500px){portfolio-canvas:has(.video-dialog[open]) .desk-viewport{overflow-y:hidden}.desk-caption{display:none}.sidebar-bio-reveal{opacity:0;visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.22,1,.36,1),opacity .18s,visibility 0s linear .3s;display:grid}.sidebar-bio-clip{min-height:0;overflow:hidden}portfolio-canvas[data-bio-open] .sidebar-bio-reveal{opacity:1;visibility:visible;grid-template-rows:1fr;transition:grid-template-rows .3s cubic-bezier(.22,1,.36,1),opacity .22s 40ms,visibility}.mobile-about-toggle svg{transition:transform .3s cubic-bezier(.22,1,.36,1)}}portfolio-canvas[data-playground-layout=masonry] .desk-viewport{touch-action:pan-y pinch-zoom;overscroll-behavior-y:contain;overflow-anchor:none;cursor:auto;scrollbar-width:none;overflow:hidden auto}portfolio-canvas[data-playground-layout=masonry] .desk-viewport::-webkit-scrollbar{display:none}portfolio-canvas[data-playground-layout=masonry] .canvas-world{will-change:auto;position:relative;transform:none}portfolio-canvas[data-playground-layout=masonry] .canvas-dots{will-change:auto;position:fixed;inset:0;transform:none}portfolio-canvas[data-playground-layout=masonry] .video-card{touch-action:pan-y pinch-zoom}portfolio-canvas[data-playground-layout=masonry] .desk-viewport.is-panning,portfolio-canvas[data-playground-layout=masonry] .desk-viewport.is-panning .video-card{cursor:auto}portfolio-canvas[data-playground-layout=masonry] .desk-caption,portfolio-canvas[data-playground-layout=masonry] .desktop-canvas-hint{display:none}portfolio-canvas[data-playground-layout=masonry] .mobile-feed-hint{display:inline}portfolio-canvas[data-playground-layout=masonry]:has(.video-dialog[open]) .desk-viewport{overflow-y:hidden}@media (width>=761px) and (height>=501px),(width>=1001px){portfolio-canvas[data-playground-layout=masonry] .canvas-world:not([data-ready]){--masonry-columns:1;padding:0}portfolio-canvas[data-playground-layout=masonry] .canvas-world:not([data-ready]) .video-object:first-child{--columns:min(var(--masonry-count), var(--masonry-columns));--column-width:min(420px, (100cqw - 40px - (var(--columns) - 1) * 16px) / var(--columns));--outer-width:var(--column-width);top:20px;left:calc((100cqw - var(--column-width) * var(--columns) - (var(--columns) - 1) * 16px) / 2);width:var(--outer-width);height:calc((var(--outer-width) - 8px) / var(--initial-ratio) + 8px);margin:0;position:absolute;transform:none}@container (width>=600px){portfolio-canvas[data-playground-layout=masonry] .canvas-world:not([data-ready]){--masonry-columns:2}}@container (width>=960px){portfolio-canvas[data-playground-layout=masonry] .canvas-world:not([data-ready]){--masonry-columns:3}}}.video-dialog-info{text-align:center}.dialog-caption-header{flex-shrink:0;justify-content:center;align-items:center;gap:12px;margin-bottom:8px;display:flex}.dialog-title-group{flex-direction:column;align-items:center;gap:4px;min-width:0;display:flex}.dialog-title-group .dialog-video-date{font-variant-numeric:tabular-nums;order:1;margin:0}.dialog-description{scrollbar-width:none;margin-top:0}.dialog-description::-webkit-scrollbar{display:none}.dialog-title-group h2{max-width:32ch;font-weight:var(--weight-medium);text-wrap:balance;margin:0}#video-dialog-description{text-wrap:pretty;max-width:46ch;margin-inline:auto}.dialog-tags{justify-content:center;gap:8px;margin-top:10px}.dialog-tags span{color:gray;font-size:var(--type-meta);line-height:var(--leading-body);letter-spacing:0;background:0 0;border:0;border-radius:0;align-items:center;gap:8px;padding:0;display:inline-flex}.dialog-tags span+span:before{content:"·";opacity:.6}.dialog-tags:empty{display:none}.dialog-navigation{justify-content:center}.dialog-navigation:has(.video-picker:empty){visibility:hidden}.dialog-project-link{font-size:var(--type-meta);background:0 0;gap:8px;margin-top:8px;padding:0;display:inline-flex}.dialog-project-navigation{justify-content:center;gap:8px;width:100%;max-width:100%;margin-top:auto;padding-top:12px}.dialog-project-navigation button{color:#626262;background:0 0;border:0;border-radius:8px;flex:0 0 36px;width:36px;height:36px;padding:0;transition:background .15s,color .15s,transform .15s}.dialog-project-navigation button:hover{color:#303030;background:#00000008}@media (width<=760px),(pointer:coarse){.dialog-project-navigation button{flex-basis:44px;width:44px;height:44px}}.dialog-project-navigation button:active{transform:scale(.94)}.dialog-project-navigation button svg{transition:transform .15s}.dialog-project-navigation [data-project-step="-1"]:hover svg{transform:translate(-1px)}.dialog-project-navigation [data-project-step="1"]:hover svg{transform:translate(1px)}@media (prefers-reduced-motion:reduce){.dialog-project-navigation button,.dialog-project-navigation button svg{transition:none}.dialog-project-navigation button:is(:hover,:active),.dialog-project-navigation button:hover svg{transform:none}}.video-playback{left:calc(50% - min(50cqw, 50cqh * var(--video-ratio,1)));bottom:calc(50% - min(50cqh, 50cqw / var(--video-ratio,1)));width:min(100cqw, calc(100cqh * var(--video-ratio,1)))}.dialog-project-link:hover{background:0 0}.expanded-video-wrap{pointer-events:none}.expanded-video,.expanded-opening-frame,.video-retry,.expanded-video-wrap .dialog-close,.video-play-toggle{pointer-events:auto}.video-playback{pointer-events:none}.video-seek{appearance:none;cursor:pointer;pointer-events:auto;touch-action:none;background:0 0;border:0;border-radius:2px;grid-column:1/-1;width:100%;height:24px;margin:0;padding:0}.video-seek::-webkit-slider-runnable-track{background:linear-gradient(to right, #fff var(--seek-progress,0%), #ffffff50 var(--seek-progress,0%));border-radius:2px;height:3px}.video-seek::-moz-range-track{background:#ffffff50;border-radius:2px;height:3px}.video-seek::-moz-range-progress{background:#fff;border-radius:2px;height:3px}.video-seek::-webkit-slider-thumb{appearance:none;background:#fff;border:0;border-radius:50%;width:10px;height:10px;margin-top:-3.5px}.video-seek::-moz-range-thumb{background:#fff;border:0;border-radius:50%;width:10px;height:10px}.video-seek:focus-visible{outline-offset:2px;outline:2px solid #fff}.video-seek:disabled{opacity:.5;cursor:default}.expanded-video-wrap .dialog-close{z-index:5;top:calc(50% - min(50cqh, 50cqw / var(--video-ratio,1)) + 8px);right:calc(50% - min(50cqw, 50cqh * var(--video-ratio,1)) + 8px);color:#fff;isolation:isolate;background:0 0;border:0;width:44px;height:44px;padding:0;transition:opacity .16s;position:absolute}.expanded-video-wrap .dialog-close:before{content:"";z-index:-1;-webkit-backdrop-filter:blur(8px);background:#0005;border-radius:50%;transition:background .15s;position:absolute;inset:6px}.expanded-video-wrap .dialog-close:hover:before{background:#0008}.expanded-video-wrap .dialog-close svg{stroke-width:1.5px;width:16px;height:16px}.expanded-video-wrap .dialog-close:focus-visible{outline-offset:-3px;outline-color:#fff}.video-playback{transition:opacity .16s}@media (hover:hover) and (pointer:fine) and (width>=761px){.expanded-video-wrap .dialog-close{opacity:0;pointer-events:none}.expanded-video-wrap:is(:hover,:has(:focus-visible)) .dialog-close,.expanded-video-wrap:is(:hover,:has(:focus-visible)) .video-playback{opacity:1}.expanded-video-wrap:is(:hover,:has(:focus-visible)) .dialog-close,.expanded-video-wrap:is(:hover,:has(:focus-visible)) .video-play-toggle{pointer-events:auto}}@media (prefers-reduced-motion:reduce){.expanded-video-wrap .dialog-close,.expanded-video-wrap .dialog-close:before,.video-playback,.video-play-toggle{transition:none}.video-play-toggle:active{transform:none}}portfolio-canvas[data-playground-layout=masonry]{--recording-border:#00000014}html[data-theme=dark] portfolio-canvas[data-playground-layout=masonry]{--recording-border:#ffffff1a}portfolio-canvas[data-playground-layout=masonry] .canvas-dots{display:none}html portfolio-canvas[data-playground-layout=masonry] .video-card,html portfolio-canvas[data-playground-layout=masonry] .video-card:is(.has-video,:hover){box-shadow:none;background:0 0;border:0;border-radius:16px}portfolio-canvas[data-playground-layout=masonry] .video-card>:is(video,.video-opening-frame){clip-path:inset(0 round 12px);border-radius:12px}portfolio-canvas[data-playground-layout=masonry] .video-card:after{content:"";border:1px solid var(--recording-border);pointer-events:none;border-radius:12px;position:absolute;inset:4px}portfolio-canvas[data-playground-layout=masonry] .card-expand{top:auto;bottom:14px;right:14px}.social-icon-link.social-copy-email>.email-action-icon{transition:none;transform:none}.shared-social-tooltip{--tooltip-bg:#2e332b;--tooltip-color:#f8f9f5;--tooltip-success:#86efac;z-index:1000;background:var(--tooltip-bg);width:0;height:28px;color:var(--tooltip-color);font-family:var(--font-ui);font-size:var(--type-tooltip);font-weight:var(--weight-regular);letter-spacing:0;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;border:1px solid #ffffff14;border-radius:6px;line-height:16px;transition:opacity .1s,visibility 0s linear .1s;position:fixed;top:0;left:0;box-shadow:0 3px 10px #00000014}.shared-social-tooltip[data-visible=true]{opacity:1;visibility:visible;transition:opacity .1s,transform .22s cubic-bezier(.22,1,.36,1),width .22s cubic-bezier(.22,1,.36,1),height .22s cubic-bezier(.22,1,.36,1),visibility}.shared-social-tooltip:after{content:"";left:calc(var(--tooltip-arrow-x,50%) - 3px);background:var(--tooltip-bg);border-radius:0 0 1px;width:6px;height:6px;transition:left .22s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-3px;transform:rotate(45deg)}.shared-social-tooltip[data-placement=right]:after{top:calc(50% - 3px);bottom:auto;left:-3px}.shared-tooltip-content{justify-content:center;align-items:center;gap:5px;width:max-content;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.shared-tooltip-content svg{flex-shrink:0;width:12px;height:12px}.shared-tooltip-content[data-success=true]{color:var(--tooltip-success)}html[data-theme=dark] .shared-social-tooltip{--tooltip-bg:#e0e0e0;--tooltip-color:#222;--tooltip-success:#166534}@media (prefers-reduced-motion:reduce){.shared-social-tooltip,.shared-social-tooltip[data-visible=true],.shared-social-tooltip:after{transition:none}}.shared-tooltip-text{flex-direction:column;display:flex}.shared-tooltip-content[data-detail]{max-width:min(300px,100vw - 40px)}.shared-tooltip-content[data-detail] .shared-tooltip-text{white-space:normal;text-align:left;text-wrap:pretty;overflow-wrap:anywhere;gap:2px}.shared-tooltip-detail{opacity:.7;white-space:nowrap;font-variant-numeric:tabular-nums}.canvas-page{--collection-surface:#fff;--collection-selected:#e5e5e2;--collection-dots:#ddddda;--collection-shadow:0 9px 22px -12px #464a5045;--collection-shadow-hover:0 18px 30px -15px #464a5055}html[data-theme=dark] .canvas-page{--collection-surface:#2b2b2b;--collection-selected:#202020;--collection-dots:#292929;--collection-shadow:0 9px 22px -12px #0009;--collection-shadow-hover:0 18px 30px -15px #000c}.collection-nav{isolation:isolate;gap:2px;margin-top:16px;display:grid;position:relative}.collection-nav a{z-index:1;color:var(--muted);font-size:var(--type-meta);line-height:var(--leading-body);border-radius:9px;align-items:center;gap:11px;margin-left:-12px;padding:7px 12px;transition:color .15s;display:flex;position:relative}.collection-nav a:before{content:"";opacity:0;background:currentColor;border-radius:50%;flex:0 0 5px;height:5px}.collection-nav a:hover,.collection-nav a[aria-current=page]{color:var(--text)}.collection-nav a[aria-current=page]:before{opacity:1}.collection-nav a:focus-visible{outline-offset:2px}.collection-nav-dot{pointer-events:none;z-index:2;background:var(--text);border-radius:50%;width:5px;height:5px;display:none;position:absolute;top:0;left:0}.collection-nav[data-motion-ready] .collection-nav-dot{display:block}.collection-nav[data-motion-ready] a:before{opacity:0}portfolio-canvas:not([data-section=playground]) .desk-viewport{visibility:hidden;pointer-events:none}portfolio-canvas:not([data-section=playground]) .desk-caption{visibility:hidden}.showcase-panel{overscroll-behavior:contain;background-image:radial-gradient(var(--collection-dots) .7px,transparent .7px);scrollbar-width:thin;background-size:24px 24px;display:flex;position:absolute;inset:0;overflow-y:auto;container-type:inline-size}.showcase-panel[hidden]{display:none}.collection-content{width:100%;max-width:872px;margin:auto;padding:56px 44px}.collection-heading{text-align:center;max-width:520px;margin:0 auto 36px}.collection-heading h2{margin:0 0 10px}.collection-heading p{color:var(--muted);font-size:var(--type-body);line-height:var(--leading-body);text-wrap:pretty;text-wrap:balance;overflow-wrap:anywhere;letter-spacing:var(--tracking-body);margin:0}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:22px;display:grid}.website-tile,.tool-tile{background:var(--collection-surface);min-width:0;box-shadow:var(--collection-shadow);color:var(--text);border:0;border-radius:25px;transition:box-shadow .18s;display:block}.website-tile:hover,.tool-tile:hover{box-shadow:var(--collection-shadow-hover)}.website-tile:focus-visible,.app-tile:focus-visible,.tool-tile:focus-visible{outline-offset:4px}.website-tile{--website-fade-rgb:16 16 16;--website-caption:#eeeeec;--website-caption-muted:#b0b0ae;position:relative;overflow:hidden}.website-tile[data-preview-theme=light]{--website-fade-rgb:255 255 255;--website-caption:#242424;--website-caption-muted:#686868}.website-preview{aspect-ratio:1.44;background:var(--collection-surface);overflow:hidden}.website-preview img{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.website-label{color:var(--website-caption);z-index:1;isolation:isolate;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex;position:absolute;inset:auto 0 0}.website-label:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(to bottom,rgb(var(--website-fade-rgb) / 0),rgb(var(--website-fade-rgb) / .7) 35%,rgb(var(--website-fade-rgb) / .94) 65%,rgb(var(--website-fade-rgb) / .98));position:absolute;inset:-56px 0 0}.website-label>div{min-width:0}.collection-grid h3{font-size:var(--type-body);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title);overflow-wrap:anywhere;line-height:var(--leading-body);text-wrap:balance;margin:0 0 4px}.website-label span{color:var(--website-caption-muted);font-size:var(--type-meta);overflow-wrap:anywhere}.website-label .collection-external{font-size:var(--type-body)}.collection-icon{object-fit:contain;border-radius:15px;width:64px;height:64px;margin:0 auto 18px;display:block}.app-tile{width:fit-content;min-width:0;max-width:100%;color:var(--text);text-align:center;border-radius:25px;justify-self:center;padding:12px;display:block}.app-tile .collection-icon{border-radius:26px;width:112px;height:112px;margin-bottom:16px}.app-tile h3{margin:0}.app-badge{background:var(--collection-selected);color:var(--muted);font-size:var(--type-meta);font-weight:var(--weight-regular);line-height:var(--leading-body);white-space:nowrap;letter-spacing:0;border-radius:999px;align-items:center;gap:5px;margin-top:9px;padding:4px 8px;display:inline-flex}.app-badge svg{flex-shrink:0}.app-tile:is(:hover,:focus-visible) .app-badge{color:var(--text)}.app-grid>:only-child{grid-column:1/-1}.tool-grid{align-items:stretch;width:90%;max-width:680px;margin:0 auto}html[data-theme=dark] .tool-grid{--collection-surface:#1c1c1c;--collection-shadow:0 3px 10px -6px #0006;--collection-shadow-hover:0 5px 14px -8px #0008}.tool-tile{text-align:left;padding:20px}.tool-heading{align-items:center;gap:12px;display:flex}.tool-heading .collection-icon{border-radius:10px;flex-shrink:0;width:40px;height:40px;margin:0}.tool-heading h3{flex:1;min-width:0;margin:0}.tool-heading .collection-external{font-size:var(--type-body);color:var(--muted);flex-shrink:0;align-self:flex-start;line-height:1}.tool-tile p{color:var(--muted);font-size:var(--type-body);line-height:var(--leading-body);white-space:pre-line;overflow-wrap:anywhere;letter-spacing:var(--tracking-body);text-wrap:pretty;margin:12px 0 0}.tool-heading .source-icon{background:var(--collection-selected);color:var(--muted);place-items:center;display:grid}.source-grid p{text-wrap:balance}.collection-empty{color:var(--muted);text-align:center;font-size:var(--type-meta);margin:48px 0}@media (width<=1050px){.collection-content{padding:40px 28px}.collection-grid{gap:16px}}@media (width>=761px) and (height>=501px) and (height<=800px){.personal-sidebar{padding-top:18px}.sidebar-heading{margin-top:18px}.sidebar-social-group{margin-top:16px;padding-bottom:16px}.collection-nav{gap:2px;margin-top:16px}.collection-nav a{padding-top:7px;padding-bottom:7px}}@media (width<=760px){.personal-sidebar{grid-template-areas:"identity controls""intro intro""social social""collections collections"}.collection-nav{scrollbar-width:none;grid-area:collections;gap:3px;margin:6px 0 0;display:flex;overflow-x:auto}.collection-nav a{white-space:nowrap;min-width:44px;min-height:44px;font-size:var(--type-meta);flex:1 0 auto;justify-content:center;gap:0;margin:0;padding:10px 4px}.collection-nav::-webkit-scrollbar{display:none}.collection-nav a:before{width:5px;position:absolute;bottom:8px;left:calc(50% - 2.5px)}.collection-content{padding:36px 20px}.collection-grid{grid-template-columns:minmax(0,1fr);gap:18px;max-width:440px;margin:0 auto}.tool-grid{width:100%;max-width:340px}.collection-heading{margin-bottom:26px}}@media (width>=761px) and (width<=1000px) and (height<=500px){.collection-nav{margin-top:15px}.collection-nav a{font-size:var(--type-meta);padding:6px 9px}.collection-content{padding:30px 24px}.collection-heading{margin-bottom:24px}}@media (width<=760px),(width<=1000px) and (height<=500px){.showcase-panel{scrollbar-width:none}.showcase-panel::-webkit-scrollbar{display:none}}@media (prefers-reduced-motion:reduce){.collection-nav a,.website-tile,.tool-tile{transition:none}}.experience-panel{background-image:none;display:block;container-type:inline-size}.experience-content{max-width:860px;margin:0 auto;padding-block:56px}.experience-heading{text-align:left;border-bottom:1px solid color-mix(in srgb,var(--muted) 18%,transparent);max-width:none;margin:0 0 28px;padding:0 0 16px}.experience-heading :is(h2,h3){color:var(--text);font-size:var(--type-body);font-weight:var(--weight-semibold);line-height:var(--leading-body);letter-spacing:var(--tracking-body);margin:0}.experience-heading p{text-wrap:balance;max-width:600px;margin-top:10px}.experience-timeline{gap:48px;margin:0;padding:0;list-style:none;display:grid}.experience-entry{grid-template-columns:158px minmax(0,1fr);align-items:baseline;column-gap:28px;display:grid}.experience-dates{color:var(--muted);font-size:var(--type-meta);line-height:var(--leading-body);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0}.experience-details{min-width:0}.experience-details :is(h3,h4){color:var(--text);font-size:var(--type-body);letter-spacing:var(--tracking-body);font-weight:400;line-height:var(--leading-body);text-wrap:balance;overflow-wrap:anywhere;margin:0}.experience-company{font-weight:var(--weight-semibold)}.experience-role,.experience-position-title{color:var(--muted);font-size:var(--type-meta);font-weight:var(--weight-regular);line-height:var(--leading-body)}.experience-role-separator{white-space:pre}.experience-positions{gap:4px;margin:8px 0 0;padding:0;list-style:none;display:grid}.experience-positions li{color:var(--muted);font-size:var(--type-meta);line-height:var(--leading-body);letter-spacing:var(--tracking-body)}.experience-position-dates{color:var(--muted);font-size:var(--type-meta);line-height:var(--leading-body);font-variant-numeric:tabular-nums;white-space:nowrap;display:inline-block}.experience-entry-grouped .experience-description{margin-top:12px}.experience-description{max-width:56ch;color:var(--text);font-size:var(--type-body);line-height:var(--leading-body);letter-spacing:var(--tracking-body);text-wrap:pretty;text-wrap:balance;overflow-wrap:anywhere;margin:8px 0 0}.experience-description a{color:inherit;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted);text-underline-offset:4px}.experience-description a:hover{text-decoration-style:solid;text-decoration-color:currentColor}.experience-description a:focus-visible{outline-offset:4px}.experience-description a svg{vertical-align:-1px;width:13px;height:13px;margin-left:3px;display:inline-block}@container (width<=700px){.experience-content{padding-block:32px}.experience-entry{grid-template-columns:148px minmax(0,1fr);column-gap:24px}}@container (width<=540px){.experience-heading{margin-bottom:28px;padding-bottom:16px}.experience-timeline{gap:36px}.experience-entry{grid-template-columns:minmax(0,1fr);row-gap:7px}.experience-details :is(h3,h4){text-wrap:pretty}.experience-role{margin-top:2px;display:block}.experience-role-separator{display:none}.experience-positions{gap:8px}.experience-position-dates{display:block}.experience-position-dates span{display:none}.experience-description{margin-top:8px}}@container (width<=620px){.tool-grid{grid-template-columns:minmax(0,1fr);width:100%;max-width:340px}}@media (width<=360px){.collection-nav{gap:0}.collection-nav a{padding-inline:2px}}.about-heading{margin:0 0 28px}.about-summary{color:var(--text);font-size:var(--type-body);letter-spacing:0;margin:0 0 32px;line-height:1.625}.about-summary h3{font-size:var(--type-meta);line-height:var(--leading-body);font-weight:var(--weight-medium);margin:0 0 16px}.about-summary ul{gap:12px;max-width:64ch;margin:0;padding-inline-start:20px;list-style:outside;display:grid}.about-summary li{text-wrap:pretty;text-wrap:balance;overflow-wrap:anywhere;padding-inline-start:2px}.about-summary li::marker{color:var(--muted)}.about-story{border-top:1px solid color-mix(in srgb,var(--muted) 18%,transparent);margin-top:48px;padding-top:24px}.about-footer{border-top:1px solid color-mix(in srgb,var(--muted) 18%,transparent);margin-top:32px;padding-top:24px}.about-resume{border:1px solid color-mix(in srgb,var(--muted) 24%,transparent);min-height:36px;color:var(--text);font-size:var(--type-meta);font-weight:var(--weight-medium);line-height:var(--leading-body);letter-spacing:var(--tracking-body);white-space:nowrap;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:6px 10px;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.about-resume svg{flex-shrink:0}.resume-download-arrow{transition:transform .18s cubic-bezier(.2,.8,.2,1)}.about-resume:is(:hover,:focus-visible) .resume-download-arrow{transform:translateY(2px)}.about-resume:active .resume-download-arrow{transform:translateY(3px)}@media (pointer:coarse){.about-resume{min-height:44px}}.about-resume:hover{background:color-mix(in srgb,var(--muted) 8%,transparent);border-color:color-mix(in srgb,var(--muted) 40%,transparent)}.about-resume:focus-visible{outline:2px solid var(--text);outline-offset:4px}@media (prefers-reduced-motion:reduce){.about-resume,.resume-download-arrow{transition:none}.about-resume .resume-download-arrow{transform:none}}.about-heading h2{text-wrap:balance;margin:0}.about-prose{max-width:64ch;color:var(--text);font-size:var(--type-body);line-height:var(--leading-body);letter-spacing:var(--tracking-body);overflow-wrap:anywhere}.about-prose p{text-wrap:pretty;margin:0 0 20px}.about-prose p:last-child{margin-bottom:0}.about-prose strong{color:var(--text);font-weight:var(--weight-semibold)}.about-content>.experience-section{margin-top:64px}@container (width<=540px){.about-heading{margin-bottom:22px}.about-summary{margin-bottom:24px}.about-story{margin-top:36px}.about-prose p{margin-bottom:18px}.about-content>.experience-section{margin-top:48px}}.about-video{width:100%;aspect-ratio:var(--about-video-ratio,16/9);outline:1px solid color-mix(in srgb,var(--muted) 14%,transparent);background:#111;border-radius:16px;margin:0 0 32px;position:relative;overflow:hidden}.about-video video{object-fit:contain;font-variant-numeric:tabular-nums;width:100%;height:100%;display:block}.about-video[data-trim-edge=true] video{transform:scale(1.012)}.about-video-play{border-radius:inherit;color:#fff;width:100%;font:inherit;font-size:var(--type-body);font-weight:400;line-height:var(--leading-body);letter-spacing:var(--tracking-body);cursor:pointer;background:linear-gradient(#0000,#0006);border:0;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0}.about-video-play svg{background:#0008;border-radius:50%;width:48px;height:48px;padding:12px}.about-video-play:focus-visible{outline-offset:-5px;outline:2px solid #fff}.about-video-play[hidden],.about-video-error[hidden]{display:none}.about-video-error{color:#fff;text-align:center;font-size:var(--type-meta);line-height:var(--leading-body);letter-spacing:var(--tracking-body);margin:0;position:absolute;inset:auto 12px 10px}@container (width<=540px){.about-video{border-radius:12px;margin-bottom:24px}}:is(.collection-heading:not(.experience-heading),.design-title,.about-heading) h2{color:var(--text);font-size:var(--type-page-title);font-weight:var(--weight-medium);line-height:var(--leading-title);letter-spacing:var(--tracking-title);text-wrap:balance;overflow-wrap:anywhere}.testimonials-section{--testimonial-radius:10px;min-width:0;margin-top:48px;container:testimonials/inline-size}.testimonials-heading{border-bottom:1px solid color-mix(in srgb,var(--muted) 18%,transparent);flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin-bottom:16px;padding-bottom:16px;display:flex}.testimonials-heading h3{color:var(--text);font-size:var(--type-body);font-weight:var(--weight-semibold);line-height:var(--leading-body);letter-spacing:var(--tracking-body);margin:0}.testimonials-heading p{color:var(--muted);font-size:var(--type-meta);line-height:var(--leading-body);text-wrap:pretty;margin:0}.testimonials-track{--testimonials-visible:2;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;border-radius:var(--testimonial-radius);grid-auto-columns:calc(50% - 6px);grid-auto-flow:column;gap:12px;display:grid;position:relative;overflow-x:auto}.testimonials-track[data-single]{--testimonials-visible:1;grid-auto-columns:100%}.testimonials-track::-webkit-scrollbar{display:none}.testimonial-slide{scroll-snap-align:start;scroll-snap-stop:always;min-width:0;display:flex}.testimonial{border-radius:var(--testimonial-radius);min-width:0;color:var(--text);background:#f3f3f3;flex-direction:column;flex:1;margin:0;padding:16px;text-decoration:none;display:flex;position:relative}html[data-theme=dark] .testimonial{background:#1a1a1a}.testimonial blockquote{font-size:var(--type-meta);font-weight:var(--weight-regular);line-height:var(--leading-body);letter-spacing:var(--tracking-body);margin:0 0 16px}.testimonial blockquote p{text-wrap:pretty;overflow-wrap:anywhere;margin:0}.testimonial figcaption{font-size:var(--type-tooltip);justify-content:space-between;align-items:flex-end;gap:12px;margin-top:auto;line-height:1.4;display:flex}.testimonial-person{gap:2px;min-width:0;display:grid}.testimonial-author{color:var(--text);font-size:var(--type-tooltip);font-weight:var(--weight-medium);line-height:1.4}.testimonial-context{color:var(--muted);text-wrap:pretty}.testimonial-source{color:var(--muted);flex-shrink:0;align-items:center;text-decoration:none;display:inline-flex}.testimonial-source:after{content:"";border-radius:var(--testimonial-radius);position:absolute;inset:0}.testimonial-source svg{opacity:0;flex-shrink:0;width:14px;height:14px;transition:opacity .14s}@media (hover:hover) and (pointer:fine){.testimonial:hover .testimonial-source svg{opacity:1}}.testimonial-source:focus-visible svg{opacity:1}.testimonial:has(a:focus-visible),.testimonials-track:focus-visible{outline:2px solid var(--text);outline-offset:-3px}.testimonials-controls{justify-content:flex-start;align-items:center;gap:8px;margin-top:8px;display:flex}.testimonials-controls[hidden]{display:none}.testimonials-controls button{border-radius:var(--testimonial-radius);width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;transition:background-color .14s,color .14s;display:grid}.testimonials-controls button svg{width:14px;height:14px}@media (hover:hover) and (pointer:fine){.testimonials-controls button:hover:not(:disabled){color:var(--text);background:color-mix(in srgb,var(--muted) 10%,transparent)}}@media (pointer:coarse){.testimonials-controls button{width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.testimonials-controls button,.testimonial-source svg{transition:none}}.testimonials-controls button:disabled{opacity:.3;cursor:default}.testimonials-controls button:focus-visible{outline:2px solid var(--text);outline-offset:3px}@container testimonials (width<=540px){.testimonials-track{--testimonials-visible:1;grid-auto-columns:100%}.testimonials-controls{margin-top:12px}.testimonials-controls button{width:44px;height:44px}}.feed-panel{background-image:none;display:block}.feed-content{max-width:768px;margin:0 auto;padding:56px 44px 80px}.feed-heading{text-align:left;max-width:none;margin:0 0 48px}.feed-heading p{text-wrap:pretty;max-width:52ch}.feed-post+.feed-post{border-top:1px solid color-mix(in srgb,var(--muted) 20%,transparent);margin-top:40px;padding-top:40px}.feed-meta{color:var(--muted);font-size:var(--type-meta);line-height:var(--leading-body);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;display:flex}.feed-meta time{font-variant-numeric:tabular-nums;white-space:nowrap}.feed-post h3,.feed-empty h3{color:var(--text);font-size:var(--type-body);font-weight:var(--weight-medium);line-height:var(--leading-body);letter-spacing:var(--tracking-title);text-wrap:balance;overflow-wrap:anywhere;margin:0 0 12px}.feed-body{font-size:var(--type-body);line-height:var(--leading-body);letter-spacing:var(--tracking-body);color:var(--text);overflow-wrap:anywhere}.feed-body p{white-space:pre-line;text-wrap:pretty;margin:0}.feed-body p+p{margin-top:16px}.feed-draft{border:1px solid color-mix(in srgb,var(--muted) 24%,transparent);border-radius:4px;padding:1px 6px}.feed-images{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:24px;display:grid}.feed-images figure{min-width:0;margin:0}.feed-images img{background:var(--design-surface,#f3f3f3);border-radius:10px;width:100%;height:auto;display:block}.feed-images-with-stories{gap:32px;margin-top:32px}.feed-image-story{margin:0 0 16px}.feed-product-link{color:var(--text);font-size:var(--type-meta);line-height:var(--leading-body);text-decoration:underline;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted);text-underline-offset:4px;align-items:center;gap:5px;margin-top:16px;padding-block:5px;display:inline-flex}.feed-product-link:hover{text-decoration-color:currentColor}.feed-product-link:focus-visible{outline-offset:4px;border-radius:3px;outline:2px solid}.feed-empty{border-top:1px solid color-mix(in srgb,var(--muted) 20%,transparent);max-width:52ch;padding-top:32px}.feed-empty-mark{width:44px;height:44px;color:var(--muted);background:color-mix(in srgb,var(--muted) 9%,transparent);border-radius:10px;justify-content:center;align-items:center;margin-bottom:16px;display:inline-flex}.feed-empty p{font-size:var(--type-body);color:var(--muted);line-height:var(--leading-body);text-wrap:pretty;margin:0}@media (width<=760px),(width<=1000px) and (height<=500px){.feed-content{padding:36px 20px 64px}.feed-heading{margin-bottom:32px}.feed-post+.feed-post{margin-top:32px;padding-top:32px}}@media (width<=360px){.collection-nav:has([data-section-link=feed]) a{min-width:40px;font-size:12px}}.feed-videos{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:24px;margin-top:24px;display:grid}@media (width<=760px){.feed-videos{gap:12px}}.feed-video{min-width:0;margin:0}.feed-video-frame{aspect-ratio:var(--feed-video-ratio);background:var(--design-surface,#f3f3f3);border-radius:10px;position:relative;overflow:hidden}.feed-video-frame video{object-fit:contain;width:100%;height:100%;display:block}.feed-video-play{color:#fff;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:100%;height:100%;padding:0;display:flex;position:absolute;inset:0}.feed-video-play svg{box-sizing:content-box;background:#0009;border-radius:50%;padding:13px;transition:transform .16s,background .16s}.feed-video-play:hover svg{background:#000b;transform:scale(1.06)}.feed-video-play:focus-visible{outline:2px solid var(--text);outline-offset:-3px;border-radius:10px}.feed-video-play[hidden],.feed-video-error[hidden]{display:none}.feed-video-error{color:#fff;font-size:var(--type-meta);background:#000c;border-radius:6px;padding:8px;position:absolute;inset:auto 8px 8px}.feed-video figcaption,.feed-video-pending{color:var(--muted);font-size:var(--type-meta);line-height:var(--leading-body);text-wrap:pretty;font-variant-numeric:tabular-nums;margin:8px 0 0}@media (prefers-reduced-motion:reduce){.feed-video-play svg{transition:none}}.feed-video-home{border-radius:10px;min-width:0}.feed-video-dialog{overscroll-behavior:contain;width:100%;max-width:none;height:100dvh;max-height:none;color:var(--text);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.feed-video-dialog::backdrop{-webkit-backdrop-filter:blur(16px);background:#f6f6f6f0}html[data-theme=dark] .feed-video-dialog::backdrop{background:#080808f0}.feed-video-stage{justify-content:center;align-items:center;display:flex;position:absolute;inset:64px 24px 100px}.feed-video-stage .feed-video-frame{transform-origin:0 0;background:#000;flex:none}.feed-video-close,.feed-video-toggle{background:color-mix(in srgb,var(--muted) 14%,transparent);width:44px;height:44px;color:var(--text);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.feed-video-close{z-index:2;top:max(12px,env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right));position:absolute}.feed-video-dialog button:focus-visible{outline:2px solid var(--text);outline-offset:3px}.feed-video-close:hover,.feed-video-toggle:hover{background:color-mix(in srgb,var(--muted) 18%,transparent)}.feed-video-footer{flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;inset:auto 24px}.feed-video-footer p{max-width:100%;font-size:var(--type-meta);line-height:var(--leading-body);color:var(--muted);text-align:center;text-wrap:balance;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.feed-video-controls{align-items:center;gap:12px;width:min(100%,640px);min-width:0;display:flex}.feed-video-toggle,.feed-video-time{flex-shrink:0}.feed-video-time{font-size:var(--type-meta);font-variant-numeric:tabular-nums;line-height:var(--leading-body);gap:5px;display:flex}.feed-video-time [data-feed-elapsed],.feed-video-time [data-feed-duration]{text-align:center;min-width:5ch}.feed-video-toggle[data-paused=false] .feed-control-play,.feed-video-toggle[data-paused=true] .feed-control-pause{display:none}@media (width<=760px){.feed-video-stage{inset:64px 12px 116px}.feed-video-close{right:max(12px,env(safe-area-inset-right))}.feed-video-footer{inset-inline:12px}}@media (height<=500px){.feed-video-stage{inset:12px 64px 72px}.feed-video-footer{flex-direction:row;justify-content:center;gap:20px}}.feed-video-poster{object-fit:contain;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.feed-video-frame[data-presented=true] .feed-video-poster{visibility:hidden}.feed-video-loading{color:#fff;font-size:var(--type-meta);text-align:center;pointer-events:none;background:#0009;border-radius:6px;margin:0;padding:6px 10px;position:absolute;inset:auto 8px 8px}.feed-video-loading[hidden],.feed-video-home .feed-video-loading{display:none}.feed-video-seek{--seek-progress:0%;appearance:none;width:100%;min-width:40px;height:44px;color:var(--text);cursor:pointer;touch-action:none;background:0 0;border:0;flex:1;margin:0;padding:0}.feed-video-seek::-webkit-slider-runnable-track{background:linear-gradient(to right,currentColor 0 var(--seek-progress),color-mix(in srgb,var(--muted) 25%,transparent) var(--seek-progress) 100%);border-radius:2px;height:4px}.feed-video-seek::-moz-range-track{background:linear-gradient(to right,currentColor 0 var(--seek-progress),color-mix(in srgb,var(--muted) 25%,transparent) var(--seek-progress) 100%);border-radius:2px;height:4px}.feed-video-seek::-webkit-slider-thumb{appearance:none;background:currentColor;border:0;border-radius:50%;width:12px;height:12px;margin-top:-4px}.feed-video-seek::-moz-range-thumb{background:currentColor;border:0;border-radius:50%;width:12px;height:12px}.feed-video-seek:focus-visible{outline-offset:3px;border-radius:6px;outline:2px solid}.feed-video-seek:disabled{opacity:.4;cursor:default}@media (width<=360px){.feed-video-controls{gap:8px}.feed-video-time{gap:2px}}@media (height<=500px){.feed-video-footer p{flex:0 28%;min-width:0}.feed-video-controls{flex:1;max-width:640px}}.feed-video-navigation{flex-shrink:0;justify-content:center;align-items:center;gap:8px;display:flex}.feed-video-navigation[hidden]{display:none}.feed-video-navigation button{background:color-mix(in srgb,var(--muted) 14%,transparent);width:44px;height:44px;color:var(--text);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.feed-video-navigation button:hover:not(:disabled){background:color-mix(in srgb,var(--muted) 22%,transparent)}.feed-video-navigation button:disabled{opacity:.35;cursor:default}.feed-video-position{text-align:center;min-width:5ch;font-size:var(--type-meta);font-variant-numeric:tabular-nums;line-height:var(--leading-body);color:var(--muted)}.feed-video-dialog[data-multiple] .feed-video-stage{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none}.feed-video-stage img{-webkit-user-drag:none}.feed-video-dialog[data-multiple] .feed-video-stage{bottom:172px}@media (height<=500px){.feed-video-dialog[data-multiple] .feed-video-stage{top:12px;bottom:72px}.feed-video-dialog[data-multiple] .feed-video-footer{gap:12px}.feed-video-dialog[data-multiple] .feed-video-footer p{flex-basis:22%}}.feed-content{width:100%;min-width:0}.feed-layout:not(:has(.feed-index)){grid-template-columns:minmax(0,1fr)}.design-panel{background-image:none;display:block;container-type:inline-size}.design-page,.design-lightbox{--design-muted:#797979;--design-rule:#e7e7e7;--design-border:#0000001f;--design-surface:#f3f3f3;--design-image-radius:6px;width:100%}html[data-theme=dark] :is(.design-page,.design-lightbox){--design-muted:#999;--design-rule:#292929;--design-border:#ffffff0d;--design-surface:#1a1a1a}.design-page.collection-content{max-width:1520px;color:var(--text);margin-inline:auto;padding:64px 28px 112px 8px}.design-page h2,.design-page h3,.design-page h4,.design-page p{margin:0}.design-title{margin-bottom:64px}.design-title p{color:var(--design-muted);font-size:var(--type-body);line-height:var(--leading-body);text-wrap:pretty;text-wrap:balance;letter-spacing:var(--tracking-body);max-width:60ch;margin-top:12px}.design-group+.design-group,.design-project+.design-project{margin-top:144px}.design-group-heading{border-bottom:1px solid var(--design-rule);font-size:var(--type-body);line-height:var(--leading-body);font-weight:var(--weight-medium);letter-spacing:var(--tracking-body);color:var(--text);padding-bottom:20px;margin-bottom:40px!important}.design-project-intro{font-size:var(--type-body);text-align:left;max-width:900px;margin-bottom:44px}.design-project-intro :is(h3,h4){color:var(--text);font-size:var(--type-body);line-height:var(--leading-body);font-weight:var(--weight-medium);letter-spacing:var(--tracking-body);text-wrap:balance}.design-description{color:var(--text);font-size:var(--type-lead);line-height:var(--leading-body);font-weight:var(--weight-regular);letter-spacing:var(--tracking-body);text-wrap:pretty;text-wrap:balance;margin-top:12px!important}.design-art-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.design-art{background:var(--design-surface);min-width:0;color:var(--text);border-radius:12px;display:block;position:relative;overflow:hidden}.design-art:after{content:"";border:1px solid var(--design-border);border-radius:inherit;pointer-events:none;position:absolute;inset:0}.design-art-inner{border-radius:var(--design-image-radius);display:block;position:absolute;overflow:hidden}.design-art[data-expanded] :is(.design-art-inner,.design-art-expand){visibility:hidden}.design-art img{object-fit:contain;width:100%;height:100%;display:block}.design-brand{width:100%;height:100%;display:block;position:relative}.design-wordmark{background:var(--text);width:63.3337%;height:64.9779%;display:block;position:absolute;top:22.6183%;left:1.6042%;-webkit-mask:url(/assets/images/designs/2026-10-20/heystak/heystak-wordmark.png) 50%/100% 100% no-repeat;mask:url(/assets/images/designs/2026-10-20/heystak/heystak-wordmark.png) 50%/100% 100% no-repeat}.design-brand .design-brand-icon{width:24.6883%;height:100%;position:absolute;top:0;right:0}.design-art-expand{width:28px;height:28px;color:var(--design-muted);opacity:0;place-items:center;transition:opacity .16s,transform .2s;display:grid;position:absolute;bottom:12px;right:12px;transform:translate(-3px,3px)}.design-art:is(:hover,:focus-visible) .design-art-expand{opacity:1;transform:none}.design-art:focus-visible{outline:2px solid var(--text);outline-offset:4px}@container (width<=620px){.design-page.collection-content{padding:36px 16px 64px 4px}.design-title{margin-bottom:40px}.design-group+.design-group,.design-project+.design-project{margin-top:88px}.design-group-heading{padding-bottom:16px;margin-bottom:28px!important}.design-project-intro{margin-bottom:24px}.design-description{margin-top:12px!important}.design-art-grid{grid-template-columns:minmax(0,1fr);gap:12px}.design-art{border-radius:9px}}@media (prefers-reduced-motion:reduce){.design-art-expand{transition:none;transform:none}}.design-lightbox{overscroll-behavior:none;width:100%;max-width:none;height:100dvh;max-height:none;color:var(--text);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.design-lightbox::backdrop{-webkit-backdrop-filter:blur(16px);background:#f6f6f6eb}html[data-theme=dark] .design-lightbox::backdrop{background:#080808eb}.design-lightbox-stage{overscroll-behavior:contain;scrollbar-width:thin;display:grid;position:absolute;inset:64px 24px 92px;overflow:auto}.design-lightbox-art{border-radius:var(--design-image-radius);background:var(--design-surface);color:inherit;cursor:zoom-in;transform-origin:0 0;border:0;flex:none;margin:auto;padding:0;display:block;position:relative;overflow:hidden}.design-lightbox-art:after{content:"";border:1px solid var(--design-border);border-radius:inherit;pointer-events:none;position:absolute;inset:0}.design-lightbox-art>img{object-fit:contain;width:100%;height:100%;display:block}.design-lightbox-art[aria-pressed=true]{cursor:zoom-out}.design-lightbox-close,.design-lightbox-controls button{background:var(--design-surface);width:40px;height:40px;color:var(--text);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;transition:background .14s;display:grid}.design-lightbox-close{z-index:2;position:absolute;top:12px;right:20px}.design-lightbox :is(button):focus-visible{outline:2px solid var(--text);outline-offset:3px}.design-lightbox-close:hover,.design-lightbox-controls button:hover{background:var(--design-rule)}.design-lightbox-controls button:disabled{opacity:.3;cursor:default}.design-lightbox-footer{flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;inset:auto 24px 12px}.design-lightbox-footer p{max-width:100%;color:var(--design-muted);font-size:var(--type-meta);line-height:var(--leading-body);text-align:center;text-wrap:balance;margin:0}.design-lightbox-controls{gap:8px;display:flex}[data-design-zoom][aria-pressed=true] .design-zoom-plus{display:none}@media (width<=620px){.design-lightbox-stage{inset:64px 12px 100px}.design-lightbox-close{right:12px}.design-lightbox-close,.design-lightbox-controls button{width:44px;height:44px}.design-lightbox-footer{inset-inline:12px}}@media (prefers-reduced-motion:reduce){.design-lightbox button{transition:none}}.resource-grid{--collection-surface:#f3f3f3;--collection-shadow:none;--collection-shadow-hover:none;grid-auto-rows:1fr}html[data-theme=dark] .resource-grid{--collection-surface:#1a1a1a;--collection-shadow:none;--collection-shadow-hover:none}.resource-tile{isolation:isolate;position:relative}.resource-heading{min-height:60px;padding-right:20px}.resource-title{flex:1;min-width:0}.resource-title h3{line-height:var(--leading-body)}.resource-primary:after{content:"";z-index:1;border-radius:25px;position:absolute;inset:0}.resource-primary:focus-visible{outline:none}.resource-primary:focus-visible:after{outline:2px solid var(--text);outline-offset:4px}.resource-source-badge{z-index:2;color:var(--muted);font-size:var(--type-meta);font-weight:var(--weight-regular);line-height:var(--leading-body);white-space:nowrap;letter-spacing:0;margin-top:4px;display:inline-block;position:relative}.resource-source-badge:is(:hover,:focus-visible){color:var(--text);text-underline-offset:3px;text-decoration:underline}.resource-source-badge:focus-visible{outline-offset:3px;border-radius:2px;outline:2px solid}.resource-arrow{color:var(--muted);opacity:0;pointer-events:none;transition:opacity .18s,transform .22s cubic-bezier(.2,.7,.2,1);position:absolute;top:20px;right:18px;transform:translate(-4px,4px)}.resource-tile:is(:hover,:focus-within) .resource-arrow{opacity:1;transform:translate(0)}@media (prefers-reduced-motion:reduce){.resource-arrow{transition:none;transform:none}}.design-layout{grid-template-columns:44px minmax(0,1fr);align-items:start;width:100%;min-width:0;min-height:100%;display:grid}.design-index{height:var(--design-index-height,80dvh);z-index:5;pointer-events:none;align-items:center;display:flex;position:sticky;top:0}.design-index-links{scrollbar-width:none;pointer-events:auto;flex-direction:column;max-height:80%;padding-block:12px;display:flex;overflow:clip auto}.design-index a{width:44px;height:24px;min-height:24px;color:var(--text);outline-offset:-4px;flex-shrink:0;align-items:center;padding-left:16px;display:flex;position:relative}.design-index-tick{opacity:.22;transform-origin:0;background:currentColor;border-radius:2px;width:9px;height:2px;transition:transform .18s cubic-bezier(.2,.8,.2,1),opacity .14s;display:block}.design-index a[aria-current] .design-index-tick{opacity:.85;transform:scaleX(2)}.design-index a:is(:hover,:focus-visible) .design-index-tick{opacity:1;transform:translate(2px)scaleX(2.5)}@container (width<=620px){.design-layout{grid-template-columns:28px minmax(0,1fr)}.design-index a{width:28px;min-height:24px;padding-left:8px}.design-index a[aria-current] .design-index-tick{transform:scaleX(1.55)}}@media (pointer:coarse){.design-index a{min-height:28px}}@media (prefers-reduced-motion:reduce){.design-index-tick{transition:none}}@font-face{font-family:Inter Editorial;src:url(/assets/fonts/InterVariable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:block}:root{--font-ui:"Inter Editorial",Inter,sans-serif;--type-page-title:20px;--type-page-title-small:20px;--type-lead:20px;--type-lead-small:20px;--type-body:20px;--type-meta:14px;--type-tooltip:14px;--leading-body:1.35;--tracking-body:-.03em;--tracking-title:-.03em;--weight-regular:500;--weight-medium:500;--weight-semibold:500;--text:#000;--muted:#999;--bg:#fff;--focus:#333;--collection-surface:#f5f5f5;--design-surface:#f5f5f5;--heading-content-gap:32px;--paragraph-gap:24px}html{scrollbar-gutter:auto;scroll-behavior:smooth;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:#fff;scroll-padding-top:110px;overflow-y:scroll}html[data-history-return]{scroll-behavior:auto}.editorial-page{color:#000;min-width:0;font-family:var(--font-ui);font-size:var(--type-body);letter-spacing:-.03em;font-feature-settings:"ss03" 1,"cv05" 1,"tnum" 1;font-variant-numeric:tabular-nums;font-optical-sizing:none;background:#fff;margin:0;font-weight:500;line-height:1.35;overflow-x:clip}.editorial-home{--bg:#f5f5f5;background:#f5f5f5}.editorial-page :is(h1,h2,h3,h4,p,figure){font-size:inherit;line-height:inherit;font-weight:inherit;letter-spacing:inherit;margin:0}.editorial-page strong{color:#000;font-weight:500}.editorial-page [hidden]{display:none!important}.editorial-page button{font-feature-settings:inherit;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;font-weight:500}.reading-column{width:min(610px,100% - 48px);min-width:0;max-width:610px;margin-inline:auto}.editorial-content{min-height:70vh;padding-top:178px}.editorial-content>h1{margin-bottom:var(--heading-content-gap);color:var(--muted)}.navigation-shell{--nav-height:34px;--back-gap:8px;z-index:30;width:302px;max-width:calc(100% - 32px);position:fixed;top:20px;left:50%;transform:translate(-50%)}.editorial-nav{z-index:2;width:100%;font-size:var(--type-meta);letter-spacing:-.01em;font-feature-settings:"tnum" 1;border-radius:30px;padding:2px;line-height:1.35;display:flex;position:relative}.navigation-back{z-index:0;top:0;left:calc(2px + (100% - 4px)/8 - var(--nav-height)/2);width:var(--nav-height);height:var(--nav-height);color:#111;pointer-events:none;view-transition-name:portfolio-back;touch-action:manipulation;background:#fff;border:2px solid #ededed;border-radius:50%;place-items:center;display:grid;position:absolute}.navigation-shell[data-back] .navigation-back{left:calc(-1 * (var(--nav-height) + var(--back-gap)));pointer-events:auto;box-shadow:0 4px 12px #00000006}.navigation-back svg{width:14px;height:18px;transition:transform .24s cubic-bezier(.22,1,.36,1)}.navigation-back:after{content:"";border-radius:50%;position:absolute;inset:-5px}.editorial-page .navigation-back:focus-visible{outline-offset:3px;outline:2px solid #555;text-decoration:none}@media (hover:hover){.navigation-back:hover svg{transform:translate(-1.5px)}}@keyframes nav-back-arrive{0%{left:calc(2px + (100% - 4px)/8 - var(--nav-height)/2)}to{left:calc(-1 * (var(--nav-height) + var(--back-gap)))}}html:not([data-router-swap]) .navigation-shell[data-back] .navigation-back{animation:.46s cubic-bezier(.22,1,.36,1) both nav-back-arrive}.nav-surface{z-index:0;border-radius:inherit;pointer-events:none;view-transition-name:portfolio-navigation;background:#f0f0f0;position:absolute;inset:0;box-shadow:2px 6px 14px #0000000a,8px 24px 26px #00000008,18px 54px 34px #00000005,33px 97px 41px #00000003}.editorial-nav a{z-index:2;color:#999;white-space:nowrap;text-box-trim:trim-both;text-box-edge:cap alphabetic;border-radius:40px;flex:1 1 0;justify-content:center;align-items:center;min-width:0;height:30px;min-height:30px;padding:10px 16px;line-height:1;display:flex;position:relative}.editorial-nav a[aria-current]{color:#000}.nav-indicator{z-index:1;width:calc(25% - 1px);height:calc(100% - 4px);transform:translateX(calc(var(--nav-index)*100%));opacity:0;pointer-events:none;background:#fff;border-radius:40px;position:absolute;top:2px;left:2px}.editorial-nav[data-nav-active] .nav-indicator{opacity:1;view-transition-name:portfolio-selector}.editorial-nav a{-webkit-user-select:none;user-select:none}@media (hover:hover){.editorial-nav a:hover{color:#000}}.editorial-hero{--hero-min-height:800px;min-height:max(var(--hero-min-height),75svh);align-items:center;width:100%;margin:auto;padding-block:112px;display:flex;position:relative;overflow:clip}.hero-copy{z-index:2;color:#999;flex-direction:column;gap:22px;display:flex;position:relative}.hero-copy p{text-wrap:pretty}.hero-heading{color:#000;flex-direction:column;gap:10px;display:flex}.hero-heading h1{font-feature-settings:"tnum" 1}.portrait-stack{background:#fff;border-radius:3.516px;width:max-content;padding:2.637px 1.758px;display:block}.portrait-stack>span{width:26.372px;height:26.372px;display:block;position:relative}.portrait-stack img{object-fit:cover;position:absolute}.hero-socials{flex-direction:column;gap:13px;margin-top:39px;margin-left:6px;display:flex}.editorial-socials{align-items:center;gap:7px;width:max-content;max-width:100%;height:62px;display:flex}.editorial-socials :is(a,button){color:#888;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:38px;height:38px;padding:10px;display:grid}@media (hover:hover){.editorial-socials :is(a,button):hover{color:#000;background:0 0}}@media (hover:none){.editorial-page :is(.editorial-nav a,.editorial-socials a,.editorial-socials button,.detail-link,.app-store-link,.resource-row):active{color:#000}}.editorial-socials svg{width:18px;height:18px}.home-section{margin-top:10px;padding-block:73px 105px}.home-work,.home-playground{--bg:#fff;background:#fff}.section-heading{color:#999;margin-bottom:var(--heading-content-gap)!important}.project-list{flex-direction:column;gap:60px;display:flex}.project-heading{flex-direction:column;gap:2px;display:flex}.editorial-page .meta{font-size:var(--type-meta);letter-spacing:-.03em;color:#999;line-height:1.35}.project-description{text-wrap:pretty;margin-top:var(--heading-content-gap)!important;margin-bottom:21px!important}.editorial-page .design-art{background:#f5f5f5;border-radius:12px}.editorial-page .design-art:after{border:0}.editorial-page .design-art-inner{border-radius:0}.art-carousel{border-radius:12px;position:relative;overflow:hidden}.carousel-viewport{border-radius:inherit;touch-action:pan-y pinch-zoom;cursor:grab;-webkit-user-select:none;user-select:none;overflow:hidden}.carousel-viewport :is(img,a){-webkit-user-drag:none;-webkit-touch-callout:none}.carousel-slides{grid-template-columns:minmax(0,1fr);display:grid}[data-carousel=sliding] [data-slide]{grid-area:1/1;min-width:0}[data-carousel-nearby] [data-slide]{will-change:transform}.art-carousel .design-art{cursor:inherit}.is-dragging .carousel-viewport{cursor:grabbing}.gallery-arrow{z-index:2;color:#000;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:32px;height:44px;padding:0;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.gallery-arrow:hover{background:0 0}.gallery-arrow.previous{left:0}.gallery-arrow.next{right:0}.detail-link{width:max-content;font-size:var(--type-meta);letter-spacing:-.03em;color:#999;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;gap:4px;min-height:31px;padding:6px 0;line-height:1.35;display:inline-flex}.detail-link,.app-store-link,.footer-bottom>a{transition:color .24s cubic-bezier(.22,1,.36,1)}.detail-link svg,.app-store-link svg,.footer-bottom>a svg{flex-shrink:0;transition:transform .28s cubic-bezier(.22,1,.36,1)}.detail-link:focus-visible,.app-store-link:focus-visible,.footer-bottom>a:focus-visible{color:#000}.detail-link:focus-visible svg,.app-store-link:focus-visible svg,.footer-bottom>a:focus-visible svg{transform:translate(2px)}.detail-link.back-link:focus-visible svg{transform:translate(-2px)}@media (hover:hover){.detail-link:hover,.app-store-link:hover,.footer-bottom>a:hover{color:#000}.detail-link:hover svg,.app-store-link:hover svg,.footer-bottom>a:hover svg{transform:translate(2px)}.detail-link.back-link:hover svg{transform:translate(-2px)}}.editorial-project>.detail-link{margin-top:21px}.home-apps{padding-top:35px;padding-bottom:45px}.app-list{flex-direction:column;gap:60px;display:flex}.app-gallery{aspect-ratio:609/426;background:#fff;border-radius:12px;margin-top:20px;position:relative;overflow:hidden}.editorial-content .app-gallery{background:#f5f5f5}.app-gallery .carousel-viewport,.app-gallery .carousel-slides{height:100%}.phone-slide{aspect-ratio:609/426;place-items:center;display:grid}.app-phone{object-fit:contain;pointer-events:none;width:29.647%;height:auto;max-height:90%;display:block}.app-gallery[data-app=day-one] .app-phone{width:28.801%}.app-card .project-description{margin-bottom:0!important}.app-list+.detail-link{margin-top:60px}.app-store-link{font-size:var(--type-meta);color:#999;align-items:center;gap:5px;margin-top:16px;display:inline-flex}.mac-apps{margin-top:80px}.mac-apps>h2{margin-bottom:var(--heading-content-gap);color:#999}.other-apps{grid-template-columns:1fr 1fr;gap:40px 24px;display:grid}.apps-playground{margin-top:80px}.apps-playground>.detail-link{margin-top:24px}@media (width<=660px){.apps-playground{margin-top:48px}}.other-apps a{font-size:var(--type-body);align-items:center;gap:16px;display:flex}.other-apps a>span{min-width:0}.other-apps :is(img,svg){flex-shrink:0}.other-apps img{object-fit:contain;border-radius:13px;width:56px;height:56px}.home-resources{--bg:#fff;background:#fff;padding-block:80px}.resource-heading{color:#999;margin-bottom:var(--heading-content-gap)!important}.editorial-page .resource-heading{min-height:0;padding:0}.resource-year{grid-template-columns:187px minmax(0,1fr);gap:10px;display:grid}.resource-year+.resource-year{border-top:1px solid #dfdfdf;margin-top:24px;padding-top:24px}.resource-year>h3{font-size:var(--type-meta);color:#999}.resource-row{border-bottom:1px solid #dfdfdf;justify-content:space-between;align-items:flex-end;gap:10px;padding:24px 0;display:flex}.resource-entry:first-child .resource-row{padding-top:0}.resource-entry:last-child .resource-row{border:0}.resource-row span{text-box-trim:trim-both;text-box-edge:cap alphabetic}.resource-row .meta{white-space:nowrap}@media (hover:hover){.resource-row:hover{color:#666}}.resources-list+.detail-link{margin-top:24px}.home-playground{padding-block:73px 80px}.home-playground .reading-column>.detail-link{margin-top:21px}.editorial-page .editorial-playground{--recording-border:#00000014;--playground-video-gap:12px;width:100%;height:auto;overflow:visible}.editorial-page .editorial-playground .desk-viewport{touch-action:pan-y pinch-zoom;cursor:auto;overscroll-behavior:auto;height:auto;overflow:visible}.editorial-playground .canvas-world{will-change:auto;position:relative;transform:none!important}.editorial-playground .canvas-world:not([data-ready]){gap:calc(var(--playground-video-gap) - 8px);grid-template-columns:repeat(2,minmax(0,1fr));height:auto;min-height:348px;display:grid}.editorial-playground .canvas-world:not([data-ready]) .video-object{width:100%;height:auto;aspect-ratio:var(--initial-ratio);display:block;position:relative;inset:auto;transform:none}.editorial-playground .canvas-world:not([data-ready]) .video-object:nth-child(n+3){display:none}.editorial-page :is(.video-dialog,.design-lightbox,.feed-video-dialog){overscroll-behavior:none}.editorial-page :is(.video-dialog,.design-lightbox,.feed-video-dialog)::backdrop{overscroll-behavior:none;overflow:hidden}.editorial-page .video-dialog{--text:#000;--muted:#999}.video-dialog[data-caption=title] :is(.dialog-video-date,.dialog-description){display:none}.video-dialog[data-caption=title] .video-dialog-info{grid-template-rows:minmax(0,1fr) auto;display:grid}.video-dialog[data-caption=title] .dialog-caption-header{align-self:start;min-height:0;max-height:100%;margin-bottom:0;overflow-y:auto}.video-dialog[data-caption=title] .dialog-project-navigation{margin-top:0;padding-top:16px}.editorial-playground .desk-caption{display:none}.editorial-rail{z-index:10;width:107px;font-size:var(--type-meta);letter-spacing:-.03em;color:#999;line-height:1.35;position:fixed;top:178px;left:calc(50% - 473px)}.editorial-rail nav{flex-direction:column;gap:10px;padding-top:0;display:flex;position:relative}.editorial-rail nav a{text-align:right;white-space:nowrap;min-height:19px;padding-right:17px;transition:color .24s;position:relative}.editorial-rail nav a[aria-current]{color:#000}.editorial-rail nav a[aria-current]:before{content:"";background:#000;border-radius:50%;width:5px;height:5px;position:absolute;top:calc(50% - 2.5px);right:0}.editorial-rail nav[data-motion-ready] a:before{display:none}.editorial-rail nav[data-motion-ready] .collection-nav-dot{display:block}.editorial-rail nav a:is(:hover,:focus-visible){color:#000}.project-images{flex-direction:column;gap:24px;margin-top:24px;display:flex}.project-notes{gap:var(--paragraph-gap);flex-direction:column;margin-top:48px;display:flex}.muted{color:#999}.editorial-project[id],.project-images,.project-notes{scroll-margin-top:110px}.editorial-about{flex-direction:column;gap:64px;display:flex}.editorial-about .about-summary{font-size:var(--type-body);letter-spacing:-.03em;margin:0;line-height:1.4}.editorial-about .about-summary h1{margin-bottom:2px;line-height:1.35}.editorial-about .about-summary ul{margin-top:var(--heading-content-gap);gap:4px;padding-left:0;list-style:none}.editorial-about .about-summary li{padding-left:28px;position:relative}.editorial-about .about-summary li:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px;position:absolute;top:.55em;left:8px}.editorial-about .about-summary li{text-wrap:initial}.editorial-about .about-summary li::marker{color:#000}.editorial-about .about-video{background:#f5f5f5;outline:0;margin:0}.editorial-about .testimonials-section{margin:0}.editorial-about .testimonials-heading h3{font-size:var(--type-body);color:#999;font-weight:500}.editorial-about .testimonials-heading p{display:none}.editorial-about .testimonials-heading{margin-bottom:var(--heading-content-gap);border:0;padding-bottom:0}.editorial-about .experience-heading{margin-bottom:var(--heading-content-gap);color:#999;border:0;padding:0}.editorial-about .experience-heading h3{font-size:var(--type-body);color:#999}.editorial-about .experience-resume{margin-top:24px}.editorial-about .experience-entry{grid-template-columns:187px minmax(0,1fr);align-items:start;gap:10px;padding-top:24px}.editorial-about .experience-dates{white-space:normal;font-size:var(--type-meta);color:#999}.editorial-about .experience-details{border-bottom:1px solid #dfdfdf;flex-direction:column;gap:16px;padding-bottom:24px;display:flex}.editorial-about .experience-details :is(h3,h4){font-size:var(--type-body);text-wrap:initial;flex-wrap:wrap;align-items:flex-end;gap:10px;font-weight:500;display:flex}.editorial-about :is(.experience-company,.experience-role){text-box-trim:trim-both;text-box-edge:cap alphabetic;font-weight:500;display:block}.editorial-about .experience-description{font-size:var(--type-body);color:#787878;text-wrap:initial;margin:0;line-height:1.35}.editorial-about .experience-description a{white-space:nowrap;align-items:baseline;gap:3px;display:inline-flex}.editorial-about .experience-description a svg{flex:none;margin-left:0}.project-notes a{color:inherit;text-underline-offset:3px;white-space:nowrap;text-decoration:underline;text-decoration-thickness:1px}.project-notes a:hover{color:#000}.editorial-about .experience-role{font-size:var(--type-meta);margin:0}.editorial-about .experience-role-separator{display:none}.editorial-about .experience-positions{margin:0}.editorial-about .experience-timeline{gap:0}.editorial-about .experience-entry:first-child{padding-top:0}.editorial-about .experience-entry+.experience-entry{border-top:0}.about-notes,.about-learnings{gap:var(--paragraph-gap);flex-direction:column;display:flex}.editorial-page :is(.about-notes,.about-learnings,.project-notes)>:is(h2,h3){margin-bottom:calc(var(--heading-content-gap) - var(--paragraph-gap))}.editorial-page .feed-panel{background:0 0;display:block;position:relative;inset:auto;overflow:visible;container-type:normal}.editorial-page .feed-layout{display:block}.editorial-page .feed-index{display:none}.editorial-page .feed-content{max-width:none;padding:0}.editorial-page .feed-heading{text-align:left;margin:0 0 var(--heading-content-gap);max-width:none}.editorial-page .feed-heading h2{font-size:var(--type-body);color:#999}.editorial-page .feed-heading p{font-size:var(--type-meta)}.editorial-page .feed-post h3{font-size:var(--type-body);margin-bottom:var(--heading-content-gap);font-weight:500}.editorial-page .feed-body{font-size:var(--type-body);letter-spacing:-.03em;line-height:1.35}.editorial-page .feed-post{border:0;padding:0}.editorial-page{isolation:isolate}.page-surface{z-index:1;background:var(--bg);position:relative}.page-surface>.editorial-content{padding-bottom:72px}.editorial-footer{z-index:0;color:#999;background:#f5f5f5;align-items:center;min-height:224px;padding-block:64px;display:flex;position:sticky;bottom:0}.footer-content{flex-direction:column;gap:12px;display:flex}.editorial-footer .editorial-socials{gap:4px;height:44px;margin-left:-10px}.footer-bottom{font-size:var(--type-meta);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.footer-time{white-space:nowrap}.footer-bottom time{font-variant-numeric:tabular-nums;min-width:8ch;display:inline-block}.footer-bottom>a{align-items:center;gap:4px;display:inline-flex}@media (width<=1024px){:root{--type-page-title:16px;--type-page-title-small:16px;--type-lead:16px;--type-lead-small:16px;--type-body:16px;--type-meta:12px;--type-tooltip:12px;--heading-content-gap:24px;--paragraph-gap:16px}.navigation-shell{--nav-height:46px;width:360px}.navigation-shell[data-back]{width:min(360px,100% - 86px);transform:translate(calc(27px - 50%))}.editorial-nav{padding:3px}.editorial-nav a{text-box-trim:none;touch-action:manipulation;flex:1 1 0;min-width:0;height:40px;min-height:40px;padding:8px}.editorial-nav a:after{content:"";position:absolute;inset:-2px 0}.editorial-nav .nav-indicator{width:calc(25% - 1.5px);height:calc(100% - 6px);top:3px;left:3px}}@media (width<=1000px){.editorial-rail{display:none}}@media (width<=660px){html{scroll-padding-top:88px}.reading-column{width:calc(100% - 40px)}.navigation-shell{top:12px}.editorial-content{padding-top:108px}.page-surface>.editorial-content{padding-bottom:40px}.hero-copy{gap:16px}.hero-heading{gap:8px}.hero-socials{gap:4px;margin-top:16px;margin-left:0}.editorial-socials{height:48px}.home-section,.home-apps{padding-block:32px 40px}.project-list,.app-list{gap:40px}.project-description{margin-bottom:16px!important}.editorial-project>.detail-link,.app-gallery{margin-top:16px}.app-list+.detail-link{margin-top:32px}.app-store-link{margin-top:12px}.project-images{gap:16px;margin-top:20px}.project-notes{margin-top:32px}.resource-year{grid-template-columns:minmax(0,1fr);gap:12px}.resource-year+.resource-year{margin-top:24px;padding-top:20px}.resource-row{flex-direction:column;align-items:flex-start;gap:4px;padding-block:16px}.resource-entry:last-child .resource-row{padding-bottom:0}.resource-row span{text-box-trim:none}.resource-row .meta{white-space:normal}.resources-list+.detail-link{margin-top:24px}.editorial-about .experience-entry{grid-template-columns:minmax(0,1fr);gap:8px}.editorial-about{gap:36px}.editorial-about .experience-entry{padding-top:20px}.editorial-about .experience-details{gap:12px;padding-bottom:20px}.editorial-about .experience-resume{margin-top:20px}.editorial-page .feed-body{font-size:var(--type-body)}.editorial-footer{min-height:180px;padding-block:48px}.footer-bottom{gap:8px}.editorial-footer .editorial-socials{gap:0}.mac-apps{margin-top:48px}.other-apps{grid-template-columns:1fr;gap:24px}}@media (width<=360px){.editorial-nav a{min-width:0;padding-inline:6px}.reading-column{width:calc(100% - 32px)}}@media (pointer:coarse){.gallery-arrow,.editorial-socials :is(a,button){width:44px;height:44px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.editorial-page *{transition-duration:0s!important;animation-duration:0s!important}}::view-transition{pointer-events:none}::view-transition-group(*){animation-duration:.32s;animation-timing-function:cubic-bezier(.22,1,.36,1)}::view-transition-group(root){z-index:0}::view-transition-old(root){mix-blend-mode:normal;animation:80ms ease-out both page-leave}::view-transition-new(root){mix-blend-mode:normal;animation:.24s cubic-bezier(.22,1,.36,1) 70ms both page-enter}::view-transition-group(portfolio-navigation){z-index:10}::view-transition-group(portfolio-back){z-index:9;animation-duration:.46s}::view-transition-group(portfolio-selector){z-index:11}::view-transition-group(portfolio-tab-home){z-index:12}::view-transition-group(portfolio-tab-work){z-index:12}::view-transition-group(portfolio-tab-about){z-index:12}::view-transition-group(portfolio-tab-apps){z-index:12}html[data-back-closing]::view-transition-group(portfolio-back){animation-duration:.72s;animation-timing-function:cubic-bezier(.4,0,.2,1)}html[data-back-closing]::view-transition-group(portfolio-navigation){animation-duration:.72s;animation-timing-function:cubic-bezier(.4,0,.2,1)}html[data-back-closing]::view-transition-group(portfolio-selector){animation-duration:.72s;animation-timing-function:cubic-bezier(.4,0,.2,1)}html[data-back-closing]::view-transition-group(portfolio-tab-home){animation-duration:.72s;animation-timing-function:cubic-bezier(.4,0,.2,1)}html[data-back-closing]::view-transition-group(portfolio-tab-work){animation-duration:.72s;animation-timing-function:cubic-bezier(.4,0,.2,1)}html[data-back-closing]::view-transition-group(portfolio-tab-about){animation-duration:.72s;animation-timing-function:cubic-bezier(.4,0,.2,1)}html[data-back-closing]::view-transition-group(portfolio-tab-apps){animation-duration:.72s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-old(portfolio-navigation){opacity:0;animation:none}::view-transition-new(portfolio-navigation){animation:none}::view-transition-old(portfolio-back){opacity:0;animation:none}::view-transition-new(portfolio-back){animation:none}::view-transition-old(portfolio-selector){opacity:0;animation:none}::view-transition-new(portfolio-selector){animation:none}@keyframes page-leave{to{opacity:0;transform:translateY(-3px)}}@keyframes page-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.editorial-page .shared-social-tooltip{--tooltip-bg:#242424;--tooltip-color:#fff;min-width:30px;font-size:var(--type-meta);border:0;border-radius:8px;font-weight:500;line-height:20px;box-shadow:0 2px 6px #00000014}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}.editorial-footer{position:relative}.detail-link svg,.app-store-link svg,.footer-bottom>a svg{transform:none!important}}.editorial-page :is(.detail-link,.app-store-link,.editorial-socials a,.editorial-socials button,.gallery-arrow,.testimonials-controls button,.dialog-close,.dialog-project-navigation button,.video-picker button,.video-retry,.feed-video-close,.feed-video-toggle,.feed-video-previous,.feed-video-next,.design-lightbox-close,.design-lightbox-controls button,.video-play-toggle){box-shadow:none;background:0 0;border:0}.editorial-page :is(button,a):focus-visible{text-underline-offset:5px;outline:0;text-decoration:underline}.editorial-page :is(.video-card,.design-lightbox-art):focus-visible{outline:2px solid var(--focus);outline-offset:4px}html[data-input=pointer] .editorial-page :is(.video-card,.design-lightbox-art):focus-visible{outline:none}.editorial-page .video-play-toggle:focus-visible{outline-offset:-3px;outline:2px solid #fff}.editorial-page :is(.editorial-socials a,.editorial-socials button,.gallery-arrow,.testimonials-controls button,.dialog-project-navigation button,.feed-video-toggle,.design-lightbox-controls button):focus-visible{color:var(--text);box-shadow:0 2px}.editorial-page :is(.dialog-close,.feed-video-close,.design-lightbox-close){appearance:none}.editorial-page :is(.dialog-close,.feed-video-close,.design-lightbox-close):focus-visible{outline-offset:2px;box-shadow:none;outline:2px solid;text-decoration:none}.editorial-page .expanded-video-wrap .dialog-close{color:#fff}.editorial-page .expanded-video-wrap .dialog-close:focus-visible{outline-offset:-3px}html[data-input=pointer] .editorial-page :is(.dialog-close,.feed-video-close,.design-lightbox-close):focus-visible{box-shadow:none;outline:none;text-decoration:none}.editorial-page .video-time{font-size:var(--type-meta)}.editorial-page .expanded-state-icon{font-size:var(--type-body);background:0 0;border:0;font-weight:500}.editorial-page .about-video-play{text-shadow:0 1px 5px #0008;background:0 0;font-weight:500}.editorial-page .about-video-play svg{filter:drop-shadow(0 1px 3px #0008);background:0 0}.home-feed{background:#f5f5f5;padding-block:73px 80px}.home-feed .feed-heading p{display:none}.home-feed .feed-content{min-height:0}.home-feed .detail-link{margin-top:24px}@media (width<=660px){.home-feed{padding-block:32px 40px}}.editorial-page :is(.feed-images img,.feed-video-frame,.feed-video-home){border-radius:12px}.editorial-page .feed-video-play svg{filter:drop-shadow(0 1px 3px #0008);background:0 0}.hero-reveal,.footer-reveal{isolation:isolate;display:flow-root;position:relative;overflow:clip}.hero-reveal{z-index:0}.hero-sticky-track{margin-bottom:-100lvh}.hero-sticky-track:after{content:"";height:100lvh;display:block}.footer-reveal{z-index:0}.footer-sticky-track{margin-top:-100lvh}.footer-sticky-track:before{content:"";height:100lvh;display:block}.editorial-home .editorial-hero{top:var(--hero-sticky-top,0px);z-index:0;background:#f5f5f5;position:sticky}.editorial-home .editorial-hero,.editorial-footer{background-image:radial-gradient(at 0 0,#ffffffa8,#0000 65%),linear-gradient(135deg,#f5f5f5,#eee)}.editorial-hero:before,.editorial-footer:before{content:"";z-index:0;opacity:.65;pointer-events:none;background:url(/assets/images/paper-surface-v1.svg) 50%/100% 100% no-repeat;position:absolute;inset:0}.editorial-home :is(.home-section,.home-feed){z-index:2;margin-top:0;position:relative}.home-apps{background:#f5f5f5}.home-work{box-shadow:0 -12px 32px #00000004}.desk-object{width:var(--desk-width);position:absolute}.editorial-page .desk-object-target{cursor:pointer;touch-action:manipulation;mix-blend-mode:multiply;background:0 0;border:0;border-radius:12px;width:100%;height:auto;padding:0;line-height:0;display:block}.desk-object-art{z-index:1;transform:translate(var(--desk-shift-x,0px),var(--desk-drift,0px)) rotate(calc(var(--desk-angle,0deg) + var(--desk-sway,0deg)));display:block;position:relative}.desk-object-hover{mix-blend-mode:multiply;transition:transform .36s cubic-bezier(.22,1,.36,1);display:block}.desk-object-sprite{filter:brightness(1.065);-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:auto;display:block;overflow:hidden;-webkit-mask-image:linear-gradient(#000 0% 94%,#0000 100%);mask-image:linear-gradient(#000 0% 94%,#0000 100%)}.airpods-layers{aspect-ratio:360/290;display:block;position:relative}.airpods-layers .desk-object-sprite{filter:brightness(1.02);mix-blend-mode:multiply;transition:transform .52s cubic-bezier(.22,1,.36,1);position:absolute;-webkit-mask-image:none;mask-image:none}.airpods-layers .airpods-case{transform-origin:45% 55%;width:83%;top:-3%;left:2%}.airpods-layers .airpods-earbud{transform-origin:50%;width:40%;top:10%;left:60%}.desk-object-airpods:has(:focus-visible) .airpods-case,.desk-object-airpods:has([aria-expanded=true]) .airpods-case{transform:translate(-.75px,.5px)rotate(-.4deg)}.desk-object-airpods:has(:focus-visible) .airpods-earbud,.desk-object-airpods:has([aria-expanded=true]) .airpods-earbud{transform:translate(2.5px,-3px)rotate(3deg)}.desk-object-target:focus-visible{outline-offset:4px;outline:2px solid #888}.desk-object-label{z-index:5;translate:var(--desk-tip-x,0px) var(--desk-tip-y,0px);color:#fff;letter-spacing:-.02em;text-align:center;opacity:0;visibility:hidden;pointer-events:none;background:#333;border-radius:4px;width:max-content;max-width:min(270px,100vw - 32px);padding:3px 6px;font-size:12px;line-height:1.25;transition:opacity .18s,transform .24s cubic-bezier(.22,1,.36,1),visibility .18s;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%,3px)}.desk-object:has(:focus-visible) .desk-object-art,.desk-object:has([aria-expanded=true]) .desk-object-art{z-index:4}.desk-object:has(:focus-visible) .desk-object-label,.desk-object:has([aria-expanded=true]) .desk-object-label{opacity:1;visibility:visible;transform:translate(-50%)}.desk-object-airpods{--desk-width:200px;--desk-angle:-8deg;top:calc(18% + 28px);left:max(8px,50% - 615px)}.desk-object-watch{--arrival-edge:calc(50vw - 540px);--desk-width:110px;--desk-angle:7deg;top:13%;right:calc(50% - 540px)}.desk-object-macbook{--desk-width:400px;--desk-angle:-6deg;bottom:-12px;right:calc(50% - 735px)}.desk-object-macbook .desk-object-label{top:36%;left:35%}@keyframes hero-device-arrive{0%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*1),calc(var(--arrival-y)*1),0) rotate(calc(-1 * var(--arrival-angle)))}2.778%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.973468),calc(var(--arrival-y)*.973468),0) rotate(calc(-1 * var(--arrival-angle)))}5.556%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.909685),calc(var(--arrival-y)*.909685),0) rotate(calc(-1 * var(--arrival-angle)))}8.333%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.826427),calc(var(--arrival-y)*.826427),0) rotate(calc(-1 * var(--arrival-angle)))}11.111%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.735432),calc(var(--arrival-y)*.735432),0) rotate(calc(-1 * var(--arrival-angle)))}13.889%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.644197),calc(var(--arrival-y)*.644197),0) rotate(calc(-1 * var(--arrival-angle)))}16.667%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.557279),calc(var(--arrival-y)*.557279),0) rotate(calc(-1 * var(--arrival-angle)))}19.444%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.477233),calc(var(--arrival-y)*.477233),0) rotate(calc(-1 * var(--arrival-angle)))}22.222%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.405272),calc(var(--arrival-y)*.405272),0) rotate(calc(-1 * var(--arrival-angle)))}25%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.341735),calc(var(--arrival-y)*.341735),0) rotate(calc(-1 * var(--arrival-angle)))}27.778%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.286417),calc(var(--arrival-y)*.286417),0) rotate(calc(-1 * var(--arrival-angle)))}30.556%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.23879),calc(var(--arrival-y)*.23879),0) rotate(calc(-1 * var(--arrival-angle)))}33.333%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.198159),calc(var(--arrival-y)*.198159),0) rotate(calc(-1 * var(--arrival-angle)))}36.111%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.163758),calc(var(--arrival-y)*.163758),0) rotate(calc(-1 * var(--arrival-angle)))}38.889%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.134821),calc(var(--arrival-y)*.134821),0) rotate(calc(-1 * var(--arrival-angle)))}41.667%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.110612),calc(var(--arrival-y)*.110612),0) rotate(calc(-1 * var(--arrival-angle)))}44.444%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.090456),calc(var(--arrival-y)*.090456),0) rotate(calc(-1 * var(--arrival-angle)))}47.222%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.073744),calc(var(--arrival-y)*.073744),0) rotate(calc(-1 * var(--arrival-angle)))}50%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.059939),calc(var(--arrival-y)*.059939),0) rotate(calc(-1 * var(--arrival-angle)))}52.778%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.048573),calc(var(--arrival-y)*.048573),0) rotate(calc(-1 * var(--arrival-angle)))}55.556%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.039242),calc(var(--arrival-y)*.039242),0) rotate(calc(-1 * var(--arrival-angle)))}58.333%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.031602),calc(var(--arrival-y)*.031602),0) rotate(calc(-1 * var(--arrival-angle)))}61.111%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.025361),calc(var(--arrival-y)*.025361),0) rotate(calc(-1 * var(--arrival-angle)))}63.889%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.020275),calc(var(--arrival-y)*.020275),0) rotate(calc(-1 * var(--arrival-angle)))}66.667%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.016137),calc(var(--arrival-y)*.016137),0) rotate(calc(-1 * var(--arrival-angle)))}69.444%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.012777),calc(var(--arrival-y)*.012777),0) rotate(calc(-1 * var(--arrival-angle)))}72.222%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.010054),calc(var(--arrival-y)*.010054),0) rotate(calc(-1 * var(--arrival-angle)))}75%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.00785),calc(var(--arrival-y)*.00785),0) rotate(calc(-1 * var(--arrival-angle)))}77.778%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.006068),calc(var(--arrival-y)*.006068),0) rotate(calc(-1 * var(--arrival-angle)))}80.556%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.004631),calc(var(--arrival-y)*.004631),0) rotate(calc(-1 * var(--arrival-angle)))}83.333%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.003471),calc(var(--arrival-y)*.003471),0) rotate(calc(-1 * var(--arrival-angle)))}86.111%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.002538),calc(var(--arrival-y)*.002538),0) rotate(calc(-1 * var(--arrival-angle)))}88.889%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.001787),calc(var(--arrival-y)*.001787),0) rotate(calc(-1 * var(--arrival-angle)))}91.667%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.001184),calc(var(--arrival-y)*.001184),0) rotate(calc(-1 * var(--arrival-angle)))}94.444%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.0007),calc(var(--arrival-y)*.0007),0) rotate(calc(-1 * var(--arrival-angle)))}97.222%{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*.000311),calc(var(--arrival-y)*.000311),0) rotate(calc(-1 * var(--arrival-angle)))}to{transform:rotate(var(--arrival-angle)) translate3d(calc(var(--arrival-x)*0),calc(var(--arrival-y)*0),0) rotate(calc(-1 * var(--arrival-angle)))}}@media (prefers-reduced-motion:no-preference){.editorial-hero .desk-object{--arrival-angle:var(--desk-angle)}.editorial-hero .desk-object-target{animation:hero-device-arrive var(--arrival-duration) linear var(--arrival-delay) both paused}.editorial-hero[data-devices-ready] .desk-object-target{animation-play-state:running}.editorial-hero[data-devices-settled] .desk-object-target{animation:none}.editorial-hero .desk-object-airpods{--arrival-x:calc(-1 * (max(24px,calc(50vw - 615px)) + var(--desk-width) + 64px));--arrival-y:0px;--arrival-delay:0s;--arrival-duration:1.1s}.editorial-hero .desk-object-watch{--arrival-angle:calc(var(--desk-angle) - 25deg);--arrival-x:calc(max(0px,var(--arrival-edge)) + var(--desk-width) + 64px);--arrival-y:0px;--arrival-delay:.1s;--arrival-duration:1.2s}.editorial-hero .desk-object-macbook{--arrival-x:0px;--arrival-y:calc(100% + 72px);--arrival-delay:.22s;--arrival-duration:1.35s}}.editorial-footer{min-height:320px;overflow:clip}.editorial-footer .desk-object-hover{transition:none}.footer-content{z-index:2;position:relative}.desk-object-headphones{--desk-width:200px;--desk-angle:-9deg;top:40px;left:calc(50% - 565px)}.desk-object-controller{--desk-width:260px;--desk-angle:8deg;top:70px;right:calc(50% - 600px)}.desk-object-headphones .desk-object-label{top:auto;bottom:0}.desk-object-controller .desk-object-label{top:calc(100% + 4px)}@media (hover:hover){.desk-object-airpods:hover .airpods-case{transform:translate(-.75px,.5px)rotate(-.4deg)}.desk-object-airpods:hover .airpods-earbud{transform:translate(2.5px,-3px)rotate(3deg)}.desk-object:hover .desk-object-art{z-index:4}.desk-object-target:hover .desk-object-hover{transform:rotate(.7deg)translateY(-1px)}.desk-object:hover .desk-object-label{opacity:1;visibility:visible;transform:translate(-50%)}}@media (width<=1100px){.editorial-hero{--hero-min-height:860px;padding-block:240px 220px}.desk-object-airpods{--desk-width:135px;top:auto;bottom:24px;left:24px}.desk-object-watch{--arrival-edge:calc(50vw - 260px);--desk-width:80px;top:76px;right:calc(50% - 260px)}.desk-object-macbook{--desk-width:250px;bottom:-12px;right:-20px}.editorial-footer{min-height:310px;padding-block:215px 48px}.desk-object-headphones{--desk-width:145px;top:32px;left:calc(50% - 225px)}.desk-object-controller{--desk-width:190px;top:52px;right:calc(50% - 245px)}}@media (width<=660px){.editorial-hero{--hero-min-height:820px;padding-block:216px 176px}.desk-object-airpods{--desk-width:108px;top:auto;bottom:18px;left:10px}.desk-object-watch{--arrival-edge:26px;--desk-width:60px;top:76px;right:26px}.desk-object-macbook{--desk-width:190px;bottom:-10px;right:-15px}.desk-object-airpods .desk-object-label{top:auto;bottom:100%;left:0;transform:translateY(4px)}.desk-object-watch .desk-object-label{left:auto;right:-12px;transform:translateY(4px)}.desk-object-airpods:is(:hover,:has(:focus-visible),:has([aria-expanded=true])) .desk-object-label,.desk-object-watch:is(:hover,:has(:focus-visible),:has([aria-expanded=true])) .desk-object-label{transform:translate(0)}.editorial-footer{padding-block:200px 48px}.desk-object-headphones{--desk-width:128px;top:32px;left:26px}.desk-object-controller{--desk-width:166px;top:64px;right:12px}.desk-object-headphones .desk-object-label{left:0;transform:translateY(4px)}.desk-object-controller .desk-object-label{left:auto;right:0;transform:translateY(4px)}.desk-object-headphones:is(:hover,:has(:focus-visible),:has([aria-expanded=true])) .desk-object-label,.desk-object-controller:is(:hover,:has(:focus-visible),:has([aria-expanded=true])) .desk-object-label{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.editorial-home .editorial-hero{position:relative}.desk-object-art{transform:rotate(var(--desk-angle,0deg));transition:none}.desk-object-hover,.desk-object-target:hover .desk-object-hover{transition:none;transform:none}.airpods-layers .desk-object-sprite{transition:none;transform:none!important}}
