@import"https://fonts.googleapis.com/css2?family=Pinyon+Script&display=swap";:root{--accent: #1D9E75;--accent-light: #E1F5EE;--accent-dark: #085041;--accent-text: #085041;--font-display: "DM Serif Display", serif;--font-body: "Outfit", sans-serif;--font-mono: "DM Mono", monospace;--bg: #F9F9F7;--surface: #F2F2EF;--border: .5px solid rgba(0, 0, 0, .12);--text-primary: #111110;--text-muted: #6B6B66;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--container: 1100px;--section-gap: 7rem}@media(prefers-color-scheme:dark){:root{--bg: #111110;--surface: #1A1A18;--border: .5px solid rgba(255, 255, 255, .1);--text-primary: #EEEEE8;--text-muted: #7A7A74;--accent-text: #1D9E75;--accent-light: rgba(29, 158, 117, .12)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-body);background-color:var(--bg);color:var(--text-primary);scroll-behavior:smooth;font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{line-height:1.65;overflow-x:hidden}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:2rem}@media(max-width:640px){.container{padding-inline:1.25rem}}.section{padding-block:var(--section-gap)}.section+.section{border-top:var(--border)}.tag{display:inline-block;font-family:var(--font-mono);font-size:10px;font-weight:400;letter-spacing:.02em;padding:3px 7px;background:var(--surface);border:var(--border);border-radius:var(--radius-sm);color:var(--text-muted);white-space:nowrap}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-up{opacity:0;animation:fadeUp .55s cubic-bezier(.22,1,.36,1) forwards}.fade-up.delay-1{animation-delay:.08s}.fade-up.delay-2{animation-delay:.16s}.fade-up.delay-3{animation-delay:.24s}.fade-up.delay-4{animation-delay:.32s}.fade-up.delay-5{animation-delay:.4s}.reveal{opacity:0;transform:translateY(8px);transition:opacity .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1)}.reveal.visible{opacity:1;transform:translateY(0)}.hero[data-astro-cid-bbe6dxrz]{padding-top:5rem;padding-bottom:5rem}.hero-inner[data-astro-cid-bbe6dxrz]{display:grid;grid-template-columns:1fr auto;gap:5rem;align-items:end}.hero-left[data-astro-cid-bbe6dxrz]{max-width:600px}.hero-location[data-astro-cid-bbe6dxrz]{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:1rem}.hero-name[data-astro-cid-bbe6dxrz]{font-family:var(--font-display);font-size:clamp(3.5rem,8vw,6.5rem);font-weight:400;line-height:1;letter-spacing:-.02em;color:var(--text-primary);margin-bottom:.75rem}.hero-title-label[data-astro-cid-bbe6dxrz]{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:1.75rem}.hero-pitch[data-astro-cid-bbe6dxrz]{font-size:1.0625rem;font-weight:300;line-height:1.75;color:var(--text-muted);max-width:48ch;margin-bottom:2rem}.hero-ctas[data-astro-cid-bbe6dxrz]{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.cta-primary[data-astro-cid-bbe6dxrz]{font-family:var(--font-mono);font-size:11px;font-weight:500;color:var(--accent-text);background:var(--accent-light);border:.5px solid var(--accent);border-radius:var(--radius-sm);padding:6px 12px;transition:opacity .2s}.cta-primary[data-astro-cid-bbe6dxrz]:hover{opacity:.75}.cta-link[data-astro-cid-bbe6dxrz]{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);border-bottom:.5px solid currentColor;padding-bottom:1px;transition:color .2s}.cta-link[data-astro-cid-bbe6dxrz]:hover{color:var(--text-primary)}.hero-photo[data-astro-cid-bbe6dxrz]{width:280px;flex-shrink:0}.photo-wrap[data-astro-cid-bbe6dxrz]{position:relative;width:280px;height:360px;border-radius:var(--radius-lg);overflow:hidden}.photo[data-astro-cid-bbe6dxrz]{width:100%;height:100%;object-fit:cover;object-position:50% 15%;display:block;filter:grayscale(1) contrast(1.1) brightness(.95);transform:scale(1.65);transform-origin:center}.photo-overlay[data-astro-cid-bbe6dxrz]{position:absolute;inset:0;background:#1d9e75;mix-blend-mode:multiply;opacity:.55;pointer-events:none}@media(max-width:860px){.hero-inner[data-astro-cid-bbe6dxrz]{grid-template-columns:1fr;gap:2.5rem}.hero-photo[data-astro-cid-bbe6dxrz]{width:200px}.photo-wrap[data-astro-cid-bbe6dxrz]{width:200px;height:260px}}@media(max-width:480px){.hero-photo[data-astro-cid-bbe6dxrz]{display:none}}.section-label[data-astro-cid-n4qxztk5]{display:flex;align-items:center;gap:.75rem;margin-bottom:2.5rem}.section-label[data-astro-cid-n4qxztk5]:before{content:"";display:block;width:24px;height:.5px;background:var(--accent);flex-shrink:0}span[data-astro-cid-n4qxztk5]{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.exp-section[data-astro-cid-xpq65ryk]{position:relative;overflow:hidden}.exp-section[data-astro-cid-xpq65ryk]:before{content:"EXPERIENCE";position:absolute;top:3rem;right:-1rem;font-family:var(--font-display);font-size:clamp(5rem,14vw,11rem);font-weight:400;color:var(--text-primary);opacity:.032;pointer-events:none;user-select:none;white-space:nowrap;line-height:1;letter-spacing:-.03em}.exp-head[data-astro-cid-xpq65ryk]{display:flex;justify-content:space-between;align-items:center;margin-bottom:0}.exp-count[data-astro-cid-xpq65ryk]{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:var(--text-muted)}.exp-list[data-astro-cid-xpq65ryk]{display:flex;flex-direction:column}.exp-row[data-astro-cid-xpq65ryk]{border-bottom:var(--border);opacity:0;transform:translateY(20px);transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1)}.exp-row[data-astro-cid-xpq65ryk].visible{opacity:1;transform:translateY(0)}.exp-row[data-astro-cid-xpq65ryk]:nth-child(1){transition-delay:.05s}.exp-row[data-astro-cid-xpq65ryk]:nth-child(2){transition-delay:.15s}.exp-row[data-astro-cid-xpq65ryk]:nth-child(3){transition-delay:.25s}.exp-row-header[data-astro-cid-xpq65ryk]{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;padding-block:1.875rem;flex-wrap:wrap}.exp-row-left[data-astro-cid-xpq65ryk]{display:flex;flex-direction:column;gap:.3rem}.exp-company[data-astro-cid-xpq65ryk]{font-family:var(--font-display);font-size:clamp(1.375rem,2.8vw,1.875rem);font-weight:400;color:var(--text-primary);line-height:1.1;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.exp-role[data-astro-cid-xpq65ryk]{font-family:var(--font-mono);font-size:11px;letter-spacing:.07em;color:var(--accent);text-transform:uppercase}.exp-date[data-astro-cid-xpq65ryk]{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);white-space:nowrap;padding-top:.4rem;letter-spacing:.04em}.badge-wip[data-astro-cid-xpq65ryk]{font-family:var(--font-mono);font-size:9px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--accent-text);background:var(--accent-light);border:.5px solid var(--accent);border-radius:var(--radius-sm);padding:2px 7px;vertical-align:middle}.exp-details[data-astro-cid-xpq65ryk]{display:flex;flex-direction:column;gap:.875rem;padding-bottom:1.875rem}.exp-bullets[data-astro-cid-xpq65ryk]{list-style:none;display:flex;flex-direction:column;gap:.5rem}.exp-bullets[data-astro-cid-xpq65ryk] li[data-astro-cid-xpq65ryk]{font-size:.9375rem;font-weight:300;color:var(--text-muted);line-height:1.6;padding-left:1.1rem;position:relative;max-width:72ch}.exp-bullets[data-astro-cid-xpq65ryk] li[data-astro-cid-xpq65ryk]:before{content:"·";position:absolute;left:0;color:var(--accent);font-weight:700}.exp-tags[data-astro-cid-xpq65ryk]{display:flex;flex-wrap:wrap;gap:.35rem}@media(max-width:640px){.exp-row-header[data-astro-cid-xpq65ryk]{flex-direction:column;gap:.4rem}.exp-date[data-astro-cid-xpq65ryk]{padding-top:0}}.stack-section[data-astro-cid-rlzglfcb]{position:relative}.stack-grid[data-astro-cid-rlzglfcb]{display:flex;flex-wrap:wrap;gap:.5rem}.stack-item[data-astro-cid-rlzglfcb]{display:flex;align-items:center;gap:.5rem;padding:7px 14px 7px 10px;border:var(--border);border-radius:100px;background:var(--surface);opacity:0;transform:translateY(8px);transition:opacity .45s cubic-bezier(.22,1,.36,1),transform .45s cubic-bezier(.22,1,.36,1),background .2s,border-color .2s;transition-delay:calc(var(--i) * .04s + .05s)}.stack-item[data-astro-cid-rlzglfcb].visible{opacity:1;transform:translateY(0)}.stack-item[data-astro-cid-rlzglfcb]:hover{background:#1a1a18;border-color:#ffffff1a}.icon-wrap[data-astro-cid-rlzglfcb]{width:22px;height:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stack-icon[data-astro-cid-rlzglfcb]{width:22px;height:22px;object-fit:contain;display:block;filter:brightness(0) invert(1);opacity:.55;transition:opacity .2s}.stack-item[data-astro-cid-rlzglfcb]:hover .stack-icon[data-astro-cid-rlzglfcb]{opacity:1}.icon-wrap--empty[data-astro-cid-rlzglfcb]{width:22px;height:22px}.icon-dot[data-astro-cid-rlzglfcb]{width:4px;height:4px;border-radius:50%;background:var(--text-muted);display:block;margin:auto;transition:background .2s}.stack-item[data-astro-cid-rlzglfcb]:hover .icon-dot[data-astro-cid-rlzglfcb]{background:var(--accent)}.stack-name[data-astro-cid-rlzglfcb]{font-family:var(--font-mono);font-size:11px;font-weight:400;letter-spacing:.03em;color:var(--text-muted);transition:color .2s;white-space:nowrap}.stack-item[data-astro-cid-rlzglfcb]:hover .stack-name[data-astro-cid-rlzglfcb]{color:#fff}@media(max-width:480px){.stack-grid[data-astro-cid-rlzglfcb]{gap:.4rem}}.prof-list-wrapper[data-astro-cid-ba4pypxy]{background-color:#1a1a18;padding:4rem;border-radius:12px;margin-top:3rem;color:#eeeee8;box-shadow:0 20px 40px #00000026}.prof-grid-container[data-astro-cid-ba4pypxy]{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:0 6rem}.prof-grid-container[data-astro-cid-ba4pypxy]:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:#ffffff26;transform:translate(-50%)}.prof-list-item[data-astro-cid-ba4pypxy]{position:relative;display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:#eeeee8!important;padding:3rem 1rem;margin:0 -1rem;border-bottom:1px solid rgba(255,255,255,.1);border-radius:8px;transition:all .4s cubic-bezier(.23,1,.32,1);z-index:1;transform:scale(1)}.prof-list-item[data-astro-cid-ba4pypxy]:nth-last-child(1),.prof-list-item[data-astro-cid-ba4pypxy]:nth-last-child(2){border-bottom-color:transparent}.prof-list-item[data-astro-cid-ba4pypxy]:hover{transform:scale(1.03);z-index:10;background:#1a1a1880;border-bottom-color:transparent}.prof-light-border[data-astro-cid-ba4pypxy]{position:absolute;inset:0;border:1px solid var(--accent);box-shadow:0 0 20px #1d9e754d,inset 0 0 10px #1d9e7526;border-radius:8px;opacity:0;transition:opacity .4s ease;pointer-events:none;z-index:2}.prof-list-item[data-astro-cid-ba4pypxy]:hover .prof-light-border[data-astro-cid-ba4pypxy]{opacity:1}.prof-hover-bg[data-astro-cid-ba4pypxy]{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .4s ease;z-index:-1;pointer-events:none;border-radius:8px;overflow:hidden}.prof-hover-bg[data-astro-cid-ba4pypxy]:after{content:"";position:absolute;inset:0;background:#1a1a18d9}.prof-list-item[data-astro-cid-ba4pypxy]:hover .prof-hover-bg[data-astro-cid-ba4pypxy]{opacity:1}.prof-content[data-astro-cid-ba4pypxy]{display:flex;justify-content:space-between;align-items:center;width:100%;z-index:3}.prof-number[data-astro-cid-ba4pypxy]{font-family:Pinyon Script,cursive;font-size:6rem;color:var(--accent)!important;line-height:.8;font-weight:400}.prof-details[data-astro-cid-ba4pypxy]{text-align:right;display:flex;flex-direction:column;justify-content:center}.prof-title[data-astro-cid-ba4pypxy]{font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:400;line-height:1.2;color:#fff!important;margin:0}.prof-desc[data-astro-cid-ba4pypxy]{font-family:DM Mono,monospace;font-size:.75rem;color:#fffc!important;margin-top:.5rem;max-width:200px;margin-left:auto;text-transform:uppercase;letter-spacing:.05em}.prof-cta[data-astro-cid-ba4pypxy]{font-family:DM Mono,monospace;font-size:.65rem;color:var(--accent);text-transform:uppercase;letter-spacing:.1em;margin-top:1rem;opacity:0;transform:translateY(10px);transition:all .4s cubic-bezier(.23,1,.32,1)}.prof-list-item[data-astro-cid-ba4pypxy]:hover .prof-cta[data-astro-cid-ba4pypxy]{opacity:1;transform:translateY(0)}@media(max-width:900px){.prof-list-wrapper[data-astro-cid-ba4pypxy]{padding:2rem 1.5rem}.prof-grid-container[data-astro-cid-ba4pypxy]{grid-template-columns:1fr;gap:0}.prof-grid-container[data-astro-cid-ba4pypxy]:after{display:none}.prof-list-item[data-astro-cid-ba4pypxy]{border-bottom:1px solid rgba(255,255,255,.2);margin:0;padding:2rem 1rem}.prof-list-item[data-astro-cid-ba4pypxy]:nth-last-child(2){border-bottom:1px solid rgba(255,255,255,.2)}.prof-number[data-astro-cid-ba4pypxy]{font-size:4.5rem}.prof-title[data-astro-cid-ba4pypxy]{font-size:1.3rem}}.collage-container[data-astro-cid-u3h7bont]{position:relative;width:100%;padding:4rem 2rem;background:#f4f1ea;border:1px solid rgba(0,0,0,.05);border-radius:8px;overflow:hidden}.grid-background[data-astro-cid-u3h7bont]{position:absolute;inset:0;background-image:linear-gradient(to right,rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(0,0,0,.05) 1px,transparent 1px);background-size:40px 40px;pointer-events:none}.collage-inner[data-astro-cid-u3h7bont]{position:relative;width:100%;display:flex;flex-wrap:wrap;justify-content:center;gap:6rem;z-index:1}.project-group-link[data-astro-cid-u3h7bont]{display:block;text-decoration:none;color:inherit;outline:none}.project-group[data-astro-cid-u3h7bont]{display:flex;flex-direction:column;gap:1.5rem;width:320px;transform:rotate(var(--r));transition:transform .4s cubic-bezier(.23,1,.32,1)}.project-group-link[data-astro-cid-u3h7bont]:hover .project-group[data-astro-cid-u3h7bont],.project-group-link[data-astro-cid-u3h7bont]:focus .project-group[data-astro-cid-u3h7bont]{transform:rotate(0) scale(1.05);z-index:50}.images-stack[data-astro-cid-u3h7bont]{position:relative;width:100%;aspect-ratio:4/3}.image-wrapper[data-astro-cid-u3h7bont]{position:absolute;inset:0;background:#fff;padding:10px;box-shadow:0 10px 30px #0000001a;transform:rotate(var(--ir));z-index:var(--iz);transition:transform .4s ease,z-index .4s ease}.project-group-link[data-astro-cid-u3h7bont]:hover .image-wrapper[data-astro-cid-u3h7bont]{transform:rotate(calc(var(--ir) * .5))}.collage-img[data-astro-cid-u3h7bont]{width:100%;height:100%;object-fit:cover;filter:sepia(.1) contrast(1.05)}.tape[data-astro-cid-u3h7bont]{position:absolute;width:80px;height:25px;background:#ebe6c8cc;backdrop-filter:blur(2px);box-shadow:inset 0 0 5px #0000000d,0 2px 4px #0000000d;z-index:100}.tape[data-astro-cid-u3h7bont].top-right{top:-10px;right:-20px;transform:rotate(35deg)}.tape[data-astro-cid-u3h7bont].bottom-left{bottom:-10px;left:-20px;transform:rotate(45deg)}.project-info[data-astro-cid-u3h7bont]{text-align:center;background:#ffffffe6;padding:1rem;border-radius:4px;box-shadow:0 4px 12px #0000000d;transform:rotate(calc(var(--r) * -.5));transition:transform .3s ease}.project-group-link[data-astro-cid-u3h7bont]:hover .project-info[data-astro-cid-u3h7bont]{transform:rotate(0)}.project-title-hand[data-astro-cid-u3h7bont]{font-family:"DM Serif Display",serif;font-size:1.5rem;color:var(--accent);margin-bottom:.25rem}.project-desc-mini[data-astro-cid-u3h7bont]{font-size:.85rem;color:var(--text-muted);font-weight:400}@media(max-width:768px){.collage-inner[data-astro-cid-u3h7bont]{gap:4rem}.project-group[data-astro-cid-u3h7bont]{width:100%;max-width:320px;transform:rotate(0)}.project-info[data-astro-cid-u3h7bont]{transform:rotate(0)}}.proj-section[data-astro-cid-amng4zvp]{position:relative;padding:8rem 0;background:#f4f1ea;overflow:hidden}.section-header[data-astro-cid-amng4zvp]{margin-bottom:2rem}.section-header[data-astro-cid-amng4zvp].separator{margin-top:8rem}.section-title[data-astro-cid-amng4zvp]{font-family:"DM Serif Display",serif;font-size:2.5rem;color:var(--accent);margin-top:1rem;font-weight:400}.container-full[data-astro-cid-amng4zvp]{width:100%;max-width:1600px;margin:0 auto;padding:0 2rem}.edu-row[data-astro-cid-2gvrk3wr]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.edu-school[data-astro-cid-2gvrk3wr]{font-family:var(--font-display);font-size:1.375rem;font-weight:400;color:var(--text-primary);margin-bottom:.25rem}.edu-degree[data-astro-cid-2gvrk3wr]{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--accent);text-transform:uppercase}.edu-period[data-astro-cid-2gvrk3wr]{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);white-space:nowrap;padding-top:.3rem}.edu-note[data-astro-cid-2gvrk3wr]{font-style:italic;font-size:.9375rem;font-weight:300;color:var(--text-muted);max-width:52ch;line-height:1.65}.contact-inner[data-astro-cid-xmivup5a]{display:flex;flex-direction:column;gap:2rem;padding-bottom:4rem}.contact-headline[data-astro-cid-xmivup5a]{font-family:var(--font-display);font-size:clamp(1.75rem,4vw,2.75rem);font-weight:400;color:var(--text-primary);line-height:1.15;max-width:20ch}.contact-links[data-astro-cid-xmivup5a]{display:flex;flex-direction:column;gap:0}.contact-item[data-astro-cid-xmivup5a]{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding-block:.875rem;border-bottom:var(--border);transition:color .2s;flex-wrap:wrap}.contact-item[data-astro-cid-xmivup5a]:first-child{border-top:var(--border)}.contact-item[data-astro-cid-xmivup5a]:hover .contact-value[data-astro-cid-xmivup5a]{color:var(--accent)}.contact-label[data-astro-cid-xmivup5a]{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.contact-value[data-astro-cid-xmivup5a]{font-size:.9375rem;font-weight:400;color:var(--text-primary);transition:color .2s}.site-footer[data-astro-cid-xmivup5a]{display:flex;justify-content:space-between;align-items:center;padding-top:2rem;border-top:var(--border);flex-wrap:wrap;gap:.5rem}.footer-copy[data-astro-cid-xmivup5a],.footer-note[data-astro-cid-xmivup5a]{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--text-muted)}
