@layer reset,base,layout,components,motion,responsive;@property --portrait-visible{syntax: "<integer>"; inherits: false; initial-value: 0;}@font-face{font-family:Inter;src:url(/assets/fonts/inter-variable.woff2) format("woff2");font-style:normal;font-weight:100 900;font-display:swap}@layer reset{*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,p,figure,fieldset,ol,ul{margin:0}fieldset{min-inline-size:0;padding:0;border:0}ul,ol{list-style:none;padding:0}a{color:inherit;text-decoration:none}img{display:block;max-inline-size:100%}}@layer base{:root{color-scheme:dark;--bg: #0b0d0c;--text: #e8eae4;--secondary: #a2a8a1;--muted: #7e877f;--line: #2b302c;--accent: #c2f58b;--font: Inter, sans-serif;font-family:var(--font);font-optical-sizing:auto;background:var(--bg);color:var(--text);scroll-behavior:smooth;scroll-padding-block-start:40px;scrollbar-color:#444e42 var(--bg)}body{position:relative;isolation:isolate;min-inline-size:280px;font-size:16px;-webkit-font-smoothing:antialiased}body:before{content:"";position:absolute;inset:0 auto auto 0;inline-size:min(68vw,860px);block-size:620px;z-index:-1;pointer-events:none;background-image:linear-gradient(rgb(150 150 150 / .12) 1px,transparent 1px),linear-gradient(90deg,rgb(150 150 150 / .12) 1px,transparent 1px);background-size:32px 32px;mask-image:radial-gradient(ellipse 100% 100% at left top,#000,rgb(0 0 0 / .65) 36%,transparent 82%)}::selection{color:var(--bg);background:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}h1,h2,h3{font-weight:500;text-wrap:balance}p{text-wrap:pretty}a{text-underline-offset:5px}a,label{-webkit-tap-highlight-color:#c2f58b22}a:hover,.accent{color:var(--accent)}.muted{color:var(--muted)}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:20;inset:12px auto auto 12px;padding:12px 20px;background:var(--accent);color:var(--bg);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0);color:var(--bg)}}@layer layout{.shell{inline-size:min(1184px,calc(100% - 112px));margin-inline:auto}.site-header{min-block-size:96px;display:flex;align-items:center;justify-content:space-between;gap:32px;border-block-end:1px solid var(--line)}.site-header nav{display:flex;align-items:center;gap:34px;margin-inline-start:auto}.hero{display:grid;grid-template-columns:1.15fr 1fr;column-gap:94px;padding-block:84px 30px;border-block-end:1px solid var(--line)}.hero-copy{padding-block-start:7px}.portrait-console{margin-block-start:33px;align-self:start}.experience-list{border-block-end:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-block-end:54px}.experience{display:block;padding-block:40px;scroll-margin-block-start:40px}.experience+.experience{border-block-start:1px solid var(--line)}.experience-heading{display:flex;gap:21px;align-items:center;margin-block-end:22px}.experience-description{max-inline-size:755px}.experience-description p+p{margin-block-start:11px}.projects-section{padding-block:110px 0}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block-start:1px solid var(--line)}.project{padding:31px 29px 32px}.project:first-child{padding-inline-start:0}.project:last-child{padding-inline-end:0}.project+.project{border-inline-start:1px solid var(--line)}.contact-section{border-block-start:1px solid var(--line);padding-block:72px 80px}.contact-row{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-block-start:31px}.site-footer{border-block-start:1px solid var(--line);padding-block:27px 32px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px}.footer-links{display:flex;align-items:center;gap:24px}}@layer components{.wordmark{font-size:33px;line-height:1;font-weight:600;letter-spacing:-2px}.wordmark span{color:var(--accent)}.site-header nav a{font-family:var(--font);font-size:12px;padding-block:16px}.site-header nav a>span:first-child{color:var(--muted);margin-inline-end:8px;font-size:10px}.nav-arrow{margin-inline-start:9px}.status-dot{display:inline-block;inline-size:5px;block-size:5px;background:var(--accent);border-radius:50%;flex-shrink:0}.eyebrow{font:11px/1.5 var(--font);letter-spacing:.07em;color:var(--secondary)}.eyebrow .accent{margin-inline-end:12px}h1{font-size:clamp(72px,7.4vw,104px);line-height:.99;letter-spacing:-.068em;margin-block:28px 26px}.name-cursor{display:inline-block;color:var(--accent);font-family:var(--font);font-size:.8em;letter-spacing:0}.role{color:var(--accent);font:17px/1.5 var(--font);letter-spacing:-.045em}.hero-description{max-inline-size:448px;margin-block-start:32px;color:var(--secondary);font-size:15px;line-height:1.8}.text-link{display:inline-flex;align-items:center;gap:20px;padding-block:14px;font:11px/1.5 var(--font)}.text-link span{color:var(--accent);font-size:18px}.current-role{color:var(--secondary);font:10px/1.8 var(--font);display:flex;align-items:center;gap:9px;margin-block-start:26px}.current-role a{color:var(--text);text-decoration:underline;text-decoration-color:#646c60}.portrait-stage{position:relative;isolation:isolate;background:var(--bg);aspect-ratio:720 / 723.2}.portrait-scene,.portrait-frame,.portrait-subject,.ascii-portrait{position:absolute;inset:0}.portrait-scene{pointer-events:none}.portrait-zone{display:none}.portrait-frame:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgb(150 163 154 / .17) 1px,transparent 1px),linear-gradient(90deg,rgb(150 163 154 / .17) 1px,transparent 1px);background-size:6.25% 6.25%;background-position:center;mask-image:radial-gradient(ellipse at center,#000 20%,rgb(0 0 0 / .75) 55%,transparent 74%)}.portrait-subject{isolation:isolate;background:url(/assets/portrait-silhouette.svg) center / 100% 100% no-repeat}.ascii-portrait{contain:layout paint;background:#fff;mask-image:url(/assets/portrait-ascii.svg),linear-gradient(to top,#000,#000000e0 32%,#00000094 68%,#0000003d);mask-mode:luminance,alpha;mask-composite:intersect;mask-size:100% 100%;mask-repeat:no-repeat}.portrait-halftone{position:absolute;inset:0;inline-size:100%;block-size:100%;pointer-events:none}.portrait-halftone[hidden]{display:none}.portrait-subject[data-halftone=on] .ascii-portrait{visibility:hidden}.portrait-caption{font:8px/1.5 var(--font);color:var(--muted);letter-spacing:.06em;padding-block-start:16px}.corner{position:absolute;inline-size:10px;block-size:10px;z-index:1;color:#56604e;pointer-events:none}.corner-tl{inset:4px auto auto 0;border-block-start:1px solid;border-inline-start:1px solid}.corner-tr{inset:4px 0 auto auto;border-block-start:1px solid;border-inline-end:1px solid}.corner-bl{inset:auto auto 4px 0;border-block-end:1px solid;border-inline-start:1px solid}.corner-br{inset:auto 0 4px auto;border-block-end:1px solid;border-inline-end:1px solid}h2{font-size:clamp(36px,4vw,52px);line-height:1.13;letter-spacing:-.05em}.section-heading .eyebrow{margin-block-end:20px}.section-aside{font-size:13px;line-height:1.8;color:var(--muted);padding-block-end:5px}.company-name{color:var(--secondary);font-size:13px;margin-block-end:5px}.experience h3{font-size:24px;line-height:1.25;letter-spacing:-.03em}.experience-mark{color:#5d6856;font-size:22px;margin-inline-start:auto;align-self:start}.experience-description p{color:var(--secondary);font-size:14px;line-height:1.85}.experience-description strong{color:#ccd0c6;font-weight:500}.compact-heading{margin-block-end:35px}.compact-heading h2{font-size:36px}.project-number{color:var(--muted);font:9px/1.5 var(--font)}.project h3{font-size:25px;margin-block:24px 15px;letter-spacing:-.03em;display:flex;justify-content:space-between;align-items:center}.project h3 span{font-size:17px}.project p{color:var(--secondary);font-size:13px;line-height:1.85}.project-stack{display:block;margin-block-start:25px;color:var(--muted);font:9px/1.7 var(--font)}.contact-section h2{font-size:clamp(40px,4.8vw,66px);letter-spacing:-.055em}.contact-section em{font-style:normal;color:var(--accent)}.contact-profile{display:inline-flex;align-items:center;gap:14px;flex-shrink:0;font:12px/1.7 var(--font);padding-block:12px;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:6px}.contact-profile:hover{text-decoration-color:var(--accent)}.contact-profile span{color:var(--accent)}.site-footer{color:var(--muted);font:9px/1.5 var(--font);letter-spacing:.025em}.site-footer a{padding-block:8px}.site-footer a span{color:var(--accent);margin-inline-start:10px}.footer-signature span{color:var(--accent);margin-inline-start:7px;font-size:15px}}@layer motion{@media(prefers-reduced-motion:no-preference){@keyframes cursor-blink{0%,45%{opacity:1}46%,to{opacity:0}}.name-cursor{animation:cursor-blink 1.2s step-end infinite}@keyframes hero-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.site-header .wordmark,.site-header nav a,.hero-copy>*,.portrait-console{animation:hero-enter .8s cubic-bezier(.22,.61,.36,1) backwards}.site-header nav a:nth-child(1){animation-delay:.1s}.site-header nav a:nth-child(2){animation-delay:.18s}.site-header nav a:nth-child(3){animation-delay:.26s}.hero-copy>.eyebrow{animation-delay:60ms}.hero-copy>h1{animation-delay:.14s}.hero-copy>.role{animation-delay:.38s}.hero-description{animation-delay:.62s}.current-role{animation-delay:.78s}.portrait-console{animation-delay:.9s;animation-duration:1s}.portrait-stage{perspective:1000px}.portrait-scene{transform-style:preserve-3d;transform:rotateX(0) rotateY(0);transition:none}.portrait-frame{transform:translateZ(-90px) scale(1.09)}.portrait-subject{transform:translateZ(90px) scale(.91)}@media(hover:none),(pointer:coarse){@keyframes portrait-drift{0%,to{transform:rotateX(1.8deg) rotateY(-4deg)}25%{transform:rotateX(-2.8deg) rotateY(-1deg)}50%{transform:rotateX(-1.8deg) rotateY(4deg)}75%{transform:rotateX(2.8deg) rotateY(1deg)}}.portrait-scene{animation:portrait-drift 20s ease-in-out -5s infinite paused}}@supports (animation-timeline: view()) and (timeline-scope: --portrait-view){body{container-name:portrait-visibility;timeline-scope:--portrait-view;animation:portrait-visibility linear both;animation-timeline:--portrait-view}.portrait-stage{view-timeline:--portrait-view block;view-timeline-inset:0}@keyframes portrait-visibility{0%,to{--portrait-visible: 0}.01%,99.99%{--portrait-visible: 1}}@container portrait-visibility style(--portrait-visible: 1){.portrait-scene{animation-play-state:running}@media(hover:hover)and (pointer:fine){.portrait-zone{display:block;position:fixed;z-index:0}.site-header,main,.site-footer{position:relative;z-index:1;pointer-events:none}:is(a,button,input,label,select,textarea,summary,h1,h2,h3,p,li,figcaption){pointer-events:auto}.portrait-scene{transition:transform .85s cubic-bezier(.2,.65,.25,1)}.portrait-zone:hover~main .portrait-scene{transition-duration:.42s}main:has(.hero-copy :is(h1,p,a):hover) .portrait-scene{transform:rotateX(1.75deg) rotateY(-5.25deg);transition-duration:.42s}.site-header:has(a:hover)~main .portrait-scene{transform:rotateX(7deg) rotateY(-1.75deg);transition-duration:.42s}.portrait-console:has(figcaption:hover) .portrait-scene{transform:rotateX(-1.75deg) rotateY(5.25deg);transition-duration:.42s}}}}@supports (animation-timeline: scroll()){@keyframes progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.reading-progress{position:fixed;inset:0 0 auto;block-size:2px;z-index:10;background:var(--accent);transform-origin:left;animation:progress linear both;animation-timeline:scroll(root block);pointer-events:none}}@supports (animation-timeline: view()){@keyframes reveal{0%{opacity:.28;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.experience-content,.project{animation:reveal linear both;animation-timeline:view();animation-range:entry 0% entry 85%}}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}}@layer responsive{@media(min-width:1600px){.hero{padding-block-start:100px}}@media(max-width:1100px){.shell{inline-size:calc(100% - 80px)}.hero{column-gap:45px;padding-block-start:62px}h1{font-size:84px}.portrait-console{margin-block-start:50px}.site-header nav{gap:23px}}@media(max-width:800px){.shell{inline-size:calc(100% - 48px)}.site-header{min-block-size:80px;gap:22px}.site-header nav{gap:21px}.hero{column-gap:24px}h1{font-size:clamp(62px,9.2vw,80px)}.hero-description,.role{font-size:14px}.portrait-console{margin-block-start:74px}.portrait-caption{font-size:7px}.section-heading{gap:28px}.section-aside{font-size:12px}.experience h3{font-size:22px}.experience-heading{gap:15px}.experience-mark{display:none}.project{padding-inline:20px}.project-stack{font-size:8px}.footer-signature{display:none}}@media(max-width:620px){:root{scroll-padding-block-start:25px}.shell{inline-size:calc(100% - 40px)}.site-header{min-block-size:76px}.wordmark{font-size:29px}.site-header nav{gap:20px}.site-header nav a{font-size:10px}.site-header nav a>span:first-child,.nav-arrow{display:none}.hero{grid-template-columns:minmax(0,1fr);padding-block-start:49px}h1{font-size:clamp(68px,17vw,101px);letter-spacing:-.06em;margin-block:24px}.role{font-size:16px}.hero-description{margin-block-start:30px;font-size:15px;max-inline-size:440px}.current-role{font-size:9px;gap:8px}.portrait-console{inline-size:min(100%,420px);margin:50px auto 0}.portrait-caption{font-size:8px}.section-heading{flex-direction:column;align-items:start;gap:22px;margin-block-end:34px}h2{font-size:clamp(34px,8.8vw,46px)}.section-aside{font-size:13px}.section-aside br{display:none}.experience{padding-block:32px}.experience-heading{gap:15px;margin-block-end:18px}.experience h3{font-size:23px}.company-name{font-size:12px}.experience-description p{font-size:14px;line-height:1.8}.projects-section{padding-block:78px 0}.compact-heading h2{font-size:32px}.project-grid{grid-template-columns:1fr}.project,.project:first-child,.project:last-child{padding:25px 0}.project+.project{border-inline-start:0;border-block-start:1px solid var(--line)}.project h3{margin-block:17px 13px}.project p{font-size:14px}.project-stack{margin-block-start:17px;font-size:9px}.contact-section{padding-block:54px 50px}.contact-section h2{font-size:clamp(32px,8.2vw,48px)}.contact-row{align-items:start;flex-direction:column;gap:24px;margin-block-start:26px}.site-footer{font-size:8px;gap:15px;padding-block:23px}}@media print{:root{color-scheme:light;--bg: white;--text: black;--secondary: #333;--muted: #444;--line: #ccc;--accent: #263c1e}body{font-size:11px}body:before{display:none}.reading-progress,.site-header,.portrait-console,.portrait-zone,.site-footer,.skip-link{display:none}.shell{inline-size:100%}.hero{display:block;padding-block:0 25px}.hero-copy>*{animation:none}h1{font-size:45px}.hero-description{max-inline-size:none}.experience-section,.projects-section{padding-block:30px}.section-heading{margin-block-end:20px}h2,.compact-heading h2,.contact-section h2{font-size:25px}.experience{padding-block:20px;break-inside:avoid}.experience-content,.project{opacity:1;transform:none;animation:none}.experience-description p{font-size:11px}.contact-section{padding-block:25px}}}@layer motion{@media(prefers-reduced-motion:no-preference)and (hover:hover)and (pointer:fine){@container portrait-visibility style(--portrait-visible: 1){.portrait-zone{inline-size:calc(100% / 9);block-size:calc(100% / 9)}.portrait-zone:nth-child(1){inset-block-start:0%;inset-inline-start:0%}.portrait-zone:nth-child(1):hover~main .portrait-scene{transform:rotateX(7deg) rotateY(-7deg)}.portrait-zone:nth-child(2){inset-block-start:0%;inset-inline-start:calc(100% * 1 / 9)}.portrait-zone:nth-child(2):hover~main .portrait-scene{transform:rotateX(7deg) rotateY(-5.25deg)}.portrait-zone:nth-child(3){inset-block-start:0%;inset-inline-start:calc(100% * 2 / 9)}.portrait-zone:nth-child(3):hover~main .portrait-scene{transform:rotateX(7deg) rotateY(-3.5deg)}.portrait-zone:nth-child(4){inset-block-start:0%;inset-inline-start:calc(100% * 3 / 9)}.portrait-zone:nth-child(4):hover~main .portrait-scene{transform:rotateX(7deg) rotateY(-1.75deg)}.portrait-zone:nth-child(5){inset-block-start:0%;inset-inline-start:calc(100% * 4 / 9)}.portrait-zone:nth-child(5):hover~main .portrait-scene{transform:rotateX(7deg) rotateY(0)}.portrait-zone:nth-child(6){inset-block-start:0%;inset-inline-start:calc(100% * 5 / 9)}.portrait-zone:nth-child(6):hover~main .portrait-scene{transform:rotateX(7deg) rotateY(1.75deg)}.portrait-zone:nth-child(7){inset-block-start:0%;inset-inline-start:calc(100% * 6 / 9)}.portrait-zone:nth-child(7):hover~main .portrait-scene{transform:rotateX(7deg) rotateY(3.5deg)}.portrait-zone:nth-child(8){inset-block-start:0%;inset-inline-start:calc(100% * 7 / 9)}.portrait-zone:nth-child(8):hover~main .portrait-scene{transform:rotateX(7deg) rotateY(5.25deg)}.portrait-zone:nth-child(9){inset-block-start:0%;inset-inline-start:calc(100% * 8 / 9)}.portrait-zone:nth-child(9):hover~main .portrait-scene{transform:rotateX(7deg) rotateY(7deg)}.portrait-zone:nth-child(10){inset-block-start:calc(100% * 1 / 9);inset-inline-start:0%}.portrait-zone:nth-child(10):hover~main .portrait-scene{transform:rotateX(5.25deg) rotateY(-7deg)}.portrait-zone:nth-child(11){inset-block-start:calc(100% * 1 / 9);inset-inline-start:calc(100% * 1 / 9)}.portrait-zone:nth-child(11):hover~main .portrait-scene{transform:rotateX(5.25deg) rotateY(-5.25deg)}.portrait-zone:nth-child(12){inset-block-start:calc(100% * 1 / 9);inset-inline-start:calc(100% * 2 / 9)}.portrait-zone:nth-child(12):hover~main .portrait-scene{transform:rotateX(5.25deg) rotateY(-3.5deg)}.portrait-zone:nth-child(13){inset-block-start:calc(100% * 1 / 9);inset-inline-start:calc(100% * 3 / 9)}.portrait-zone:nth-child(13):hover~main .portrait-scene{transform:rotateX(5.25deg) rotateY(-1.75deg)}.portrait-zone:nth-child(14){inset-block-start:calc(100% * 1 / 9);inset-inline-start:calc(100% * 4 / 9)}.portrait-zone:nth-child(14):hover~main .portrait-scene{transform:rotateX(5.25deg) rotateY(0)}.portrait-zone:nth-child(15){inset-block-start:calc(100% * 1 / 9);inset-inline-start:calc(100% * 5 / 9)}.portrait-zone:nth-child(15):hover~main .portrait-scene{transform:rotateX(5.25deg) rotateY(1.75deg)}.portrait-zone:nth-child(16){inset-block-start:calc(100% * 1 / 9);inset-inline-start:calc(100% * 6 / 9)}.portrait-zone:nth-child(16):hover~main .portrait-scene{transform:rotateX(5.25deg) rotateY(3.5deg)}.portrait-zone:nth-child(17){inset-block-start:calc(100% * 1 / 9);inset-inline-start:calc(100% * 7 / 9)}.portrait-zone:nth-child(17):hover~main .portrait-scene{transform:rotateX(5.25deg) rotateY(5.25deg)}.portrait-zone:nth-child(18){inset-block-start:calc(100% * 1 / 9);inset-inline-start:calc(100% * 8 / 9)}.portrait-zone:nth-child(18):hover~main .portrait-scene{transform:rotateX(5.25deg) rotateY(7deg)}.portrait-zone:nth-child(19){inset-block-start:calc(100% * 2 / 9);inset-inline-start:0%}.portrait-zone:nth-child(19):hover~main .portrait-scene{transform:rotateX(3.5deg) rotateY(-7deg)}.portrait-zone:nth-child(20){inset-block-start:calc(100% * 2 / 9);inset-inline-start:calc(100% * 1 / 9)}.portrait-zone:nth-child(20):hover~main .portrait-scene{transform:rotateX(3.5deg) rotateY(-5.25deg)}.portrait-zone:nth-child(21){inset-block-start:calc(100% * 2 / 9);inset-inline-start:calc(100% * 2 / 9)}.portrait-zone:nth-child(21):hover~main .portrait-scene{transform:rotateX(3.5deg) rotateY(-3.5deg)}.portrait-zone:nth-child(22){inset-block-start:calc(100% * 2 / 9);inset-inline-start:calc(100% * 3 / 9)}.portrait-zone:nth-child(22):hover~main .portrait-scene{transform:rotateX(3.5deg) rotateY(-1.75deg)}.portrait-zone:nth-child(23){inset-block-start:calc(100% * 2 / 9);inset-inline-start:calc(100% * 4 / 9)}.portrait-zone:nth-child(23):hover~main .portrait-scene{transform:rotateX(3.5deg) rotateY(0)}.portrait-zone:nth-child(24){inset-block-start:calc(100% * 2 / 9);inset-inline-start:calc(100% * 5 / 9)}.portrait-zone:nth-child(24):hover~main .portrait-scene{transform:rotateX(3.5deg) rotateY(1.75deg)}.portrait-zone:nth-child(25){inset-block-start:calc(100% * 2 / 9);inset-inline-start:calc(100% * 6 / 9)}.portrait-zone:nth-child(25):hover~main .portrait-scene{transform:rotateX(3.5deg) rotateY(3.5deg)}.portrait-zone:nth-child(26){inset-block-start:calc(100% * 2 / 9);inset-inline-start:calc(100% * 7 / 9)}.portrait-zone:nth-child(26):hover~main .portrait-scene{transform:rotateX(3.5deg) rotateY(5.25deg)}.portrait-zone:nth-child(27){inset-block-start:calc(100% * 2 / 9);inset-inline-start:calc(100% * 8 / 9)}.portrait-zone:nth-child(27):hover~main .portrait-scene{transform:rotateX(3.5deg) rotateY(7deg)}.portrait-zone:nth-child(28){inset-block-start:calc(100% * 3 / 9);inset-inline-start:0%}.portrait-zone:nth-child(28):hover~main .portrait-scene{transform:rotateX(1.75deg) rotateY(-7deg)}.portrait-zone:nth-child(29){inset-block-start:calc(100% * 3 / 9);inset-inline-start:calc(100% * 1 / 9)}.portrait-zone:nth-child(29):hover~main .portrait-scene{transform:rotateX(1.75deg) rotateY(-5.25deg)}.portrait-zone:nth-child(30){inset-block-start:calc(100% * 3 / 9);inset-inline-start:calc(100% * 2 / 9)}.portrait-zone:nth-child(30):hover~main .portrait-scene{transform:rotateX(1.75deg) rotateY(-3.5deg)}.portrait-zone:nth-child(31){inset-block-start:calc(100% * 3 / 9);inset-inline-start:calc(100% * 3 / 9)}.portrait-zone:nth-child(31):hover~main .portrait-scene{transform:rotateX(1.75deg) rotateY(-1.75deg)}.portrait-zone:nth-child(32){inset-block-start:calc(100% * 3 / 9);inset-inline-start:calc(100% * 4 / 9)}.portrait-zone:nth-child(32):hover~main .portrait-scene{transform:rotateX(1.75deg) rotateY(0)}.portrait-zone:nth-child(33){inset-block-start:calc(100% * 3 / 9);inset-inline-start:calc(100% * 5 / 9)}.portrait-zone:nth-child(33):hover~main .portrait-scene{transform:rotateX(1.75deg) rotateY(1.75deg)}.portrait-zone:nth-child(34){inset-block-start:calc(100% * 3 / 9);inset-inline-start:calc(100% * 6 / 9)}.portrait-zone:nth-child(34):hover~main .portrait-scene{transform:rotateX(1.75deg) rotateY(3.5deg)}.portrait-zone:nth-child(35){inset-block-start:calc(100% * 3 / 9);inset-inline-start:calc(100% * 7 / 9)}.portrait-zone:nth-child(35):hover~main .portrait-scene{transform:rotateX(1.75deg) rotateY(5.25deg)}.portrait-zone:nth-child(36){inset-block-start:calc(100% * 3 / 9);inset-inline-start:calc(100% * 8 / 9)}.portrait-zone:nth-child(36):hover~main .portrait-scene{transform:rotateX(1.75deg) rotateY(7deg)}.portrait-zone:nth-child(37){inset-block-start:calc(100% * 4 / 9);inset-inline-start:0%}.portrait-zone:nth-child(37):hover~main .portrait-scene{transform:rotateX(0) rotateY(-7deg)}.portrait-zone:nth-child(38){inset-block-start:calc(100% * 4 / 9);inset-inline-start:calc(100% * 1 / 9)}.portrait-zone:nth-child(38):hover~main .portrait-scene{transform:rotateX(0) rotateY(-5.25deg)}.portrait-zone:nth-child(39){inset-block-start:calc(100% * 4 / 9);inset-inline-start:calc(100% * 2 / 9)}.portrait-zone:nth-child(39):hover~main .portrait-scene{transform:rotateX(0) rotateY(-3.5deg)}.portrait-zone:nth-child(40){inset-block-start:calc(100% * 4 / 9);inset-inline-start:calc(100% * 3 / 9)}.portrait-zone:nth-child(40):hover~main .portrait-scene{transform:rotateX(0) rotateY(-1.75deg)}.portrait-zone:nth-child(41){inset-block-start:calc(100% * 4 / 9);inset-inline-start:calc(100% * 4 / 9)}.portrait-zone:nth-child(41):hover~main .portrait-scene{transform:rotateX(0) rotateY(0)}.portrait-zone:nth-child(42){inset-block-start:calc(100% * 4 / 9);inset-inline-start:calc(100% * 5 / 9)}.portrait-zone:nth-child(42):hover~main .portrait-scene{transform:rotateX(0) rotateY(1.75deg)}.portrait-zone:nth-child(43){inset-block-start:calc(100% * 4 / 9);inset-inline-start:calc(100% * 6 / 9)}.portrait-zone:nth-child(43):hover~main .portrait-scene{transform:rotateX(0) rotateY(3.5deg)}.portrait-zone:nth-child(44){inset-block-start:calc(100% * 4 / 9);inset-inline-start:calc(100% * 7 / 9)}.portrait-zone:nth-child(44):hover~main .portrait-scene{transform:rotateX(0) rotateY(5.25deg)}.portrait-zone:nth-child(45){inset-block-start:calc(100% * 4 / 9);inset-inline-start:calc(100% * 8 / 9)}.portrait-zone:nth-child(45):hover~main .portrait-scene{transform:rotateX(0) rotateY(7deg)}.portrait-zone:nth-child(46){inset-block-start:calc(100% * 5 / 9);inset-inline-start:0%}.portrait-zone:nth-child(46):hover~main .portrait-scene{transform:rotateX(-1.75deg) rotateY(-7deg)}.portrait-zone:nth-child(47){inset-block-start:calc(100% * 5 / 9);inset-inline-start:calc(100% * 1 / 9)}.portrait-zone:nth-child(47):hover~main .portrait-scene{transform:rotateX(-1.75deg) rotateY(-5.25deg)}.portrait-zone:nth-child(48){inset-block-start:calc(100% * 5 / 9);inset-inline-start:calc(100% * 2 / 9)}.portrait-zone:nth-child(48):hover~main .portrait-scene{transform:rotateX(-1.75deg) rotateY(-3.5deg)}.portrait-zone:nth-child(49){inset-block-start:calc(100% * 5 / 9);inset-inline-start:calc(100% * 3 / 9)}.portrait-zone:nth-child(49):hover~main .portrait-scene{transform:rotateX(-1.75deg) rotateY(-1.75deg)}.portrait-zone:nth-child(50){inset-block-start:calc(100% * 5 / 9);inset-inline-start:calc(100% * 4 / 9)}.portrait-zone:nth-child(50):hover~main .portrait-scene{transform:rotateX(-1.75deg) rotateY(0)}.portrait-zone:nth-child(51){inset-block-start:calc(100% * 5 / 9);inset-inline-start:calc(100% * 5 / 9)}.portrait-zone:nth-child(51):hover~main .portrait-scene{transform:rotateX(-1.75deg) rotateY(1.75deg)}.portrait-zone:nth-child(52){inset-block-start:calc(100% * 5 / 9);inset-inline-start:calc(100% * 6 / 9)}.portrait-zone:nth-child(52):hover~main .portrait-scene{transform:rotateX(-1.75deg) rotateY(3.5deg)}.portrait-zone:nth-child(53){inset-block-start:calc(100% * 5 / 9);inset-inline-start:calc(100% * 7 / 9)}.portrait-zone:nth-child(53):hover~main .portrait-scene{transform:rotateX(-1.75deg) rotateY(5.25deg)}.portrait-zone:nth-child(54){inset-block-start:calc(100% * 5 / 9);inset-inline-start:calc(100% * 8 / 9)}.portrait-zone:nth-child(54):hover~main .portrait-scene{transform:rotateX(-1.75deg) rotateY(7deg)}.portrait-zone:nth-child(55){inset-block-start:calc(100% * 6 / 9);inset-inline-start:0%}.portrait-zone:nth-child(55):hover~main .portrait-scene{transform:rotateX(-3.5deg) rotateY(-7deg)}.portrait-zone:nth-child(56){inset-block-start:calc(100% * 6 / 9);inset-inline-start:calc(100% * 1 / 9)}.portrait-zone:nth-child(56):hover~main .portrait-scene{transform:rotateX(-3.5deg) rotateY(-5.25deg)}.portrait-zone:nth-child(57){inset-block-start:calc(100% * 6 / 9);inset-inline-start:calc(100% * 2 / 9)}.portrait-zone:nth-child(57):hover~main .portrait-scene{transform:rotateX(-3.5deg) rotateY(-3.5deg)}.portrait-zone:nth-child(58){inset-block-start:calc(100% * 6 / 9);inset-inline-start:calc(100% * 3 / 9)}.portrait-zone:nth-child(58):hover~main .portrait-scene{transform:rotateX(-3.5deg) rotateY(-1.75deg)}.portrait-zone:nth-child(59){inset-block-start:calc(100% * 6 / 9);inset-inline-start:calc(100% * 4 / 9)}.portrait-zone:nth-child(59):hover~main .portrait-scene{transform:rotateX(-3.5deg) rotateY(0)}.portrait-zone:nth-child(60){inset-block-start:calc(100% * 6 / 9);inset-inline-start:calc(100% * 5 / 9)}.portrait-zone:nth-child(60):hover~main .portrait-scene{transform:rotateX(-3.5deg) rotateY(1.75deg)}.portrait-zone:nth-child(61){inset-block-start:calc(100% * 6 / 9);inset-inline-start:calc(100% * 6 / 9)}.portrait-zone:nth-child(61):hover~main .portrait-scene{transform:rotateX(-3.5deg) rotateY(3.5deg)}.portrait-zone:nth-child(62){inset-block-start:calc(100% * 6 / 9);inset-inline-start:calc(100% * 7 / 9)}.portrait-zone:nth-child(62):hover~main .portrait-scene{transform:rotateX(-3.5deg) rotateY(5.25deg)}.portrait-zone:nth-child(63){inset-block-start:calc(100% * 6 / 9);inset-inline-start:calc(100% * 8 / 9)}.portrait-zone:nth-child(63):hover~main .portrait-scene{transform:rotateX(-3.5deg) rotateY(7deg)}.portrait-zone:nth-child(64){inset-block-start:calc(100% * 7 / 9);inset-inline-start:0%}.portrait-zone:nth-child(64):hover~main .portrait-scene{transform:rotateX(-5.25deg) rotateY(-7deg)}.portrait-zone:nth-child(65){inset-block-start:calc(100% * 7 / 9);inset-inline-start:calc(100% * 1 / 9)}.portrait-zone:nth-child(65):hover~main .portrait-scene{transform:rotateX(-5.25deg) rotateY(-5.25deg)}.portrait-zone:nth-child(66){inset-block-start:calc(100% * 7 / 9);inset-inline-start:calc(100% * 2 / 9)}.portrait-zone:nth-child(66):hover~main .portrait-scene{transform:rotateX(-5.25deg) rotateY(-3.5deg)}.portrait-zone:nth-child(67){inset-block-start:calc(100% * 7 / 9);inset-inline-start:calc(100% * 3 / 9)}.portrait-zone:nth-child(67):hover~main .portrait-scene{transform:rotateX(-5.25deg) rotateY(-1.75deg)}.portrait-zone:nth-child(68){inset-block-start:calc(100% * 7 / 9);inset-inline-start:calc(100% * 4 / 9)}.portrait-zone:nth-child(68):hover~main .portrait-scene{transform:rotateX(-5.25deg) rotateY(0)}.portrait-zone:nth-child(69){inset-block-start:calc(100% * 7 / 9);inset-inline-start:calc(100% * 5 / 9)}.portrait-zone:nth-child(69):hover~main .portrait-scene{transform:rotateX(-5.25deg) rotateY(1.75deg)}.portrait-zone:nth-child(70){inset-block-start:calc(100% * 7 / 9);inset-inline-start:calc(100% * 6 / 9)}.portrait-zone:nth-child(70):hover~main .portrait-scene{transform:rotateX(-5.25deg) rotateY(3.5deg)}.portrait-zone:nth-child(71){inset-block-start:calc(100% * 7 / 9);inset-inline-start:calc(100% * 7 / 9)}.portrait-zone:nth-child(71):hover~main .portrait-scene{transform:rotateX(-5.25deg) rotateY(5.25deg)}.portrait-zone:nth-child(72){inset-block-start:calc(100% * 7 / 9);inset-inline-start:calc(100% * 8 / 9)}.portrait-zone:nth-child(72):hover~main .portrait-scene{transform:rotateX(-5.25deg) rotateY(7deg)}.portrait-zone:nth-child(73){inset-block-start:calc(100% * 8 / 9);inset-inline-start:0%}.portrait-zone:nth-child(73):hover~main .portrait-scene{transform:rotateX(-7deg) rotateY(-7deg)}.portrait-zone:nth-child(74){inset-block-start:calc(100% * 8 / 9);inset-inline-start:calc(100% * 1 / 9)}.portrait-zone:nth-child(74):hover~main .portrait-scene{transform:rotateX(-7deg) rotateY(-5.25deg)}.portrait-zone:nth-child(75){inset-block-start:calc(100% * 8 / 9);inset-inline-start:calc(100% * 2 / 9)}.portrait-zone:nth-child(75):hover~main .portrait-scene{transform:rotateX(-7deg) rotateY(-3.5deg)}.portrait-zone:nth-child(76){inset-block-start:calc(100% * 8 / 9);inset-inline-start:calc(100% * 3 / 9)}.portrait-zone:nth-child(76):hover~main .portrait-scene{transform:rotateX(-7deg) rotateY(-1.75deg)}.portrait-zone:nth-child(77){inset-block-start:calc(100% * 8 / 9);inset-inline-start:calc(100% * 4 / 9)}.portrait-zone:nth-child(77):hover~main .portrait-scene{transform:rotateX(-7deg) rotateY(0)}.portrait-zone:nth-child(78){inset-block-start:calc(100% * 8 / 9);inset-inline-start:calc(100% * 5 / 9)}.portrait-zone:nth-child(78):hover~main .portrait-scene{transform:rotateX(-7deg) rotateY(1.75deg)}.portrait-zone:nth-child(79){inset-block-start:calc(100% * 8 / 9);inset-inline-start:calc(100% * 6 / 9)}.portrait-zone:nth-child(79):hover~main .portrait-scene{transform:rotateX(-7deg) rotateY(3.5deg)}.portrait-zone:nth-child(80){inset-block-start:calc(100% * 8 / 9);inset-inline-start:calc(100% * 7 / 9)}.portrait-zone:nth-child(80):hover~main .portrait-scene{transform:rotateX(-7deg) rotateY(5.25deg)}.portrait-zone:nth-child(81){inset-block-start:calc(100% * 8 / 9);inset-inline-start:calc(100% * 8 / 9)}.portrait-zone:nth-child(81):hover~main .portrait-scene{transform:rotateX(-7deg) rotateY(7deg)}}}}:root{scroll-padding-block-start:0}body:before{display:none}.portal-preview{overflow-x:clip;--portal-finish: 65%;--portal-handoff: 82%;--portal-runway: 213.2svh;--portal-shell-max: 1184px;--portal-gutter: 40px;--portal-inset: max(var(--portal-gutter), calc((100vw - var(--portal-shell-max)) / 2));--portal-title-max: 128px}.portal-preview .shell{inline-size:min(var(--portal-shell-max),calc(100% - 2 * var(--portal-gutter)))}.portal-intro{position:relative;isolation:isolate;overflow:clip;background:var(--bg)}.portal-preview .site-header{min-block-size:88px}.portal-preview .hero{min-block-size:calc(100svh - 88px);padding-block:clamp(24px,5svh,64px);column-gap:80px;align-items:center;align-content:center;grid-template-rows:minmax(0,1fr);border:0}.portal-preview .hero-copy{padding:0}.portal-preview h1{font-size:clamp(72px,min(8.8vw,13svh),var(--portal-title-max))}.portal-preview .portrait-console{inline-size:min(100%,calc(100svh - 290px));margin:0 auto}.portal-fade>*{animation:hero-enter .8s cubic-bezier(.22,.61,.36,1) backwards}.portal-fade>.eyebrow{animation-delay:60ms}.portal-fade>.role{animation-delay:.38s}.portal-fade>.hero-description{animation-delay:.62s}.portal-fade>.current-role{animation-delay:.78s}.portal-preview .role-label{position:relative;display:inline-block;white-space:nowrap}.portal-preview .role-noise{position:absolute;inset:0;pointer-events:none;user-select:none}@media screen and (prefers-reduced-motion:no-preference){.portal-preview .role-readable{animation:role-text-ready 1.18s step-end .38s backwards}.portal-preview .role-noise:before{content:"";animation:role-ascii-noise 1.18s step-end .38s backwards}@keyframes role-text-ready{0%{opacity:0}to{opacity:1}}@keyframes role-ascii-noise{0%{content:"?{<[<_@ ;+#:]{;?"}9%{content:">]=@%=* =@@*>@+/"}18%{content:"P<{/?1= E{?>#{[%"}27%{content:"P[%1[#] E:+@*:?r"}36%{content:"P[o%;/; E*g@@@=r"}45%{content:"P;o<[c> E_g>+;>r"}54%{content:"Pro#%c[ E#g0n;1r"}63%{content:"Pro%*c< Eng;n/1r"}72%{content:"Pro#?ct Eng=n]er"}81%{content:"Prod1ct Eng]n_er"}90%{content:"Product Engin*er"}to{content:""}}}.portal-preview .hero-copy>.portal-fade{animation:none}.portal-work{background:var(--bg);min-block-size:100svh}.experience-scroll{padding-block:24px}.portal-preview .experience-content,.portal-preview .project{animation:none;opacity:1;transform:none}.portal-contact{min-block-size:100svh;display:flex;flex-direction:column;justify-content:center}.portal-preview .contact-section{flex:1;display:flex;flex-direction:column;justify-content:center;border-block-start:0}.portal-preview .site-footer{flex-shrink:0}.portal-arrival{display:block}.portal-motion-link{display:none!important}.name-track{display:none}@media(prefers-reduced-motion:no-preference){@supports (animation-timeline: view()) and (animation-range: contain 0% contain 100%){.portal-static-link{display:none!important}.portal-motion-link{display:inline-flex!important}body.portal-preview{timeline-scope:--portal,--portrait-view;animation:portal-portrait-gate steps(1,end) both;animation-timeline:--portal;animation-range:contain 0% contain 100%}.portal-story{position:relative}.name-track{display:block;position:absolute;inset:0 auto auto 0;inline-size:1px;block-size:360svh;pointer-events:none;view-timeline:--portal block;view-timeline-inset:0 calc(100% - 100svh)}.portal-arrival{position:absolute;inset-block-start:calc(var(--portal-runway) + 1px);inline-size:1px;block-size:1px;pointer-events:none}.portal-stage{display:grid;grid-template-columns:minmax(0,1fr);position:relative;overflow:clip;isolation:isolate;background:var(--bg)}.portal-intro{position:sticky;inset-block-start:0;grid-area:1 / 1;align-self:start;block-size:100svh;overflow:clip;z-index:2;background:transparent;animation:portal-intro-exit linear both}.portal-preview .hero{block-size:calc(100svh - 88px);min-block-size:0;grid-template-rows:minmax(0,1fr)}.portal-preview .hero-copy>.portal-fade,.portal-portrait-fade,.portal-header-fade{animation:portal-fade-out linear both}.portal-work{position:relative;grid-area:1 / 1;z-index:1;min-block-size:100svh}.portal-intro,.portal-preview .hero-copy>.portal-fade,.portal-portrait-fade,.portal-header-fade{animation-timeline:--portal;animation-range:contain 0% contain 100%}.portal-intro{animation-range:contain 0% contain var(--portal-finish)}@keyframes portal-fade-out{0%,4%{opacity:1;visibility:visible}20%,to{opacity:0;visibility:hidden}}@keyframes portal-intro-exit{0%,99.999%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes portal-work-enter{0%,21%{opacity:0;visibility:hidden}22%{opacity:.12;visibility:visible}30%{opacity:.45;visibility:visible}46%{opacity:.8;visibility:visible}64%,to{opacity:1;visibility:visible}}@keyframes portal-portrait-gate{0%{--portrait-visible: 1}20%,to{--portrait-visible: 0}}}}@media(min-width:1921px)and (min-height:900px){.portal-preview{--portal-shell-max: clamp(1184px, 61.6667vw, 2000px);--portal-title-max: clamp(128px, 6.6667vw, 216px)}.portal-preview .wordmark{font-size:clamp(33px,1.71875vw,44px)}.portal-preview .site-header nav a{font-size:clamp(12px,.625vw,16px)}.portal-preview .eyebrow{font-size:clamp(11px,.57292vw,14px)}.portal-preview .hero-description{max-inline-size:560px;font-size:clamp(15px,.78125vw,20px)}.portal-preview .role{font-size:clamp(17px,.88542vw,24px)}.portal-preview .text-link,.portal-preview .contact-profile{font-size:clamp(12px,.625vw,16px)}.portal-preview .current-role{font-size:clamp(10px,.52083vw,13px)}.portal-preview .portrait-caption{font-size:clamp(8px,.41667vw,11px)}.portal-preview .experience-description{max-inline-size:960px}.portal-preview .experience-description p{font-size:clamp(14px,.72917vw,20px)}.portal-preview .experience-heading h3{font-size:clamp(24px,1.25vw,32px)}.portal-preview .site-footer{font-size:clamp(9px,.46875vw,12px)}.portal-preview .project p{font-size:clamp(14px,.72917vw,18px)}.portal-preview .contact-section h2{font-size:clamp(66px,3.4375vw,104px)}}@media(max-width:800px){.portal-preview{--portal-gutter: 24px}.portal-preview .site-header{min-block-size:76px}.portal-preview .hero{min-block-size:calc(100svh - 76px);column-gap:24px}.portal-preview h1{font-size:clamp(64px,10.8vw,96px)}.portal-preview .hero-description{font-size:13px}.portal-preview .portrait-console{inline-size:100%}}@media(max-width:620px){.portal-preview{--portal-gutter: 20px}.portal-preview .site-header{min-block-size:60px}.portal-preview .hero{min-block-size:calc(100svh - 60px);padding-block:24px;row-gap:clamp(20px,4svh,36px);grid-template-rows:auto auto}.portal-preview h1{font-size:clamp(48px,min(18vw,9svh),76px);margin-block:12px 14px}.portal-preview .eyebrow{font-size:9px}.portal-preview .role{font-size:13px}.portal-preview .hero-description{font-size:12px;line-height:1.65;margin-block-start:13px}.portal-preview .text-link{padding-block:4px;font-size:10px}.portal-preview .current-role{font-size:8px;margin-block-start:10px;gap:6px}.portal-preview .portrait-console{inline-size:min(100%,clamp(160px,calc(100svh - 440px),300px))}.portal-preview .portrait-stage{margin:0}.portal-preview .portrait-caption{font-size:6px;padding-block-start:8px}.experience-scroll{padding-block:8px}}@media(max-width:620px)and (max-height:700px){.portal-preview .hero{padding-block:16px;row-gap:16px}.portal-preview h1{font-size:48px;margin-block:8px 10px}.portal-preview .role{font-size:12px}.portal-preview .hero-description{font-size:11.5px;line-height:1.55;margin-block-start:8px}.portal-preview .current-role{display:none}.portal-preview .portrait-console{inline-size:clamp(120px,calc(100svh - 390px),220px)}.portal-preview .portrait-caption{display:none}.portal-preview .portrait-stage{margin:0}}@media(prefers-reduced-motion:no-preference){@supports (animation-timeline: view()) and (animation-range: contain 0% contain 100%){@media(min-width:621px)and (max-width:800px){.portal-preview .hero{block-size:calc(100svh - 76px);min-block-size:0}}@media(max-width:620px){.portal-preview .hero{block-size:calc(100svh - 60px);min-block-size:0;grid-template-rows:auto auto}}}}@media(min-width:621px)and (max-height:640px){.portal-preview .hero{padding-block:12px;row-gap:10px}.portal-preview h1{font-size:48px;margin-block:10px}.portal-preview .role{font-size:12px}.portal-preview .hero-description{font-size:12px;line-height:1.55;margin-block-start:14px}.portal-preview .current-role{display:none}.portal-preview .portrait-console{inline-size:min(100%,calc(100svh - 160px))}.portal-preview .portrait-caption{display:none}.portal-preview .portrait-stage{margin:0}}@media(prefers-reduced-motion:reduce),print{.portal-fade>*{animation:none!important}.portal-arrival{block-size:0}}@property --glass-open{syntax: "<number>"; inherits: true; initial-value: 0;}.experience-portal-face{display:grid;grid-template-columns:minmax(0,1fr)}.portal-work .experience-scroll{grid-area:1 / 1;position:relative;display:grid;grid-template-columns:minmax(0,1fr);padding-block:0}.portal-work .experience-section{position:relative;grid-area:1 / 1;padding-block:clamp(40px,8svh,120px) 80px}.experience-intro{padding-inline:clamp(18px,2vw,32px);padding-block-end:8px}.experience-intro h2{color:var(--accent);font-size:clamp(30px,2.5vw,52px);line-height:1.15}.portal-work .company-identity{min-inline-size:0}.portal-work .experience-heading .company-name{margin:0;color:var(--text);font-size:clamp(28px,1.667vw,44px)}.portal-work .experience{position:relative;isolation:isolate;padding-inline:clamp(18px,2vw,32px);cursor:pointer;color:var(--text);background-color:var(--experience-surface, transparent);transition:background-color .2s ease-out,color .2s ease-out}.portal-work .experience,.portal-work .experience *{pointer-events:var(--experience-pointer, auto)}.portal-work .experience-link{position:absolute;inset:0;z-index:1;cursor:pointer}.portal-work .experience-link:focus-visible{outline:2px solid #000;outline-offset:-6px}.portal-work .experience-description strong{color:var(--text)}.portal-work .experience :is(.company-name,.experience-description p,.experience-description strong){transition:color .2s ease-out,border-color .2s ease-out}.portal-work .experience-mark{display:inline-block;flex-shrink:0;color:var(--muted);transform:var(--experience-arrow, translate(0, 0));transition:transform .32s cubic-bezier(.16,1,.3,1),color .2s ease-out}.portal-work .experience:has(.experience-link:focus-visible){--experience-surface: #c2f58b;--experience-arrow: translate(5px, -5px);--text: #000;--secondary: #000;--muted: #27401f;--accent: #17320b;--line: #0003}@media(hover:hover)and (pointer:fine){.portal-work .experience:hover{--experience-surface: #c2f58b;--experience-arrow: translate(5px, -5px);--text: #000;--secondary: #000;--muted: #27401f;--accent: #17320b;--line: #0003}}.work-atmosphere{display:none;position:sticky;inset-block-start:0;block-size:100svh;grid-area:1 / 1;align-self:start;z-index:2;overflow:clip;pointer-events:none}.glass-scene{position:absolute;inset-block:0;inset-inline-start:50%;inline-size:max(100%,90svh);transform:translate(-50%)}.glass-fragment{position:absolute;inset:0;background:linear-gradient(125deg,#3d655510,#060a0829 68%,#9ab79a0d);-webkit-backdrop-filter:blur(4px) brightness(.96) saturate(.85);backdrop-filter:blur(4px) brightness(.96) saturate(.85)}.glass-fragment:after{content:"";position:absolute;inset:0;background:url(/previews/assets/glass-fracture.webp) 0 0 / 100% 100% no-repeat;opacity:var(--glass-intensity, .75)}.glass-canvas{position:absolute;inset:0;inline-size:100%;block-size:100%;opacity:0}.work-atmosphere[data-renderer=webgpu] .glass-canvas{opacity:1}.portal-work .experience{opacity:1;filter:none;transform:none}@media(prefers-reduced-motion:no-preference){@supports (animation-timeline: view()) and (animation-range: contain 0% contain 100%){.portal-work .experience-section{animation:experience-interaction steps(1,end) both;animation-timeline:--portal;animation-range:contain 0% contain var(--experience-hover-at, 80.75%)}@keyframes experience-interaction{0%{--experience-pointer: none}to{--experience-pointer: auto}}.work-atmosphere{display:block;animation:glass-opening linear both;animation-timeline:--portal;animation-range:contain 0% contain 100%}@keyframes glass-opening{0%,20%{--glass-open: 0;visibility:visible}30%{--glass-open: .012}42%{--glass-open: .03}54%{--glass-open: .06}64%{--glass-open: .16}72%{--glass-open: .44}81.99%{visibility:visible}82%,to{--glass-open: 1;visibility:hidden}}.portal-work .experience{animation:experience-resolve linear both;animation-timeline:view(block);animation-range:entry 0% entry 85%}@keyframes experience-resolve{0%{opacity:.04;filter:blur(10px)}to{opacity:1;filter:none}}.portal-work .experience-section:focus-within{animation:none;--experience-pointer: auto}.experience-portal-face:focus-within .work-atmosphere{animation:none;--glass-open: 1;visibility:hidden}.portal-work .experience:focus-within{animation:none;opacity:1;filter:none;transform:none}}}@media(max-width:620px){.portal-work .experience-section{padding-block:32px 48px}.glass-fragment{-webkit-backdrop-filter:blur(3px) brightness(.96);backdrop-filter:blur(3px) brightness(.96)}}@media(prefers-reduced-motion:reduce),print{.work-atmosphere{display:none}.portal-work .experience{animation:none;opacity:1;filter:none;transform:none}.portal-work .experience-mark{transform:none}.portal-work .experience,.portal-work .experience *{transition:none}}.glass-left{--glass-intensity: .7;inset:0% auto auto 0%;width:33.379694019471486%;height:100%;clip-path:polygon(0% 0%,49.375% 0%,55.416667% 15.2%,63.333333% 32%,70.625% 49.333333%,79.166667% 65.2%,89.166667% 83.466667%,100% 100%,0% 100%);transform-origin:47.93333333333333% 48%;transform:translate(calc(-263.6333333333333% * var(--glass-open)),calc(6% * var(--glass-open))) rotate(calc(-12deg * var(--glass-open))) scale(calc(1 + .18 * var(--glass-open)))}.glass-left,.glass-left:after{background-size:299.5833333333333% 100%;background-position:0% 0%}.glass-diagonal{--glass-intensity: .84;inset:-25.066666666666666% auto auto 15.299026425591098%;width:45.96662030598053%;height:125.06666666666666%;clip-path:polygon(0% 0%,7.715582% 6.716418%,12.556732% 10.021322%,19.818457% 15.565032%,27.231467% 20.042644%,41.603631% 30.916844%,65.80938% 47.654584%,73.524962% 51.599147%,78.214826% 56.396588%,87.74584% 61.620469%,94.099849% 66.73774%,98.638427% 71.108742%,100% 76.759062%,94.704992% 84.434968%,89.107413% 91.897655%,82.753404% 100%,62.027231% 100%,48.260212% 76.439232%,40.090772% 63.219616%,32.223903% 50.639659%,24.659607% 36.780384%,13.464448% 20.042644%,5.597579% 9.381663%);transform-origin:60.26323751891075% 61.62046908315565%;transform:translate(calc(-165.3373676248109% * var(--glass-open)),calc(19.989339019189764% * var(--glass-open))) rotate(calc(-18deg * var(--glass-open))) scale(calc(1 + .24 * var(--glass-open)))}.glass-diagonal,.glass-diagonal:after{background-size:217.54916792738274% 79.95735607675905%;background-position:28.314028314028317% 100%}.glass-diagonal:after{background-image:url(/previews/assets/glass-diagonal.webp);background-size:100% 100%;background-position:0 0}.glass-right{--glass-intensity: .76;inset:0% auto auto 63.00417246175244%;width:36.99582753824757%;height:84.66666666666667%;clip-path:polygon(66.353383% 0%,100% 0%,100% 97.952756%,91.729323% 100%,75.93985% 99.685039%,62.406015% 98.110236%,47.744361% 97.322835%,35.150376% 88.188976%,22.932331% 77.795276%,10.902256% 70.708661%,8.646617% 67.401575%,3.007519% 62.992126%,0% 59.527559%,8.082707% 53.228346%,15.225564% 47.086614%,24.81203% 41.889764%,26.12782% 38.582677%,34.586466% 33.543307%,43.233083% 25.984252%,45.488722% 12.755906%);transform-origin:56.751879699248086% 49.60629921259843%;transform:translate(calc(221.64661654135335% * var(--glass-open)),calc(-9.448818897637794% * var(--glass-open))) rotate(calc(14deg * var(--glass-open))) scale(calc(1 + .22 * var(--glass-open)))}.glass-right,.glass-right:after{background-size:270.30075187969925% 118.11023622047243%;background-position:100% 0%}.glass-lower{--glass-intensity: .66;inset:63.33333333333333% auto auto 61.891515994436716%;width:22.878998609179416%;height:36.666666666666664%;clip-path:polygon(3.039514% 0%,19.756839% 10.909091%,40.425532% 36.363636%,59.574468% 58.545455%,86.322188% 85.818182%,100% 100%,34.346505% 100%,21.884498% 66.909091%,9.422492% 32.727273%,0% 15.636364%);transform-origin:35.440729483282645% 59.09090909090909%;transform:translate(calc(21.85410334346505% * var(--glass-open)),calc(215.45454545454547% * var(--glass-open))) rotate(calc(16deg * var(--glass-open))) scale(calc(1 + .18 * var(--glass-open)))}.glass-lower,.glass-lower:after{background-size:437.08206686930095% 272.7272727272727%;background-position:80.25247971145177% 100%}.glass-corner{--glass-intensity: .73;inset:85.33333333333334% auto auto 80.94575799721837%;width:19.054242002781642%;height:14.666666666666666%;clip-path:polygon(0% 33.636364%,16.788321% 6.363636%,31.021898% 27.272727%,63.50365% 16.363636%,100% 0%,100% 100%,34.306569% 100%,22.262774% 70%);transform-origin:58.014598540146004% 52.27272727272727%;transform:translate(calc(225.67153284671534% * var(--glass-open)),calc(463.6363636363637% * var(--glass-open))) rotate(calc(12deg * var(--glass-open))) scale(calc(1 + .16 * var(--glass-open)))}.glass-corner,.glass-corner:after{background-size:524.8175182481752% 681.8181818181819%;background-position:100% 100%}@property --portrait-exit{syntax: "<number>"; inherits: true; initial-value: 0;}.portal-preview .portrait-frame:before{display:none}.portal-preview .hero{position:relative;z-index:1}.portal-preview .hero-copy{position:relative;z-index:3}.portal-header-fade{position:relative;z-index:4}.portal-portrait-fade{position:relative;z-index:1}.portal-preview .portrait-stage{z-index:0;background:transparent}.portal-preview .portrait-scene{inset:4%;z-index:2}.portal-preview .portrait-frame{display:none}.portal-preview .portrait-caption{position:relative;z-index:3}.portrait-glass{position:absolute;z-index:0;container-type:size;overflow:visible;pointer-events:none}.portrait-shard{--shard-exit-x: calc(-1 * var(--portrait-exit) * var(--shard-exit-distance));position:absolute;display:block;width:auto;max-width:none;object-fit:contain;transform:translate(calc(-50% + var(--shard-exit-x)),-50%) rotate(var(--shard-angle));pointer-events:none}.portrait-glass-canvas{position:absolute;inset:0;width:100%;height:100%}.portrait-stage[data-glass-motion=gpu] .portrait-scene{animation:none;transition:none}.portrait-glass[data-glass-motion=gpu] .portrait-shard{display:none;animation:none}body.portal-preview:has(.portrait-stage[data-renderer=webgpu]){animation:none;--portrait-visible: 0}@media(prefers-reduced-motion:no-preference){.portal-preview .portrait-console{animation:none}.portal-preview .portrait-caption{animation:glass-arrival 1s cubic-bezier(.22,.61,.36,1) .9s backwards}.portrait-glass{animation:glass-arrival .16s ease-out 0ms backwards}@supports (animation-timeline: view()) and (animation-range: contain 0% contain 100%){.portrait-glass{animation:glass-arrival .16s ease-out 0ms backwards,portrait-glass-exit cubic-bezier(.2,.65,.35,1) both;animation-timeline:auto,--portal;animation-range:normal,contain 5% contain 16%}@keyframes portrait-glass-exit{0%{--portrait-exit: 0}to{--portrait-exit: 1}}}.portrait-shard{animation:shard-float var(--shard-period) ease-in-out var(--shard-delay) infinite paused,shard-burst var(--burst-duration) var(--burst-easing) var(--burst-delay) backwards}@container portrait-visibility style(--portrait-visible: 1){.portrait-shard{animation-play-state:running}}@keyframes shard-float{0%,to{transform:translate(calc(-50% + var(--shard-exit-x)),-50%) perspective(900px) rotateX(-3deg) rotateY(4deg) rotate(var(--shard-angle))}50%{transform:translate(calc(-47% + var(--shard-exit-x)),-53%) perspective(900px) rotateX(3deg) rotateY(-4deg) rotate(calc(var(--shard-angle) + 2deg))}}@keyframes glass-arrival{0%{opacity:0}to{opacity:1}}@keyframes shard-burst{0%{translate:var(--burst-x) var(--burst-y)}to{translate:0 0}}}@media(prefers-reduced-motion:reduce),print{.portrait-glass-canvas{display:none}}.portrait-glass{inset:-18% -12% -14.000000000000002% -114.99999999999999%}@media(max-width:620px){.portrait-glass{inset:-18% -16% -14.000000000000002% -34%}}.portrait-shard-core{left:81.03125%;top:49.388888888888886%;height:min(84.11111111111111cqh,47.3125cqw);aspect-ratio:455 / 757;--shard-angle: -5deg;--shard-period: 25s;--shard-delay: 0s;--shard-exit-distance: 0vw;--exit-start: 0;--exit-duration: .36;--exit-power: 2.4;--burst-x: 0cqw;--burst-y: 0cqh;--burst-delay: .16s;--burst-duration: 2.15s;--burst-easing: linear(0, .37966, .62903, .77641, .85013, .87849, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.8}.portrait-shard-shard-01{left:63.56275198874673%;top:22.382020199510627%;height:min(23.888888888888886cqh,13.437499999999998cqw);aspect-ratio:148 / 214.99999999999997;--shard-angle: 10deg;--shard-period: 26s;--shard-delay: -9.927s;--shard-exit-distance: 108.5vw;--exit-start: .1761290322580645;--exit-duration: .44235294117647056;--exit-power: 3.753846153846154;--burst-x: 4.13724801125327cqw;--burst-y: 7.45685454613213cqh;--burst-delay: .165s;--burst-duration: 2.31s;--burst-easing: linear(0, .40141, .65493, .79569, .8588, .87937, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.5086497954330377}.portrait-shard-shard-02{left:65.09902601989874%;top:37.36837415966259%;height:min(23.111111111111114cqh,13.000000000000002cqw);aspect-ratio:189 / 208.00000000000003;--shard-angle: 0deg;--shard-period: 27s;--shard-delay: -20.618s;--shard-exit-distance: 113.00000000000001vw;--exit-start: .352258064516129;--exit-duration: .5247058823529411;--exit-power: 3.5076923076923077;--burst-x: 3.800973980101263cqw;--burst-y: 3.410538976891103cqh;--burst-delay: .17s;--burst-duration: 2.4699999999999998s;--burst-easing: linear(0, .42244, .67868, .81165, .86426, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.567088897830991}.portrait-shard-shard-03{left:67.18523257016581%;top:71.33431877089548%;height:min(22.77777777777778cqh,12.8125cqw);aspect-ratio:174 / 205;--shard-angle: -10deg;--shard-period: 28s;--shard-delay: -32.072s;--shard-exit-distance: 117.5vw;--exit-start: .10838709677419354;--exit-duration: .40705882352941175;--exit-power: 3.2615384615384615;--burst-x: 2.9147674298341975cqw;--burst-y: -5.760266068141783cqh;--burst-delay: .175s;--burst-duration: 2.63s;--burst-easing: linear(0, .44278, .70038, .82459, .86724, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.6275701546228666}.portrait-shard-shard-04{left:63.739376975926874%;top:86.1735981748413%;height:min(17.77777777777778cqh,10cqw);aspect-ratio:202 / 160;--shard-angle: 19deg;--shard-period: 29s;--shard-delay: -44.29s;--shard-exit-distance: 122vw;--exit-start: .28451612903225804;--exit-duration: .4894117647058823;--exit-power: 3.0153846153846153;--burst-x: 2.7606230240731278cqw;--burst-y: -9.766871507207153cqh;--burst-delay: .18s;--burst-duration: 2.79s;--burst-easing: linear(0, .46244, .72011, .83484, .8685, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.6740237965889545}.portrait-shard-shard-05{left:56.50629581192737%;top:21.25234768193055%;height:min(21.555555555555557cqh,12.125cqw);aspect-ratio:124 / 194;--shard-angle: 9deg;--shard-period: 30s;--shard-delay: -57.272s;--shard-exit-distance: 104vw;--exit-start: .04064516129032258;--exit-duration: .37176470588235294;--exit-power: 2.769230769230769;--burst-x: 11.193704188072628cqw;--burst-y: 7.761866125878752cqh;--burst-delay: .185s;--burst-duration: 2.15s;--burst-easing: linear(0, .37966, .62903, .77641, .85013, .87849, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.7078896495103577}.portrait-shard-shard-06{left:55.23486190874538%;top:39.30029981661653%;height:min(16.11111111111111cqh,9.0625cqw);aspect-ratio:167 / 145;--shard-angle: -1deg;--shard-period: 31s;--shard-delay: -71.017s;--shard-exit-distance: 108.5vw;--exit-start: .2167741935483871;--exit-duration: .4541176470588235;--exit-power: 2.523076923076923;--burst-x: 13.665138091254626cqw;--burst-y: 2.8889190495135386cqh;--burst-delay: .16s;--burst-duration: 2.31s;--burst-easing: linear(0, .40141, .65493, .79569, .8588, .87937, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.4385274486739166}.portrait-shard-shard-07{left:60.706417862035835%;top:52.282341190239315%;height:min(17.66666666666667cqh,9.937500000000004cqw);aspect-ratio:161.0000000000001 / 159.00000000000006;--shard-angle: -11deg;--shard-period: 32s;--shard-delay: -85.526s;--shard-exit-distance: 113.00000000000001vw;--exit-start: .3929032258064516;--exit-duration: .5364705882352941;--exit-power: 3.876923076923077;--burst-x: 9.393582137964174cqw;--burst-y: -.6162321213646127cqh;--burst-delay: .165s;--burst-duration: 2.4699999999999998s;--burst-easing: linear(0, .42244, .67868, .81165, .86426, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.5028214456474841}.portrait-shard-shard-08{left:56.7281866058599%;top:70.01612990623346%;height:min(15.777777777777779cqh,8.875cqw);aspect-ratio:158 / 142;--shard-angle: 18deg;--shard-period: 33s;--shard-delay: -100.799s;--shard-exit-distance: 117.5vw;--exit-start: .14903225806451614;--exit-duration: .4188235294117647;--exit-power: 3.6307692307692307;--burst-x: 9.771813394140105cqw;--burst-y: -5.404355074683032cqh;--burst-delay: .17s;--burst-duration: 2.63s;--burst-easing: linear(0, .44278, .70038, .82459, .86724, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.5481624299158493}.portrait-shard-shard-09{left:52.55161892010064%;top:84.27830231756131%;height:min(15.777777777777779cqh,8.875cqw);aspect-ratio:131 / 142;--shard-angle: 8deg;--shard-period: 34s;--shard-delay: -116.835s;--shard-exit-distance: 122vw;--exit-start: .3251612903225806;--exit-duration: .5011764705882353;--exit-power: 3.3846153846153846;--burst-x: 15.148381079899364cqw;--burst-y: -9.255141625741558cqh;--burst-delay: .175s;--burst-duration: 2.79s;--burst-easing: linear(0, .46244, .72011, .83484, .8685, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.5912568423502298}.portrait-shard-shard-10{left:48.059047936758375%;top:23.616269003637896%;height:min(16.88888888888889cqh,9.5cqw);aspect-ratio:125 / 152;--shard-angle: -2deg;--shard-period: 35s;--shard-delay: -133.634s;--shard-exit-distance: 104vw;--exit-start: .08129032258064516;--exit-duration: .3835294117647059;--exit-power: 3.1384615384615384;--burst-x: 20.84095206324163cqw;--burst-y: 7.123607369017765cqh;--burst-delay: .18s;--burst-duration: 2.15s;--burst-easing: linear(0, .37966, .62903, .77641, .85013, .87849, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.6316555475251212}.portrait-shard-shard-11{left:49.4383538110005%;top:44.276649645385774%;height:min(17.666666666666668cqh,9.9375cqw);aspect-ratio:125 / 159;--shard-angle: -12deg;--shard-period: 36s;--shard-delay: -151.198s;--shard-exit-distance: 108.5vw;--exit-start: .25741935483870965;--exit-duration: .46588235294117647;--exit-power: 2.8923076923076922;--burst-x: 20.661646188999505cqw;--burst-y: 1.545304595745839cqh;--burst-delay: .185s;--burst-duration: 2.31s;--burst-easing: linear(0, .40141, .65493, .79569, .8588, .87937, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.687233589012649}.portrait-shard-shard-12{left:48.84086435802092%;top:50.89380409316492%;height:min(16.77777777777777cqh,9.437499999999996cqw);aspect-ratio:152 / 150.99999999999994;--shard-angle: 17deg;--shard-period: 37s;--shard-delay: -169.525s;--shard-exit-distance: 113.00000000000001vw;--exit-start: .013548387096774193;--exit-duration: .548235294117647;--exit-power: 2.646153846153846;--burst-x: 17.65913564197908cqw;--burst-y: -.24132710515453182cqh;--burst-delay: .16s;--burst-duration: 2.4699999999999998s;--burst-easing: linear(0, .42244, .67868, .81165, .86426, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.4268903731315981}.portrait-shard-shard-13{left:46.2611515061967%;top:68.83585274184301%;height:min(13.88888888888889cqh,7.8125cqw);aspect-ratio:129 / 125;--shard-angle: 7deg;--shard-period: 25s;--shard-delay: -124.089s;--shard-exit-distance: 117.5vw;--exit-start: .1896774193548387;--exit-duration: .43058823529411766;--exit-power: 2.4;--burst-x: 21.43884849380331cqw;--burst-y: -5.085680240297618cqh;--burst-delay: .165s;--burst-duration: 2.63s;--burst-easing: linear(0, .44278, .70038, .82459, .86724, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.47334587964839436}.portrait-shard-shard-14{left:46.509646177095654%;top:83.03868793017129%;height:min(10.777777777777779cqh,6.0625cqw);aspect-ratio:93 / 97;--shard-angle: -3deg;--shard-period: 26s;--shard-delay: -138.98s;--shard-exit-distance: 122vw;--exit-start: .3658064516129032;--exit-duration: .5129411764705882;--exit-power: 3.753846153846154;--burst-x: 22.390353822904352cqw;--burst-y: -8.920445741146244cqh;--burst-delay: .17s;--burst-duration: 2.79s;--burst-easing: linear(0, .46244, .72011, .83484, .8685, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.5250583100064133}.portrait-shard-shard-15{left:43.474880020469115%;top:29.55417538982988%;height:min(13.222222222222221cqh,7.4375cqw);aspect-ratio:119 / 119;--shard-angle: -13deg;--shard-period: 27s;--shard-delay: -154.634s;--shard-exit-distance: 104vw;--exit-start: .12193548387096774;--exit-duration: .3952941176470588;--exit-power: 3.5076923076923077;--burst-x: 26.625119979530893cqw;--burst-y: 5.520372644745936cqh;--burst-delay: .175s;--burst-duration: 2.15s;--burst-easing: linear(0, .37966, .62903, .77641, .85013, .87849, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.5687329147707941}.portrait-shard-shard-16{left:41.82685131510367%;top:48.92481945472629%;height:min(16.77777777777778cqh,9.4375cqw);aspect-ratio:108 / 151;--shard-angle: 16deg;--shard-period: 28s;--shard-delay: -171.052s;--shard-exit-distance: 108.5vw;--exit-start: .2980645161290323;--exit-duration: .4776470588235294;--exit-power: 3.2615384615384615;--burst-x: 24.673148684896333cqw;--burst-y: .2902987472239049cqh;--burst-delay: .18s;--burst-duration: 2.31s;--burst-easing: linear(0, .40141, .65493, .79569, .8588, .87937, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.6148161522534101}.portrait-shard-shard-17{left:39.38478428161658%;top:57.37605734238602%;height:min(11.666666666666666cqh,6.5625cqw);aspect-ratio:142 / 105;--shard-angle: 6deg;--shard-period: 29s;--shard-delay: -188.234s;--shard-exit-distance: 113.00000000000001vw;--exit-start: .05419354838709677;--exit-duration: .36;--exit-power: 3.0153846153846153;--burst-x: 28.315215718383424cqw;--burst-y: -1.9915354824442288cqh;--burst-delay: .185s;--burst-duration: 2.4699999999999998s;--burst-easing: linear(0, .42244, .67868, .81165, .86426, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.6578520320630245}.portrait-shard-shard-18{left:39.18096169789509%;top:70.67132601213993%;height:min(15.333333333333334cqh,8.625cqw);aspect-ratio:94 / 138;--shard-angle: -4deg;--shard-period: 30s;--shard-delay: -206.179s;--shard-exit-distance: 117.5vw;--exit-start: .23032258064516126;--exit-duration: .44235294117647056;--exit-power: 2.769230769230769;--burst-x: 29.71903830210491cqw;--burst-y: -5.58125802327778cqh;--burst-delay: .16s;--burst-duration: 2.63s;--burst-easing: linear(0, .44278, .70038, .82459, .86724, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.40930935029016907}.portrait-shard-shard-19{left:37.128625328661805%;top:40.40605415290789%;height:min(14cqh,7.875cqw);aspect-ratio:97 / 126;--shard-angle: -14deg;--shard-period: 31s;--shard-delay: -224.888s;--shard-exit-distance: 122vw;--exit-start: .4064516129032258;--exit-duration: .5247058823529411;--exit-power: 2.523076923076923;--burst-x: 32.9713746713382cqw;--burst-y: 2.5903653787148704cqh;--burst-delay: .165s;--burst-duration: 2.79s;--burst-easing: linear(0, .46244, .72011, .83484, .8685, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.45471095998313443}.portrait-shard-shard-20{left:33.9980969466805%;top:46.90332245801367%;height:min(11.333333333333334cqh,6.375cqw);aspect-ratio:108 / 102;--shard-angle: 15deg;--shard-period: 32s;--shard-delay: -244.36s;--shard-exit-distance: 104vw;--exit-start: .1625806451612903;--exit-duration: .40705882352941175;--exit-power: 3.876923076923077;--burst-x: 32.5019030533195cqw;--burst-y: .8361029363363082cqh;--burst-delay: .17s;--burst-duration: 2.15s;--burst-easing: linear(0, .37966, .62903, .77641, .85013, .87849, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.49676969719644465}.portrait-shard-shard-21{left:32.10986901833815%;top:66.78594195212708%;height:min(10cqh,5.625cqw);aspect-ratio:88 / 90;--shard-angle: 5deg;--shard-period: 33s;--shard-delay: -264.596s;--shard-exit-distance: 108.5vw;--exit-start: .3387096774193548;--exit-duration: .4894117647058823;--exit-power: 3.6307692307692307;--burst-x: 35.59013098166186cqw;--burst-y: -4.532204327074307cqh;--burst-delay: .175s;--burst-duration: 2.31s;--burst-easing: linear(0, .40141, .65493, .79569, .8588, .87937, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.5405306399690062}.portrait-shard-shard-22{left:31.229789808961055%;top:72.44065495962396%;height:min(8.11111111111111cqh,4.5625cqw);aspect-ratio:97 / 73;--shard-angle: -5deg;--shard-period: 34s;--shard-delay: -285.596s;--shard-exit-distance: 113.00000000000001vw;--exit-start: .09483870967741935;--exit-duration: .37176470588235294;--exit-power: 3.3846153846153846;--burst-x: 37.67021019103895cqw;--burst-y: -6.058976839098462cqh;--burst-delay: .18s;--burst-duration: 2.4699999999999998s;--burst-easing: linear(0, .42244, .67868, .81165, .86426, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.5861828920638128}.portrait-shard-shard-23{left:28.83725716953121%;top:41.52779425277971%;height:min(10.11111111111111cqh,5.6875cqw);aspect-ratio:85 / 91;--shard-angle: -15deg;--shard-period: 35s;--shard-delay: -307.359s;--shard-exit-distance: 117.5vw;--exit-start: .27096774193548384;--exit-duration: .4541176470588235;--exit-power: 3.1384615384615384;--burst-x: 41.262742830468795cqw;--burst-y: 2.2874955517494797cqh;--burst-delay: .185s;--burst-duration: 2.63s;--burst-easing: linear(0, .44278, .70038, .82459, .86724, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.6270268840779549}.portrait-shard-shard-24{left:28.47906184000753%;top:60.60209323186246%;height:min(10.444444444444445cqh,5.875cqw);aspect-ratio:88 / 94;--shard-angle: 14deg;--shard-period: 36s;--shard-delay: -329.886s;--shard-exit-distance: 122vw;--exit-start: .027096774193548386;--exit-duration: .5364705882352941;--exit-power: 2.8923076923076922;--burst-x: 38.020938159992475cqw;--burst-y: -2.862565172602871cqh;--burst-delay: .16s;--burst-duration: 2.79s;--burst-easing: linear(0, .46244, .72011, .83484, .8685, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.38983189254881373}.portrait-shard-shard-25{left:21.311219284174022%;top:49.63393154381284%;height:min(8cqh,4.5cqw);aspect-ratio:75 / 72;--shard-angle: 4deg;--shard-period: 37s;--shard-delay: -353.177s;--shard-exit-distance: 104vw;--exit-start: .2032258064516129;--exit-duration: .4188235294117647;--exit-power: 2.646153846153846;--burst-x: 46.38878071582598cqw;--burst-y: .09883848317053245cqh;--burst-delay: .165s;--burst-duration: 2.8s;--burst-easing: linear(0, .46365, .72128, .8354, .86854, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.42243554294935703}.portrait-shard-shard-26{left:20.687913356854974%;top:66.37705981605502%;height:min(8.555555555555555cqh,4.8125cqw);aspect-ratio:83 / 77;--shard-angle: -6deg;--shard-period: 25s;--shard-delay: -248.178s;--shard-exit-distance: 108.5vw;--exit-start: .3793548387096774;--exit-duration: .5011764705882353;--exit-power: 2.4;--burst-x: 48.212086643145035cqw;--burst-y: -4.4218061503348505cqh;--burst-delay: .17s;--burst-duration: 2.96s;--burst-easing: linear(0, .48259, .73902, .84313, .86878, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.4666753720998491}.portrait-shard-shard-27{left:18.757230742237077%;top:56.867712488080016%;height:min(7.444444444444445cqh,4.1875cqw);aspect-ratio:72 / 67;--shard-angle: -16deg;--shard-period: 26s;--shard-delay: -268.033s;--shard-exit-distance: 113.00000000000001vw;--exit-start: .13548387096774192;--exit-duration: .3835294117647059;--exit-power: 3.753846153846154;--burst-x: 51.34276925776293cqw;--burst-y: -1.8542823717816015cqh;--burst-delay: .175s;--burst-duration: 3.1199999999999997s;--burst-easing: linear(0, .50088, .75499, .84881, .86878, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.5073960680868613}.portrait-shard-shard-28{left:37.5504703756825%;top:22.665706241204433%;height:min(7cqh,3.9375cqw);aspect-ratio:75 / 63;--shard-angle: 13deg;--shard-period: 27s;--shard-delay: -288.65s;--shard-exit-distance: 117.5vw;--exit-start: .3116129032258064;--exit-duration: .46588235294117647;--exit-power: 3.5076923076923077;--burst-x: 28.949529624317506cqw;--burst-y: 7.3802593148748015cqh;--burst-delay: .18s;--burst-duration: 2.63s;--burst-easing: linear(0, .44278, .70038, .82459, .86724, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.6032613709550941}.portrait-shard-shard-29{left:54.426111367534205%;top:13.147460130556023%;height:min(8.222222222222221cqh,4.625cqw);aspect-ratio:79 / 74;--shard-angle: 3deg;--shard-period: 28s;--shard-delay: -310.032s;--shard-exit-distance: 122vw;--exit-start: .06774193548387096;--exit-duration: .548235294117647;--exit-power: 3.2615384615384615;--burst-x: 13.273888632465802cqw;--burst-y: 9.950185764749872cqh;--burst-delay: .185s;--burst-duration: 2.79s;--burst-easing: linear(0, .46244, .72011, .83484, .8685, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.7018103104716187}.portrait-shard-shard-30{left:42.36835008180805%;top:83.84478509238026%;height:min(8cqh,4.5cqw);aspect-ratio:78 / 72;--shard-angle: -7deg;--shard-period: 29s;--shard-delay: -332.177s;--shard-exit-distance: 104vw;--exit-start: .24387096774193548;--exit-duration: .43058823529411766;--exit-power: 3.0153846153846153;--burst-x: 26.531649918191953cqw;--burst-y: -9.138091974942675cqh;--burst-delay: .16s;--burst-duration: 2.15s;--burst-easing: linear(0, .37966, .62903, .77641, .85013, .87849, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.41511039714889064}.portrait-shard-shard-31{left:27.576287993293498%;top:72.83589417179155%;height:min(6.777777777777778cqh,3.8125cqw);aspect-ratio:70 / 61;--shard-angle: -17deg;--shard-period: 30s;--shard-delay: -355.086s;--shard-exit-distance: 108.5vw;--exit-start: 0;--exit-duration: .5129411764705882;--exit-power: 2.769230769230769;--burst-x: 42.52371200670651cqw;--burst-y: -6.165691426383724cqh;--burst-delay: .165s;--burst-duration: 2.96s;--burst-easing: linear(0, .48259, .73902, .84313, .86878, .87941, .88946, .89893, .90784, .91621, .92406, .93141, .93826, .94464, .95057, .95605, .96112, .96578, .97005, .97395, .9775, .98071, .9836, .98618, .98848, .99051, .99228, .99382, .99514, .99626, .99719, .99795, .99856, .99904, .99939, .99965, .99982, .99992, .99998, 1, 1);opacity:.4352194156503154}.work-chapters,.project-chapters,.portal-transition{position:relative}.projects-arrival{display:block;block-size:0}.project-panel{position:relative;min-block-size:100svh;overflow:clip;background:#111611}.project-inner{position:relative;isolation:isolate;min-block-size:100svh;display:grid;grid-template-rows:auto 1fr auto;gap:clamp(24px,4svh,80px);padding-block:clamp(30px,6svh,120px)}.project-chapter-label,.project-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font:clamp(9px,.65vw,16px)/1.6 var(--font);color:var(--muted);letter-spacing:.025em}.project-chapter-label .eyebrow{font-size:inherit}.project-chapter-label>span{white-space:nowrap}.project-story{position:relative;align-self:center;max-inline-size:70%}.project-kind{font:clamp(9px,.7vw,17px)/1.6 var(--font);letter-spacing:.08em;color:var(--secondary)}.project-story h3{font-size:clamp(64px,min(8.4vw,15svh),240px);line-height:1.02;letter-spacing:-.065em;margin-block:clamp(16px,3svh,56px) clamp(20px,3.6svh,70px);text-wrap:nowrap}.project-story h3>span{color:var(--accent)}.project-story [data-title-typewriter]{position:relative}.project-story h3>:is(.project-title-original,.project-title-typed){color:inherit}.project-title-original>span,.project-title-caret{color:var(--accent)}.project-title-typed{position:absolute;inset:0 auto auto 0;pointer-events:none;user-select:none}@media(prefers-reduced-motion:no-preference){[data-typing=waiting] .project-title-original,[data-typing=typing] .project-title-original{opacity:0}[data-typing=typing] .project-title-caret{animation:project-caret-blink .7s step-end infinite}@keyframes project-caret-blink{0%,55%{opacity:1}56%,to{opacity:0}}}@media(prefers-reduced-motion:reduce),print{.project-title-original{opacity:1!important}.project-title-typed{display:none}}.project-thought{font-size:clamp(22px,2.1vw,56px);line-height:1.25;letter-spacing:-.035em}.project-description{max-inline-size:44ch;margin-block-start:clamp(16px,2.4svh,40px);color:var(--secondary);font-size:clamp(14px,1.12vw,28px);line-height:1.8}.project-detail{margin-block-start:clamp(20px,3svh,48px);color:var(--muted);font:clamp(9px,.68vw,17px)/1.8 var(--font)}.project-bottom{border-block-start:1px solid #ffffff12;padding-block-start:clamp(15px,2.4svh,36px)}.project-bottom>span:last-child{white-space:nowrap}.project-tantovale{--accent: #f7c13d;--tantovale-light-x: 82%;--tantovale-light-y: 38%;background:radial-gradient(ellipse at var(--tantovale-light-x) var(--tantovale-light-y),#cc176a26,transparent 57%),radial-gradient(ellipse at calc(var(--tantovale-light-x) - 16%) calc(var(--tantovale-light-y) + 30%),#f7c13d1c,transparent 55%),linear-gradient(115deg,#101011 15%,#171315 65%,#1e1019)}.tantovale-layout{display:grid;grid-template-columns:1.12fr 1fr;gap:clamp(24px,3vw,80px);align-items:center;align-self:center}.project-tantovale .project-story{max-inline-size:none;min-inline-size:0}.project-tantovale .project-story h3{font-size:clamp(64px,min(7.2vw,13svh),182px)}.tantovale-visual{position:relative;inline-size:min(100%,65svh);min-inline-size:0;justify-self:center;isolation:isolate}.tantovale-visual:before{content:"";position:absolute;inset:auto 20% 3%;block-size:9%;border-radius:50%;background:radial-gradient(ellipse,#0006,#0002 40%,transparent 72%);filter:blur(4px);pointer-events:none}.tantovale-object{position:relative;inline-size:100%;aspect-ratio:1;transform-origin:50% 55%;pointer-events:none}.tantovale-logo{position:relative;display:block;inline-size:100%;block-size:auto;object-fit:contain;user-select:none}.tantovale-canvas{position:absolute;inset:0;inline-size:100%;block-size:100%}.tantovale-canvas[hidden]{display:none}.tantovale-object[data-renderer=webgpu] .tantovale-logo{opacity:0}@media(prefers-reduced-motion:reduce),print{.tantovale-object{transform:none!important}.tantovale-object[data-renderer] .tantovale-logo{opacity:1}.tantovale-canvas{display:none}}.tantovale-repository{display:inline-flex;align-items:center;gap:28px;margin-block-start:clamp(24px,3svh,48px);padding:14px 20px;border:1px solid #f7c13d66;color:var(--accent);font:clamp(11px,.8vw,18px)/1.5 var(--font);transition:border-color .2s,background .2s}.tantovale-repository:hover{border-color:var(--accent);background:#f7c13d0a}.tantovale-repository>span{transition:transform .2s}.tantovale-repository:hover>span{transform:translate(2px,-2px)}@media(max-width:1000px)and (min-width:621px){.tantovale-layout{gap:20px}.project-tantovale .project-story h3{font-size:clamp(48px,7.6vw,74px)}}@media(max-width:620px){.project-tantovale{--tantovale-light-x: 65%;--tantovale-light-y: 18%}.project-tantovale .project-inner{padding-block:24px;gap:16px}.tantovale-layout{grid-template-columns:1fr;gap:12px}.tantovale-visual{order:-1;inline-size:min(64vw,25svh);justify-self:center}.project-tantovale .project-story h3{font-size:clamp(45px,12vw,68px);margin-block:8px 14px}.project-tantovale .project-thought{font-size:23px}.project-tantovale .project-description{font-size:13px;line-height:1.65;margin-block-start:12px}.project-tantovale .project-detail{margin-block-start:12px}.tantovale-repository{margin-block-start:18px;padding:12px 17px;font-size:11px}}@media(max-width:620px)and (max-height:700px){.project-tantovale .project-inner{padding-block:16px;gap:10px}.tantovale-layout{gap:6px}.tantovale-visual{inline-size:22svh}.project-tantovale .project-story h3{font-size:42px;margin-block:6px 10px}.project-tantovale .project-thought{font-size:20px}.project-tantovale .project-description{font-size:12px;margin-block-start:9px}.project-tantovale .project-detail{display:none}.tantovale-repository{margin-block-start:12px;padding:10px 14px}}@media(min-width:621px)and (max-height:650px){.project-tantovale .project-story h3{font-size:clamp(42px,8svh,64px);margin-block:8px 12px}.project-tantovale .project-thought{font-size:22px}.project-tantovale .project-description{font-size:12px;line-height:1.6;margin-block-start:10px}.project-tantovale .project-detail{margin-block-start:12px}.tantovale-repository{margin-block-start:14px;padding:10px 15px}}@media(min-width:621px)and (max-height:450px){.project-tantovale .project-story h3{font-size:40px;margin-block:6px 8px}.project-tantovale .project-thought{font-size:18px}.project-tantovale .project-description{font-size:11px;margin-block-start:8px}.project-tantovale .project-detail{display:none}.tantovale-repository{margin-block-start:12px;padding:8px 13px}}.portal-preview .contact-section{position:relative;align-items:center;text-align:center;padding-block:100px}.portal-preview .contact-section>.eyebrow{position:absolute;inset-block-start:clamp(35px,7svh,130px)}.portal-preview .contact-section h2{font-size:clamp(44px,min(10vw,18svh),260px);line-height:1.08;letter-spacing:-.065em}.contact-invitation{display:block;padding:.12em}.contact-invitation a{text-decoration:none;transition:color .2s}.contact-invitation a:hover{color:#0a66c2}.contact-invitation em{display:inline-block;transition:transform .3s ease}.contact-invitation:is(:hover,:focus-within) em{transform:translateY(-.05em)}.contact-arrow{display:inline-block;font-size:.45em;vertical-align:.35em;margin-inline-start:.18em;color:var(--accent)}.portal-preview .site-header nav a:nth-last-child(2){animation-delay:.26s}.portal-preview .site-header nav a:last-child{animation-delay:.34s}@media(prefers-reduced-motion:no-preference){@supports (animation-timeline: view()) and (animation-range: contain 0% contain 100%){.experience-hold:after{content:"";display:block;block-size:var(--portal-runway)}.experience-portal-face{position:sticky;inset-block-start:0;animation:portal-work-enter linear both;animation-timeline:--portal;animation-range:contain 0% contain 100%}}}[data-portal=on] .portal-transition{block-size:637svh;margin-block-start:calc(-65svh - var(--portal-handoff-offset, 104px));pointer-events:none}[data-portal=on] .portal-viewport{position:sticky;inset-block-start:0;block-size:100svh}[data-portal=on] .project-chapters{pointer-events:none}[data-portal=on] .project-panel{pointer-events:auto}[data-portal=on] .portal-destination:not([data-portal-state=visible]):not(:focus-within){opacity:0;pointer-events:none}[data-portal=on] .portal-viewport:has(.portal-destination:focus-within) .portal-canvas{visibility:hidden}[data-portal=on] .projects-arrival{position:absolute;inset-block-start:537svh;inline-size:1px;block-size:1px}.portal-canvas{position:absolute;inset:0;z-index:1;inline-size:100%;block-size:100%;pointer-events:none}.portal-canvas[hidden]{display:none}@media(max-width:620px){[data-portal=on] .portal-transition{--portal-handoff-offset: 72px}}@media(prefers-reduced-motion:reduce){[data-portal=on] .portal-transition{block-size:auto;margin-block-start:0}[data-portal=on] .portal-viewport{position:static;block-size:auto}[data-portal=on] .portal-destination:not([data-portal-state=visible]):not(:focus-within){opacity:1;pointer-events:auto}[data-portal=on] .projects-arrival{position:static}.portal-canvas{display:none}}@media(max-width:800px){.portal-preview .site-header{gap:16px}.portal-preview .site-header nav{gap:20px}.project-story{max-inline-size:100%}.project-description{max-inline-size:40ch}}@media(max-width:620px){.portal-preview .site-header nav{gap:13px}.portal-preview .site-header nav a{font-size:9px}.project-story h3{font-size:clamp(47px,13.5vw,78px)}.project-thought{font-size:25px}.project-description{font-size:14px}.project-bottom{align-items:start;flex-direction:column;gap:9px;font-size:8px}.project-chapter-label{font-size:8px;gap:10px}.project-chapter-label .eyebrow{font-size:inherit}.project-detail{font-size:9px}.portal-preview .contact-section h2{font-size:clamp(39px,10.8vw,66px)}}@media(max-height:650px){.project-inner{gap:16px;padding-block:22px}.project-story h3{font-size:clamp(44px,9vw,76px);margin-block:12px 16px}.project-thought{font-size:22px}.project-description{font-size:13px;line-height:1.6;margin-block-start:12px}.project-detail{margin-block-start:12px;font-size:9px}.project-bottom{padding-block-start:12px}}@media(max-height:450px){.project-story{max-inline-size:85%}.project-story h3{font-size:48px;margin-block:8px 10px}.project-thought{font-size:19px}.project-description{max-inline-size:65ch;font-size:12px;line-height:1.55;margin-block-start:9px}.project-detail{display:none}.project-bottom{flex-direction:row;font-size:8px}}@media(prefers-reduced-motion:reduce){.contact-invitation a,.contact-invitation em{transition:none}.tantovale-logo{transform:none!important}}@media print{.project-panel,.project-inner{min-block-size:0}.project-inner{display:block;padding-block:30px}.project-story{max-inline-size:100%}.project-story h3{font-size:30px}.project-bottom{display:none}.portal-preview .contact-section h2{font-size:35px}}.project-nomadgem{--accent: #a799ff;--nomadgem-float: -16px;background:#0f0f10}.project-nomadgem:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 83% 48%,#432dd718,transparent 55%)}.nomadgem-layout{display:grid;grid-template-columns:1.12fr 1fr;align-items:center;align-self:center;gap:clamp(24px,3vw,80px);min-inline-size:0}.project-nomadgem .project-story{max-inline-size:none;min-inline-size:0;z-index:1}.project-nomadgem .project-kind{color:#b9b2d2;font-size:clamp(9px,.62vw,15px);letter-spacing:.1em}.project-nomadgem .project-story h3{font-size:clamp(64px,min(7.2vw,13svh),182px);margin-block:.2em .27em}.project-nomadgem .project-thought{max-inline-size:22ch;font-size:clamp(24px,1.9vw,48px);color:#fafafa}.project-nomadgem .project-description{max-inline-size:41ch;color:#b1b0bb;font-size:clamp(14px,1vw,24px);line-height:1.8}.nomadgem-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-block:clamp(24px,3svh,48px)}.nomadgem-highlights li{border-block-start:1px solid #ffffff1c;padding-block-start:12px}.nomadgem-highlights li>span{display:block;color:var(--accent);font:clamp(8px,.55vw,12px)/1.6 var(--font);margin-block-end:5px}.nomadgem-highlights strong{display:block;color:#e9e7f4;font-size:clamp(12px,.9vw,22px);font-weight:500}.nomadgem-highlights small{display:block;margin-block-start:6px;color:#95939f;font-size:clamp(10px,.7vw,17px);line-height:1.5}.nomadgem-visit{display:inline-flex;align-items:center;gap:28px;padding:16px 22px;border:1px solid #8a76ff55;border-radius:12px;background:#432dd7;color:#fff;font-size:clamp(13px,.85vw,20px);font-weight:500;transition:background .2s,border-color .2s}.nomadgem-visit:hover{color:#fff;background:#5038e5;border-color:#a799ff}.nomadgem-visit>span{transition:transform .2s}.nomadgem-visit:hover>span{transform:translate(2px,-2px)}.nomadgem-visit:focus-visible{outline-color:#c8bfff}.nomadgem-platform-divider{margin-inline:12px;color:#555361}.nomadgem-visual{position:relative;inline-size:100%;aspect-ratio:1;isolation:isolate}.nomadgem-visual:before{content:"";position:absolute;inset:10%;border-radius:50%;background:radial-gradient(ellipse,#7662ff14,transparent 68%)}.nomadgem-logo-shadow{position:absolute;inset:auto 20% 15%;block-size:8%;border-radius:50%;background:#0009;filter:blur(12px);pointer-events:none}.nomadgem-logo-float{position:relative;z-index:2;inline-size:100%;block-size:100%}.nomadgem-logo-tilt{inline-size:100%;block-size:100%;transform-origin:50% 55%}.nomadgem-logo{inline-size:90%;block-size:90%;margin:5%;object-fit:contain;user-select:none;filter:drop-shadow(0 18px 20px #0006)}.nomadgem-visual figcaption{position:absolute;inset:auto 0 1%;display:flex;align-items:center;justify-content:center;gap:9px;color:#98929e;font:clamp(8px,.56vw,13px)/1.5 var(--font);letter-spacing:.07em}.nomadgem-visual figcaption>span{inline-size:4px;block-size:4px;background:#a799ff;border-radius:50%}@media(prefers-reduced-motion:no-preference){.nomadgem-logo-float{animation:nomadgem-float 6.8s ease-in-out infinite paused}.nomadgem-logo-shadow{animation:nomadgem-shadow 6.8s ease-in-out infinite paused}.project-nomadgem[data-motion=active] :is(.nomadgem-logo-float,.nomadgem-logo-shadow){animation-play-state:running}@keyframes nomadgem-float{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(var(--nomadgem-float)) rotate(1deg)}}@keyframes nomadgem-shadow{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(.87);opacity:.5}}}@media(max-width:1000px)and (min-width:621px){.nomadgem-layout{grid-template-columns:1.15fr 1fr;gap:18px}.project-nomadgem .project-story h3{font-size:clamp(48px,7.6vw,74px)}.project-nomadgem .project-thought{font-size:24px}.nomadgem-highlights{gap:10px}}@media(max-width:620px){.project-nomadgem{--nomadgem-float: -10px}.project-nomadgem .project-inner{padding-block:24px;gap:16px}.nomadgem-layout{grid-template-columns:1fr;gap:12px}.nomadgem-visual{order:-1;inline-size:min(76vw,27svh);justify-self:center;margin-block:-10px}.nomadgem-visual figcaption{display:none}.project-nomadgem .project-kind{font-size:8px;letter-spacing:.055em}.project-nomadgem .project-story h3{font-size:clamp(45px,12vw,68px);margin-block:8px 14px}.project-nomadgem .project-thought{font-size:23px;max-inline-size:none}.project-nomadgem .project-description{font-size:13px;line-height:1.65;margin-block-start:12px;max-inline-size:none}.nomadgem-highlights{margin-block:18px;gap:12px}.nomadgem-highlights li{padding-block-start:8px}.nomadgem-highlights li>span{display:none}.nomadgem-highlights strong{font-size:11px}.nomadgem-highlights small{font-size:9px;margin-block-start:4px}.nomadgem-visit{padding:12px 17px;font-size:12px;border-radius:10px}.project-nomadgem .project-bottom{gap:6px;padding-block-start:12px;font-size:7px}}@media(max-width:620px)and (max-height:700px){.project-nomadgem .project-inner{padding-block:16px;gap:10px}.nomadgem-visual{inline-size:min(52vw,24svh);margin-block:-8px}.nomadgem-layout{gap:6px}.project-nomadgem .project-story h3{font-size:42px;margin-block:6px 10px}.project-nomadgem .project-thought{font-size:20px}.project-nomadgem .project-description{font-size:12px;margin-block-start:9px}.nomadgem-highlights{margin-block:12px}.nomadgem-highlights small{display:none}.nomadgem-visit{padding:10px 14px}}@media(min-width:621px)and (max-height:650px){.project-nomadgem .project-inner{padding-block:20px;gap:14px}.project-nomadgem .project-story h3{font-size:clamp(42px,8svh,64px);margin-block:8px 12px}.project-nomadgem .project-thought{font-size:22px}.project-nomadgem .project-description{font-size:12px;margin-block-start:10px}.nomadgem-visual{max-inline-size:65svh;justify-self:center}.nomadgem-highlights{margin-block:14px}.nomadgem-highlights li>span{display:none}.nomadgem-visit{padding:10px 15px}}@media(min-width:621px)and (max-height:450px){.project-nomadgem .project-kind{font-size:8px}.project-nomadgem .project-story h3{font-size:40px;margin-block:5px 8px}.project-nomadgem .project-thought{font-size:18px}.project-nomadgem .project-description{line-height:1.5;font-size:11px;margin-block-start:8px}.nomadgem-highlights{margin-block:10px}.nomadgem-highlights li{padding-block-start:6px}.nomadgem-highlights small{display:none}.nomadgem-visit{font-size:11px;padding:8px 13px}.project-nomadgem .project-bottom{font-size:7px}}@media(prefers-reduced-motion:reduce){.nomadgem-logo-tilt{transform:none!important}}@media print{.nomadgem-layout{display:block}.nomadgem-visual{display:none}}.nomadgem-crystals{position:absolute;inset-block-start:-18%;inset-inline-start:-10%;inline-size:120%;aspect-ratio:1;pointer-events:none;z-index:0}.nomadgem-crystal{position:absolute;display:block;block-size:auto;opacity:.87;transform-origin:50% 70%}.nomadgem-crystal-canvas{position:absolute;inset:0;inline-size:100%;block-size:100%}.nomadgem-crystal-canvas[hidden]{display:none}.nomadgem-crystals[data-renderer=webgpu] .nomadgem-crystal{visibility:hidden;animation:none}.nomadgem-logo-shadow{z-index:1}.nomadgem-visual figcaption{z-index:3}@media(prefers-reduced-motion:no-preference){.nomadgem-crystal{animation:crystal-drift var(--crystal-period, 8s) ease-in-out var(--crystal-delay, 0s) infinite alternate paused}.project-nomadgem[data-motion=active] .nomadgem-crystal{animation-play-state:running}@keyframes crystal-drift{0%{transform:translateY(0) rotate(-.7deg)}to{transform:translateY(-5px) rotate(.7deg)}}}.crystal-left-spear{left:18.790849673202615%;top:49.01960784313725%;width:20.424836601307188%;--crystal-period: 7s;--crystal-delay: 0s}.crystal-left-prism{left:29.73856209150327%;top:31.699346405228756%;width:15.196078431372548%;--crystal-period: 7.4s;--crystal-delay: -.7s}.crystal-crown{left:43.790849673202615%;top:15.686274509803921%;width:19.28104575163399%;--crystal-period: 7.8s;--crystal-delay: -1.4s}.crystal-right-prism{left:53.431372549019606%;top:40.68627450980392%;width:16.666666666666664%;--crystal-period: 8.2s;--crystal-delay: -2.0999999999999996s}.crystal-right-spear{left:57.51633986928104%;top:50.98039215686274%;width:23.366013071895424%;--crystal-period: 8.6s;--crystal-delay: -2.8s}.crystal-right-base{left:55.88235294117647%;top:67.3202614379085%;width:22.058823529411764%;--crystal-period: 9s;--crystal-delay: -3.5s}.crystal-left-base{left:19.934640522875817%;top:68.79084967320262%;width:19.607843137254903%;--crystal-period: 9.4s;--crystal-delay: -4.199999999999999s}.crystal-centre-base{left:38.0718954248366%;top:71.07843137254902%;width:13.071895424836603%;--crystal-period: 9.8s;--crystal-delay: -4.8999999999999995s}.crystal-front-prism{left:48.20261437908497%;top:64.37908496732027%;width:10.130718954248366%;--crystal-period: 10.2s;--crystal-delay: -5.6s}.youtube-section{--accent: #f28570;position:relative;min-block-size:100svh;background:radial-gradient(ellipse at 88% 20%,#ab442014,transparent 60%),#121110}.youtube-inner{min-block-size:100svh;display:grid;grid-template-rows:auto 1fr auto;gap:clamp(28px,5svh,100px);padding-block:clamp(30px,6svh,120px)}.youtube-layout{display:grid;grid-template-columns:.86fr 1.14fr;gap:clamp(36px,6vw,180px);align-items:center}.youtube-story h2{margin-block:.24em .3em;font-size:clamp(52px,min(6.8vw,12svh),180px);line-height:1.04;letter-spacing:-.065em;font-weight:500}.youtube-story h2 em{font-style:normal;color:var(--accent)}.youtube-story>p:not(.project-kind){max-inline-size:38ch;font-size:clamp(14px,1.05vw,25px);line-height:1.8;color:#b9b5b0}.youtube-story>.youtube-invitation{margin-block-start:12px}.youtube-channel{display:inline-flex;align-items:center;gap:24px;padding:15px 20px;margin-block-start:clamp(24px,3.5svh,60px);border:1px solid #f2857055;color:#f4c9bf;font:clamp(11px,.85vw,19px)/1.6 var(--font);transition:background .2s,border-color .2s}.youtube-channel:hover{background:#f2857010;border-color:#f28570;color:#fff}.youtube-channel>span{transition:transform .2s}.youtube-channel:hover>span{transform:translate(2px,-2px)}.youtube-film{min-inline-size:0}.youtube-player{position:relative;aspect-ratio:16 / 9;background:#070706;border:1px solid #ffffff18;box-shadow:0 30px 70px #0004}.youtube-play{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;color:#fff}.youtube-play:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,#0008);pointer-events:none}.youtube-play img{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover;transform:scale(1.01);transition:transform .7s,opacity .3s;opacity:.86}.youtube-play:hover img{transform:scale(1.035);opacity:1}.youtube-play-icon{z-index:1;display:grid;place-items:center;inline-size:clamp(50px,5vw,112px);aspect-ratio:1;border-radius:50%;background:#f4eee6ed;color:#181510;box-shadow:0 8px 40px #0006;transition:transform .25s,background .25s}.youtube-play-icon svg{inline-size:44%}.youtube-play:hover .youtube-play-icon{transform:scale(1.08);background:#fff}.youtube-play-label{position:absolute;inset:auto auto 22px 25px;z-index:1;font:clamp(9px,.7vw,16px)/1.5 var(--font);letter-spacing:.08em}.youtube-film figcaption{margin-block-start:clamp(18px,2.6svh,48px)}.youtube-film h3{font-size:clamp(18px,1.65vw,40px);line-height:1.35;letter-spacing:-.03em;font-weight:500}.youtube-section .project-chapter-label{--youtube-delay: 0ms;--youtube-rise: 12px}.youtube-story>.project-kind{--youtube-delay: 70ms}.youtube-story>h2{--youtube-delay: .15s;--youtube-rise: 24px}.youtube-story>p:not(.project-kind,.youtube-invitation){--youtube-delay: .24s}.youtube-story>.youtube-invitation{--youtube-delay: .32s}.youtube-channel{--youtube-delay: .4s}.youtube-player{--youtube-delay: .35s;--youtube-duration: .82s;--youtube-rise: 28px;--youtube-scale: .985}.youtube-film figcaption{--youtube-delay: .5s}.youtube-section .project-bottom{--youtube-delay: .65s;--youtube-rise: 10px}@media(prefers-reduced-motion:no-preference){.youtube-section[data-youtube-intro=waiting] :is(.project-chapter-label,.youtube-story>*,.youtube-player,.youtube-film figcaption,.project-bottom){opacity:0;transform:translate3d(0,var(--youtube-rise, 18px),0) scale(var(--youtube-scale, 1));pointer-events:none}.youtube-section[data-youtube-intro=playing] :is(.project-chapter-label,.youtube-story>*,.youtube-player,.youtube-film figcaption,.project-bottom){animation:youtube-arrive var(--youtube-duration, .65s) cubic-bezier(.16,1,.3,1) var(--youtube-delay, 0ms) backwards}}@keyframes youtube-arrive{0%{opacity:0;transform:translate3d(0,var(--youtube-rise, 18px),0) scale(var(--youtube-scale, 1))}to{opacity:1;transform:translateZ(0) scale(1)}}@media(max-width:1000px)and (min-width:621px){.youtube-layout{gap:28px;grid-template-columns:1fr 1.1fr}}@media(max-width:620px){.portal-preview .site-header{gap:12px}.portal-preview .site-header nav{gap:12px}.portal-preview .site-header nav a{font-size:9px}.youtube-inner{gap:26px;padding-block:25px}.youtube-layout{grid-template-columns:1fr;gap:28px}.youtube-platform{font-size:7px}.youtube-story .project-kind{font-size:8px}.youtube-story h2{font-size:clamp(48px,13vw,70px);margin-block:14px 18px}.youtube-story h2 br{display:none}.youtube-story>p:not(.project-kind){font-size:13px;line-height:1.7;max-inline-size:none}.youtube-channel{margin-block-start:18px;padding:11px 15px;font-size:10px}.youtube-film figcaption{margin-block-start:14px}.youtube-film h3{font-size:17px}.youtube-play-label{inset:auto auto 14px 15px;font-size:8px}.youtube-section .project-bottom{font-size:7px}}@media(max-width:370px){.portal-preview .site-header nav{gap:9px}.portal-preview .site-header nav a{font-size:8px}}@media(max-width:620px)and (max-height:740px){.youtube-inner{gap:12px;padding-block:18px}.youtube-layout{gap:20px}.youtube-story h2{font-size:42px;margin-block:10px 12px}.youtube-story>p:not(.project-kind){font-size:12px}.youtube-story .youtube-invitation{display:none}.youtube-channel{margin-block-start:13px}}@media(min-width:621px)and (max-height:650px){.youtube-inner{padding-block:20px;gap:18px}.youtube-story h2{font-size:clamp(40px,9svh,62px)}.youtube-story>p:not(.project-kind){font-size:12px;line-height:1.6}.youtube-story .youtube-invitation{display:none}.youtube-channel{margin-block-start:18px;padding:10px 14px;font-size:10px}.youtube-film h3{font-size:16px}.youtube-film figcaption{margin-block-start:12px}}@media(min-width:621px)and (max-height:450px){.youtube-inner{padding-block:16px;gap:12px}.youtube-film{inline-size:min(100%,80svh);justify-self:end}.youtube-film h3{font-size:15px}}@media(prefers-reduced-motion:reduce){.youtube-section *{transition:none!important}}@media print{.youtube-inner{display:block;min-block-size:0}.youtube-layout{display:block}.youtube-film,.youtube-section .project-bottom{display:none}}@media(max-width:620px){.project-panel .project-inner,.youtube-inner{grid-template-rows:1fr auto 1fr;text-align:center}.nomadgem-layout,.tantovale-layout,.youtube-layout{inline-size:100%;min-inline-size:0;align-self:center;justify-items:center}.project-panel .project-story,.youtube-story{inline-size:100%;max-inline-size:26rem;min-inline-size:0}.project-story [data-title-typewriter]{inline-size:fit-content;max-inline-size:100%;margin-inline:auto;text-align:start}.project-panel .project-description,.youtube-story>p:not(.project-kind){max-inline-size:38ch;margin-inline:auto}:is(.project-inner,.youtube-inner)>.project-chapter-label{align-self:start;flex-direction:column;justify-content:center;gap:5px}:is(.project-inner,.youtube-inner)>.project-bottom{align-self:end;align-items:center;justify-content:center;flex-direction:column}.youtube-film{inline-size:min(100%,26rem);justify-self:center}.youtube-story h2{font-size:clamp(42px,min(13vw,6.6svh),60px)}.youtube-play-label{inset-inline:0;text-align:center}}.name-transition #hero-title{position:relative;animation:none}.name-transition .name-line{display:block;inline-size:max-content}.name-transition .name-cursor{position:static;vertical-align:baseline;margin-inline-start:.045em;font-family:inherit;font-size:1em;line-height:inherit}.portrait-motion{position:absolute;z-index:5;inset:auto 0 6px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;pointer-events:auto}.portrait-motion[hidden]{display:none}.portrait-motion button{min-block-size:44px;padding:8px 16px;border:1px solid #c2f58b55;border-radius:24px;background:#0b0d0ce8;color:var(--accent);font:10px/1.5 var(--font);cursor:pointer;touch-action:manipulation}.portrait-motion button:disabled{color:var(--secondary);cursor:default}.portrait-motion button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.portrait-motion:is([data-tilt-state=denied],[data-tilt-state=unavailable]) [role=status]{position:static;inline-size:min(90%,32ch);block-size:auto;overflow:visible;clip-path:none;white-space:normal;margin:0;text-align:center;color:var(--secondary);font:9px/1.5 var(--font)}@media(hover:hover)and (pointer:fine),(prefers-reduced-motion:reduce),print{.portrait-motion{display:none}}@media(prefers-reduced-motion:no-preference){@supports (animation-timeline: view()) and (animation-range: contain 0% contain 100%){.name-track{display:block;position:absolute;inset:0 auto auto 0;inline-size:1px;block-size:360svh;pointer-events:none;view-timeline:--portal block;view-timeline-inset:0 calc(100% - 100svh)}.name-transition .portal-intro:before{content:"";position:absolute;inset:0;background:var(--bg);z-index:0;animation:name-cover linear both;animation-timeline:--portal;animation-range:contain 0% contain 100%}.name-transition #hero-title{animation:name-title-exit linear both;animation-timeline:--portal;animation-range:contain 0% contain 100%}.name-transition .portal-portrait-fade{animation-name:name-portrait-exit}.name-transition .experience-portal-face{animation-name:name-work-enter}.name-transition .portrait-glass{animation-timing-function:ease-out,linear;animation-range:normal,contain 4% contain 26%}.name-transition .portrait-shard{--exit-local: clamp(0, calc((var(--portrait-exit) - var(--exit-start)) / var(--exit-duration)), 1);--exit-eased: calc(1 - (1 - var(--exit-local)) * (1 - var(--exit-local)) * (1 - var(--exit-local)));--shard-exit-x: calc(-1 * var(--exit-eased) * var(--shard-exit-distance))}@supports (width: calc(pow(2,3)*1px)){.name-transition .portrait-shard{--exit-eased: calc(1 - pow(1 - var(--exit-local), var(--exit-power))) }}@keyframes name-title-exit{0%,8%{opacity:1;visibility:visible}28%,to{opacity:0;visibility:hidden}}@keyframes name-portrait-exit{0%,14%{opacity:1;visibility:visible}34%,to{opacity:0;visibility:hidden}}@keyframes name-cover{0%,14%{opacity:1}38%,to{opacity:0}}@keyframes name-work-enter{0%,14%{opacity:0;visibility:hidden}15%{opacity:0;visibility:visible}28%{opacity:.55;visibility:visible}42%,to{opacity:1;visibility:visible}}}}@media(prefers-reduced-motion:reduce),print{.name-track{display:none!important}}@media screen and (prefers-reduced-motion:no-preference){.scroll-fallback .portal-static-link{display:none!important}.scroll-fallback .portal-motion-link{display:inline-flex!important}.scroll-fallback .portal-story{position:relative}.scroll-fallback .name-track{display:block;position:absolute;inset:0 auto auto 0;inline-size:1px;block-size:360svh;pointer-events:none}.scroll-fallback .portal-arrival{position:absolute;inset-block-start:calc(var(--portal-runway) + 1px);inline-size:1px;block-size:1px;pointer-events:none}.scroll-fallback .portal-stage{display:grid;grid-template-columns:minmax(0,1fr);position:relative;overflow:clip;isolation:isolate;background:var(--bg)}.scroll-fallback .portal-intro{position:sticky;inset-block-start:0;grid-area:1 / 1;align-self:start;block-size:100svh;overflow:clip;z-index:2;background:transparent;visibility:var(--intro-visibility,visible)}.scroll-fallback .portal-intro:before{content:"";position:absolute;inset:0;background:var(--bg);z-index:0;opacity:var(--intro-cover,1)}.scroll-fallback .hero{block-size:calc(100svh - 88px);min-block-size:0;grid-template-rows:minmax(0,1fr)}.scroll-fallback :is(.hero-copy>.portal-fade,.portal-header-fade){opacity:var(--intro-copy,1);visibility:var(--intro-copy-visibility,visible)}.scroll-fallback #hero-title{opacity:var(--intro-title,1);visibility:var(--intro-title-visibility,visible)}.scroll-fallback .portal-portrait-fade{opacity:var(--intro-portrait,1);visibility:var(--intro-portrait-visibility,visible)}.scroll-fallback .portal-work{position:relative;grid-area:1 / 1;z-index:1;min-block-size:100svh}.scroll-fallback .experience-hold:after{content:"";display:block;block-size:var(--portal-runway)}.scroll-fallback .experience-portal-face{position:sticky;inset-block-start:0;opacity:var(--intro-work,0);visibility:var(--intro-work-visibility,hidden);--experience-pointer: var(--intro-pointer,none)}.scroll-fallback .work-atmosphere{display:block;--glass-open: var(--intro-glass,0);visibility:var(--intro-glass-visibility,visible)}.scroll-fallback .experience-section:focus-within{--experience-pointer: auto}.scroll-fallback .experience-portal-face:focus-within .work-atmosphere{--glass-open: 1;visibility:hidden}.scroll-fallback .portrait-glass{--portrait-exit: var(--intro-exit,0)}.scroll-fallback .portrait-shard{--exit-local: clamp(0,calc((var(--portrait-exit) - var(--exit-start)) / var(--exit-duration)),1);--exit-eased: calc(1 - (1 - var(--exit-local)) * (1 - var(--exit-local)) * (1 - var(--exit-local)));--shard-exit-x: calc(-1 * var(--exit-eased) * var(--shard-exit-distance))}@supports (width: calc(pow(2,3)*1px)){.scroll-fallback .portrait-shard{--exit-eased: calc(1 - pow(1 - var(--exit-local),var(--exit-power))) }}@media(min-width:621px)and (max-width:800px){.scroll-fallback .hero{block-size:calc(100svh - 76px)}}@media(max-width:620px){.scroll-fallback .hero{block-size:calc(100svh - 60px);grid-template-rows:auto auto}}}.portal-work .experience.experience-holographic{--text: #e8eae4;--secondary: #bcc1bb;--muted: #a0a8a1;--accent: #c2f58b;--line: #2b302c;--experience-surface: transparent;padding:0;margin-block:24px;border:0;background:transparent}.portal-work .experience-holographic .job-holographic{position:relative;isolation:isolate;padding:40px clamp(18px,2vw,32px);border-radius:14px;background:#121419;box-shadow:0 14px 35px #0004;transform:perspective(1400px) translate3d(0,calc(var(--holo-push, 0px) + var(--holo-lift, 0) * -8px),calc(var(--holo-lift, 0) * 12px)) rotateX(var(--holo-rx, 0deg)) rotateY(var(--holo-ry, 0deg))}.job-holographic:after{content:"";position:absolute;inset:0;z-index:3;border:1px solid #ffffff26;border-radius:inherit;pointer-events:none}.portal-work .experience-holographic .job-holographic-canvas{position:absolute;inset:0;width:100%;height:100%;border-radius:inherit;pointer-events:none}.portal-work .experience-holographic :is(.experience-heading,.experience-description){position:relative;z-index:1}.portal-work .experience-holographic .experience-link{z-index:2;border-radius:14px}.portal-work .experience-holographic .experience-link:focus-visible{outline-color:var(--accent);outline-offset:5px}@media(max-width:620px){.portal-work .experience-holographic .job-holographic{padding-block:32px}}@media(prefers-reduced-motion:reduce),print{.portal-work .experience-holographic .job-holographic{transform:none}}.portal-work .experience-list:has(.experience-holographic){border-block-end:0}.job-light-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:4;pointer-events:none}@media print{.job-light-canvas{display:none}}.portal-contact{position:relative;isolation:isolate;overflow:clip}.contact-glass{position:absolute;inset:0;pointer-events:none}.contact-glass-canvas,.contact-laser-canvas{display:block;position:absolute;inset:0;width:100%;height:100%}.contact-glass-canvas{z-index:0}.contact-laser-canvas{z-index:3}.contact-glass-canvas[hidden],.contact-laser-canvas[hidden]{display:none}.contact-glass-still{position:absolute;width:7%;height:auto;transform:translate(-50%,-50%);opacity:.8}.contact-glass-still:nth-child(7n+1){left:12%;top:25%}.contact-glass-still:nth-child(7n+2){left:34%;top:19%}.contact-glass-still:nth-child(7n+3){left:71%;top:21%}.contact-glass-still:nth-child(7n+4){left:89%;top:35%}.contact-glass-still:nth-child(7n+5){left:85%;top:79%}.contact-glass-still:nth-child(7n+6){left:48%;top:83%}.contact-glass-still:nth-child(7n){left:17%;top:77%}.contact-glass[data-renderer=webgpu] .contact-glass-still{visibility:hidden}.portal-contact .contact-section,.portal-contact .contact-invitation{position:relative;z-index:auto}.contact-line{display:block;position:relative}.contact-line-back{z-index:2;font-size:.96em;padding-block-end:.06em}.contact-line-front{z-index:4;text-shadow:0 .035em .09em #000b,0 .1em .24em #0006}.portal-contact .contact-section>.eyebrow,.portal-contact .site-footer{position:relative;z-index:5}.portal-contact .contact-section>.eyebrow{position:absolute}@media(prefers-reduced-motion:no-preference){.contact-invitation a:not(:hover):not(:focus-visible){animation:contact-link-breathe 3.4s ease-in-out infinite}}@keyframes contact-link-breathe{0%,to{color:var(--text)}50%{color:#a1ad9b}}@media print{.contact-glass{display:none}}
