.pixel-flower[data-v-1f865da1]{min-width:0;width:100%;color:#ff858c}.flower-art[data-v-1f865da1]{display:block;width:100%;height:auto;aspect-ratio:712 / 924;overflow:visible}.flower-tiles[data-v-1f865da1]{fill:currentColor;animation:pixel-appear-1f865da1 60ms var(--tile-delay) linear both}.flower-glint[data-v-1f865da1]{fill:#fff0f5;opacity:0;animation:pixel-glint-1f865da1 8s var(--glint-delay) ease-in-out infinite;animation-play-state:paused}.is-visible .flower-glint[data-v-1f865da1]{animation-play-state:running}@keyframes pixel-appear-1f865da1{0%{opacity:0}to{opacity:1}}@keyframes pixel-glint-1f865da1{0%,12%,to{opacity:0}4%,7%{opacity:1}}@media (prefers-reduced-motion: reduce){.flower-tiles[data-v-1f865da1]{animation:none}.flower-glint[data-v-1f865da1]{display:none;animation:none}}.project[data-v-84422497]{--project-accent: #536879;min-width:0}.project-surface[data-v-84422497]{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,5vw,5rem);padding:clamp(2rem,3.6vw,3.5rem) 0;border-bottom:1px solid var(--portfolio-rule);color:var(--portfolio-ink)}.project-surface[data-v-84422497]:before{position:absolute;inset:auto 0 -1px;height:2px;background:var(--project-accent);content:"";transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1)}.project-identity[data-v-84422497],.project-information[data-v-84422497]{min-width:0}.project-kind[data-v-84422497]{margin:0 0 1rem;color:var(--project-accent);font-size:.68rem;font-weight:650;letter-spacing:.12em;line-height:1.4;text-transform:uppercase}.project-heading[data-v-84422497]{display:flex;align-items:center;gap:1rem;min-width:0;transition:transform .35s cubic-bezier(.22,1,.36,1)}.project-logo[data-v-84422497]{display:block;flex:0 0 48px;width:48px;height:48px;object-fit:contain;transition:transform .35s cubic-bezier(.22,1,.36,1)}h3[data-v-84422497]{min-width:0;margin:0;font-family:var(--portfolio-font-display);font-size:clamp(2.4rem,4.2vw,4.3rem);font-weight:500;line-height:1.08;letter-spacing:-.045em}.project--presupuestar h3[data-v-84422497]{font-size:clamp(2.4rem,4.7vw,4.6rem)}h3 a[data-v-84422497]{color:inherit;text-decoration:none}h3 a[data-v-84422497]:hover{color:var(--project-accent)}.project-role[data-v-84422497]{max-width:42ch;margin:0;color:var(--project-accent);font-size:.85rem;line-height:1.55}.project-details[data-v-84422497]{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .35s cubic-bezier(.22,1,.36,1),opacity .25s ease}.project-details.is-expanded[data-v-84422497]{grid-template-rows:1fr;opacity:1}.project-details-clip[data-v-84422497]{min-height:0;overflow:hidden;margin-inline:-6px;padding-inline:6px}.project-details-content[data-v-84422497]{padding:.8rem 0 .25rem}.project-details p[data-v-84422497]{max-width:48ch;margin:0;line-height:1.6;font-size:1rem;text-wrap:pretty}.project-case[data-v-84422497]{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;margin-top:.35rem;padding-inline:4px;color:var(--project-accent);font-size:.9rem;font-weight:600;text-decoration:underline;text-underline-offset:.3em}.project-case:hover span[data-v-84422497]{transform:translate(3px)}.project-actions[data-v-84422497]{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem 1.75rem;margin-top:.65rem}.project-toggle[data-v-84422497],.project-visit[data-v-84422497]{display:inline-flex;align-items:center;gap:.65rem;min-height:48px;padding:.3rem 0;color:inherit;font-size:.84rem;font-weight:600;line-height:1.4}.project-toggle[data-v-84422497]{border:0;background:transparent;cursor:pointer;text-align:left}.project-visit[data-v-84422497]{text-decoration:underline;text-underline-offset:.3em;text-decoration-color:var(--project-accent)}.project-toggle[data-v-84422497]:hover,.project-visit[data-v-84422497]:hover{color:var(--project-accent)}.project-toggle[data-v-84422497]:active,.project-visit[data-v-84422497]:active{opacity:.65}.project-toggle-icon[data-v-84422497]{position:relative;flex:0 0 12px;width:12px;height:12px}.project-toggle-icon[data-v-84422497]:before,.project-toggle-icon[data-v-84422497]:after{position:absolute;top:5px;left:0;width:12px;height:1.5px;background:currentColor;content:""}.project-toggle-icon[data-v-84422497]:after{transform:rotate(90deg);transition:transform .25s ease}.project-toggle[aria-expanded=true] .project-toggle-icon[data-v-84422497]:after{transform:rotate(0)}.project-visit svg[data-v-84422497],.project-case span[data-v-84422497]{flex-shrink:0;transition:transform .25s ease}.project-visit:hover svg[data-v-84422497],.project-visit:focus-visible svg[data-v-84422497]{transform:translate(3px,-3px)}.project:focus-within .project-surface[data-v-84422497]:before{transform:scaleX(1)}@media (hover: hover) and (pointer: fine){.project:hover .project-surface[data-v-84422497]:before{transform:scaleX(1)}.project:hover .project-heading[data-v-84422497]{transform:translate(6px)}.project:hover .project-logo[data-v-84422497]{transform:rotate(-4deg)}}@media (max-width: 900px){.project-surface[data-v-84422497]{grid-template-columns:minmax(0,1fr);gap:1rem}.project-kind[data-v-84422497]{margin-bottom:.75rem}}@media (max-width: 640px){.project-heading[data-v-84422497]{gap:.65rem}.project-logo[data-v-84422497]{flex-basis:40px;width:40px;height:40px}h3[data-v-84422497],.project--presupuestar h3[data-v-84422497]{font-size:clamp(1.85rem,8.6vw,3rem)}.project-actions[data-v-84422497]{gap:.4rem 1.5rem}}@media (prefers-reduced-motion: reduce){.project-heading[data-v-84422497],.project-surface[data-v-84422497]:before,.project-logo[data-v-84422497],.project-details[data-v-84422497],.project-toggle-icon[data-v-84422497]:after,.project-visit svg[data-v-84422497],.project-case span[data-v-84422497]{transition:none}.project:hover .project-heading[data-v-84422497],.project:hover .project-logo[data-v-84422497],.project-visit:hover svg[data-v-84422497],.project-case:hover span[data-v-84422497]{transform:none}}.preview[data-v-f97f44d7]{--preview-accent: #ad4d5b;background:#faf9f7;color:#242327;height:100%;font-size:12px;line-height:1.35;container-type:inline-size}.preview-nav[data-v-f97f44d7]{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:36px;padding:0 20px;border-bottom:1px solid #e9e6e3;background:#ffffffb3}.preview-brand[data-v-f97f44d7]{display:flex;align-items:center;gap:.5rem;font-weight:650;font-size:12px;letter-spacing:-.02em}.preview-brand img[data-v-f97f44d7]{object-fit:contain;border-radius:7px}.preview-navigation[data-v-f97f44d7]{color:#716c70;font-size:10px}.preview-body[data-v-f97f44d7]{padding:10px 20px}.preview-heading[data-v-f97f44d7]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.preview-heading>div>span[data-v-f97f44d7]{font-size:10px;color:#746c70}.preview-heading h4[data-v-f97f44d7]{margin:3px 0 0;font-size:24px;line-height:1.1;font-weight:600;letter-spacing:-.045em}.category-symbol[data-v-f97f44d7]{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#eee9e5;color:#71636a}.category-symbol svg[data-v-f97f44d7]{width:19px;height:19px}.budget-card[data-v-f97f44d7]{padding:12px 16px 10px;background:#f4e7e6;border:1px solid #ecdad8;border-radius:18px}.budget-overview[data-v-f97f44d7]{display:flex;align-items:center;justify-content:space-between;gap:10px}.budget-remaining[data-v-f97f44d7]{display:grid;gap:5px}.budget-remaining>span[data-v-f97f44d7]{color:#745b60;font-size:10px}.budget-remaining strong[data-v-f97f44d7]{font-size:38px;line-height:1;font-weight:550;letter-spacing:-.055em;font-variant-numeric:tabular-nums}.budget-ring[data-v-f97f44d7]{position:relative;flex:0 0 56px;height:56px}.budget-ring svg[data-v-f97f44d7]{width:100%;height:100%;fill:none;stroke-width:3;transform:rotate(-90deg)}.ring-track[data-v-f97f44d7]{stroke:#e6cdce}.ring-value[data-v-f97f44d7]{stroke:var(--preview-accent);stroke-linecap:round;transition:stroke-dasharray .35s ease}.budget-ring>span[data-v-f97f44d7]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;align-items:center}.budget-ring strong[data-v-f97f44d7]{font-size:17px;font-weight:600;letter-spacing:-.04em}.budget-ring small[data-v-f97f44d7]{font-size:8px;color:#745b60;font-weight:500;letter-spacing:0}.budget-amounts[data-v-f97f44d7]{display:flex;gap:24px;margin-top:10px}.budget-amounts>span[data-v-f97f44d7]{display:grid;gap:2px;font-size:10px;color:#745b60}.budget-amounts>span+span[data-v-f97f44d7]{padding-left:24px;border-left:1px solid #dec6c7}.budget-amounts strong[data-v-f97f44d7]{font-size:13px;color:#242327;font-weight:550;font-variant-numeric:tabular-nums}.budget-track[data-v-f97f44d7]{height:3px;margin-top:12px;border-radius:4px;background:#e6cdce;overflow:hidden}.budget-track span[data-v-f97f44d7]{display:block;height:100%;width:100%;transform-origin:left;background:var(--preview-accent);transition:transform .35s ease}.budget-status[data-v-f97f44d7]{display:flex;align-items:center;gap:5px;margin-top:7px;font-size:9px;color:#745b60}.budget-status>span[data-v-f97f44d7]{font-weight:700}.is-over .budget-remaining strong[data-v-f97f44d7],.is-over .budget-status[data-v-f97f44d7]{color:#9b3046}.preview-actions[data-v-f97f44d7]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px}.preview-note[data-v-f97f44d7]{color:#746c70;font-size:9px}.expense-button[data-v-f97f44d7],.preview-placeholder-action[data-v-f97f44d7]{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 14px;background:#292529;color:#fffaf8;border:0;border-radius:12px;font:inherit;font-size:11px;font-weight:550}.expense-button>span[data-v-f97f44d7],.preview-placeholder-action>span[data-v-f97f44d7]{font-size:17px;font-weight:400}.expense-button[data-v-f97f44d7]{cursor:pointer;transition:transform .15s ease,background-color .15s;touch-action:manipulation}.expense-button[data-v-f97f44d7]:hover{background:#5c3b44}.expense-button[data-v-f97f44d7]:focus-visible{outline:2px solid #9b3046;outline-offset:3px}.expense-button[data-v-f97f44d7]:active{transform:scale(.96);transition-duration:.08s}.preview--wireframe[data-v-f97f44d7]{--preview-accent: #82807b;background:#f5f4f0;font-family:var(--portfolio-font-mono)}.preview--wireframe .preview-brand img[data-v-f97f44d7]{filter:grayscale(1);opacity:.5}.preview--wireframe .budget-card[data-v-f97f44d7]{background:transparent;border:1px dashed #8b8881;border-radius:8px}.preview--wireframe .budget-remaining strong[data-v-f97f44d7],.preview--wireframe .budget-amounts strong[data-v-f97f44d7]{color:transparent;background:#d5d3cd;border-radius:3px}.preview--wireframe .budget-ring[data-v-f97f44d7]{opacity:.4}.preview--wireframe .ring-track[data-v-f97f44d7]{stroke:#d5d3cd}.preview--wireframe .budget-track[data-v-f97f44d7]{background:#dedcd7}.preview--wireframe .preview-placeholder-action[data-v-f97f44d7]{border:1px dashed #8b8881;color:#64615d;background:transparent;border-radius:5px}.preview--wireframe .budget-amounts>span+span[data-v-f97f44d7]{border-color:#d5d3cd}.preview--design .preview-nav[data-v-f97f44d7]{display:none}@container (max-width: 370px){.preview-nav[data-v-f97f44d7]{height:34px;padding-inline:14px}.preview-navigation[data-v-f97f44d7]{display:none}.preview-brand img[data-v-f97f44d7]{width:20px;height:20px}.preview-body[data-v-f97f44d7]{padding:10px 12px}.preview-heading[data-v-f97f44d7]{margin-bottom:10px}.preview-heading h4[data-v-f97f44d7]{font-size:23px}.budget-card[data-v-f97f44d7]{padding:10px 12px 8px}.budget-remaining strong[data-v-f97f44d7]{font-size:34px}.budget-ring[data-v-f97f44d7]{flex-basis:48px;height:48px}.budget-amounts[data-v-f97f44d7]{margin-top:6px}.budget-track[data-v-f97f44d7]{margin-top:8px}.preview-actions[data-v-f97f44d7]{margin-top:10px}.expense-button[data-v-f97f44d7],.preview-placeholder-action[data-v-f97f44d7]{padding-inline:11px}.preview--design .preview-body[data-v-f97f44d7]{padding:10px}}@media (prefers-reduced-motion: reduce){.budget-track span[data-v-f97f44d7],.ring-value[data-v-f97f44d7],.expense-button[data-v-f97f44d7]{transition:none}.expense-button[data-v-f97f44d7]:active{transform:none}}@media (prefers-contrast: more){.budget-card[data-v-f97f44d7]{border-color:#745b60}.preview-note[data-v-f97f44d7],.preview-heading>div>span[data-v-f97f44d7]{color:#494044}}.process[data-v-e6fbc9a3]{position:relative;background:#111214;color:#f0f0ee;scroll-margin-top:76px;border-top:1px solid var(--portfolio-rule)}.process-scene[data-v-e6fbc9a3]{display:flex;align-items:center;width:100%;padding:3rem 0;background:#111214}.process-wrap[data-v-e6fbc9a3]{width:min(1200px,calc(100% - 4rem));margin-inline:auto;min-width:0}.process-header[data-v-e6fbc9a3]{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:2.5rem}.process-header h2[data-v-e6fbc9a3]{margin:0;font:500 clamp(3rem,4.8vw,5.5rem)/1.02 var(--portfolio-font-display);letter-spacing:-.045em}.process-header p[data-v-e6fbc9a3]{margin:1rem 0 0;color:#b2bec8;font-size:1.05rem;line-height:1.5}.process-skip[data-v-e6fbc9a3]{display:inline-flex;align-items:center;gap:.65rem;min-height:44px;color:#b2bec8;font-size:.85rem;flex-shrink:0}.process-skip[data-v-e6fbc9a3]:hover{color:#f0f0ee}.process-body[data-v-e6fbc9a3]{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,1.4fr);gap:clamp(2rem,5vw,5rem);align-items:center}.process-story[data-v-e6fbc9a3]{min-width:0}.process-steps[data-v-e6fbc9a3]{display:flex;flex-wrap:wrap;gap:0 .8rem;margin-bottom:2rem}.process-steps button[data-v-e6fbc9a3]{display:inline-flex;align-items:center;justify-content:space-between;gap:.6rem;min-height:48px;padding:.6rem 0;color:#b2bec8;background:none;border:0;border-bottom:1px solid #42474b;font:inherit;font-size:.9rem;cursor:pointer;transition:color .2s,border-color .2s}.process-steps button span[data-v-e6fbc9a3]{opacity:0}.process-steps button[aria-pressed=true][data-v-e6fbc9a3]{color:#ff9fa5;border-bottom-color:currentColor}.process-steps button[aria-pressed=true] span[data-v-e6fbc9a3]{opacity:1}.process-steps button[data-v-e6fbc9a3]:hover{color:#f0f0ee}.process-caption[data-v-e6fbc9a3]{min-height:200px}.process-caption h3[data-v-e6fbc9a3]{max-width:15ch;margin:0 0 1rem;font-size:clamp(1.7rem,2.4vw,2.6rem);font-weight:500;letter-spacing:-.04em;line-height:1.12;text-wrap:balance}.process-caption p[data-v-e6fbc9a3]{max-width:32ch;margin:0;color:#b2bec8;line-height:1.6;font-size:.95rem}.process-deck[data-v-e6fbc9a3]{position:relative;height:480px;width:100%;max-width:490px;margin-inline:auto;min-width:0;isolation:isolate}.process-layer[data-v-e6fbc9a3]{--float-distance: -3px;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.process-layer.is-floating[data-v-e6fbc9a3]{animation:process-float-e6fbc9a3 5.5s ease-in-out infinite;animation-play-state:paused}.process-layer[data-v-e6fbc9a3]:nth-child(2){animation-duration:6.4s}.process-layer[data-v-e6fbc9a3]:nth-child(3){animation-duration:4.8s}.process.is-in-view .process-layer.is-floating[data-v-e6fbc9a3]{animation-play-state:running}@keyframes process-float-e6fbc9a3{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,var(--float-distance),0)}}.process-panel[data-v-e6fbc9a3]{position:absolute;inset:0 0 auto;height:376px;display:flex;flex-direction:column;overflow:hidden;border:1px solid #ffffff38;border-radius:24px;background:#f0f0ee;box-shadow:0 24px 48px -12px #0008,0 2px #ffffff1a inset;opacity:0;visibility:hidden;pointer-events:none;transform-origin:center bottom;backface-visibility:hidden}.process-panel.is-active[data-v-e6fbc9a3]{opacity:1;visibility:visible;pointer-events:auto}.process-panel[data-v-e6fbc9a3]>:last-child{flex:1;min-height:0}.panel-bar[data-v-e6fbc9a3]{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-shrink:0;height:36px;padding:0 16px;border-bottom:1px solid #ffffff0d;color:#c7c4c8;background:#252427;font-size:10px}.panel-bar[data-v-e6fbc9a3]>:first-child{font-weight:550}.editor-title[data-v-e6fbc9a3]{display:inline-flex;align-items:center;gap:8px}.editor-file[data-v-e6fbc9a3]{color:#aba5ac;font-weight:400}.figma-mark[data-v-e6fbc9a3]{width:10px;height:16px;color:#f4b8be}.editor-zoom[data-v-e6fbc9a3]{border:1px solid #ffffff1a;border-radius:5px;padding:2px 5px;font-size:9px}.panel-figma[data-v-e6fbc9a3]{background:#e8e5e2}.figma-canvas[data-v-e6fbc9a3]{position:relative;padding:27px 24px 18px;background-image:radial-gradient(#77716b24 .6px,transparent .6px);background-size:10px 10px}.figma-frame-name[data-v-e6fbc9a3]{position:absolute;top:11px;left:24px;color:#635a64;font-size:9px}.figma-frame[data-v-e6fbc9a3]{position:relative;height:100%;outline:1px solid #af667b;border-radius:12px;box-shadow:0 8px 20px #36282b12}.figma-frame[data-v-e6fbc9a3] .preview{border-radius:inherit}.browser-address[data-v-e6fbc9a3]{display:inline-flex;align-items:center;gap:5px}.browser-address svg[data-v-e6fbc9a3]{width:13px;height:13px}.panel-web .panel-bar[data-v-e6fbc9a3]{background:#eeeae6;color:#655d64;border-color:#e3ded9}.ts-badge[data-v-e6fbc9a3]{color:#c9d9e5;font-size:9px;letter-spacing:-.04em;padding:3px;border:1px solid #b2bec83b;border-radius:4px}.frame-handle[data-v-e6fbc9a3]{position:absolute;width:5px;height:5px;background:#faf9f7;border:1px solid #af667b}.handle-1[data-v-e6fbc9a3]{top:-3px;left:-3px}.handle-2[data-v-e6fbc9a3]{top:-3px;right:-3px}.handle-3[data-v-e6fbc9a3]{bottom:-3px;right:-3px}.handle-4[data-v-e6fbc9a3]{bottom:-3px;left:-3px}.panel-code[data-v-e6fbc9a3]{background:#1b1b1e;color:#e3e6e9}.code-content[data-v-e6fbc9a3]{display:flex;flex-direction:column;padding:1rem 1.25rem}.code-path[data-v-e6fbc9a3]{margin:0 0 .6rem;color:#a6b2bc;font:10px/1.5 var(--portfolio-font-mono)}.code-editor[data-v-e6fbc9a3]{display:flex;gap:16px}.code-gutter[data-v-e6fbc9a3]{display:flex;flex-direction:column;color:#72717b;text-align:right;font:12px/1.5 var(--portfolio-font-mono);-webkit-user-select:none;user-select:none;border-right:1px solid #ffffff0d;padding-right:12px}.code-content pre[data-v-e6fbc9a3]{margin:0;white-space:pre-wrap;font:12px/1.5 var(--portfolio-font-mono)}.code-keyword[data-v-e6fbc9a3]{color:#ff9fa5}.code-value[data-v-e6fbc9a3]{color:#d6c2a7}.code-comment[data-v-e6fbc9a3]{color:#9aabb8}.code-status[data-v-e6fbc9a3]{display:flex;justify-content:space-between;gap:1rem;margin-top:auto;padding-top:.7rem;border-top:1px solid #ffffff12;color:#a6b2bc;font:10px/1.4 var(--portfolio-font-mono)}.process-footer[data-v-e6fbc9a3]{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.5rem;border-top:1px solid #42474b;padding-top:.6rem;font-size:.75rem;color:#b2bec8}.process-footer a[data-v-e6fbc9a3]{display:inline-flex;align-items:center;gap:.65rem;min-height:44px;color:#f0f0ee;text-decoration:underline;text-underline-offset:.3em;flex-shrink:0}.process-footer-actions[data-v-e6fbc9a3]{display:flex;align-items:center;gap:1.25rem}.process-footer .process-skip[data-v-e6fbc9a3]{font-size:inherit}@media (min-height: 740px) and (prefers-reduced-motion: no-preference){.process-scene[data-v-e6fbc9a3]{min-height:calc(100svh - 76px)}}@media (min-width: 901px) and (max-height: 820px){.process-scene[data-v-e6fbc9a3]{padding-block:1rem}.process-header[data-v-e6fbc9a3]{margin-bottom:1rem}.process-deck[data-v-e6fbc9a3]{height:480px}.process-footer[data-v-e6fbc9a3]{margin-top:.75rem}}@media (max-width: 900px){.process-wrap[data-v-e6fbc9a3]{width:calc(100% - 2.5rem)}.process-header[data-v-e6fbc9a3]{margin-bottom:2rem}.process-body[data-v-e6fbc9a3]{grid-template-columns:minmax(0,1fr);gap:1.25rem}.process-story[data-v-e6fbc9a3]{display:flex;flex-direction:column}.process-steps[data-v-e6fbc9a3]{order:2;margin:.75rem 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.process-caption[data-v-e6fbc9a3]{min-height:86px}.process-caption h3[data-v-e6fbc9a3]{max-width:none;font-size:1.6rem;margin-bottom:.4rem}.process-caption p[data-v-e6fbc9a3]{max-width:55ch;font-size:.85rem;line-height:1.5}.process-deck[data-v-e6fbc9a3]{height:470px}.process-scene[data-v-e6fbc9a3]{padding-block:2rem}}@media (max-width: 700px){.process[data-v-e6fbc9a3]{scroll-margin-top:66px}.process-wrap[data-v-e6fbc9a3]{width:calc(100% - 2rem)}.process-header[data-v-e6fbc9a3]{margin-bottom:1.25rem;align-items:flex-start}.process-header h2[data-v-e6fbc9a3]{font-size:2.8rem}.process-header p[data-v-e6fbc9a3]{margin-top:.5rem;font-size:.85rem;max-width:27ch}.process-skip[data-v-e6fbc9a3]{font-size:.75rem;gap:.4rem}.process-body[data-v-e6fbc9a3]{gap:1rem}.process-caption[data-v-e6fbc9a3]{min-height:94px}.process-caption h3[data-v-e6fbc9a3]{font-size:1.4rem}.process-steps[data-v-e6fbc9a3]{gap:.6rem;margin-top:.25rem}.process-steps button[data-v-e6fbc9a3]{font-size:.85rem}.process-deck[data-v-e6fbc9a3]{height:424px;max-width:360px}.process-panel[data-v-e6fbc9a3]{height:334px;border-radius:20px}.process-layer[data-v-e6fbc9a3]{--float-distance: -2px}.panel-bar[data-v-e6fbc9a3]{height:32px;padding-inline:.9rem;font-size:9px}.panel-bar[data-v-e6fbc9a3]>:last-child{max-width:48%;text-align:right}.figma-canvas[data-v-e6fbc9a3]{padding:23px 12px 12px}.figma-frame-name[data-v-e6fbc9a3]{top:9px;left:12px;font-size:8px}.code-content[data-v-e6fbc9a3]{padding:.9rem}.code-editor[data-v-e6fbc9a3]{gap:9px}.code-gutter[data-v-e6fbc9a3]{font-size:clamp(10px,2.9vw,12px);padding-right:7px}.code-content pre[data-v-e6fbc9a3]{font-size:clamp(10px,2.9vw,12px);line-height:1.5}.code-path[data-v-e6fbc9a3]{font-size:8px;margin-bottom:.7rem}.process-footer[data-v-e6fbc9a3]{margin-top:1rem;gap:.7rem;font-size:.65rem}.process-footer>span[data-v-e6fbc9a3]{max-width:35%}.process-footer-actions[data-v-e6fbc9a3]{gap:.75rem}.process-footer a[data-v-e6fbc9a3]{gap:.35rem}}@media (max-width: 700px) and (min-height: 740px) and (prefers-reduced-motion: no-preference){.process-scene[data-v-e6fbc9a3]{min-height:calc(100svh - 66px);padding-block:.75rem}.process-header[data-v-e6fbc9a3]{margin-bottom:.5rem}.process-header h2[data-v-e6fbc9a3]{font-size:2.5rem}.process-body[data-v-e6fbc9a3]{gap:.75rem}.process-caption[data-v-e6fbc9a3]{min-height:100px}.process-footer[data-v-e6fbc9a3]{margin-top:.5rem}}@media (prefers-reduced-motion: reduce){.process-steps button[data-v-e6fbc9a3]{transition:none}.process-panel[data-v-e6fbc9a3]{box-shadow:none}.process-layer.is-floating[data-v-e6fbc9a3]{animation:none}}.career-page[data-v-ec9aac21]{color:var(--portfolio-ink);background:var(--portfolio-bg);font-family:var(--portfolio-font-sans)}.section-wrap[data-v-ec9aac21]{width:min(1200px,calc(100% - 4rem));margin-inline:auto}.hero[data-v-ec9aac21]{width:100%;padding:clamp(2.5rem,4vw,3.5rem) max(2rem,calc((100% - 1200px)/2)) calc(48px + clamp(4rem,6vw,6rem));overflow:clip}.hero.section-wrap[data-v-ec9aac21]{width:100%}.kicker[data-v-ec9aac21],.role-period[data-v-ec9aac21]{font-size:.74rem;font-weight:650;letter-spacing:.11em;text-transform:uppercase}.kicker[data-v-ec9aac21]{color:var(--portfolio-accent);line-height:1.5}h1[data-v-ec9aac21],h2[data-v-ec9aac21],h3[data-v-ec9aac21],p[data-v-ec9aac21]{margin-top:0}h1[data-v-ec9aac21],h2[data-v-ec9aac21]{font-family:var(--portfolio-font-display);font-weight:500;letter-spacing:-.045em}.hero-topline[data-v-ec9aac21]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.4rem 1.5rem;margin-bottom:1rem}.hero-kicker[data-v-ec9aac21]{margin-bottom:0}.hero-title[data-v-ec9aac21]{position:relative;padding-block:1rem}.hero-composition[data-v-ec9aac21]{position:relative;isolation:isolate;display:grid;place-items:center;min-height:clamp(400px,32vw,450px)}.hero-composition .hero-title[data-v-ec9aac21]{width:min(100%,960px);z-index:1}.hero-garden[data-v-ec9aac21]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hero-garden .pixel-flower[data-v-ec9aac21]{position:absolute}.flower-west[data-v-ec9aac21]{left:0;top:22px;width:clamp(126px,13vw,170px);transform:rotate(-18deg)}.flower-east[data-v-ec9aac21]{right:4px;bottom:10px;width:clamp(132px,14vw,164px);transform:rotate(18deg)}.flower-crown[data-v-ec9aac21]{--crown-angle: 142deg;left:43%;top:-4px;width:66px;transform:translate(-50%) rotate(var(--crown-angle));opacity:.85}.flower-lower[data-v-ec9aac21]{left:14%;bottom:6px;width:clamp(58px,5vw,70px);transform:rotate(-32deg)}.flower-upper[data-v-ec9aac21]{right:22%;top:-40px;width:clamp(64px,6vw,82px);transform:rotate(25deg)}.flower-northwest[data-v-ec9aac21]{left:22%;top:-16px;width:clamp(56px,6vw,72px);transform:rotate(-14deg)}.flower-northeast[data-v-ec9aac21]{right:5%;top:-18px;width:clamp(62px,7vw,84px);transform:rotate(34deg)}.flower-south[data-v-ec9aac21]{left:42%;bottom:-4px;width:clamp(54px,5vw,64px);transform:rotate(-20deg)}.flower-southeast[data-v-ec9aac21]{right:24%;bottom:-6px;width:clamp(52px,5vw,64px);transform:rotate(28deg)}.hero-headline[data-v-ec9aac21]{max-width:1200px;margin-bottom:0;font-size:clamp(3.5rem,7.3vw,7rem);font-weight:550;letter-spacing:-.068em;line-height:1.02;text-wrap:balance;text-align:center}.hero-headline span[data-v-ec9aac21]{display:block}.hero-headline-accent[data-v-ec9aac21]{color:var(--portfolio-accent)}.hero-footer[data-v-ec9aac21]{display:grid;grid-template-columns:1fr;align-items:center;gap:1.5rem;margin-top:1.5rem;padding-top:1.75rem;border-top:1px solid var(--portfolio-rule);text-align:center}.hero-lead[data-v-ec9aac21]{max-width:58ch;margin:0 auto;font-size:clamp(1.05rem,1.55vw,1.35rem);line-height:1.55;text-wrap:pretty}.hero-actions[data-v-ec9aac21]{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:1.5rem;justify-self:center}.action-label-short[data-v-ec9aac21]{display:none}.button-primary[data-v-ec9aac21]{display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:48px;padding:.85rem 1.1rem;border:1px solid var(--portfolio-ink);background:var(--portfolio-ink);color:var(--portfolio-bg);font-weight:650;cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s}.button-primary[data-v-ec9aac21]:hover{background:var(--portfolio-accent);border-color:var(--portfolio-accent);transform:translateY(-3px)}.button-primary[data-v-ec9aac21]:active{transform:translateY(0) scale(.98)}.text-link[data-v-ec9aac21]{display:inline-flex;align-items:center;min-height:44px;color:var(--portfolio-ink);font-weight:650;text-decoration:underline;text-decoration-color:var(--portfolio-accent);text-underline-offset:.32em}.text-link[data-v-ec9aac21]:hover{color:var(--portfolio-accent)}.content-section[data-v-ec9aac21]{padding-block:clamp(5rem,8vw,7rem) clamp(5.5rem,9vw,8rem);border-top:1px solid var(--portfolio-rule);scroll-margin-top:76px}.work[data-v-ec9aac21]{position:relative;border-top:0}.section-pixels[data-v-ec9aac21]{display:none;position:absolute;inset:-48px 0 auto;height:48px;grid-template-columns:repeat(16,minmax(0,1fr));overflow:hidden;pointer-events:none}.section-pixels span[data-v-ec9aac21]{background:var(--portfolio-bg)}.work[data-v-ec9aac21],.toolkit[data-v-ec9aac21],.contact[data-v-ec9aac21]{--portfolio-bg: #f0f0ee;--portfolio-ink: #111214;--portfolio-accent: #536879;--portfolio-rule: rgba(17, 18, 20, .24);background:var(--portfolio-bg);color:var(--portfolio-ink);color-scheme:light}.section-intro[data-v-ec9aac21]{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:clamp(.75rem,1.25vw,1.25rem);margin-bottom:clamp(2.5rem,4.5vw,4rem);padding-bottom:clamp(2.5rem,4.5vw,4rem)}.section-intro[data-v-ec9aac21]:after{position:absolute;inset:auto 0 0;height:1px;background:var(--portfolio-rule);content:"";transform-origin:left}.section-intro .kicker[data-v-ec9aac21]{margin-bottom:0}.section-intro h2[data-v-ec9aac21],.contact h2[data-v-ec9aac21]{max-width:13ch;margin-bottom:0;font-size:clamp(3rem,4.8vw,5.5rem);line-height:1.02;text-wrap:balance}.work .section-intro[data-v-ec9aac21]{margin-bottom:0}.project-list[data-v-ec9aac21]{display:grid;grid-template-columns:minmax(0,1fr)}.company-logo[data-v-ec9aac21]{display:block;object-fit:contain;flex:0 0 3.25rem;width:3.25rem;height:3.25rem}.experience-list[data-v-ec9aac21]{list-style:none;padding:0;margin:0}.experience-list li[data-v-ec9aac21]{display:grid;grid-template-columns:1fr 1.3fr auto;gap:1.5rem;padding:1.6rem 0;border-bottom:1px solid var(--portfolio-rule)}.company-identity[data-v-ec9aac21]{display:flex;align-items:flex-start;gap:1rem;min-width:0}.company-heading[data-v-ec9aac21]{display:flex;align-items:center;flex-wrap:wrap;gap:.7rem;margin-bottom:.25rem}.company-logo--light[data-v-ec9aac21]{filter:brightness(0) invert(1)}.company-logo--bright[data-v-ec9aac21]{filter:brightness(1.5)}.company-logo--lubee[data-v-ec9aac21]{filter:brightness(2.2) saturate(.85);transform:scale(1.22)}.company-logo--sms[data-v-ec9aac21]{transform:scale(1.12);transform-origin:left center}.experience-list h3[data-v-ec9aac21]{margin-bottom:0;font-family:var(--portfolio-font-display);font-size:1.8rem;font-weight:500}.current-role-label[data-v-ec9aac21]{padding:.25rem .45rem;background:var(--portfolio-accent);color:var(--portfolio-bg);font-size:.62rem;font-weight:700;letter-spacing:.09em;line-height:1;text-transform:uppercase}.is-current .role-period[data-v-ec9aac21]{color:var(--portfolio-accent)}.experience-list p[data-v-ec9aac21]{margin-bottom:0;line-height:1.55}.role-period[data-v-ec9aac21]{padding-top:.45rem}.role-detail[data-v-ec9aac21]{max-width:44ch}.toolkit[data-v-ec9aac21]{padding-block:clamp(3rem,4vw,4rem)}.toolkit .section-wrap[data-v-ec9aac21]{display:block}.toolkit .section-intro[data-v-ec9aac21]{grid-column:1 / -1;gap:.45rem;margin-bottom:.5rem;padding-bottom:1.5rem}.toolkit .section-intro h2[data-v-ec9aac21]{font-size:clamp(2.5rem,3.4vw,3.75rem)}.toolkit-list[data-v-ec9aac21]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(2rem,5vw,5.5rem);list-style:none;padding:0;margin:0}.toolkit-list li[data-v-ec9aac21]{padding:1rem 0;border-bottom:1px solid var(--portfolio-rule)}.toolkit-list h3[data-v-ec9aac21]{margin-bottom:.3rem;font-family:var(--portfolio-font-display);font-size:clamp(1.6rem,2.3vw,2.4rem);font-weight:500;letter-spacing:-.045em;line-height:1.1}.toolkit-list li:first-child h3[data-v-ec9aac21]{color:var(--portfolio-accent)}.toolkit-list p[data-v-ec9aac21]{max-width:40ch;margin-bottom:0;font-size:1rem;line-height:1.5}.about-grid[data-v-ec9aac21]{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(17rem,.75fr);gap:clamp(3rem,8vw,8rem);align-items:start}.about-body[data-v-ec9aac21]{max-width:20ch;margin-bottom:0;font-family:var(--portfolio-font-display);font-size:clamp(2.5rem,4vw,4.5rem);line-height:1.13;letter-spacing:-.045em;text-wrap:pretty}.about-notes[data-v-ec9aac21]{display:grid;gap:1.75rem;padding-top:.4rem}.about[data-v-ec9aac21]{position:relative;isolation:isolate;overflow:hidden}.about>.section-wrap[data-v-ec9aac21]{position:relative;z-index:1}.about-art[data-v-ec9aac21]{--art-opacity: .28;position:absolute;inset:0 0 0 auto;width:58%;height:100%;object-fit:cover;object-position:center;opacity:var(--art-opacity);filter:saturate(.7);-webkit-mask-image:linear-gradient(90deg,transparent,#000 70%);mask-image:linear-gradient(90deg,transparent,#000 70%);pointer-events:none}.about-detail[data-v-ec9aac21]{max-width:38ch;margin-bottom:0;font-size:1.1rem;line-height:1.65}.about-education[data-v-ec9aac21]{max-width:32ch;margin-bottom:0;padding-top:1.5rem;border-top:1px solid var(--portfolio-rule);color:var(--portfolio-muted);font-size:1rem;line-height:1.6}.contact[data-v-ec9aac21]{background:var(--portfolio-bg)}.contact-grid[data-v-ec9aac21]{display:grid;grid-template-columns:.8fr 1.2fr;align-items:end;gap:clamp(3rem,8vw,8rem)}.contact-copy .kicker[data-v-ec9aac21]{margin-bottom:1.75rem}.contact-links[data-v-ec9aac21]{display:grid;min-width:0}.contact-links>a[data-v-ec9aac21]{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:1.1rem 0;border-bottom:1px solid var(--portfolio-rule);color:var(--portfolio-ink);font-size:1.05rem;font-weight:650;text-decoration:none;transition:color .2s ease}.contact-links>a[data-v-ec9aac21]:hover{color:var(--portfolio-accent)}.contact-links .contact-email[data-v-ec9aac21]{font-family:var(--portfolio-font-display);font-size:clamp(1.3rem,2.3vw,2.3rem);font-weight:500;letter-spacing:-.04em;overflow-wrap:anywhere}.contact-cv[data-v-ec9aac21]{padding-top:1.5rem}.contact-download[data-v-ec9aac21]{min-width:224px;max-width:100%;font-size:1rem;text-decoration:none}.contact-download>span[data-v-ec9aac21]{display:grid;gap:.2rem}.contact-download small[data-v-ec9aac21]{font-size:.72rem;font-weight:450;opacity:.8}.contact-download svg[data-v-ec9aac21]{width:20px;height:20px;flex-shrink:0}@media (prefers-reduced-motion: no-preference){.hero-garden .pixel-flower[data-v-ec9aac21]{transition:transform .2s ease-out}.flower-west[data-v-ec9aac21]{transform:translate3d(calc(var(--garden-x, 0px) * -.35 + var(--garden-scroll, 0) * 8px),calc(var(--garden-y, 0px) * -.3 - var(--garden-scroll, 0) * 12px),0) rotate(calc(-18deg - var(--garden-scroll, 0) * 3deg))}.flower-east[data-v-ec9aac21]{transform:translate3d(calc(var(--garden-x, 0px) * .35 - var(--garden-scroll, 0) * 8px),calc(var(--garden-y, 0px) * .3 + var(--garden-scroll, 0) * 12px),0) rotate(calc(18deg + var(--garden-scroll, 0) * 3deg))}.flower-crown[data-v-ec9aac21]{transform:translate(-50%) translate3d(calc(var(--garden-x, 0px) * .35),calc(var(--garden-y, 0px) * .35 - var(--garden-scroll, 0) * 24px),0) rotate(calc(var(--crown-angle) - var(--garden-scroll, 0) * 8deg))}.flower-lower[data-v-ec9aac21]{transform:translate3d(calc(var(--garden-x, 0px) * -.3),calc(var(--garden-y, 0px) * -.3 - var(--garden-scroll, 0) * 12px),0) rotate(-32deg)}.flower-upper[data-v-ec9aac21]{transform:translate3d(calc(var(--garden-x, 0px) * .25),calc(var(--garden-y, 0px) * .25 + var(--garden-scroll, 0) * 12px),0) rotate(25deg)}.flower-northwest[data-v-ec9aac21]{transform:translate3d(calc(var(--garden-x, 0px) * -.2),calc(var(--garden-y, 0px) * -.2 - var(--garden-scroll, 0) * 8px),0) rotate(-14deg)}.flower-northeast[data-v-ec9aac21]{transform:translate3d(calc(var(--garden-x, 0px) * .2),calc(var(--garden-y, 0px) * .2 + var(--garden-scroll, 0) * 8px),0) rotate(34deg)}.flower-south[data-v-ec9aac21]{transform:translate3d(calc(var(--garden-x, 0px) * -.15),calc(var(--garden-y, 0px) * -.15 - var(--garden-scroll, 0) * 6px),0) rotate(-20deg)}.flower-southeast[data-v-ec9aac21]{transform:translate3d(calc(var(--garden-x, 0px) * .25),calc(var(--garden-y, 0px) * .25 - var(--garden-scroll, 0) * 10px),0) rotate(28deg)}.work.reveal-ready .section-pixels[data-v-ec9aac21]{display:grid}.section-pixels span[data-v-ec9aac21]{transform:translateY(100%);transition:transform .45s var(--pixel-delay) cubic-bezier(.22,1,.36,1)}.work.is-visible .section-pixels span[data-v-ec9aac21]{transform:translateY(0)}.hero-footer[data-v-ec9aac21]{animation:hero-enter-ec9aac21 .55s .1s cubic-bezier(.22,1,.36,1) both}[data-reveal].scroll-ready[data-v-ec9aac21]{opacity:calc(.12 + var(--reveal-progress, 1) * .88);transform:translate3d(calc(var(--reveal-x, 0px) * (1 - var(--reveal-progress, 1))),calc(var(--reveal-y, 32px) * (1 - var(--reveal-progress, 1))),0)}.section-intro.scroll-ready[data-v-ec9aac21]:after{transform:scaleX(var(--reveal-progress, 1))}.experience-list li.scroll-ready[data-v-ec9aac21],.toolkit-list li.scroll-ready[data-v-ec9aac21]{position:relative;border-bottom-color:transparent}.experience-list li.scroll-ready[data-v-ec9aac21]:after,.toolkit-list li.scroll-ready[data-v-ec9aac21]:after{position:absolute;right:0;bottom:-1px;left:0;height:1px;background:var(--portfolio-rule);content:"";transform:scaleX(var(--reveal-progress, 1));transform-origin:left}.about-art.scroll-ready[data-v-ec9aac21]{opacity:calc(var(--art-opacity) * var(--reveal-progress, 1));transform:translate(calc(24px * (1 - var(--reveal-progress, 1)))) scale(calc(1.06 - .06 * var(--reveal-progress, 1)))}}@keyframes hero-enter-ec9aac21{0%{opacity:.5;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1050px){.hero-footer[data-v-ec9aac21]{gap:1.5rem}}@media (max-width: 900px){.section-wrap[data-v-ec9aac21]{width:min(100% - 2.5rem,1200px)}.experience-list li[data-v-ec9aac21]{grid-template-columns:1fr auto}.role-detail[data-v-ec9aac21]{grid-column:1 / 3}.about-grid[data-v-ec9aac21],.contact-grid[data-v-ec9aac21],.toolkit .section-wrap[data-v-ec9aac21]{grid-template-columns:1fr}.toolkit .section-intro[data-v-ec9aac21]{grid-column:1}}@media (max-width: 640px){.section-wrap[data-v-ec9aac21]{width:calc(100% - 2rem)}.hero[data-v-ec9aac21]{width:100%;padding:2rem 1rem 3rem}.content-section[data-v-ec9aac21]{padding-block:4.5rem 5rem;scroll-margin-top:66px}.hero-headline[data-v-ec9aac21]{font-size:clamp(2.5rem,11vw,4.8rem);letter-spacing:-.06em}.hero-topline[data-v-ec9aac21]{margin-bottom:1rem;justify-content:center;text-align:center;gap:0}.hero-footer[data-v-ec9aac21]{margin-top:3rem}.section-intro h2[data-v-ec9aac21],.contact h2[data-v-ec9aac21]{font-size:clamp(2.8rem,12vw,4.5rem)}.company-identity[data-v-ec9aac21]{gap:.65rem}.experience-list li[data-v-ec9aac21]{grid-template-columns:1fr;gap:.5rem}.role-period[data-v-ec9aac21],.role-detail[data-v-ec9aac21]{grid-column:1}.role-period[data-v-ec9aac21]{padding:0}.toolkit[data-v-ec9aac21]{padding-block:3rem}.toolkit-list[data-v-ec9aac21]{grid-template-columns:minmax(0,1fr)}.toolkit .section-intro h2[data-v-ec9aac21]{font-size:clamp(2.4rem,10vw,3.5rem)}.toolkit-list li[data-v-ec9aac21]{padding:.85rem 0}.toolkit-list h3[data-v-ec9aac21]{font-size:clamp(1.55rem,7vw,2.2rem)}.about-body[data-v-ec9aac21]{font-size:clamp(2.3rem,9vw,3.2rem)}.about-art[data-v-ec9aac21]{--art-opacity: .2;width:100%;-webkit-mask-image:linear-gradient(180deg,transparent,#000 65%);mask-image:linear-gradient(180deg,transparent,#000 65%)}.contact-grid[data-v-ec9aac21]{gap:2.5rem}}@media (max-width: 800px){.hero[data-v-ec9aac21]{padding:1.5rem 1.25rem 5rem}.hero-topline[data-v-ec9aac21]{justify-content:center;margin-bottom:1.25rem;text-align:center}.hero-kicker[data-v-ec9aac21]{font-size:.65rem;letter-spacing:.09em}.hero-composition[data-v-ec9aac21]{display:grid;place-items:center;min-height:clamp(360px,90vw,460px)}.hero-garden[data-v-ec9aac21]{position:absolute;top:0;right:0;bottom:0;left:0;width:min(100%,560px);height:100%;margin-inline:auto}.hero-composition .hero-title[data-v-ec9aac21]{width:100%;padding:0}.hero-headline[data-v-ec9aac21]{font-size:clamp(2rem,9.4vw,3.8rem);line-height:1.08;letter-spacing:-.055em}.flower-west[data-v-ec9aac21]{left:9%;top:10px;width:clamp(58px,17vw,82px)}.flower-east[data-v-ec9aac21]{right:4%;top:auto;bottom:30px;width:clamp(58px,16vw,76px)}.flower-crown[data-v-ec9aac21]{--crown-angle: 142deg;left:44%;top:8px;bottom:auto;width:38px}.flower-lower[data-v-ec9aac21]{left:7%;bottom:30px;width:clamp(54px,15vw,70px)}.flower-upper[data-v-ec9aac21]{right:19%;top:44px;bottom:auto;width:48px}.flower-northwest[data-v-ec9aac21]{left:0;top:88px;width:34px}.flower-northeast[data-v-ec9aac21]{right:3%;top:16px;width:36px}.flower-south[data-v-ec9aac21]{left:36%;bottom:6px;width:38px}.flower-southeast[data-v-ec9aac21]{right:28%;bottom:35px;width:38px}.hero-footer[data-v-ec9aac21]{margin-top:1.25rem;padding-top:0;border-top:0;gap:1.5rem}.hero-lead[data-v-ec9aac21]{max-width:38ch;font-size:1rem;line-height:1.5}.hero-actions[data-v-ec9aac21]{flex-wrap:nowrap;gap:1.25rem}.hero-actions .button-primary[data-v-ec9aac21]{gap:1rem;padding:.75rem .9rem}.hero-actions a[data-v-ec9aac21]{min-height:48px;font-size:.9rem}.action-label-full[data-v-ec9aac21]{display:none}.action-label-short[data-v-ec9aac21]{display:inline}.work[data-v-ec9aac21]{padding-top:3rem}.work .section-pixels[data-v-ec9aac21]{top:-24px;height:24px}}@media (prefers-reduced-motion: reduce){.button-primary[data-v-ec9aac21]{transition:none}.button-primary[data-v-ec9aac21]:hover,.button-primary[data-v-ec9aac21]:active{transform:none}}.case-study-page[data-v-6a332522]{background:var(--portfolio-bg);color:var(--portfolio-ink);font-family:var(--portfolio-font-sans)}.case-wrap[data-v-6a332522]{width:min(1200px,calc(100% - 4rem));margin-inline:auto}.case-kicker[data-v-6a332522]{margin:0;color:var(--portfolio-accent);font-size:.74rem;font-weight:650;letter-spacing:.11em;line-height:1.5;text-transform:uppercase}h1[data-v-6a332522],h2[data-v-6a332522],h3[data-v-6a332522],p[data-v-6a332522]{margin-top:0}h1[data-v-6a332522],h2[data-v-6a332522],h3[data-v-6a332522]{font-family:var(--portfolio-font-display);font-weight:500;letter-spacing:-.045em}.case-hero[data-v-6a332522]{padding:clamp(2rem,4vw,4rem) 0 clamp(4rem,7vw,7rem)}.back-link[data-v-6a332522]{display:inline-flex;align-items:center;gap:.55rem;min-height:44px;margin-bottom:clamp(4rem,8vw,7rem);color:var(--portfolio-ink);font-size:.9rem;font-weight:650;border-bottom:1px solid var(--portfolio-accent);padding:.5rem 0}.back-link span[data-v-6a332522]{display:inline-block;transition:transform .2s ease}.back-link[data-v-6a332522]:hover,.back-link[data-v-6a332522]:focus-visible{color:var(--portfolio-accent)}.back-link:hover span[data-v-6a332522],.back-link:focus-visible span[data-v-6a332522]{transform:translate(-3px)}.case-hero-grid[data-v-6a332522]{display:grid;grid-template-columns:1.2fr .8fr;align-items:start;gap:clamp(2rem,5vw,5rem);margin-top:1.5rem}.case-hero h1[data-v-6a332522]{display:flex;align-items:center;gap:clamp(.7rem,1.5vw,1.25rem);min-width:0;margin-bottom:0;font-size:clamp(2.8rem,5.9vw,6.2rem);line-height:1}.case-hero h1 img[data-v-6a332522]{flex:0 0 clamp(3.25rem,5vw,4.5rem);width:clamp(3.25rem,5vw,4.5rem);height:clamp(3.25rem,5vw,4.5rem);object-fit:contain}.case-title-text[data-v-6a332522]{white-space:nowrap}.case-lead[data-v-6a332522]{max-width:30ch;margin:0 0 .3rem;font-family:var(--portfolio-font-display);font-size:clamp(1.45rem,2.3vw,2.4rem);line-height:1.25;letter-spacing:-.03em;text-wrap:pretty}.case-meta[data-v-6a332522]{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:1.5rem;align-items:end;margin-top:clamp(4rem,7vw,7rem);padding-top:1.25rem;border-top:1px solid var(--portfolio-rule)}.case-meta div[data-v-6a332522]{display:grid;gap:.4rem}.case-meta div span[data-v-6a332522]{color:var(--portfolio-accent);font-size:.7rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase}.case-meta strong[data-v-6a332522]{font-size:.9rem;font-weight:600;line-height:1.35}.case-meta a[data-v-6a332522],.case-end a[data-v-6a332522]{display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;min-height:48px;padding:.8rem 1rem;border:1px solid var(--portfolio-ink);background:var(--portfolio-ink);color:var(--portfolio-bg);font-size:.9rem;font-weight:650;transition:background .2s ease,color .2s ease,border-color .2s ease}.case-meta a[data-v-6a332522]:hover,.case-meta a[data-v-6a332522]:focus-visible,.case-end a[data-v-6a332522]:hover,.case-end a[data-v-6a332522]:focus-visible{background:var(--portfolio-accent);border-color:var(--portfolio-accent);color:#111214}.case-context[data-v-6a332522],.case-decisions[data-v-6a332522],.case-end[data-v-6a332522]{--portfolio-bg: #f0f0ee;--portfolio-ink: #111214;--portfolio-accent: #536879;--portfolio-rule: rgba(17, 18, 20, .24);background:var(--portfolio-bg);color:var(--portfolio-ink);color-scheme:light}.case-context[data-v-6a332522]{padding-block:clamp(5rem,8vw,8rem)}.case-context-grid[data-v-6a332522]{display:grid;grid-template-columns:.36fr 1fr;gap:clamp(2rem,8vw,8rem);align-items:start}.case-context h2[data-v-6a332522],.case-section-heading h2[data-v-6a332522],.case-demo-copy h2[data-v-6a332522],.case-end h2[data-v-6a332522]{max-width:16ch;margin-bottom:1.2rem;font-size:clamp(2.8rem,5vw,5.5rem);line-height:1.04;text-wrap:balance}.case-context-grid>div>p[data-v-6a332522],.case-demo-copy>p[data-v-6a332522]:last-child,.case-end p[data-v-6a332522]{max-width:52ch;margin-bottom:0;font-size:1.08rem;line-height:1.7;text-wrap:pretty}.case-decisions[data-v-6a332522]{padding-bottom:clamp(5rem,8vw,8rem)}.case-section-heading[data-v-6a332522]{display:grid;gap:1.3rem;padding-bottom:clamp(2.5rem,5vw,4rem);border-bottom:1px solid var(--portfolio-rule)}.case-section-heading h2[data-v-6a332522]{margin-bottom:0}.case-decision[data-v-6a332522]{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,7rem);padding:clamp(2rem,4vw,3.75rem) 0;border-bottom:1px solid var(--portfolio-rule)}.case-decision h3[data-v-6a332522]{max-width:15ch;margin-bottom:0;font-size:clamp(1.8rem,3vw,3.25rem);line-height:1.1}.case-decision p[data-v-6a332522]{max-width:50ch;margin-bottom:0;line-height:1.7}.case-demo-section[data-v-6a332522]{padding-block:clamp(5rem,8vw,8rem)}.case-demo-grid[data-v-6a332522]{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,9rem);align-items:center}.case-demo-copy .case-kicker[data-v-6a332522]{margin-bottom:1.4rem}.case-demo-copy h2[data-v-6a332522]{max-width:11ch}.budget-demo[data-v-6a332522]{padding:clamp(1.4rem,3vw,2.5rem);background:#f0f0ee;color:#111214}.demo-topline[data-v-6a332522]{display:flex;justify-content:space-between;gap:1rem;padding-bottom:1.25rem;border-bottom:1px solid rgba(17,18,20,.24);font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.demo-amounts[data-v-6a332522]{display:grid;gap:.9rem;padding-block:1.5rem 1.8rem}.demo-amounts>div[data-v-6a332522]{display:flex;justify-content:space-between;gap:1rem;font-size:1rem}.demo-amounts strong[data-v-6a332522]{font-weight:650;font-variant-numeric:tabular-nums}.demo-balance[data-v-6a332522]{padding-top:.9rem;border-top:1px solid rgba(17,18,20,.24);font-size:1.2rem!important;font-weight:650}.budget-demo[data-over=true] .demo-balance[data-v-6a332522]{color:#536879}.demo-track[data-v-6a332522]{height:5px;overflow:hidden;background:#1112142e}.demo-track span[data-v-6a332522]{display:block;width:100%;height:100%;background:#536879;transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1)}.budget-demo[data-over=true] .demo-track span[data-v-6a332522]{background:#111214}.budget-demo label[data-v-6a332522]{display:block;margin-top:2.5rem;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.budget-demo input[data-v-6a332522]{display:block;width:100%;min-height:44px;margin:.5rem 0 0;accent-color:#536879;cursor:pointer}.demo-note[data-v-6a332522]{margin-bottom:0;color:#536879;font-size:.75rem}.case-end[data-v-6a332522]{padding-block:clamp(5rem,8vw,8rem)}.case-end-grid[data-v-6a332522]{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:end}.case-end h2[data-v-6a332522]{margin-bottom:1rem}.case-end a[data-v-6a332522]{background:#111214;color:#f0f0ee}@media (prefers-reduced-motion: no-preference){[data-reveal].reveal-ready[data-v-6a332522]{opacity:0;transform:translateY(14px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}[data-reveal].reveal-ready.is-visible[data-v-6a332522]{opacity:1;transform:translateY(0)}}@media (max-width: 900px){.case-wrap[data-v-6a332522]{width:min(100% - 2.5rem,1200px)}.case-hero-grid[data-v-6a332522],.case-demo-grid[data-v-6a332522]{grid-template-columns:1fr}.case-meta[data-v-6a332522]{grid-template-columns:repeat(3,minmax(0,1fr))}.case-meta a[data-v-6a332522]{justify-self:start}}@media (max-width: 640px){.case-wrap[data-v-6a332522]{width:calc(100% - 2rem)}.case-hero[data-v-6a332522]{padding-top:1.5rem}.back-link[data-v-6a332522]{margin-bottom:4rem}.case-hero h1[data-v-6a332522]{font-size:clamp(2rem,9vw,4rem)}.case-hero h1 img[data-v-6a332522]{flex-basis:2.7rem;width:2.7rem;height:2.7rem}.case-lead[data-v-6a332522]{font-size:clamp(1.35rem,6vw,1.8rem)}.case-meta[data-v-6a332522]{grid-template-columns:1fr 1fr;gap:1.5rem 1rem}.case-meta a[data-v-6a332522]{grid-column:1 / -1}.case-context-grid[data-v-6a332522],.case-decision[data-v-6a332522],.case-end-grid[data-v-6a332522]{grid-template-columns:1fr}.case-context h2[data-v-6a332522],.case-section-heading h2[data-v-6a332522],.case-demo-copy h2[data-v-6a332522],.case-end h2[data-v-6a332522]{font-size:clamp(2.6rem,11vw,4rem)}.case-end a[data-v-6a332522]{justify-self:start}}@media (prefers-reduced-motion: reduce){.back-link span[data-v-6a332522],.case-meta a[data-v-6a332522],.case-end a[data-v-6a332522],.demo-track span[data-v-6a332522]{transition:none}}.success-page[data-v-6d63c6c5]{min-height:min(760px,calc(100vh - 190px));display:grid;place-items:center;color:var(--portfolio-ink);padding:clamp(2rem,6vw,5rem) 0;position:relative;background:var(--portfolio-bg)}.success-card[data-v-6d63c6c5]{width:min(720px,100%);border:1px solid var(--portfolio-ink);border-radius:0;padding:clamp(1.6rem,5vw,3.8rem);background:var(--portfolio-bg);box-shadow:none;text-align:center;position:relative;z-index:1}.success-icon[data-v-6d63c6c5]{width:76px;height:76px;display:grid;place-items:center;margin:0 auto 1.35rem;border:1px solid var(--portfolio-ink);border-radius:0;background:var(--portfolio-bg);box-shadow:none}.success-icon svg[data-v-6d63c6c5]{width:38px;height:38px}.success-icon path[data-v-6d63c6c5]{fill:none;stroke:var(--portfolio-accent);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.eyebrow[data-v-6d63c6c5]{margin:0 0 1rem;color:var(--portfolio-accent);font-family:var(--portfolio-font-sans);font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}h1[data-v-6d63c6c5]{margin:0 0 1rem;font-family:var(--portfolio-font-display);font-size:clamp(2.2rem,5vw,4rem);line-height:1.05;letter-spacing:0}.success-message[data-v-6d63c6c5]{max-width:560px;margin:0 auto;color:var(--portfolio-muted);line-height:1.7;font-size:1.05rem}.redirect-status[data-v-6d63c6c5]{display:grid;gap:.75rem;width:min(420px,100%);margin:2rem auto 0;color:var(--portfolio-muted);font-weight:700}.progress-track[data-v-6d63c6c5]{height:8px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--portfolio-ink) 18%,var(--portfolio-bg))}.progress-fill[data-v-6d63c6c5]{height:100%;border-radius:inherit;background:var(--portfolio-accent);transition:width .35s ease}.success-actions[data-v-6d63c6c5]{display:flex;justify-content:center;flex-wrap:wrap;gap:.85rem;margin-top:2rem}.success-actions button[data-v-6d63c6c5],.success-actions a[data-v-6d63c6c5]{min-height:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;padding:.85rem 1.15rem;font-weight:800;text-decoration:none}.success-actions button[data-v-6d63c6c5]{border:1px solid var(--portfolio-ink);background:var(--portfolio-ink);color:var(--portfolio-bg);cursor:pointer}.success-actions a[data-v-6d63c6c5]{border:1px solid var(--portfolio-ink);color:var(--portfolio-ink);background:transparent}@media (max-width: 560px){.success-actions[data-v-6d63c6c5]{display:grid}.success-actions button[data-v-6d63c6c5],.success-actions a[data-v-6d63c6c5]{width:100%}}.career-header[data-v-25cea3ad]{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--portfolio-rule);background:var(--portfolio-bg);color:var(--portfolio-ink)}.header-inner[data-v-25cea3ad]{width:min(1200px,calc(100% - 4rem));min-height:76px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:2rem}.wordmark[data-v-25cea3ad]{display:inline-flex;align-items:center;min-height:44px;color:inherit;font-family:var(--portfolio-font-display);font-size:1.4rem;font-weight:600;white-space:nowrap}.wordmark[data-v-25cea3ad]{gap:.65rem}.wordmark-dot[data-v-25cea3ad]{color:var(--portfolio-accent)}.portrait-mark[data-v-25cea3ad]{display:block;flex:0 0 auto;width:44px;height:44px;padding:2px;object-fit:contain;background:#f0f0ee;border-radius:50%}.desktop-nav[data-v-25cea3ad]{display:flex;align-items:center;gap:clamp(1rem,2.2vw,2.2rem)}.desktop-nav a[data-v-25cea3ad],.mobile-nav a[data-v-25cea3ad]{color:inherit;font-size:.85rem;font-weight:600}.desktop-nav a[data-v-25cea3ad]{position:relative;padding-block:.45rem}.desktop-nav a[data-v-25cea3ad]:after{position:absolute;right:0;bottom:.2rem;left:0;height:1px;background:var(--portfolio-accent);content:"";transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.22,1,.36,1)}.desktop-nav a[data-v-25cea3ad]:hover:after,.desktop-nav a[data-v-25cea3ad]:focus-visible:after,.desktop-nav a[aria-current=location][data-v-25cea3ad]:after{transform:scaleX(1)}.desktop-nav a[data-v-25cea3ad]:hover,.mobile-nav a[data-v-25cea3ad]:hover,.desktop-nav a[aria-current=location][data-v-25cea3ad],.mobile-nav a[aria-current=location][data-v-25cea3ad]{color:var(--portfolio-accent)}.header-actions[data-v-25cea3ad],.languages[data-v-25cea3ad]{display:flex;align-items:center;gap:.65rem}.languages button[data-v-25cea3ad],.menu-button[data-v-25cea3ad]{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 .15rem;border:0;background:transparent;color:inherit;font-size:.75rem;font-weight:650;cursor:pointer}.languages button[aria-pressed=true][data-v-25cea3ad]{color:var(--portfolio-accent);text-decoration:underline;text-underline-offset:.4em}.languages button[data-v-25cea3ad]:hover,.menu-button[data-v-25cea3ad]:hover{color:var(--portfolio-accent)}.languages button[data-v-25cea3ad]:active,.menu-button[data-v-25cea3ad]:active{background:color-mix(in srgb,var(--portfolio-accent) 12%,transparent)}.menu-button[data-v-25cea3ad]{display:none}.skip-link[data-v-25cea3ad]{position:absolute;left:1rem;top:-5rem;z-index:10;display:inline-flex;align-items:center;min-height:44px;padding:.65rem;background:var(--portfolio-ink);color:var(--portfolio-bg)}.skip-link[data-v-25cea3ad]:focus-visible{top:1rem}.mobile-nav[data-v-25cea3ad]{display:grid;gap:0;padding:0 1.25rem 1.5rem}.mobile-nav a[data-v-25cea3ad]{padding:.8rem 0;border-top:1px solid color-mix(in srgb,var(--portfolio-ink) 25%,transparent)}@media (max-width: 1100px){.header-inner[data-v-25cea3ad]{width:calc(100% - 2.5rem)}.desktop-nav[data-v-25cea3ad]{display:none}.menu-button[data-v-25cea3ad]{display:inline-block}}@media (max-width: 640px){.header-inner[data-v-25cea3ad]{width:calc(100% - 2rem);min-height:66px;gap:.5rem}.wordmark[data-v-25cea3ad]{font-size:1.25rem}.header-actions[data-v-25cea3ad],.languages[data-v-25cea3ad]{gap:0}}@media (prefers-reduced-motion: reduce){.desktop-nav a[data-v-25cea3ad]:after{transition:none}}@media (max-width: 640px){.portrait-mark[data-v-25cea3ad]{width:38px;height:38px}.wordmark[data-v-25cea3ad]{gap:.45rem;font-size:1.05rem}}@media (max-width: 380px){.wordmark-name[data-v-25cea3ad]{display:none}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}body{font-family:var(--portfolio-font-sans);color:var(--portfolio-ink)!important;margin:0;padding:0;background:var(--portfolio-bg)!important;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none}.layout-wrapper{background:var(--portfolio-bg)!important;min-height:100vh}.layout-main-container{display:flex;flex-direction:column;min-height:100vh;justify-content:space-between;padding:2.75rem clamp(1.25rem,6vw,8rem) 6rem;transition:margin-left .2s,padding .3s cubic-bezier(.4,0,.2,1);background:transparent!important;z-index:1;position:relative;overflow-x:hidden}.layout-main{flex:1 1 auto}@media screen and (max-width: 768px){.layout-main-container{padding:2rem 1.25rem 5rem!important}}@media screen and (min-width: 769px) and (max-width: 1024px){.layout-main-container{padding:2.25rem 2rem 5rem!important}}@media screen and (min-width: 1025px) and (max-width: 1500px){.layout-main-container{padding:2.5rem clamp(2rem,4vw,5rem) 4.5rem!important}}.layout-main-container:has(.portfolio-page){overflow-x:visible!important;padding-left:0!important;padding-right:0!important}:root{--portfolio-font-sans: Geist, "Helvetica Neue", Arial, sans-serif;--portfolio-font-display: Geist, "Helvetica Neue", Arial, sans-serif;--portfolio-font-mono: "Cascadia Mono", "SF Mono", Consolas, monospace;--portfolio-bg: #111214;--portfolio-surface: #20262d;--portfolio-ink: #f0f0ee;--portfolio-muted: #aeb5bc;--portfolio-line: #f0f0ee;--portfolio-rule: color-mix(in srgb, var(--portfolio-ink) 25%, transparent);--portfolio-deep-wine: #111214;--portfolio-burgundy: #b2bec8;--portfolio-coral-surface: #111214;--portfolio-coral-text: #f0f0ee;--portfolio-blue-surface: #111214;--portfolio-blue-text: #b2bec8;--portfolio-khaki: var(--portfolio-coral-surface);--portfolio-blue-grey: var(--portfolio-blue-surface);--portfolio-accent: #b2bec8;--portfolio-blue: var(--portfolio-blue-surface);--portfolio-mint: var(--portfolio-blue-surface);--portfolio-coral: var(--portfolio-coral-surface);--portfolio-shadow: rgba(47, 52, 54, .14);--general-text: var(--portfolio-ink);--light-blue: var(--portfolio-blue-surface);--bg-black: var(--portfolio-bg)}*{box-sizing:border-box}html{color-scheme:dark;scroll-behavior:smooth}body{margin:0;background:var(--portfolio-bg);color:var(--portfolio-ink)}a{text-decoration:none}a,button{touch-action:manipulation;-webkit-tap-highlight-color:rgba(178,190,200,.2)}button,input,textarea,select{font:inherit}body{font-family:var(--portfolio-font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none}.layout-main-container:has(.career-page,.case-study-page){padding:0!important;overflow-x:clip}::selection{background:var(--portfolio-blue-text);color:var(--portfolio-surface)}:focus-visible{outline:2px solid var(--portfolio-accent);outline-offset:4px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
