@import url(https://fonts.googleapis.com/css2?family=Aldrich&display=swap);:root{--text-primary:#f5eef0;--text-secondary:#e6dce0b8;--accent:#f6c85f;--glass-border:#dce4f53d;--glass-background:#1614226b;--glass-shadow:0 12px 36px #00000038;--tooltip-background:#151220f0}:root[data-theme=light]{--text-primary:#211d2b;--text-secondary:#262031b3;--accent:#8b5c00;--glass-border:#41365833;--glass-background:#ffffff9e;--glass-shadow:0 12px 36px #34274e1f;--tooltip-background:#fffffff5}:root{--retro-panel:#b9bcc4;--retro-edge-light:#f4f5f7;--retro-shadow:#343741;--retro-title:#30206f}:root[data-theme=light]{--retro-panel:#c8c9c4;--retro-edge-light:#fff;--retro-shadow:#555750;--retro-title:#253c8f}:root[data-theme=dark]{--retro-panel:#343843;--retro-edge-light:#8e94a0;--retro-shadow:#080a0e;--retro-title:#7770c9}:root[data-ui=retro][data-theme=dark]{--text-primary:#f2bd54;--text-secondary:#bd8d38;--accent:#ffd06a;--retro-panel:#121006;--retro-edge-light:#d69c30;--retro-shadow:#020200;--retro-title:#efb541;--tooltip-background:#121006}*,:after,:before{box-sizing:border-box;margin:0;padding:0}#root,body,html{min-height:100%}html{-webkit-text-size-adjust:100%;overflow-x:clip;scroll-behavior:smooth}iframe,img{max-width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 50% 50%,#161922 0,#0a0d14 42%,#05070b 76%,#020304 100%);color:#d8c6c8;font-family:Aldrich,sans-serif;min-height:100vh;overflow-x:hidden;overscroll-behavior-x:none;transition:background .3s ease,color .3s ease}:root[data-ui=retro] body{font-family:Tahoma,Arial,sans-serif}:root[data-ui=retro][data-theme=dark] body{color:#f5eef0;color:var(--text-primary);font-family:Courier New,Consolas,monospace}:root[data-theme=light] body{color:#f5eef0;color:var(--text-primary)}article,div,main,section{min-width:0}@media (hover:none){a:hover,button:hover{transform:none}}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,input,select,textarea{font:inherit}.scramble-text{color:inherit;display:inline;font:inherit;letter-spacing:inherit;line-height:inherit;white-space:pre-line}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.site-nav{display:flex;flex-wrap:wrap;gap:28px;justify-content:center;left:50%;position:fixed;top:36px;transform:translateX(-50%);z-index:50}.site-nav a{color:#d9deea;font-size:1.3rem;opacity:.7;position:relative;text-decoration:none;transition:none}.site-nav a:after{background:#ffffffe6;bottom:-6px;content:"";height:1px;left:50%;position:absolute;transform:translateX(-50%) scaleX(0);transform-origin:center;transition:none;width:100%}.site-nav a:hover{color:#fff;opacity:1;transform:scale(1.3)}.site-nav a.active:after,.site-nav a:hover:after{transform:translateX(-50%) scaleX(1)}.site-nav a.active{color:#fff;opacity:1}@media (min-width:769px){.site-nav{grid-gap:4px;-webkit-backdrop-filter:blur(16px) saturate(1.25);backdrop-filter:blur(16px) saturate(1.25);background:linear-gradient(135deg,#34304252,#0c0f1c2e);border:1px solid #dce4f53d;border-radius:999px;box-shadow:0 0 0 1px #02030a80,inset 0 1px 0 #ffffff47,inset 0 -1px 0 #ffffff0a,0 12px 36px #00000038;display:grid;gap:4px;grid-template-columns:repeat(5,minmax(0,1fr));padding:6px;width:min(620px,calc(100% - 48px))}.site-nav:before{background:linear-gradient(135deg,#ffffff2b,hsla(0,0%,100%,.055));border-radius:999px;box-shadow:inset 0 1px 0 #ffffff38,inset 0 0 0 1px #ffffff14;content:"";height:calc(100% - 12px);left:6px;pointer-events:none;position:absolute;top:6px;transform:translateX(calc(var(--active-index)*(100% + 4px)));transition:transform .32s cubic-bezier(.22,1,.36,1);width:calc(20% - 5.6px)}.site-nav a{align-items:center;border-radius:999px;display:flex;justify-content:center;min-width:0;padding:10px 8px;text-align:center;z-index:1}.site-nav a:hover{transform:none}.site-nav a.active{background:#0000}.site-nav a:after{display:none}}@media (max-width:768px){.site-nav{grid-gap:4px;-webkit-backdrop-filter:blur(16px) saturate(1.25);backdrop-filter:blur(16px) saturate(1.25);background:linear-gradient(135deg,#34304252,#0c0f1c2e);border:1px solid #dce4f53d;border-radius:999px;bottom:max(12px,env(safe-area-inset-bottom));box-shadow:0 0 0 1px #02030a80,inset 0 1px 0 #ffffff47,inset 0 -1px 0 #ffffff0a,0 12px 36px #00000038;display:grid;gap:4px;grid-template-columns:repeat(5,minmax(0,1fr));min-height:58px;padding:6px;top:auto;width:calc(100% - 24px)}.site-nav:before{background:linear-gradient(135deg,#ffffff2b,hsla(0,0%,100%,.055));border-radius:999px;box-shadow:inset 0 1px 0 #ffffff38,inset 0 0 0 1px #ffffff14;content:"";height:calc(100% - 12px);left:6px;pointer-events:none;position:absolute;top:6px;transform:translateX(calc(var(--active-index)*(100% + 4px)));transition:transform .32s cubic-bezier(.22,1,.36,1);width:calc(20% - 5.6px)}.site-nav a{align-items:center;border-radius:999px;display:flex;font-size:clamp(.72rem,3.1vw,.95rem);justify-content:center;min-height:44px;min-width:0;padding:8px 3px;text-align:center;z-index:1}.site-nav a:hover{transform:none}.site-nav a.active{background:#0000}.site-nav a:after{display:none}}:root[data-theme=light] .site-nav a{color:#211d2bb8}:root[data-theme=light] .site-nav a.active,:root[data-theme=light] .site-nav a:hover{color:#211d2b}:root[data-theme=light] .site-nav{background:var(--glass-background);border-color:var(--glass-border);box-shadow:var(--glass-shadow),inset 0 1px 0 #ffffffe6}:root[data-theme=light] .site-nav:before{background:linear-gradient(135deg,#ffffffeb,#e2d9f6ad);box-shadow:inset 0 0 0 1px #4136581a,0 3px 12px #34274e1a}@media (max-width:420px){.site-nav{gap:2px;padding:5px;width:calc(100% - 12px)}.site-nav:before{height:calc(100% - 10px);left:5px;top:5px;transform:translateX(calc(var(--active-index)*(100% + 2px)));width:calc(20% - 3.6px)}.site-nav a{font-size:clamp(.62rem,3vw,.76rem);letter-spacing:-.03em;padding:9px 1px}}@media (prefers-reduced-motion:reduce){.site-nav:before{transition:none}}:root[data-ui=retro] .site-nav:before{background:var(--retro-title);border:2px inset var(--retro-edge-light);border-radius:0;box-shadow:none}:root[data-ui=retro] .site-nav a.active{color:#fff}:root[data-ui=retro][data-theme=dark] .site-nav a.active{color:#171104;text-shadow:none}:root[data-ui=retro] .site-nav a{border-radius:0;font-family:Tahoma,Arial,sans-serif;font-weight:700}:root[data-ui=retro][data-theme=dark] .site-nav a{font-family:Courier New,Consolas,monospace;font-size:clamp(.7rem,1.6vw,1rem);letter-spacing:.015em}:root[data-ui=retro][data-theme=dark] .site-nav a+a{border-left:1px solid #9c7127;box-shadow:inset 1px 0 0 #2b200b}:root[data-ui=retro][data-theme=light] .site-nav a{font-size:clamp(.7rem,1.6vw,1rem);letter-spacing:.015em}:root[data-ui=retro][data-theme=light] .site-nav a+a{border-left:1px solid #666861;box-shadow:inset 1px 0 0 #f3f3ef}.theme-toggle-wrap{position:fixed;right:max(24px,env(safe-area-inset-right));top:36px;z-index:100}.theme-toggle{-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2);background:var(--glass-background);border:1px solid var(--glass-border);border-radius:50%;box-shadow:var(--glass-shadow);color:var(--text-primary);cursor:pointer;display:grid;height:48px;place-items:center;transition:transform .18s ease,background .25s ease,color .25s ease;width:48px}.theme-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;height:23px;width:23px}.theme-toggle:hover{transform:rotate(8deg) scale(1.06)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.theme-toggle__tooltip{background:var(--tooltip-background);border:1px solid var(--glass-border);border-radius:8px;box-shadow:0 10px 30px #0000002e;color:var(--text-primary);font-size:.75rem;line-height:1.35;max-width:220px;opacity:0;padding:9px 12px;pointer-events:none;position:absolute;right:0;top:calc(100% + 10px);transform:translateY(-5px);transition:opacity .16s ease,transform .16s ease;width:max-content}.theme-toggle-wrap:hover .theme-toggle__tooltip,.theme-toggle:focus-visible+.theme-toggle__tooltip{opacity:1;transform:translateY(0)}@media (max-width:768px){.theme-toggle-wrap{right:max(14px,env(safe-area-inset-right));top:max(14px,env(safe-area-inset-top))}.theme-toggle{height:44px;width:44px}}@media (prefers-reduced-motion:reduce){.theme-toggle,.theme-toggle__tooltip{transition:none}}.retro-toggle-wrap{position:fixed;right:max(84px,calc(env(safe-area-inset-right) + 60px));top:36px;z-index:100}.retro-toggle{-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2);background:var(--glass-background);border:1px solid var(--glass-border);border-radius:50%;box-shadow:var(--glass-shadow);color:var(--text-primary);cursor:pointer;display:grid;height:48px;place-items:center;transition:transform .18s ease,background .25s ease,color .25s ease;width:48px}.retro-toggle svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:square;stroke-linejoin:miter;height:23px;width:23px}.retro-toggle:hover{transform:translateY(-2px) scale(1.04)}.retro-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}:root[data-ui=modern] .retro-toggle{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--retro-panel);border:2px outset var(--retro-edge-light);border-radius:3px;box-shadow:4px 4px 0 var(--retro-shadow);color:var(--text-primary)}:root[data-ui=modern] .retro-toggle:hover{box-shadow:5px 5px 0 var(--retro-shadow);transform:translate(-1px,-1px)}:root[data-ui=modern] .retro-toggle:active{border-style:inset;box-shadow:1px 1px 0 var(--retro-shadow);transform:translate(3px,3px)}:root[data-ui=modern] .retro-toggle[aria-pressed=true]{color:var(--retro-title)}:root[data-ui=modern] .retro-toggle__tooltip{background:var(--retro-panel);border:2px outset var(--retro-edge-light);border-radius:0;box-shadow:3px 3px 0 var(--retro-shadow);color:var(--text-primary);font-family:Tahoma,Arial,sans-serif;font-weight:700;letter-spacing:.01em}.retro-toggle__tooltip{background:var(--tooltip-background);border:1px solid var(--glass-border);border-radius:8px;box-shadow:0 10px 30px #0000002e;color:var(--text-primary);font-size:.75rem;opacity:0;padding:9px 12px;pointer-events:none;position:absolute;right:0;top:calc(100% + 10px);transform:translateY(-5px);transition:opacity .16s ease,transform .16s ease;width:max-content}.retro-toggle-wrap:hover .retro-toggle__tooltip,.retro-toggle:focus-visible+.retro-toggle__tooltip{opacity:1;transform:none}:root[data-ui=retro] .retro-toggle,:root[data-ui=retro] .theme-toggle{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--retro-panel);border:2px outset var(--retro-edge-light);border-radius:0;box-shadow:3px 3px 0 var(--retro-shadow)}:root[data-ui=retro] :is(.retro-toggle,.theme-toggle):active{border-style:inset;box-shadow:1px 1px 0 var(--retro-shadow);transform:translate(2px,2px)}:root[data-ui=retro] :is(.retro-toggle__tooltip,.theme-toggle__tooltip){background:var(--retro-panel);border:2px outset var(--retro-edge-light);border-radius:0;box-shadow:3px 3px 0 var(--retro-shadow);font-family:Tahoma,Arial,sans-serif}:root[data-ui=retro] .retro-toggle{border:1px solid var(--glass-border);border-radius:50%;box-shadow:0 10px 28px #00000038,inset 0 1px 0 #ffffff2e}:root[data-ui=retro][data-theme=light] .retro-toggle{background:#fff;border-color:#3c4050;box-shadow:0 10px 28px #0000004d,inset 0 1px 0 #fff;color:#080a10}:root[data-ui=retro][data-theme=dark] .retro-toggle{background:#151720;border-color:#d9deea;box-shadow:0 10px 28px #0000008c,inset 0 1px 0 #ffffff38;color:#fff}:root[data-ui=retro] .retro-toggle svg{stroke-linecap:round;stroke-linejoin:round}:root[data-ui=retro] .retro-toggle:active{border-style:solid;box-shadow:0 4px 12px #0003,inset 0 1px 3px #00000029;transform:scale(.94)}:root[data-ui=retro] .retro-toggle__tooltip{border:1px solid;border-radius:10px;box-shadow:0 12px 32px #00000047;font-family:Aldrich,Tahoma,sans-serif;font-weight:400;letter-spacing:0}:root[data-ui=retro][data-theme=light] .retro-toggle__tooltip{background:#fff;border-color:#23263433;color:#171923}:root[data-ui=retro][data-theme=dark] .retro-toggle__tooltip{background:#1b1d27;border-color:#e6eaf43d;color:#f5f7fb}@media (max-width:768px){.retro-toggle-wrap{right:max(68px,calc(env(safe-area-inset-right) + 54px));top:max(14px,env(safe-area-inset-top))}.retro-toggle{height:44px;width:44px}}@media (min-width:769px) and (max-width:900px){.retro-toggle-wrap,.theme-toggle-wrap{top:100px}}@media (prefers-reduced-motion:reduce){.retro-toggle,.retro-toggle__tooltip{transition:none}}.App{min-height:100vh;text-align:center;width:100%}.App-logo{height:40vmin;pointer-events:none}.app-shell{min-height:100vh;touch-action:pan-y}:root[data-theme=light] :is(.home-hero h1,.home-hero__lead,.home-section__heading h2,.home-about h2,.home-about__copy>a,.home-timeline h3,.projects-hero h1,.activities-hero h1,.art-hero h1,.cv-hero h1,.shadowing-item h3,.art-info h2,.art-modal-info h2,.art-modal-info strong),:root[data-theme=light] :is(.home-page,.projects-page,.activities-page,.art-page,.cv-page){color:var(--text-primary)}:root[data-theme=light] :is(.home-hero__description,.home-section__heading>p:last-child,.home-about__copy>p:not(.home-section__index),.home-timeline p,.projects-intro,.project-card__organization,.project-card__date,.project-card__summary,.project-card__details p,.activities-intro,.activity-card__organization,.activity-card__date,.activity-card__summary,.activity-modal__organization,.activity-modal__date,.activity-modal__summary,.activity-modal__details,.shadowing-item span,.shadowing-item p,.art-intro,.art-description,.art-modal-info p,.cv-intro){color:var(--text-secondary)}:root[data-theme=light] :is(.home-eyebrow,.home-section__index,.home-work-card__meta,.home-timeline article>span,.projects-eyebrow,.activities-eyebrow,.art-eyebrow,.cv-eyebrow,.project-card h2,.activity-card h2,.activity-modal h2,.art-medium,.art-size,.art-modal-eyebrow){color:var(--accent)}:root[data-theme=light] :is(.project-card,.activity-card,.art-card){background:linear-gradient(135deg,#ffffffb8,#f6f2ff7a);border-color:#41365833;box-shadow:0 18px 55px #34274e1f,inset 0 1px 0 #ffffffe6}:root[data-theme=light] :is(.project-card:hover,.project-card.is-open,.activity-card:hover,.art-card:hover){background:linear-gradient(135deg,#ffffffe6,#f1ebffa6);border-color:#41365852;box-shadow:0 24px 65px #34274e2b,inset 0 1px 0 #fff}:root[data-theme=light] .cv-mobile-open,:root[data-theme=light] .project-card__paper-button,:root[data-theme=light] .project-card__tags span{background:#ffffff8c;border-color:#41365833;color:var(--text-primary)}:root[data-theme=light] .activity-modal{background:#faf7fff7;box-shadow:0 34px 100px #34274e40;color:var(--text-primary)}:root[data-theme=light] :is(.activity-modal__close,.art-modal-close){color:var(--text-primary)}:root[data-theme=light] .activity-modal-backdrop{background:#2f273e3d}:root[data-theme=light] .art-modal{background:#ede8f4c2}:root[data-theme=light] .art-modal-content{background:#ffffffbf;border-color:#4136582e}:root[data-theme=light] .cv-viewer-wrap{background:#ffffff8c;border-color:#4136582e}:root[data-theme=light] :is(.home-section,.home-about,.home-timeline,.home-timeline article,.project-card__details){border-color:#41365829}:root[data-ui=retro] :is(.site-nav,.project-card,.activity-card,.art-card,.activity-modal,.art-modal-content,.cv-viewer-wrap,.home-work-card){-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--retro-panel);border:3px outset var(--retro-edge-light);border-radius:0;box-shadow:6px 6px 0 var(--retro-shadow)}:root[data-ui=retro] :is(.project-card:hover,.project-card.is-open,.activity-card:hover,.art-card:hover){background:var(--retro-panel);border-color:var(--retro-edge-light);box-shadow:8px 8px 0 var(--retro-shadow)}:root[data-ui=retro] :is(.home-hero h1,.home-section__heading h2,.home-about h2,.projects-hero h1,.activities-hero h1,.art-hero h1,.cv-hero h1){font-family:Courier New,monospace;font-weight:700;letter-spacing:-.07em;text-shadow:3px 3px 0 color-mix(in srgb,var(--retro-title) 55%,#0000)}:root[data-ui=retro] :is(.project-card h2,.activity-card h2,.activity-modal h2,.art-info h2,.art-modal-info h2,.home-timeline h3,.home-work-card__content strong){font-family:Courier New,monospace;font-weight:700}:root[data-ui=retro] :is(.project-card__paper-button,.cv-mobile-open,.art-expand-button,.art-modal-close,.activity-modal__close){background:var(--retro-panel);border:2px outset var(--retro-edge-light);border-radius:0;box-shadow:2px 2px 0 var(--retro-shadow);color:var(--text-primary)}:root[data-ui=retro] :is(.project-card__paper-button,.cv-mobile-open,.art-expand-button,.art-modal-close,.activity-modal__close):active{border-style:inset;box-shadow:none}:root[data-ui=retro] .home-profile{border:4px outset var(--retro-edge-light);border-radius:0;box-shadow:8px 8px 0 var(--retro-shadow)}:root[data-ui=retro] .art-modal-image-wrap,:root[data-ui=retro] .project-card__image{border-radius:0}:root[data-ui=retro] .project-card__tags span{background:var(--retro-panel);border:1px solid var(--retro-shadow);border-radius:0}:root[data-ui=retro] :is(.project-card__paper-button,.cv-mobile-open,.art-expand-button,.art-modal-close,.activity-modal__close,.theme-toggle,.retro-toggle),:root[data-ui=retro] :is(.theme-toggle__tooltip,.retro-toggle__tooltip){background:var(--retro-panel)}:root[data-ui=retro][data-theme=dark] :is(.activity-modal-backdrop,.art-modal){-webkit-backdrop-filter:none;backdrop-filter:none;background:#101219}:root[data-ui=retro][data-theme=light] :is(.activity-modal-backdrop,.art-modal){-webkit-backdrop-filter:none;backdrop-filter:none;background:#92958f}:root[data-ui=retro] .route-transition{animation-duration:.12s}:root[data-ui=retro] .app-shell:after,:root[data-ui=retro] .app-shell:before{content:"";inset:0;pointer-events:none;position:fixed;z-index:9000}:root[data-ui=retro] .app-shell:before{background:repeating-linear-gradient(0deg,#00000021,#00000021 1px,#0000 0,#0000 4px),repeating-linear-gradient(90deg,rgba(255,40,40,.018),rgba(60,255,90,.014) 1px,rgba(80,120,255,.018) 2px,#0000 3px);opacity:.55}:root[data-ui=retro] .app-shell:after{background:radial-gradient(ellipse at center,#0000 64%,#00000029 84%,#00000061 100%);box-shadow:inset 0 0 45px #00000057,inset 0 0 125px #00000047}:root[data-ui=retro] .route-transition{animation:crtPageSync .26s steps(5) both}:root[data-ui=retro] .route-transition:after{animation:crtPhosphorFlash .26s steps(4) both;background:#cde1ff29;content:"";inset:0;mix-blend-mode:screen;pointer-events:none;position:fixed;z-index:8999}@keyframes crtPageSync{0%{filter:brightness(1.75) contrast(1.2);opacity:.3;transform:scaleY(.985)}18%{filter:brightness(1.22) contrast(1.08);opacity:.92;transform:translateY(2px)}38%{filter:brightness(.92) contrast(1.15);opacity:.72;transform:translateY(-1px)}62%{filter:brightness(1.08) contrast(1.02);opacity:1;transform:none}to{filter:none;opacity:1;transform:none}}@keyframes crtPhosphorFlash{0%{opacity:.85}22%{opacity:.15}38%{opacity:.38}to{opacity:0}}:root[data-ui=retro] :is(.project-card,.activity-card,.art-card,.home-work-card,.project-card__image,.art-image,.site-nav:before,.theme-toggle,.retro-toggle,a,button){transition-duration:0s!important}:root[data-ui=retro] :is(.project-card,.activity-card,.art-card,.home-work-card):hover,:root[data-ui=retro] :is(.project-card:hover .project-card__image,.art-card:hover .art-image,.home-work-card:hover img){transform:none}:root[data-ui=retro] .global-bg__shader{filter:saturate(.72) contrast(1.1)}:root[data-ui=retro][data-theme=dark] body{text-shadow:0 0 4px #ffb8373d}:root[data-ui=retro][data-theme=dark] :is(.home-page,.projects-page,.activities-page,.art-page,.cv-page,.site-nav a,.project-card__paper-button,.cv-mobile-open,.art-expand-button,.art-modal-close,.activity-modal__close){color:var(--text-primary)}:root[data-ui=retro][data-theme=dark] :is(.home-hero h1,.home-hero__lead,.home-section__heading h2,.home-about h2,.home-about__copy>a,.home-timeline h3,.projects-hero h1,.activities-hero h1,.art-hero h1,.cv-hero h1,.shadowing-item h3,.art-info h2,.art-modal-info h2,.art-modal-info strong){color:var(--text-primary);text-shadow:0 0 7px #ffb83752}:root[data-ui=retro][data-theme=dark] :is(.home-hero__description,.home-section__heading>p:last-child,.home-about__copy>p:not(.home-section__index),.home-timeline p,.projects-intro,.project-card__organization,.project-card__date,.project-card__summary,.project-card__details p,.activities-intro,.activity-card__organization,.activity-card__date,.activity-card__summary,.activity-modal__organization,.activity-modal__date,.activity-modal__summary,.activity-modal__details,.shadowing-item span,.shadowing-item p,.art-intro,.art-description,.art-modal-info p,.cv-intro){color:var(--text-secondary)}:root[data-ui=retro][data-theme=dark] :is(.home-eyebrow,.home-section__index,.home-work-card__meta,.home-timeline article>span,.projects-eyebrow,.activities-eyebrow,.art-eyebrow,.cv-eyebrow,.project-card h2,.activity-card h2,.activity-modal h2,.art-medium,.art-size,.art-modal-eyebrow){color:var(--accent)}:root[data-ui=retro][data-theme=dark] :is(.site-nav,.project-card,.activity-card,.art-card,.activity-modal,.art-modal-content,.cv-viewer-wrap,.home-work-card){background:#121006;border-color:#d69c30}:root[data-ui=retro] .activity-card{aspect-ratio:auto;height:100%;min-height:320px}:root[data-ui=retro] .activities-list{align-items:stretch;grid-auto-rows:1fr}:root[data-ui=retro] :is(.activity-card h2,.activity-card__organization,.activity-card__summary){overflow-wrap:anywhere}:root[data-ui=retro][data-theme=dark] :is(.project-card:hover,.project-card.is-open,.activity-card:hover,.art-card:hover){background:#1a1608}:root[data-ui=retro][data-theme=dark] :is(.home-profile img,.project-card__image,.art-image,.art-modal-image){filter:sepia(.4) saturate(.72) contrast(1.06)}:root[data-ui=retro][data-theme=dark] :is(.home-work-card img){filter:sepia(.5) saturate(.65)}@media (max-width:620px){:root[data-ui=retro] .app-shell:after{box-shadow:inset 0 0 55px #0000004d}}@media (prefers-reduced-motion:reduce){:root[data-ui=retro] .route-transition,:root[data-ui=retro] .route-transition:after{animation:none}}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.route-transition{animation:routeEnter .32s cubic-bezier(.22,1,.36,1) both;position:relative;will-change:transform,opacity;z-index:2}.route-transition--forward{animation-name:routeEnterFromRight}.route-transition--backward{animation-name:routeEnterFromLeft}.site-footer{border-top:1px solid #ffffff1f;color:#ffffff7a;font-size:.78rem;letter-spacing:.08em;margin:0 auto;padding:30px 0 42px;position:relative;text-align:center;width:min(calc(100% - 32px),1080px);z-index:2}.site-footer span{color:#ffffffc7}:root[data-theme=light] .site-footer{border-top-color:#41365824;color:#211d2b85}:root[data-theme=light] .site-footer span{color:#211d2bcc}:root[data-ui=retro] .site-footer{border-top:2px solid var(--retro-edge-light);color:var(--text-secondary);font-family:Courier New,monospace;letter-spacing:0}:root[data-ui=retro] .site-footer span{color:var(--accent)}@keyframes routeEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes routeEnterFromRight{0%{opacity:.35;transform:translateX(34px)}to{opacity:1;transform:none}}@keyframes routeEnterFromLeft{0%{opacity:.35;transform:translateX(-34px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.route-transition{animation:none}}@media (max-width:768px){.app-shell{min-height:100svh;padding-bottom:calc(78px + env(safe-area-inset-bottom))}.site-footer{font-size:.74rem;padding:24px 0 18px;width:calc(100% - 32px)}}@media (max-width:620px){:root :is(.projects-page,.activities-page,.art-page,.cv-page){padding-top:calc(78px + env(safe-area-inset-top));padding-inline:max(14px,env(safe-area-inset-left))}:root .home-hero{padding-top:calc(78px + env(safe-area-inset-top))}:root :is(.projects-hero h1,.activities-hero h1,.art-hero h1,.cv-hero h1){font-size:clamp(2.65rem,14vw,4rem);line-height:.94}:root :is(.projects-intro,.activities-intro,.art-intro,.cv-intro){font-size:.96rem;line-height:1.6;margin-top:16px}:root :is(.project-card,.activity-card,.art-card){max-width:100%}:root :is(.project-card__summary,.activity-card__summary,.art-description){line-height:1.58}:root .route-transition{animation-duration:.22s}}@media (hover:none),(pointer:coarse){.retro-toggle__tooltip,.theme-toggle__tooltip{opacity:0!important;transform:translateY(-5px)!important}.retro-toggle__tooltip.is-touch-visible,.theme-toggle__tooltip.is-touch-visible{opacity:1!important;transform:translateY(0)!important}:root :is(.project-card:hover,.activity-card:hover,.art-card:hover,.home-work-card:hover,.project-card:hover .project-card__image,.art-card:hover .art-image,.home-work-card:hover img){transform:none}}.global-bg{background:radial-gradient(circle at 50% 50%,#161922 0,#0a0d14 42%,#05070b 76%,#020304 100%);inset:0;overflow:hidden;pointer-events:none;position:fixed;z-index:0}.global-bg__shader{inset:0;position:absolute}:root[data-theme=light] .global-bg{background:radial-gradient(circle at 50% 45%,#fff 0,#f5f1ff 48%,#e8eff8 100%)}:root[data-theme=light] .global-bg__shader{filter:saturate(1.04) contrast(1.02);opacity:.92}:root[data-theme=light] .global-bg:after{background:linear-gradient(180deg,#ffffff1f,#f3f5f933),radial-gradient(circle at 50% 42%,#0000 20%,#e0e4eb2e 100%);content:"";inset:0;position:absolute}:root[data-ui=retro][data-theme=dark] .global-bg{background:#050401}:root[data-ui=retro][data-theme=dark] .global-bg__shader{filter:sepia(1) saturate(1.8) hue-rotate(345deg) contrast(1.2);opacity:.12}.global-bg__flow{animation:globalFlowBlend 16s ease-in-out infinite alternate;background:linear-gradient(120deg,#b43c7838,#465ab442,#3c8caa33,#aa5a462e,#b43c7838);background-size:300% 300%;filter:blur(80px);inset:-45%;mix-blend-mode:screen;opacity:.72;position:absolute;transform:rotate(0deg) scale(1.35)}.global-bg__flow--secondary{animation:globalFlowBlendSecondary 24s ease-in-out infinite alternate-reverse;background:linear-gradient(240deg,#7850ff52,#ff6ebe3d,#5adcff40,#ffbe7833);background-size:350% 350%;filter:blur(105px);mix-blend-mode:soft-light;opacity:.52;transform:rotate(18deg) scale(1.6)}@keyframes globalFlowBlend{0%{background-position:0 40%}50%{background-position:100% 60%}to{background-position:40% 100%}}@keyframes globalFlowBlendSecondary{0%{background-position:100% 0}50%{background-position:0 100%}to{background-position:80% 30%}}@media (max-width:768px),(prefers-reduced-motion:reduce){.global-bg__flow,.global-bg__flow--secondary{animation-duration:32s;filter:blur(60px)}}@media (prefers-reduced-motion:reduce){.global-bg__flow,.global-bg__flow--secondary{animation:none}}.cafe-homepage{min-height:100vh;position:relative}.home-page{color:#f7f4f6;margin:0 auto;position:relative;width:min(1180px,calc(100% - 48px));z-index:1}.home-hero{grid-gap:clamp(40px,7vw,100px);align-items:center;display:grid;gap:clamp(40px,7vw,100px);grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);min-height:100svh;padding:166px 0 96px}.home-hero__content{display:flex;flex-direction:column;justify-content:center;max-width:720px}.home-eyebrow,.home-section__index,.home-timeline article>span,.home-work-card__meta{color:#f6c85f;font-size:.78rem;letter-spacing:.18em;line-height:1.4;text-transform:uppercase}.home-hero h1{font-family:Aldrich,sans-serif;font-size:clamp(4.5rem,10vw,9rem);font-weight:500;letter-spacing:-.065em;line-height:.84;margin:0 0 38px;text-shadow:0 0 22px #ffffff2e,0 0 60px #7e4fff24}.home-hero__lead{color:#fffffff0;font-size:clamp(1.25rem,2.25vw,1.7rem);line-height:1.45;max-width:620px}.home-hero__description{color:#ffffffa3;font-size:1rem;line-height:1.7;margin-top:20px;max-width:610px}.home-hero__visual{aspect-ratio:1;justify-self:end;position:relative;width:min(440px,100%)}.home-profile{aspect-ratio:1;border:1px solid #ffffff4d;border-radius:50%;box-shadow:0 24px 70px #0006,0 0 40px #9768ff29;left:50%;overflow:hidden;perspective:1100px;position:absolute;top:50%;transform:translate(-50%,-52%);width:100%}.home-profile>img{display:block;height:100%;object-fit:cover;object-position:50% 50%;width:100%}.home-orbit{display:none}.home-orbit--one{aspect-ratio:1;left:-22%;top:9%;width:80%}.home-orbit--two{aspect-ratio:1;bottom:2%;right:-28%;width:72%}.home-section{border-top:1px solid #ffffff1a;padding:120px 0}.home-section__heading{grid-gap:28px;align-items:end;display:grid;gap:28px;grid-template-columns:1fr .7fr;margin-bottom:42px}.home-about h2,.home-section__heading h2{font-family:Aldrich,sans-serif;font-size:clamp(2.8rem,6vw,5.4rem);font-weight:500;letter-spacing:-.05em;line-height:.95}.home-section__heading>p:last-child{color:#ffffff8f;text-align:right}.home-work-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.home-work-card{-webkit-backdrop-filter:blur(18px) saturate(.9);backdrop-filter:blur(18px) saturate(.9);background:#ffffff12;border:1px solid #ffffff26;border-radius:18px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;min-height:420px;overflow:hidden;padding:24px;position:relative;text-decoration:none}.home-work-card img{height:100%;inset:0;object-fit:cover;opacity:.42;position:absolute;transition:transform .45s ease,opacity .45s ease;width:100%}.home-work-card__shade{background:linear-gradient(180deg,#05060e33,#05060eeb);inset:0;position:absolute}.home-work-card__arrow,.home-work-card__content,.home-work-card__meta{position:relative;z-index:1}.home-work-card__content{grid-gap:12px;display:grid;gap:12px;padding-right:28px}.home-work-card__content strong{font-family:Aldrich,sans-serif;font-size:1.7rem;font-weight:500;line-height:1.05}.home-work-card__content>span{color:#ffffff9e;font-size:.9rem;line-height:1.55}.home-work-card__arrow{bottom:22px;font-size:1.3rem;position:absolute;right:22px}.home-work-card:hover{border-color:#ffffff52;transform:translateY(-5px)}.home-work-card:hover img{opacity:.58;transform:scale(1.04)}.home-about{grid-gap:clamp(64px,10vw,150px);border-top:1px solid #ffffff1a;display:grid;gap:clamp(64px,10vw,150px);grid-template-columns:1fr 1fr;padding:120px 0}.home-about__copy h2{margin:0 0 30px}.home-about__copy>p:not(.home-section__index){color:#ffffffa8;line-height:1.75;max-width:560px}.home-about__copy>a{border-bottom:1px solid #ffffff59;color:#fff;display:inline-block;margin-top:28px;padding-bottom:5px;text-decoration:none}.home-timeline{border-top:1px solid #ffffff26}.home-timeline article{border-bottom:1px solid #ffffff26;padding:28px 0 34px}.home-timeline h3{font-family:Aldrich,sans-serif;font-size:1.55rem;font-weight:500;margin:14px 0 8px}.home-timeline p{color:#ffffff94;line-height:1.65}@media (max-width:960px){.home-page{width:min(100% - 32px,1180px)}.home-hero{gap:54px;grid-template-columns:1fr;min-height:auto;padding:144px 0 80px}.home-hero__content{max-width:760px}.home-hero__visual{aspect-ratio:1;justify-self:center;width:min(340px,88vw)}.home-about,.home-section{padding:80px 0}.home-section__heading{gap:14px;grid-template-columns:1fr}.home-section__heading>p:last-child{text-align:left}.home-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-work-card{min-height:340px}.home-about{gap:54px;grid-template-columns:1fr}}@media (max-width:620px){.home-page{width:calc(100% - 28px)}.home-hero{gap:42px;padding:24px 0 64px}.home-hero h1{font-size:clamp(3.4rem,19vw,5.5rem);margin-bottom:28px;overflow-wrap:anywhere}.home-hero__lead{font-size:clamp(1.05rem,5vw,1.3rem)}.home-hero__visual{width:min(300px,82vw)}.home-about,.home-section{padding:64px 0}.home-section{border-top:0}.home-about h2,.home-section__heading h2{font-size:clamp(2.35rem,13vw,3.8rem);overflow-wrap:anywhere}.home-work-grid{grid-template-columns:1fr}.home-work-card{min-height:min(390px,112vw);padding:20px}.home-timeline h3{font-size:1.3rem;overflow-wrap:anywhere}}.projects-page{color:#e6dce0;min-height:100vh;padding:120px 24px 96px}.projects-hero{margin:0 auto 44px;max-width:1080px}.projects-eyebrow{letter-spacing:.18em;opacity:1}.projects-hero h1{color:#f5eef0;font-size:clamp(3rem,8vw,7rem);font-weight:600;letter-spacing:-.06em;line-height:.9}.projects-intro{color:#e6dce0b8;font-size:clamp(1rem,2vw,1.25rem);margin-top:22px;max-width:620px}.projects-eyebrow{color:#f6c85f;font-size:.95rem;font-weight:500;letter-spacing:.28em;line-height:1;margin-bottom:12px;text-transform:uppercase}.projects-list{display:flex;flex-direction:column;gap:22px;margin:0 auto;max-width:1080px}.project-card{-webkit-backdrop-filter:blur(18px) saturate(.92);backdrop-filter:blur(18px) saturate(.92);background:linear-gradient(135deg,#ffffff24,#ffffff0f);border:1px solid #d2dcf047;border-radius:10px;box-shadow:0 0 0 1px #02030a80,inset 0 1px 0 #ffffff47,inset 1px 0 0 #ffffff0f,0 20px 70px #0000003d;cursor:pointer;overflow:hidden;transition:transform .1s ease}.project-card:hover{background:linear-gradient(135deg,#ffffff2b,#ffffff14);border-color:#e1e6f86b;box-shadow:0 0 0 1px #02030af2,inset 0 1px 0 #ffffff4d,inset 1px 0 0 #ffffff1a,0 28px 90px #0006;transform:translateY(-4px)}.project-card.is-open{background:linear-gradient(135deg,#ffffff2e,#ffffff17);border-color:#e1e6f86b}.project-card__main{align-items:center;display:flex;gap:28px;padding:24px 20px}.project-card__content{flex:1 1 auto;min-width:0}.project-card__actions{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:16px}.project-card h2{color:#f0a8ad;font-size:clamp(1.15rem,2vw,1.45rem);font-weight:700;letter-spacing:-.03em;margin-bottom:8px}.project-card__organization{color:#e6dce08c;font-size:1rem;font-style:italic;letter-spacing:.02em;margin-bottom:12px;margin-top:2px}.project-card__date{color:#e6dce07a;font-size:.95rem;margin-bottom:18px}.project-card__summary{color:#f5eef0e0;font-size:clamp(1rem,1.7vw,1.15rem);line-height:1.6;margin-bottom:18px;max-width:760px}.project-card__paper-button{align-items:center;background:#ffffff0f;border:1px solid #ffffff26;border-radius:10px;color:#f5f5f5;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;justify-content:center;margin-top:0;padding:10px 18px;text-decoration:none;transition:background .2s ease,border-color .2s ease,transform .15s ease,box-shadow .2s ease}.project-card__paper-button:hover{background:#ffffff1f;border-color:#ffffff4d;box-shadow:0 8px 20px #00000040;transform:translateY(-2px)}.project-card__paper-button:active{transform:translateY(0)}.project-card__tags{display:flex;flex-wrap:wrap;gap:8px}.project-card__tags span{background:#0a080c33;border:1px solid #f0a8ad38;border-radius:5px;color:#e6dce094;font-size:.85rem;padding:5px 10px}.project-card__image{border:1px solid #ffffff1f;border-radius:9px;filter:grayscale(.25);flex:0 0 auto;height:240px;object-fit:cover;transition:transform .1s ease;width:clamp(190px,23vw,260px)}.project-card:hover .project-card__image{filter:grayscale(0);transform:scale(1.04)}.project-card__details{border-top:1px solid #f0a8ad2e;font-weight:400;max-height:0;opacity:0;overflow:hidden;padding:0 20px;transition:max-height .32s ease,opacity .22s ease,padding .32s ease}.project-card.is-open .project-card__details{max-height:1200px;opacity:1;padding:0 20px 24px}.project-card__details li,.project-card__details p{color:inherit;font-family:inherit;font-size:1rem;font-weight:400;line-height:1.7}.project-card__details p{color:#f0e9ecd6;margin-bottom:12px;max-width:780px;padding-top:18px}.project-card__details ul{margin-left:20px}.project-card__details li{margin-bottom:10px}@media (max-width:900px){.projects-page{padding-top:128px}.project-card__main{gap:20px}.project-card__summary{font-size:1rem}}.project-card__desktop-cue{align-items:center;color:var(--accent);display:flex;flex:0 0 auto;font-size:.9rem;font-weight:600;gap:8px;margin-top:0}.project-card__desktop-arrow{display:inline-block;min-width:1em;text-align:center}@media (min-width:901px){.project-card{position:relative;transition:transform .32s cubic-bezier(.22,1,.36,1),border-color .32s ease,background .32s ease,box-shadow .32s ease}.project-card h2{transition:transform .32s cubic-bezier(.22,1,.36,1)}.project-card:hover h2{transform:translateX(4px)}.project-card__desktop-cue{align-items:center;border:1px solid #0000;border-radius:8px;color:var(--accent);display:flex;font-size:.9rem;font-weight:600;gap:8px;margin-top:0;padding:8px 0;transition:opacity .24s ease,transform .32s cubic-bezier(.22,1,.36,1),color .24s ease,background .24s ease,border-color .24s ease,box-shadow .24s ease}.project-card.is-open .project-card__desktop-cue,.project-card:focus-within .project-card__desktop-cue,.project-card:hover .project-card__desktop-cue,.project-card__desktop-cue{opacity:1;transform:translateY(0)}.project-card__desktop-cue:hover{background:color-mix(in srgb,var(--accent) 12%,#0000);border-color:color-mix(in srgb,var(--accent) 42%,#0000);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 10%,#0000);color:var(--text-primary);transform:translateY(-2px)}.project-card__desktop-arrow{display:inline-block;min-width:1em;text-align:center;transition:transform .32s cubic-bezier(.22,1,.36,1)}.project-card__desktop-cue:hover .project-card__desktop-arrow{transform:translateY(3px)}.project-card.is-open .project-card__desktop-cue:hover .project-card__desktop-arrow{transform:translateY(-3px)}:root[data-ui=retro] .project-card__desktop-cue{border-radius:0;color:var(--accent);transition:none}:root[data-ui=retro] .project-card__desktop-cue:hover{background:var(--retro-panel);border:2px outset var(--retro-edge-light);box-shadow:2px 2px 0 var(--retro-shadow);color:var(--text-primary);transform:none}:root[data-ui=retro] .project-card__desktop-cue:hover .project-card__desktop-arrow{transform:translateY(2px)}:root[data-ui=retro] .project-card.is-open .project-card__desktop-cue:hover .project-card__desktop-arrow{transform:translateY(-2px)}}@media (max-width:700px){.projects-page{padding:24px 16px 56px}.projects-hero{margin-bottom:32px}.projects-hero h1{font-size:clamp(3rem,16vw,4.5rem);overflow-wrap:anywhere}.project-card__main{align-items:stretch;flex-direction:column-reverse;gap:20px;padding:18px 16px}.project-card__image{height:180px;width:100%}.project-card h2,.project-card__details,.project-card__organization,.project-card__summary{overflow-wrap:anywhere}.project-card__paper-button{font-size:.85rem;min-height:44px;padding-inline:12px;white-space:nowrap;width:auto}.project-card__actions{gap:8px}.project-card__desktop-cue{font-size:.82rem}.project-card.is-open .project-card__details{padding:0 16px 20px}}@media (max-width:380px){.projects-page{padding-inline:12px}.project-card__main{padding:16px 14px}.project-card__image{height:155px}}.activities-page{color:#e6dce0;min-height:100vh;padding:120px 24px 96px}.activities-hero{margin:0 auto 44px;max-width:1080px}.activities-eyebrow{color:#f6c85f;font-size:.95rem;letter-spacing:.18em;margin-bottom:12px;opacity:1;text-transform:uppercase}.activities-hero h1{color:#f5eef0;font-size:clamp(3rem,8vw,7rem);font-weight:600;letter-spacing:-.06em;line-height:.9}.activities-intro{color:#e6dce0b8;font-size:clamp(1rem,2vw,1.25rem);line-height:1.7;margin-top:22px;max-width:620px}.activities-list{grid-gap:22px;align-items:start;display:grid;gap:22px;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:1280px;position:relative}.activity-card{aspect-ratio:1/1;-webkit-backdrop-filter:blur(18px) saturate(.92);backdrop-filter:blur(18px) saturate(.92);background:linear-gradient(135deg,#ffffff24,#ffffff0f);border:1px solid #d2dcf047;border-radius:10px;box-shadow:0 0 0 1px #02030a80,inset 0 1px 0 #ffffff47,inset 1px 0 0 #ffffff0f,0 20px 70px #0000003d;cursor:pointer;overflow:hidden;padding:24px 20px;transition:transform .1s ease}.shadowing-list{display:flex;flex-direction:column;gap:22px}.shadowing-item{border-bottom:1px solid #f0a8ad29;padding-bottom:20px}.shadowing-item:last-child{border-bottom:none;padding-bottom:0}.shadowing-item__header{display:flex;gap:18px;justify-content:space-between;margin-bottom:8px}.shadowing-item h3{color:#f5eef0;font-size:1.15rem;font-weight:700}.shadowing-item span{color:#e6dce080;flex:0 0 auto;font-size:.95rem}.shadowing-item p{color:#e6dce0b8;font-size:1rem;line-height:1.7}.activity-card:hover{background:linear-gradient(135deg,#ffffff2b,#ffffff14);border-color:#e1e6f86b;box-shadow:0 0 0 1px #02030af2,inset 0 1px 0 #ffffff4d,inset 1px 0 0 #ffffff1a,0 28px 90px #0006;transform:translateY(-4px)}.activity-card h2{color:#f0a8ad;font-size:clamp(1.35rem,2.6vw,2rem);font-weight:700;letter-spacing:-.03em;margin-bottom:8px}.activity-card__organization{color:#e6dce08c;font-size:1rem;font-style:italic;letter-spacing:.02em;margin-bottom:12px;margin-top:2px}.activity-modal__organization{color:#e6dce099;font-size:1.1rem;font-style:italic;letter-spacing:.02em;margin-bottom:22px;margin-top:-10px}.activity-card__date{color:#e6dce07a;font-size:.95rem;margin-bottom:18px}.activity-card__summary{color:#f5eef0e0;font-size:1rem;line-height:1.6}.activity-modal-backdrop{align-items:center;animation:backdropFadeIn .22s ease forwards;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#05040773;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:50}.activity-modal{animation:modalPopIn .32s cubic-bezier(.22,1,.36,1) forwards;background:#332831f5;border:1px solid #f0a8adad;border-radius:14px;box-shadow:0 34px 100px #00000080;max-height:82vh;overflow-y:auto;padding:34px 32px;position:relative;width:min(860px,92vw)}.activity-modal__close{background:#0000;border:none;color:#f5eef0b3;cursor:pointer;font-size:2rem;line-height:1;position:absolute;right:20px;top:18px}.activity-modal__close:hover{color:#f5eef0}.activity-modal__date{color:#e6dce07a;font-size:.95rem;margin-bottom:16px}.activity-modal h2{color:#f0a8ad;font-size:clamp(2rem,5vw,4rem);font-weight:700;letter-spacing:-.05em;margin-bottom:18px}.activity-modal__summary{color:#f5eef0e0;font-size:clamp(1rem,1.7vw,1.15rem);line-height:1.6;margin-bottom:24px;max-width:760px}.activity-modal__details{border-top:1px solid #f0a8ad2e;color:#e6dce0b8;font-size:1rem;line-height:1.7;padding-top:20px}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalPopIn{0%{opacity:0;transform:scale(.88) translateY(18px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width:900px){.activities-page{padding-top:128px}.activities-list{grid-template-columns:repeat(2,1fr)}.activity-card{aspect-ratio:auto;min-height:300px}}@media (max-width:620px){.activities-page{padding:24px 16px 56px}.activities-hero{margin-bottom:32px}.activities-hero h1{font-size:clamp(3rem,16vw,4.5rem);overflow-wrap:anywhere}.activities-list{grid-template-columns:1fr}.activity-card{aspect-ratio:auto;min-height:260px;padding:20px 18px}.activity-card h2,.activity-card__organization,.activity-card__summary,.activity-modal h2,.activity-modal p{overflow-wrap:anywhere}.activity-modal-backdrop{align-items:center;padding:12px}.activity-modal{border-radius:18px;max-height:calc(100svh - 24px);padding:28px 20px;width:100%}.activity-modal__close{height:44px;right:14px;top:12px;width:44px}.shadowing-item__header{flex-direction:column;gap:4px}}.activity-card__desktop-cue{align-items:center;border-top:1px solid #f0a8ad29;color:var(--accent);display:flex;font-size:.9rem;font-weight:600;gap:12px;justify-content:space-between;margin-top:18px;padding-top:12px}.activity-card__desktop-arrow{display:inline-block}@media (min-width:901px){.activity-card{padding-bottom:58px;position:relative;transition:transform .32s cubic-bezier(.22,1,.36,1),border-color .32s ease,background .32s ease,box-shadow .32s ease}.activity-card h2{transition:transform .32s cubic-bezier(.22,1,.36,1)}.activity-card:hover h2{transform:translateX(4px)}.activity-card__desktop-cue{align-items:center;border-radius:0 0 8px 8px;border-top:1px solid #f0a8ad29;bottom:22px;color:var(--accent);display:flex;font-size:.9rem;font-weight:600;justify-content:space-between;left:20px;margin-top:0;padding:12px 10px 8px;position:absolute;right:20px;transition:opacity .24s ease,transform .32s cubic-bezier(.22,1,.36,1),color .24s ease,background .24s ease,border-color .24s ease,box-shadow .24s ease}.activity-card:focus-within .activity-card__desktop-cue,.activity-card:hover .activity-card__desktop-cue,.activity-card__desktop-cue{opacity:1;transform:translateY(0)}.activity-card__desktop-cue:hover{background:color-mix(in srgb,var(--accent) 12%,#0000);border-color:color-mix(in srgb,var(--accent) 42%,#0000);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 10%,#0000);color:var(--text-primary);transform:translateY(-2px)}.activity-card__desktop-arrow{display:inline-block;transition:transform .32s cubic-bezier(.22,1,.36,1)}.activity-card__desktop-cue:hover .activity-card__desktop-arrow{transform:translate(3px,-3px)}:root[data-ui=retro] .activity-card__desktop-cue{border-radius:0;border-top:2px solid var(--retro-shadow);color:var(--accent);padding:10px 8px 6px;transition:none}:root[data-ui=retro] .activity-card__desktop-cue:hover{background:var(--retro-panel);border:2px outset var(--retro-edge-light);box-shadow:2px 2px 0 var(--retro-shadow);color:var(--text-primary);transform:none}:root[data-ui=retro] .activity-card__desktop-cue:hover .activity-card__desktop-arrow{transform:translate(2px,-2px)}}@media (max-width:380px){.activities-page{padding-inline:12px}.activity-card{min-height:0}.activity-modal{padding-inline:16px}}@media (max-height:600px) and (orientation:landscape){.activity-modal-backdrop{align-items:flex-start;padding:8px}.activity-modal{max-height:calc(100svh - 16px)}}.art-page{color:#e6dce0;min-height:100vh;padding:120px 24px 96px}.art-hero{margin:0 auto 44px;max-width:1080px}.art-eyebrow{color:#f6c85f;font-size:.95rem;letter-spacing:.18em;margin-bottom:12px;opacity:1;text-transform:uppercase}.art-hero h1{color:#f5eef0;font-size:clamp(3rem,8vw,7rem);font-weight:600;letter-spacing:-.06em;line-height:.9}.art-intro{color:#e6dce0b8;font-size:clamp(1rem,2vw,1.25rem);line-height:1.7;margin-top:22px;max-width:620px}.art-grid{grid-gap:36px;display:grid;gap:36px;grid-template-columns:repeat(2,1fr);margin:0 auto;max-width:1080px}.art-card{-webkit-backdrop-filter:blur(18px) saturate(.92);backdrop-filter:blur(18px) saturate(.92);background:linear-gradient(135deg,#ffffff24,#ffffff0f);border:1px solid #d2dcf047;border-radius:28px;box-shadow:0 0 0 1px #02030a80,inset 0 1px 0 #ffffff47,inset 1px 0 0 #ffffff0f,0 20px 70px #0000003d;overflow:hidden;transition:transform .32s cubic-bezier(.22,1,.36,1),border-color .32s ease,background .32s ease,box-shadow .32s ease}.art-card:hover{background:linear-gradient(135deg,#ffffff2b,#ffffff14);border-color:#e1e6f86b;box-shadow:0 0 0 1px #02030af2,inset 0 1px 0 #ffffff4d,inset 1px 0 0 #ffffff1a,0 28px 90px #0006;transform:translateY(-6px)}.art-image-wrap{aspect-ratio:4/5;overflow:hidden;position:relative;width:100%}.art-image{display:block;height:100%;object-fit:cover;transition:transform .4s ease;width:100%}.art-card:hover .art-image{transform:scale(1.035)}.art-card:focus-visible{outline:2px solid #f0a8ade6;outline-offset:5px}.art-expand-button{align-items:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0a0d1473;border:1px solid #ffffff2e;border-radius:999px;color:#f5eef0;cursor:pointer;display:inline-flex;font:inherit;height:42px;justify-content:center;opacity:.78;padding:0;position:absolute;right:16px;top:16px;transform:scale(1);transition:opacity .26s ease,transform .42s cubic-bezier(.22,1,.36,1),background .26s ease,border-color .26s ease,box-shadow .26s ease;width:42px;z-index:1}.art-card--nudging .art-expand-button,.art-card:focus-visible .art-expand-button,.art-card:hover .art-expand-button,.art-expand-button:focus-visible{opacity:1;transform:scale(1)}.art-expand-button:focus-visible,.art-expand-button:hover{background:#f0a8ad38;border-color:#f0a8ad80;box-shadow:0 12px 36px #0000004d;transform:scale(1.08)}.art-expand-icon{font-size:1.15rem;transition:transform .42s cubic-bezier(.22,1,.36,1)}.art-expand-button:focus-visible .art-expand-icon,.art-expand-button:hover .art-expand-icon{transform:rotate(8deg) scale(1.12)}.art-card--nudging .art-expand-button{animation:artCardNudge 1.15s ease-in-out 2}@keyframes artCardNudge{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}.art-info{padding:24px}.art-info h2{color:#f5eef0;font-size:1.55rem;font-weight:500;margin-bottom:8px}.art-medium,.art-size{color:#f0a8ade6;font-size:.95rem;line-height:1.6}.art-description{color:#f0e9ecd6;font-size:1rem;line-height:1.7;margin-top:14px}.art-modal{align-items:center;animation:artModalBackdropIn .26s ease both;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#020304b8;display:flex;inset:0;justify-content:center;padding:32px;position:fixed;z-index:1000}.art-modal-content{grid-gap:32px;animation:artModalContentIn .42s cubic-bezier(.22,1,.36,1) both;-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);background:linear-gradient(135deg,#ffffff14,hsla(0,0%,100%,.025));border:1px solid #f5eef024;border-radius:32px;display:grid;gap:32px;grid-template-columns:1.25fr .75fr;max-height:86vh;overflow:auto;padding:28px;position:relative;width:min(1100px,100%)}@keyframes artModalBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes artModalContentIn{0%{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}.art-modal-close{background:#ffffff14;border:none;border-radius:999px;color:#f5eef0;cursor:pointer;font-size:1.8rem;height:40px;line-height:1;position:absolute;right:20px;top:18px;width:40px}.art-card{cursor:pointer}.art-modal-close:hover{background:#f0a8ad38}.art-modal-image-wrap{border-radius:24px;max-height:76vh;overflow:hidden;width:100%}.art-modal-image{display:block;height:100%;max-height:76vh;object-fit:contain;width:100%}.art-modal-info{align-self:center;padding-right:24px}.art-modal-eyebrow{color:#f0a8ad;font-size:.85rem;letter-spacing:.18em;margin-bottom:12px;text-transform:uppercase}.art-modal-info h2{color:#f5eef0;font-size:clamp(2rem,4vw,3.5rem);font-weight:500;letter-spacing:-.04em;line-height:1;margin-bottom:22px}.art-modal-info p{color:#e6dce0bf;font-size:1.05rem;line-height:1.7;margin-bottom:14px}.art-modal-info strong{color:#f5eef0;font-weight:500}@media (max-width:800px){.art-page{padding:24px 18px 56px}.art-hero{margin-bottom:32px}.art-hero h1{font-size:clamp(3rem,16vw,4.5rem)}.art-grid{gap:20px}.art-expand-button{height:42px;opacity:1;right:12px;top:12px;width:42px}.art-card--nudging .art-expand-button,.art-card:focus-visible .art-expand-button,.art-card:hover .art-expand-button,.art-expand-button:focus-visible,.art-expand-button:hover{transform:scale(1)}.art-card--nudging .art-expand-button{animation:none}.art-modal-content{grid-template-columns:1fr;max-height:90vh}.art-modal-info{padding-right:0}.art-modal-image,.art-modal-image-wrap{max-height:48svh}}@media (prefers-reduced-motion:reduce){.art-card,.art-expand-button,.art-expand-icon,.art-image,.art-image-wrap:after,.art-modal,.art-modal-content{animation:none!important;transition-duration:.01ms!important}}@media (max-width:640px){.art-grid{gap:24px;grid-template-columns:1fr}.art-hero h1{overflow-wrap:anywhere}}@media (max-width:520px){.art-card{border-radius:18px}.art-info{padding:18px}.art-modal{align-items:center;padding:10px}.art-modal-content{border-radius:20px;gap:18px;max-height:calc(100svh - 20px);padding:58px 14px 14px}.art-modal-image-wrap{border-radius:14px;max-height:48vh}.art-modal-image{max-height:48vh}.art-modal-close{height:44px;right:10px;top:10px;width:44px}.art-modal-info h2{margin-bottom:16px}.art-description,.art-modal-info h2,.art-modal-info p{overflow-wrap:anywhere}}@media (max-width:380px){.art-page{padding-inline:12px}.art-modal{padding:6px}.art-modal-content{max-height:calc(100svh - 12px);padding-inline:12px}}@media (max-height:600px) and (orientation:landscape){.art-modal{align-items:flex-start;padding:8px}.art-modal-content{grid-template-columns:1fr 1fr;max-height:calc(100svh - 16px);padding-top:54px}.art-modal-image,.art-modal-image-wrap{max-height:calc(100svh - 86px)}}.cv-page{color:#e6dce0;min-height:100vh;padding:120px 24px 96px}.cv-hero{margin:0 auto 44px;max-width:1080px}.cv-eyebrow{color:#f0a8ad;font-size:.95rem;letter-spacing:.18em;margin-bottom:12px;opacity:.85;text-transform:uppercase}.cv-hero h1{color:#f5eef0;font-size:clamp(3rem,8vw,7rem);font-weight:600;letter-spacing:-.06em;line-height:.9}.cv-intro{color:#e6dce0b8;font-size:clamp(1rem,2vw,1.25rem);line-height:1.7;margin-top:22px;max-width:620px}.cv-viewer-wrap{-webkit-overflow-scrolling:touch;background:#ffffff0a;border:1px solid #ffffff24;border-radius:24px;height:92vh;margin:0 auto;max-width:1080px;overflow:hidden}.cv-viewer{border:none;display:block;height:100%;width:100%}.cv-update-note{color:var(--text-secondary);font-size:.78rem;letter-spacing:.06em;margin:14px auto 0;max-width:1080px;text-align:right}.cv-update-note time{color:var(--text-primary)}:root[data-ui=retro] .cv-update-note{font-family:Courier New,monospace;letter-spacing:0}.cv-mobile-open{display:none}@media (max-width:768px){.cv-page{padding:24px 16px 48px}.cv-hero{margin-bottom:30px}.cv-hero h1{font-size:clamp(2.8rem,14vw,4.5rem);overflow-wrap:anywhere}.cv-viewer-wrap{border-radius:14px;height:min(82svh,900px);overflow:auto}.cv-mobile-open{align-items:center;background:#ffffff14;border:1px solid #ffffff2e;border-radius:12px;color:#f5eef0;display:flex;justify-content:center;margin:0 auto 14px;max-width:1080px;min-height:48px;text-decoration:none;width:100%}.cv-update-note{font-size:.74rem;margin-top:12px;text-align:center}}@media (max-width:420px){.cv-page{padding-inline:12px}.cv-hero h1{font-size:clamp(2.45rem,13vw,3.6rem)}.cv-viewer-wrap{height:72svh}}@media (max-width:768px){html{scroll-padding-bottom:calc(88px + env(safe-area-inset-bottom))}body{line-height:1.5}.app-shell,body{min-height:100dvh}.app-shell{overflow-x:clip;padding-bottom:calc(90px + env(safe-area-inset-bottom))}.site-nav{border-radius:22px;bottom:max(8px,env(safe-area-inset-bottom));gap:3px;max-width:560px;min-height:62px;padding:5px;width:calc(100% - 16px)}.site-nav:before{height:calc(100% - 10px);left:5px;top:5px;transform:translateX(calc(var(--active-index)*(100% + 3px)));width:calc(20% - 4.4px)}.site-nav a{font-size:clamp(.69rem,2.8vw,.86rem);line-height:1.1;min-height:50px;padding:7px 2px}.theme-toggle-wrap{right:max(10px,env(safe-area-inset-right))}.retro-toggle-wrap,.theme-toggle-wrap{top:max(10px,env(safe-area-inset-top))}.retro-toggle-wrap{right:max(62px,calc(env(safe-area-inset-right) + 52px))}:is(.theme-toggle,.retro-toggle){height:44px;width:44px}:is(.projects-page,.activities-page,.art-page,.cv-page){padding:calc(82px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) calc(32px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}:is(.projects-hero,.activities-hero,.art-hero,.cv-hero){margin-bottom:34px}:is(.projects-hero h1,.activities-hero h1,.art-hero h1,.cv-hero h1){font-size:clamp(2.9rem,14vw,4.45rem);letter-spacing:-.055em;line-height:.94;max-width:100%;overflow-wrap:anywhere}:is(.projects-intro,.activities-intro,.art-intro,.cv-intro){font-size:clamp(.95rem,4vw,1.05rem);line-height:1.6;margin-top:16px;max-width:36rem}.home-page{width:calc(100% - 32px)}.home-hero{gap:36px;min-height:auto;padding:calc(86px + env(safe-area-inset-top)) 0 62px}.home-hero h1{font-size:clamp(3.15rem,18vw,5rem);letter-spacing:-.065em;line-height:.87;margin-bottom:24px}.home-hero__lead{font-size:clamp(1.05rem,4.8vw,1.28rem);line-height:1.48}.home-hero__visual{width:min(82vw,292px)}:is(.home-section,.home-about){padding:64px 0}.home-about{gap:44px}:is(.home-section__heading h2,.home-about h2){font-size:clamp(2.3rem,12vw,3.55rem);line-height:.98}.home-section__heading{margin-bottom:30px}.home-about__copy h2{margin-bottom:22px}.home-about__copy>p:not(.home-section__index){line-height:1.68}.home-work-grid{gap:16px}.home-work-card{border-radius:18px;min-height:clamp(320px,104vw,390px);padding:20px}.home-work-card__content strong{font-size:clamp(1.45rem,7vw,1.75rem)}.home-work-card__content>span{font-size:.9rem;line-height:1.5}.home-timeline article{padding:24px 0 28px}.projects-list{gap:16px}.project-card{border-radius:14px}.project-card__main{align-items:stretch;flex-direction:column-reverse;gap:20px;padding:16px}.project-card__image{border-radius:11px;height:clamp(190px,60vw,235px);width:100%}.project-card h2{font-size:clamp(1.28rem,6vw,1.55rem);line-height:1.1}.project-card__organization{font-size:.9rem}.project-card__date{font-size:.86rem;margin-bottom:14px}.project-card__summary{font-size:.95rem;line-height:1.58;margin-bottom:14px}.project-card__actions{gap:8px;margin-top:12px;width:100%}.project-card__desktop-cue{font-size:clamp(.75rem,3.4vw,.84rem);min-width:0;white-space:nowrap}.project-card__paper-button{font-size:clamp(.74rem,3.25vw,.84rem);line-height:1.15;margin-top:0;min-height:44px;min-width:0;padding:9px 10px;white-space:nowrap;width:auto}.project-card.is-open .project-card__details{max-height:2200px;padding:0 16px 20px}.project-card__details li,.project-card__details p{font-size:.95rem;line-height:1.65}.project-card__details ul{margin-left:18px}.activities-list{gap:16px;grid-template-columns:1fr}.activity-card,:root[data-ui=retro] .activity-card{aspect-ratio:auto;border-radius:14px;height:auto;min-height:0;padding:20px 18px}.activity-card h2{font-size:clamp(1.3rem,6.3vw,1.7rem);line-height:1.12}.activity-card__organization{font-size:.9rem}.activity-card__date{font-size:.86rem;margin-bottom:14px}.activity-card__summary{font-size:.95rem;line-height:1.58}.activity-card__desktop-cue{margin-top:16px;padding-top:10px}.activity-modal-backdrop{align-items:flex-end;padding:max(8px,env(safe-area-inset-top)) 8px 0;z-index:1000}.activity-modal{-webkit-overflow-scrolling:touch;border-radius:20px 20px 0 0;max-height:calc(100dvh - max(12px, env(safe-area-inset-top)));overscroll-behavior:contain;padding:58px 18px calc(24px + env(safe-area-inset-bottom));width:100%}.activity-modal__close{height:44px;right:10px;top:8px;width:44px}.activity-modal h2{font-size:clamp(1.8rem,10vw,2.8rem);line-height:1.02;padding-right:8px}.activity-modal__organization{font-size:.95rem;margin-top:-6px}.activity-modal__summary{font-size:.98rem;line-height:1.6}.activity-modal__details{font-size:.95rem;line-height:1.65}.shadowing-item__header{flex-direction:column;gap:4px}.art-grid{gap:18px;grid-template-columns:1fr}.art-card{border-radius:18px}.art-info{padding:18px}.art-info h2{font-size:clamp(1.35rem,6vw,1.6rem)}.art-description{font-size:.95rem;line-height:1.62}.art-expand-button{height:44px;opacity:1;right:12px;top:12px;width:44px}.art-modal{align-items:flex-end;padding:max(8px,env(safe-area-inset-top)) 8px 0}.art-modal-content{-webkit-overflow-scrolling:touch;border-radius:20px 20px 0 0;gap:18px;grid-template-columns:1fr;max-height:calc(100dvh - max(12px, env(safe-area-inset-top)));overscroll-behavior:contain;padding:58px 12px calc(22px + env(safe-area-inset-bottom));width:100%}.art-modal-close{height:44px;right:10px;top:8px;width:44px}.art-modal-image,.art-modal-image-wrap{max-height:48dvh}.art-modal-image-wrap{border-radius:14px}.art-modal-info{padding:0 6px}.art-modal-info h2{font-size:clamp(1.75rem,9vw,2.6rem);margin-bottom:16px}.art-modal-info p{font-size:.96rem;line-height:1.62}.cv-mobile-open{border-radius:12px;font-weight:600;margin-bottom:12px;min-height:50px}.cv-viewer-wrap{border-radius:14px;height:68dvh;min-height:430px}}@media (max-width:390px){:is(.projects-page,.activities-page,.art-page,.cv-page){padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.home-page{width:calc(100% - 24px)}.home-hero h1{font-size:clamp(2.85rem,17vw,4rem)}.home-work-card{padding:18px}.site-nav{gap:2px;padding:4px;width:calc(100% - 10px)}.site-nav:before{height:calc(100% - 8px);left:4px;top:4px;transform:translateX(calc(var(--active-index)*(100% + 2px)));width:calc(20% - 3.2px)}.site-nav a{font-size:clamp(.6rem,2.9vw,.7rem);letter-spacing:-.025em;padding-inline:1px}.project-card__main{padding:14px}.project-card__image{height:clamp(175px,58vw,210px)}.project-card__actions{gap:5px}.project-card__desktop-cue{font-size:.74rem}.project-card__paper-button{font-size:.72rem;padding-inline:8px}.activity-card{padding:18px 16px}.art-info{padding:16px}.cv-viewer-wrap{min-height:390px}}@media (max-width:768px) and (max-height:520px) and (orientation:landscape){.home-hero{align-items:center;grid-template-columns:minmax(0,1fr) minmax(180px,34vw);padding-top:calc(70px + env(safe-area-inset-top))}.home-hero__visual{width:min(34vw,230px)}.activity-modal-backdrop,.art-modal{align-items:flex-start;padding-bottom:8px}.activity-modal,.art-modal-content{border-radius:16px;max-height:calc(100dvh - 16px)}.art-modal-content{grid-template-columns:minmax(0,1fr) minmax(220px,.8fr)}.art-modal-image,.art-modal-image-wrap{max-height:calc(100dvh - 86px)}}@media (max-width:768px) and (hover:none),(max-width:768px) and (pointer:coarse){:is(.project-card,.activity-card,.art-card,.home-work-card):active{transform:scale(.985);transition-duration:90ms}:is(.project-card__paper-button,.cv-mobile-open,.art-expand-button,.activity-modal__close,.art-modal-close):active{transform:scale(.96)}}@media (max-width:768px) and (prefers-reduced-transparency:reduce){:is(.site-nav,.theme-toggle,.activity-modal,.art-modal-content){-webkit-backdrop-filter:none;backdrop-filter:none}}
/*# sourceMappingURL=main.638bd6c4.css.map*/