.skip-link{z-index:60;border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);letter-spacing:.06em;text-transform:uppercase;padding:10px 14px;font-size:12px;font-weight:800;transition:transform .16s;position:fixed;top:12px;left:12px;transform:translateY(-140%)}.skip-link:focus-visible{outline-offset:2px;outline:2px solid #5c6cf28c;transform:translateY(0)}.route-fallback,.flow-lab-fallback{min-height:120px}.app-frame{flex-direction:column;flex:1;min-height:100svh;display:flex}.site-content{z-index:2;margin-bottom:var(--footer-height);background:var(--bg-primary);box-shadow:var(--shadow-elevated);border-radius:0 0 28px 28px;position:relative;overflow:clip hidden}.topbar{z-index:40;padding:16px var(--page-pad);background:linear-gradient(#0c0e16e0,#11131500);justify-content:space-between;align-items:center;transition:padding .18s,background .18s,-webkit-backdrop-filter .18s,backdrop-filter .18s;display:flex;position:fixed;inset:0 0 auto}.topbar.is-scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0c0e16d1;padding-block:10px}.brand,.topbar nav,.footer-toplink,.icon-link,.tool-actions a,.footer-links a{align-items:center;display:inline-flex}.brand{color:var(--text-primary);gap:10px;font-weight:900}.brand-logo{opacity:.94;flex-shrink:0;width:22px;height:auto;display:block}.topbar nav{gap:4px}.topbar nav a{color:var(--text-secondary);border-radius:7px;padding:8px 10px;font-size:13px;font-weight:800;transition:color .16s,background .16s;position:relative}.topbar nav a:hover{color:var(--text-primary);background:#ffffff0a}.topbar nav a:focus-visible,.icon-link:focus-visible,.utility-shelf__filter:focus-visible,.flow-lab-tool:focus-visible{outline-offset:3px;outline:2px solid #5c6cf28c}.topbar-menu-btn{color:var(--text-primary);border:1px solid var(--border);letter-spacing:.06em;text-transform:uppercase;background:#ffffff0f;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:800;display:none}.topbar-menu-btn svg{width:18px;height:18px}.hero{border-bottom:1px solid var(--line);isolation:isolate;min-height:94svh;position:relative;overflow:hidden}.hero-stage{pointer-events:none;background:radial-gradient(circle at 72% 22%,#5c6cf224,#0000 22%),radial-gradient(circle at 24% 68%,#4d7ee81a,#0000 22%),linear-gradient(140deg,#08091a,#0d1128 50%,#151a3c);position:absolute;inset:0}.hero-video{object-fit:cover;width:100%;height:100%;display:block}.hero-stage canvas{cursor:grab}.scene-fallback{width:100%;height:100%;min-height:inherit;background:radial-gradient(circle at 52% 42%,#5c6cf233,#0000 26%),radial-gradient(circle,#4d7ee81f,#0000 44%)}.hero-shade{z-index:1;pointer-events:none;background:linear-gradient(#06071014,#06071038 42%,#060710e0),linear-gradient(90deg,#06071075,#0000 54%,#0607103d);position:absolute;inset:0}.hero:after,.about-visual:after{content:"";z-index:2;pointer-events:none;opacity:.15;mix-blend-mode:overlay;background-image:linear-gradient(#ffffff12 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px);background-size:52px 52px;position:absolute;inset:0}.hero-content{z-index:3;min-height:94svh;padding:118px var(--page-pad) 54px;flex-direction:column;justify-content:flex-end;display:flex;position:relative}.eyebrow,.section-kicker,.project-kicker,.project-card-copy p,.project-tile__copy p,.footer-kicker,.footer-bottom{text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:900}.eyebrow{color:var(--text-secondary);margin:0 0 8px}.hero h1{max-width:1180px;font-family:var(--display);letter-spacing:-.03em;text-shadow:0 14px 42px #00000070;margin:0 0 16px;font-size:clamp(54px,13vw,168px);font-weight:800;line-height:.85}.hero-grid{grid-template-columns:minmax(0,520px) auto;align-items:end;gap:22px;max-width:1060px;display:grid}.hero-grid p{color:#ffffffc7;margin:0;font-size:clamp(16px,2vw,19px);line-height:1.55}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.icon-link{border:1px solid var(--border);min-height:48px;color:var(--text-primary);white-space:nowrap;background:#ffffff0a;border-radius:8px;gap:10px;padding:0 15px;font-weight:900;transition:transform .16s,background .16s,border-color .16s,box-shadow .16s}.icon-link:hover{box-shadow:var(--glow-accent);background:#5c6cf21f;border-color:#5c6cf273;transform:translateY(-2px)}.icon-link.secondary{color:var(--text-secondary);background:#ffffff08}.icon-link.secondary:hover{color:var(--text-primary);box-shadow:none;background:#5e6b751a;border-color:#5e6b7566}.section{padding:clamp(64px, 10vw, 130px) var(--page-pad)}.section-dark{background:var(--bg-primary)}#work.section.section-dark{border-top:none;padding-top:clamp(16px,2.4vw,32px)}.tools-section{border-top:1px solid var(--line);background:radial-gradient(circle at 10% 20%, #5c6cf20a, transparent 30%), var(--bg-secondary)}.section-light{color:var(--text-primary);background:linear-gradient(180deg, #ffffff05, transparent 48%), var(--bg-secondary);border-top:1px solid var(--line)}.section-head{grid-template-columns:minmax(0,1fr) minmax(220px,380px);align-items:start;gap:28px;margin-bottom:clamp(52px,6vw,72px);display:grid}.section-kicker{color:var(--accent-secondary);margin:0 0 14px}.section-light .section-kicker{color:var(--accent-muted)}.section-head h2,.about-copy h2{font-family:var(--display);letter-spacing:-.04em;margin:0;font-size:clamp(64px,10vw,116px);line-height:.88}.section-head>p,.about-copy p{color:var(--muted);margin:0;line-height:1.65}.section-light .section-head>p{color:var(--text-secondary)}.magnetic-card{transform-style:preserve-3d;border-radius:8px;position:relative;overflow:hidden}.magnetic-card[role=button]{cursor:pointer}.magnetic-card[role=button]:focus-visible{outline-offset:4px;outline:2px solid #5c6cf28c}.magnetic-card:before{content:"";z-index:3;pointer-events:none;opacity:0;background:radial-gradient(circle at 30% 12%,#ffffff29,#0000 30%);transition:opacity .18s;position:absolute;inset:0}.magnetic-card.experiment:before{background:radial-gradient(circle at 30% 12%,#ffffff12,#0000 32%)}.magnetic-card:hover:before{opacity:1}.project-visual,.project-media{background:#000;min-height:240px;position:relative;overflow:hidden}.project-media>img,.project-media>video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.project-media__poster{z-index:1;transition:opacity .45s,transform .46s,filter .46s}.project-media>img{transition:opacity .45s,transform .46s,filter .46s}.project-media--vimeo-active>.project-media__poster,.magnetic-card:hover .project-media--vimeo-active>.project-media__poster,.magnetic-card:focus-visible .project-media--vimeo-active>.project-media__poster{opacity:0;filter:none;transform:scale(1)}.project-media__vimeo{z-index:0;pointer-events:none;border:0;width:100%;height:100%;position:absolute;inset:0}.project-media__hover-video{z-index:0;object-fit:cover;opacity:0;pointer-events:none;background:0 0;width:100%;height:100%;transition:opacity .42s;position:absolute;inset:0}.project-media--local-hover-ready .project-media__hover-video{z-index:3;opacity:1}.project-media--local-hover-ready>.project-media__poster{opacity:0;filter:none;transform:scale(1)}.project-media--local-hover-ready .project-media-overlay{opacity:0}.magnetic-card:hover .project-media--local-hover:not(.project-media--local-hover-ready)>.project-media__poster,.magnetic-card:focus-visible .project-media--local-hover:not(.project-media--local-hover-ready)>.project-media__poster{opacity:1}.magnetic-card.project-tile:not(:hover) .project-media__poster{opacity:1;transition:opacity 60ms,transform .28s,filter .28s}.project-media--vimeo-active .project-media-overlay{opacity:0}.project-media>video:not(.project-media__hover-video){z-index:1;background:#000}.magnetic-card:hover .project-media:not(.project-media--vimeo-active)>img,.magnetic-card:focus-visible .project-media:not(.project-media--vimeo-active)>img{filter:saturate(1.08)contrast(1.04);transform:scale(1.035)}.project-media-overlay{z-index:2;opacity:0;background:linear-gradient(#0000 44%,#080a0985);justify-content:end;align-items:end;padding:18px;transition:opacity .18s;display:flex;position:absolute;inset:0}.project-media-overlay span{color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0b0e18b8;border:1px solid #ffffff38;border-radius:8px;align-items:center;gap:9px;padding:10px 12px;font-size:13px;font-weight:900;display:inline-flex}.magnetic-card:hover .project-media-overlay,.magnetic-card:focus-visible .project-media-overlay,.tool-preview:hover .project-media-overlay,.tool-preview:focus-within .project-media-overlay{opacity:1}.tool-preview:hover .project-media:not(.project-media--vimeo-active)>img,.tool-preview:focus-within .project-media:not(.project-media--vimeo-active)>img{filter:saturate(1.08)contrast(1.04);transform:scale(1.035)}.tool-preview:hover .project-media--vimeo-active>.project-media__poster,.tool-preview:focus-within .project-media--vimeo-active>.project-media__poster{opacity:0;filter:none;transform:scale(1)}.tool-preview:hover:after,.tool-preview:focus-within:after{opacity:1;animation:.78s surfaceSweep}.project-visual:after,.project-media:after,.tool-preview:after,.mini-scene:after{content:"";pointer-events:none;opacity:0;background:linear-gradient(110deg,#0000 0 42%,#e6e1d71a 50%,#0000 58%);position:absolute;inset:0;transform:translate(-120%)}.magnetic-card:hover .project-visual:after,.magnetic-card:hover .project-media:after,.magnetic-card:hover .mini-scene:after{opacity:1;animation:.78s surfaceSweep}.project-visual span{display:block;position:absolute}.project-visual.visual-road{background:linear-gradient(176deg,#0000 0 48%,#343a35 49% 58%,#1b201e 59%),linear-gradient(90deg,#4f5a52,#9c825f 38%,#c5b9a4 56%,#667267)}.project-visual.visual-road span:first-child{background:#f5f5f5b8;height:5px;bottom:27%;left:8%;right:5%;transform:rotate(-1deg)}.project-visual.visual-road span:nth-child(2){background:var(--frost);height:1px;box-shadow:0 0 22px var(--frost);animation:4.8s ease-in-out infinite scan;inset:auto 0 34%}.project-visual.visual-road span:nth-child(3){background:linear-gradient(90deg,#0000 calc(50% - 1px),#e6e1d79e calc(50% - 1px) calc(50% + 1px),#0000 calc(50% + 1px)),linear-gradient(0deg,#0000 calc(50% - 1px),#e6e1d79e calc(50% - 1px) calc(50% + 1px),#0000 calc(50% + 1px)),#0d111038;border:1px solid #e6e1d7b3;border-radius:50%;width:72px;height:72px;animation:3.6s ease-in-out infinite bob;bottom:24%;left:63%;box-shadow:0 14px 28px #0000003d}.project-visual.visual-mask{background:radial-gradient(circle at 50% 42%,#9a4d36 0 16%,#0000 17%),radial-gradient(circle at 48% 30%,#caa569 0 8%,#0000 9%),conic-gradient(from 20deg at 50% 18%,#cfc5a8,#171a16,#b9914d,#101410,#cfc5a8)}.project-visual.visual-nodes{background:radial-gradient(circle at 24% 32%, var(--frost) 0 5px, transparent 6px), radial-gradient(circle at 76% 66%, var(--rose) 0 5px, transparent 6px), radial-gradient(circle at 52% 48%, var(--moss) 0 5px, transparent 6px), linear-gradient(135deg, #101420, #2b3430)}.project-visual.visual-nodes span:first-child,.project-visual.visual-nodes span:nth-child(2),.project-visual.visual-nodes span:nth-child(3){border:1px solid #ffffff2e;transform:skewY(-12deg)}.project-visual.visual-nodes span:first-child{inset:24% 18% 42% 20%}.project-visual.visual-nodes span:nth-child(2){inset:42% 28% 24% 34%}.project-visual.visual-nodes span:nth-child(3){inset:16% 46% 58% 44%}.project-visual.visual-scene{background:linear-gradient(176deg,#0000 0 42%,#282e28 43% 65%,#151914 66%),linear-gradient(90deg,#71835e,#b88c52 35%,#d4b997 52%,#526347)}.project-visual.visual-motion{background:repeating-linear-gradient(100deg, transparent 0 16px, #ffffff17 17px 18px), radial-gradient(circle at 72% 34%, var(--rose), transparent 22%), radial-gradient(circle at 24% 70%, var(--frost), transparent 22%), #101420}.project-copy{background:linear-gradient(#e4ded014,#e4ded005);flex-direction:column;justify-content:end;padding:34px;display:flex}.project-kicker,.project-tile__copy p{color:var(--accent-secondary);margin:0 0 10px}.project-copy h3,.project-tile h3,.tool-body h3,.experiment h3{letter-spacing:0;margin:0;line-height:1}.project-copy h3{letter-spacing:-.03em;font-size:clamp(24px,3.4vw,40px)}.project-copy p:last-child{color:#ffffffb3;margin:14px 0 0;line-height:1.58}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;display:grid}.project-tile{text-align:left;background:0 0;border:none;border-radius:0;gap:clamp(12px,1.4vw,16px);display:grid;overflow:visible}.magnetic-card.project-tile:before{display:none}.magnetic-card.project-tile:focus-visible{outline-offset:4px;border-radius:var(--radius-media);outline:2px solid #5c6cf28c}.project-tile__media{border-radius:var(--radius-media);overflow:hidden}.project-tile__media .project-visual,.project-tile__media .project-media{aspect-ratio:16/9;border-radius:inherit;min-height:0}.project-tile__copy{padding:0}.project-tile h3{letter-spacing:-.03em;font-size:clamp(22px,2.8vw,33px);transition:color .18s}.project-tile:hover h3,.project-tile:focus-visible h3{color:color-mix(in srgb, var(--text-primary) 92%, var(--accent-hover))}.project-tile__copy span{color:var(--text-secondary);margin-top:10px;line-height:1.5;display:block}.project-tile__meta{flex-wrap:wrap;gap:6px 12px;margin-top:12px;display:flex}.project-tile__meta span{color:color-mix(in srgb, var(--accent-secondary) 78%, var(--text-secondary));letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.project-tile__meta span:not(:last-child):after{content:"·";color:color-mix(in srgb, var(--text-secondary) 42%, transparent);margin-left:12px;font-weight:400}@media (prefers-reduced-motion:reduce){.magnetic-card.project-tile:hover .project-media:not(.project-media--vimeo-active)>img,.magnetic-card.project-tile:focus-visible .project-media:not(.project-media--vimeo-active)>img{filter:none;transform:none}}.ppm-root{z-index:100;pointer-events:auto;place-items:center;padding:clamp(14px,3.6vw,40px);display:grid;position:fixed;inset:0}.ppm-backdrop{cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#04050cd1;border:none;margin:0;padding:0;position:absolute;inset:0}.ppm-dialog{z-index:1;border:1px solid var(--border);background:var(--bg-secondary);width:min(1140px,100%);max-height:min(86svh,900px);box-shadow:var(--shadow-elevated);border-radius:12px;display:grid;position:relative;overflow:hidden}.ppm-close{z-index:3;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0b0e18b8;border:1px solid #ffffff2e;border-radius:8px;place-items:center;width:42px;height:42px;font-size:22px;transition:background .16s,border-color .16s,color .16s;display:grid;position:absolute;top:12px;right:12px}.ppm-close:hover{color:var(--text-primary);background:#5c6cf238;border-color:#5c6cf26b}.ppm-grid{grid-template-columns:minmax(0,1.32fr) minmax(260px,.68fr);min-height:0;max-height:min(86svh,900px);display:grid}.ppm-media{background:#06070e;border-right:1px solid #ffffff14;min-height:320px;position:relative}.ppm-video{object-fit:cover;width:100%;height:100%;min-height:320px;max-height:min(86svh,900px);display:block}.ppm-vimeo{border:0;display:block}.ppm-media-frame{width:100%;height:100%;min-height:320px;max-height:min(86svh,900px);position:relative}.ppm-poster{object-fit:cover;filter:brightness(.55)saturate(.88);width:100%;height:100%;min-height:320px;display:block}.ppm-video-placeholder{border:1px solid var(--border);color:var(--text-primary);text-align:left;background:#0c0e16eb;border-radius:10px;padding:14px 16px;font-size:14px;font-weight:800;position:absolute;inset:auto 16px 16px}.ppm-video-placeholder small{color:var(--text-secondary);margin-top:6px;font-size:11px;font-weight:600;line-height:1.4;display:block}.ppm-video-placeholder--solo{align-content:center;justify-items:start;gap:8px;max-width:360px;height:auto;display:grid;position:absolute;inset:24px}.ppm-copy{flex-direction:column;min-height:0;padding:clamp(22px,3.4vw,38px);display:flex;overflow:auto}.ppm-label{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-muted);margin:0 0 10px;font-size:11px;font-weight:900}.ppm-title{font-family:var(--display);letter-spacing:-.03em;color:var(--text-primary);margin:0 0 10px;font-size:clamp(22px,2.8vw,34px);line-height:1.05}.ppm-role{color:var(--text-secondary);margin:0 0 14px;font-size:13px;font-weight:800}.ppm-desc{color:var(--text-secondary);flex:1;margin:0;font-size:14px;line-height:1.62}.ppm-meta{border-top:1px solid var(--border);flex-wrap:wrap;gap:8px;margin-top:20px;padding-top:18px;display:flex}.ppm-meta span{color:var(--accent-secondary);letter-spacing:.06em;text-transform:uppercase;border:1px solid #5c6cf238;border-radius:999px;padding:7px 11px;font-size:10px;font-weight:900}@media (width<=840px){.ppm-grid{grid-template-columns:1fr;max-height:min(92svh,900px)}.ppm-media{border-bottom:1px solid #ffffff14;border-right:none;min-height:240px}.ppm-video,.ppm-media-frame{min-height:240px;max-height:44svh}.ppm-copy{padding-bottom:28px}}.tools-grid,.experiment-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.tool-card{border:1px solid var(--line);background:#0e1118}.tool-preview{aspect-ratio:16/9;border-bottom:1px solid var(--line);background:#101420;position:relative;overflow:hidden}.tool-preview svg{z-index:1;color:var(--frost);font-size:32px;position:absolute;top:24px;right:26px}.tool-preview span{background:#e6e1d71f;border-radius:6px;position:absolute}.tool-preview span:nth-child(2){width:34%;height:18px;top:30px;left:26px}.tool-preview span:nth-child(3){width:58%;height:54px;top:64px;left:26px}.tool-preview span:nth-child(4){width:27%;height:38px;bottom:26px;right:26px}.tool-preview-maya{background:linear-gradient(135deg,#86a7a233,#0000 52%),#101420}.tool-preview-blender{background:linear-gradient(135deg,#b08a5740,#0000 52%),#101420}.tool-preview-windows{background:linear-gradient(135deg,#67736347,#0000 52%),#101420}.tool-preview>.project-media{min-height:0;position:absolute;inset:0}.tool-preview-fallback{z-index:0;background:#0a0c14;position:absolute;inset:0}.tool-body{padding:18px}.tool-meta{flex-wrap:wrap;gap:7px;margin-bottom:18px;display:flex}.tool-meta span,.skill-list span{border-radius:7px;font-size:12px;font-weight:900}.tool-meta span{color:#e6e1d7b8;background:#e6e1d70d;border:1px solid #e6e1d71f;padding:7px 9px}.tool-body h3{font-size:clamp(25px,3vw,36px)}.tool-body p{color:#e6e1d7ad;margin:12px 0 0;line-height:1.58}.tool-actions{gap:8px;margin-top:20px;display:flex}.tool-actions a{min-height:42px;color:var(--frost);border:1px solid #4d7ee840;border-radius:8px;gap:8px;padding:0 12px;font-weight:900;transition:color .16s,background .16s,border-color .16s}.tool-actions a:hover{color:#0e1020;border-color:var(--frost);background:var(--frost)}.experiment-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.experiment{background:var(--surface);border:1px solid #ffffff14;padding:12px}.experiment-tag{z-index:2;color:var(--text-primary);background:#ffffff1f;border-radius:7px;padding:7px 9px;font-size:12px;font-weight:900;position:absolute;top:18px;left:18px}.mini-scene{aspect-ratio:16/9;background:linear-gradient(160deg,#0000 0 46%,#0000006b 47%),radial-gradient(circle at 68% 35%,#d4b997,#0000 18%),linear-gradient(135deg,#202c2a,#71835e 48%,#c18a46);border-radius:7px;margin-bottom:14px;position:relative;overflow:hidden}.mini-wind{filter:hue-rotate(74deg)}.mini-twilight{filter:hue-rotate(156deg)}.mini-signal{filter:hue-rotate(232deg)}.experiment h3{color:var(--text-primary);font-size:24px}.section.section-experiments{padding-top:clamp(44px,6.5vw,88px);padding-bottom:clamp(44px,6.5vw,96px)}.section-experiments .section-head{grid-template-columns:minmax(0,1fr) minmax(200px,360px);align-items:start;gap:clamp(16px,2vw,24px) clamp(18px,2.8vw,32px);margin-bottom:clamp(36px,4.6vw,56px)}.section-experiments .section-kicker{margin-bottom:clamp(10px,1.1vw,14px)}.section-atlas .section-head h2,.section-experiments .section-head h2,#work.section .section-head h2{letter-spacing:-.04em;font-size:clamp(48px,7vw,88px);line-height:.9}.section-experiments .section-head>p{text-align:right;justify-self:end;max-width:38ch;margin:0;padding-top:clamp(26px,2.85vw,38px);font-size:clamp(14px,1.25vw,16px);line-height:1.58}.experiment-lab,.experiment-stack{opacity:1}.experiment-lab{margin-top:0;max-width:1120px;margin-inline:auto}.experiment-lab__surface.surface-panel{border-radius:var(--radius-xl);background:radial-gradient(ellipse 85% 70% at 18% 22%, #5c6cf211, transparent 55%), radial-gradient(ellipse 72% 58% at 94% 86%, #4d7ee814, transparent 52%), var(--surface-raised);grid-template-columns:minmax(260px,1.05fr) minmax(220px,.78fr);align-items:stretch;gap:0;padding:clamp(18px,2vw,26px);display:grid;box-shadow:inset 0 2px #ffffff0b,0 28px 56px #00000024}.flow-lab-mobile-hint{color:color-mix(in srgb, var(--text-secondary) 88%, transparent);margin:0 0 clamp(14px,2vw,18px);font-size:13px;line-height:1.5}.experiment-lab__stack-col{flex-direction:column;align-items:center;gap:clamp(14px,1.6vw,18px);padding-right:clamp(14px,2vw,22px);display:flex}.experiment-stack{width:100%;max-width:min(100%,540px)}.experiment-stack__stage{width:100%;height:clamp(360px,min(44vh,44dvh),500px);min-height:360px;position:relative;overflow:visible}.experiment-stack__anchor{pointer-events:none;will-change:transform;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.experiment-stack__anchor--active{pointer-events:auto;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.experiment-stack__anchor--active:active{cursor:grabbing}@media (pointer:coarse){.experiment-stack__anchor--active{touch-action:pan-y}}.experiment-stack__anchor--settling{pointer-events:none}.experiment-stack__card-frame{width:min(90%,452px)}.experiment-stack__card{-webkit-user-select:none;user-select:none;background:#23262bfa;border:1px solid #ffffff1a;border-radius:20px;width:100%;margin:0;padding:16px;transition:box-shadow .48s cubic-bezier(.22,1,.36,1),border-color .32s;position:relative;box-shadow:inset 0 2px #ffffff0d}@supports (color:color-mix(in srgb, white, black)){.experiment-stack__card{background:color-mix(in srgb, var(--surface) 98%, transparent);border-color:color-mix(in srgb, var(--border) 55%, #ffffff1a)}}.experiment-stack__anchor--depth-0 .experiment-stack__card{border-color:#ffffff24;box-shadow:0 0 0 1px #5c6cf22e,0 30px 64px #0006,inset 0 2px #ffffff12}.experiment-stack__anchor--depth-1 .experiment-stack__card{box-shadow:0 0 0 1px #ffffff12,0 18px 38px #0000003d,inset 0 2px #ffffff0f}.experiment-stack__anchor--depth-2 .experiment-stack__card{box-shadow:0 12px 26px #0000002b,inset 0 2px #ffffff0d}.experiment-stack__anchor--depth-3 .experiment-stack__card,.experiment-stack__anchor--settling .experiment-stack__card{box-shadow:0 6px 14px #0000001c,inset 0 2px #ffffff0a}.experiment-stack__anchor--exiting .experiment-stack__card{box-shadow:inset 0 2px #ffffff0d}@supports (color:color-mix(in srgb, white, black)){.experiment-stack__anchor--depth-0 .experiment-stack__card{border-color:color-mix(in srgb, var(--border) 70%, #ffffff24);box-shadow:0 0 0 1px #5c6cf22e,0 30px 64px #0006,inset 0 2px #ffffff12}}@media (prefers-reduced-motion:reduce){.experiment-stack__card{transition-duration:.01ms}}.experiment-stack__card .experiment-thumb{pointer-events:none;margin-bottom:14px}.experiment-stack__card--interactive{cursor:pointer}.experiment-thumb{aspect-ratio:16/9;border-radius:var(--radius-media);background:#000;position:relative;overflow:hidden}.experiment-thumb img{object-fit:cover;width:100%;height:100%;display:block}.experiment-stack__card h3{margin:0}.experiment-lab__controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px 20px;width:100%;max-width:min(100%,432px);display:flex}.experiment-lab__btn{border:1px solid color-mix(in srgb, var(--border) 85%, var(--text-secondary));background:color-mix(in srgb, var(--surface) 90%, transparent);min-height:40px;color:var(--text-primary);letter-spacing:.09em;text-transform:uppercase;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:11px;font-weight:900;transition:border-color .18s,box-shadow .18s,background .18s,color .18s,transform .18s;display:inline-flex}.experiment-lab__btn:hover{border-color:color-mix(in srgb, var(--accent) 52%, var(--border));box-shadow:var(--glow-accent);background:color-mix(in srgb, var(--surface) 96%, #5c6cf20d)}.experiment-lab__btn:focus-visible{outline:2px solid var(--accent-hover);outline-offset:3px}.experiment-lab__btn:active{transform:translateY(1px)}.experiment-lab__btn svg{flex-shrink:0;font-size:15px}.experiment-lab__detail-inner .experiment-lab__btn{align-self:flex-start;margin-top:20px}.experiment-lab__dots{align-items:center;gap:9px;display:flex}.experiment-lab__dot{background:color-mix(in srgb, var(--text-secondary) 30%, transparent);cursor:pointer;border:none;border-radius:999px;width:8px;height:8px;padding:0;transition:background .16s,transform .16s,box-shadow .16s}.experiment-lab__dot:hover{background:color-mix(in srgb, var(--accent-muted) 70%, var(--text-secondary))}.experiment-lab__dot:focus-visible{outline:2px solid var(--accent-hover);outline-offset:3px}.experiment-lab__dot.is-active{background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 28%, transparent);transform:scale(1.2)}.experiment-lab__detail{border-left:1px solid var(--line);align-content:center;min-height:0;padding:clamp(10px,1.2vw,18px) clamp(12px,1.5vw,20px);display:grid;overflow:hidden}.experiment-lab__detail-inner{will-change:opacity, transform;flex-direction:column;grid-area:1/1;gap:0;display:flex}.experiment-lab__tag{color:var(--text-secondary);letter-spacing:.1em;text-transform:uppercase;margin:16px 0 0;font-size:11px;font-weight:900}.experiment-lab__title{color:var(--text-primary);font-family:var(--display);letter-spacing:-.03em;margin:0;font-size:clamp(22px,2.6vw,34px);line-height:1.04}.experiment-lab__desc{max-width:44ch;color:var(--text-secondary);margin:14px 0 0;font-size:15px;line-height:1.58}.ppm-dialog--experiment{max-width:min(1140px,100%)}.ppm-dialog--experiment .ppm-grid{grid-template-columns:minmax(0,1.32fr) minmax(260px,.68fr);min-height:0;max-height:min(86svh,900px)}.ppm-dialog--experiment .epm-media{background:#06070e;justify-content:center;align-items:center;min-height:0;padding:clamp(16px,2.4vw,24px);display:flex}.ppm-dialog--experiment .epm-media-frame{aspect-ratio:16/9;background:#000;border:1px solid #ffffff1a;border-radius:10px;width:100%;max-width:100%;position:relative;overflow:hidden}.ppm-dialog--experiment .epm-vimeo{object-fit:cover;width:100%;height:100%;min-height:0;max-height:none;position:absolute;inset:0}.ppm-dialog--experiment .ppm-copy{border-left:1px solid #ffffff14}.ppm-dialog--experiment .epm-external{letter-spacing:.06em;text-transform:uppercase;align-self:flex-start;margin-top:22px;font-size:12px;text-decoration:none;display:inline-flex}.epm-gallery{position:relative}.epm-gallery__slide{cursor:zoom-in;background:0 0;border:none;width:100%;height:100%;margin:0;padding:0;display:block}.epm-gallery__img{object-fit:contain;background:#000;width:100%;height:100%;display:block}.epm-gallery__nav{z-index:2;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0b0e18b8;border:1px solid #ffffff29;border-radius:8px;place-items:center;width:38px;height:38px;margin:0;padding:0;font-size:20px;transition:background .16s,border-color .16s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.epm-gallery__nav:hover{background:#5c6cf238;border-color:#5c6cf26b}.epm-gallery__nav--prev{left:12px}.epm-gallery__nav--next{right:12px}.epm-gallery__dots{z-index:2;align-items:center;gap:8px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.epm-gallery__dot{cursor:pointer;background:#ffffff47;border:none;border-radius:999px;width:7px;height:7px;padding:0;transition:background .16s,transform .16s}.epm-gallery__dot.is-active{background:var(--accent);transform:scale(1.2)}.epm-gallery__count{z-index:2;color:#ffffffe0;letter-spacing:.06em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0b0e18b8;border:1px solid #ffffff24;border-radius:6px;margin:0;padding:6px 10px;font-size:11px;font-weight:800;position:absolute;top:12px;right:12px}.epm-lightbox{z-index:120;pointer-events:auto;place-items:center;padding:clamp(16px,4vw,40px);display:grid;position:fixed;inset:0}.epm-lightbox__backdrop{cursor:pointer;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#04050ce6;border:none;margin:0;padding:0;position:absolute;inset:0}.epm-lightbox__dialog{z-index:1;place-items:center;width:min(1200px,100%);max-height:min(92svh,960px);display:grid;position:relative}.epm-lightbox__close{z-index:3;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0b0e18b8;border:1px solid #ffffff2e;border-radius:8px;place-items:center;width:42px;height:42px;font-size:22px;display:grid;position:absolute;top:0;right:0}.epm-lightbox__img{object-fit:contain;border-radius:8px;width:auto;max-width:100%;height:auto;max-height:min(86svh,900px);display:block;box-shadow:0 24px 64px #00000073}.epm-lightbox__nav{position:fixed;top:50%}.epm-lightbox__nav.epm-gallery__nav--prev{left:clamp(12px,3vw,28px)}.epm-lightbox__nav.epm-gallery__nav--next{right:clamp(12px,3vw,28px)}.epm-lightbox__count{color:#ffffffb8;letter-spacing:.08em;margin:0;font-size:12px;font-weight:800;position:absolute;bottom:-36px;left:50%;transform:translate(-50%)}@media (width<=840px){.ppm-dialog--experiment .ppm-grid{grid-template-columns:1fr;max-height:min(92svh,900px)}.ppm-dialog--experiment .ppm-copy{border-top:1px solid #ffffff14;border-left:none}.ppm-dialog--experiment .epm-media{padding:16px}}@media (width<=960px){.section-experiments .section-head{grid-template-columns:1fr}.section-experiments .section-head>p{text-align:left;justify-self:start;max-width:none;padding-top:0}}@media (width<=900px){.experiment-lab__surface.surface-panel{grid-template-columns:1fr;padding:clamp(16px,4vw,22px)}.experiment-lab__stack-col{padding-bottom:clamp(8px,2vw,14px);padding-right:0}.experiment-stack{max-width:none}.experiment-lab__detail{border-left:none;border-top:1px solid var(--line);padding-top:clamp(18px,3vw,26px)}}@media (width<=620px){.experiment-lab__controls{flex-direction:column;gap:12px}.experiment-stack__card-frame{width:min(100%,452px)}.experiment-stack__stage{height:clamp(270px,min(40vh,40dvh),380px);min-height:270px}}.tool-marquee{z-index:3;width:100%;margin:-58px 0 10px;padding:16px 0;position:relative;overflow:hidden;transform:rotate(-.7deg)}.tool-rail{background:var(--bronze);border-block:1px solid #e6e1d72e;width:100%;overflow:hidden;box-shadow:0 14px 32px #00000057}.tool-track{will-change:transform;width:max-content;animation:26s linear infinite marquee;display:flex}.tool-rail:hover .tool-track{animation-play-state:paused}.tool-group{flex:none;align-items:center;gap:10px;padding:10px;display:flex}.tool-pill{min-width:max-content;color:var(--paper);background:#e6e1d70b;border:1px solid #e4ded029;border-radius:8px;flex:none;align-items:center;gap:10px;padding:8px 12px 8px 8px;font-weight:900;transition:transform .16s,color .16s,background .16s;display:inline-flex}.tool-pill:hover{color:#0e1020;background:var(--paper);transform:translateY(-2px)}.tool-logo{width:30px;height:30px;color:var(--text-primary);background:#5e6b7559;border-radius:7px;place-items:center;font-size:12px;font-weight:900;display:grid}.about{background:var(--bg-primary);grid-template-columns:minmax(280px,.8fr) minmax(0,1fr);align-items:center;gap:clamp(30px,8vw,96px);min-height:78vh;display:grid}.about-visual{border:1px solid var(--line);background:radial-gradient(circle at 50% 42%, #4d7ee81a, transparent 32%), linear-gradient(135deg, #ffffff08, #ffffff03), var(--bg-secondary);border-radius:8px;min-height:520px;position:relative;overflow:hidden}.about-portrait{z-index:1;pointer-events:none;position:absolute;inset:0}.about-portrait__fallback{z-index:0;background:radial-gradient(72% 58% at 48% 34%,#5c6cf21a,#0000 54%),radial-gradient(60% 52% at 82% 72%,#4d7ee824,#0000 50%),linear-gradient(168deg,#191c2ef0,#0c0e16fc);position:absolute;inset:0}.about-portrait__img{z-index:1;object-fit:cover;object-position:center 22%;filter:saturate(.96)contrast(1.04)brightness(.97);width:100%;height:100%;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff0a}.about-copy h2{max-width:none;color:var(--text-primary);white-space:nowrap;margin-bottom:22px;font-size:clamp(32px,4.8vw,68px)}.about-copy p{max-width:660px;color:var(--text-secondary)}.about-copy p+p{margin-top:1.12em}.skill-list{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.skill-list span,.skill-list__link{color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff0a;padding:10px 12px;font-size:13px;font-weight:800}.model-caption{z-index:4;color:var(--text-secondary);text-transform:uppercase;justify-content:space-between;gap:12px;font-size:12px;font-weight:900;display:flex;position:absolute;bottom:18px;left:18px;right:18px}.contact{z-index:1;min-height:var(--footer-height);padding:64px var(--page-pad) 22px;color:#fff;border-top:1px solid var(--border);background:linear-gradient(#0b0d1c 0%,#070910 100%);grid-template-rows:auto 1fr auto;gap:22px;display:grid;position:fixed;inset:auto 0 0}.contact .footer-kicker,.contact .footer-bottom{color:var(--accent)}.footer-top,.footer-main,.footer-bottom{justify-content:space-between;gap:24px;display:flex}.footer-top{border-top:1px solid var(--border);align-items:center;padding-top:16px}.footer-toplink{text-transform:uppercase;gap:8px;font-weight:900}.footer-main{align-items:end}.footer-cta{min-width:0}.footer-cta p{color:#e6e1d7c7;letter-spacing:.01em;text-transform:none;text-wrap:balance;max-width:min(36rem,100%);margin:0 0 14px;font-size:13px;font-weight:800;line-height:1.45}.footer-email{font-family:var(--display);letter-spacing:-.03em;overflow-wrap:anywhere;font-size:clamp(30px,6.8vw,94px);font-weight:800;line-height:.9;transition:color .16s}.footer-email:hover{color:var(--accent-hover)}.footer-links{gap:8px;min-width:min(100%,280px);display:grid}.footer-links a{border-bottom:1px solid var(--border);text-transform:uppercase;justify-content:space-between;gap:18px;padding:12px 0;font-size:13px;font-weight:900}.footer-links a:hover{color:var(--accent-hover)}.footer-bottom{flex-wrap:wrap;align-items:center;row-gap:8px}.footer-bottom span{white-space:nowrap}@keyframes marquee{to{transform:translate(-50%)}}@keyframes surfaceSweep{0%{transform:translate(-120%)}to{transform:translate(120%)}}@keyframes scan{0%,to{opacity:.2;transform:translateY(-70px)}50%{opacity:1;transform:translateY(84px)}}@keyframes bob{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-9px)rotate(4deg)}}a.magnetic-card{color:inherit;text-decoration:none;display:grid}button.magnetic-card.magnetic-card--activable{appearance:none;width:100%;font:inherit;color:inherit;text-align:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0;display:grid}article.magnetic-card.magnetic-card--activable{width:100%;font:inherit;color:inherit;text-align:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0;display:grid}article.magnetic-card.magnetic-card--activable.tool-card{border:1px solid var(--line);background:#0e1118}button.magnetic-card.magnetic-card--activable.project-tile{background:0 0;border:none}.hero.hero-reel{min-height:100svh}.hero-stage--reel{background:var(--bg-primary)}.hero-reel-bg-video{z-index:0;object-fit:cover;object-position:center;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-stage--reel:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(100deg,#02030abf 0%,#02030a47 42%,#02030a14 62%,#02030a59 100%),linear-gradient(#02030a8c 0%,#0000 32%,#02030a80 100%);position:absolute;inset:0}.hero-shade--reel{background:linear-gradient(#04050e59 0%,#0000 36%,#04050ea6 100%),linear-gradient(90deg,#04050e8c 0%,#0000 48%,#04050e33 100%)}.hero-split{z-index:3;min-height:90svh;padding:108px var(--page-pad) 38px;grid-template-columns:minmax(500px,.82fr) minmax(460px,1.18fr);align-items:stretch;gap:clamp(0px,1.2vw,20px);display:grid;position:relative}.hero-split--reel{grid-template-columns:minmax(0,1fr) minmax(220px,360px);justify-content:space-between;align-items:end;gap:clamp(20px,4vw,56px);max-width:none;min-height:100svh;padding-bottom:clamp(36px,5vh,60px)}.hero-identity{flex-direction:column;gap:6px;display:flex}.hero-copy{flex-direction:column;justify-content:center;gap:18px;padding-top:clamp(28px,5vh,64px);display:flex}.hero-copy--reel{z-index:1;opacity:1;gap:clamp(16px,1.9vh,21px);max-width:min(760px,100%);padding-bottom:clamp(20px,3.5vh,44px);position:relative}.hero.hero-reel h1,.hero-typewriter{white-space:nowrap;letter-spacing:-.03em;margin-bottom:0;font-size:clamp(54px,7.8vw,140px)}.hero-typewriter{font-family:var(--display);text-shadow:none;align-items:baseline;margin:0;font-weight:800;line-height:.85;display:inline-flex}.hero-typewriter__glyphs{color:#fff;min-width:0}.hero-typewriter__cursor{background:var(--accent);flex-shrink:0;align-self:center;width:clamp(3px,.055em,8px);height:.78em;margin-left:clamp(14px,.18em,26px);animation:1.05s step-end infinite hero-typewriter-cursor;box-shadow:0 0 10px #5c6cf2bf,0 0 24px #5c6cf266,0 0 40px #5c6cf22e}@keyframes hero-typewriter-cursor{0%,49%{opacity:1}50%,to{opacity:.35}}.hero.hero-reel .eyebrow{letter-spacing:.06em;color:#e6e1d7b8;margin-bottom:8px}.hero-split--reel .hero-bridge{text-align:right;color:#ffffffad;place-self:end;max-width:38ch;margin:0;font-size:clamp(13px,1.2vw,15px);line-height:1.65}.hero-focus-meta{max-width:min(36rem,100%);color:color-mix(in srgb, var(--text-secondary) 88%, transparent);letter-spacing:.04em;text-wrap:balance;background:0 0;border:none;margin:clamp(4px,.6vh,10px) 0 0;padding:0;font-size:12px;font-weight:700;line-height:1.55}.hero-focus-meta a{color:inherit;text-decoration:none;transition:color .16s}.hero-focus-meta a:hover,.hero-focus-meta a:focus-visible{color:var(--text-primary);outline:none}.hero-focus-meta__sep{pointer-events:none}.hero-copy--reel .hero-actions{margin-top:clamp(22px,2.8vh,34px)}.hero-bridge{max-width:520px;color:var(--text-secondary);margin:0;font-size:clamp(16px,2vw,19px);line-height:1.55}.section.section-flow-lab{border-top:1px solid var(--line);isolation:isolate;contain:layout style;flex-direction:column;gap:clamp(20px,2.4vw,32px);padding-top:clamp(36px,4.2vw,64px);padding-bottom:clamp(28px,3.4vw,44px);display:flex}.flow-lab-shell{z-index:0;width:100%;max-width:1480px;margin-inline:auto;position:relative}.flow-lab-header{width:100%;margin-bottom:clamp(16px,2vw,24px)}.flow-lab-header__title{flex-direction:column;align-items:flex-start;gap:12px;max-width:min(100%,720px);display:flex}.flow-lab-header__title .section-kicker{margin:0}.flow-lab-header h2{font-family:var(--display);letter-spacing:-.04em;color:var(--text-primary);margin:0;font-size:clamp(48px,7vw,88px);line-height:.9}.flow-lab-header__intro{max-width:52ch;color:var(--muted);margin:clamp(4px,.6vw,8px) 0 0;line-height:1.55}.flow-lab-composer-head{grid-template-columns:minmax(0,1fr) minmax(220px,380px);align-items:start;gap:clamp(18px,2vw,32px);width:100%;margin-bottom:clamp(10px,1.2vw,16px);display:grid}.flow-lab-composer-head__title{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.flow-lab-composer-head h3{font-family:var(--display);letter-spacing:-.03em;color:var(--text-primary);margin:0;font-size:clamp(28px,3.6vw,46px);line-height:.94}.flow-lab-composer-head__copy{color:var(--muted);text-align:right;justify-self:end;max-width:460px;margin:0;padding-top:clamp(26px,2.85vw,38px);line-height:1.55}.flow-lab-composer-label{color:color-mix(in srgb, var(--accent-secondary) 72%, var(--text-secondary));letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:11px;font-weight:900}.flow-lab-stage{isolation:isolate;contain:layout paint;min-height:clamp(520px,64vh,680px);position:relative;overflow:hidden}.utility-shelf{border-top:1px solid #ffffff13;margin-top:clamp(24px,3vw,42px);padding-top:clamp(20px,2.6vw,34px)}.utility-shelf__head{grid-template-columns:minmax(0,1fr) minmax(220px,360px);align-items:end;gap:clamp(16px,2vw,28px);margin-bottom:clamp(16px,2vw,24px);display:grid}.utility-shelf__kicker{color:color-mix(in srgb, var(--accent-secondary) 72%, var(--text-secondary));letter-spacing:.18em;text-transform:uppercase;margin:0 0 8px;font-size:10px;font-weight:900}.utility-shelf h3{font-family:var(--display);color:var(--text-primary);letter-spacing:-.03em;margin:0;font-size:clamp(28px,3.6vw,46px);line-height:.94}.utility-shelf__head>p{color:var(--muted);text-align:right;margin:0;line-height:1.55}.utility-shelf__filters{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.utility-shelf__filter{min-height:28px;color:color-mix(in srgb, var(--text-secondary) 82%, transparent);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:#0e111c80;border:1px solid #ffffff17;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:10px;font-weight:900;transition:background .16s,border-color .16s,color .16s,transform .16s;display:inline-flex}.utility-shelf__filter svg{opacity:.72;width:13px;height:13px}.utility-shelf__filter:hover,.utility-shelf__filter.is-active{color:var(--text-primary);border-color:color-mix(in srgb, var(--accent) 35%, transparent);background:color-mix(in srgb, var(--accent) 10%, transparent)}.utility-shelf__filter:hover{transform:translateY(-1px)}.utility-shelf__panel{position:relative}.utility-shelf__list{background:radial-gradient(70% 80% at 92% 10%,#4d7ee80a,#0000 62%),#0a0c1659;border:1px solid #ffffff13;border-radius:16px;overflow:hidden}.utility-shelf__item{border-top:1px solid #ffffff0f;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(16px,2vw,28px);min-height:88px;padding:16px clamp(16px,2vw,22px);transition:background .16s,border-color .16s,box-shadow .16s;display:grid}.utility-shelf__item:first-child{border-top:none}.utility-shelf__item:hover{border-color:color-mix(in srgb, var(--accent) 28%, transparent);background:color-mix(in srgb, var(--accent) 6%, transparent);box-shadow:inset 2px 0 0 color-mix(in srgb, var(--accent) 42%, transparent)}.utility-shelf__lead{align-items:center;gap:clamp(14px,1.6vw,20px);min-width:0;display:flex}.utility-shelf__popup-anchor{z-index:55;pointer-events:none;position:fixed;transform:translateY(-50%)}.utility-shelf__popup{aspect-ratio:16/9;transform-origin:50%;will-change:transform, opacity, filter;background:#080a14f5;border-radius:14px;width:100%;position:relative;overflow:hidden;box-shadow:0 28px 64px #0000008c,0 0 0 1px #ffffff1a,0 0 48px #5c6cf238}.utility-shelf__popup img{object-fit:contain;width:100%;height:100%;display:block}.utility-shelf__popup-scrim{pointer-events:none;background:linear-gradient(#0000 42%,#060812d1 100%),linear-gradient(135deg,#5c6cf21f,#0000 52%);position:absolute;inset:0}.utility-shelf__popup-frame{border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff29}.utility-shelf__popup-label{color:#ffffffeb;letter-spacing:.04em;text-shadow:0 2px 12px #000000a6;pointer-events:none;font-size:11px;font-weight:800;line-height:1.25;position:absolute;bottom:10px;left:12px;right:12px}.utility-shelf__icon{color:#ecececc7;background:#ffffff0a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:clamp(40px,4.2vw,48px);height:clamp(40px,4.2vw,48px);display:flex}.utility-shelf__icon svg{width:22px;height:22px}.utility-shelf__main{min-width:0}.utility-shelf__main h4{color:var(--text-primary);margin:0 0 5px;font-size:15px;line-height:1.2}.utility-shelf__main p{color:color-mix(in srgb, var(--text-secondary) 86%, transparent);margin:0;font-size:13px;line-height:1.45}.utility-shelf__stack{flex-wrap:wrap;gap:5px 8px;margin-top:9px;display:flex}.utility-shelf__stack span{color:color-mix(in srgb, var(--accent-secondary) 78%, var(--text-secondary));letter-spacing:.06em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;font-weight:800}.utility-shelf__stack span:not(:last-child):after{content:"·";color:color-mix(in srgb, var(--text-secondary) 42%, transparent);margin-left:8px}.utility-shelf__meta{white-space:nowrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.utility-shelf__github{min-height:32px;color:color-mix(in srgb, var(--text-primary) 88%, transparent);background:#23262b59;border:1px solid #ffffff17;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:900;text-decoration:none;transition:border-color .16s,background .16s,transform .16s;display:inline-flex}.utility-shelf__github:hover{background:#4d7ee814;border-color:#4d7ee847;transform:translateY(-1px)}.utility-shelf__status{min-width:82px;color:color-mix(in srgb, var(--text-secondary) 78%, transparent);letter-spacing:.12em;text-align:right;text-transform:uppercase;font-size:10px;font-weight:900}.utility-shelf__status--stable{color:color-mix(in srgb, #9bd2b4 82%, var(--text-secondary))}.utility-shelf__status--experimental{color:color-mix(in srgb, var(--accent-secondary) 86%, var(--text-secondary))}.utility-shelf__status--wip{color:color-mix(in srgb, #d4b997 78%, var(--text-secondary))}.utility-shelf__status--archived{color:color-mix(in srgb, var(--text-secondary) 56%, transparent)}.utility-shelf__pager{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.utility-shelf__page{min-width:30px;height:26px;color:color-mix(in srgb, var(--text-secondary) 72%, transparent);letter-spacing:.08em;cursor:pointer;background:#0e111c70;border:1px solid #ffffff14;border-radius:999px;place-items:center;padding:0 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;font-weight:900;transition:background .16s,border-color .16s,color .16s,transform .16s;display:inline-grid}.utility-shelf__page:hover,.utility-shelf__page.is-active{color:var(--text-primary);background:#4d7ee814;border-color:#4d7ee83d}.utility-shelf__page:hover{transform:translateY(-1px)}@media (width<=820px){.utility-shelf__head{grid-template-columns:1fr;align-items:start}.utility-shelf__head>p{text-align:left}.utility-shelf__item{grid-template-columns:1fr;align-items:start;gap:12px}.utility-shelf__lead{width:100%}.utility-shelf__meta{justify-content:space-between;width:100%}}@media (width<=520px){.utility-shelf__filters{gap:7px}.utility-shelf__filter{min-height:26px;padding-inline:9px;font-size:9px}.utility-shelf__item{min-height:0;padding:15px}.utility-shelf__meta{flex-direction:row-reverse;justify-content:space-between;align-items:center;gap:12px}.utility-shelf__status{text-align:left;min-width:0}.utility-shelf__pager{justify-content:flex-start}}.flow-lab-tools{justify-content:center;align-items:stretch;gap:10px;width:100%;max-width:480px;margin:clamp(32px,4.2vw,48px) auto clamp(18px,2.6vw,28px);padding:0;list-style:none;display:flex}.wc-root>.flow-lab-tools{gap:clamp(8px,.8vw,12px);max-width:none;margin:0}.flow-lab-tool{border:1px solid var(--line);min-width:0;max-width:148px;color:inherit;text-align:center;cursor:pointer;background:#0e111cb8;border-radius:10px;flex-direction:column;flex:1;align-items:stretch;gap:8px;padding:8px;transition:border-color .22s,box-shadow .22s,transform .22s,background .22s;display:flex;position:relative;overflow:visible}.flow-lab-tool:before{content:"";opacity:0;pointer-events:none;background:linear-gradient(#0000,#4d7ee866);width:1px;height:0;transition:height .32s,opacity .32s,background .32s;position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%)}.flow-lab-tool:hover{background:#0e101ae0;border-color:#737a80a6;transform:translateY(-1px);box-shadow:0 0 0 1px #505c6673,0 10px 22px #0000005c}.flow-lab-tool.is-lit{border-color:#4d7ee847;box-shadow:0 0 0 1px #4d7ee81a,0 10px 24px #0003}.flow-lab-tool:hover:before{opacity:.6;height:16px}.flow-lab-tool.is-active{border-color:var(--frost);background:color-mix(in srgb, #111512e6 82%, var(--frost) 18%);box-shadow:0 0 0 1px #4d7ee840,0 12px 28px #00000052,0 0 24px #4d7ee81a}.flow-lab-tool.is-active:before{opacity:1;background:linear-gradient(#0000,#dce2e699);height:22px}@media (prefers-reduced-motion:reduce){.flow-lab-tool:before{transition:opacity}}.flow-lab-tool__thumb{aspect-ratio:16/10;border-radius:var(--radius-media);background:#0a0c14;border:none;width:100%;margin:0;position:relative;overflow:hidden}.flow-lab-tool__thumb.tool-preview span{display:none}.flow-lab-tool__cover{object-fit:cover;object-position:center;filter:grayscale()saturate(.15)brightness(.68)contrast(1.04);width:100%;height:100%;transition:filter .36s;display:block}.flow-lab-tool:hover .flow-lab-tool__cover,.flow-lab-tool.is-lit .flow-lab-tool__cover,.flow-lab-tool.is-active .flow-lab-tool__cover{filter:grayscale(0)saturate()brightness()contrast()}.flow-lab-tool__thumb:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .36s;position:absolute;inset:0}.flow-lab-tool:hover .flow-lab-tool__thumb:after,.flow-lab-tool.is-lit .flow-lab-tool__thumb:after,.flow-lab-tool.is-active .flow-lab-tool__thumb:after{opacity:1}.flow-lab-tool--accent-blockout:hover .flow-lab-tool__thumb:after,.flow-lab-tool--accent-blockout.is-lit .flow-lab-tool__thumb:after,.flow-lab-tool--accent-blockout.is-active .flow-lab-tool__thumb:after{box-shadow:inset 0 0 0 1px rgb(var(--wc-accent-blockout) / .4)}.flow-lab-tool--accent-rig:hover .flow-lab-tool__thumb:after,.flow-lab-tool--accent-rig.is-lit .flow-lab-tool__thumb:after,.flow-lab-tool--accent-rig.is-active .flow-lab-tool__thumb:after{box-shadow:inset 0 0 0 1px rgb(var(--wc-accent-rig) / .4)}.flow-lab-tool--accent-review:hover .flow-lab-tool__thumb:after,.flow-lab-tool--accent-review.is-lit .flow-lab-tool__thumb:after,.flow-lab-tool--accent-review.is-active .flow-lab-tool__thumb:after{box-shadow:inset 0 0 0 1px rgb(var(--wc-accent-review) / .42)}.flow-lab-tool--accent-blockout:hover,.flow-lab-tool--accent-blockout.is-lit{border-color:rgb(var(--wc-accent-blockout) / .42);box-shadow:0 0 0 1px rgb(var(--wc-accent-blockout) / .18), 0 10px 22px #0000005c}.flow-lab-tool--accent-blockout.is-active{border-color:rgb(var(--wc-accent-blockout) / .62);background:color-mix(in srgb, #0e111ceb 78%, rgb(var(--wc-accent-blockout)) 22%);box-shadow:0 0 0 1px rgb(var(--wc-accent-blockout) / .28), 0 12px 28px #00000052, 0 0 28px rgb(var(--wc-accent-blockout) / .14)}.flow-lab-tool--accent-blockout:hover:before,.flow-lab-tool--accent-blockout.is-lit:before,.flow-lab-tool--accent-blockout.is-active:before{background:linear-gradient(180deg, transparent, rgb(var(--wc-accent-blockout) / .55))}.flow-lab-tool--accent-rig:hover,.flow-lab-tool--accent-rig.is-lit{border-color:rgb(var(--wc-accent-rig) / .42);box-shadow:0 0 0 1px rgb(var(--wc-accent-rig) / .18), 0 10px 22px #0000005c}.flow-lab-tool--accent-rig.is-active{border-color:rgb(var(--wc-accent-rig) / .62);background:color-mix(in srgb, #0e111ceb 78%, rgb(var(--wc-accent-rig)) 22%);box-shadow:0 0 0 1px rgb(var(--wc-accent-rig) / .28), 0 12px 28px #00000052, 0 0 28px rgb(var(--wc-accent-rig) / .14)}.flow-lab-tool--accent-rig:hover:before,.flow-lab-tool--accent-rig.is-lit:before,.flow-lab-tool--accent-rig.is-active:before{background:linear-gradient(180deg, transparent, rgb(var(--wc-accent-rig) / .55))}.flow-lab-tool--accent-review:hover,.flow-lab-tool--accent-review.is-lit{border-color:rgb(var(--wc-accent-review) / .44);box-shadow:0 0 0 1px rgb(var(--wc-accent-review) / .2), 0 10px 22px #0000005c}.flow-lab-tool--accent-review.is-active{border-color:rgb(var(--wc-accent-review) / .65);background:color-mix(in srgb, #0e111ceb 78%, rgb(var(--wc-accent-review)) 22%);box-shadow:0 0 0 1px rgb(var(--wc-accent-review) / .3), 0 12px 28px #00000052, 0 0 28px rgb(var(--wc-accent-review) / .16)}.flow-lab-tool--accent-review:hover:before,.flow-lab-tool--accent-review.is-lit:before,.flow-lab-tool--accent-review.is-active:before{background:linear-gradient(180deg, transparent, rgb(var(--wc-accent-review) / .55))}.flow-lab-tool__title{color:#e6e1d7e0;letter-spacing:.02em;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:11px;font-weight:800;line-height:1.25;display:-webkit-box;overflow:hidden}.flow-lab-stage,.flow-lab-stage .wc-root{pointer-events:auto}@media (width<=960px){.flow-lab-composer-head{grid-template-columns:1fr;gap:14px}.flow-lab-composer-head__copy{text-align:left;justify-self:start;max-width:none;padding-top:0}}@media (width<=620px){.flow-lab-tools{gap:8px;max-width:100%}.flow-lab-tool{max-width:none;padding:6px}.flow-lab-tool__title{font-size:10px}.flow-lab-header h2{font-size:clamp(26px,7vw,34px)}.flow-lab-header__intro{max-width:none}.flow-lab-composer-head h3,.utility-shelf h3{font-size:clamp(20px,5vw,26px)}}@media (width<=480px){.flow-lab-tools,.wc-root>.flow-lab-tools{flex-direction:column;align-items:stretch;max-width:min(100%,320px);margin-inline:auto}.flow-lab-tool{flex-direction:row;align-items:center;gap:10px;max-width:none}.flow-lab-tool__thumb{flex-shrink:0;width:72px}.flow-lab-tool__title{text-align:left;font-size:11px}}.section-atlas{border-top:1px solid var(--line);background:radial-gradient(circle at 14% 12%, #4d7ee80f, transparent 32%), var(--bg-primary)}.atlas-columns{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 clamp(20px,2.4vw,32px);margin-top:4px;display:grid}.atlas-column{border-left:1px solid var(--divider);gap:10px;padding:0 clamp(16px,1.8vw,22px);display:grid}.atlas-column:first-child{border-left:none;padding-left:0}.atlas-column__badge{color:var(--accent-muted);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:900;display:block}.atlas-column__badge:before{content:"";background:color-mix(in srgb, var(--accent) 72%, transparent);width:22px;height:2px;margin-bottom:12px;display:block}.atlas-column__kicker{color:var(--text-secondary);margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;transition:color .18s}.atlas-column:hover .atlas-column__kicker{color:color-mix(in srgb, var(--text-secondary) 55%, var(--accent-secondary))}.atlas-column h3{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:clamp(18px,2.1vw,24px);line-height:1.05}.atlas-column p:last-child{color:var(--text-secondary);margin:0;line-height:1.5}@media (width<=960px){.atlas-columns{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:clamp(28px,4vw,40px)}.atlas-column{border-left:none;padding:0}.atlas-column:nth-child(odd){border-right:1px solid var(--divider);padding-right:clamp(14px,2vw,20px)}.atlas-column:nth-child(2n){padding-left:clamp(14px,2vw,20px)}.atlas-column:nth-child(n+3){border-top:1px solid var(--divider);padding-top:clamp(28px,4vw,40px)}.atlas-column:nth-child(3){border-right:1px solid var(--divider);padding-right:clamp(14px,2vw,20px)}.atlas-column:nth-child(4){padding-left:clamp(14px,2vw,20px)}}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(22px,2.6vw,28px);margin-top:18px;display:grid}.work-grid--solo{grid-template-columns:1fr}.empty-state{color:#ffffffb3;border:1px dashed #ffffff38;border-radius:10px;margin-top:22px;padding:22px}.empty-state p{margin:0 0 12px}.filter--ghost{color:var(--text-secondary);background:0 0;border-color:#5e6b7559}.filter--ghost:hover{color:var(--text-primary);background:#5c6cf20f;border-color:#5c6cf259}.section-process{border-top:1px solid var(--line);background:radial-gradient(circle at 78% 4%, #4d7ee80f, transparent 28%), var(--bg-primary)}.process-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.process-card{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:20px}.process-index{font-family:var(--display);color:var(--accent-muted);margin-bottom:10px;font-size:28px;display:inline-flex}.process-card h3{margin:0 0 8px;font-size:20px}.process-card p{color:var(--text-secondary);margin:0;line-height:1.55}.toolchain-marquee{background:linear-gradient(90deg,#141630 0%,#1a1e42 50%,#141630 100%);border-top:1px solid #ffffff0f;border-bottom:1px solid #00000059;padding-block:clamp(14px,2vw,20px)}.toolchain-marquee__viewport{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000);mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000)}.toolchain-marquee__track{will-change:transform;width:max-content;animation:34s linear infinite toolchainMarqueeShift;display:flex}.toolchain-marquee__segment{flex-shrink:0;align-items:center;gap:clamp(2.75rem,7vw,5.5rem);margin:0;padding-inline:clamp(1.25rem,3vw,2.5rem);list-style:none;display:flex}.toolchain-marquee__item{color:#ecececbf;flex-shrink:0;align-items:center;gap:.65rem;transition:color .2s;display:flex}.toolchain-marquee__item:hover{color:#ecececfa}.toolchain-marquee__icon{flex-shrink:0;width:22px;height:22px}.toolchain-marquee__label{letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:12.5px;font-weight:800}@keyframes toolchainMarqueeShift{0%{transform:translate(0,0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.toolchain-marquee__track{animation:none}}.site-content--detail{padding-top:88px}.work-detail{padding:0 var(--page-pad) clamp(64px, 10vw, 120px);color:#ffffffe0}.work-detail__bar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px;display:flex}.work-detail__back,.work-detail__contact{text-transform:uppercase;letter-spacing:.08em;color:#ffffffc7;align-items:center;gap:8px;font-size:12px;font-weight:900;display:inline-flex}.work-detail__contact{color:var(--frost)}.work-detail__header{grid-template-columns:minmax(0,1fr) minmax(260px,.5fr);align-items:start;gap:24px;margin-bottom:20px;display:grid}.work-detail__header h1{font-family:var(--display);letter-spacing:-.03em;margin:10px 0 6px;font-size:clamp(34px,5.2vw,66px);line-height:.95}.work-detail__role{color:#ffffffa8;margin:0;font-weight:700}.work-detail__tags{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.work-detail__tag{text-transform:uppercase;letter-spacing:.06em;color:#ffffffb8;border:1px solid #ffffff29;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:900}.work-detail__tag--primary{color:var(--frost);border-color:#4d7ee880}.system-diagram{background:#0809148c;border:1px solid #4d7ee838;border-radius:10px;padding:14px}.system-diagram__nodes{letter-spacing:.08em;text-transform:uppercase;color:#ffffffbf;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;font-weight:900;display:flex}.system-diagram__arrow{background:#ffffff47;width:18px;height:1px;position:relative}.system-diagram__arrow:after{content:"";border-top:4px solid #0000;border-bottom:4px solid #0000;border-left:6px solid #ffffff47;width:0;height:0;position:absolute;top:50%;right:0;transform:translateY(-50%)}.work-detail__strip{flex-wrap:wrap;gap:10px;margin-bottom:22px;display:flex}.work-detail__param{border:1px solid var(--line);background:#101420;border-radius:10px;flex:140px;gap:6px;padding:12px 14px;display:grid}.work-detail__param span{letter-spacing:.08em;text-transform:uppercase;color:#ffffff8c;font-size:11px;font-weight:900}.work-detail__param strong{font-family:var(--display);color:var(--frost);font-size:22px}.work-detail__grid{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);align-items:start;gap:20px;display:grid}.work-detail__media{border:1px solid var(--line);background:#07091a;border-radius:10px;overflow:hidden}.work-detail-media__video{object-fit:contain;background:#000;width:100%;max-height:min(560px,64vh);display:block}.work-detail-media__vimeo{aspect-ratio:16/9;border:0;min-height:280px;max-height:min(560px,64vh)}.work-detail-media__pending{place-items:center;min-height:320px;display:grid;position:relative}.work-detail-media__pending img{object-fit:cover;filter:brightness(.55)saturate(.85);width:100%;height:100%;position:absolute;inset:0}.work-detail-media__pending p{z-index:1;text-align:center;color:#ffffffd9;background:#0a0b16b8;border:1px solid #fff3;border-radius:10px;max-width:420px;margin:0;padding:16px;font-weight:700;position:relative}.work-detail__panel{border:1px solid var(--line);background:#0d1020;border-radius:10px;gap:18px;padding:18px;display:grid}.work-detail__tabs{flex-wrap:wrap;gap:8px;display:flex}.work-detail__tab{color:#ffffffb8;letter-spacing:.06em;text-transform:uppercase;background:#ffffff0a;border:1px solid #ffffff24;border-radius:999px;padding:8px 14px;font-size:12px;font-weight:900;transition:border-color .16s,background .16s,color .16s}.work-detail__tab.is-active{color:#0e1020;border-color:var(--frost);background:var(--frost)}.work-detail__tab:focus-visible{outline:2px solid var(--frost);outline-offset:3px}.work-detail__tab-body p{color:#ffffffb8;margin:0;line-height:1.62}.work-detail__lists{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.work-detail__h2{letter-spacing:.1em;text-transform:uppercase;color:#b9d3cff2;margin:0 0 8px;font-size:14px;font-weight:900}.work-detail__lists ul{color:#ffffffad;margin:0;padding-left:18px;line-height:1.55}.work-detail__breakdown ol{color:#ffffffb8;margin:0;padding-left:18px;line-height:1.55}.work-detail__breakdown li{margin-bottom:10px}.work-detail__breakdown li strong{margin-bottom:4px;display:block}.work-detail__code{background:#080a14;border:1px solid #ffffff1f;border-radius:10px;overflow:hidden}.work-detail__code-head{letter-spacing:.08em;text-transform:uppercase;color:#ffffff8c;border-bottom:1px solid #ffffff1a;justify-content:flex-end;padding:8px 12px;font-size:11px;font-weight:900;display:flex}.work-detail__code pre{margin:0;padding:14px;font-size:13px;line-height:1.45;overflow:auto}.work-detail__changelog ul{color:#ffffffb3;margin:0;padding-left:18px;line-height:1.55}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (width<=960px){.topbar-menu-btn{display:inline-flex}.topbar nav{z-index:39;padding:12px var(--page-pad) 18px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);background:#0c0e16f7;flex-direction:column;align-items:stretch;gap:4px;display:none;position:fixed;top:58px;left:0;right:0;box-shadow:0 18px 40px #0000006b}.topbar nav.is-open{display:flex}.topbar nav a{padding:12px 14px;font-size:14px}.topbar.is-menu-open{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0c0e16f0}.section-head>p,.section-experiments .section-head>p{text-align:left;justify-self:start;max-width:none;padding-top:0}.hero-split,.hero-grid,.section-head,.about,.work-detail__header,.work-detail__grid,.work-detail__lists{grid-template-columns:1fr}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-split{min-height:0;padding-top:96px}.hero-split--reel{grid-template-columns:1fr;min-height:100svh}.hero-split--reel .hero-bridge{text-align:left;justify-self:start;max-width:none}.hero-actions{justify-content:flex-start}.about-visual{min-height:360px}}@media (width<=620px){.site-content{border-radius:0 0 20px 20px}.topbar{padding-inline:max(14px, var(--page-pad))}.topbar nav{top:52px}.section{padding-block:clamp(44px,12vw,72px)}.section-head{gap:16px;margin-bottom:clamp(32px,8vw,44px)}.section-head h2{font-size:clamp(46px,13vw,82px)}.about-copy h2{white-space:normal;font-size:clamp(28px,8vw,48px)}.hero,.hero-content,.hero-split{min-height:88svh}.hero-content,.hero-copy{padding-bottom:34px}.hero h1{font-size:clamp(46px,17vw,78px)}.hero.hero-reel h1,.hero-typewriter{white-space:normal;font-size:clamp(40px,13vw,68px)}.hero-split--reel{min-height:100svh;padding-inline:max(14px, var(--page-pad));align-content:end;gap:24px;padding-top:88px;padding-bottom:clamp(30px,7vh,52px)}.hero.hero-reel .eyebrow{color:color-mix(in srgb, var(--accent-hover) 55%, #e6e1d7)}.hero-split--reel .hero-bridge{color:#fffc;max-width:36ch;padding-top:16px;font-size:14px;position:relative}.hero-split--reel .hero-bridge:before{content:"";background:var(--accent);width:46px;height:2px;position:absolute;top:0;left:0;box-shadow:0 0 14px #5c6cf299}.hero-focus-meta{font-size:11px;line-height:1.5}.hero-actions{flex-direction:column;align-items:stretch;width:100%}.icon-link{flex:auto;justify-content:center;width:100%}.atlas-columns{grid-template-columns:1fr;row-gap:12px}.atlas-column,.atlas-column:first-child,.atlas-column:nth-child(odd),.atlas-column:nth-child(2n),.atlas-column:nth-child(n+3){border:1px solid var(--border);border-radius:var(--radius-shell);background:radial-gradient(ellipse 90% 70% at 10% 0%, #5c6cf212, transparent 58%), var(--surface-raised);padding:20px 18px 22px}.project-grid,.work-grid,.process-grid{grid-template-columns:1fr}.project-tile__media .project-visual,.project-tile__media .project-media{aspect-ratio:1}.about-visual{min-height:320px}.project-copy{padding:22px}}@media (width<=768px){.flow-lab-stage{contain:none;min-height:0}.site-content{border-radius:0;margin-bottom:0}.contact{z-index:2;min-height:auto;padding:40px var(--page-pad) max(28px, env(safe-area-inset-bottom,0px));flex-direction:column;gap:22px;display:flex;position:relative;inset:auto}.footer-top{flex-direction:row;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.footer-main{flex-direction:column;align-items:stretch;gap:26px;display:flex}.footer-cta p{margin-bottom:12px}.footer-email{white-space:nowrap;overflow-wrap:normal;word-break:keep-all;font-size:clamp(22px,8.2vw,44px);line-height:1.05;display:block}.footer-links{width:100%;min-width:0}.footer-bottom{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.footer-bottom span{white-space:normal}}.section-head--compact h2,.section-atlas .section-head h2,.section-experiments .section-head h2,#work.section .section-head h2{letter-spacing:-.04em;font-size:clamp(48px,7vw,88px);line-height:.9}.surface-panel{border:1px solid var(--divider);border-radius:var(--radius-shell);background:var(--surface-raised)}.meta-row{flex-wrap:wrap;gap:6px 12px;display:flex}.meta-row span{color:color-mix(in srgb, var(--accent-secondary) 78%, var(--text-secondary));letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.meta-row span:not(:last-child):after{content:"·";color:color-mix(in srgb, var(--text-secondary) 42%, transparent);margin-left:12px;font-weight:400}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-primary:#0c0e14;--bg-secondary:#10131e;--surface:#171a2c;--border:#6478dc1a;--text-primary:#eaedf5;--text-secondary:#7a849e;--accent:#5c6cf2;--accent-secondary:#4d7ee8;--accent-hover:#7b8af5;--accent-muted:#3e4590;--gradient-surface:linear-gradient(135deg, #0c0e14 0%, #10131e 60%, #171a2c 100%);--shadow-elevated:0 10px 40px #00000073;--glow-accent:0 0 24px #5c6cf238;--divider:var(--line);--radius-sm:8px;--radius-media:12px;--radius-md:var(--radius-media);--radius-shell:16px;--radius-lg:var(--radius-shell);--radius-xl:22px;--surface-raised:#1b1f30;--black:var(--bg-primary);--ink:var(--bg-secondary);--paper:var(--surface);--muted:var(--text-secondary);--frost:var(--accent-secondary);--bronze:var(--bg-primary);--moss:var(--accent-secondary);--rose:var(--accent-muted);--line:var(--border);--page-pad:clamp(18px, 5vw, 74px);--footer-height:clamp(330px, 43vh, 470px);--sans:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--display:"JetBrains Mono", "Courier New", monospace;color:var(--text-primary);background:var(--bg-primary);font:16px/1.45 var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}@supports (color:color-mix(in srgb, white, black)){:root{--surface-raised:color-mix(in srgb, var(--surface) 85%, var(--bg-primary))}}html{scroll-behavior:smooth;background:var(--bg-primary);scroll-padding-top:78px;overflow-x:hidden}@supports (overflow:clip){html{overflow-x:clip}}body{background:var(--bg-primary);min-width:320px;margin:0;position:relative;overflow-x:hidden}@supports (overflow:clip){body{overflow-x:clip}}@media (width<=768px){:root{--footer-height:0px;--page-pad:clamp(14px, 4.5vw, 22px)}html{scroll-padding-top:64px}}body:before{content:"";z-index:0;pointer-events:none;opacity:.055;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}body,button,input,textarea,select{font-family:var(--sans)}a{color:inherit;text-decoration:none}button{font:inherit;border:0}button,a{-webkit-tap-highlight-color:transparent}img,svg,canvas{display:block}#root{z-index:1;flex-direction:column;min-height:100svh;display:flex;position:relative}::selection{color:var(--text-primary);background:#5c6cf259}
