@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/quick-scan/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/quick-scan/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/quick-scan/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/quick-scan/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/quick-scan/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/quick-scan/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/quick-scan/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_c1f5d4{font-family:Inter,Inter Fallback;font-style:normal}.__variable_c1f5d4{--font-inter:"Inter","Inter Fallback"}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(/quick-scan/_next/static/media/999e639cd9d85971-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(/quick-scan/_next/static/media/9af6411484c7e20a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(/quick-scan/_next/static/media/e6b5cfd5a74e1cae-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(/quick-scan/_next/static/media/6aacc40b7795b725-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(/quick-scan/_next/static/media/67110d8fe39c5e84-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(/quick-scan/_next/static/media/046b90749014f852-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(/quick-scan/_next/static/media/3703c28dcda155b1-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fira Code Fallback;src:local("Arial");ascent-override:73.56%;descent-override:23.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_ff6ae7{font-family:Fira Code,Fira Code Fallback;font-style:normal}.__variable_ff6ae7{--font-mono:"Fira Code","Fira Code Fallback"}@font-face{font-family:Indie Flower;font-style:normal;font-weight:400;font-display:swap;src:url(/quick-scan/_next/static/media/0bbebd155e89f1d0-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Indie Flower;font-style:normal;font-weight:400;font-display:swap;src:url(/quick-scan/_next/static/media/fad5e1188f09afdc-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Indie Flower Fallback;src:local("Arial");ascent-override:103.05%;descent-override:51.84%;line-gap-override:0.00%;size-adjust:94.19%}.__className_d02bfd{font-family:Indie Flower,Indie Flower Fallback;font-weight:400;font-style:normal}.__variable_d02bfd{--font-hand:"Indie Flower","Indie Flower Fallback"}:root{--color-mat:#1f432f;--color-mat-deep:#0f301f;--color-grid-minor:#3a544559;--color-grid-major:#d2d57438;--color-mat-guide:#d2d574;--color-on-mat:#e8e5d6;--color-heading-on-mat:#f4f2ea;--color-accent:#f57050;--color-accent-hover:#d95737;--color-shadow:#091a1138;--content-max-canvas:72rem;--ease-out:cubic-bezier(0.22,1,0.36,1);--dur-fast:150ms}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body,html{margin:0;padding:0;overflow-x:clip}body{min-height:100vh;background:var(--color-mat);color:var(--color-on-mat);font-family:var(--font-inter),Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}.drafting-mat{position:fixed;inset:0;z-index:-10;width:100vw;height:100vh;overflow:hidden;pointer-events:none;background:var(--color-mat)}.mat-radial{background:radial-gradient(ellipse 120% 90% at 50% 45%,var(--color-mat) 0,var(--color-mat-deep) 100%)}.mat-grid,.mat-radial{position:absolute;inset:0}.mat-grid{background-position:0 100%}.mat-grid-minor{background-image:linear-gradient(var(--color-grid-minor) 1px,transparent 1px),linear-gradient(90deg,var(--color-grid-minor) 1px,transparent 1px);background-size:24px 24px}.mat-grid-major{background-image:linear-gradient(var(--color-grid-major) 1px,transparent 1px),linear-gradient(90deg,var(--color-grid-major) 1px,transparent 1px);background-size:120px 120px}.mat-guides{position:absolute;inset:0;width:100%;height:100%;opacity:.28;mask-image:radial-gradient(ellipse 65% 75% at 50% 42%,transparent 20%,black 72%);-webkit-mask-image:radial-gradient(ellipse 65% 75% at 50% 42%,transparent 20%,black 72%)}.guide-dashed,.guide-stroke{stroke:var(--color-mat-guide);stroke-width:1;vector-effect:non-scaling-stroke}.guide-dashed{stroke-dasharray:8 7}.guide-angle,.guide-number{fill:var(--color-mat-guide);font-family:ui-sans-serif,system-ui,sans-serif;-webkit-user-select:none;user-select:none}.guide-angle{font-size:11px}.guide-number{font-size:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.site-canvas{position:relative;z-index:10;width:100%;max-width:var(--content-max-canvas);min-height:100vh;margin:0 auto;padding:24px}.navbar-wrapper{position:sticky;top:16px;z-index:40;display:flex;width:100%;justify-content:center;margin-bottom:32px}.navbar{display:flex;width:max-content;max-width:100%;min-width:0;flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:4px;overflow-x:auto;padding:6px 8px;border:2px solid rgba(232,229,214,.3);border-radius:9999px;background:rgba(31,67,47,.8);box-shadow:3px 4px 0 var(--color-shadow);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);scrollbar-width:none}.navbar::-webkit-scrollbar{display:none}.nav-link{flex-shrink:0;padding:6px 12px;border-radius:9999px;color:rgba(232,229,214,.8);font-size:14px;font-weight:500;line-height:20px;transition:color var(--dur-fast) ease,background-color var(--dur-fast) ease}.nav-link:hover{color:var(--color-on-mat);background:rgba(15,48,31,.5)}.nav-connect:focus-visible,.nav-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.nav-connect{display:inline-flex;height:32px;flex-shrink:0;align-items:center;justify-content:center;margin-left:4px;padding:0 12px;border-radius:9999px;background:var(--color-accent);color:#ffffff;font-size:12px;font-weight:500;line-height:1;white-space:nowrap;transition:transform var(--dur-fast) ease,background-color var(--dur-fast) ease}.nav-connect:hover{background:var(--color-accent-hover)}.nav-connect:active{transform:translateY(1px)}.foundation-preview{min-height:150vh}@media (max-width:1023px){.mat-guides{display:none}}@media (max-width:639px){.site-canvas{padding:16px}.navbar{gap:0;isolation:isolate;padding:2px 4px}.nav-link{padding:2px 6px;font-size:11px;line-height:1}.nav-connect{height:24px;margin-left:0;padding:0 8px;font-size:10px}}:root{--receipt-paper:#f5f3ed;--receipt-ink:#1d211f;--receipt-muted:#696d69;--receipt-rule:#b8b8b0}.about-stage{display:flex;width:100%;justify-content:center;padding-top:28px;padding-bottom:58px}.receipt-shell{position:relative;width:100%;max-width:1104px;color:var(--receipt-ink);transform:rotate(-.28deg);transform-origin:center center;filter:drop-shadow(0 14px 20px rgba(5,20,12,.18)) drop-shadow(3px 5px 0 rgba(5,20,12,.08));transition:transform .26s var(--ease-out),filter .26s var(--ease-out)}.receipt-shell:hover{transform:translateY(-2px) rotate(-.08deg);filter:drop-shadow(0 17px 24px rgba(5,20,12,.2)) drop-shadow(3px 6px 0 rgba(5,20,12,.07))}.receipt-teeth{position:absolute;left:0;z-index:2;display:block;width:100%;height:8px;overflow:visible;pointer-events:none}.receipt-teeth-top{top:-7px}.receipt-teeth-bottom{bottom:-7px;transform:rotate(180deg)}.about-receipt{position:relative;z-index:1;width:100%;min-height:408px;padding:20px 24px 18px;background:var(--receipt-paper);color:var(--receipt-ink)}.receipt-header{display:flex;align-items:center;justify-content:space-between;min-height:28px;font-family:var(--font-mono),"Fira Code",monospace;font-size:13px;font-weight:600;letter-spacing:-.02em}.receipt-header time{font-weight:500}.receipt-date-pending{visibility:hidden}.receipt-rule{width:100%;margin-top:10px;margin-bottom:18px;border-top:1px dashed var(--receipt-rule)}.receipt-rule-bottom{margin-top:19px;margin-bottom:14px}.receipt-body{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.94fr) minmax(0,1.03fr);align-items:start;gap:26px}.receipt-photo{position:relative;width:100%;aspect-ratio:4/3;margin:0;overflow:hidden;background:#ffffff}.receipt-photo-image{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 48%}.receipt-biography{padding-top:1px;color:#222724;font-size:14px;font-weight:400;line-height:1.48}.receipt-biography p{margin:0}.receipt-biography p+p{margin-top:12px}.receipt-metadata{display:flex;flex-direction:column;gap:16px;padding-top:2px}.metadata-row{display:flex;width:100%;min-width:0;align-items:baseline}.metadata-label,.metadata-value{font-family:var(--font-mono),"Fira Code",monospace;font-size:11px;line-height:1.3}.metadata-label{flex-shrink:0;font-weight:600}.metadata-dots{min-width:14px;flex:1 1;margin:0 7px 3px;border-bottom:1px dotted #a3a59f}.metadata-value{flex-shrink:0;font-weight:500;text-align:right;white-space:nowrap}.receipt-links{display:grid;grid-template-columns:repeat(4,max-content);align-items:center;justify-content:space-between;gap:20px;font-family:var(--font-mono),"Fira Code",monospace;font-size:12px;line-height:1}.receipt-social-item{justify-content:flex-start}.receipt-links .receipt-email-link,.receipt-links a{display:inline-flex;align-items:center;gap:8px;background:transparent;border:0;padding:0;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:opacity .15s ease,transform .15s ease}.receipt-links .receipt-email-link span,.receipt-links a span{text-decoration:none}.receipt-links .receipt-email-link:hover,.receipt-links a:hover{opacity:.65;transform:translateX(2px)}.receipt-links .receipt-email-link:focus-visible,.receipt-links a:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.next-pass-space{width:100%;height:300px}@media (max-width:900px){.receipt-shell{max-width:760px}.receipt-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 28px}.receipt-metadata{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 24px}}@media (max-width:639px){.about-stage{padding-top:30px;padding-bottom:44px}.receipt-shell{width:min(88vw,330px);transform:rotate(-.22deg)}.receipt-shell:hover{transform:translateY(-1px) rotate(-.08deg)}.about-receipt{min-height:auto;padding:17px 16px 18px}.receipt-header{font-size:12px}.receipt-rule{margin-top:9px;margin-bottom:16px}.receipt-body{display:flex;flex-direction:column;gap:15px}.receipt-biography{font-size:13px;line-height:1.48}.receipt-biography p+p{margin-top:10px}.receipt-metadata{display:flex;width:100%;flex-direction:column;gap:13px;padding-top:4px}.metadata-label,.metadata-value{font-size:10px}.receipt-rule-bottom{margin-top:18px}.receipt-links{display:flex;flex-direction:column;align-items:flex-start;gap:9px;font-size:11px}.next-pass-space{height:160px}}.receipt-biography{line-height:1.5}.receipt-biography p+p{margin-top:13px}.receipt-metadata{gap:13px}.metadata-row{min-height:16px}@media (min-width:901px){.receipt-body{grid-template-columns:minmax(0,1.06fr) minmax(0,.96fr) minmax(0,1.1fr);gap:24px}}:root{--github-paper:#f4f2ea;--github-outline:#ffffff;--github-ink-muted:#54615a;--github-ink-subtle:#7c8a82;--github-tape:#ffd16a73;--github-0:#e0ebe4;--github-1:#8ae1af;--github-2:#45bf82;--github-3:#00925a;--github-4:#005d36}.github-stage{display:flex;width:100%;justify-content:center;margin-top:-4px;padding-bottom:76px}.github-object{position:relative;width:min(900px,100%);transform:none}.github-tape{position:absolute;top:-9px;z-index:5;width:68px;height:21px;background:var(--github-tape);pointer-events:none}.github-tape-left{left:17px;transform:rotate(-6deg)}.github-tape-right{right:17px;transform:rotate(8deg)}.github-card{position:relative;width:100%;padding:13px 14px 12px;border:4px solid var(--github-outline);border-radius:17px;background:var(--github-paper);color:var(--github-ink-muted);box-shadow:4px 6px 0 var(--color-shadow)}.github-inner{width:100%;min-width:0}.github-header{position:relative;z-index:20;display:flex;align-items:baseline;justify-content:space-between;width:100%;margin-bottom:9px;font-family:var(--font-inter),Inter,sans-serif;font-size:12px;line-height:1}.github-header p{margin:0;color:var(--github-ink-muted);font-weight:500}.github-profile-link{position:relative;z-index:40;display:inline-block;color:var(--github-ink-subtle);white-space:nowrap;transition:color .16s ease}.github-profile-link:focus-visible,.github-profile-link:hover{color:var(--color-accent)}.github-profile-link:focus-visible{outline:none}.github-profile-popover{position:absolute;right:-18px;bottom:calc(100% + 13px);z-index:100;display:block;width:170px;pointer-events:none;opacity:0;transform:translateY(10px) scale(.92) rotate(-5deg);transform-origin:74% 100%;transition:opacity .18s ease,transform .28s cubic-bezier(.22,1,.36,1)}.github-profile-link:focus-visible .github-profile-popover,.github-profile-link:hover .github-profile-popover{opacity:1;transform:translateY(0) scale(1) rotate(-3deg)}.github-polaroid{display:block;width:170px;padding:8px 8px 20px;background:#f5f3ed;box-shadow:3px 5px 0 rgba(9,26,17,.16),0 10px 18px rgba(9,26,17,.14)}.github-polaroid-image{position:relative;display:block;width:154px;aspect-ratio:1.62/1;overflow:hidden;background:#0d1117}.github-polaroid-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}.github-polaroid-label{position:absolute;right:0;bottom:2px;left:0;display:block;color:#272e2a;font-family:var(--font-hand),cursive;font-size:17px;line-height:1;text-align:center}.github-chart-scroll{width:100%;overflow:visible}.github-chart{width:fit-content;margin:0 auto}.github-month-row{display:flex;gap:5px}.github-day-spacer{width:30px;flex-shrink:0}.github-months{position:relative;height:14px;margin-bottom:6px;color:var(--github-ink-subtle);font-family:var(--font-inter),Inter,sans-serif;font-size:10px;line-height:1}.github-months span{position:absolute;top:0;white-space:nowrap}.github-grid-row{display:flex;width:100%;gap:5px}.github-days{display:flex;width:30px;height:102px;flex-shrink:0;flex-direction:column;justify-content:space-between;padding:2px 0;color:var(--github-ink-subtle);font-family:var(--font-inter),Inter,sans-serif;font-size:9px;line-height:1}.github-days span{display:flex;height:12px;align-items:center}.github-weeks{display:inline-flex;flex-shrink:0;gap:3px}.github-week{display:flex;flex-direction:column;gap:3px}.github-day{width:12px;height:12px;flex-shrink:0;border-radius:2px;outline:1px solid rgba(23,34,28,.015);transition:transform .12s ease,box-shadow .12s ease}.github-day:hover{position:relative;z-index:4;transform:scale(1.22);box-shadow:0 0 0 1px rgba(23,34,28,.22)}.github-day:focus-visible{position:relative;z-index:5;outline:2px solid var(--color-accent);outline-offset:1px}.gh-level-0{background:var(--github-0)}.gh-level-1{background:var(--github-1)}.gh-level-2{background:var(--github-2)}.gh-level-3{background:var(--github-3)}.gh-level-4{background:var(--github-4)}.github-legend-row{display:flex;width:100%;justify-content:flex-end;margin-top:7px;padding-left:35px;color:var(--github-ink-subtle);font-family:var(--font-inter),Inter,sans-serif;font-size:9px;line-height:1}.github-legend{display:flex;align-items:center;gap:4px}.github-legend-box{display:block;width:12px;height:12px;border-radius:2px}@media (max-width:900px){.github-stage{padding-right:8px;padding-left:8px}.github-card,.github-object{width:100%}.github-chart-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:5px;scrollbar-width:thin}.github-chart{margin:0 auto}.github-profile-popover{display:none}}.research-section{position:relative;width:100%;padding-top:14px;padding-bottom:116px}.research-heading-row{position:relative;z-index:5;display:flex;width:100%;align-items:center;gap:12px;margin-bottom:30px}.research-heading-row h2{margin:0;color:var(--color-heading-on-mat);font-size:27px;font-weight:650;line-height:1;letter-spacing:-.035em;text-transform:capitalize}.research-heading-line{margin-top:13px}.research-badge{display:flex;width:44px;height:44px;align-items:center;justify-content:center;border:4px solid #ffffff;border-radius:50%;background:#f4f2ea;color:var(--color-accent);box-shadow:3px 4px 0 var(--color-shadow);transform:rotate(7deg)}.research-installation{position:relative;width:calc(100vw - 1px);margin-left:calc(50% - 50vw);min-height:370px}.research-rope{position:absolute;z-index:2;top:0;left:0;width:100%;height:145px;overflow:visible;pointer-events:none}.research-rope path{fill:none;stroke:#b58a61;stroke-width:5;vector-effect:non-scaling-stroke;filter:drop-shadow(0 2px 1px rgba(9,26,17,.22))}.research-rope .research-rope-highlight{stroke:#d4aa7e;stroke-width:1.5;opacity:.72;filter:none}.research-cards{position:relative;z-index:4;display:grid;width:min(1180px,calc(100% - 72px));margin:0 auto;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px;padding-top:58px}.research-card{position:relative;display:flex;min-width:0;flex-direction:column;padding:16px 15px 14px;background:#f4f2ea;color:#17221c;box-shadow:4px 6px 0 rgba(9,26,17,.16),0 13px 22px rgba(9,26,17,.12);transform-origin:50% 0;transition:transform .26s cubic-bezier(.22,1,.36,1),box-shadow .26s ease}.research-card-1{transform:rotate(-2.2deg) translateY(2px)}.research-card-2{transform:rotate(1.4deg) translateY(13px)}.research-card-3{transform:rotate(-.8deg) translateY(4px)}.research-card-4{transform:rotate(1.9deg) translateY(15px)}.research-card-5{transform:rotate(-1.4deg) translateY(1px)}.research-card:hover{z-index:10;transform:rotate(0deg) translateY(-7px);box-shadow:5px 8px 0 rgba(9,26,17,.14),0 18px 28px rgba(9,26,17,.16)}.research-card-header{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono),monospace;font-size:10px;font-weight:600;color:#5d665f}.research-card-rule{width:100%;margin-top:8px;margin-bottom:10px;border-top:1px dashed #bbbcb5}.research-figure{display:block;width:100%;aspect-ratio:240/126;margin-bottom:12px;background:#e8e5db;color:#254934}.research-figure circle,.research-figure line,.research-figure path,.research-figure rect{fill:none;stroke:currentColor;stroke-width:1.7;vector-effect:non-scaling-stroke}.research-figure circle{fill:#f57050;stroke:#254934}.research-figure text{fill:#254934;font-family:var(--font-mono),monospace;font-size:12px}.research-figure-2{color:#3b5546}.research-figure-3,.research-figure-4,.research-figure-5{color:#31513e}.research-card-copy{flex:1 1}.research-status{margin-bottom:7px;color:var(--color-accent);font-family:var(--font-mono),monospace;font-size:9px;font-weight:600;letter-spacing:.06em}.research-card h3{margin:0 0 7px;color:#17221c;font-size:16px;font-weight:650;line-height:1.15;letter-spacing:-.025em}.research-card p{margin:0;color:#566159;font-size:11px;line-height:1.46}.research-card-footer{flex-wrap:wrap;gap:4px 8px;color:#677169;font-family:var(--font-mono),monospace;font-size:8px;line-height:1}.research-card-footer span:not(:last-child):after{content:" /";opacity:.52}@media (max-width:1050px){.research-installation{min-height:auto}.research-rope{display:none}.research-cards{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding-top:22px}.research-card{transform:none}.research-pin{display:none}}@media (max-width:639px){.research-section{padding-bottom:78px}.research-heading-row h2{font-size:24px}.research-badge{width:40px;height:40px}.research-cards{grid-template-columns:1fr;gap:20px}.research-card{max-width:330px;margin:0 auto}}.research-heading-row{display:none}.research-heading{position:relative;z-index:8;width:max-content;margin-bottom:28px}.research-heading-top{display:flex;align-items:center;gap:12px;height:46px}.research-heading-top h2{margin:0;color:var(--color-heading-on-mat);font-size:27px;font-weight:650;line-height:1;letter-spacing:-.035em}.research-heading .research-badge{flex-shrink:0;margin:0;transform:translateY(-1px) rotate(7deg)}.research-heading-line{display:block;width:42px;height:2px;margin-top:3px;background:var(--color-heading-on-mat)}.research-card-footer{display:flex;width:100%;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:13px;padding-top:9px;border-top:1px dotted #b9bbb4}.research-topics{display:flex;min-width:0;flex:1 1;flex-wrap:wrap;gap:4px 7px;color:#677169;font-family:var(--font-mono),monospace;font-size:7.5px;line-height:1.25}.research-topics span:not(:last-child):after{content:" /";opacity:.52}.research-github-button{display:inline-flex;width:25px;height:25px;flex-shrink:0;align-items:center;justify-content:center;border:1px solid #c8cbc4;border-radius:4px;background:#f7f5ed;color:#58625b;box-shadow:1px 1px 0 rgba(23,34,28,.08);transition:color .14s ease,border-color .14s ease,background-color .14s ease,transform .14s ease}.research-github-button:hover{color:var(--color-accent);border-color:rgba(245,112,80,.55);background:#ffffff;transform:translateY(-1px)}.research-github-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.research-cards{padding-top:61px}@media (max-width:639px){.research-heading-top h2{font-size:24px}.research-heading-top{height:42px}}.research-clothespin{position:absolute;z-index:14;top:-42px;left:50%;display:block;width:18px;height:67px;transform:translateX(-50%) rotate(-4deg);transform-origin:50% 25%;pointer-events:none;filter:drop-shadow(1.5px 2.5px 1.2px rgba(8,24,15,.3))}.research-clothespin-image{display:block;width:100%;height:100%;object-fit:contain}.research-card-2 .research-clothespin{transform:translateX(-50%) rotate(2deg)}.research-card-3 .research-clothespin{transform:translateX(-50%) rotate(-3deg)}.research-card-4 .research-clothespin{transform:translateX(-50%) rotate(2.5deg)}.research-card-5 .research-clothespin{transform:translateX(-50%) rotate(-2deg)}.research-rope-anchor{position:absolute;z-index:6;top:46px;width:58px;height:18px;background:linear-gradient(180deg,rgba(218,176,104,.72),rgba(190,145,77,.67));border:1px solid rgba(128,91,43,.12);box-shadow:0 2px 2px rgba(9,26,17,.14);pointer-events:none;transform-origin:center}.research-rope-anchor-left{left:46px;transform:rotate(-7deg)}.research-rope-anchor-right{right:46px;transform:rotate(7deg)}.research-rope-anchor:before{content:"";position:absolute;top:2px;right:3px;left:3px;height:1px;background:rgba(255,228,172,.34)}.research-rope-anchor:after{content:"";position:absolute;top:7px;right:0;left:0;height:4px;background:rgba(111,78,39,.07)}.research-pencil{position:absolute;z-index:4;top:190px;right:6.6vw;width:66px;pointer-events:none;transform:rotate(2deg);transform-origin:center}.research-pencil-image{display:block;width:100%;height:auto;object-fit:contain;filter:drop-shadow(4px 6px 3px rgba(7,23,14,.25))}.research-card{overflow:visible}@media (max-width:1200px){.research-pencil,.research-rope-anchor{display:none}}@media (max-width:1050px){.research-clothespin{display:none}}.experience-section{position:relative;z-index:10;margin-top:60px;padding-bottom:104px}.experience-paper{position:relative;width:min(960px,calc(100% - 48px));margin:0 auto;padding:38px 46px 42px;background:#f4f2ea;color:#17221c;border-radius:6px;box-shadow:4px 6px 0 rgba(9,26,17,.16),0 16px 28px rgba(9,26,17,.14)}.experience-tape{position:absolute;z-index:12;width:62px;height:20px;background:linear-gradient(180deg,rgba(218,176,104,.78),rgba(190,145,77,.72));border:1px solid rgba(128,91,43,.12);box-shadow:0 2px 3px rgba(9,26,17,.12);pointer-events:none;transform-origin:center}.experience-tape-left{top:-10px;left:32px;transform:rotate(-5deg)}.experience-tape-right{top:-10px;right:32px;transform:rotate(5deg)}.experience-tape:before{content:"";position:absolute;top:2px;right:3px;left:3px;height:1px;background:rgba(255,228,172,.35)}.experience-tape:after{content:"";position:absolute;top:8px;right:0;left:0;height:4px;background:rgba(111,78,39,.08)}.experience-floating-badge{position:absolute;z-index:15;top:170px;right:-21px;display:flex;width:42px;height:42px;align-items:center;justify-content:center;border:3.5px solid #ffffff;border-radius:50%;background:#f4f2ea;color:var(--color-accent);box-shadow:2px 4px 10px rgba(9,26,17,.16),0 1px 3px rgba(9,26,17,.1);transform:rotate(12deg);pointer-events:none}.experience-floating-badge-icon{width:19px;height:19px}.experience-paper-header{position:relative;width:max-content;margin-bottom:30px}.experience-paper-header h2{display:flex;align-items:baseline;gap:8px;margin:0}.experience-title-main{color:#17221c;font-size:27px;font-weight:700;line-height:1.1;letter-spacing:-.035em}.experience-title-hand{font-family:var(--font-hand),cursive,sans-serif;color:var(--color-accent);font-size:25px;font-weight:400;line-height:1;letter-spacing:-.01em}.experience-title-line{display:block;width:42px;height:2px;margin-top:6px;background:var(--color-accent)}.experience-wavy-underline{position:relative;display:inline-block;padding-bottom:3px}.experience-wavy-underline:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 3' fill='none'%3E%3Cpath d='M0 1.5 Q 4 0, 8 1.5 T 16 1.5' stroke='%23f57050' stroke-width='1.3' stroke-linecap='round' fill='none'/%3E%3C/svg%3E");background-repeat:repeat-x;background-size:12px 3px;pointer-events:none}.experience-list{position:relative;display:flex;flex-direction:column}.experience-list:before{content:"";position:absolute;z-index:0;top:21px;bottom:15px;left:24px;border-left:2px dotted rgba(111,125,116,.38);pointer-events:none}.experience-group{position:relative;z-index:1;display:flex;flex-direction:column}.experience-group+.experience-group{margin-top:23px}.experience-logo-column{z-index:3;width:48px}.experience-logo-badge,.experience-logo-column{position:relative;display:flex;justify-content:center}.experience-logo-badge{z-index:4;width:40px;height:40px;align-items:center;overflow:hidden;border:3px solid rgba(255,255,255,.96);border-radius:999px;background:#f7f5ee;box-shadow:1px 2px 3px rgba(23,34,28,.13)}.experience-logo-image{width:100%;height:100%;object-fit:contain}.experience-org-row{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:12px;align-items:start}.experience-org-content{min-width:0;padding-top:2px}.experience-org-title-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}.experience-org-name{color:#17221c;font-size:14px;font-weight:650;line-height:1.2}.experience-org-duration,.experience-org-separator{color:#7b847e;font-family:var(--font-mono),monospace;font-size:10px}.experience-org-meta{margin-top:3px;color:#7c857f;font-size:10px;line-height:1.3}.experience-role-stack{position:relative;margin-top:8px}.experience-role-row{position:relative;z-index:2;display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:12px;align-items:stretch;min-height:82px}.experience-role-row+.experience-role-row{margin-top:3px}.experience-role-lane{position:relative;z-index:2;width:48px;min-height:100%}.experience-role-lane:after,.experience-role-lane:before{content:none!important;display:none!important}.experience-role-dot{position:absolute;z-index:5;top:5px;left:24px;width:10px;height:10px;border:2px solid #f4f2ea;border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 1px rgba(245,112,80,.43);transform:translateX(-50%)}.experience-role-dot:after{content:"";position:absolute;top:50%;left:50%;width:3px;height:3px;border-radius:50%;background:#ffffff;transform:translate(-50%,-50%)}.experience-role-content{min-width:0;padding-bottom:16px}.experience-role-title{margin:0;color:#202923;font-size:13px;font-weight:650;line-height:1.25}.experience-role-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;color:#879089;font-family:var(--font-mono),monospace;font-size:9px;line-height:1.25}.experience-meta-separator{opacity:.6}.experience-description-block{width:100%;max-width:660px;margin-top:7px}.experience-description{margin:0;color:#556159;font-size:11px;line-height:1.48;transition:opacity .16s ease}.experience-description-collapsed{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-clamp:1;white-space:normal}.experience-description-expanded{display:block;overflow:visible;white-space:normal}.experience-toggle{display:inline-flex;align-items:center;gap:4px;margin-top:7px;padding:0;border:0;background:transparent;color:var(--color-accent);font-family:inherit;font-size:10px;font-weight:600;cursor:pointer;transition:color .14s ease,opacity .14s ease}.experience-toggle:hover{opacity:.72}.experience-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}.experience-toggle-icon{display:block;transition:transform .22s cubic-bezier(.22,1,.36,1)}.experience-toggle-icon.is-expanded{transform:rotate(180deg)}.experience-divider{width:100%;height:0;margin:28px 0 24px;border-top:1px dashed #d1d3cb}.education-block{display:flex;flex-direction:column}.education-heading{margin:0 0 16px;color:#17221c;font-size:19px;font-weight:700;letter-spacing:-.025em}.education-list{display:flex;flex-direction:column;gap:16px}.education-item{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:12px;align-items:start;margin-top:15px}.education-visual-column{display:flex;width:48px;flex-direction:column;align-items:center}.education-rail{position:relative;width:48px;height:49px;margin-top:3px}.education-rail:before{content:"";top:0;bottom:0;border-left:2px dotted rgba(111,125,116,.34)}.education-dot,.education-rail:before{position:absolute;left:50%;transform:translateX(-50%)}.education-dot{z-index:3;top:7px;width:10px;height:10px;border:2px solid #f4f2ea;border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 1px rgba(245,112,80,.43)}.education-dot:after{content:"";position:absolute;top:50%;left:50%;width:3px;height:3px;border-radius:50%;background:#fff;transform:translate(-50%,-50%)}.education-content{min-width:0;padding-top:1px}.education-school-row{display:flex;align-items:baseline}.education-program{margin-top:4px;color:var(--color-accent);font-size:11px;font-weight:600}.education-meta{gap:6px;margin-top:5px;color:#879089;font-family:var(--font-mono),monospace;font-size:9px}.education-academic-line,.education-meta{display:flex;flex-wrap:wrap;align-items:center;line-height:1.3}.education-academic-line{gap:7px;margin-top:9px;color:#3f4b44;font-size:11px}.education-academic-line strong{font-weight:650}.education-academic-line span{color:#a0a7a2}.education-description{max-width:690px;margin:7px 0 0;color:#556159;font-size:11px;line-height:1.48}.education-activities{max-width:720px;margin-top:7px;color:#657168;font-family:var(--font-mono),monospace;font-size:9px;line-height:1.45}@media (max-width:720px){.experience-list:before{left:21px}.experience-org-row,.experience-role-row{grid-template-columns:42px minmax(0,1fr);column-gap:10px}.experience-logo-column,.experience-role-lane{width:42px}.experience-role-dot{left:21px}.experience-logo-badge{width:36px;height:36px}.experience-description-block{max-width:none}.experience-description{font-size:10.5px}.education-item{grid-template-columns:42px minmax(0,1fr);column-gap:10px}.education-rail,.education-visual-column{width:42px}.education-activities,.education-description{max-width:none}}@media (max-width:768px){.experience-paper{width:calc(100% - 24px);padding:30px 20px 34px}.experience-floating-badge{top:130px;right:-10px;width:36px;height:36px}.experience-floating-badge-icon{width:16px;height:16px}.experience-tape{width:48px;height:16px}.experience-title-main{font-size:23px}.experience-title-hand{font-size:21px}}.experience-list{gap:0;isolation:isolate}.experience-role-row{min-height:0}.experience-role-content{padding-bottom:8px}.experience-role-stack{margin-top:5px}.experience-group+.experience-group{margin-top:13px}.experience-role-row+.experience-role-row{margin-top:8px}.experience-toggle{margin-top:5px}.experience-org-meta{margin-top:2px}.project-card,.project-card-body,.project-image-frame,.project-paper,.projects-grid,.projects-section{box-sizing:border-box}.projects-section{position:relative;width:100%;padding:18px 0 42px}.projects-heading{width:max-content;margin-bottom:19px}.projects-heading-main{display:flex;align-items:center;gap:4px;min-height:28px}.projects-heading h2{margin:0;color:var(--color-heading-on-mat);font-family:var(--font-inter),Inter,sans-serif;font-size:25px;font-style:normal;font-weight:650;line-height:1;letter-spacing:-.035em}.projects-heading-hand{display:inline-block;margin-left:0;color:rgba(244,242,234,.89);font-family:var(--font-hand),cursive;font-size:23px;font-style:normal;font-weight:400;line-height:1;transform:translateY(1px) rotate(-2deg)}.projects-heading-underline{display:block;width:38px;height:2px;margin-top:11px;background:#f4f2ea}.projects-grid{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px;row-gap:29px;align-items:start;overflow:visible}.project-card{--paper-angle:0deg;--pin-angle:0deg;--pin-x:0px;position:relative;max-width:100%;min-width:0;min-height:0;height:auto;align-self:start;padding:10px 14px 6px;color:#17221c;transform:rotate(var(--paper-angle));transform-origin:50% 8px;transition:transform .16s var(--ease-out);isolation:isolate}.project-card,.project-card-1{width:100%;justify-self:stretch}.project-card-1{--paper-angle:-0.95deg;--pin-angle:0.95deg;--pin-x:-2px}.project-card-2{width:100%;justify-self:stretch;--paper-angle:0.75deg;--pin-angle:-0.75deg;--pin-x:2px}.project-card-3{width:100%;justify-self:stretch;--paper-angle:-0.55deg;--pin-angle:0.55deg;--pin-x:-1px}.project-card-4{width:100%;justify-self:stretch;margin-top:0;--paper-angle:0.82deg;--pin-angle:-0.82deg;--pin-x:2px}.project-card-5{width:100%;justify-self:stretch;margin-top:2px;--paper-angle:-0.67deg;--pin-angle:0.67deg;--pin-x:-2px}.project-card-6{width:100%;justify-self:stretch;margin-top:3px;--paper-angle:0.58deg;--pin-angle:-0.58deg;--pin-x:1px}.project-actions,.project-card-body,.project-category,.project-description,.project-title-row{transform:none}.project-paper{position:absolute;z-index:-2;inset:0;border:4px solid rgba(255,255,255,.97);border-radius:15px;background:#f4f2ea;box-shadow:4px 6px 0 rgba(9,26,17,.16),0 11px 17px rgba(9,26,17,.09);transform:none;transform-origin:50% 4px;pointer-events:none}.project-image-tilt{transform:none}.project-image-frame{width:100%;aspect-ratio:8/5;overflow:hidden;border-radius:7px;background:#dfe3dc}.project-image{display:block;width:100%;height:100%;object-fit:cover;transform:none}.project-pin{position:absolute;z-index:12;top:-18px;left:calc(50% + var(--pin-x));display:block;width:15px;height:25px;pointer-events:none;transform:translateX(-50%) rotate(var(--pin-angle));transform-origin:50% 18px}.project-pin-head{top:0;width:10px;height:10px;border-radius:50%;background:#f57050;box-shadow:0 2px 2px rgba(9,26,17,.25)}.project-pin-head,.project-pin-needle{position:absolute;left:50%;transform:translateX(-50%)}.project-pin-needle{top:8px;width:1px;height:14px;background:#67706c}.project-card-body{position:relative;z-index:3;padding:7px 0 1px;font-family:var(--font-inter),Inter,sans-serif}.project-card-1 .project-card-body{padding-bottom:2px}.project-card-2 .project-card-body{padding-bottom:1px}.project-card-3 .project-card-body,.project-card-4 .project-card-body{padding-bottom:2px}.project-card-5 .project-card-body{padding-bottom:1px}.project-card-6 .project-card-body{padding-bottom:2px}.project-title-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px}.project-title-row h3{min-width:0;margin:0;color:#17221c;font-size:16px;font-weight:650;line-height:1.18;letter-spacing:-.02em}.project-tech-row{display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;gap:4px;color:#737d76;opacity:.86}.project-tech-mark{display:inline-flex;width:12px;height:12px;align-items:center;justify-content:center;flex-shrink:0;color:inherit;font-size:11px;line-height:1}.project-tech-mark svg{display:block;width:11px;height:11px}.project-category{margin-top:4px;color:#f57050;font-size:10px;font-weight:500;line-height:1.3;text-transform:none}.project-description{min-height:0;margin:5px 0 0;color:#59645d;font-size:11.5px;font-weight:400;line-height:1.47}.project-actions{display:flex;align-items:center;gap:6px;margin-top:7px}.project-actions a{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;border:1px solid #cbd0c9;border-radius:4px;background:rgba(247,245,237,.92);color:#626d66;box-shadow:none;transition:color .13s ease,border-color .13s ease,background-color .13s ease,translate .13s ease}.project-actions a:hover{color:#f57050;border-color:rgba(245,112,80,.48);background:#fff;translate:0 -1px}.project-actions a:focus-visible{outline:2px solid #f57050;outline-offset:2px}.project-card:hover .project-paper{box-shadow:4px 7px 0 rgba(9,26,17,.16),0 14px 20px rgba(9,26,17,.12)}.project-actions a svg{width:11px;height:11px}.project-card:hover{z-index:2;transform:translateY(-2px) rotate(var(--paper-angle))}@media (max-width:900px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:639px){.projects-section{padding-top:58px}.projects-heading h2,.projects-heading-hand{font-size:23px}.projects-grid{grid-template-columns:1fr}.project-card{width:min(100%,340px);max-width:340px;justify-self:center;margin-top:0;--paper-angle:0deg;--pin-angle:0deg;--pin-x:0px}}.site-footer{width:100%;flex-direction:column;padding:24px 0 57px;color:rgba(232,229,214,.82)}.footer-socials,.site-footer{display:flex;align-items:center}.footer-socials{justify-content:center;gap:7px}.footer-socials .copy-email-button,.footer-socials a{display:inline-flex;width:35px;height:35px;align-items:center;justify-content:center;border:1px solid rgba(232,229,214,.43);border-radius:50%;background:rgba(31,67,47,.24);color:rgba(232,229,214,.85);box-shadow:none;cursor:pointer;transition:color .14s ease,border-color .14s ease,background-color .14s ease}.footer-socials .copy-email-button:hover,.footer-socials a:hover{color:#f57050;border-color:rgba(245,112,80,.55);background:rgba(31,67,47,.48)}.footer-copy{display:flex;align-items:baseline;gap:5px;margin-top:12px;color:rgba(232,229,214,.82);font-size:12px;font-weight:400;line-height:1}.footer-connect,.footer-copy{font-family:var(--font-inter),Inter,sans-serif;font-style:normal}.footer-connect{display:inline-flex;flex-direction:column;color:rgba(232,229,214,.92);font-weight:500}.footer-connect-wave{display:block;width:100%;height:5px;margin-top:2px;color:#d2d574;overflow:visible}.footer-connect:hover,.footer-connect:hover .footer-connect-wave{color:#f57050}.project-stickers{position:absolute;z-index:20;left:calc(100% + 26px);bottom:76px;width:205px;height:255px;pointer-events:none}.project-sticker{position:absolute;display:flex;align-items:center;justify-content:center;cursor:grab;touch-action:none;pointer-events:auto;transform-origin:center;transition:filter .14s ease}.project-sticker,.project-sticker img{-webkit-user-select:none;user-select:none}.project-sticker img{display:block;width:100%;height:auto;object-fit:contain;pointer-events:none;filter:drop-shadow(2px 4px 2px rgba(7,23,14,.24))}.project-sticker:hover{z-index:30;filter:brightness(1.025)}.project-sticker.is-dragging{z-index:50;cursor:grabbing}.project-sticker-saturn{width:57px;transform:rotate(9deg)}.project-sticker-dinosaur{width:88px;transform:rotate(-8deg)}.project-sticker-caesar{width:72px;transform:rotate(4deg)}.project-sticker-robot{width:70px;transform:rotate(-5deg)}.reset-stickers{position:absolute;z-index:22;left:2px;bottom:34px;padding:7px 13px;border:1px solid rgba(35,49,40,.22);border-radius:999px;background:#f4f2ea;color:#38453d;font-family:var(--font-hand),cursive;font-size:12px;line-height:1;box-shadow:2px 3px 0 rgba(9,26,17,.16);cursor:pointer;transform:rotate(-2deg);transition:transform .13s ease,box-shadow .13s ease}.reset-stickers:hover{transform:rotate(-1deg) translateY(-1px);box-shadow:2px 4px 0 rgba(9,26,17,.17)}@media (max-width:1180px){.project-stickers,.reset-stickers{display:none}}.social-item{position:relative;display:inline-flex;align-items:center;justify-content:center}.social-preview{position:absolute;z-index:80;bottom:calc(100% + 12px);width:146px;padding:7px 7px 8px;border:1px solid rgba(74,77,69,.14);background:#f4f2ea;box-shadow:4px 6px 0 rgba(9,26,17,.15),0 11px 18px rgba(9,26,17,.14);opacity:0;visibility:hidden;pointer-events:none;transform-origin:50% 100%;transition:opacity .15s ease,transform .22s cubic-bezier(.22,1,.36,1),visibility .15s ease}.social-preview-github{left:50%;transform:translateX(-50%) translateY(5px) rotate(-2deg) scale(.96)}.social-preview-linkedin{left:50%;transform:translateX(-50%) translateY(5px) rotate(-4deg) scale(.96)}.social-preview-x{left:50%;transform:translateX(-50%) translateY(5px) rotate(3deg) scale(.96)}.social-item:focus-within .social-preview,.social-item:hover .social-preview{opacity:1;visibility:visible}.social-item:focus-within .social-preview-github,.social-item:hover .social-preview-github{transform:translateX(-50%) translateY(0) rotate(-2deg) scale(1)}.social-item:focus-within .social-preview-linkedin,.social-item:hover .social-preview-linkedin{transform:translateX(-50%) translateY(0) rotate(-4deg) scale(1)}.social-item:focus-within .social-preview-x,.social-item:hover .social-preview-x{transform:translateX(-50%) translateY(0) rotate(3deg) scale(1)}.social-preview-image-frame{width:100%;aspect-ratio:1.35/1;overflow:hidden;background:#dedfd9}.social-preview-image{display:block;width:100%;height:100%;object-fit:cover}.social-preview-linkedin .social-preview-image{object-position:center 48%}.social-preview-x .social-preview-image{object-position:center 35%}.social-preview-github .social-preview-image{object-position:center top}.social-preview-label{margin-top:6px;color:#313a34;font-family:var(--font-hand),cursive;font-size:11px;line-height:1;text-align:center}.copy-email-button{position:relative;border:0;padding:0;font:inherit;cursor:pointer}.copy-feedback{position:absolute;z-index:90;bottom:calc(100% + 8px);left:50%;padding:5px 8px;border:1px solid rgba(74,77,69,.14);border-radius:999px;background:#f4f2ea;color:#334039;font-family:var(--font-mono),monospace;font-size:9px;line-height:1;white-space:nowrap;box-shadow:2px 3px 0 rgba(9,26,17,.12);opacity:0;pointer-events:none;transform:translateX(-50%) translateY(3px);transition:opacity .14s ease,transform .14s ease}.copy-feedback.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}@media (hover:none){.social-preview{display:none}}@media (min-width:1321px) and (max-width:1399px){.project-stickers{left:calc(100% - 8px);transform:scale(.72);transform-origin:top left}.research-pencil{right:12px;width:52px}}@media (min-width:1201px) and (max-width:1320px){.project-stickers,.research-pencil,.reset-stickers{display:none}}