:root{color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{min-height:100vh;background:#fff;color:#0b0b0c;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{isolation:isolate}.portfolio{--bg: #ffffff;--bg-2: #f3f4f6;--ink: #0b0b0c;--muted: #6b6f76;--line: rgba(11, 11, 12, .14);--grid: rgba(11, 11, 12, .035);--accent: #1f46ff;--pixel: "Pixelify Sans", monospace;--sans: "Space Grotesk", system-ui, sans-serif;--mono: "Space Mono", ui-monospace, monospace;position:relative;background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}.portfolio *,.portfolio *:before,.portfolio *:after{box-sizing:border-box}.portfolio ::selection{background:var(--accent);color:#fff}.portfolio .matrix-drift{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden;contain:layout paint}.portfolio .matrix-grid{position:absolute;top:-64px;right:-64px;bottom:-64px;left:-64px;--mx: 0px;--my: 0px;--ms: 1;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:32px 32px;transform:translate3d(var(--mx),var(--my),0) scale(var(--ms));transform-origin:center;will-change:transform;backface-visibility:hidden}@media(prefers-reduced-motion:reduce),(hover:none),(pointer:coarse){.portfolio .matrix-grid{transform:none;will-change:auto}}html:has(.portfolio){scroll-behavior:smooth}@keyframes marz-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes hero-shake{0%,66%,to{transform:translate(0) rotate(0)}70%{transform:translate(-3px,1px) rotate(-1.4deg)}74%{transform:translate(3px,-1px) rotate(1.4deg)}78%{transform:translate(-3px,1px) rotate(-1.1deg)}82%{transform:translate(2px) rotate(1deg)}86%{transform:translate(0) rotate(0)}}.portfolio canvas[data-pixel-portrait]{image-rendering:pixelated}@media(prefers-reduced-motion:reduce){.portfolio [data-marquee-track]{animation:none!important}.portfolio .work-slot{margin-top:24px!important}.portfolio .work-slot:first-child{margin-top:0!important}.portfolio .logo-marquee{overflow:visible;-webkit-mask-image:none;mask-image:none}.portfolio .logo-seq{flex-wrap:wrap}.portfolio .logo-dup{display:none}.portfolio .stack-logo{margin-bottom:10px}.portfolio .hero-shout{animation:none}}.portfolio .nav-link{transition:color .25s}.portfolio .nav-link:hover{color:var(--ink)}.portfolio .btn-dark{transition:background .25s,transform .25s}.portfolio .btn-dark:hover{background:var(--accent);transform:translateY(-2px)}.portfolio .btn-ghost{transition:background .25s,color .25s}.portfolio .btn-ghost:hover{background:var(--ink)!important;color:var(--bg)!important}.portfolio .btn-accent{transition:background .25s,transform .25s}.portfolio .btn-accent:hover{background:var(--ink);transform:translateY(-2px)}.portfolio .hero-shout{animation:hero-shake 3s infinite;transform-origin:center}.portfolio .work-card{cursor:pointer}.portfolio .work-mover{will-change:transform}.portfolio .work-shot{cursor:pointer}.portfolio .work-shot-cta{transition:opacity .25s ease}.portfolio .work-shot:hover .work-shot-cta,.portfolio .work-shot:focus-visible .work-shot-cta{opacity:1!important}.portfolio .stack-logo{display:inline-flex;align-items:center;gap:9px;flex:none;margin-right:10px;padding:9px 13px;border:1px solid var(--line);background:var(--bg);font-family:var(--mono);font-size:12.5px;color:var(--ink);white-space:nowrap;transition:color .2s ease,border-color .2s ease}.portfolio .stack-logo:hover{color:var(--accent);border-color:var(--accent)}.portfolio .logo-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent)}.portfolio .logo-marquee+.logo-marquee{margin-top:10px}.portfolio .logo-track{display:flex;width:max-content;animation-name:marz-marquee;animation-timing-function:linear;animation-iteration-count:infinite}.portfolio .logo-seq{display:flex;flex:none}.portfolio .work-panel{transition:border-color .2s ease}.portfolio .work-panel:hover{border-color:var(--accent)}.portfolio .work-panel-expand{transition:opacity .2s ease}.portfolio .work-panel:hover .work-panel-expand,.portfolio .work-panel:focus-visible .work-panel-expand{opacity:1!important}.portfolio .work-panel-soon{background:repeating-linear-gradient(-45deg,#f6c945 0,#f6c945 10px,#1b1b14 10px,#1b1b14 20px)}.portfolio .work-panel-soon:after{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;z-index:0;background:var(--bg-2)}.portfolio .btn-ghost:disabled,.portfolio .btn-ghost:disabled:hover{background:none!important;color:var(--ink)!important;cursor:not-allowed}.portfolio a:focus-visible,.portfolio .btn-dark:focus-visible,.portfolio .btn-ghost:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.portfolio [data-reveal]{opacity:1}.portfolio .skip-link{position:absolute;left:8px;top:8px;z-index:100;padding:10px 16px;background:var(--ink);color:var(--bg);font-family:var(--mono);font-size:13px;text-decoration:none;transform:translateY(-160%);transition:transform .16s ease}.portfolio .skip-link:focus{transform:translateY(0)}@media(max-width:768px){.portfolio .hero-grid{grid-template-columns:1fr!important;gap:28px!important;min-height:0!important}.portfolio .hero-wordmark{margin-left:0!important}.portfolio .work-slot{align-self:stretch!important;width:100%!important;margin-top:0!important}.portfolio .work-slot+.work-slot{margin-top:28px!important}.portfolio .stack-col{margin-top:0!important}.portfolio .about-lede{max-width:100%!important}.portfolio .about-aside{max-width:100%!important;margin-left:0!important;text-align:left!important}.portfolio .section-num{font-size:clamp(5rem,20vw,10rem)!important}}@media(max-width:480px){.portfolio .nav-links{gap:14px!important}.portfolio .nav-available,.portfolio .section-num{display:none!important}}.portfolio .tl-timeline{--tl-gutter: 168px;--tl-node: 14px;position:relative;width:min(100%,940px);margin:0 auto;padding:4px 0 8px;display:flex;flex-direction:column}.portfolio .tl-spine,.portfolio .tl-draw{position:absolute;top:0;bottom:0;left:50%;width:2px;margin-left:-1px;pointer-events:none;z-index:0}.portfolio .tl-spine{background:var(--line)}.portfolio .tl-draw{background:var(--accent);transform-origin:top center;transform:scaleY(1);opacity:.9}.portfolio .tl-row{display:grid;grid-template-columns:1fr var(--tl-gutter) 1fr;align-items:center;column-gap:clamp(14px,2.4vw,34px)}.portfolio .tl-row+.tl-row{margin-top:clamp(26px,5vh,56px)}.portfolio .tl-node{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;z-index:2}.portfolio .tl-dot{width:var(--tl-node);height:var(--tl-node);background:var(--ink);border:1px solid var(--ink);box-shadow:0 0 0 5px var(--bg-2);transition:background .3s ease,border-color .3s ease,box-shadow .3s ease}.portfolio .tl-badge{display:inline-block;padding:5px 10px;border:1px solid var(--ink);background:var(--bg);font-family:var(--mono);font-size:13px;letter-spacing:.04em;white-space:nowrap;transition:border-color .3s ease,box-shadow .3s ease}.portfolio .tl-card{grid-column:1;grid-row:1;min-width:0;max-width:100%;transition:transform .28s ease,box-shadow .28s ease}.portfolio .tl-row--right .tl-card{grid-column:3}.portfolio .tl-tick{grid-row:1;grid-column:1;align-self:center;justify-self:end;width:clamp(14px,2.4vw,34px);height:2px;margin-right:calc(clamp(14px,2.4vw,34px)*-1);background:var(--line);pointer-events:none;z-index:1}.portfolio .tl-row--right .tl-tick{grid-column:3;justify-self:start;margin-right:0;margin-left:calc(clamp(14px,2.4vw,34px)*-1)}.portfolio .tl-card:hover{transform:translate(-4px,-4px);box-shadow:16px 16px #1f46ff2e!important}.portfolio .tl-row--right .tl-card:hover{transform:translate(4px,-4px)}.portfolio .tl-link{transition:background .2s ease,color .2s ease,border-color .2s ease}.portfolio .tl-link:hover,.portfolio .tl-link:focus-visible{background:var(--accent)!important;color:var(--bg)!important;border-color:var(--accent)!important}.portfolio .tl-row--current .tl-card{border-color:var(--accent)!important;box-shadow:8px 8px #1f46ff24!important}.portfolio .tl-row--current .tl-tick{background:var(--accent)}.portfolio .tl-row--current .tl-dot{background:var(--accent);border-color:var(--accent)}.portfolio .tl-node.is-lit .tl-dot{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 5px var(--bg-2),0 0 0 7px #1f46ff2e}.portfolio .tl-node.is-lit .tl-badge{border-color:var(--accent);box-shadow:3px 3px #1f46ff29}@media(max-width:768px){.portfolio .tl-timeline{width:100%!important;padding-left:6px!important}.portfolio .tl-spine,.portfolio .tl-draw{left:8px!important;margin-left:0!important}.portfolio .tl-row,.portfolio .tl-row--right{grid-template-columns:auto minmax(0,1fr)!important;column-gap:18px!important;align-items:start!important}.portfolio .tl-row+.tl-row{margin-top:22px!important}.portfolio .tl-node{grid-column:1!important;align-items:flex-start!important}.portfolio .tl-dot{margin-left:0!important}.portfolio .tl-card,.portfolio .tl-row--right .tl-card{grid-column:2!important;min-width:0!important;transform:none!important}.portfolio .tl-tick,.portfolio .tl-row--right .tl-tick{grid-column:1!important;justify-self:end!important;align-self:start!important;width:14px!important;margin:22px -14px 0 0!important}.portfolio .tl-row--right .tl-tick{margin-left:0!important}.portfolio .tl-badge{display:none!important}.portfolio .tl-card:hover,.portfolio .tl-row--right .tl-card:hover{transform:translate(-3px,-3px)!important}}
