@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400;1,700&family=Lora:ital,wght@0,400;0,700;1,400;1,700&family=Source+Serif+Pro:wght@400;600;700&family=IBM+Plex+Sans:wght@400;500;600&family=IBM+Plex+Mono&display=swap";@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400;1,700&family=Lora:ital,wght@0,400;0,700;1,400;1,700&display=swap";@import"https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap";@import"https://fonts.googleapis.com/css2?family=Latin+Modern+Math:wght@400;700&family=Latin+Modern+Roman:wght@400;700&display=swap";@import"https://fonts.loli.net/css2?family=Latin+Modern+Math:wght@400;700&family=Latin+Modern+Roman:wght@400;700&display=swap";:root{--font-serif: "Playfair Display", "Times New Roman", Georgia, serif;--font-body: "Source Serif Pro", Georgia, serif;--font-sans: "IBM Plex Sans", -apple-system, system-ui, sans-serif;--font-mono: "IBM Plex Mono", monospace;--color-paper: #fcfaf7;--color-ink-dark: #1a1a1a;--color-ink-medium: #333333;--color-ink-light: #666666;--color-accent: #8b0000;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-xxl: 4rem}html,body{overflow-x:hidden;overflow-y:auto;width:100%}body{font-family:var(--font-serif);background-color:var(--color-paper);color:var(--color-ink-dark)}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--base-font-size: 16px;--h1-font-size: 3rem;--h2-font-size: 2rem;--paragraph-font-size: 1.2rem;--small-font-size: 1rem;--default-padding: 2rem;--mobile-padding: 0rem;--button-bg-color: #333;--button-text-color: #fff}button{background-color:var(--button-bg-color);color:var(--button-text-color);border:none;padding:.5rem 1rem;font-size:calc(var(--paragraph-font-size) + .5vw);border-radius:5px;cursor:pointer;transition:background-color .3s ease;margin:1rem 0}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--color-paper);font-family:Libre Baskerville,serif;font-size:var(--base-font-size);flex-direction:column;align-items:center;margin:0;padding:0;width:100%;overflow-x:hidden;max-width:100vw;min-height:100vh;min-height:-webkit-fill-available}#root{width:100%;max-width:100vw;overflow-x:hidden;background-color:var(--color-paper);min-height:100vh;min-height:-webkit-fill-available}@media (max-width: 768px){body{background-color:var(--color-paper)!important;-webkit-overflow-scrolling:touch;overscroll-behavior:none}#root,html{background-color:var(--color-paper)!important}}@media (max-width: 768px){:root{--h1-font-size: 2.5rem;--h2-font-size: 2rem;--paragraph-font-size: 1rem;--react-canvas-height: 50vh;--model-container-width: 60vw;--model-container-height: 100vw;--model-container-border-radius: 20vw}.profile-image{width:30vw;height:30vw}.model-container{width:100%;max-width:100%;height:auto;border-radius:0;margin:0 auto}button{width:80%;font-size:var(--paragraph-font-size)}}@media (max-width: 480px){body,#root{width:100%;margin:0;padding:0;overflow-x:hidden}:root{--h1-font-size: 2rem;--h2-font-size: 1.5rem;--paragraph-font-size: .9rem}.model-container{width:100%;height:auto;border-radius:0}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes fadeInOut{0%{opacity:0;transform:scale(.5) rotate(0)}50%{opacity:1;transform:scale(1.2) rotate(180deg)}to{opacity:0;transform:scale(.5) rotate(360deg)}}@keyframes glitch{0%{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(-2px,-2px)}60%{transform:translate(2px,2px)}80%{transform:translate(2px,-2px)}to{transform:translate(0)}}@keyframes shake{0%,to{transform:translate(0)}10%{transform:translate(-5px,-5px) rotate(-1deg)}20%{transform:translate(5px,5px) rotate(1deg)}30%{transform:translate(-5px,5px) rotate(-1deg)}40%{transform:translate(5px,-5px) rotate(1deg)}50%{transform:translate(-5px,-5px) rotate(-1deg)}60%{transform:translate(5px,5px) rotate(1deg)}70%{transform:translate(-5px,5px) rotate(-1deg)}80%{transform:translate(5px,-5px) rotate(1deg)}90%{transform:translate(-5px,-5px) rotate(-1deg)}}@keyframes colorShift{0%{filter:hue-rotate(0deg) saturate(1)}25%{filter:hue-rotate(90deg) saturate(2)}50%{filter:hue-rotate(180deg) saturate(3)}75%{filter:hue-rotate(270deg) saturate(2)}to{filter:hue-rotate(360deg) saturate(1)}}@keyframes float{0%{transform:translateY(0) rotate(0)}33%{transform:translateY(-20px) rotate(120deg)}66%{transform:translateY(10px) rotate(240deg)}to{transform:translateY(0) rotate(360deg)}}@keyframes explode{0%{transform:scale(0) rotate(0);opacity:1}50%{transform:scale(1.5) rotate(180deg);opacity:.8}to{transform:scale(3) rotate(360deg);opacity:0}}@keyframes glitch-1{0%,14%,15%,49%,50%,99%,to{transform:translate(0)}15%,49%{transform:translate(-2px,2px)}}@keyframes glitch-2{0%,20%,21%,62%,63%,99%,to{transform:translate(0)}21%,62%{transform:translate(2px,-2px)}}@keyframes diagonalSweep{0%{transform:translate(-100%) translateY(-100%)}to{transform:translate(100%) translateY(100%)}}@keyframes backgroundShift{0%{background-position:0% 0%,0% 0%,0% 0%}25%{background-position:100% 0%,0% 100%,50% 50%}50%{background-position:0% 100%,100% 0%,100% 100%}75%{background-position:100% 100%,100% 100%,0% 0%}to{background-position:0% 0%,0% 0%,0% 0%}}@keyframes matrixFall{0%{transform:translateY(-100vh);opacity:1}to{transform:translateY(100vh);opacity:0}}@keyframes spotlightMove{0%{transform:translate(0) scale(1)}25%{transform:translate(100px,-50px) scale(1.2)}50%{transform:translate(-50px,100px) scale(.8)}75%{transform:translate(50px,-100px) scale(1.1)}to{transform:translate(0) scale(1)}}@keyframes spawnIn{0%{transform:scale(0) rotate(0);opacity:0}50%{transform:scale(1.2) rotate(180deg);opacity:.8}to{transform:scale(1) rotate(360deg);opacity:1}}@keyframes textGlow{0%,to{text-shadow:2px 2px 0px #ff0000,-2px -2px 0px #00ff00,2px -2px 0px #0000ff,-2px 2px 0px #ffff00}50%{text-shadow:-2px -2px 0px #ff0000,2px 2px 0px #00ff00,-2px 2px 0px #0000ff,2px -2px 0px #ffff00}}@keyframes borderPulse{0%,to{border-color:red}25%{border-color:#0f0}50%{border-color:#00f}75%{border-color:#ff0}}@keyframes borderGlow{0%{border-color:transparent}25%{border-color:#ff000080}50%{border-color:#00ff0080}75%{border-color:#0000ff80}to{border-color:transparent}}@keyframes randomRotate{0%{transform:rotate(0)}25%{transform:rotate(1deg)}50%{transform:rotate(-1deg)}75%{transform:rotate(.5deg)}to{transform:rotate(0)}}.chaos-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:9998;overflow:hidden}.chaos-canvas{position:absolute;top:0;left:0;width:100%;height:100%;opacity:.7}.chaos-text{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.floating-text{position:absolute;color:red;font-weight:700;font-size:2rem;text-shadow:2px 2px 4px rgba(0,0,0,.8);animation:float 3s ease-in-out infinite;pointer-events:none;z-index:9999}.chaos-toggle{position:fixed;top:20px;right:20px;z-index:10000;display:inline-block;text-decoration:none;color:var(--color-ink-medium, #666);font-family:var(--font-serif, "Libre Baskerville", serif);font-size:.84rem;font-weight:400;text-transform:none;letter-spacing:normal;padding:.2rem .4rem;border:none;background:none;cursor:pointer;transition:all .2s ease;opacity:.7}.chaos-toggle:hover,.chaos-toggle:focus{color:var(--color-ink-dark, #333);transform:translate(1px);opacity:1}.chaos-toggle.active{color:var(--color-accent, #8b0000);font-weight:600;opacity:1}.chaos-toggle.active:hover{color:var(--color-accent, #8b0000);transform:translate(2px)}.explosion{position:fixed;width:20px;height:20px;background:radial-gradient(circle,#ff0000 0%,#ffff00 50%,transparent 100%);border-radius:50%;animation:explode 1s ease-out forwards;pointer-events:none;z-index:10000}.matrix-rain{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9995;overflow:hidden}.matrix-char{position:absolute;color:#0f0;font-family:Courier New,monospace;font-size:14px;animation:matrixFall 3s linear infinite;opacity:.7}.glitch-text{position:relative;display:inline-block}.glitch-text:before,.glitch-text:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%}.glitch-text:before{animation:glitch-1 .5s infinite;color:red;z-index:-1}.glitch-text:after{animation:glitch-2 .5s infinite;color:#0f0;z-index:-2}.spawn-element{animation:spawnIn .5s ease-out}@media (max-width: 768px){.floating-text{font-size:1.5rem}.chaos-toggle{display:none!important}}@media (max-width: 480px){.chaos-toggle{display:none!important}}.chaos-text-center{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);font-size:3rem;font-weight:700;color:red;text-shadow:2px 2px 4px rgba(0,0,0,.8);z-index:10001;pointer-events:none;animation:pulse 1s infinite;text-align:center}.chaos-floating-element{position:fixed;z-index:10000;pointer-events:none;animation:float 3s ease-in-out infinite}@media print{.chaos-overlay,.chaos-toggle,.chaos-mode:before,.chaos-mode:after{display:none!important}.chaos-mode{animation:none!important;filter:none!important}}.chaos-mode{animation:shake .5s infinite,colorShift 2s infinite;overflow:hidden}.chaos-mode *{animation:glitch .3s infinite}.chaos-mode:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle,transparent 0%,rgba(255,0,0,.1) 100%);animation:pulse 1s infinite;pointer-events:none;z-index:9997}.chaos-mode .App:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 20%,rgba(255,0,0,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(0,255,0,.1) 0%,transparent 50%),radial-gradient(circle at 40% 60%,rgba(0,0,255,.1) 0%,transparent 50%);animation:colorShift 3s infinite;pointer-events:none;z-index:9996}.chaos-mode h1,.chaos-mode h2,.chaos-mode h3,.chaos-mode p{position:relative}.chaos-mode h1:before,.chaos-mode h2:before,.chaos-mode h3:before{content:attr(data-text);position:absolute;top:0;left:0;color:red;animation:glitch .3s infinite;z-index:-1}.chaos-mode *{border:1px solid transparent;animation:borderGlow 2s infinite}.chaos-mode{cursor:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"><circle cx="16" cy="16" r="15" fill="red" stroke="yellow" stroke-width="2"/><text x="16" y="20" text-anchor="middle" fill="white" font-size="12" font-weight="bold">💀</text></svg>'),auto}.chaos-mode *{transform-origin:center;animation:randomRotate 4s infinite}.chaos-mode .App{position:relative;overflow:hidden}.chaos-mode .App:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,transparent 30%,rgba(255,0,0,.1) 50%,transparent 70%),linear-gradient(-45deg,transparent 30%,rgba(0,255,0,.1) 50%,transparent 70%);animation:diagonalSweep 2s infinite;pointer-events:none;z-index:9993}.chaos-mode *{transition:all .1s ease}.chaos-mode *:hover{transform:scale(1.05) rotate(2deg);filter:hue-rotate(180deg)}.chaos-mode body{background-image:radial-gradient(circle at 25% 25%,rgba(255,0,0,.1) 0%,transparent 50%),radial-gradient(circle at 75% 75%,rgba(0,255,0,.1) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(0,0,255,.1) 0%,transparent 50%);background-size:200px 200px,300px 300px,150px 150px;animation:backgroundShift 4s infinite}.chaos-mode *{cursor:crosshair}.chaos-mode *:hover{cursor:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"><circle cx="16" cy="16" r="15" fill="red" stroke="yellow" stroke-width="2"/><text x="16" y="20" text-anchor="middle" fill="white" font-size="12" font-weight="bold">💀</text></svg>'),auto}.chaos-mode h1,.chaos-mode h2,.chaos-mode h3{text-shadow:2px 2px 0px #ff0000,-2px -2px 0px #00ff00,2px -2px 0px #0000ff,-2px 2px 0px #ffff00;animation:textGlow 1s infinite}.chaos-mode *{border:2px solid transparent;border-image:linear-gradient(45deg,red,#0f0,#00f,#ff0) 1;animation:borderPulse 2s infinite}.footer{background:var(--header-footer-bg);color:var(--link-color);text-align:center;padding:var(--default-padding)}.footer p{margin:0}.aleph-logo{position:relative;width:80px;height:80px;display:flex;justify-content:center;align-items:center;background-color:var(--color-paper);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .3s ease}.aleph-logo.hovered .aleph-glow{opacity:.2}.aleph-logo.animating{transform:scale(.95)}.aleph-container{position:relative;display:flex;justify-content:center;align-items:center;width:100%;height:100%}.aleph-letter{font-family:var(--font-serif);font-size:44px;color:var(--color-ink-dark);line-height:1;position:relative;z-index:2}.aleph-shadow{font-family:var(--font-serif);font-size:44px;color:#0003;position:absolute;left:2px;top:2px;z-index:1}.aleph-glow{position:absolute;width:100%;height:100%;background:radial-gradient(circle at center,rgba(139,0,0,.1) 0%,transparent 70%);opacity:0;transition:opacity .3s ease;z-index:0}.aleph-subscript{font-family:var(--font-serif);font-size:25px;font-weight:600;color:var(--color-ink-dark);position:absolute;bottom:-22px;right:0;z-index:3;line-height:1}.aleph-tooltip{position:absolute;bottom:-70px;left:50%;background-image:linear-gradient(to bottom right,var(--color-paper-light, #fffdfa),var(--color-paper-dark, #f7f4ef));color:var(--color-ink-dark, #2c3e50);padding:10px 15px;border-radius:3px;font-family:var(--font-serif, "Georgia", serif);font-size:13px;font-style:italic;white-space:nowrap;z-index:10;border:1px solid var(--color-ink-light, #ddd);box-shadow:1px 1px 6px #00000012,3px 3px 8px #0000000d;text-shadow:.5px .5px 1px var(--color-paper-shadow, rgba(255, 255, 255, .5));opacity:0;visibility:hidden;transform:translate(-50%) translateY(10px) rotate(-4deg);transform-origin:center bottom;transition:opacity .3s ease-out,transform .3s ease-out,visibility 0s linear .3s}.aleph-logo.hovered .aleph-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(-2px) rotate(-2.5deg);transition:opacity .4s cubic-bezier(.175,.885,.32,1.275),transform .45s cubic-bezier(.175,.885,.32,1.275),visibility 0s linear 0s}.aleph-tooltip a{color:var(--color-primary, #007bff);font-weight:600;text-decoration:none;border-bottom:1px dashed var(--color-primary-light, #7abaff);padding-bottom:1px}.aleph-tooltip a:hover{color:var(--color-secondary, #0056b3);border-bottom-style:solid;border-bottom-color:var(--color-secondary-light, #5094d8);background-color:var(--color-paper-highlight, rgba(0, 0, 0, .03));padding-left:3px;padding-right:3px;margin-left:-3px;margin-right:-3px;border-radius:2px}.main-nav{width:100%;display:flex;justify-content:center;align-items:center;padding:.5rem 0;margin:0 0 1rem;position:relative;z-index:50;background-color:var(--color-paper);max-width:1200px;margin-left:auto;margin-right:auto}.nav-container{display:flex;justify-content:center;align-items:center;width:100%;max-width:950px;margin:0 auto;padding:0 1.5rem;position:relative}.aleph-logo{position:relative;cursor:pointer;transition:transform .5s cubic-bezier(.175,.885,.32,1.275);margin-right:.5rem;display:flex;align-items:center;justify-content:center;padding-bottom:.3rem;height:75px;outline:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.aleph-logo:focus-visible{box-shadow:0 0 0 2px var(--color-accent);border-radius:4px}.aleph-logo.hovered{transform:scale(1.05)}.aleph-logo:active{transform:scale(.95);transition:transform .1s ease}.aleph-container{position:relative;display:flex;align-items:center;justify-content:center;width:100px;height:75px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.aleph-letter{font-size:6.25rem;font-weight:700;position:absolute;color:var(--color-ink-dark);transition:transform .5s ease,text-shadow .5s ease;z-index:2;line-height:.75;transform:translateY(2px);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.aleph-shadow{font-size:6.25rem;position:absolute;font-weight:700;color:transparent;text-shadow:0 0 8px rgba(var(--color-ink-dark-rgb),.2);z-index:1;transition:transform .5s ease,opacity .5s ease;transform:translate(4px,6px);opacity:.4;line-height:.75;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.aleph-glow{position:absolute;width:100%;height:100%;background:radial-gradient(circle at center,rgba(var(--color-paper-rgb),.8),rgba(var(--color-paper-rgb),0) 70%);z-index:0;opacity:0;transition:opacity .5s ease}.aleph-logo.hovered .aleph-letter{transform:translate(-2px,-2px);text-shadow:1px 1px 0 rgba(var(--color-ink-dark-rgb),.1)}.aleph-logo.hovered .aleph-shadow{transform:translate(7px,7px);opacity:.25}.aleph-logo.hovered .aleph-glow{opacity:.8;animation:pulse 2s infinite alternate}@keyframes pulse{0%{transform:scale(1);opacity:.3}to{transform:scale(1.2);opacity:.5}}.nav-list{display:flex;justify-content:center;align-items:center;position:relative;width:100%;max-width:650px;margin:0;padding:0;list-style:none;transform:translateY(6px)}.nav-item{position:relative;z-index:2;margin:0 .6rem;padding:.5rem .1rem;background-color:transparent;transition:all .4s cubic-bezier(.175,.885,.32,1.275);cursor:pointer}.nav-item:hover,.nav-item.hovered{transform:translateY(-3px)}.nav-item:active{transform:translateY(0)}.nav-link{position:relative;display:inline-block;font-family:var(--font-serif);font-size:2.2rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--color-ink-dark);text-decoration:none;transition:all .3s ease;overflow:hidden;padding-top:.1rem}.nav-link span{display:inline-block;transition:transform .35s cubic-bezier(.175,.885,.32,1.275),color .35s ease;transform-origin:center center;position:relative;padding:0 .02em}.nav-item:before,.nav-item:after{content:"";position:absolute;height:1px;width:0;background:var(--color-ink-dark);transition:width .5s ease}.nav-item:before{bottom:0;left:0}.nav-item:after{top:0;right:0}.nav-item:hover:before,.nav-item.hovered:before,.nav-item:hover:after,.nav-item.hovered:after{width:100%}.nav-item:hover .nav-link span,.nav-item.hovered .nav-link span{color:var(--color-ink-dark)}.nav-tooltip{position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%) translateY(10px);min-width:180px;max-width:250px;padding:.7rem 1.2rem;background:var(--color-paper);color:var(--color-ink-medium);font-family:var(--font-serif);font-size:.75rem;font-style:italic;line-height:1.4;border-radius:6px;border:1px solid rgba(var(--color-ink-dark-rgb),.1);box-shadow:0 6px 12px rgba(var(--color-ink-dark-rgb),.1);white-space:normal;z-index:1000;pointer-events:none;opacity:0;transition:opacity .3s ease,transform .3s ease}.nav-tooltip:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border-width:6px;border-style:solid;border-color:transparent transparent var(--color-paper) transparent}.nav-item:hover .nav-tooltip,.nav-item.hovered .nav-tooltip{opacity:1;transform:translate(-50%) translateY(0)}.nav-char{display:inline-block;animation:charFloat 1s ease-in-out infinite alternate;font-size:inherit}.nav-item:hover .nav-char,.nav-item.hovered .nav-char{animation:charFloat .5s ease-in-out infinite alternate}@keyframes charFloat{0%{transform:translateY(0)}to{transform:translateY(-2px)}}.nav-item:hover .nav-char,.nav-item.hovered .nav-char{transform:translateY(0) scale(1.1);color:var(--color-ink-dark)}@media (max-width: 950px){.main-nav{padding:.25rem 0}.nav-container{max-width:100%;padding:0 1rem}.aleph-container{width:80px;height:60px}.aleph-letter,.aleph-shadow{font-size:5rem}.nav-list{max-width:none}.nav-item{margin:0 .4rem}.nav-link{font-size:.85rem;letter-spacing:.15em}.nav-tooltip{font-size:.7rem;padding:.5rem .8rem;min-width:160px}}@media (max-width: 640px){.main-nav{margin-bottom:.5rem}.nav-container{flex-direction:column;align-items:center}.aleph-logo{margin-right:0;margin-bottom:.25rem}.aleph-container{width:70px;height:55px}.aleph-letter,.aleph-shadow{font-size:4.5rem}.nav-list{flex-wrap:wrap;justify-content:center;gap:.1rem .3rem;transform:none}.nav-item{margin:0 .2rem;padding:.3rem 0}.nav-link{font-size:.75rem;letter-spacing:.12em}}:root{--font-serif: "Playfair Display", "Times New Roman", Georgia, serif;--font-body: "Source Serif Pro", Georgia, serif;--font-sans: "IBM Plex Sans", -apple-system, system-ui, sans-serif;--font-mono: "IBM Plex Mono", monospace;--color-paper: #fcfaf7;--color-paper-dark: #f5f2ed;--color-ink-dark: #1a1a1a;--color-ink-medium: #333333;--color-ink-light: #666666;--color-accent: #8b0000;--color-accent-light: rgba(139, 0, 0, .08);--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-xxl: 4rem;--shadow-soft: 0 2px 10px rgba(0, 0, 0, .05);--shadow-medium: 0 4px 20px rgba(0, 0, 0, .1);--border-radius-sm: 4px;--border-radius-md: 8px;--main-bg-color: #fcfaf7;--text-color: #333;--accent-color: #8b0000;--secondary-color: #555;--border-color: #ddd;--card-shadow: 0 2px 8px rgba(0, 0, 0, .1);--hover-shadow: 0 4px 12px rgba(0, 0, 0, .15);--border-radius: 8px;--small-radius: 4px;--content-width: 900px;--transition-speed: .3s}.blog-container{background-color:var(--color-paper);color:var(--color-ink-dark);font-family:var(--font-serif);line-height:1.6;max-width:1000px;margin:var(--space-md) auto;position:relative;padding:0;box-shadow:none;border-radius:0}.blog-content{padding:var(--space-sm) var(--space-lg);max-width:100%;margin:0 auto;padding-top:var(--space-md)}.blog-header-compact{margin-bottom:var(--space-sm);padding-bottom:var(--space-sm);border-bottom:1px dotted var(--color-ink-light)}.blog-header-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-sm);gap:var(--space-lg)}.blog-header-left{flex:1;min-width:0}.blog-header-right{flex-shrink:0}.blog-meta{display:flex;justify-content:space-between;font-family:var(--font-mono);text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.12em;font-size:.7rem;color:var(--color-ink-medium);margin-bottom:.15rem}.blog-title{font-family:var(--font-serif);font-size:clamp(1.5rem,3.5vw,2.25rem);color:var(--color-ink-dark);text-align:left;margin:0;letter-spacing:.01em;font-weight:700;line-height:1.2}.blog-header-controls{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.blog-categories-inline{display:flex;gap:.4rem;flex-wrap:wrap;flex-shrink:0}.search-input-inline{flex:1;min-width:180px;max-width:300px;padding:.5rem .75rem;border:1px solid var(--color-ink-light);border-radius:0;font-size:.9rem;font-family:var(--font-serif);background-color:var(--color-paper);color:var(--color-ink-dark);transition:border-color .3s ease}.search-input-inline::placeholder{color:var(--color-ink-light);font-style:italic}.search-input-inline:focus{outline:none;border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.blog-tags-section{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:var(--space-md);padding-top:var(--space-sm)}.category-button{padding:.35rem .75rem;background-color:transparent;border:1px solid var(--color-ink-light);color:var(--color-ink-medium);font-weight:400;font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:0;position:relative}.category-button:before{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--color-accent);transition:width .3s cubic-bezier(.4,0,.2,1)}.category-button:hover{background-color:var(--color-accent-light);color:var(--color-accent);border-color:var(--color-accent)}.category-button:hover:before{width:100%}.category-button.active{background-color:var(--color-accent);color:#fff;border-color:var(--color-accent)}.category-button.active:before{width:100%;background-color:#ffffff4d}.tag-filters{display:flex;flex-wrap:wrap;gap:.35rem}.tag-button{padding:.3rem .6rem;background-color:transparent;border:1px solid var(--color-ink-light);border-radius:0;color:var(--color-ink-medium);font-size:.7rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all var(--transition-speed)}.tag-button:hover{background-color:var(--color-accent-light);color:var(--color-accent);border-color:var(--color-accent)}.tag-button.active{background-color:var(--color-accent);color:#fff;border-color:var(--color-accent)}.view-toggle{display:flex;gap:.5rem}.view-toggle{display:flex;gap:.25rem}.view-toggle-button{display:flex;align-items:center;justify-content:center;padding:.4rem .5rem;background-color:var(--color-paper);border:1px solid var(--color-ink-light);border-radius:0;color:var(--color-ink-medium);font-size:.75rem;font-family:var(--font-mono);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);min-width:2.5rem}.view-toggle-button:hover{background-color:var(--color-accent-light);color:var(--color-accent);border-color:var(--color-accent)}.view-toggle-button.active{background-color:var(--color-accent);color:#fff;border-color:var(--color-accent)}.toggle-icon{font-size:.9rem}.blog-posts-3d{height:500px;position:relative;margin-bottom:2rem}.canvas-container{width:100%;height:100%;background-color:var(--main-bg-color);border-radius:var(--border-radius);overflow:hidden;border:1px solid var(--border-color)}.view-instructions{position:absolute;bottom:15px;left:0;right:0;text-align:center;color:var(--secondary-color);background-color:#fcfaf7b3;padding:.5rem;font-size:.9rem;z-index:10;pointer-events:none}.loading-posts{display:flex;align-items:center;justify-content:center;height:100%;font-style:italic;color:var(--secondary-color)}.blog-posts-list{display:grid;gap:var(--space-md);padding:0 .5rem}.blog-post-item{padding:var(--space-md);border:1px solid var(--color-ink-light);border-left:3px solid var(--color-accent);border-radius:0;background-color:var(--color-paper);transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:8px 10px 40px #00000026,4px 5px 20px #0000001f,2px 3px 12px #00000014;position:relative;overflow:hidden;margin-bottom:0;border-bottom:1px dotted rgba(0,0,0,.08)}.blog-post-item:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background-color:var(--color-accent);opacity:1;transition:width .3s cubic-bezier(.4,0,.2,1)}.blog-post-item:hover{transform:translate(3px) translateY(-1px);box-shadow:8px 12px 48px #0000002e,4px 6px 24px #00000026,2px 4px 16px #0000001a;border-left-color:var(--color-accent);background-color:#ffffff80}.blog-post-item:hover:before{width:4px}.post-title{font-family:var(--font-serif);font-size:1.5rem;margin-bottom:.25rem;line-height:1.3;font-weight:700;letter-spacing:-.02em;transition:letter-spacing .3s ease}.post-title a{color:var(--color-ink-dark);text-decoration:none;transition:color .3s cubic-bezier(.4,0,.2,1);position:relative}.post-title a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background-color:var(--color-accent);transition:width .3s cubic-bezier(.4,0,.2,1)}.post-title a:hover{color:var(--color-accent)}.post-title a:hover:after{width:100%}.blog-post-item:hover .post-title{letter-spacing:-.01em}.post-meta{display:flex;gap:var(--space-sm);color:var(--color-ink-medium);font-size:.75rem;margin-bottom:var(--space-sm);font-family:var(--font-mono);text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.08em;font-style:normal;opacity:.85;transition:opacity .3s ease}.blog-post-item:hover .post-meta{opacity:1}.post-description{margin-bottom:var(--space-sm);line-height:1.6;color:var(--text-color);font-size:.95rem;transition:color .3s ease}.blog-post-item:hover .post-description{color:var(--color-ink-dark)}.search-snippet{background-color:var(--color-accent-light);padding:.5rem .75rem;margin:var(--space-sm) 0;border-left:3px solid var(--color-accent);border-radius:var(--border-radius-sm);font-size:.9rem;line-height:1.5;color:var(--color-ink-medium);font-style:italic}.search-highlight{background-color:#ffeb3b;color:var(--color-ink-dark);padding:.1em .2em;border-radius:2px;font-weight:600;font-style:normal}.post-tags{display:flex;gap:.35rem;flex-wrap:wrap}.post-tag{background-color:transparent;color:var(--color-ink-medium);padding:.2rem .45rem;border:1px solid var(--color-ink-light);border-radius:0;font-size:.65rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;transition:all .3s cubic-bezier(.4,0,.2,1);opacity:.8}.post-tag:hover{border-color:var(--color-accent);color:var(--color-accent);background-color:var(--color-accent-light);opacity:1;transform:translateY(-1px)}.no-posts-message{text-align:center;padding:3rem;color:var(--secondary-color);font-style:italic;background-color:#f8f6f3;border-radius:var(--border-radius);border:1px dashed var(--border-color)}@media (max-width: 768px){.blog-header-top{flex-direction:column;gap:var(--space-sm)}.blog-header-right{align-self:flex-end}.blog-header-controls{flex-direction:column;align-items:stretch;gap:var(--space-sm)}.search-input-inline{min-width:100%}.blog-title{font-size:1.75rem}.blog-categories-inline{gap:.35rem;overflow-x:auto;padding-bottom:.25rem}.category-button{padding:.3rem .65rem;font-size:.7rem}.blog-tags-section{overflow-x:auto;padding-bottom:.25rem}.blog-posts-3d{height:400px}.post-title{font-size:1.4rem}.blog-container{margin:var(--space-sm) auto;padding:0}.blog-content{padding:var(--space-sm) var(--space-md)}.blog-post-item{padding:var(--space-md)}}@media (max-width: 480px){.blog-container{margin:var(--space-xs) auto}.blog-content{padding:var(--space-xs) var(--space-sm)}.blog-title{font-size:1.5rem}.blog-header-controls{flex-direction:column;gap:var(--space-xs)}.blog-categories-inline,.search-input-inline{width:100%}.blog-posts-3d{height:350px;margin:0 .75rem 1.5rem}.blog-posts-list{padding:0 .75rem}.blog-post-item{padding:1.25rem;margin-bottom:1rem}.view-toggle{width:100%;justify-content:space-between;margin-top:1rem}.view-toggle-button{flex:1;justify-content:center;margin:0 .25rem}.search-input{padding:.75rem}.post-description{padding:0 .25rem}.no-posts-message{margin:0 .75rem;padding:2rem 1rem}}.footnote{cursor:pointer;color:var(--footnote-color, #546E7A);text-decoration:none;position:relative;white-space:nowrap;transition:color .2s ease}.footnote sup{font-size:.75em;line-height:0;position:relative;vertical-align:baseline;top:-.5em}.footnote:hover{color:var(--footnote-hover-color, #0D47A1)}.footnote.active{color:var(--footnote-active-color, #1565C0)}.footnotes-container{position:absolute;top:0;bottom:0;pointer-events:none;z-index:10;height:100%}.sidenote{position:absolute;width:100%;font-size:.9rem;line-height:1.4;color:var(--sidenote-color, #546E7A);padding:.5rem;border-left:2px solid var(--sidenote-border-color, #CFD8DC);background-color:var(--sidenote-bg, rgba(250, 250, 250, .9));border-radius:4px;pointer-events:auto;opacity:.7;transition:opacity .2s ease,transform .2s ease;max-width:280px;box-sizing:border-box}.sidenote:hover,.sidenote.active{opacity:1;border-left-color:var(--sidenote-border-hover-color, #42A5F5)}.sidenote.active{background-color:var(--sidenote-active-bg, rgba(245, 245, 250, .95));z-index:10}@media (max-width: 1024px){.footnotes-container{display:none}.footnote-popup{position:fixed;bottom:20px;left:10px;right:10px;padding:1rem;background-color:var(--footnote-popup-bg, rgba(250, 250, 250, .95));border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:1000;font-size:.9rem;max-height:30vh;overflow-y:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--footnote-popup-border, rgba(200, 200, 200, .5))}.footnote-popup-close{position:absolute;top:8px;right:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:.6}.footnote-popup-close:hover{opacity:1}}.blog-post-content .sidenote{background-color:var(--color-paper, #fcfaf7);border-left:2px solid var(--color-ink-light, rgba(102, 102, 102, .5));font-family:var(--serif-font, serif);font-size:.85rem;line-height:1.5;max-width:100%;box-sizing:border-box}.blog-post-3d-container{position:relative;cursor:pointer;transition:transform .3s ease}.blog-post-3d-container:hover{transform:scale(1.05)}.cube-loading{display:flex;justify-content:center;align-items:center;width:100%;height:100%;background-color:#fcfaf780;color:#333;font-family:Playfair Display,Times New Roman,Georgia,serif;font-style:italic}.blog-post-canvas{width:100%;height:100%;outline:none}.table-of-contents{position:relative;height:auto;max-height:calc(100vh - 140px);width:100%;min-width:280px;padding:1rem 1rem 1.5rem;background-color:var(--toc-bg, rgba(250, 250, 250, .95));border-radius:6px;font-size:.9rem;display:flex;border:1px solid var(--toc-border, rgba(230, 230, 230, .8));box-shadow:0 2px 8px #0000000a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:all .3s ease;overflow-x:hidden;box-sizing:border-box}.table-of-contents::-webkit-scrollbar{width:4px}.table-of-contents::-webkit-scrollbar-track{background:transparent}.table-of-contents::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb, rgba(150, 150, 150, .3));border-radius:4px}.reading-progress-container{width:4px;background-color:var(--progress-bg, rgba(200, 200, 200, .3));border-radius:4px;height:auto;align-self:stretch;margin-right:.75rem;position:relative;flex-shrink:0}.reading-progress-bar{width:100%;background:linear-gradient(180deg,var(--progress-fill, #42A5F5) 0%,var(--color-accent, #1976D2) 100%);border-radius:4px;position:absolute;bottom:0;left:0;transition:height .15s ease-out;box-shadow:0 2px 4px #42a5f54d}.toc-content{flex:1;overflow-y:auto;overflow-x:hidden;min-width:240px;padding-bottom:1rem}.toc-content::-webkit-scrollbar{width:3px}.toc-content::-webkit-scrollbar-track{background:transparent}.toc-content::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb, rgba(150, 150, 150, .3));border-radius:4px}.table-of-contents h2{margin:0 0 .75rem;font-size:1rem;color:var(--toc-title-color, rgba(60, 60, 60, .9));font-weight:600;word-wrap:break-word;overflow-wrap:break-word}.table-of-contents ul{list-style:none;padding:0;margin:0;width:100%;box-sizing:border-box}.table-of-contents li{margin-bottom:.5rem;padding-left:0;transition:all .2s ease;width:100%;box-sizing:border-box}.table-of-contents li.heading-1{font-weight:600;margin-bottom:.75rem}.table-of-contents li.heading-2{padding-left:0;margin-bottom:.4rem}.table-of-contents li.heading-3{padding-left:1rem;font-size:.85rem;margin-bottom:.3rem}.table-of-contents li.heading-4{padding-left:1.5rem;font-size:.8rem;margin-bottom:.25rem}.table-of-contents li a{text-decoration:none;color:var(--toc-link-color, rgba(70, 70, 70, .85));display:block;border-left:2px solid transparent;padding:.3rem .5rem;border-radius:4px;transition:all .2s ease;line-height:1.4;position:relative;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;white-space:normal;max-width:100%;box-sizing:border-box}.table-of-contents li a:hover{color:var(--toc-link-hover, rgba(30, 30, 30, .95));border-left-color:var(--toc-border-hover, rgba(100, 100, 100, .4));background-color:#42a5f514;transform:translate(2px)}.table-of-contents li a.active{color:var(--toc-active-color, #1976D2);border-left-color:var(--toc-active-border, #42A5F5);font-weight:500;background-color:#42a5f51f;transform:translate(3px)}.table-of-contents li:last-child{margin-bottom:0}@media (max-width: 1300px) and (min-width: 769px){.table-of-contents{opacity:0;transform:scale(.95);transition:all .3s cubic-bezier(.4,0,.2,1);min-width:320px}.layout-sidebar:hover .table-of-contents,.layout-sidebar.expanded .table-of-contents{opacity:1;transform:scale(1)}.table-of-contents h2{font-size:.95rem;margin-bottom:.5rem}.table-of-contents li{margin-bottom:.35rem}.table-of-contents li a{padding:.25rem .4rem;font-size:.85rem}}@media (max-width: 768px){.table-of-contents{position:relative;width:100%;max-width:100%;margin-bottom:2rem;height:auto;max-height:300px;border-radius:8px;box-shadow:0 2px 12px #00000014;min-width:auto}.table-of-contents h2{font-size:.9rem;margin-bottom:.5rem}.toc-content{max-height:240px;overflow-y:auto}.table-of-contents li a{font-size:.85rem;padding:.4rem .5rem}.table-of-contents li.heading-3,.table-of-contents li.heading-4{display:none}}.thank-you-message{position:fixed;bottom:20px;right:20px;background-color:var(--thank-you-bg, rgba(250, 250, 250, .95));border-radius:8px;padding:1.5rem;max-width:320px;box-shadow:0 4px 12px #0000001a;z-index:100;animation:slide-in .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--thank-you-border, rgba(200, 200, 200, .5))}.thank-you-content{position:relative}.thank-you-close{position:absolute;top:-1rem;right:-1rem;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:.6;font-size:1.5rem}.thank-you-close:hover{opacity:1}.thank-you-message h3{margin-top:0;color:var(--thank-you-title, #2c3e50)}.thank-you-message p{margin-bottom:0;color:var(--thank-you-text, #4a5568)}@keyframes slide-in{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.thank-you-message{max-width:280px;padding:1rem}}.blog-post-skeleton{display:flex;width:100%;min-height:80vh;padding:20px;overflow:hidden}.skeleton-sidebar{width:250px;margin-right:40px;flex-shrink:0;display:none}.skeleton-content{flex:1;max-width:768px;margin:0 auto}@keyframes pulse{0%{opacity:.6}50%{opacity:.8}to{opacity:.6}}.skeleton-header,.skeleton-date,.skeleton-tag,.skeleton-paragraph,.skeleton-heading,.skeleton-code-block,.skeleton-toc-header,.skeleton-toc-item{background-color:#f0f0f0;border-radius:4px;animation:pulse 1.5s infinite;margin-bottom:15px}.skeleton-header{height:48px;width:80%;margin-bottom:16px}.skeleton-date{height:20px;width:30%;margin-bottom:24px}.skeleton-tags{display:flex;gap:10px;margin-bottom:30px}.skeleton-tag{height:24px;width:80px;border-radius:12px}.skeleton-paragraph{height:16px;width:100%;margin-bottom:14px}.skeleton-paragraph:nth-child(2n){width:92%}.skeleton-heading{height:32px;width:60%;margin-top:40px;margin-bottom:24px}.skeleton-code-block{height:120px;width:100%;margin:30px 0}.skeleton-toc-header{height:32px;width:70%;margin-bottom:20px}.skeleton-toc-item{height:18px;width:80%;margin-bottom:14px}.skeleton-toc-item:nth-child(odd){width:60%}@media (min-width: 1024px){.skeleton-sidebar{display:block}.blog-post-skeleton{padding:40px}}:root{--font-serif: "Playfair Display", "Times New Roman", Georgia, serif;--font-body: "Source Serif Pro", Georgia, serif;--font-sans: "IBM Plex Sans", -apple-system, system-ui, sans-serif;--font-mono: "IBM Plex Mono", monospace;--color-paper: #fcfaf7;--color-paper-rgb: 252, 250, 247;--color-ink-dark: #1a1a1a;--color-ink-dark-rgb: 26, 26, 26;--color-ink-medium: #333333;--color-ink-medium-rgb: 51, 51, 51;--color-ink-light: #666666;--color-ink-light-rgb: 102, 102, 102;--color-accent: #8b0000;--color-accent-rgb: 139, 0, 0}.blog-post-page{padding:0;margin:0;width:100%;background:var(--color-paper, #fcfaf7);overflow-x:hidden;position:relative}.blog-post-page .main-nav{width:100%;z-index:50;font-family:var(--font-serif);font-size:1rem}.blog-post-page .nav-container{max-width:950px;padding:0 1.5rem}.blog-post-container{display:grid;grid-template-columns:1fr min(950px,100%) 1fr;grid-template-areas:". content .";min-height:100vh;position:relative;padding-left:260px;margin-top:3rem}.blog-post-content-wrapper{grid-area:content;margin:3rem 0;position:relative;background-color:var(--color-paper, #fcfaf7);padding:2.5rem 3rem 2.5rem 2.5rem;border-radius:8px;box-shadow:0 2px 10px #0000000d;border:2px dotted var(--color-ink-light, rgba(102, 102, 102, .5))}.blog-post-intro{margin-bottom:2rem;font-family:var(--serif-font);font-style:italic;font-size:1.1rem;color:var(--color-ink-medium, #333333);line-height:1.6;padding-bottom:1.5rem;border-bottom:1px solid rgba(0,0,0,.1)}.blog-post-meta{margin-bottom:2rem;font-family:var(--sans-font);color:var(--meta-color, rgba(41, 41, 41, .7));font-size:.95rem;border-bottom:1px solid var(--meta-border, rgba(230, 230, 230, .8));padding-bottom:1rem}.blog-post-published{margin-bottom:.5rem}.blog-post-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.blog-post-tag{background-color:var(--tag-bg, rgba(230, 230, 230, .5));border-radius:4px;padding:.2rem .5rem;font-size:.8rem;color:var(--tag-color, rgba(41, 41, 41, .7));text-decoration:none;transition:all .2s ease}.blog-post-tag:hover{background-color:var(--tag-bg-hover, rgba(210, 210, 210, .7));color:var(--tag-color-hover, rgba(41, 41, 41, .9))}.blog-post-sidebar{position:fixed;top:175px;left:calc(50% - 660px);width:320px;height:auto;max-height:calc(100vh - 200px);padding-right:20px;padding-bottom:30px;overflow-y:auto;z-index:10}.blog-post-content{position:relative;z-index:1;max-width:100%}.blog-post-content .footnotes-container{position:absolute;left:100%;margin-left:5rem;width:16vw;max-width:300px;top:0;height:100%;z-index:10;pointer-events:auto}.blog-post-footer{grid-area:content;margin:3rem 0;border-top:1px solid var(--footer-border, rgba(230, 230, 230, .8));padding-top:2rem;font-family:var(--sans-font)}.blog-post-related{margin-top:3rem}.blog-post-related h3{font-size:1.3rem;font-family:var(--sans-font);margin-bottom:1.5rem}.blog-post-related-posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.blog-post-related-post{padding:1rem;border-radius:6px;border:1px solid var(--related-border, rgba(230, 230, 230, .8));transition:all .2s ease}.blog-post-related-post:hover{border-color:var(--related-border-hover, rgba(200, 200, 200, .9));box-shadow:0 2px 8px #0000000a}.blog-post-related-post h4{margin-top:0;font-size:1rem}.blog-post-related-post a{text-decoration:none;color:inherit}@media (max-width: 1400px){.blog-post-container{padding-left:0;grid-template-columns:1fr min(92%,950px) 1fr}.blog-post-sidebar{position:static;width:100%;height:auto;max-height:none;margin-bottom:2rem;padding:1rem 1.5rem;left:auto;background-color:var(--color-paper, #fcfaf7);border-radius:8px;box-shadow:0 2px 10px #0000000d}.blog-post-content-wrapper{margin:2rem 1.5rem;padding:2rem}.blog-post-content .footnotes-container{margin-left:4rem;width:15vw;max-width:250px}}@media (max-width: 768px){.blog-post-content-wrapper{margin:1.5rem 1rem;padding:1.5rem}.blog-post-related-posts{grid-template-columns:1fr}}@media (max-width: 480px){.blog-post-meta{font-size:.9rem}.blog-post-content-wrapper{margin:1rem .75rem;padding:1.25rem;border-radius:6px}}.markdown-content{position:relative;line-height:1.7;font-size:1.15rem;color:var(--text-color, rgba(41, 41, 41, .9));max-width:100%}.blog-post-page{--serif-font: "Charter", "Bitstream Charter", "Sitka Text", Cambria, serif;--sans-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--mono-font: "JetBrains Mono", "Fira Code", Menlo, Monaco, "Courier New", monospace;--heading-color: rgba(41, 41, 41, .9);--text-color: rgba(41, 41, 41, .9);--light-text-color: rgba(41, 41, 41, .7);--link-color: #1976D2;--link-hover-color: #1565C0;--code-color: #D32F2F;--blockquote-color: rgba(41, 41, 41, .6);font-family:var(--serif-font);color:var(--text-color);line-height:1.7;font-size:1.15rem;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (max-width: 768px){.blog-post-page{font-size:1.05rem}}.blog-post-content>*{max-width:680px;margin-left:auto;margin-right:auto}.blog-post-content h1,.blog-post-content h2,.blog-post-content h3,.blog-post-content h4,.blog-post-content h5,.blog-post-content h6{font-family:var(--sans-font);color:var(--heading-color);font-weight:700;line-height:1.3;margin-top:2.5em;margin-bottom:.75em;position:relative}.blog-post-content h1{font-size:2.5rem;margin-top:0;margin-bottom:1.5rem}.blog-post-content h2{font-size:1.8rem}.blog-post-content h3{font-size:1.5rem}.blog-post-content h4{font-size:1.3rem}.blog-post-content h5{font-size:1.1rem}.blog-post-content h6{font-size:1rem;color:var(--light-text-color)}.blog-post-content a:not(.footnote){color:var(--link-color);text-decoration:none;border-bottom:1px solid rgba(25,118,210,.3);transition:all .2s ease}.blog-post-content a:hover:not(.footnote){color:var(--link-hover-color);border-bottom-color:#1565c099}.blog-post-content p{margin-bottom:1.5em}.blog-post-content ul,.blog-post-content ol{margin:0 0 1.5em 2em;padding:0}.blog-post-content li{margin-bottom:.5em}.blog-post-content li p{margin-bottom:.7em}.blog-post-content blockquote{margin:2em 0;padding:0 1em;border-left:4px solid rgba(0,0,0,.1);color:var(--blockquote-color);font-style:italic}.blog-post-content blockquote p{font-size:1.1em}.blog-post-content blockquote cite{display:block;margin-top:1em;font-size:.9em;font-style:normal;font-weight:500;color:var(--light-text-color)}.blog-post-content :not(pre)>code{font-family:var(--mono-font);background:#0000000d;color:var(--code-color);padding:.1em .4em;border-radius:3px;font-size:.9em;font-weight:500;white-space:nowrap}.blog-post-content img{max-width:100%;height:auto;border-radius:4px;margin:2em auto;display:block}.blog-post-content figure{margin:2.5em 0;max-width:100%!important}.blog-post-content figcaption{text-align:center;font-size:.9em;color:var(--light-text-color);margin-top:.75em;font-style:italic}.blog-post-content table{width:100%;border-collapse:collapse;margin-bottom:2em;font-size:.95em;overflow-x:auto;display:block}.blog-post-content th,.blog-post-content td{padding:.75em 1em;border:1px solid rgba(0,0,0,.1);text-align:left}.blog-post-content th{background-color:#0000000d;font-weight:600;font-family:var(--sans-font)}.blog-post-content tr:nth-child(2n){background-color:#00000005}.blog-post-content hr{border:none;height:1px;background-color:#0000001a;margin:3em 0}.blog-post-content pre{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.blog-post-content strong,.blog-post-content b{font-weight:700}.blog-post-content em,.blog-post-content i{font-style:italic}.blog-post-content mark{background-color:#ffeb3b66;padding:.1em .2em;border-radius:2px}@media (max-width: 768px){.blog-post-content h1{font-size:2rem}.blog-post-content h2{font-size:1.6rem}.blog-post-content h3{font-size:1.3rem}.blog-post-content blockquote{padding-left:.8em}}@media (max-width: 480px){.blog-post-content h1{font-size:1.8rem}.blog-post-content h2{font-size:1.4rem}.blog-post-content h3{font-size:1.2rem}}.blog-post-return-link{display:flex;align-items:center;gap:.5rem;color:var(--return-link-color, rgba(41, 41, 41, .7));text-decoration:none;font-family:var(--sans-font);font-size:.95rem;transition:all .2s ease}.blog-post-return-link:hover{color:var(--return-link-hover, rgba(41, 41, 41, .9))}.blog-post-return-link svg{width:16px;height:16px;stroke:currentColor}.blog-post-share-links{display:flex;align-items:center;gap:1rem}.blog-post-share-link{color:var(--share-color, rgba(41, 41, 41, .6));transition:color .2s ease}.blog-post-share-link:hover{color:var(--share-hover, rgba(41, 41, 41, .9))}.blog-post-share-link svg{width:18px;height:18px;stroke:currentColor}.blog-post-content .footnote{cursor:pointer;color:var(--footnote-color, #546E7A);text-decoration:none;position:relative;white-space:nowrap;transition:color .2s ease}.blog-post-content .footnote sup{font-size:.75em;line-height:0;position:relative;vertical-align:baseline;top:-.5em}.blog-post-content .footnote:hover{color:var(--footnote-hover-color, #0D47A1)}.blog-post-content .footnote.active{color:var(--footnote-active-color, #1565C0)}.blog-post-footnotes{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--footnote-divider, rgba(230, 230, 230, .8));font-size:.9rem;color:var(--footnote-list-color, rgba(41, 41, 41, .8))}.blog-post-footnotes h2{font-size:1.3rem;margin-bottom:1.5rem}.blog-post-footnotes ol{padding-left:1.5rem}.blog-post-footnotes li{margin-bottom:.75rem;line-height:1.5}.blog-post-footnotes p{margin:0}.blog-post-footnotes a{color:var(--footnote-backlink-color, #1976D2);text-decoration:none;transition:color .2s ease}.blog-post-footnotes a:hover{color:var(--footnote-backlink-hover, #1565C0);text-decoration:underline}.footnote-popup{position:fixed;bottom:20px;left:20px;right:20px;padding:1.5rem;background-color:var(--footnote-popup-bg, rgba(250, 250, 250, .95));box-shadow:0 4px 12px #0000001a;border-radius:8px;z-index:1000;font-size:.9rem;line-height:1.6;max-height:30vh;overflow-y:auto;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid var(--footnote-popup-border, rgba(200, 200, 200, .5));animation:footnote-slide-up .3s ease}@keyframes footnote-slide-up{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.footnote-popup-close{position:absolute;top:10px;right:10px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--footnote-close, rgba(41, 41, 41, .5));transition:color .2s ease}.footnote-popup-close:hover{color:var(--footnote-close-hover, rgba(41, 41, 41, .9))}.footnote-popup p{margin:0}@media (max-width: 768px){.footnote-popup{left:10px;right:10px;bottom:10px;padding:1rem;font-size:.85rem}}.blog-post-sidebar{display:flex;flex-direction:column;gap:2rem}.blog-post-author{padding:1.5rem;border-radius:8px;background-color:var(--author-bg, rgba(250, 250, 250, .9));display:flex;flex-direction:column;align-items:center;text-align:center;font-family:var(--sans-font);border:1px solid var(--author-border, rgba(230, 230, 230, .8))}.blog-post-author-avatar{width:80px;height:80px;border-radius:50%;margin-bottom:1rem;object-fit:cover}.blog-post-author-name{font-weight:600;font-size:1.1rem;margin:0 0 .5rem;color:var(--author-name, rgba(41, 41, 41, .9))}.blog-post-author-bio{font-size:.9rem;color:var(--author-bio, rgba(41, 41, 41, .7));margin:0 0 1rem;line-height:1.5}.blog-post-author-social{display:flex;gap:1rem}.blog-post-author-social a{color:var(--author-social, rgba(41, 41, 41, .6));transition:color .2s ease}.blog-post-author-social a:hover{color:var(--author-social-hover, rgba(41, 41, 41, .9))}.blog-post-author-social svg{width:20px;height:20px;stroke:currentColor}.blog-post-newsletter{padding:1.5rem;border-radius:8px;background-color:var(--newsletter-bg, rgba(250, 250, 250, .9));font-family:var(--sans-font);border:1px solid var(--newsletter-border, rgba(230, 230, 230, .8))}.blog-post-newsletter h3{margin-top:0;font-size:1.1rem;margin-bottom:.75rem;color:var(--newsletter-title, rgba(41, 41, 41, .9))}.blog-post-newsletter p{font-size:.9rem;color:var(--newsletter-text, rgba(41, 41, 41, .7));margin-bottom:1rem;line-height:1.5}.blog-post-newsletter-form{display:flex;flex-direction:column;gap:.75rem}.blog-post-newsletter-input{padding:.75rem;border-radius:4px;border:1px solid var(--newsletter-input-border, rgba(200, 200, 200, .8));font-family:inherit;font-size:.9rem}.blog-post-newsletter-button{padding:.75rem;border-radius:4px;border:none;background-color:var(--newsletter-button-bg, #1976D2);color:var(--newsletter-button-text, #ffffff);font-family:inherit;font-weight:500;font-size:.9rem;cursor:pointer;transition:background-color .2s ease}.blog-post-newsletter-button:hover{background-color:var(--newsletter-button-hover, #1565C0)}@media (max-width: 1300px){.blog-post-author{flex-direction:row;text-align:left;padding:1rem;align-items:flex-start}.blog-post-author-avatar{margin-bottom:0;margin-right:1rem;width:60px;height:60px}.blog-post-author-content{flex:1}}:root{--primary-color: #3498db;--primary-color-light: #5dade2;--code-bg: #f6f8fa;--font-mono: "Fira Code", "Consolas", monospace;--font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--spacing-xs: .25rem;--spacing-sm: .75rem;--spacing-md: 1.25rem;--spacing-lg: 1.75rem;--spacing-xl: 2.5rem;--content-padding-x: 3rem;--content-padding-y: 1.5rem;--content-max-width: 80ch;--section-spacing: 3rem;--sidenote-gap: 1rem;--font-size-sm: .875rem;--font-size-base: 1.125rem;--font-size-lg: 1.25rem;--line-height-base: 1.5;--line-height-relaxed: 1.75;--line-height-tight: 1.2;--max-width: 98%;--content-width: 75%;--left-column-width: 12%;--right-column-width: 13%;--border-radius: 8px;--transition-base: all .2s ease-in-out}.blog-post .content pre{margin:var(--spacing-md) 0;padding:var(--spacing-sm);background:var(--code-bg);border-radius:.5rem;overflow-x:auto}.blog-post .content pre code{padding:0;background:none;border-radius:0}.blog-post .content code{font:.9em var(--font-mono);padding:.2em .4em;background:var(--code-bg);border-radius:.25rem}.blog-post pre{max-width:100%;overflow-x:auto}.blog-post pre code{display:block;padding:1rem;overflow-x:auto;max-width:100%;white-space:pre-wrap}.code-block-wrapper{position:relative;margin:2rem 0}.code-block{position:relative;background:var(--bg-color-dark);border-radius:12px;border:1px solid rgba(82,82,89,.32);box-shadow:0 2px 4px #00000014,0 8px 16px #0000001f;transition:transform .2s ease,box-shadow .2s ease;padding:.25rem}.code-block:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0000001f,0 12px 24px #00000029}pre[class*=language-]{background:transparent;border-radius:8px;padding:.75rem;margin:0;overflow-x:auto;background:#0003}code[class*=language-]{font-family:Fira Code,Space Mono,monospace;font-size:.9em;line-height:1.6;color:var(--text-color);tab-size:2;-webkit-hyphens:none;hyphens:none;text-shadow:none!important}.code-title{font-size:.65em;color:#8b949e;background:var(--bg-color-dark);padding:.3rem .8rem;font-family:Space Mono,monospace;letter-spacing:.05em;text-transform:lowercase;border:1px solid rgba(82,82,89,.32);border-radius:4px;position:absolute;bottom:.75rem;right:.75rem;z-index:1;opacity:.7;transition:all .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.code-title:hover{opacity:.9;transform:translateY(-1px)}.copy-button{position:absolute;top:.75rem;right:.75rem;padding:.5rem;background:var(--bg-color-dark);border:1px solid rgba(82,82,89,.32);border-radius:6px;color:#8b949e;cursor:pointer;opacity:0;transition:all .2s ease;z-index:2;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.code-block:hover .copy-button{opacity:.7}.copy-button:hover{opacity:1!important;color:var(--text-color);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.copy-button.copied{color:#7ee787;border-color:#7ee78766;background:#7ee7871a}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#8b949e;font-style:italic}.token.namespace{opacity:.7}.token.string,.token.attr-value{color:#a5d6ff}.token.punctuation,.token.operator{color:#79c0ff}.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#ffa657}.token.selector,.token.attr-name,.token.char,.token.builtin,.token.inserted{color:#7ee787}.token.entity,.token.url,.language-css .token.string,.style .token.string,.token.variable{color:#79c0ff}.token.atrule,.token.attr-value,.token.keyword{color:#ff7b72}.token.function{color:#d2a8ff}.token.regex,.token.important{color:#a5d6ff}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}[class*=language-] .token{background:transparent!important}.language-javascript .token.template-string,.language-typescript .token.template-string{color:#a5d6ff!important}.language-javascript .token.dom,.language-typescript .token.dom,.language-javascript .token.console,.language-typescript .token.console{color:#79c0ff!important}.language-python .token.decorator{color:#ff7b72!important}.language-python .token.string-interpolation{color:#a5d6ff!important}.language-python .token.self{color:#ff7b72!important}.language-css .token.property,.language-scss .token.property{color:#79c0ff!important}.language-css .token.function,.language-scss .token.function{color:#d2a8ff!important}.language-html .token.tag,.language-xml .token.tag{color:#7ee787!important}.language-html .token.attr-name,.language-xml .token.attr-name{color:#79c0ff!important}.language-glsl .token.keyword{color:#ff7b72!important}.language-glsl .token.builtin{color:#79c0ff!important}.language-cpp .token.preprocessor{color:#ff7b72!important}.language-cpp .token.macro{color:#d2a8ff!important}.language-markdown .token.title,.language-markdown .token.title .token.punctuation{color:#ff7b72!important;font-weight:700}.language-markdown .token.blockquote.punctuation{color:#8b949e}.language-markdown .token.code{color:#7ee787}.language-markdown .token.url .token.content{color:#a5d6ff}.language-json .token.property,.language-yaml .token.key{color:#79c0ff!important}.language-shell .token.function{color:#d2a8ff!important}.token.deleted{color:#ffa198;background:#ff818233}.token.inserted{color:#7ee787;background:#7ee78733}.line-number{-webkit-user-select:none;user-select:none;margin-right:1rem;color:#8b949e;border-right:1px solid var(--border-color);padding-right:1rem}pre::-webkit-scrollbar{width:12px;height:12px}pre::-webkit-scrollbar-track{background:transparent;border-radius:0 0 12px 12px}pre::-webkit-scrollbar-thumb{background:#4b55634d;border:4px solid var(--bg-color-dark);border-radius:12px;transition:background .2s ease}pre::-webkit-scrollbar-thumb:hover{background:#4b556380}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:#264f7899}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:#264f7899}h3{writing-mode:horizontal-tb;text-orientation:mixed;font-size:1.5rem;margin:2rem 0 1rem;color:var(--text-color);border-bottom:2px solid var(--border-color);padding-bottom:.5rem}:not(pre)>code{background:var(--bg-color-dark);padding:.2em .4em;border-radius:4px;font-size:.9em;border:1px solid var(--border-color);vertical-align:middle;color:var(--text-color)}.comic-container{min-height:100vh;padding-top:var(--space-lg)}.comic-content{max-width:800px;margin:0 auto;padding:0 var(--space-lg)}.comic-header{text-align:left;margin-bottom:var(--space-xl);padding-bottom:var(--space-md);border-bottom:1px solid rgba(0,0,0,.08)}.comic-title{font-family:var(--font-serif);font-size:2.5rem;font-weight:600;color:var(--color-ink-dark);margin:0 0 var(--space-sm) 0;letter-spacing:-.01em}.comic-subtitle{font-family:var(--font-body);font-size:1rem;color:var(--color-ink-medium);margin:0}.comic-preview{margin-bottom:var(--space-xl)}.comic-placeholder{text-align:center}.comic-panel{margin-bottom:var(--space-lg);min-height:300px;display:flex;align-items:center;justify-content:center}.comic-text h3{font-family:var(--font-serif);font-size:1.5rem;color:var(--color-ink-dark);margin:0 0 var(--space-md) 0;font-weight:600}.comic-text p{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--color-ink-medium);margin:0;max-width:500px}.comic-navigation{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md)}.comic-nav-btn{font-family:var(--font-mono);font-size:.8rem;padding:var(--space-sm) var(--space-md);background:#0000000a;color:var(--color-ink-medium);border:1px solid rgba(0,0,0,.08);border-radius:2px;cursor:pointer;transition:all .2s ease;font-weight:400;letter-spacing:.02em}.comic-nav-btn:hover:not(:disabled){background:#00000014;color:var(--color-ink-dark);border-color:#00000026}.comic-nav-btn:disabled{background:#00000005;color:var(--color-ink-light);cursor:not-allowed;opacity:.6}.comic-page-info{font-family:var(--font-mono);font-size:.7rem;color:var(--color-ink-light);font-weight:400;letter-spacing:.05em}.comic-description{margin-bottom:var(--space-xl)}.comic-description h2{font-family:var(--font-serif);font-size:1.5rem;color:var(--color-ink-dark);margin:0 0 var(--space-md) 0;font-weight:600}.comic-description p{font-family:var(--font-body);font-size:.95rem;line-height:1.6;color:var(--color-ink-medium);margin:0 0 var(--space-lg) 0}.comic-features h3{font-family:var(--font-serif);font-size:1.2rem;color:var(--color-ink-dark);margin:0 0 var(--space-md) 0;font-weight:600}.comic-features ul{list-style:none;padding:0;margin:0}.comic-features li{font-family:var(--font-body);font-size:.9rem;line-height:1.5;color:var(--color-ink-medium);margin-bottom:var(--space-sm);padding-left:var(--space-md);position:relative}.comic-features li:before{content:"•";position:absolute;left:0;color:var(--color-ink-light)}@media (max-width: 768px){.comic-content{padding:0 var(--space-md)}.comic-title{font-size:2rem}.comic-panel{min-height:250px;padding:var(--space-lg)}.comic-navigation{flex-direction:column;gap:var(--space-sm)}.comic-nav-btn{width:100%;max-width:200px}}@media (max-width: 480px){.comic-title{font-size:1.5rem}.comic-panel{min-height:200px;padding:var(--space-md)}}.contact-section{display:flex;justify-content:center;align-items:center;width:100%;padding:.5rem 0;margin-top:0}.coin-container{display:flex;flex-direction:row;justify-content:center;gap:.75rem;width:100%;margin:0 auto}.coin{flex:none;width:110px;height:145px;display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;margin:0;padding:0}canvas{width:100%!important;height:100%!important}.coin-label{margin-top:.25rem;text-align:center;display:block;text-decoration:none!important;border-bottom:none!important;transition:all .3s ease}.contact-section a,.contact-section a:focus,.contact-section a:active{text-decoration:none!important;border-bottom:none!important;box-shadow:none!important}.contact-section a:hover,.contact-section a.hovered{color:var(--color-accent)!important;transform:scale(1.05);text-shadow:0 0 1px rgba(139,0,0,.3);font-weight:700}@media (max-width: 1024px){.coin{width:100px;height:135px}}@media (max-width: 768px){.contact-section{padding:.25rem}.coin-container{gap:.5rem}}@media (max-width: 480px){.coin-container{gap:.25rem}.coin{width:90px;height:120px}}.contact-page-container{max-width:950px;margin:0 auto;padding:2rem 1.5rem;background-color:var(--color-paper);font-family:var(--font-serif)}.contact-page-title{font-family:"Old English Text MT","UnifrakturMaguntia",var(--font-serif);font-size:2.5rem;text-align:center;margin-bottom:2rem;color:var(--color-ink-dark);letter-spacing:.02em;font-weight:400}.contact-coins-section{text-align:center;margin-bottom:3rem}.contact-coins-section h2{font-family:var(--font-serif);font-size:1.4rem;margin-bottom:1.5rem;color:var(--color-ink-medium);font-weight:400;font-style:italic}.contact-tabs{display:flex;justify-content:center;margin-bottom:2rem;border-bottom:1px solid var(--color-ink-light)}.tab-button{background:transparent;border:none;padding:.8rem 1.5rem;margin:0 .5rem;font-family:var(--font-serif);font-size:1rem;color:var(--color-ink-medium);cursor:pointer;position:relative;transition:all .3s ease}.tab-button:hover{color:var(--color-accent)}.tab-button.active{color:var(--color-ink-dark);font-weight:600}.tab-button.active:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:2px;background-color:var(--color-accent)}.contact-form-container{max-width:650px;margin:0 auto}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-family:var(--font-serif);font-size:1rem;color:var(--color-ink-dark)}.form-group input,.form-group textarea{font-family:var(--font-body);padding:.8rem;border:1px solid var(--color-ink-light);background-color:#ffffffb3;border-radius:3px;font-size:1rem;transition:border-color .3s ease,box-shadow .3s ease}.form-group input:focus,.form-group textarea:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 2px #8b00001a}.send-button{align-self:flex-end;background-color:var(--color-ink-dark);color:var(--color-paper);font-family:var(--font-serif);font-size:1rem;padding:.8rem 1.5rem;border:none;border-radius:3px;cursor:pointer;transition:all .3s ease}.send-button:hover{background-color:var(--color-accent);transform:translateY(-2px)}.form-success-message{text-align:center;padding:2rem;background-color:#0080000d;border:1px solid rgba(0,128,0,.2);border-radius:5px}.form-success-message h3{color:var(--color-ink-dark);margin-bottom:1rem}.form-success-message p{color:var(--color-ink-medium);margin-bottom:1.5rem}.send-another-button{background-color:transparent;color:var(--color-ink-dark);font-family:var(--font-serif);font-size:.9rem;padding:.6rem 1.2rem;border:1px solid var(--color-ink-light);border-radius:3px;cursor:pointer;transition:all .3s ease}.send-another-button:hover{background-color:var(--color-ink-dark);color:var(--color-paper)}.ai-chat-container{max-width:650px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}.ai-chat-messages{display:flex;flex-direction:column;gap:1rem;max-height:400px;overflow-y:auto;padding:1rem;border:1px solid var(--color-ink-light);border-radius:5px;background-color:#ffffff80}.chat-message{max-width:80%;padding:.8rem 1rem;border-radius:10px;font-family:var(--font-body);line-height:1.5}.ai-message{align-self:flex-start;background-color:#0000000d;color:var(--color-ink-dark);border-bottom-left-radius:0}.user-message{align-self:flex-end;background-color:#8b00001a;color:var(--color-ink-dark);border-bottom-right-radius:0}.ai-chat-input-form{display:flex;gap:.5rem}.ai-chat-input{flex:1;padding:.8rem;border:1px solid var(--color-ink-light);border-radius:25px;font-family:var(--font-body);font-size:1rem}.ai-chat-input:focus{border-color:var(--color-accent);outline:none}.ai-chat-send-button{background-color:var(--color-ink-dark);color:var(--color-paper);border:none;border-radius:25px;padding:0 1.5rem;cursor:pointer;transition:all .3s ease}.ai-chat-send-button:hover{background-color:var(--color-accent)}.ai-chat-disclaimer{margin-top:1.5rem;padding:1rem;background-color:#00000008;border-radius:5px}.ai-chat-disclaimer p{font-size:.8rem;color:var(--color-ink-light);font-style:italic;line-height:1.6}@media (max-width: 768px){.contact-page-title{font-size:2rem}.tab-button{padding:.6rem 1rem;font-size:.9rem}.chat-message{max-width:90%}}@media (max-width: 480px){.contact-page-title{font-size:1.75rem}.contact-tabs{flex-direction:column;gap:.5rem;align-items:center}.tab-button{width:100%;max-width:250px}.form-group input,.form-group textarea,.ai-chat-input{font-size:.9rem}.send-button,.ai-chat-send-button{font-size:.9rem;padding:.6rem 1.2rem}}.custom-link{color:#1a1a1a;text-decoration:none;font-family:Times New Roman,serif;font-weight:500;position:relative;display:inline-block;padding:.1em 0;transition:all .3s cubic-bezier(.4,0,.2,1)}.custom-link:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:#1a1a1a;transform:scaleX(0);transform-origin:right;transition:transform .3s cubic-bezier(.4,0,.2,1)}.custom-link:hover{color:#444}.custom-link:hover:after{transform:scaleX(1);transform-origin:left}.custom-link.meta-item{font-size:1.1rem;letter-spacing:.02em;margin:0 .5rem}.custom-link.profile-subtitle-link{font-style:italic;font-size:1.2rem;color:#2c3e50}.bio-research .custom-link{font-weight:600;color:#2c5282}.bio-ventures .custom-link{font-size:1.3rem;font-weight:600;color:#2c5282}.bio-projects .custom-link{font-size:1.2rem;font-weight:600;color:#2c5282}.research-advisors .custom-link{font-style:italic;font-weight:400;color:#2c5282}.bio-container .custom-link:hover{text-shadow:1px 1px 0 rgba(0,0,0,.02)}@media (max-width: 768px){.bio-ventures .custom-link{font-size:1.2rem}.bio-projects .custom-link{font-size:1.1rem}}:root{--color-ink-dark: #1a1a1a;--color-ink-medium: #555;--color-ink-light: #ccc;--color-paper: #fff;--color-accent: #2c5282;--color-accent-hover: #1a365d;--color-background: #fff;--color-shadow: rgba(0, 0, 0, .1);--font-serif: "Times New Roman", serif;--font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: "Old English Text MT", "UnifrakturMaguntia", "Times New Roman", serif;--font-size-xs: .9rem;--font-size-sm: 1rem;--font-size-md: 1.1rem;--font-size-lg: 1.3rem;--font-size-xl: 1.6rem;--font-size-2xl: 1.8rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--line-height-tight: 1.2;--line-height-normal: 1.6;--line-height-relaxed: 1.7;--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 2.5rem;--spacing-3xl: 3rem;--ornate-inner-spacing: 1.25rem;--ornate-corner-size: .75rem;--border-width-thin: 1px;--border-width-thick: 2px;--border-radius: 4px;--border-thin-light: var(--border-width-thin) solid var(--color-ink-light);--opacity-subtle: .3;--opacity-medium: .5;--transition-speed: .3s ease;--box-shadow: 8px 10px 40px rgba(0, 0, 0, .15), 4px 5px 20px rgba(0, 0, 0, .12), 2px 3px 12px rgba(0, 0, 0, .08);--box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, .05), inset 0 -1px 1px rgba(0, 0, 0, .02);--ornate-scallop-image: repeating-linear-gradient( 45deg, transparent, transparent 5px, var(--color-ink-light) 5px, var(--color-ink-light) 10px )}a{color:var(--color-accent);text-decoration:none;border-bottom:var(--border-width-thin) dotted var(--color-accent);transition:all var(--transition-speed)}a:hover{color:var(--color-accent-hover);border-bottom-style:solid}ul{margin:var(--spacing-sm) 0;padding-left:var(--spacing-lg)}li{margin:var(--spacing-xs) 0;line-height:var(--line-height-normal)}section{margin:var(--spacing-xl) 0}.grid-auto-fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl)}.grid-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl)}.grid-2col{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}.section-border{position:relative;margin:var(--spacing-3xl) 0;padding:var(--spacing-xl);background:var(--color-paper);border:var(--border-thin-light)}.section-border:before{content:"";position:absolute;top:var(--ornate-inner-spacing);left:var(--ornate-inner-spacing);right:var(--ornate-inner-spacing);bottom:var(--ornate-inner-spacing);border:var(--border-width-thin) solid var(--color-ink-light);opacity:var(--opacity-subtle)}.inner-frame:before{content:"";position:absolute;top:var(--ornate-inner-spacing);left:var(--ornate-inner-spacing);right:var(--ornate-inner-spacing);bottom:var(--ornate-inner-spacing);border:var(--border-thin-light);opacity:var(--opacity-subtle);transition:all var(--transition-speed)}.inner-frame:hover:before{top:calc(var(--ornate-inner-spacing) - .25rem);left:calc(var(--ornate-inner-spacing) - .25rem);right:calc(var(--ornate-inner-spacing) - .25rem);bottom:calc(var(--ornate-inner-spacing) - .25rem);opacity:var(--opacity-medium)}.double-border{border-top:var(--border-width-thick) solid var(--color-ink-light);border-bottom:var(--border-width-thick) solid var(--color-ink-light);position:relative;padding:var(--spacing-xl) 0}.double-border:before,.double-border:after{content:"";position:absolute;left:0;right:0;height:var(--border-width-thin);background:var(--color-ink-light)}.double-border:before{top:2px}.double-border:after{bottom:2px}.fancy-bullet li{position:relative;padding-left:var(--spacing-lg);margin:var(--spacing-sm) 0;font-size:var(--font-size-md);color:var(--color-ink-medium);line-height:var(--line-height-normal)}.fancy-bullet li:before{content:"•";position:absolute;left:0;color:var(--color-accent)}.fancy-list{list-style:none;padding:0;margin:var(--spacing-md) 0;font-family:var(--font-body)}.display-title{font-family:var(--font-display);text-align:center;color:var(--color-ink-dark);letter-spacing:.02em}.serif-title{font-family:var(--font-serif);font-weight:700;letter-spacing:-.01em;line-height:var(--line-height-tight);color:var(--color-ink-dark)}.bio-ventures,.bio-projects{margin:var(--spacing-md) 0 var(--spacing-xl);padding-top:0;padding-bottom:var(--spacing-xl);position:relative}.bio-ventures h2,.bio-projects h2{margin-top:0;padding-top:var(--spacing-md)}.project-grid,.expertise-grid,.ventures-grid{gap:var(--spacing-xl)}.project-item,.venture-item{position:relative;padding:var(--spacing-lg);background:var(--color-paper);border:var(--border-thin-light);transition:all var(--transition-speed);overflow:visible}.project-item h3 a,.venture-item .venture-link{color:var(--color-ink-dark);text-decoration:none;border-bottom:none;transition:all var(--transition-speed)}.project-item h3 a:hover,.venture-item .venture-link:hover{color:var(--color-accent)}.education-item ul,.research-item ul{list-style:none;padding:0;margin:var(--spacing-md) 0;font-family:var(--font-body)}.education-item li,.research-item li{position:relative;padding-left:var(--spacing-lg);margin:var(--spacing-sm) 0;font-size:var(--font-size-md);color:var(--color-ink-medium);line-height:var(--line-height-normal)}.education-item li:before,.research-item li:before{content:"•";position:absolute;left:0;color:var(--color-accent)}.bio-education h2:not(.journal-title):first-letter,.bio-research h2:not(.journal-title):first-letter,.bio-expertise h2:not(.journal-title):first-letter,.bio-projects h2:not(.journal-title):first-letter,.bio-ventures h2:not(.journal-title):first-letter{font-size:1.5em;color:var(--color-accent);font-weight:900;text-shadow:2px 2px 4px rgba(0,0,0,.1);margin-right:.1em;display:inline-block;transform:rotate(-2deg);transition:transform var(--transition-speed)}.bio-education h2:not(.journal-title):hover:first-letter,.bio-research h2:not(.journal-title):hover:first-letter,.bio-expertise h2:not(.journal-title):hover:first-letter,.bio-projects h2:not(.journal-title):hover:first-letter,.bio-ventures h2:not(.journal-title):hover:first-letter{transform:rotate(0) scale(1.1)}.bio-ventures h2:before,.bio-education h2:before,.bio-research h2:before,.bio-expertise h2:before,.bio-projects h2:before{content:none;display:none}:is(.bio-ventures,.bio-education,.bio-research,.bio-expertise,.bio-projects,.bio-abstract) h2:not(.journal-title){font-family:var(--font-display);font-size:2.8rem;text-align:center;margin-top:0;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);color:var(--color-ink-dark);letter-spacing:.02em;font-weight:400}.bio-container{max-width:900px;margin:0 auto var(--spacing-xl);padding:var(--spacing-xl);background:var(--color-paper);box-shadow:var(--box-shadow),var(--box-shadow-inset);border:1px solid rgba(0,0,0,.06);border-radius:12px;font-family:var(--font-serif);line-height:var(--line-height-normal);color:var(--color-ink-dark)}.bio-header{text-align:center;margin-bottom:var(--spacing-3xl);padding-bottom:var(--spacing-xl);border-bottom:var(--border-width-thick) solid #eee}.bio-title{font-size:var(--font-size-4xl);margin:0 0 var(--spacing-md);font-weight:700;letter-spacing:-.02em}.bio-credentials{font-size:var(--font-size-md);color:var(--color-ink-medium);font-style:italic}.bio-abstract{margin:var(--spacing-xl) 0;padding:0;background:transparent;border:none}.bio-abstract h2{font-family:var(--font-display);text-align:center;color:var(--color-ink-dark);letter-spacing:.02em}.bio-abstract p{font-size:var(--font-size-md);margin:var(--spacing-md) 0;line-height:var(--line-height-relaxed);color:var(--color-ink-medium);font-family:var(--font-body);padding:0 var(--spacing-md);position:relative;z-index:2}.bio-education{margin:var(--spacing-xl) 0;padding:0;background:transparent;border:none}.bio-education h2{font-family:var(--font-display);text-align:center;color:var(--color-ink-dark);letter-spacing:.02em;position:relative}.education-item{margin:var(--spacing-xl) 0;padding:0 var(--spacing-md)}.education-item h3{font-family:var(--font-serif);font-size:var(--font-size-2xl);margin:0 0 var(--spacing-xs);color:var(--color-ink-dark);font-weight:700;letter-spacing:-.01em;line-height:1.25;overflow-wrap:break-word}.bio-research{margin:var(--spacing-xl) 0;padding:0;background:transparent;border:none}.bio-research h2{font-family:var(--font-display);text-align:center;color:var(--color-ink-dark);letter-spacing:.02em;position:relative}.research-item{display:grid;grid-template-columns:minmax(20ch,30ch) 1fr;column-gap:var(--spacing-lg);align-items:start}.research-item h3{grid-column:1;word-break:normal;white-space:normal;font-size:var(--font-size-lg);line-height:1.3;writing-mode:horizontal-tb;transform:none;text-orientation:mixed;position:relative;padding:var(--spacing-sm);background:linear-gradient(135deg,#00000005,#0000000d);border-radius:var(--border-radius);border:1px solid rgba(0,0,0,.05);transition:all var(--transition-speed)}.research-item h3:hover{background:linear-gradient(135deg,#0000000a,#00000014);border-color:var(--color-accent);transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.research-item ul,.research-item p,.research-item .research-advisors{grid-column:2;margin-top:0}.research-achievements{grid-column:2;margin-top:var(--spacing-xs)}.achievement-line{display:grid;grid-template-columns:120px 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-xs);padding:var(--spacing-xs) 0;border-bottom:1px solid rgba(0,0,0,.05);transition:all var(--transition-speed)}.achievement-line:last-child{border-bottom:none}.achievement-line:hover{background:#00000005;padding-left:var(--spacing-xs);border-radius:var(--border-radius)}.achievement-type{font-family:var(--font-mono);font-size:.75rem;font-weight:600;color:var(--color-accent);text-transform:uppercase;letter-spacing:.05em;align-self:start}.achievement-detail{font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-ink-medium);align-self:start}@media (max-width: 768px){.achievement-line{grid-template-columns:1fr;gap:var(--spacing-xs)}.achievement-type{font-size:.7rem}}.bio-expertise{margin:var(--spacing-xl) 0;padding:0;background:transparent;border:none}.bio-expertise h2{font-family:var(--font-display);text-align:center;color:var(--color-ink-dark);letter-spacing:.02em}.expertise-expandable-list{display:flex;flex-direction:column;gap:.375rem;margin-top:var(--space-sm);padding:0;list-style:none}.expertise-expandable-item{position:relative;border:1px solid rgba(0,0,0,.08);border-radius:3px;background:#00000001;transition:all .25s cubic-bezier(.4,0,.2,1);overflow:hidden;border-left:2px solid transparent}.expertise-expandable-item:hover{border-color:#0000001f;border-left-color:var(--color-accent);background:#8b000004;box-shadow:0 1px 3px #0000000a;transform:translate(1px)}.expertise-expandable-item[aria-expanded=true]{border-left-color:var(--color-accent);background:#8b000005}.expertise-expandable-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.875rem 1.125rem;border:none;cursor:pointer;text-align:left;font-family:inherit;background:transparent;transition:background .2s cubic-bezier(.4,0,.2,1);position:relative}.expertise-expandable-header:hover{background:#00000004}.expertise-expandable-header:focus{outline:none;background:#00000005}.expertise-expandable-header:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.expertise-expandable-title{font-family:var(--font-serif);font-size:.95rem;font-weight:600;color:var(--color-ink-dark);letter-spacing:.01em;line-height:1.4;flex:1;margin:0;padding:0;transition:color .2s ease}.expertise-expandable-header:hover .expertise-expandable-title{color:var(--color-accent)}.expertise-expandable-arrow{font-size:1rem;color:var(--color-accent);transition:transform .3s cubic-bezier(.4,0,.2,1);margin-left:.75rem;flex-shrink:0;line-height:1;width:1.25rem;height:1.25rem;display:flex;align-items:center;justify-content:center;opacity:.7}.expertise-expandable-header:hover .expertise-expandable-arrow{opacity:1}.expertise-expandable-arrow.expanded{transform:rotate(180deg);opacity:1}.expertise-expandable-content{padding:0 1.125rem 1rem;animation:expertiseSlideDown .3s cubic-bezier(.4,0,.2,1);overflow:hidden;border-top:1px solid rgba(0,0,0,.05);margin-top:0}@keyframes expertiseSlideDown{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0;margin-top:0}to{opacity:1;max-height:500px;padding-top:.875rem;padding-bottom:1rem;margin-top:0}}.expertise-expandable-content p{margin:0;font-family:var(--font-body);font-size:.875rem;line-height:1.65;color:var(--color-ink-medium);text-indent:0;letter-spacing:.01em;font-weight:400}.bio-ventures h2{font-family:var(--font-display);text-align:center;color:var(--color-ink-dark);letter-spacing:.02em}.ventures-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl);margin:var(--spacing-md) 0}.venture-item h3{font-size:var(--font-size-2xl);margin:0 0 var(--spacing-md);position:relative;z-index:2}.venture-tagline{font-family:var(--font-serif);font-size:var(--font-size-md);font-style:italic;color:var(--color-ink-medium);margin:var(--spacing-xs) 0 var(--spacing-md);padding-bottom:var(--spacing-xs);border-bottom:var(--border-width-thin) solid var(--color-ink-light);position:relative;z-index:2}.venture-description{font-family:var(--font-body);font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-ink-medium);margin:0;position:relative;z-index:2}.venture-meta{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:var(--border-width-thin) dotted var(--color-ink-light);font-family:var(--font-serif);font-size:var(--font-size-xs);color:var(--color-ink-light);font-style:italic;position:relative;z-index:2}.bio-projects .journal-title-row{justify-items:center}.bio-projects .journal-title{text-align:center}.bio-projects h2{margin-top:0;padding-top:var(--spacing-md)}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);margin:var(--spacing-xl) 0 var(--spacing-xl)}.project-item h3{font-size:var(--font-size-xl);margin:0 0 var(--spacing-md);line-height:var(--line-height-tight);font-weight:700;position:relative;z-index:2}.project-item p{font-family:var(--font-body);font-size:var(--font-size-md);line-height:var(--line-height-normal);color:var(--color-ink-medium);margin:0;position:relative;z-index:2}.bio-showcase{margin:var(--spacing-xl) 0;padding:var(--spacing-lg);text-align:center;position:relative;font-style:italic;max-width:90%;margin-left:auto;margin-right:auto}.bio-showcase p{font-family:var(--font-serif);font-size:var(--font-size-md);line-height:var(--line-height-normal);color:var(--color-ink-medium)}.bio-footer{margin-top:var(--spacing-3xl);padding-top:var(--spacing-lg);border-top:var(--border-width-thick) solid #eee;text-align:center;font-style:italic;color:var(--color-ink-medium)}@media (max-width: 1024px){.ventures-grid,.project-grid{grid-template-columns:repeat(2,1fr)}.expertise-grid{gap:var(--spacing-xl)}}@media (max-width: 768px){.bio-container{margin:var(--spacing-md);padding:var(--spacing-lg)}.bio-title{font-size:var(--font-size-3xl)}.bio-credentials{font-size:var(--font-size-sm)}section h2,:is(.bio-ventures,.bio-education,.bio-research,.bio-expertise,.bio-projects,.bio-abstract) h2{font-size:2.3rem;margin-top:0;margin-bottom:var(--spacing-lg)}section h3{font-size:var(--font-size-lg)}.project-grid,.expertise-grid,.ventures-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.bio-education,.bio-expertise,.bio-research{padding:var(--spacing-lg)}.expertise-item:before{display:none}.expertise-item{padding:var(--spacing-md);border-bottom:var(--border-width-thin) solid var(--color-ink-light)}.expertise-item:last-child{border-bottom:none}.bio-ventures{margin:var(--spacing-sm) 0 var(--spacing-lg);padding-top:0;padding-bottom:var(--spacing-lg)}.bio-ventures h2{margin-top:0;padding-top:var(--spacing-sm)}.venture-item h3,.research-item h3{font-size:var(--font-size-xl)}.bio-abstract,.bio-showcase{padding:var(--spacing-lg)}.bio-abstract p{font-size:1.05rem}.research-item{padding:0 var(--spacing-sm)}.research-advisors{font-size:var(--font-size-sm)}.bio-projects{margin:var(--spacing-sm) 0 var(--spacing-lg);padding-top:0;padding-bottom:var(--spacing-lg)}.bio-projects h2{margin-top:0;padding-top:var(--spacing-sm)}:root{--ornate-inner-spacing: .875rem;--ornate-corner-size: .5rem}}@media (max-width: 480px){.bio-container{margin:var(--spacing-xs);padding:var(--spacing-md)}.bio-title{font-size:1.8rem}section h2,:is(.bio-ventures,.bio-education,.bio-research,.bio-expertise,.bio-projects,.bio-abstract) h2{font-size:2rem;margin-top:0;margin-bottom:var(--spacing-md)}section h3{font-size:1.1rem}.bio-education,.bio-expertise,.bio-research{padding:var(--spacing-md);margin:var(--spacing-md) 0}.education-item h3{font-size:var(--font-size-xl)}.education-item li,.expertise-item li,.project-item p,.research-item li,.bio-abstract p,.venture-tagline{font-size:var(--font-size-sm)}.project-item,.expertise-item,.venture-item{padding:var(--spacing-md)}.bio-ventures{margin:var(--spacing-xs) 0 var(--spacing-md);padding-top:0;padding-bottom:var(--spacing-md)}.bio-ventures h2{margin-top:0;padding-top:var(--spacing-xs)}.venture-item h3,.research-item h3{font-size:1.4rem}.bio-abstract{padding:var(--spacing-md);margin:var(--spacing-md) 0}.bio-abstract p,.research-item{padding:0 var(--spacing-xs)}.bio-projects{margin:var(--spacing-xs) 0 var(--spacing-md);padding-top:0;padding-bottom:var(--spacing-md)}.bio-projects h2{margin-top:0;padding-top:var(--spacing-xs)}:root{--ornate-inner-spacing: .75rem;--ornate-corner-size: .375rem}}.journal-container{background-color:var(--color-paper);color:var(--color-ink-dark);font-family:var(--font-serif);line-height:1.45;margin:0 auto;overflow-x:hidden}.journal-content{width:100%;max-width:1600px;margin:0 auto;padding-top:var(--space-xl);padding-bottom:var(--space-xxl);padding-inline:clamp(var(--space-md),6vw,var(--space-xl))}.journal-two-col{position:relative;padding-top:var(--space-xxl);display:grid;grid-template-columns:3.5fr 1fr;gap:var(--space-xl);align-items:start}.journal-main{grid-column:1 / 2;display:flex;flex-direction:column}.journal-sidebar{grid-column:2 / 3;display:flex;flex-direction:column;gap:0}@media (max-width: 1024px){.journal-two-col{grid-template-columns:1fr;gap:var(--space-lg)}.journal-sidebar{grid-column:1 / -1;order:1}.journal-main{grid-column:1 / -1;order:2}}@media (max-width: 768px){.journal-content{padding:var(--space-xs) var(--space-xs)}}@media (max-width: 480px){.journal-content{padding:0}.journal-two-col{padding-top:var(--space-lg)}}.journal-header{text-align:left;margin-bottom:var(--space-lg);position:relative;width:100%;padding-bottom:var(--space-sm);border-bottom:1px dotted var(--color-ink-light);padding-inline:var(--space-sm);box-sizing:border-box}.journal-title-row{display:grid;grid-template-columns:1fr;align-items:start;gap:var(--space-md)}.journal-title{font-family:var(--font-serif);font-size:2rem;text-align:left;margin-bottom:0;color:var(--color-ink-dark);letter-spacing:.01em;font-weight:700;line-height:1.2}.journal-title--display{font-family:var(--font-display);font-weight:400;font-size:clamp(2rem,4vw,2.6rem)}.journal-title--fancy-initial:first-letter{color:var(--color-accent);font-weight:900;font-size:1.6em;margin-right:.06em;text-shadow:2px 3px 0 rgba(0,0,0,.22),4px 6px 4px rgba(0,0,0,.16),7px 12px 12px rgba(0,0,0,.22),0 0 1px rgba(0,0,0,.08)}.journal-title--shadow-strong,.journal-title--shadow-strong:first-letter{text-shadow:3px 4px 0 rgba(0,0,0,.22),6px 10px 6px rgba(0,0,0,.16),10px 18px 14px rgba(0,0,0,.25),0 0 1px rgba(0,0,0,.1);filter:drop-shadow(2px 3px 0 rgba(0,0,0,.18)) drop-shadow(8px 14px 10px rgba(0,0,0,.2))}.journal-subtitle{font-family:var(--font-serif);font-style:italic;font-size:1rem;color:var(--color-ink-medium);text-align:left;margin:var(--space-xs) 0 var(--space-sm);letter-spacing:.02em}@media (max-width: 1024px){.journal-header{border-bottom:none}.journal-title-row{gap:var(--space-xs)}.journal-title{font-size:1.8rem}.journal-subtitle{font-size:.9rem}}@media (max-width: 480px){.journal-title{font-size:1.4rem}.journal-subtitle{font-size:.8rem}}.journal-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:0}.journal-list li{margin:0}.journal-item{position:relative;display:grid;grid-template-columns:2.2rem minmax(0,1fr) auto;gap:var(--space-sm);align-items:baseline;padding:.05rem 0;border-bottom:1px dotted rgba(0,0,0,.1);transition:all .4s cubic-bezier(.4,0,.2,1);background-color:transparent;border-left:2px solid transparent}.journal-item:hover{background-color:#00000004;border-left:2px solid var(--color-accent);transform:translate(2px)}.journal-title-block{display:flex;flex-direction:column;align-items:flex-start;min-width:0;overflow:hidden}.journal-number{font-family:var(--font-mono);font-size:.7rem;color:var(--color-ink-light);font-weight:400;text-align:right;padding-right:var(--space-xs)}.journal-title-text{display:inline-flex;align-items:baseline;min-width:0;font-family:var(--font-serif);font-size:1.1rem;font-weight:600;line-height:1.2;color:var(--color-ink-dark);transition:color .2s ease;text-align:left;white-space:nowrap;overflow:hidden}.journal-item:hover .journal-title-text{color:var(--color-accent)}.journal-status{font-family:var(--font-mono);font-size:.6rem;text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.08em;color:var(--color-ink-light);white-space:nowrap;justify-self:end;text-align:right}.journal-item.is-active{background-color:#00000005}.journal-list--compact .journal-item{padding:0}.journal-list--compact .journal-title-text{font-size:1.05rem}.journal-list[data-counter=alpha] .journal-number:before{content:counter(item,upper-alpha)}.journal-list[data-counter=alpha]{counter-reset:item}.journal-list[data-counter=alpha] .journal-item .journal-number{counter-increment:item}@media (max-width: 768px){.journal-item{grid-template-columns:1.2rem 1fr;grid-auto-rows:auto;gap:var(--space-xs)}@media (max-width: 420px){.journal-item{grid-template-columns:1fr}.journal-number{display:none}}.journal-title-block{display:block;min-width:0}.journal-title-text{display:block;white-space:normal;overflow:visible;line-height:1.35;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;font-size:1.15rem}.journal-status{grid-column:2;grid-row:2;justify-self:start;text-align:left;font-size:.6rem;margin-top:2px}}.org-tag{display:inline-block;margin-top:.2rem;margin-left:.5rem;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.06em;color:var(--color-ink-dark);background:#0000000a;border:1px solid var(--color-ink-light);padding:.1rem .3rem;border-radius:2px;text-decoration:none}.journal-smallcaps{font-variant-caps:small-caps;letter-spacing:.08em}.journal-mono{font-family:var(--font-mono)}.journal-serif{font-family:var(--font-serif)}.journal-muted{color:var(--color-ink-medium)}.journal-dotted{border-bottom:1px dotted var(--color-ink-light)}.journal-rule{border-bottom:1px solid var(--color-ink-light)}.journal-rule--dotted{border-bottom:1px dotted var(--color-ink-light)}.journal-rule--thin{border-bottom-width:1px}.journal-rule--spaced{margin:var(--space-md) 0}.journal-card{position:relative;background:var(--color-paper);border:1px solid var(--color-ink-light);padding:clamp(var(--space-sm),3.5vw,var(--space-xl));margin:var(--space-lg) 0;box-shadow:inset 0 0 0 1px #00000008;width:100%;box-sizing:border-box}.journal-card__inner{position:relative}.journal-panel-meta{display:flex;justify-content:space-between;font-family:var(--font-mono);text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.12em;font-size:.65rem;color:var(--color-ink-medium);padding-bottom:var(--space-xs);margin-bottom:var(--space-md);border-bottom:1px dotted var(--color-ink-light)}@media (max-width: 768px){.journal-card{padding:clamp(var(--space-xs),3vw,var(--space-md))}}@media (max-width: 480px){.journal-card{padding:clamp(var(--space-xs),2.5vw,var(--space-sm))}}.journal-expandables{margin-top:var(--space-xs);margin-bottom:.35rem}.journal-expandables-list{display:flex;flex-direction:column;gap:.35rem}.journal-expandable-item{border:1px solid rgba(0,0,0,.12);border-bottom:2px solid rgba(0,0,0,.18);border-radius:10px;background:#00000004;overflow:hidden;transition:border-color .2s ease,background .2s ease,transform .2s ease}.journal-expandable-item:hover{border-color:var(--color-accent);background:#8b000005;transform:translateY(-1px)}.journal-expandable-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:.45rem .7rem;border:none;background:#00000003;cursor:pointer;text-align:left;font-family:var(--font-mono);letter-spacing:.01em}.journal-expandable-header:hover{background:#00000005}.journal-expandable-header:focus-visible{outline:2px solid rgba(139,0,0,.25);outline-offset:2px}.journal-expandable-title{font-size:.78rem;font-weight:600;color:var(--color-ink-dark);text-transform:uppercase;letter-spacing:.08em}.journal-expandable-arrow{font-size:1.05rem;color:var(--color-accent);transition:transform .28s ease;margin-left:.5rem;flex-shrink:0}.journal-expandable-arrow.expanded{transform:rotate(180deg)}.journal-expandable-content{padding:.15rem .7rem .65rem;overflow:hidden;animation:journalSlideDown .28s ease-out}.journal-expandable-content.closing{animation:journalSlideUp .22s ease-in}.journal-expandable-content p{margin:0;font-size:.95rem;line-height:1.55;color:var(--color-ink-medium);text-indent:0}.journal-expandable-content ul{margin:.35rem 0 0;padding-left:1.2rem;color:var(--color-ink-medium)}.journal-expandable-content li{margin:.2rem 0}.journal-expandable-placeholder{font-style:italic;opacity:.9}@keyframes journalSlideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes journalSlideUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.journal-aside{background:var(--color-paper);border:1px solid var(--color-ink-light);padding:var(--space-md)}.journal-aside__title{font-family:var(--font-mono);text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.12em;font-size:.75rem;color:var(--color-ink-dark);margin-bottom:var(--space-sm);border-bottom:1px dotted var(--color-ink-light);padding-bottom:var(--space-xs)}.journal-aside__body{font-family:var(--font-serif);color:var(--color-ink-dark)}.journal-tabs{display:flex;gap:var(--space-xs);flex-wrap:wrap}.journal-tab{border:1px solid var(--color-ink-light);background:#00000005;font-family:var(--font-mono);font-size:.65rem;letter-spacing:.06em;text-transform:uppercase;padding:.2rem .5rem;border-radius:3px;cursor:pointer}.journal-tab.active{border-color:var(--color-accent);color:var(--color-accent)}.journal-section-label{font-family:var(--font-mono);text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.12em;font-size:.72rem;color:var(--color-ink-medium);padding:var(--space-xs) 0;margin:var(--space-sm) 0 var(--space-xs)}.journal-badge{display:inline-block;font-family:var(--font-mono);text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.08em;font-size:.62rem;color:var(--color-ink-medium);border:1px solid var(--color-ink-light);padding:.05rem .3rem;border-radius:2px;background:#00000005}.journal-title-text--mask{-webkit-mask-image:linear-gradient(90deg,#000 0% 90%,#0000);mask-image:linear-gradient(90deg,#000 0% 90%,#0000)}.datetime-container{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;font-family:var(--font-mono);margin:var(--space-md) 0;padding-left:clamp(var(--space-sm),4vw,var(--space-lg))}.countdown{display:flex;align-items:center;gap:.5rem;font-size:.9rem;background:transparent;padding:0;border:none;box-shadow:none}.countdown-section{display:flex;flex-direction:column;align-items:flex-start;min-width:2.5rem}.countdown-value{font-size:1rem;font-weight:500;color:var(--color-ink-dark);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.2}.countdown-label{font-size:.65rem;color:var(--color-ink-light);text-transform:uppercase;letter-spacing:.05em;margin-top:.1rem}.countdown-separator{color:var(--color-ink-light);font-weight:300;margin:0 .1rem;padding-bottom:1rem}.countdown-title{font-size:.7rem;color:var(--color-ink-light);text-transform:uppercase;letter-spacing:.1em;margin-top:.25rem;font-weight:400}@media (max-width: 768px){.countdown{font-size:.85rem;gap:.3rem}.countdown-section{min-width:2rem}.countdown-value{font-size:.9rem}.countdown-label{font-size:.6rem}.countdown-separator{margin:0;padding-bottom:.8rem}}@media (max-width: 480px){.countdown{font-size:.75rem;gap:.2rem}.countdown-section{min-width:1.8rem}.countdown-value{font-size:.85rem}.countdown-label{font-size:.55rem}.countdown-title{font-size:.65rem}}.name-title{cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);transform-origin:center;-webkit-user-select:none;user-select:none;padding:.5rem 4rem;position:relative;overflow:visible;width:100%;max-width:100%;margin-left:0;margin-right:0;display:flex;justify-content:center;align-items:center;z-index:1}.name-title h1{font-size:clamp(2.5rem,8vw,6.5rem);font-weight:800;margin:.5rem 0 3rem;color:#000;text-align:center;transition:all .3s ease;letter-spacing:-.1em;line-height:1.1;height:1.2em;min-height:1.2em;max-height:1.2em;position:relative;display:inline-block;overflow:visible;padding:.5em 6rem;white-space:nowrap;min-width:max-content;width:max-content;max-width:none}.fancy-letter{display:inline-block;transition:all .2s cubic-bezier(.34,1.56,.64,1);position:absolute;inset:0;will-change:transform,font-family;transform-origin:center;overflow:visible;line-height:1;vertical-align:baseline;height:1.2em;min-height:1.2em;max-height:1.2em;padding:0 .3em;margin-left:-.2em;margin-right:-.2em;--max-rotation: 4deg;--max-y-offset: 2.5px;--max-x-offset: 1.5px;--max-scale: 1.2;clip-path:none}.letter-wrapper{display:inline-block;position:relative;width:auto;min-width:.8em;height:1.2em;min-height:1.2em;max-height:1.2em;text-align:center;overflow:visible;padding:.2em;margin:0 -.15em;vertical-align:top}.fancy-letter:hover{transform:translateY(-3px) scale(1.1)!important;text-shadow:0 3px 5px rgba(0,0,0,.2);z-index:2}@keyframes subtlePulse{0%{opacity:.9}50%{opacity:1;transform:translateY(-1px)}to{opacity:.9}}.fancy-letter{animation:subtlePulse 1.5s infinite;animation-delay:calc(var(--index, 0) * .05s)}.fancy-letter:nth-child(odd){animation-duration:1.2s}.fancy-letter:nth-child(3n){animation-duration:1.4s}.fancy-letter:nth-child(3n+1){animation-duration:1.1s}.fancy-letter:nth-child(2n){animation-duration:1.3s}.fancy-letter:nth-child(5n){animation-duration:1.5s}.fancy-letter:nth-child(7n){animation-duration:.9s}.name-title.hovered{transform:translateY(-2px);filter:drop-shadow(0 8px 6px rgba(0,0,0,.12)) drop-shadow(0 3px 12px rgba(0,0,0,.1)) drop-shadow(0 6px 8px rgba(0,0,0,.08))}.name-title.hovered h1{text-shadow:1px 1px 0 rgba(0,0,0,.15),2px 2px 0 rgba(0,0,0,.08),3px 3px 0 rgba(0,0,0,.05)}.name-title.animate{animation:floatDown .6s cubic-bezier(.4,0,.2,1);filter:drop-shadow(0 15px 15px rgba(0,0,0,.15)) drop-shadow(0 6px 18px rgba(0,0,0,.12)) drop-shadow(0 8px 12px rgba(0,0,0,.1))}@keyframes floatDown{0%{transform:translateY(-2px)}50%{transform:translateY(8px);filter:drop-shadow(0 20px 20px rgba(0,0,0,.18)) drop-shadow(0 8px 24px rgba(0,0,0,.15)) drop-shadow(0 12px 16px rgba(0,0,0,.12))}to{transform:translateY(0)}}@media (min-width: 769px){.name-title h1{margin-bottom:4rem}}@media (max-width: 768px){.name-title{padding:.5rem 2rem;width:100vw;max-width:100vw;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%)}.name-title h1{padding:.3em 3rem;margin:-.5rem 0 0}.fancy-letter{--max-rotation: 3deg;--max-y-offset: 2px;--max-x-offset: 1.2px;--max-scale: 1.15}}@media (max-width: 480px){.name-title{padding:.5rem 1rem}.name-title h1{padding:.2em 2rem}.fancy-letter{--max-rotation: 2deg;--max-y-offset: 1.5px;--max-x-offset: .8px;--max-scale: 1.1}}.header,.masthead,.profile-content{overflow:visible!important;position:relative}.container,.row,.col{overflow:visible!important}body,html,#root,.App{overflow-x:visible!important;max-width:none!important}*{box-sizing:border-box}.header .container,.header .row,.header .col{overflow:visible!important;max-width:none!important;width:100%!important}.masthead{position:relative;overflow:visible}.section-title{font-family:var(--font-serif, "Playfair Display", "Times New Roman", Georgia, serif);font-size:clamp(1.5rem,4vw,2.5rem);font-weight:700;color:var(--color-ink-dark, #1a1a1a);margin-bottom:var(--space-lg, 2rem);padding-bottom:var(--space-xs, .5rem);border-bottom:1px solid var(--color-ink-light, #666666);display:inline-block}.timeline-section{scroll-margin-top:var(--scroll-margin-top, 80px);padding-top:var(--space-lg, 2rem);margin-bottom:var(--space-xxl, 4rem);position:relative}.timeline-header{margin-bottom:var(--space-xl, 3rem);text-align:center}.timeline-description{font-family:var(--font-body, "Source Serif Pro", Georgia, serif);font-size:1.1rem;line-height:1.7;color:var(--color-ink-medium, #333333);margin-top:var(--space-sm, 1rem);max-width:600px;margin-left:auto;margin-right:auto}.timeline-container{width:100%;min-height:700px;background:transparent;overflow:visible;margin-bottom:var(--space-lg, 2rem);padding:var(--space-md, 1.5rem);border-radius:8px;position:relative}.timeline-visualization{height:700px;width:100%;background:var(--color-paper, #fcfaf7);border:1px solid var(--color-ink-light, #666666);border-radius:4px;box-shadow:0 2px 8px #0000000d}.vis-timeline .vis-item .vis-item-content{font-family:var(--font-sans, "IBM Plex Sans", -apple-system, system-ui, sans-serif)!important;font-size:13px!important;font-weight:500!important;padding:4px 8px!important;line-height:1.4!important;color:var(--color-ink-dark, #1a1a1a)!important;border-radius:3px!important;background-color:#8b00001a!important}.vis-timeline .vis-labelset .vis-label{font-family:var(--font-serif, "Playfair Display", "Times New Roman", Georgia, serif)!important;font-size:14px!important;font-weight:600!important;color:var(--color-ink-dark, #1a1a1a)!important;padding:8px 12px!important}.vis-timeline .vis-time-axis .vis-text{font-family:var(--font-sans, "IBM Plex Sans", -apple-system, system-ui, sans-serif)!important;font-size:11px!important;color:var(--color-ink-medium, #333333)!important}.vis-timeline .vis-current-time{background-color:var(--color-accent, #8b0000)!important;width:2px!important}.vis-timeline .vis-item:hover .vis-item-content{transform:translateY(-1px)!important;box-shadow:0 2px 4px #0000001a!important;transition:all .2s ease!important}.vis-timeline .vis-item .vis-item-content,.vis-timeline .vis-item,.vis-timeline .vis-item.vis-range,.vis-timeline .vis-item.vis-box,.timeline-visualization .vis-timeline .vis-item .vis-item-content,.timeline-visualization .vis-timeline .vis-item,.timeline-container .timeline-visualization .vis-timeline .vis-item .vis-item-content,.vis-timeline .vis-item[data-group=experience] .vis-item-content,.vis-timeline .vis-item[data-group=research] .vis-item-content,.vis-timeline .vis-item[data-group=projects] .vis-item-content,.vis-timeline .vis-item[data-group=education] .vis-item-content{background-color:#8b00001a!important}.vis-timeline .vis-item:hover .vis-item-content,.vis-timeline .vis-item[data-group=experience]:hover .vis-item-content,.vis-timeline .vis-item[data-group=research]:hover .vis-item-content,.vis-timeline .vis-item[data-group=projects]:hover .vis-item-content,.vis-timeline .vis-item[data-group=education]:hover .vis-item-content{background-color:#8b000026!important}.vis-timeline .vis-item.vis-dot,.vis-timeline .vis-item.vis-point{display:none!important}.vis-timeline .vis-item:not(.vis-range):not(.vis-box):not([data-group]){display:none!important}.loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--color-ink-medium, #333333);font-family:var(--font-serif, "Playfair Display", "Times New Roman", Georgia, serif);font-size:1.2rem}@media (max-width: 768px){.timeline-container{min-height:500px;padding:var(--space-sm, 1rem)}.timeline-visualization{height:500px}.timeline-description{font-size:1rem;padding:0 var(--space-sm, 1rem)}.vis-timeline .vis-item .vis-item-content{font-size:11px!important;padding:3px 6px!important}.vis-timeline .vis-labelset .vis-label{font-size:12px!important;padding:6px 8px!important}}@media (max-width: 480px){.timeline-section{padding-top:var(--space-md, 1.5rem);margin-bottom:var(--space-xl, 3rem)}.timeline-header{margin-bottom:var(--space-lg, 2rem)}.timeline-container{min-height:450px;padding:var(--space-xs, .5rem)}.timeline-visualization{height:450px}}.portfolio-toc-container{position:relative;background:transparent;border:none;padding:0;margin:0;box-shadow:none;width:100%;max-width:100%;box-sizing:border-box;font-family:var(--font-serif, "Georgia", serif);line-height:1.45;color:var(--color-ink-dark, #2c3e50)}.portfolio-toc-header{text-align:left;margin-bottom:var(--space-xs, .5rem);position:relative;width:100%;padding-bottom:var(--space-xs, .5rem);border-bottom:1px dotted var(--color-ink-light, rgba(0, 0, 0, .1))}.portfolio-journal-meta{display:flex;justify-content:space-between;font-family:var(--font-mono, "Courier New", monospace);text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.12em;font-size:.75rem;color:var(--color-ink-medium, rgba(0, 0, 0, .6));margin-bottom:var(--space-xs, .5rem)}.portfolio-toc-title{font-family:var(--font-serif, "Georgia", serif);font-size:1.1rem;text-align:left;margin-bottom:0;color:var(--color-ink-dark, #2c3e50);letter-spacing:.01em;font-weight:600;line-height:1.2}.portfolio-toc-subtitle{font-family:var(--font-serif, "Georgia", serif);font-style:italic;font-size:.9rem;color:var(--color-ink-medium, rgba(0, 0, 0, .6));text-align:left;margin:var(--space-xs, .5rem) 0 0;letter-spacing:.02em}.portfolio-progress-container{margin-bottom:var(--space-xs, .5rem);padding-bottom:0}.portfolio-progress-track{width:100%;height:3px;background-color:transparent;border-radius:2px;position:relative;overflow:hidden}.portfolio-progress-bar{height:100%;background:linear-gradient(90deg,var(--color-accent, #1976D2) 0%,var(--color-accent-light, #42A5F5) 100%);border-radius:2px;transition:width .15s ease-out;box-shadow:0 1px 3px #1976d24d}.portfolio-toc{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:0}.portfolio-toc li{margin:0}.portfolio-toc .research-item{margin:0;padding:0}.research-item-link{position:relative;display:grid;grid-template-columns:2rem minmax(0,1fr) auto;gap:var(--space-sm);align-items:baseline;padding:var(--space-xs) var(--space-sm);border-bottom:1px dotted rgba(0,0,0,.08);transition:all .3s cubic-bezier(.4,0,.2,1);background-color:transparent;border-left:2px solid transparent;text-decoration:none;color:inherit;cursor:pointer;overflow:hidden}.research-item-link:not(.is-active):hover{background-color:#00000004;transform:translate(2px)}.research-item-link.is-active{background-color:#00000005;border-left-color:var(--color-accent, #1976D2)}.research-item-link.is-active:hover{background-color:#00000005;border-left-color:var(--color-accent, #1976D2);transform:none}.title-block{display:flex;flex-direction:column;align-items:flex-start;min-width:0;overflow:hidden;gap:.25rem}.research-number{font-family:var(--font-mono, "Courier New", monospace);font-size:.7rem;font-weight:400;color:var(--color-ink-light, rgba(0, 0, 0, .4));text-align:right;padding-right:var(--space-xs);line-height:1.2}.research-title-text{display:inline-flex;align-items:baseline;min-width:0;font-family:var(--font-serif, "Georgia", serif);font-size:1.1rem;font-weight:600;line-height:1.2;color:var(--color-ink-dark, #2c3e50);transition:color .2s ease;text-align:left;white-space:nowrap;overflow:hidden;text-decoration:none;border:none;background:none;cursor:pointer;padding:0;margin:0}.research-item-link:hover .research-title-text{color:var(--color-accent, #1976D2)}.research-item-link.is-active .research-title-text{color:var(--color-accent, #1976D2);font-weight:700}.org-tag{display:inline-block;font-family:var(--font-mono, "Courier New", monospace);font-size:.6rem;letter-spacing:.06em;color:var(--color-ink-dark, #2c3e50);background:#0000000a;border:1px solid var(--color-ink-light, rgba(0, 0, 0, .1));padding:.15rem .4rem;border-radius:3px;text-decoration:none;transition:all .2s ease;font-weight:500}.research-item-link:hover .org-tag{color:var(--color-accent, #1976D2);border-color:var(--color-accent, #1976D2);background:#8b00000d}.research-status{font-family:var(--font-mono, "Courier New", monospace);font-size:.6rem;text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.08em;color:var(--color-ink-light, rgba(0, 0, 0, .4));white-space:nowrap;justify-self:end;text-align:right;font-weight:500}.research-item-link.is-active .research-status{color:var(--color-accent, #1976D2);font-weight:600}@media (max-width: 768px){.portfolio-toc-container{padding:clamp(var(--space-xs, .75rem),3vw,var(--space-md, 1.25rem))}.portfolio-toc-header{border-bottom:none}.portfolio-toc-title{font-size:1.3rem}.portfolio-toc-subtitle{font-size:.8rem}.research-item-link{grid-template-columns:1.5rem 1fr auto;gap:var(--space-xs, .5rem);padding:var(--space-xs) var(--space-sm)}.research-item-link .research-title-text{font-size:.95rem}.research-item-link .research-status{font-size:.55rem}}@media (max-width: 480px){.research-item-link{grid-template-columns:1rem 1fr auto;gap:var(--space-xxs, .25rem);padding:var(--space-xs) var(--space-sm)}.research-item-link .research-number{font-size:.6rem}.research-item-link .research-status{font-size:.5rem;justify-self:end}}.portfolio-toc li:last-child .research-item-link{border-bottom:none}:root{--pc-bg:rgba(0,0,0,.02);--pc-bg-light:rgba(0,0,0,.008);--pc-bg-hover:rgba(0,0,0,.015);--pc-bg-tag:rgba(0,0,0,.04);--pc-bg-hover-tag:rgba(0,0,0,.08);--pc-border:rgba(0,0,0,.06);--pc-border-light:rgba(0,0,0,.05);--pc-border-dotted:rgba(0,0,0,.08);--pc-border-hover:rgba(0,0,0,.15);--pc-shadow:rgba(0,0,0,.05);--pc-shadow-hover:rgba(0,0,0,.1);--pc-text-light:var(--color-ink-light);--pc-accent-hover:rgba(139,0,0,.05);--pc-radius-sm:2px;--pc-radius-md:3px;--pc-radius-lg:4px;--pc-fs-xs:.55rem;--pc-fs-sm:.6rem;--pc-fs-sm-alt:.65rem;--pc-fs-base:.7rem;--pc-fs-md:.75rem;--pc-fs-lg:.8rem;--pc-fs-lg-alt:.82rem;--pc-fs-xl:.85rem;--pc-fs-xxl:.9rem;--pc-fs-hero:1rem;--pc-fs-title:1.1rem;--pc-pad-xs:.06rem .2rem;--pc-pad-sm:.08rem .25rem;--pc-pad-base:.1rem .3rem;--pc-pad-md:.15rem .4rem;--pc-pad-lg:.2rem .5rem;--pc-pad-xl:.6rem .75rem;--pc-duration-fast:.2s;--pc-duration-slow:.3s;--pc-transform-hover:translateY(-1px);--pc-transform-slide:translateX(2px)}.project-card{position:relative;display:grid;grid-template-columns:2rem minmax(0,1fr) auto;gap:var(--space-sm);align-items:baseline;padding:.1rem 0;border-bottom:1px dotted rgba(0,0,0,.08);transition:all var(--pc-duration-slow) cubic-bezier(.4,0,.2,1);background-color:transparent;border-left:2px solid transparent;cursor:pointer;overflow:hidden}.project-card:hover{background-color:var(--pc-bg-hover);border-left-color:var(--color-accent);transform:var(--pc-transform-slide)}.project-card.is-active{background-color:var(--pc-bg);border-left-color:var(--color-accent)}.project-card-header{display:contents}.project-number,.project-org-tag,.project-status{font-family:var(--font-mono)}.project-number{font-size:var(--pc-fs-base);font-weight:400;color:var(--color-ink-light);text-align:right;padding-right:var(--space-xs);line-height:1.2}.project-title-block{display:flex;flex-direction:column;align-items:flex-start;min-width:0;overflow:hidden;gap:.25rem}.project-title-text{display:inline-flex;align-items:baseline;min-width:0;font-family:var(--font-serif);font-size:var(--pc-fs-title);font-weight:600;line-height:1.2;color:var(--color-ink-dark);transition:color var(--pc-duration-fast) ease;text-align:left;white-space:nowrap;overflow:hidden}.project-card:hover .project-title-text{color:var(--color-accent)}.project-title-prefix{font-weight:700;letter-spacing:-.01em}.project-org-tag{font-size:var(--pc-fs-sm);letter-spacing:.06em;color:var(--color-ink-dark);background:var(--pc-bg-tag);border:1px solid var(--pc-text-light);padding:var(--pc-pad-md);border-radius:var(--pc-radius-md);text-decoration:none;transition:all var(--pc-duration-fast) ease;font-weight:500;display:inline-block}.project-card:hover .project-org-tag{color:var(--color-accent);border-color:var(--color-accent);background:var(--pc-accent-hover)}.project-status{font-size:var(--pc-fs-sm);text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.08em;color:var(--pc-text-light);white-space:nowrap;justify-self:end;text-align:right;font-weight:500}.project-details{grid-column:1/-1;margin-top:.5rem;margin-left:2rem;margin-right:1rem;overflow:hidden;animation:slideDown var(--pc-duration-fast) cubic-bezier(.25,.46,.45,.94);min-width:0}.project-details.closing{animation:slideUp var(--pc-duration-fast) cubic-bezier(.55,.06,.68,.19)}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px);max-height:0}to{opacity:1;transform:translateY(0);max-height:200px}}@keyframes slideUp{0%{opacity:1;transform:translateY(0);max-height:200px}to{opacity:0;transform:translateY(-5px);max-height:0}}.project-details-content{display:block;padding:1rem;background:var(--pc-bg-light);border-radius:var(--pc-radius-lg);position:relative;overflow:visible;border:1px solid var(--pc-border);min-width:0}.project-visual-container{width:120px;height:160px;border-radius:var(--pc-radius-lg);overflow:hidden;background:var(--pc-bg);border:1px solid var(--pc-border-light);position:relative;float:left;margin-right:1rem;margin-bottom:.5rem;margin-top:0;shape-outside:inset(0)}.project-visual-container canvas{width:100%!important;height:100%!important;display:block}.project-visual-container:after{content:"";position:absolute;inset:0;background:linear-gradient(45deg,transparent 0%,var(--pc-shadow) 100%);pointer-events:none}.project-description{font-family:var(--font-body);font-size:var(--pc-fs-xl);line-height:1.6;color:var(--color-ink-medium);text-align:left;display:block;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;min-width:0;width:100%;overflow:hidden;margin-top:0;padding-top:0}.project-summary,.project-description-text{margin:0;font-weight:400;letter-spacing:-.01em;line-height:1.6;-webkit-user-select:text;user-select:text;cursor:text}.project-summary{margin-top:0;margin-bottom:.75rem;padding-top:0;text-indent:1.5em}.project-summary:last-of-type{margin-bottom:0}.project-metrics,.project-tech{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem 0}.project-links{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem 0;border-top:1px solid var(--pc-border-dotted)}.metrics-label,.tech-label,.links-label{font-family:var(--font-mono);font-size:var(--pc-fs-md);color:var(--color-ink-light);font-weight:500;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;margin-top:.1rem}.metrics-tags,.tech-tags,.links-container{display:flex;flex-wrap:wrap;gap:.25rem;flex:1}.metric-tag,.tech-tag{font-family:var(--font-mono);font-size:var(--pc-fs-base);color:var(--color-ink-medium);background:var(--pc-bg-tag);padding:var(--pc-pad-md);border-radius:var(--pc-radius-sm);border:1px solid var(--pc-border-dotted);font-weight:400;letter-spacing:.02em;cursor:pointer;transition:all var(--pc-duration-fast) ease;display:inline-block}.metric-tag:hover,.tech-tag:hover{color:var(--color-ink-dark);background:var(--pc-bg-hover-tag);border-color:var(--pc-border-hover);transform:var(--pc-transform-hover);box-shadow:0 1px 3px var(--pc-shadow-hover)}.metric-tag-link,.project-card .project-link{font-family:var(--font-mono)!important;font-size:.7rem;color:#1e40af!important;background:#2563eb26;padding:.2rem .5rem!important;border-radius:var(--pc-radius-md);border:1px solid rgba(37,99,235,.4)!important;border-bottom:2px solid #1e40af!important;font-weight:500;letter-spacing:.02em;text-decoration:none!important;transition:all var(--pc-duration-fast) ease;display:inline-block;cursor:pointer;box-shadow:0 1px 2px #2563eb33,0 2px 4px #2563eb1a;margin-bottom:0!important}.metric-tag-link:hover,.project-card .project-link:hover{color:#fff!important;background:#2563eb!important;border-color:#1d4ed8!important;border-bottom-color:#1e40af!important;transform:var(--pc-transform-hover);box-shadow:0 2px 4px #2563eb4d,0 4px 8px #2563eb33}@media (max-width:768px){.project-card{grid-template-columns:1.5rem 1fr auto;gap:var(--space-xs)}.project-title-text{font-size:var(--pc-fs-hero)}.project-status{font-size:var(--pc-fs-xs)}.project-details-content{display:block}.project-visual-container{width:100px;height:130px;float:left;margin-right:.75rem;margin-bottom:.5rem;margin-top:0}.project-visual-container canvas{width:100%!important;height:100%!important}.project-description{font-size:var(--pc-fs-lg);line-height:1.55}.project-metrics{gap:.5rem;display:flex;flex-wrap:wrap;align-items:center}.metrics-label{display:inline;white-space:nowrap}.metric-item{font-size:var(--pc-fs-base);min-width:0;flex:1 1 auto}.metric-tag{font-size:var(--pc-fs-sm-alt);padding:var(--pc-pad-base)}.metric-value{word-break:break-word;overflow-wrap:break-word}.tech-tag{font-size:var(--pc-fs-sm-alt);padding:var(--pc-pad-base)}}@media (max-width:480px){.project-card{grid-template-columns:1rem 1fr auto;gap:var(--space-xxs);padding:var(--space-xs) 0}.project-number{font-size:var(--pc-fs-sm)}.project-status{font-size:var(--pc-fs-xs);justify-self:end}.project-details{margin-left:1rem;margin-right:.5rem}.project-details-content{padding:.75rem;display:block}.project-visual-container{width:80px;height:100px;float:left;margin-right:.5rem;margin-bottom:.5rem;margin-top:0}.project-visual-container canvas{width:100%!important;height:100%!important}.project-description{font-size:var(--pc-fs-md);line-height:1.5}.project-metrics{gap:.3rem;display:flex;flex-wrap:wrap;align-items:center}.metrics-label{display:inline;white-space:nowrap}.metric-item{font-size:var(--pc-fs-sm-alt);min-width:0;display:inline-flex;align-items:center;gap:.1rem}.metric-tag{font-size:var(--pc-fs-sm);padding:var(--pc-pad-sm);word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:100%;display:inline-flex;align-items:center}.metric-label{font-size:var(--pc-fs-sm)}.metric-value{font-size:var(--pc-fs-base);word-break:break-word;overflow-wrap:break-word;max-width:100%;display:inline-flex;align-items:center}.tech-tag{font-size:var(--pc-fs-sm);padding:var(--pc-pad-sm)}.project-tech{flex-direction:column;gap:.25rem}}@media (max-width:320px){.project-details-content{padding:.5rem;display:block}.project-visual-container{width:60px;height:80px;float:left;margin-right:.4rem;margin-bottom:.4rem;margin-top:0}.project-visual-container canvas{width:100%!important;height:100%!important}.project-description{font-size:var(--pc-fs-md);line-height:1.4}.metrics-label{display:inline;white-space:nowrap}.metric-item{font-size:var(--pc-fs-sm)}.metric-tag{font-size:var(--pc-fs-xs);padding:var(--pc-pad-xs);word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:100%;display:inline-flex;align-items:center}.metric-label{font-size:var(--pc-fs-xs)}.metric-value{font-size:var(--pc-fs-sm-alt);display:inline-flex;align-items:center}.tech-tag{font-size:var(--pc-fs-xs);padding:var(--pc-pad-xs)}.research-note-title,.research-note-content p{font-size:var(--pc-fs-md)}}.research-notes{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--pc-border-dotted);clear:both}.research-notes-title,.research-note-title{font-family:var(--font-mono);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.research-notes-title{font-size:var(--pc-fs-md);color:var(--pc-text-light);margin:0 0 .75rem}.research-notes-list{display:flex;flex-direction:column;gap:.25rem}.research-note-item,.research-note-header{border:1px solid var(--pc-border-dotted);border-radius:var(--pc-radius-lg);background:#00000003;transition:all var(--pc-duration-fast) ease}.research-note-item{overflow:hidden}.research-note-item:hover{border-color:var(--color-accent);background:#8b000005}.research-note-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--pc-pad-xl);border:none;cursor:pointer;text-align:left;font-family:var(--font-body)}.research-note-header:hover{background:var(--pc-bg)}.research-note-title{font-size:var(--pc-fs-lg);font-weight:600;color:var(--color-ink-dark);letter-spacing:-.01em;flex:1}.research-note-arrow{font-size:var(--pc-fs-xxl);color:var(--color-accent);transition:transform var(--pc-duration-slow) ease;margin-left:.5rem;flex-shrink:0}.research-note-arrow.expanded{transform:rotate(180deg)}.research-note-content{padding:0 var(--pc-pad-xl);animation:slideDown var(--pc-duration-slow) ease-out;overflow:hidden}.research-note-content.closing{animation:slideUp var(--pc-duration-slow) ease-in}.research-note-content p{margin:0;font-size:var(--pc-fs-lg);line-height:1.6;color:var(--color-ink-medium);text-indent:0}.research-note-content strong{font-size:var(--pc-fs-lg-alt);font-weight:600;color:var(--color-ink-dark)}.research-note-content h1,.research-note-content h2,.research-note-content h3,.research-note-content h4,.research-note-content h5,.research-note-content h6{font-size:var(--pc-fs-xl);font-weight:600;color:var(--color-ink-dark);margin:.5rem 0 .3rem;line-height:1.4}.research-note-content ul,.research-note-content ol{margin:.5rem 0;padding-left:1.5rem;font-size:var(--pc-fs-lg);line-height:1.6;color:var(--color-ink-medium)}.research-note-content li{margin:.25rem 0}.research-note-content li strong{font-size:var(--pc-fs-lg);font-weight:600}.research-note-content code{font-family:var(--font-mono);font-size:var(--pc-fs-md);background:var(--pc-shadow);padding:var(--pc-pad-base);border-radius:var(--pc-radius-sm)}.paper-actions{display:flex;gap:var(--space-md);margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--pc-border-light)}.latex-view-btn{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background:var(--color-accent);color:#fff;border:none;border-radius:var(--pc-radius-lg);font-family:var(--font-sans);font-size:var(--pc-fs-xl);font-weight:500;cursor:pointer;transition:all var(--pc-duration-fast) ease;text-decoration:none}.latex-view-btn:hover{background:#0056b3;transform:var(--pc-transform-hover);box-shadow:0 2px 8px #0056b34d}.latex-view-btn:active{transform:translateY(0);box-shadow:0 1px 4px #0056b34d}.sketch-expand-button{position:absolute;top:8px;right:8px;background:#0009;border:none;border-radius:50%;padding:6px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;opacity:.7;transition:opacity .2s ease,background-color .2s ease}.sketch-expand-button:hover{opacity:1;background:#000c}.sketch-expand-button:active{transform:scale(.95)}.sketch-image-wrapper{position:relative;width:100%;height:100%;overflow:hidden}.sketch-image-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;filter:blur(10px);transform:scale(1.1);opacity:.6;transition:opacity .3s ease}.sketch-image-wrapper--loaded .sketch-image-placeholder{opacity:0}.sketch-image--loading{opacity:0;transition:opacity .4s ease}.sketch-image--loaded{opacity:1}.sketch-container{position:relative;display:block;background:transparent;border:none;cursor:pointer;width:100%;height:auto;transition:box-shadow .2s ease}.sketch-container--hovered .sketch-image{box-shadow:0 8px 30px #0000001f}.sketch-image{width:100%;height:auto;object-fit:contain;object-position:center;display:block;border-radius:8px;box-shadow:0 4px 20px #00000014;margin:0}.sketch-content{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;padding:2px 0 8px;text-align:center;background:linear-gradient(180deg,#fffc,#fffffff2);border-radius:0 0 8px 8px;margin-top:-8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sketch-title{font-size:16px;font-weight:600;color:#2c3e50;margin:0 0 6px;letter-spacing:-.01em}.sketch-description{font-size:13px;color:#7f8c8d;margin:0;line-height:1.4;max-width:280px}.sketch-container--card{width:100%;aspect-ratio:1 / 1;display:flex;flex-direction:column;background:#fff;border:1px solid rgba(26,26,26,.08);margin:0;position:relative;box-sizing:border-box;overflow:hidden;border-radius:12px;box-shadow:0 2px 8px #1a1a1a0d;transition:all .3s cubic-bezier(.4,0,.2,1);will-change:transform,box-shadow;min-width:0;max-width:100%}.sketch-container--card:hover{background-color:#00000004;border-color:var(--color-accent, #8b0000);box-shadow:0 4px 16px #1a1a1a1a;transform:translateY(-2px)}.sketch-container--card .sketch-image{width:100%;height:100%;object-fit:cover;border-radius:12px;box-shadow:none;transition:none;margin:0;box-sizing:border-box;flex-shrink:0;background:#fff}.sketch-container--card.sketch-container--hovered .sketch-image{opacity:1}.sketch-container--card .sketch-content{padding:12px 8px 8px!important;text-align:center;background:var(--color-paper, #fcfaf7);border-radius:0 0 12px 12px;margin-top:0!important;position:absolute;bottom:0;left:0;right:0;z-index:1;width:100%;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;opacity:0;transform:translateY(100%);transition:opacity .25s ease,transform .25s ease;pointer-events:none;border-top:1px solid rgba(26,26,26,.08);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.sketch-container--card.sketch-container--hovered .sketch-content{opacity:1;transform:translateY(0);pointer-events:auto}.sketch-container--card .sketch-title{font-size:11px!important;font-weight:500!important;color:var(--color-ink-dark, #1a1a1a)!important;margin:0 0 2px!important;letter-spacing:.02em;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;line-height:1.3;flex-shrink:0;font-family:var(--font-serif, "Playfair Display", serif);text-transform:none}.sketch-container--card .sketch-description{font-size:10px;color:var(--color-ink-medium, #666666);line-height:1.4;margin:0;font-family:var(--font-body, "Source Serif Pro", serif);font-style:italic;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;flex:1;display:flex;align-items:center;justify-content:center}.sketch-container--card .sketch-expand-button{display:none}.sketch-container--featured{aspect-ratio:1 / 1;position:relative}.sketch-container--featured .sketch-image{object-fit:cover}.sketch-container--featured:before{display:none}.sketch-inline-expanded{background:var(--color-paper, #fcfaf7);border:1px solid rgba(26,26,26,.1);border-radius:12px;box-shadow:0 4px 20px #00000014,0 0 0 1px #00000005;overflow:hidden;animation:slideDown .3s cubic-bezier(.4,0,.2,1);font-family:var(--font-serif, "Playfair Display", serif);color:var(--color-ink-dark, #1a1a1a);width:calc(100% - 32px);max-width:min(calc(100vw - 80px),1600px);position:relative;z-index:10;box-sizing:border-box;margin:16px auto;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes zoomIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.sketch-inline-expanded__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(26,26,26,.1);background:var(--color-paper, #fcfaf7);position:relative;z-index:2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.sketch-inline-expanded__header-content{display:flex;align-items:center;gap:16px;flex:1}.sketch-inline-expanded__counter{font-size:.75rem;font-family:var(--font-mono, "IBM Plex Mono", monospace);color:var(--color-ink-light, #666666);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.sketch-inline-expanded__title{font-size:18px;font-weight:600;font-family:var(--font-serif, "Playfair Display", serif);color:var(--color-ink-dark, #1a1a1a);margin:0;flex:1}.sketch-inline-expanded__close{background:none;border:none;padding:6px;border-radius:6px;color:var(--color-ink-light, #666666);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.sketch-inline-expanded__close:before{content:"";position:absolute;inset:0;border-radius:6px;background:#1a1a1a00;transition:background .2s cubic-bezier(.4,0,.2,1)}.sketch-inline-expanded__close:hover:before{background:#1a1a1a0d}.sketch-inline-expanded__close:hover{color:var(--color-ink-dark, #1a1a1a);transform:scale(1.05)}.sketch-inline-expanded__close:active{transform:scale(.95)}.sketch-inline-expanded__content{display:flex;flex-direction:column;gap:20px;padding:20px;max-height:80vh;overflow-y:auto;box-sizing:border-box;-ms-overflow-style:none;scrollbar-width:none}.sketch-inline-expanded__content::-webkit-scrollbar{display:none;width:0}.sketch-inline-expanded__image-section{width:100%;display:flex;flex-direction:column;min-width:0}.sketch-inline-expanded__image-container{display:flex;justify-content:center;align-items:center;background:var(--color-paper, #fcfaf7);border-radius:12px;padding:40px;width:100%;max-height:85vh;min-height:500px;box-sizing:border-box;position:relative;overflow:hidden;border:1px solid rgba(26,26,26,.08);transition:none;box-shadow:inset 0 1px 2px #00000005}.sketch-inline-expanded__image-container--zoomed{padding:40px;border-radius:12px;border-color:#8b000026;box-shadow:inset 0 1px 3px #0000000a,0 0 0 1px #8b00000d;transition:none}.sketch-transform-wrapper{width:100%;height:100%;display:flex;justify-content:center;align-items:center;border-radius:12px;overflow:hidden;position:relative}.sketch-transform-content{display:flex;justify-content:center;align-items:center;border-radius:12px;overflow:hidden;will-change:transform}.sketch-inline-expanded__image-container .sketch-image{border-radius:8px;box-shadow:0 4px 24px #0000001f,0 0 0 1px #0000000a;animation:none;-webkit-user-select:none;user-select:none;image-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0);will-change:transform;transition:opacity .3s ease-out;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0)}.sketch-inline-expanded__image-container .sketch-image:hover{box-shadow:0 6px 32px #00000029,0 0 0 1px #0000000f;transition:none}.sketch-image--zoomed:active{cursor:grabbing!important}.sketch-inline-expanded__image-container--zoomed .sketch-transform-wrapper,.sketch-inline-expanded__image-container--zoomed .sketch-transform-content{border-radius:12px;overflow:hidden;position:relative}.sketch-inline-expanded__image-container--zoomed .sketch-image{border-radius:8px;animation:none}.sketch-inline-expanded__image-container--zoomed:before{content:"";position:absolute;inset:0;border-radius:12px;pointer-events:none;box-shadow:inset 0 0 0 1px #8b00001a;z-index:1}.sketch-inline-expanded__details-section{width:100%;display:flex;flex-direction:column;gap:16px;overflow-y:visible}.sketch-inline-expanded__description{padding:20px;background:#fcfaf7cc;border-radius:8px;border-left:4px solid var(--color-accent, #8b0000);transition:all .2s ease}.sketch-inline-expanded__description:hover{background:#fcfaf7f2;box-shadow:0 2px 8px #0000000a}.sketch-inline-expanded__description p{margin:0;color:var(--color-ink-dark, #1a1a1a);line-height:1.6;font-size:15px;font-family:var(--font-body, "Source Serif Pro", serif)}.sketch-inline-expanded__metadata{display:grid;gap:18px;padding:24px;background:#fcfaf7cc;border-radius:8px;border:1px solid rgba(26,26,26,.1);transition:all .2s ease}.sketch-inline-expanded__metadata:hover{background:#fcfaf7f2;box-shadow:0 2px 8px #0000000a}.sketch-inline-expanded__metadata-item{display:flex;align-items:flex-start;gap:12px}.sketch-inline-expanded__metadata-label{font-weight:600;font-family:var(--font-serif, "Playfair Display", serif);color:var(--color-ink-dark, #1a1a1a);min-width:90px;font-size:15px;flex-shrink:0}.sketch-inline-expanded__metadata-value{color:var(--color-ink-medium, #333333);font-size:15px;font-family:var(--font-body, "Source Serif Pro", serif);line-height:1.5}.sketch-inline-expanded__tags{display:flex;flex-wrap:wrap;gap:8px}.sketch-inline-expanded__tag{background:#8b00001a;color:var(--color-accent, #8b0000);padding:6px 12px;border-radius:4px;font-size:13px;font-weight:500;font-family:var(--font-body, "Source Serif Pro", serif)}.sketch-inline-expanded__nav{position:absolute;top:50%;transform:translateY(-50%);background:#fcfaf7f2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--color-ink-light, rgba(0, 0, 0, .1));border-radius:4px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3;transition:all .2s cubic-bezier(.4,0,.2,1);color:var(--color-ink-medium, #333333);box-shadow:0 2px 8px #00000014;padding:0;font-family:var(--font-mono, "IBM Plex Mono", monospace)}.sketch-inline-expanded__nav:hover{background:#fcfaf7;border-color:var(--color-accent, #8b0000);color:var(--color-accent, #8b0000);box-shadow:0 4px 12px #8b000026;transform:translateY(-50%) scale(1.05)}.sketch-inline-expanded__nav:active{transform:translateY(-50%) scale(.95);background:#8b00001a}.sketch-inline-expanded__nav svg{width:16px;height:16px;stroke-width:2}.sketch-inline-expanded__nav--prev{left:8px}.sketch-inline-expanded__nav--next{right:8px}.sketch-inline-expanded__nav:disabled,.sketch-inline-expanded__nav:disabled:hover{opacity:.3;cursor:not-allowed;transform:translateY(-50%)}@media (max-width: 768px){.sketch-inline-expanded{width:calc(100% - 16px);max-width:calc(100vw - 40px);margin:8px auto}.sketch-inline-expanded__content{flex-direction:column;gap:16px;padding:16px}.sketch-inline-expanded__details-section{flex:none;order:-1}.sketch-inline-expanded__image-container{min-height:250px;padding:20px}.sketch-inline-expanded__image-container .sketch-image{max-height:60vh}.sketch-inline-expanded__nav{width:28px;height:28px}.sketch-inline-expanded__nav svg{width:14px;height:14px}.sketch-inline-expanded__nav--prev{left:6px}.sketch-inline-expanded__nav--next{right:6px}}.sketch-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;text-align:center;min-height:120px}.sketch-error__message{color:#dc2626;font-size:14px;font-weight:500;margin:0 0 12px}.sketch-error__retry{background:#dc2626;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.sketch-error__retry:hover{background:#b91c1c}.sketch-error__retry:focus{outline:2px solid #dc2626;outline-offset:2px}.sketch-gallery{width:100%;padding:0 8px;position:relative;overflow:visible;height:auto;max-height:none;display:flex;flex-direction:column;box-sizing:border-box;background-color:var(--color-paper, #fcfaf7);font-family:var(--font-serif, "Playfair Display", serif);min-width:0}.sketch-gallery:has(.sketch-inline-expanded){overflow:visible;width:100%;max-width:100%;padding:0;min-width:0}.sketch-gallery__controls{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;align-items:flex-start}.sketch-gallery__search{margin-bottom:0;display:flex;justify-content:flex-start}.sketch-gallery__search-input{width:auto;min-width:200px;max-width:300px;padding:6px 10px;border:1px solid var(--color-ink-light, rgba(0, 0, 0, .1));border-radius:2px;font-size:13px;font-family:var(--font-serif, "Playfair Display", serif);background-color:transparent;color:var(--color-ink-dark, #1a1a1a);outline:none;transition:all .2s ease}.sketch-gallery__search-input:focus{border-color:var(--color-accent, #8b0000);border-left-width:2px;background-color:#00000003}.sketch-gallery__search-input::placeholder{color:var(--color-ink-light, #666666);font-style:italic}.sketch-gallery__tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:0;padding-top:0}.sketch-gallery__tag{padding:3px 10px;border:1px solid var(--color-ink-light, rgba(0, 0, 0, .1));background:transparent;color:var(--color-ink-medium, #333333);font-family:var(--font-mono, "IBM Plex Mono", monospace);font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;border-radius:2px;cursor:pointer;transition:all .2s ease}.sketch-gallery__tag:hover{border-color:var(--color-accent, #8b0000);color:var(--color-accent, #8b0000);background-color:#8b00000d}.sketch-gallery__tag--active{border-color:var(--color-accent, #8b0000);background-color:var(--color-accent, #8b0000);color:#fff}.sketch-gallery__tag--active:hover{background-color:#8b0000d9;border-color:#8b0000d9}.sketch-gallery__grid-control{margin-bottom:0;display:flex;justify-content:flex-start;align-items:center;gap:10px;padding:0;background:transparent;border-radius:0;border:none;box-shadow:none}.sketch-gallery__grid-label{font-size:.65rem;font-weight:500;font-family:var(--font-mono, "IBM Plex Mono", monospace);text-transform:uppercase;letter-spacing:.08em;color:var(--color-ink-light, #666666);min-width:auto;text-align:left}.sketch-gallery__grid-slider{width:120px;height:2px;border-radius:0;background:var(--color-ink-light, rgba(0, 0, 0, .1));outline:none;-webkit-appearance:none;appearance:none;transition:background .2s ease}.sketch-gallery__grid-slider:hover{background:var(--color-ink-medium, rgba(0, 0, 0, .2))}.sketch-gallery__grid-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:2px;background:var(--color-accent, #8b0000);cursor:pointer;border:1px solid var(--color-accent, #8b0000);box-shadow:none;transition:all .2s ease}.sketch-gallery__grid-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.sketch-gallery__grid-slider::-moz-range-thumb{width:14px;height:14px;border-radius:2px;background:var(--color-accent, #8b0000);cursor:pointer;border:1px solid var(--color-accent, #8b0000);box-shadow:none;transition:all .2s ease}.sketch-gallery__grid-slider::-moz-range-thumb:hover{transform:scale(1.2)}.sketch-gallery__content{width:100%;max-width:100%;height:auto;overflow:visible;border-radius:12px;background:transparent;position:relative;box-sizing:border-box;min-width:0;-ms-overflow-style:none;scrollbar-width:none}.sketch-gallery__content::-webkit-scrollbar{display:none;width:0}.sketch-gallery__grid{display:grid;gap:24px!important;margin-bottom:16px;align-items:stretch;justify-items:stretch;width:100%;max-width:100%;padding:0;box-sizing:border-box;overflow:visible;min-height:min-content}.sketch-gallery--grid .sketch-gallery__grid{display:grid;gap:24px;margin-bottom:16px;align-items:stretch;justify-items:stretch;width:100%;max-width:100%;padding:0;box-sizing:border-box;overflow:visible;min-height:min-content}.sketch-gallery__masonry{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;grid-auto-rows:10px;width:100%;max-width:100%;padding:0;box-sizing:border-box;min-width:0;overflow:visible}.sketch-gallery__masonry .sketch-container--card{grid-row-end:span 40;aspect-ratio:1}.sketch-gallery--grid .sketch-container--featured{grid-column:span 2;grid-row:span 2}.sketch-gallery__masonry .sketch-container--featured{grid-column:span 2;grid-row-end:span 80}.sketch-gallery__pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:16px;padding:16px}.sketch-gallery__pagination-button{padding:8px 16px;background:var(--color-accent, #8b0000);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-family:var(--font-serif, "Playfair Display", serif);transition:background-color .2s ease}.sketch-gallery__pagination-button:hover:not(:disabled){background:#8b0000d9}.sketch-gallery__pagination-button:disabled{background:var(--color-ink-light, #666666);cursor:not-allowed}.sketch-gallery__pagination-info{font-size:14px;font-family:var(--font-serif, "Playfair Display", serif);color:var(--color-ink-medium, #333333);font-weight:500}@media (max-width: 480px){.sketch-gallery--grid .sketch-gallery__grid{grid-template-columns:repeat(2,1fr)!important;justify-items:stretch;gap:16px}.sketch-gallery__search-input{font-size:14px;padding:10px 14px}.sketch-gallery__grid-control{flex-direction:column;gap:12px;padding:12px}.sketch-gallery__grid-slider{width:150px}.sketch-gallery__pagination{flex-direction:column;gap:12px}.sketch-gallery__content{height:250px}}.volume-selector{display:flex;align-items:center;gap:4px;margin-top:4px}.volume-selector__label{display:none}.volume-selector__buttons{display:flex;gap:2px;flex-wrap:nowrap}.volume-selector__button{display:flex;align-items:center;justify-content:center;gap:3px;padding:2px 6px;background:transparent;border:none;border-bottom:1px solid transparent;border-radius:0;color:var(--color-ink-light);font-family:var(--font-mono, "IBM Plex Mono", monospace);font-size:.65rem;cursor:pointer;transition:all .15s ease;white-space:nowrap;letter-spacing:.05em}.volume-selector__button:hover{color:var(--color-ink-medium);border-bottom-color:var(--color-ink-light)}.volume-selector__button--active{color:var(--color-accent);border-bottom-color:var(--color-accent);font-weight:600}.volume-selector__roman{font-weight:700;font-size:.65rem}.volume-selector__text{font-size:.6rem;text-transform:lowercase;font-weight:400}.volume-selector__button--active .volume-selector__text{font-weight:500}.journal-meta__volume-section{display:flex;flex-direction:column;align-items:flex-end;gap:2px}@media (max-width: 768px){.volume-selector__text{display:none}.volume-selector__button{padding:2px 4px}}.model-container{margin-top:var(--space-sm);margin-bottom:var(--space-lg);width:100%;position:relative;overflow:hidden}.react-canvas{width:100%!important;height:50vh!important;display:block}@media (max-width: 480px){.model-container{width:100%;max-width:100%;overflow:hidden}.react-canvas{width:100%!important;height:40vh!important}.model-container canvas{width:100%!important;max-width:100%!important}}.robo-hand-container{max-width:200px;width:200px;margin-left:auto;margin-right:auto;margin-top:0;margin-bottom:var(--space-md)}.robo-hand-canvas{width:100%!important;height:auto!important;aspect-ratio:1 / 1}@media (max-width: 768px){.robo-hand-container{max-width:100%;width:100%}.robo-hand-canvas{height:auto!important;aspect-ratio:1 / 1}}.dossier{display:flex;justify-content:space-between;align-items:start;gap:var(--space-lg)}.dossier-main{display:grid;grid-template-columns:auto auto;justify-content:space-between;align-items:center;gap:var(--space-md)}.dossier-role{margin:calc(var(--space-xs)) 0 0;font-family:var(--font-serif);font-weight:700;font-size:clamp(1.35rem,2.2vw,1.9rem);line-height:1.25;letter-spacing:.003em;color:var(--color-ink-dark);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;max-width:56ch;border-bottom:none!important;padding-bottom:0!important}.dossier-role .role-lead{font-style:italic;display:block}.dossier-role .role-trail{text-decoration:none!important;border:none!important;border-bottom:none!important;font-variant-caps:small-caps;letter-spacing:.04em;font-weight:650;display:block;margin-top:.1rem}@media (max-width: 1024px){.dossier-main{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.dossier-role{order:2}.dossier-contact{order:1}}@media (max-width: 480px){.dossier-main{gap:var(--space-xs)}}@media (min-width: 1200px){.dossier-role{margin-top:.25rem;margin-bottom:.5rem}}.dossier-intro{margin:0;font-family:var(--font-serif);font-size:1.05rem;line-height:1.7;color:var(--color-ink-dark)}.cosmic-opener{font-style:italic;margin-bottom:var(--space-xl);font-size:1rem;line-height:1.7;color:var(--color-ink-medium);text-align:center;padding-bottom:var(--space-lg)}.work-section{margin-bottom:calc(var(--space-xl) * 1.5)}.section-header{font-family:"Old English Text MT","UnifrakturMaguntia",var(--font-serif);font-size:1.8rem;font-weight:400;color:var(--color-ink-dark);text-align:center;margin:0 0 var(--space-lg);position:relative}.work-item{margin-bottom:var(--space-md);text-align:center}.work-item.primary{border:2px solid var(--color-ink-dark);padding:var(--space-lg) var(--space-xl);margin-bottom:var(--space-xl);background:#00000005}.work-item h4{font-family:var(--font-serif);font-size:1.2rem;font-weight:600;color:var(--color-ink-dark);margin:0 0 var(--space-xs)}.work-item p{margin:0;font-size:1rem;line-height:1.6;color:var(--color-ink-medium)}.work-grid{display:grid;grid-template-columns:1fr;gap:var(--space-md);margin-bottom:var(--space-lg)}.achievements{padding-top:var(--space-lg);text-align:center}.achievements p{margin:0;font-size:.95rem;line-height:1.6;color:var(--color-ink-medium);font-style:italic}@media (min-width: 768px){.work-grid{grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}}.dossier-gutter{position:relative;padding-top:var(--space-xs)}.footnote-link{display:inline-block;text-decoration:none;color:var(--color-ink-medium);font-family:var(--font-serif);font-size:.84rem;line-height:1.5;border-left:1px solid var(--color-ink-light);padding-left:var(--space-sm);transition:color .16s ease,transform .16s ease}.footnote-link:hover,.footnote-link:focus{color:var(--color-ink-dark);transform:translate(1px)}@media (max-width: 1024px){.dossier{flex-direction:column;align-items:center}.dossier-gutter{margin-top:0;margin-bottom:0}}@media (max-width: 768px){.dossier-gutter{margin-top:0;margin-bottom:0}.footnote-link{font-size:.75rem;padding-left:var(--space-xs)}}@media (max-width: 480px){.dossier-gutter{display:none}}.header{text-align:center;margin-bottom:0;max-width:1400px;width:100%;margin-left:auto;margin-right:auto}.masthead-title{font-family:"Old English Text MT","UnifrakturMaguntia",var(--font-serif);font-size:clamp(2rem,6vw,3.5rem);font-weight:400;color:var(--color-ink-dark);margin:0 0 var(--space-sm);letter-spacing:.02em;line-height:1.2}.date-line{font-family:var(--font-serif);font-size:.9rem;color:var(--color-ink-light);font-style:italic;margin-bottom:var(--space-md);border-bottom:1px solid var(--color-ink-light);padding-bottom:var(--space-xs);width:fit-content;margin-left:auto;margin-right:auto}.masthead .profile-image-container{text-align:center;margin-bottom:0}@media (min-width: 769px){.masthead .profile-image-container{margin-bottom:0}}.masthead .profile-image{width:550px!important;height:550px!important;border-radius:50%;object-fit:cover;border:3px solid var(--color-ink-light);transition:transform .3s ease}.masthead .profile-image:hover{transform:scale(1.05)}@media (max-width: 768px){.masthead .profile-image{width:280px!important;height:280px!important}.masthead .profile-image-container{margin-bottom:0}}@media (max-width: 480px){.header{width:100%;padding-left:.5rem;padding-right:.5rem}.masthead-title{font-size:2rem}.masthead .profile-image{width:250px!important;height:250px!important}}@media (max-width: 360px){.masthead .profile-image{width:220px!important;height:220px!important}}.personal-introduction{grid-column:3 / 11;margin:var(--space-xs) auto var(--space-xl);max-width:800px;padding:var(--space-md);border-left:2px solid var(--color-ink-light);border-right:2px solid var(--color-ink-light);position:relative}.personal-introduction:before,.personal-introduction:after{content:"";position:absolute;left:0;right:0;height:1px;background:repeating-linear-gradient(90deg,var(--color-ink-light),var(--color-ink-light) 3px,transparent 3px,transparent 6px)}.personal-introduction:before{top:0}.personal-introduction:after{bottom:0}.personal-introduction p{font-family:var(--font-serif);font-size:1.1rem;line-height:1.7;color:var(--color-ink-dark);text-align:center}@media (max-width: 768px){.personal-introduction{grid-column:2 / 12}}@media (max-width: 480px){.personal-introduction{grid-column:1 / -1;padding:var(--space-sm);margin:var(--space-sm) auto;width:90%;max-width:100%}}.philosophy-section{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-md);padding:var(--space-md) var(--space-lg);margin:var(--space-md) 0 var(--space-xl);position:relative;overflow:visible}.philosophy-section:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:70%;height:1px;background:repeating-linear-gradient(90deg,var(--color-ink-light),var(--color-ink-light) 2px,transparent 2px,transparent 6px)}.philosophy-fragment{padding:var(--space-md);position:relative;transition:all .5s ease}.fragment-primary{grid-column:1 / 8;transform:perspective(1000px) rotateY(2deg);background:linear-gradient(135deg,#fcfaf7b3,#fcfaf7e6);border-left:3px solid var(--color-ink-dark);box-shadow:-5px 5px #1a1a1a0d}.fragment-secondary{grid-column:6 / 13;margin-top:4rem;z-index:2}.fragment-diagonal{transform:perspective(1000px) rotate(-1deg) rotateX(1deg);padding:2rem;background:repeating-linear-gradient(45deg,#fcfaf7e6,#fcfaf7e6 10px,#f0eeebe6 10px 20px);border-right:3px solid var(--color-ink-dark);box-shadow:5px 5px #1a1a1a0d}.fragment-tertiary{grid-column:2 / 12;margin-top:3rem;padding:2rem;background:#fcfaf7e6;border-top:3px solid var(--color-ink-dark);border-bottom:3px solid var(--color-ink-dark);transform:perspective(1000px) rotateX(1deg);box-shadow:0 8px 16px #1a1a1a0d;z-index:3}.fragment-text{font-family:var(--font-serif);font-size:1.1rem;line-height:1.9;color:var(--color-ink-medium);margin:0;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}.fragment-highlight{background:linear-gradient(to bottom,transparent 40%,rgba(139,0,0,.2) 40%,rgba(139,0,0,.2) 60%,transparent 60%);padding:0 .2em;font-style:italic}.martian-text{font-family:var(--font-mono);letter-spacing:.05em;background:linear-gradient(to bottom,transparent 40%,rgba(0,100,0,.2) 40%,rgba(0,100,0,.2) 60%,transparent 60%)}.vertical-text{writing-mode:vertical-rl;display:inline-block;text-orientation:mixed;margin:0 .2em;transform:rotate(180deg);line-height:1;font-weight:700;position:relative}.vertical-text:before,.vertical-text:after{content:"";position:absolute;top:0;width:2px;background-color:var(--color-ink-dark);transform-origin:top center}.vertical-text:before{left:25%;height:1.8em;transform:rotate(180deg) rotate(25deg)}.vertical-text:after{right:25%;height:1.8em;transform:rotate(180deg) rotate(-25deg)}.fragment-disrupt{display:inline-block;transform:skew(-10deg,2deg);font-weight:700}.glitch-text{position:relative;display:inline-block;font-weight:700;animation:glitch 3s infinite alternate}@keyframes glitch{0%,90%,to{transform:translate(0);text-shadow:none}91%{transform:translate(-2px,-1px);text-shadow:1px 1px 0 rgba(139,0,0,.5)}92%{transform:translate(2px,1px);text-shadow:-1px -1px 0 rgba(0,0,100,.5)}93%{transform:translate(0);text-shadow:none}94%{transform:translate(1px,-1px);text-shadow:-1px 1px 0 rgba(100,0,100,.5)}95%{transform:translate(0);text-shadow:none}}.fragment-reverse{unicode-bidi:bidi-override;direction:rtl;display:inline-block;font-style:italic;background-color:#fcfaf7b3;padding:0 .3em}.fragment-scatter{display:inline-block;letter-spacing:.15em;font-style:italic}.fragment-float{display:inline-block;animation:float 4s ease-in-out infinite;font-weight:700}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.fragment-rotate{display:inline-block;transform:rotate(-3deg);font-style:italic}.fragment-number{font-family:var(--font-mono);font-weight:700;letter-spacing:.1em}.fragment-disintegrate{background-image:linear-gradient(to right,var(--color-ink-dark),var(--color-ink-medium));background-clip:text;-webkit-background-clip:text;color:transparent;position:relative;font-style:italic}.fragment-strike{text-decoration:line-through;text-decoration-color:var(--color-accent);text-decoration-thickness:2px;font-weight:700}.fragment-split{display:inline-block;font-family:var(--font-mono);font-weight:700;position:relative;overflow:hidden;font-size:.9em}.fragment-cascade{display:block;text-indent:1rem;position:relative;margin-bottom:.5rem}.fragment-expand{display:inline-block;letter-spacing:.2em;font-weight:700;text-transform:uppercase;font-size:.9em}.fragment-pulse{display:inline-block;animation:pulse 3s infinite;font-style:italic}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.new-renaissance{font-family:"Old English Text MT","UnifrakturMaguntia",var(--font-serif);font-weight:400;letter-spacing:.05em;font-size:1.2em;display:inline-block;transform:translateY(2px)}.fragment-circle{display:block;text-align:center;margin-top:1rem;font-style:italic;font-weight:700;padding:.5rem;border:1px solid var(--color-ink-light);border-radius:50%;width:fit-content;margin-left:auto;margin-right:auto;transform:rotate(-1deg)}@media (max-width: 1024px){.fragment-primary,.fragment-secondary,.fragment-tertiary{grid-column:1 / 13;margin:1rem 0}.fragment-secondary,.fragment-tertiary{margin-top:0}.fragment-circle{width:80%}}@media (max-width: 768px){.fragment-text{font-size:1rem}.vertical-text{writing-mode:horizontal-tb;transform:none;display:inline;text-decoration:underline;text-decoration-style:wavy;text-decoration-color:var(--color-accent)}.fragment-diagonal,.fragment-primary,.fragment-tertiary{transform:none}}@media (max-width: 480px){.philosophy-section{display:flex;flex-direction:column;gap:2rem;padding:var(--space-sm)}.fragment-text{font-size:.9rem;line-height:1.7}.fragment-circle{width:100%;border-radius:0;transform:none}.new-renaissance{font-size:1.1em}}.philosophy-column{padding:var(--space-md);border-left:1px solid var(--color-ink-light);position:relative}.philosophy-column:first-child{border-left:none}.philosophy-column p{font-family:var(--font-serif);font-size:1rem;line-height:1.8;color:var(--color-ink-medium);margin:0;text-align:justify;-webkit-hyphens:auto;hyphens:auto}@media (max-width: 768px){.philosophy-section{grid-template-columns:1fr;gap:var(--space-md)}.philosophy-column{border-left:none;border-top:1px solid var(--color-ink-light);padding-top:var(--space-md)}.philosophy-column:first-child{border-top:none}}@media (max-width: 480px){.philosophy-column p{font-size:.9rem;line-height:1.7;text-align:left}}.cosmic-abstract-philosophy{font-family:var(--font-serif);font-style:normal;font-weight:400;font-size:1.1rem;line-height:1.6;color:var(--color-ink-dark);text-align:left;padding:var(--space-md) 0 0 0;padding-left:clamp(var(--space-sm),4vw,var(--space-lg));border:none;background:transparent;position:relative;letter-spacing:.02em;max-width:100%;margin:var(--space-md) 0 0 0}.cosmic-abstract-philosophy .fancy-first-letter{font-family:"Old English Text MT","UnifrakturMaguntia",var(--font-serif);font-size:3rem;line-height:.8;font-weight:400;color:var(--color-ink-dark);margin-right:.15em;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.cosmic-abstract-philosophy .diminishing-word{display:inline-block;transition:font-size .1s ease-out;line-height:1.2;vertical-align:baseline;animation:jiggle 2s ease-in-out infinite;animation-delay:calc(var(--word-index, 0) * .1s)}@keyframes jiggle{0%,to{transform:translate(0) rotate(0)}10%{transform:translate(-1px,-1px) rotate(-.5deg)}20%{transform:translate(1px,1px) rotate(.5deg)}30%{transform:translate(-.5px,1px) rotate(-.3deg)}40%{transform:translate(1px,-.5px) rotate(.3deg)}50%{transform:translate(-.5px) rotate(-.2deg)}60%{transform:translate(.5px,-1px) rotate(.2deg)}70%{transform:translate(-1px,.5px) rotate(-.1deg)}80%{transform:translate(.5px,1px) rotate(.1deg)}90%{transform:translate(-.5px,-.5px) rotate(-.05deg)}}@media (max-width: 768px){.cosmic-abstract-philosophy{padding-left:clamp(var(--space-sm),4vw,var(--space-lg))}}@media (max-width: 480px){.cosmic-abstract-philosophy{padding-left:clamp(var(--space-sm),4vw,var(--space-lg));font-size:1rem}}.mission-statement{margin:var(--space-xl) 0;padding:var(--space-lg) 0}.about-meta{grid-column:1 / -1;display:flex;justify-content:center;gap:var(--space-lg);margin:var(--space-xl) 0;padding:var(--space-md);font-family:var(--font-serif);position:relative}.about-section{margin:0 0 var(--space-xxl) 0;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:clamp(var(--space-sm),4vw,var(--space-xl));padding-right:clamp(var(--space-sm),4vw,var(--space-xl))}.about-content{max-width:1200px;width:100%;margin:0 auto;padding-inline:clamp(var(--space-md),6vw,var(--space-xl))}.about-content.journal-two-col{padding-top:var(--space-lg)}.about-header{text-align:center}.about-title{font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.25rem);letter-spacing:.02em;color:var(--color-ink-dark);margin:0 0 var(--space-md)}.about-meta:before{content:"";position:absolute;top:-1px;left:0;right:0;height:0;border-bottom:1px dotted var(--color-ink-light)}.meta-item{font-family:var(--font-serif);font-size:1.1rem;color:var(--color-ink-medium);text-decoration:none;position:relative;padding:.25rem 0}.meta-item:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--color-ink-medium);transform:scaleX(0);transition:transform .3s ease}.meta-item:hover{color:var(--color-accent)}.meta-item:hover:after{transform:scaleX(1)}@media (max-width: 768px){.about-meta{flex-wrap:wrap;gap:var(--space-md)}.about-content{padding-inline:var(--space-xs)}.about-body .journal-card{margin-left:calc(-1 * var(--space-xs));margin-right:calc(-1 * var(--space-xs))}.about-body .journal-list{padding-left:0;padding-right:0}}@media (max-width: 480px){.about-meta{gap:var(--space-sm);padding:var(--space-xs)}.meta-item{font-size:1rem;margin:0 var(--space-xxs)}.about-content{padding-inline:0}.about-body .journal-card{margin-left:0;margin-right:0;border-left:none;border-right:none;border-radius:0}}.research-content{width:100%;max-width:1600px;margin:0 auto;padding-top:var(--space-xl);padding-bottom:var(--space-xxl);padding-inline:clamp(var(--space-sm),4vw,var(--space-lg))}.research-toc-container{position:relative;padding-top:var(--space-md);display:grid;grid-template-columns:2.7fr 1fr;gap:var(--space-xl);align-items:start}.research-sidebar{grid-column:2 / 3;display:flex;flex-direction:column;gap:0}.research-section{grid-column:1 / 2;display:flex;flex-direction:column}@media (max-width: 1024px){.research-toc-container{grid-template-columns:1fr;gap:var(--space-lg)}.research-sidebar{grid-column:1 / -1;order:1}.research-brain-container,.research-overview{margin-left:0}.research-section{grid-column:1 / -1;order:2}.contact-for-access{order:3}}@media (max-width: 768px){.research-content{padding:var(--space-sm) var(--space-md)}.category-tabs-container{margin-inline:calc(-1 * var(--space-md));padding-inline:var(--space-md)}}.research-header{text-align:left;margin-bottom:var(--space-lg);position:relative;width:100%;padding-bottom:var(--space-sm);border-bottom:1px dotted var(--color-ink-light)}.research-title-row{display:grid;grid-template-columns:1fr;align-items:start;gap:var(--space-md)}.research-title{font-family:var(--font-serif);font-size:2rem;text-align:left;margin-bottom:0;color:var(--color-ink-dark);letter-spacing:.01em;font-weight:700;line-height:1.2}.research-subtitle{font-family:var(--font-serif);font-style:italic;font-size:1rem;color:var(--color-ink-medium);text-align:left;margin:var(--space-xs) 0 var(--space-sm);letter-spacing:.02em}@media (max-width: 768px){.research-header{border-bottom:none}.research-title-row{gap:var(--space-xs)}.research-title{font-size:1.8rem}.research-subtitle{font-size:.9rem}}@media (max-width: 1024px){.research-title-row{grid-template-columns:1fr}}@media (max-width: 480px){.research-title{font-size:1.4rem}.research-subtitle{font-size:.8rem}}.cosmic-abstract-container{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-xl);align-items:center;margin:var(--space-xl) 0}.cosmic-abstract{font-family:var(--font-serif);font-style:normal;font-weight:400;font-size:1.3rem;line-height:1.6;color:var(--color-ink-dark);text-align:left;padding:var(--space-xl) 0;padding-left:clamp(var(--space-sm),4vw,var(--space-lg));border:none;background:transparent;position:relative;letter-spacing:.02em;max-width:90%}.fancy-first-letter{font-family:"Old English Text MT","UnifrakturMaguntia",var(--font-serif);font-size:4rem;line-height:.8;font-weight:400;color:var(--color-ink-dark);margin-right:.15em;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.diminishing-word{display:inline-block;transition:font-size .1s ease-out;line-height:1.2;vertical-align:baseline;animation:jiggle 2s ease-in-out infinite;animation-delay:calc(var(--word-index, 0) * .1s)}@keyframes jiggle{0%,to{transform:translate(0) translateY(0) rotate(0)}10%{transform:translate(-1px) translateY(-1px) rotate(-.5deg)}20%{transform:translate(1px) translateY(1px) rotate(.5deg)}30%{transform:translate(-.5px) translateY(1px) rotate(-.3deg)}40%{transform:translate(1px) translateY(-.5px) rotate(.3deg)}50%{transform:translate(-.5px) translateY(0) rotate(-.2deg)}60%{transform:translate(.5px) translateY(-1px) rotate(.2deg)}70%{transform:translate(-1px) translateY(.5px) rotate(-.1deg)}80%{transform:translate(.5px) translateY(1px) rotate(.1deg)}90%{transform:translate(-.5px) translateY(-.5px) rotate(-.05deg)}}.cosmic-brain{display:flex;justify-content:center;align-items:center}.research-brain-container{margin-left:calc(var(--space-md) + var(--space-sm));margin-bottom:0}.research-brain-square{position:relative;width:100%;min-width:400px;aspect-ratio:1 / 1;border:none;border-radius:8px;overflow:hidden;background:transparent;--brain-scale: 50;--dynamic-size: calc(var(--brain-scale) * 6px);min-width:var(--dynamic-size);max-width:var(--dynamic-size)}.research-brain-container .model-container{position:absolute;inset:0;width:100%;height:100%}.research-brain-container .react-canvas{width:100%!important;height:100%!important}@media (max-width: 1024px) and (min-width: 769px){.cosmic-brain{justify-content:flex-end;align-items:center;padding-right:var(--space-lg)}}@media (max-width: 768px){.cosmic-abstract-container{grid-template-columns:1fr minmax(60px,100px);gap:var(--space-lg);margin-bottom:var(--space-xl)}.cosmic-abstract{text-align:left;font-size:.8rem;padding:var(--space-sm) var(--space-md) var(--space-sm) clamp(var(--space-sm),4vw,var(--space-lg));padding-left:clamp(var(--space-sm),4vw,var(--space-lg));max-width:calc(100% - 20px);margin-right:var(--space-sm)}.cosmic-brain{justify-content:center;align-items:flex-start;padding-top:var(--space-lg);padding-left:var(--space-xs);transform:translate(0) translateY(0)}.research-brain-square{width:80%;max-width:calc(var(--brain-scale) * 4px);min-width:calc(var(--brain-scale) * 2.4px);margin-top:var(--space-sm)}}@media (max-width: 480px){.research-brain-square{width:40%;margin:0 auto}.cosmic-abstract{font-size:.85rem;padding:var(--space-sm);padding-left:clamp(var(--space-sm),4vw,var(--space-lg))}}.research-toc{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:0}.research-toc li{margin:0}.research-toc .research-item{position:relative;display:grid;grid-template-columns:2rem minmax(0,1fr) auto;gap:var(--space-sm);align-items:baseline;padding:.05rem 0;border-bottom:1px dotted rgba(0,0,0,.1);transition:all .2s ease;background-color:transparent;border-left:2px solid transparent}.title-block{display:flex;flex-direction:column;align-items:flex-start;min-width:0;overflow:hidden}.research-toc .research-item:hover{background-color:#00000004;border-left:2px solid var(--color-accent)}.research-number{font-family:var(--font-mono);font-size:.7rem;color:var(--color-ink-light);font-weight:400;text-align:right;padding-right:var(--space-xs)}.research-title-text{display:inline-flex;align-items:baseline;min-width:0;font-family:var(--font-serif);font-size:1.1rem;font-weight:600;line-height:1.2;color:var(--color-ink-dark);transition:color .2s ease;text-align:left;white-space:nowrap;overflow:hidden}.research-toc .research-item:hover .research-title-text{color:var(--color-accent)}.org-tag{display:inline-block;margin-top:.2rem;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.06em;color:var(--color-ink-dark);background:#0000000a;border:1px solid var(--color-ink-light);padding:.1rem .3rem;border-radius:2px;text-decoration:none}.org-tag:hover{color:var(--color-accent);border-color:var(--color-accent)}.title-prefix{flex:0 0 auto}.marquee-viewport{flex:1 1 auto;min-width:0;overflow:hidden;display:inline-block;margin-left:.35rem;vertical-align:bottom;-webkit-mask-image:linear-gradient(90deg,#000000d9,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#000000d9,#000 12% 88%,#0000)}.marquee-track{display:inline-flex;gap:.75rem;will-change:transform;animation:marquee-left var(--marquee-duration, 22s) linear infinite}.marquee-item{display:inline-block}@keyframes marquee-left{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.marquee-track{animation:none}}@media (max-width: 768px){.research-toc .research-item{grid-template-columns:1.5rem 1fr auto;gap:var(--space-xs)}.research-title-text{font-size:1.1rem}.research-status{font-size:.55rem}}@media (max-width: 480px){.research-toc .research-item{grid-template-columns:1rem 1fr auto;gap:var(--space-xxs);padding:var(--space-xs) 0}.research-number{font-size:.6rem}.research-status{font-size:.5rem;justify-self:end}}.research-overview{position:relative;top:0;margin-left:var(--space-md);margin-top:0;padding:var(--space-xs) var(--space-md) var(--space-md);border-top:2px solid var(--color-ink-medium);border-left:1px solid var(--color-ink-light);font-family:var(--font-body);font-size:.8rem;line-height:1.5;color:var(--color-ink-medium);background-color:#00000003;height:fit-content;max-width:100%;text-align:left}.overview-heading{font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-variant-caps:small-caps;color:var(--color-ink-dark);margin:0 0 var(--space-sm) 0;padding-bottom:var(--space-xs);border-bottom:1px dotted var(--color-ink-light)}.research-overview p{margin-bottom:var(--space-sm);text-indent:1.1em}.key-links{margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px dotted var(--color-ink-light)}.links-heading{font-family:var(--font-mono);font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-variant-caps:small-caps;color:var(--color-ink-dark);margin:0 0 var(--space-xs) 0}.key-links ul{list-style:none;padding:0;margin:0}.key-links li{margin-bottom:var(--space-xxs)}.key-links a{color:var(--color-accent);text-decoration:none;font-size:.75rem;transition:color .2s ease}.key-links a:hover{color:var(--color-ink-dark);text-decoration:underline}.contact-for-access{margin-top:var(--space-lg);padding-top:var(--space-sm);border-top:1px dotted var(--color-ink-light);font-family:var(--font-sans);font-size:.75rem;text-align:center;font-style:italic;color:var(--color-ink-medium);grid-column:1 / -1;order:3}@media (max-width: 1024px){.research-sidebar{grid-column:1 / -1;order:1}.research-brain-container,.research-overview{margin-left:0}.research-section{grid-column:1 / -1;order:2}.contact-for-access{order:3}}@media (max-width: 768px){.research-overview{font-size:.75rem}}:root{--tab-scale-base: .8;--tab-scale-tablet: 1;--tab-scale-desktop: 1.2;--tab-font-size: calc(.35rem + .5vw) ;--tab-padding-x: calc(.25rem + .6vw) ;--tab-padding-y: calc(.12rem + .35vw) ;--tab-min-width: calc(30px + 1vw) ;--tab-height: calc(1.7rem + .7vw) ;--tab-gap: calc(.1rem + .3vw) ;--tab-padding-right: calc(.5rem + 1vw) }.category-tabs{display:flex;flex-wrap:nowrap;justify-content:flex-start;align-items:flex-start;gap:var(--tab-gap);margin-bottom:var(--space-md);transition:all .4s cubic-bezier(.4,0,.2,1);width:100%;max-width:100%;overflow:hidden;box-sizing:border-box;flex-shrink:1;padding:2px 4px;margin:-2px -4px;min-width:0;container-type:inline-size}.category-tab{font-family:var(--font-mono);font-size:var(--tab-font-size);font-weight:500;letter-spacing:.08em;text-transform:uppercase;font-variant-caps:small-caps;padding:var(--tab-padding-y) var(--tab-padding-x);border:1px solid var(--color-ink-light);background:transparent;color:var(--color-ink-medium);cursor:pointer;transition:all .4s cubic-bezier(.25,.46,.45,.94);border-radius:2px;text-align:center;will-change:transform,background-color,border-color,color;flex:1 1 auto;min-width:var(--tab-min-width);max-width:none;width:auto;height:var(--tab-height);min-height:var(--tab-height);max-height:var(--tab-height);white-space:normal;overflow:hidden;text-overflow:ellipsis;line-height:1.2;display:flex;align-items:center;justify-content:center}.category-tab:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-1px)}.category-tabs-container{margin-bottom:var(--space-lg)}.category-tabs-row-2{margin-top:calc(.25rem + .4vw)}.category-description{font-family:var(--font-serif);font-size:calc(.7rem + .3vw);font-style:italic;color:var(--color-ink-medium);text-align:center;padding:var(--space-sm) var(--space-md);margin-top:var(--space-sm);border-top:1px solid var(--color-ink-light);opacity:0;animation:fadeIn .4s ease-in-out forwards;transition:all .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.category-tabs-container:after{content:"↓ Filtering projects below";display:block;font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-ink-light);text-align:center;margin-top:var(--space-xs);opacity:.6}.category-tab.active{background:var(--color-accent);color:var(--color-paper);border-color:var(--color-accent);transform:translateY(-1px);flex:5 1 auto;min-width:calc(var(--tab-min-width) * 2.5);max-width:none;height:var(--tab-height);min-height:var(--tab-height);max-height:var(--tab-height);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;z-index:10;position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center}@media (max-width: 1024px){.category-tabs{display:flex;flex-wrap:nowrap;gap:calc(var(--tab-gap) * var(--tab-scale-base));overflow-x:hidden;justify-content:flex-start;align-items:flex-start;padding-right:var(--tab-padding-right)}.category-tab{font-size:var(--tab-font-size);padding:calc(var(--tab-padding-y) * var(--tab-scale-base)) calc(var(--tab-padding-x) * var(--tab-scale-base));min-width:calc(var(--tab-min-width) * var(--tab-scale-base));flex:1 1 auto;height:calc(var(--tab-height) * var(--tab-scale-base));min-height:calc(var(--tab-height) * var(--tab-scale-base));max-height:calc(var(--tab-height) * var(--tab-scale-base));width:auto}.category-tab.active{flex:3 1 auto;min-width:calc(var(--tab-min-width) * var(--tab-scale-base) * 1.5);width:auto;height:calc(var(--tab-height) * var(--tab-scale-base));min-height:calc(var(--tab-height) * var(--tab-scale-base));max-height:calc(var(--tab-height) * var(--tab-scale-base))}}@media (max-width: 480px){:root{--tab-scale-base: .6}.category-tabs{display:flex;flex-wrap:nowrap;gap:calc(var(--tab-gap) * var(--tab-scale-base) * .5);overflow-x:hidden;justify-content:flex-start;align-items:flex-start;padding-right:calc(var(--tab-padding-right) * .3)}.category-tab{font-size:calc(var(--tab-font-size) * .9);padding:calc(var(--tab-padding-y) * var(--tab-scale-base)) calc(var(--tab-padding-x) * var(--tab-scale-base));min-width:calc(var(--tab-min-width) * var(--tab-scale-base));flex:1 1 auto;height:calc(var(--tab-height) * var(--tab-scale-base));min-height:calc(var(--tab-height) * var(--tab-scale-base));max-height:calc(var(--tab-height) * var(--tab-scale-base));width:auto}.category-tab.active{flex:2 1 auto;min-width:calc(var(--tab-min-width) * var(--tab-scale-base) * 1.4);width:auto;height:calc(var(--tab-height) * var(--tab-scale-base));min-height:calc(var(--tab-height) * var(--tab-scale-base));max-height:calc(var(--tab-height) * var(--tab-scale-base))}}.toc-notice{font-family:var(--font-mono);font-size:.65rem;font-weight:600;letter-spacing:.1em;color:var(--color-accent);text-transform:uppercase;font-variant-caps:small-caps;margin-bottom:var(--space-xxs);text-align:left}.toc-notice.recently-completed{margin-top:var(--space-sm);color:var(--color-ink-dark)}.toc-notice.achievements{margin-top:var(--space-sm);color:var(--color-ink-medium)}.research-details{grid-column:1 / -1;font-family:var(--font-body);font-size:.85rem;line-height:1.5;color:var(--color-ink-medium);margin-top:.25rem;margin-left:2rem;text-align:left}.achievements-section{margin-top:var(--space-md)}.achievements-text{margin:0;font-family:var(--font-body);font-size:.85rem;line-height:1.6;color:var(--color-ink-medium);font-style:italic;text-align:left}.sketches-section{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--color-ink-light);width:100%;min-width:0;box-sizing:border-box;overflow-x:visible}.sketches-header{display:flex;align-items:baseline;gap:var(--space-md);flex-wrap:wrap;margin-bottom:var(--space-sm)}.sketches-section .toc-notice.sketches{color:var(--color-accent);font-weight:var(--font-weight-semibold);margin-bottom:0;font-size:1.1rem;letter-spacing:.02em}.sketches-description{font-size:var(--font-size-base);color:var(--color-ink-medium);margin:0;line-height:var(--line-height-relaxed);font-style:italic}.sketches-toggle-button{background:transparent;color:var(--color-ink-medium, #333333);border:1px solid var(--color-ink-light, rgba(0, 0, 0, .1));padding:6px 16px;border-radius:2px;font-size:.75rem;font-family:var(--font-mono, "IBM Plex Mono", monospace);font-weight:500;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;margin-bottom:0;display:inline-block}.sketches-toggle-button:hover{border-color:var(--color-accent, #8b0000);color:var(--color-accent, #8b0000);background-color:#8b00000d}.sketches-toggle-button:active{transform:translateY(0)}.sketches-gallery{margin-top:var(--space-xs);padding:var(--space-lg) var(--space-sm);background:var(--color-paper);border:1px solid rgba(26,26,26,.08);border-radius:12px;box-shadow:0 4px 20px #1a1a1a0f,0 1px 3px #1a1a1a0a;max-height:900px;overflow-y:auto;overflow-x:visible;-ms-overflow-style:none;scrollbar-width:none;position:relative;min-width:0;width:100%;box-sizing:border-box}.sketches-gallery:has(.sketch-inline-expanded){overflow:visible;max-height:none;padding-bottom:var(--space-xl);padding-left:var(--space-sm);padding-right:var(--space-sm)}.sketches-gallery:has(.sketch-inline-expanded) .sketch-gallery{width:100%;max-width:100%;min-width:0;padding:0}.sketches-gallery:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(26,26,26,.1) 2px,rgba(26,26,26,.1) 4px);opacity:.5}.sketches-gallery::-webkit-scrollbar{display:none;width:0}@media (max-width: 768px){.sketches-section{margin-top:var(--space-lg);padding-top:var(--space-md)}.sketches-gallery{padding:var(--space-md)}}@media (max-width: 480px){.sketches-gallery{padding:var(--space-sm)}.sketches-header{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}}.research-container{background-color:var(--color-paper);color:var(--color-ink-dark);font-family:var(--font-serif);line-height:1.45;margin:0 auto;overflow-x:hidden}.research-contact-inline .coin{min-width:100px;height:140px}.research-contact-inline canvas{width:100%!important;height:100%!important}@media (max-width: 768px){.research-contact-inline .coin{min-width:90px;height:140px}}@media (max-width: 1024px){.research-title-row{grid-template-columns:1fr;gap:var(--space-xs)}}.research-status{font-family:var(--font-mono);font-size:.6rem;text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.08em;color:var(--color-ink-light);white-space:nowrap;justify-self:end;text-align:right}.research-toc .research-item.is-active{background-color:#00000005}.about-content.journal-two-col>.journal-header{grid-column:1 / -1}@media (min-width: 1025px){.about-content.journal-two-col>.journal-header{z-index:0}.about-content.journal-two-col>.journal-sidebar{z-index:1;background:var(--color-paper)}.journal-sidebar:before{content:"";position:absolute;top:0;left:calc(-1 * var(--space-xl));width:var(--space-xl);height:100%;background:var(--color-paper);z-index:0}}.profile-content{max-width:1200px;width:100%;margin:0 auto;padding-inline:clamp(var(--space-sm),4vw,var(--space-lg));display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-lg);position:relative;box-sizing:border-box}.profile-title{grid-column:1 / -1;text-align:center;margin-bottom:var(--space-xl);max-width:100%;margin-left:auto;margin-right:auto}.profile-title h1{font-family:var(--font-serif);font-size:clamp(3rem,8vw,5rem);font-weight:900;line-height:1.1;color:var(--color-ink-dark);margin:0 0 var(--space-sm);letter-spacing:-.02em}.profile-subtitle{grid-column:4 / 10;font-family:var(--font-serif);font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.6;color:var(--color-ink-medium);text-align:center;font-style:italic;margin:var(--space-md) 0 var(--space-xs);padding:0 var(--space-md);position:relative;max-width:100%;margin-left:auto;margin-right:auto}@media (max-width: 1024px){.profile-subtitle{grid-column:3 / 11}.about-content.journal-two-col>.journal-header{border-bottom:none}}@media (max-width: 768px){.profile-content{gap:var(--space-md);padding-inline:var(--space-lg)}.profile-title{margin-bottom:var(--space-lg)}.profile-subtitle{grid-column:2 / 12;font-size:1.2rem;margin-top:var(--space-sm)}}@media (max-width: 480px){.profile-content{padding-inline:var(--space-md)}.profile-subtitle{grid-column:1 / -1;font-size:1.1rem;margin:0 auto;width:95%;max-width:100%}}:root{--latex-font-family: "Latin Modern Roman", "Computer Modern", "CMU Serif", "Times New Roman", "Times", serif;--latex-font-mono: "Latin Modern Mono", "Computer Modern Typewriter", "Courier New", monospace;--latex-color-text: #000;--latex-color-accent: #A6CE39;--latex-color-link: #333;--latex-color-code-bg: #f8f9fa;--latex-space-xs: .125rem;--latex-space-sm: .25rem;--latex-space-md: .5rem;--latex-space-lg: .75rem;--latex-space-xl: 1rem;--latex-size-title: 16pt;--latex-size-author: 10pt;--latex-size-abstract-heading: 10pt;--latex-size-body: 10pt;--latex-size-small: 9pt;--latex-size-tiny: 8pt;--latex-size-section: 12pt;--latex-size-subsection: 11pt;--latex-size-subsubsection: 10pt;--latex-line-height-tight: 1.1;--latex-line-height-normal: 1.2;--latex-line-height-title: 24pt;--latex-body-line-height: var(--latex-line-height-normal);--latex-width-title: 6in;--latex-width-abstract: 5in;--latex-title-size: var(--latex-size-section);--latex-title-width: 100%;--latex-author-size: var(--latex-size-tiny);--latex-author-width: 100%;--latex-abstract-size: var(--latex-size-tiny);--latex-abstract-width: 100%;--latex-keywords-size: var(--latex-size-tiny);--latex-keywords-width: 100%;--latex-section-size: var(--latex-size-tiny);--latex-subsection-size: var(--latex-size-tiny);--latex-subsubsection-size: var(--latex-size-tiny);--latex-body-size: var(--latex-size-tiny);--latex-document-padding: .25rem;--latex-padding-document: .5rem .75rem;--latex-column-gap: 20pt;--latex-column-fill: auto;--latex-column-height: 100%;--latex-column-overflow: hidden;--latex-text-indent: 1.5em;--latex-margin-math: 1.5rem;--latex-margin-align: 2rem;--latex-math-align-margin: 0;--latex-katex-size: .7em;--latex-katex-line-height: 1.2;--latex-title-padding: var(--latex-space-sm) var(--latex-space-md);--latex-abstract-margin: var(--latex-space-lg) 0;--latex-keywords-margin: var(--latex-space-lg) auto 0 auto;--latex-margin-table: 1rem;--latex-padding-table-cell: 4pt 6pt;--latex-margin-table-caption: .5rem;--latex-font-size-caption: 12pt;--latex-margin-list: 1rem;--latex-padding-list: 2.5rem;--latex-margin-list-item: .125rem;--latex-border-thickness: 1px;--latex-border-title-top: 3px;--latex-border-radius: 3px;--latex-letter-spacing: .5pt;--latex-font-size-error-title: 1.1rem;--latex-font-size-error-text: .9rem;--latex-font-size-error-code: .8rem;--latex-padding-code: 2px 4px}.latex-title{font-size:var(--latex-title-size);font-weight:700;text-align:center;margin:0 auto var(--latex-space-lg) auto;line-height:var(--latex-line-height-title);text-transform:none;letter-spacing:normal;width:var(--latex-title-width);max-width:var(--latex-title-width);border-top:var(--latex-border-title-top) solid var(--latex-color-text);border-bottom:var(--latex-border-thickness) solid var(--latex-color-text);padding:var(--latex-title-padding);text-decoration:none}.latex-author{text-align:center;font-style:normal;font-weight:400;margin:0 auto var(--latex-space-sm) auto;font-size:var(--latex-author-size);line-height:var(--latex-line-height-normal);width:var(--latex-author-width);max-width:var(--latex-author-width)}.latex-author .author-name{font-weight:700;font-size:var(--latex-size-tiny);margin-bottom:var(--latex-space-sm)}.latex-author .affiliation{font-style:italic;font-size:var(--latex-size-small);margin-bottom:var(--latex-space-xs)}.latex-author .email{font-size:var(--latex-size-small);color:var(--latex-color-link);margin-bottom:var(--latex-space-xs)}.latex-author .email a{color:var(--latex-color-link);text-decoration:none}.latex-author .email a:hover{text-decoration:underline}.latex-author .orcid{font-size:var(--latex-size-small);color:var(--latex-color-accent);margin-bottom:var(--latex-space-xs)}.latex-author .orcid a{color:var(--latex-color-accent);text-decoration:none;font-weight:500}.latex-author .orcid a:hover{text-decoration:underline}.latex-date{text-align:center;margin:0 auto var(--latex-space-sm) auto;font-size:var(--latex-author-size);font-style:italic;width:var(--latex-title-width);max-width:var(--latex-title-width)}.latex-abstract{background:none;border:none;padding:0;margin:var(--latex-abstract-margin);text-align:justify;width:var(--latex-abstract-width);max-width:var(--latex-abstract-width);line-height:var(--latex-line-height-tight)}.latex-abstract h2{font-size:var(--latex-abstract-size);font-weight:700;text-transform:none;letter-spacing:var(--latex-letter-spacing);text-align:center;border:none;padding:0;border-bottom:none;line-height:var(--latex-line-height-tight);margin:0 0 var(--latex-space-xs) 0}.latex-abstract p{margin:0;line-height:var(--latex-line-height-normal);font-size:var(--latex-body-size);text-indent:0}.latex-keywords{text-align:left;margin:var(--latex-keywords-margin);font-size:var(--latex-keywords-size);width:var(--latex-keywords-width);max-width:var(--latex-keywords-width);font-style:normal;line-height:var(--latex-line-height-normal)}.latex-keywords strong{font-weight:700;text-transform:none;letter-spacing:normal;font-style:normal}.latex-section{font-size:var(--latex-section-size);font-weight:700;margin-top:var(--latex-space-xl);margin-bottom:var(--latex-space-md);text-transform:none;letter-spacing:normal;border:none;border-bottom:none;padding:0;text-align:left;text-indent:0;text-decoration:none;box-shadow:none}.latex-subsection{font-size:var(--latex-subsection-size);font-weight:700;margin-top:var(--latex-space-xl);margin-bottom:var(--latex-space-lg);text-transform:none;letter-spacing:normal;text-indent:0;border:none;border-bottom:none;padding:0;text-decoration:none;box-shadow:none}.latex-subsubsection{font-size:var(--latex-subsubsection-size);font-weight:700;margin-top:var(--latex-space-xl);margin-bottom:var(--latex-space-md);text-transform:none;letter-spacing:normal;text-indent:0;border:none;border-bottom:none;padding:0;text-decoration:none;box-shadow:none}.latex-section+p,.latex-subsection+p,.latex-subsubsection+p{margin-top:var(--latex-space-md)}.latex-table{width:100%;border-collapse:collapse;margin:var(--latex-margin-table) 0;font-size:var(--latex-subsection-size)}.latex-table th,.latex-table td{border:1px solid #000;padding:var(--latex-padding-table-cell);text-align:center;vertical-align:middle}.latex-table th{background-color:#fff;font-weight:700;color:#000}.latex-table caption{font-weight:700;margin-bottom:var(--latex-margin-table-caption);text-align:left;font-size:var(--latex-font-size-caption)}.latex-itemize,.latex-enumerate{margin:var(--latex-margin-list) 0;padding-left:var(--latex-padding-list);list-style-position:outside}.latex-itemize li,.latex-enumerate li{margin:var(--latex-margin-list-item) 0;text-align:left;line-height:var(--latex-line-height-normal);text-indent:.5rem}.latex-itemize li::marker{content:"•"}.latex-enumerate li::marker{content:counter(list-item) "."}.latex-bibliography-section{display:block;position:relative}.latex-bibliography-list{list-style:decimal;margin:0;padding-left:1.5em}.latex-bibliography-section h2.latex-section{page-break-after:avoid!important;break-after:avoid!important;column-break-after:avoid!important;-webkit-column-break-after:avoid!important;-moz-column-break-after:avoid!important;margin-bottom:.5em!important;display:block!important;width:100%!important}.latex-bibliography-section ol.latex-bibliography-list{page-break-before:avoid!important;break-before:avoid!important;column-break-before:avoid!important;-webkit-column-break-before:avoid!important;-moz-column-break-before:avoid!important;margin-top:0!important;display:block!important}.latex-bibliography-list{margin:0;padding:0;list-style:decimal;break-inside:auto;page-break-inside:auto;orphans:1;widows:1}h2.latex-section{font-size:var(--latex-section-size);font-weight:700;margin-bottom:var(--latex-space-lg);text-transform:none}.latex-bibliography-list{list-style:decimal;padding:0;margin:0;counter-reset:none;column-fill:auto!important;-webkit-column-fill:auto!important;-moz-column-fill:auto!important;break-inside:auto;page-break-inside:auto}.latex-bibliography-item{margin:var(--latex-space-md) 0!important;padding-left:0!important;text-align:left!important;line-height:var(--latex-line-height-normal)!important;text-indent:0!important;list-style-type:decimal!important;break-inside:auto;page-break-inside:auto;orphans:1;widows:1;column-break-inside:auto!important;-webkit-column-break-inside:auto!important;-moz-column-break-inside:auto!important}.bib-author{font-weight:700}.bib-title,.bib-journal,.bib-booktitle{font-style:italic}.bib-url{color:var(--latex-color-link);text-decoration:none}.bib-url:hover{text-decoration:underline}.latex-comment{color:#666;font-style:italic;background-color:#f8f8f8;padding:2px 4px;border-radius:3px;font-size:.9em;border-left:3px solid #ddd;margin-left:4px}.latex-comment-block{color:#666;font-style:italic;background-color:#f0f0f0;padding:8px 12px;border-radius:4px;font-size:.9em;border-left:4px solid #ccc;margin:8px 0;border:1px dashed #ccc}.latex-document-viewport{position:relative;width:100%;height:100%;overflow:auto;display:flex;justify-content:center;align-items:flex-start;background:#ddd}.latex-document-scale{position:relative;transform-origin:top left}.latex-document-renderer{display:inline-block;margin:0;padding:0;font-family:var(--latex-font-family);line-height:var(--latex-line-height-normal);color:var(--latex-color-text);background:#fff;font-size:var(--latex-body-size);position:relative;counter-reset:page}.latex-document-renderer .two-column-content{column-count:2;column-gap:var(--latex-column-gap);text-align:justify;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.latex-document-renderer .two-column-content .math-display-rendered,.latex-document-renderer .two-column-content .katex-display,.latex-document-renderer .two-column-content .latex-table,.latex-document-renderer .two-column-content table,.latex-document-renderer .two-column-content pre{break-inside:avoid;max-width:100%;overflow-x:hidden}.latex-document-renderer .two-column-content .latex-bibliography-section{display:block}.latex-document-renderer .two-column-content h2,.latex-document-renderer .two-column-content h3,.latex-document-renderer .two-column-content h4{margin-top:.35em;margin-bottom:.25em;break-after:avoid}.latex-document-renderer .two-column-content ul,.latex-document-renderer .two-column-content ol{margin:0 0 0 1.5em;padding:0}.latex-document-renderer .two-column-content li{margin:.125rem 0;line-height:var(--latex-line-height-normal);text-indent:.5rem}.latex-document-renderer .single-column{column-count:1;text-align:center;margin-bottom:0;display:flex;flex-direction:column;align-items:center;height:100%;width:100%}.latex-document-renderer .single-column *{color:var(--latex-color-text);text-decoration-color:var(--latex-color-text);border-color:var(--latex-color-text)}.latex-document-renderer p{margin:0;text-align:justify;line-height:var(--latex-body-line-height);text-indent:var(--latex-text-indent);font-size:var(--latex-body-size)}.latex-document-renderer p:has([citation]){text-align:justify;-webkit-hyphens:auto;hyphens:auto}.latex-document-renderer .latex-section+p,.latex-document-renderer .latex-subsection+p,.latex-document-renderer .latex-subsubsection+p{text-indent:0;margin-top:var(--latex-space-md)}.latex-document-renderer a{color:var(--latex-color-link, #0066cc);text-decoration:none}.latex-document-renderer a:hover{text-decoration:underline}.latex-document-renderer a[href*="mailto:"]{color:var(--latex-color-link, #0066cc);text-decoration:none}.latex-document-renderer a[href*="mailto:"]:hover{text-decoration:underline}.latex-document-renderer em{font-style:italic}.latex-document-renderer strong{font-weight:700}.latex-document-renderer code{font-family:var(--latex-font-mono);font-size:.9em;background-color:var(--latex-color-code-bg, #f5f5f5);padding:.1em .3em;border-radius:2px}.latex-document-renderer span[style*="font-variant: small-caps"]{font-variant:small-caps;font-size:.95em;letter-spacing:.05em}.latex-document-renderer .citation{font-size:.9em;color:var(--latex-color-text, #333);font-weight:400;letter-spacing:.02em;word-spacing:.1em;background-color:#00000005;padding:.1em .2em;border-radius:2px;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;white-space:normal;line-height:var(--latex-body-line-height)}.latex-document-renderer div{word-spacing:normal;letter-spacing:normal}.latex-document-renderer div:has([citation]){text-align:justify;-webkit-hyphens:auto;hyphens:auto}.latex-document-renderer .math-display-rendered{text-align:center;margin:var(--latex-margin-math) 0;position:relative;break-inside:avoid}.latex-document-renderer .math-display-rendered .katex-display{position:relative;transform-origin:center}.latex-document-renderer .math-display-rendered.align{margin-left:var(--latex-math-align-margin)}.latex-document-renderer .katex{font-size:var(--latex-katex-size);line-height:var(--latex-katex-line-height)}.latex-document-renderer .katex-display{margin:1em 0;padding:.5em 0}.latex-document-renderer .page{position:relative;min-height:11in;width:8.5in;margin:0 auto .1in;padding:1in;background:#fff;box-shadow:0 0 10px #0000001a;counter-increment:page}.latex-document-renderer .page:last-child{margin-bottom:0}.latex-document-renderer .page:first-child:after,.latex-document-renderer .page.first-page:after{display:none}.latex-document-renderer .page:after{content:counter(page);position:absolute;top:.5in;right:.5in;font-size:var(--latex-body-size);font-family:Latin Modern Roman,Computer Modern,Times New Roman,Times,serif;color:#000}.latex-document-renderer .latex-section,.latex-document-renderer .latex-subsection,.latex-document-renderer .latex-subsubsection{break-after:avoid}.latex-document-renderer .latex-table{break-inside:avoid}@media print{.latex-renderer{font-size:var(--latex-size-section);line-height:var(--latex-body-line-height)}.latex-renderer h1{break-before:always}.latex-renderer h2,.latex-renderer h3,.latex-renderer h4{break-after:avoid}.latex-renderer .page{box-shadow:none;margin:0;break-after:always}.latex-renderer .page:last-child{break-after:auto}}.latex-renderer{position:relative;width:100%;font-family:var(--latex-font-family);line-height:var(--latex-body-line-height);color:var(--latex-color-text)}.latex-renderer.loading{display:flex;align-items:center;justify-content:center;min-height:200px;padding:var(--latex-space-lg)}.latex-loading-spinner{display:flex;flex-direction:column;align-items:center;gap:var(--latex-space-md);color:var(--color-ink-medium)}.spinner{width:32px;height:32px;border:3px solid rgba(0,0,0,.1);border-top:3px solid var(--color-accent);border-radius:50%;animation:spin 1s linear infinite}.latex-renderer.error{padding:var(--latex-space-lg);border:1px solid #ff6b6b;border-radius:4px;background-color:#fff5f5}.latex-error-message h4{color:#d63031;margin:0 0 var(--latex-space-sm) 0;font-family:var(--font-sans);font-size:var(--latex-font-size-error-title)}.latex-error-message p{color:#636e72;margin:0 0 var(--latex-space-md) 0;font-family:var(--font-mono);font-size:var(--latex-font-size-error-text)}.latex-raw-content{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;padding:var(--latex-space-md);font-family:var(--font-mono);font-size:var(--latex-font-size-error-code);color:var(--color-ink-dark);white-space:pre-wrap;overflow-x:auto;max-height:300px;overflow-y:auto}.latex-renderer .math-error{color:#d63031}.latex-date{width:var(--latex-author-width);max-width:var(--latex-author-width);font-size:var(--latex-author-size)}.latex-table,.latex-tabular{overflow-x:auto;display:block;white-space:nowrap}@media (min-width: 481px){:root{--latex-title-size: var(--latex-size-title);--latex-author-size: var(--latex-size-small);--latex-abstract-size: var(--latex-size-small);--latex-keywords-size: var(--latex-size-small);--latex-section-size: var(--latex-size-small);--latex-subsection-size: var(--latex-size-small);--latex-subsubsection-size: var(--latex-size-small);--latex-body-size: var(--latex-size-small);--latex-title-width: var(--latex-width-title);--latex-author-width: var(--latex-width-title);--latex-abstract-width: var(--latex-width-abstract);--latex-keywords-width: var(--latex-width-abstract);--latex-document-padding: var(--latex-padding-document);--latex-title-padding: var(--latex-space-md) 0;--latex-abstract-margin: var(--latex-space-sm) auto 0 auto;--latex-keywords-margin: var(--latex-space-xl) auto 0 auto}}@media (min-width: 769px){:root{--latex-title-size: var(--latex-size-title);--latex-author-size: var(--latex-size-author);--latex-abstract-size: var(--latex-size-abstract-heading);--latex-keywords-size: var(--latex-size-body);--latex-section-size: var(--latex-size-section);--latex-subsection-size: var(--latex-size-subsection);--latex-subsubsection-size: var(--latex-size-subsubsection);--latex-body-size: var(--latex-size-body);--latex-math-align-margin: var(--latex-margin-align);--latex-katex-size: .85em;--latex-title-padding: var(--latex-padding-title)}}.latex-paper-viewer{display:flex;flex-direction:column;font-family:var(--font-serif);background-color:var(--color-paper);color:var(--color-ink-dark);line-height:1.45;height:80vh;max-height:80vh;width:100%;overflow:hidden;border-radius:inherit}.latex-paper-viewer.desktop{position:relative}.latex-paper-viewer.mobile{position:fixed;top:0;left:0;width:100%;height:100vh;max-height:100vh;z-index:1000;box-shadow:none;border-right:none;overflow:visible;touch-action:pan-x pan-y}.latex-paper-viewer.mobile:before{content:"";position:fixed;inset:0;background:#00000080;z-index:-1;opacity:0;transition:opacity .3s ease-in-out}.latex-paper-viewer.mobile.active:before{opacity:1}.latex-paper-viewer.fullscreen{z-index:1001}.paper-controls{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-lg);background:linear-gradient(135deg,#00000005,#00000003);border-bottom:1px solid var(--color-ink-light);flex-wrap:wrap;min-height:60px;flex-shrink:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-group{display:flex;align-items:center;gap:var(--space-xs)}.control-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--color-ink-light);background:var(--color-paper);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;color:var(--color-ink-dark);font-family:var(--font-sans);transition:all .2s ease;box-shadow:0 1px 2px #0000000d}.control-btn:hover{background:var(--color-accent);color:#fff;border-color:var(--color-accent);transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.control-btn:active{transform:translateY(1px)}.view-mode-select{padding:6px 12px;border:1px solid #e9ecef;border-radius:4px;background:#fff;font-size:14px;color:var(--color-ink-dark);cursor:pointer}.zoom-level{font-family:var(--font-mono);font-size:12px;color:var(--color-ink-medium);min-width:40px;text-align:center}.paper-content-container{display:flex;flex:1;overflow:hidden;height:calc(80vh - 60px);min-height:0}.paper-sidebar{width:0;background-color:#00000003;border-right:none;overflow-y:auto;padding:0;flex-shrink:0;transition:width .3s ease,padding .3s ease,border-right .3s ease;opacity:0;visibility:hidden}.paper-sidebar.visible{width:300px;padding:var(--space-lg);opacity:1;visibility:visible;border-right:1px solid var(--color-ink-light)}.paper-toc h4,.paper-metadata h4{margin:0 0 var(--space-md) 0;font-size:.7rem;font-weight:600;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-variant-caps:small-caps;color:var(--color-ink-dark);border-bottom:1px dotted var(--color-ink-light);padding-bottom:var(--space-xs)}.toc-nav{display:flex;flex-direction:column;gap:2px}.toc-item{background:none;border:none;padding:var(--space-xs) var(--space-sm);text-align:left;cursor:pointer;font-size:14px;color:var(--color-ink-medium);border-radius:4px;transition:all .2s ease}.toc-item:hover{background:#0000000d;color:var(--color-ink-dark)}.toc-item.level-1{font-weight:600;padding-left:var(--space-sm)}.toc-item.level-2{padding-left:var(--space-md)}.toc-item.level-3{padding-left:var(--space-lg);font-size:13px}.metadata-list{display:flex;flex-direction:column;gap:var(--space-sm)}.metadata-list dt{font-weight:600;font-size:12px;color:var(--color-ink-medium);text-transform:uppercase;letter-spacing:.5px}.metadata-list dd{margin:0;font-size:14px;color:var(--color-ink-dark)}.keywords-list{display:flex;flex-wrap:wrap;gap:4px}.keyword-tag{display:inline-block;padding:2px 6px;background:var(--color-accent);color:#fff;border-radius:12px;font-size:11px;font-weight:500}.paper-main-content{flex:1;overflow-y:auto;overflow-x:auto;padding:var(--space-sm);background:linear-gradient(135deg,var(--color-paper) 0%,rgba(248,249,250,.8) 100%);height:100%;max-height:100%;scrollbar-width:thin;scrollbar-color:var(--color-ink-light) transparent;border-top:1px dotted var(--color-ink-light);position:relative;min-width:0;min-height:0;display:flex;flex-direction:column}.paper-content-wrapper{will-change:transform;transform-style:preserve-3d;backface-visibility:hidden;transition:transform .2s ease;position:relative;min-height:100%;overflow:visible;display:block;touch-action:pan-x pan-y;flex-shrink:0;margin:0 auto}.paper-main-content::-webkit-scrollbar{width:6px}.paper-main-content::-webkit-scrollbar-track{background:transparent}.paper-main-content::-webkit-scrollbar-thumb{background:var(--color-ink-light);border-radius:3px}.paper-main-content::-webkit-scrollbar-thumb:hover{background:var(--color-ink-medium)}.paper-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--space-lg);color:var(--color-ink-medium);font-family:var(--font-sans)}.loading-spinner{width:40px;height:40px;border:4px solid rgba(0,0,0,.1);border-top:4px solid var(--color-accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.paper-error{text-align:center;padding:var(--space-md);color:var(--color-ink-dark);font-family:var(--font-sans)}.paper-error h3{color:#d63031;margin:0 0 var(--space-md) 0}.paper-error p{color:var(--color-ink-medium);margin:0 0 var(--space-lg) 0}.retry-btn{padding:var(--space-sm) var(--space-lg);background:var(--color-accent);color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500;font-family:var(--font-sans);transition:background .2s ease}.retry-btn:hover{background:#0056b3}.paper-abstract{max-width:800px;margin:0 auto}.paper-abstract h3{font-family:var(--font-serif);font-size:1.5rem;color:var(--color-ink-dark);margin:0 0 var(--space-md) 0;border-bottom:2px solid var(--color-accent);padding-bottom:var(--space-sm)}.paper-abstract p{font-size:1.1rem;line-height:1.7;color:var(--color-ink-dark);text-align:justify}.paper-preview{max-width:1000px;margin:0 auto}.paper-preview .latex-renderer{font-size:.9rem;line-height:1.5}.paper-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-lg);background:#f8f9fa;border-top:1px solid #e9ecef;font-size:12px;color:var(--color-ink-medium)}.paper-info{display:flex;align-items:center;gap:var(--space-md)}.paper-id{font-family:var(--font-mono);background:#0000000d;padding:2px 6px;border-radius:3px}.paper-title{font-weight:500;color:var(--color-ink-dark)}.footer-btn{background:none;border:1px solid #e9ecef;padding:4px 8px;border-radius:3px;cursor:pointer;font-size:11px;color:var(--color-ink-medium);transition:all .2s ease}.footer-btn:hover{background:#0000000d;color:var(--color-ink-dark)}@media (max-width: 1024px){.paper-main-content{padding:var(--space-xs)}}@media (max-width: 768px){.latex-paper-viewer{width:100%;max-width:100%}.paper-controls{flex-wrap:wrap;gap:var(--space-sm)}.control-group{gap:2px}.control-btn{width:28px;height:28px;font-size:12px}.paper-content-container{flex-direction:column}.paper-sidebar{width:100%;max-height:200px;border-right:none;border-bottom:1px solid #e9ecef}.paper-main-content{padding:var(--space-xs);height:calc(100vh - 120px);max-height:calc(100vh - 120px);overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overscroll-behavior:auto}.paper-main-content .latex-document-viewport{padding:.25rem;-webkit-overflow-scrolling:touch;overscroll-behavior:auto;touch-action:pan-x pan-y;width:100%;max-width:100%}.paper-main-content .latex-document-renderer{width:100%;max-width:100%}.paper-main-content .latex-document-renderer .page{width:100%;max-width:100%;padding:.4in;margin:0 auto .5rem;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;box-sizing:border-box}.paper-main-content .latex-document-renderer .two-column-content{column-count:1!important;column-gap:0}.paper-content-wrapper{width:100%;max-width:100%;transform-origin:top center}.paper-main-content .latex-document-renderer .latex-title,.paper-main-content .latex-document-renderer .latex-abstract,.paper-main-content .latex-document-renderer .latex-author,.paper-main-content .latex-document-renderer .latex-date{padding-left:1rem;padding-right:1rem;box-sizing:border-box}}@media (max-width: 480px){.paper-controls{padding:var(--space-sm)}.control-group{flex-wrap:wrap}.paper-main-content{padding:var(--space-xs);height:calc(100vh - 120px);max-height:calc(100vh - 120px)}.paper-main-content .latex-document-viewport{padding:.125rem;width:100%;max-width:100%}.paper-main-content .latex-document-renderer{width:100%;max-width:100%}.paper-main-content .latex-document-renderer .page{width:100%;max-width:100%;padding:.3in;margin:0 auto .25rem}.paper-main-content .latex-document-renderer .two-column-content,.paper-main-content .latex-document-renderer .single-column{column-count:1!important;column-gap:0}.paper-content-wrapper{width:100%;max-width:100%;transform-origin:top center}.paper-main-content .latex-document-renderer .latex-title,.paper-main-content .latex-document-renderer .latex-abstract,.paper-main-content .latex-document-renderer .latex-author,.paper-main-content .latex-document-renderer .latex-date{padding-left:1.5rem;padding-right:1.5rem;box-sizing:border-box}.paper-abstract h3{font-size:1.25rem}.paper-abstract p{font-size:1rem}}@media print{.latex-paper-viewer{position:static;background:#fff}.paper-controls,.paper-sidebar,.paper-footer{display:none}.paper-main-content{padding:0;transform:none!important}.paper-content-container{display:block}}.paper-page-container{min-height:100vh;background-color:var(--color-paper, #ffffff);color:var(--color-ink-dark, #333333)}.paper-page-header{padding:var(--space-lg, 2rem) var(--space-lg, 2rem) var(--space-md, 1rem);border-bottom:1px solid var(--color-border, #e0e0e0);background:#fff}.back-to-papers-btn{background:none;border:1px solid var(--color-border, #e0e0e0);padding:var(--space-sm, .5rem) var(--space-md, 1rem);border-radius:4px;cursor:pointer;font-size:.9rem;color:var(--color-text, #666);transition:all .2s ease;margin-bottom:var(--space-md, 1rem)}.back-to-papers-btn:hover{background-color:var(--color-bg-light, #f5f5f5);border-color:var(--color-primary, #007bff);color:var(--color-primary, #007bff)}.paper-page-title{font-size:1.8rem;font-weight:600;color:var(--color-text-dark, #222);margin:0;line-height:1.3}.paper-page-content{height:calc(100vh - 120px);overflow:hidden}.paper-page-content .latex-paper-viewer{height:100%;border:none;border-radius:0}@media (max-width: 768px){.paper-page-header{padding:var(--space-md, 1rem)}.paper-page-title{font-size:1.4rem}.paper-page-content{height:calc(100vh - 100px)}}.editor-note{grid-column:2 / 3;position:relative;top:0;padding:var(--space-md);border:none;border-top:2px solid var(--color-ink-medium);border-left:1px solid var(--color-ink-light);font-family:var(--font-body);font-size:.8rem;line-height:1.5;color:var(--color-ink-medium);background-color:#00000003;height:fit-content;max-width:100%}.editor-note-heading{font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-variant-caps:small-caps;color:var(--color-ink-dark);margin:0 0 var(--space-sm) 0;padding-bottom:var(--space-xs);border-bottom:1px dotted var(--color-ink-light)}.contact-for-access{margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px dotted var(--color-ink-light);font-family:var(--font-sans);font-size:.75rem;text-align:center;font-style:italic;color:var(--color-ink-medium);grid-column:1 / -1}@media (max-width: 768px){.editor-note{grid-column:1 / -1;order:1;font-size:.75rem}}.papers-header{text-align:left;margin-bottom:var(--space-md);position:relative;width:100%;padding-bottom:var(--space-sm);border-bottom:1px dotted var(--color-ink-light)}.journal-meta{display:flex;justify-content:space-between;font-family:var(--font-mono);text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.12em;font-size:.75rem;color:var(--color-ink-medium);margin-bottom:var(--space-xs)}.papers-title{font-family:var(--font-serif);font-size:2rem;text-align:left;margin-bottom:0;color:var(--color-ink-dark);letter-spacing:.01em;font-weight:700;line-height:1.2}.papers-subtitle{font-family:var(--font-serif);font-style:italic;font-size:1rem;color:var(--color-ink-medium);text-align:left;margin:var(--space-xs) 0 0;letter-spacing:.02em;position:relative;padding-bottom:0}@media (max-width: 768px){.papers-title{font-size:1.8rem}.papers-subtitle{font-size:.9rem}}@media (max-width: 480px){.papers-title{font-size:1.4rem}.papers-subtitle{font-size:.8rem}}.manuscripts-section{grid-column:1 / 2;display:flex;flex-direction:column}.toc-notice{font-family:var(--font-mono);font-size:.65rem;font-weight:600;letter-spacing:.1em;color:var(--color-accent);text-transform:uppercase;font-variant-caps:small-caps;margin-bottom:var(--space-xs);text-align:left}.manuscripts-toc{list-style:none;padding:0;margin:0;counter-reset:toc-counter;display:grid;grid-template-columns:1fr;gap:0}@media (max-width: 768px){.manuscripts-section{grid-column:1 / -1;order:2}.toc-notice{text-align:left}}.papers-container{background-color:var(--color-paper);color:var(--color-ink-dark);font-family:var(--font-serif);line-height:1.45;max-width:100%;width:100%;margin:0 auto;overflow-x:hidden;overflow-y:visible}.papers-layout{display:grid;grid-template-columns:0fr 1fr;transition:grid-template-columns .3s ease-in-out;width:100%;overflow:visible}.papers-layout.viewer-open{grid-template-columns:50% 1fr}.papers-content{padding:var(--space-md) var(--space-lg);width:100%;max-width:1400px;margin:0 auto;padding-top:var(--space-xl);padding-bottom:var(--space-md);overflow-x:hidden;overflow-y:visible;box-sizing:border-box}.paper-viewer-panel{overflow:hidden;background:#fff;position:relative;transform:translate(-100%);transition:transform .3s ease-in-out;height:80vh;max-height:80vh;border-radius:0 8px 8px 0;z-index:100}.paper-viewer-panel.active{transform:translate(0)}@media (max-width: 768px){.paper-viewer-panel{border-radius:0;box-shadow:none;border-right:none}}.toc-container{position:relative;padding-top:var(--space-md);display:grid;grid-template-columns:2.5fr 1fr;gap:var(--space-lg);align-items:start}@media (max-width: 1024px){.papers-layout.viewer-open{grid-template-columns:55% 1fr}}@media (max-width: 768px){.papers-layout{display:block}.papers-layout.viewer-open{grid-template-columns:1fr}.paper-viewer-panel{position:fixed;top:0;left:0;width:100%;height:100vh;max-height:100vh;z-index:1000;overflow:visible;touch-action:pan-x pan-y}.papers-layout.viewer-open:before{content:"";position:fixed;inset:0;background:#00000080;z-index:999;opacity:1;transition:opacity .3s ease-in-out}.papers-content{padding:var(--space-sm) var(--space-md)}.toc-container{grid-template-columns:1fr;gap:var(--space-md)}.paper-viewer-panel .latex-paper-viewer{height:100vh;max-height:100vh}}@media (max-width: 1200px){.papers-content{padding:var(--space-sm) var(--space-md);height:auto;max-height:none;overflow-y:visible}}.layout-sidebar{position:fixed;top:130px;left:calc(50% - 700px);width:350px;max-height:calc(100vh - 150px);z-index:10}@media (max-width: 1300px) and (min-width: 769px){.layout-sidebar{position:fixed;top:30px;right:30px;left:auto;width:50px;height:50px;background:var(--color-paper);border:2px solid var(--color-ink-light);border-radius:4px;box-shadow:0 2px 8px #0000001a;z-index:1000;transition:all .3s ease;cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center}.layout-sidebar>*{display:none}.layout-sidebar:hover,.layout-sidebar.expanded{width:320px;height:auto;max-height:70vh;border-radius:4px;cursor:default;justify-content:flex-start;align-items:flex-start;border-color:var(--color-accent);box-shadow:0 4px 16px #00000026;padding:var(--space-sm);overflow-y:auto}.layout-sidebar:hover>*,.layout-sidebar.expanded>*{display:block}.layout-sidebar:before{content:"";width:20px;height:16px;background:linear-gradient(to bottom,var(--color-ink-dark) 0 2px,transparent 2px 6px,var(--color-ink-dark) 6px 8px,transparent 8px 12px,var(--color-ink-dark) 12px 14px,transparent 14px 16px);background-size:20px 16px;transition:opacity .3s ease}.layout-sidebar:hover:before,.layout-sidebar.expanded:before{opacity:0}}@media (max-width: 768px){.layout-sidebar{position:static;width:100%;margin-bottom:2rem;background:transparent;box-shadow:none;border:none}}.mobile-nav-pill{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#fffffff2;border-radius:24px;box-shadow:0 8px 32px #0000001f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.2);z-index:1000;transition:all .3s cubic-bezier(.4,0,.2,1);max-width:calc(100vw - 40px);animation:slideUp .4s ease-out}@keyframes slideUp{0%{transform:translate(-50%) translateY(100px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.mobile-nav-pill.expanded{border-radius:16px;bottom:20px;max-height:60vh}.pill-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease}.pill-header:hover{background-color:#42a5f514}.current-section{font-size:.9rem;font-weight:500;color:var(--color-ink-dark, #333);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pill-arrow{font-size:16px;color:var(--color-accent, #1976D2);transition:transform .3s ease;margin-left:12px;flex-shrink:0}.pill-arrow.rotated{transform:rotate(180deg)}.pill-content{border-top:1px solid rgba(230,230,230,.5);padding:8px 0;max-height:50vh;overflow-y:auto;animation:expandDown .3s ease-out}@keyframes expandDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.pill-sections{display:flex;flex-direction:column;gap:2px}.pill-section-item{background:none;border:none;padding:12px 20px;text-align:left;font-size:.85rem;color:var(--color-ink-medium, #666);cursor:pointer;transition:all .2s ease;border-radius:8px;margin:0 8px;font-family:inherit;position:relative}.pill-section-item:hover{background-color:#42a5f514;color:var(--color-accent, #1976D2);transform:translate(4px)}.pill-section-item.active{background-color:#42a5f526;color:var(--color-accent, #1976D2);font-weight:500}.pill-section-item.active:before{content:"";position:absolute;left:8px;top:50%;transform:translateY(-50%);width:3px;height:16px;background-color:var(--color-accent, #42A5F5);border-radius:2px}.pill-content::-webkit-scrollbar{width:4px}.pill-content::-webkit-scrollbar-track{background:transparent}.pill-content::-webkit-scrollbar-thumb{background-color:#9696964d;border-radius:4px}@media (max-width: 480px){.mobile-nav-pill{bottom:16px;left:16px;right:16px;transform:none;max-width:none}.current-section{max-width:140px;font-size:.85rem}.pill-header{padding:10px 16px}.pill-section-item{padding:10px 16px;font-size:.8rem}}@media (min-width: 769px){.mobile-nav-pill{display:none}}.relevant-classes-content{margin:0;padding:0}.classes-content{margin-top:var(--space-md)}.classes-intro{font-family:var(--font-body);font-size:1.05rem;line-height:1.7;color:var(--color-ink-dark);margin-bottom:var(--space-md);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.classes-list{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-md);margin:0;padding:0}.class-item{display:inline-block;font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--color-ink-dark);padding:.25rem .5rem;background-color:#00000008;border-radius:4px;border:1px solid rgba(0,0,0,.08);transition:all .2s ease}.class-item:hover{background-color:#0000000d;border-color:var(--color-accent);color:var(--color-accent)}.reu-container{background:#f9f9f9;border:1px solid #ddd;border-radius:20px;padding:10px;margin:20px auto;width:95%;font-family:Arial,sans-serif}.reu-container h2,.reu-container h3{color:#333}.reu-container p{color:#666;font-size:16px}.harvard-research{font-family:var(--font-body)}.harvard-header{margin-bottom:var(--space-md)}.harvard-title{font-family:var(--font-serif);font-size:1.8rem;font-weight:700;color:var(--color-ink-dark);margin:0 0 var(--space-xs) 0;letter-spacing:-.02em;line-height:1.3}.harvard-date{font-family:var(--font-mono);font-size:.75rem;color:var(--color-ink-medium);margin:0;text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.08em;opacity:.85}.harvard-roles{display:flex;flex-direction:column;gap:var(--space-md)}.harvard-role{padding-left:var(--space-md);border-left:2px solid var(--color-accent);position:relative}.role-content a{color:var(--color-accent);text-decoration:none;border-bottom:1px dotted var(--color-accent);transition:all .2s ease}.role-content a:hover{color:var(--color-ink-dark);border-bottom-color:var(--color-ink-dark);border-bottom-style:solid}.mit-research{font-family:var(--font-body)}.mit-header{margin-bottom:var(--space-md)}.mit-title{font-family:var(--font-serif);font-size:1.8rem;font-weight:700;color:var(--color-ink-dark);margin:0 0 var(--space-xs) 0;letter-spacing:-.02em;line-height:1.3}.mit-date{font-family:var(--font-mono);font-size:.75rem;color:var(--color-ink-medium);margin:0;text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.08em;opacity:.85}.mit-roles{display:flex;flex-direction:column;gap:var(--space-md)}.mit-role{padding-left:var(--space-md);border-left:2px solid var(--color-accent);position:relative}.role-header{display:flex;align-items:flex-start;gap:var(--space-sm);margin-bottom:var(--space-xs)}.role-badge{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;background-color:var(--color-accent);color:#fff;border-radius:50%;font-family:var(--font-mono);font-size:.75rem;font-weight:600;flex-shrink:0;margin-top:.1rem}.role-title-wrapper{display:flex;flex-direction:column;gap:.25rem;flex:1}.role-title{font-family:var(--font-sans);font-size:.95rem;font-weight:600;color:var(--color-ink-dark);line-height:1.4}.role-date{font-family:var(--font-mono);font-size:.7rem;color:var(--color-ink-medium);text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.08em;opacity:.85}.role-content{font-family:var(--font-body);font-size:1.05rem;line-height:1.7;color:var(--color-ink-dark);margin-left:calc(1.5rem + var(--space-sm));padding-top:var(--space-xs)}.role-content strong{color:var(--color-ink-dark);font-weight:600}.details-button{padding:.5rem 1.25rem;font-size:.875rem;font-family:var(--font-sans, "IBM Plex Sans", sans-serif);font-weight:600;text-transform:uppercase;letter-spacing:.05em;background-color:var(--color-accent);color:#fff;border:1px solid var(--color-accent);border-radius:4px;cursor:pointer;transition:all .3s ease;margin-top:var(--space-sm)}.details-button:hover{background-color:var(--color-ink-dark);border-color:var(--color-ink-dark);color:#fff}.details{margin-top:var(--space-md);padding-top:var(--space-md);animation:fadeIn .3s ease-out}.details p{color:var(--color-ink-dark);line-height:1.7;margin-bottom:var(--space-md);font-family:var(--font-body);font-size:1.05rem}.details p:last-child{margin-bottom:0}.terascale-research{font-family:var(--font-body, "Source Serif Pro", Georgia, serif);margin:0;padding:0;background-color:transparent;border:none;border-radius:0;width:100%}.model-container-tars{width:25vw;height:25vw;border-radius:var(--model-container-border-radius);margin-bottom:2rem;padding:.1rem;overflow:hidden;display:flex;justify-content:center;align-items:center;margin:0 auto}.react-canvas-tars{width:100%;height:100%}.model-container-tars canvas{width:100%!important;height:100%!important;display:block}.terascale-research .summary h2{color:var(--color-ink-dark);font-family:var(--font-serif, "Playfair Display", serif)}.terascale-research .summary h2 a{color:var(--color-ink-dark);text-decoration:none;border-bottom:1px dotted var(--color-ink-light);transition:all .2s ease}.terascale-research .summary h2 a:hover{color:var(--color-accent);border-bottom-color:var(--color-accent);border-bottom-style:solid}.terascale-research .summary p{font-size:1rem;color:var(--color-ink-dark);line-height:1.6}.terascale-research .details a{color:var(--color-ink-dark);text-decoration:none;border-bottom:1px dotted var(--color-ink-light);transition:all .2s ease}.terascale-research .details a:hover{color:var(--color-accent);border-bottom-color:var(--color-accent);border-bottom-style:solid}.terascale-research .details p{color:var(--color-ink-dark);line-height:1.7;margin-bottom:var(--space-md)}.details-button{padding:.5rem 1.25rem;font-size:.875rem;font-family:var(--font-sans, "IBM Plex Sans", sans-serif);cursor:pointer;color:#fff;background-color:var(--color-accent);border:1px solid var(--color-accent);border-radius:0;margin-top:var(--space-md);transition:all .2s ease;text-transform:uppercase;letter-spacing:.05em;font-weight:500}.details-button:hover{background-color:var(--color-ink-dark)!important;color:#fff!important;border-color:var(--color-ink-dark)!important}.details{padding-top:var(--space-lg);margin-top:var(--space-lg);border-top:1px dotted var(--color-ink-light);animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.vizcom-container{background:#f9f9f9;border:1px solid #ddd;border-radius:20px;padding:10px;margin:20px auto;width:95%;font-family:Arial,sans-serif}.vizcom-container h2,.vizcom-container h3{color:#333}.vizcom-container p{color:#666;font-size:16px}.details-button{display:inline-block;background-color:#ff56b3;color:#fff;padding:8px 16px;font-size:14px;border:none;border-radius:4px;cursor:pointer;transition:background-color .3s ease;box-shadow:0 2px 4px #0000004d}.details-button:hover{background-color:#004494;box-shadow:none}.details{margin-top:10px;padding-top:20px;animation:slideIn .5s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.skills-content{margin:0;padding:0;margin-top:var(--space-md)}.skills-list{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-md);margin:0;padding:0}.skill-item{display:inline-block;font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--color-ink-dark);padding:.25rem .5rem;background-color:#00000008;border-radius:4px;border:1px solid rgba(0,0,0,.08);transition:all .2s ease;cursor:pointer}.skill-item:hover{background-color:#0000000d;border-color:var(--color-accent);color:var(--color-accent)}.personal-introduction{max-width:100%;margin:0;padding:0}.personal-introduction .about{padding:0;margin:0;background:transparent;border:none;box-shadow:none}.personal-introduction .about>div,.personal-introduction .summary-content{padding:0;margin:0;background:transparent;border:none;box-shadow:none;padding-top:var(--space-lg)}.personal-introduction p{font-family:var(--font-body);font-size:1.15rem;line-height:1.7;color:var(--color-ink-dark);margin-bottom:var(--space-md);text-align:left;text-indent:2em;padding:0;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;max-width:100%}.personal-introduction p:first-of-type{text-indent:0;margin-bottom:var(--space-md)}.personal-introduction p:last-of-type{margin-bottom:0}:root{--font-serif: "Playfair Display", "Times New Roman", Georgia, serif;--font-body: "Source Serif Pro", Georgia, serif;--font-sans: "IBM Plex Sans", -apple-system, system-ui, sans-serif;--font-mono: "IBM Plex Mono", monospace;--color-paper: #fcfaf7;--color-ink-dark: #1a1a1a;--color-ink-medium: #333333;--color-ink-light: #666666;--color-accent: #8b0000;--space-paper-xs: .5rem;--space-paper-sm: 1rem;--space-paper-md: 1.5rem;--space-paper-lg: 2rem;--space-paper-xl: 3rem;--space-paper-xxl: 4rem;--text-primary: #333;--text-secondary: #666;--background-primary: #fff;--background-secondary: #f8f8f8;--background-accent: #f0f7ff;--background-accent-strong: #e6f3ff;--border-color: #ddd;--link-color: #0066cc;--link-hover-color: #004499;--font-size-base: 16px;--font-size-small: .9rem;--font-size-h1: 2.5rem;--font-size-h2: 2rem;--line-height-base: 1.6;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 4px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 12px rgba(0, 102, 204, .15);--border-radius-sm: 4px;--border-radius-md: 8px;--transition-fast: .2s;--transition-base: .3s;--transition-timing: cubic-bezier(.4, 0, .2, 1)}.App{background-color:var(--color-paper);color:var(--color-ink-dark);font-family:var(--font-serif);line-height:1.6;padding-top:0;overflow-x:hidden;width:100%;max-width:100vw;min-height:100vh;display:flex;flex-direction:column}:root{--sidebar-width: 250px;--content-min-width: 600px;--content-max-width: 800px;--right-sidebar-width: 300px;--container-max-width: 1350px;--grid-gap: 2rem;--container-padding: 2rem;--breakpoint-lg: 1200px;--breakpoint-md: 992px;--breakpoint-sm: 768px}.page-container{width:100%;max-width:var(--container-max-width);margin:0 auto;padding:var(--container-padding)}.page-layout{display:grid;grid-template-columns:var(--sidebar-width) minmax(var(--content-min-width),var(--content-max-width)) var(--right-sidebar-width);gap:var(--grid-gap);width:100%;position:relative}.main-content{grid-column:2;position:relative;width:100%;max-width:var(--content-max-width)}.content-wrapper{position:relative;padding:var(--container-padding);background:var(--background-primary, #fff);border-radius:8px}.left-sidebar{grid-column:1;position:sticky;top:var(--container-padding);height:calc(100vh - (2 * var(--container-padding)));padding:1rem}.right-sidebar{grid-column:3;position:sticky;top:var(--container-padding);height:calc(100vh - (2 * var(--container-padding)));padding:1rem}@media (max-width: var(--breakpoint-lg)){.page-layout{grid-template-columns:calc(var(--sidebar-width) * .8) minmax(var(--content-min-width),var(--content-max-width)) calc(var(--right-sidebar-width) * .8);gap:calc(var(--grid-gap) * .75)}}@media (max-width: var(--breakpoint-md)){.page-layout{grid-template-columns:1fr}.left-sidebar,.right-sidebar{display:none}.main-content{max-width:100%}}@media (max-width: var(--breakpoint-sm)){:root{--container-padding: 1rem;--grid-gap: 1rem}}:root{--sidenote-width: calc(var(--right-sidebar-width) - var(--grid-gap));--sidenote-offset: var(--grid-gap)}.footnotes-container{position:absolute;top:0;right:calc(-1 * (var(--sidenote-width) + var(--sidenote-offset)));width:var(--sidenote-width);height:100%;pointer-events:none;z-index:1}.sidenote{position:absolute;font-size:var(--font-size-small);color:var(--text-secondary);padding:var(--spacing-md);background-color:var(--background-secondary);border-left:3px solid var(--border-color);border-radius:var(--border-radius-sm);box-shadow:var(--shadow-sm);pointer-events:auto;max-width:var(--sidenote-width);opacity:.85;transform:translate(0);transition:all var(--transition-base) var(--transition-timing);cursor:pointer;margin-top:calc(-1.5 * var(--spacing-lg))}.sidenote:hover,.sidenote.active{opacity:1;transform:translate(calc(-1 * var(--spacing-md)));background-color:var(--background-accent);border-left-color:var(--accent-color);box-shadow:var(--shadow-md)}.sidenote.active{background-color:var(--background-accent-strong);box-shadow:var(--shadow-lg)}.footnote{color:var(--link-color);text-decoration:none;cursor:pointer;position:relative;padding:var(--spacing-xs) var(--spacing-sm);margin:calc(-1 * var(--spacing-xs)) calc(-1 * var(--spacing-sm));border-radius:var(--border-radius-sm);transition:all var(--transition-base) var(--transition-timing);background-color:transparent}.footnote:hover{background-color:var(--background-accent);color:var(--link-hover-color)}.footnote.active{background-color:var(--background-accent-strong);color:var(--link-hover-color);box-shadow:var(--shadow-sm)}.footnote sup{color:inherit;transition:transform var(--transition-base) var(--transition-timing);font-size:.75em;font-weight:500}.footnote:hover sup{transform:translateY(-1px)}@media (max-width: var(--breakpoint-lg)){:root{--sidenote-width: calc(var(--right-sidebar-width) * .8)}}@media (max-width: var(--breakpoint-md)){.footnotes-container{display:none}}.section-title{font-family:var(--font-serif);font-size:clamp(1.5rem,4vw,2.5rem);font-weight:700;color:var(--color-ink-dark);margin-bottom:var(--space-lg);padding-bottom:var(--space-xs);border-bottom:1px solid var(--color-ink-light);display:inline-block}.section-label{font-family:"Old English Text MT","UnifrakturMaguntia",var(--font-serif);font-size:1.2rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-ink-medium);text-align:center;margin-bottom:var(--space-md);position:relative;display:flex;align-items:center;justify-content:center}.section-label:before,.section-label:after{content:"";height:1px;background:var(--color-ink-light);flex:1;margin:0 var(--space-md)}@media (max-width: 768px){.section-label{font-size:1.1rem}.section-label:before,.section-label:after{margin:0 var(--space-sm)}}@media (max-width: 480px){.section-label{font-size:1rem}}@media (max-width: 768px){.section-title{margin-bottom:var(--space-md)}}:root{--profile-image-size: 500px;--profile-image-mobile-size: 120px;--scroll-margin-top: 80px;--scroll-margin-top-large: 120px;--tablet-padding-right: 100px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-serif);background-color:var(--color-paper);color:var(--color-ink-dark);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.profile{text-align:center;margin-bottom:var(--space-xl)}.profile-image{width:var(--profile-image-size);height:var(--profile-image-size);border-radius:50%;object-fit:cover;margin-bottom:var(--space-md);border:2px solid var(--color-ink-light)}.profile h1,.masthead-title{font-family:var(--font-serif);font-size:clamp(2rem,6vw,3.5rem);font-weight:400;color:var(--color-ink-dark);margin:0 0 var(--space-sm);letter-spacing:.02em;line-height:1.2}.profile-subtitle{font-family:var(--font-serif);font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.6;color:var(--color-ink-medium);text-align:center;font-style:normal;margin:var(--space-md) 0 var(--space-xs);padding:0 var(--space-md);position:relative}.contact{margin:var(--space-md) 0}.contact a{display:inline-block;margin:0 var(--space-sm);color:var(--color-ink-medium);text-decoration:none;font-family:var(--font-sans);font-size:.9rem;border-bottom:1px solid var(--color-ink-light);padding-bottom:2px;transition:color .3s ease,border-color .3s ease}.contact a:hover{color:var(--color-accent);border-color:var(--color-accent)}.profile-content{max-width:1400px;margin:0 auto;padding:0 var(--space-md);display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-lg);position:relative;overflow:visible}.main-content{grid-column:1 / 11;position:relative;z-index:1;width:100%;max-width:1000px;padding:0;margin:0 auto;overflow:visible}.portfolio-section{scroll-margin-top:var(--scroll-margin-top);padding-top:var(--space-md);margin-bottom:var(--space-lg);position:relative;background-color:transparent;padding:0;border-radius:0;border:none;box-shadow:none;transition:none}.portfolio-section:hover{box-shadow:none;border-color:transparent}.portfolio-section p{font-family:var(--font-body);font-size:1.15rem;line-height:1.6;color:var(--color-ink-dark);margin-bottom:var(--space-xs);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.portfolio-section ul{padding-left:var(--space-md);margin-bottom:var(--space-xs)}.portfolio-section li{font-family:var(--font-body);margin-bottom:var(--space-xs);line-height:1.6}.experience-items,.research-items,.project-items{display:grid;grid-template-columns:1fr;gap:0}.section-title{font-family:var(--font-serif);font-size:2.5rem;font-weight:700;color:var(--color-ink-dark);margin-top:1em;margin-bottom:var(--space-sm);padding-bottom:.25rem;border-bottom:1px solid rgba(0,0,0,.1);letter-spacing:-.03em;line-height:1.2}.section-title:first-child{margin-top:0}.footnotes-container{grid-column:11 / 13;position:relative;padding:0;z-index:1000}.sidenote{position:absolute;left:0;background-color:var(--color-paper);border-left:4px solid var(--color-ink-medium);padding:var(--space-md);margin-bottom:var(--space-md);font-family:var(--font-serif);font-size:.9rem;line-height:1.6;box-shadow:var(--shadow-soft);transition:var(--transition-smooth);width:calc(100% - 2rem);max-width:300px;z-index:10;pointer-events:auto;border-radius:var(--border-radius-sm);border:1px solid var(--border-color-light)}.sidenote:hover,.sidenote.active{transform:translate(-3px);box-shadow:var(--shadow-medium);border-left-color:var(--color-accent);border-color:var(--color-ink-medium)}.sidenote-number{font-weight:700;color:var(--color-accent)}@media (max-width: 1200px){.main-content{grid-column:3 / 11}.footnotes-container{grid-column:11 / 13}}@media (max-width: 900px){.profile-content{grid-template-columns:1fr;gap:var(--space-md)}.main-content{grid-column:1}.footnotes-container{grid-column:1;position:relative;height:auto;margin-top:var(--space-xl)}}@media (max-width: 768px){.profile-image{width:var(--profile-image-mobile-size);height:var(--profile-image-mobile-size)}.contact a{display:block;margin:var(--space-xs) 0}.portfolio-section{padding-top:var(--space-lg);margin-bottom:var(--space-xxl)}.section-title{margin-bottom:var(--space-md)}.portfolio-section p{font-size:1rem}.portfolio-page-layout{padding-left:0;padding-right:0;margin-top:1rem}.portfolio-main-content-wrapper{padding:0 1rem}.profile-content{flex-direction:column;gap:1.5rem}.profile-content .footnotes-container{position:static;width:100%;margin-left:0;margin-top:1.5rem;order:3}}@media (max-width: 480px){:root{--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-xxl: 3rem}.profile h1{font-size:2rem}.profile-subtitle{font-size:1rem}.profile-content{padding:0 var(--space-sm)}.main-content{padding:0}.sidenote{padding:var(--space-sm)}}section[id]{scroll-margin-top:80px}.App{width:100%;min-height:100vh;overflow-x:hidden;overflow-y:visible;position:relative;display:flex;flex-direction:column}.portfolio-page-layout{display:block;position:relative;padding-left:calc(var(--sidebar-width, 320px) + var(--toc-gap, 20px));margin-top:2rem;min-height:calc(100vh - 2rem);transition:var(--transition-smooth);background-color:var(--color-paper)}.portfolio-main-content-wrapper{max-width:var(--content-max-width, 1400px);margin:0 auto;position:relative;padding:0 var(--space-md);margin-top:var(--space-md);background-color:transparent;border:none;box-shadow:none;border-radius:0}.profile-content{display:flex;justify-content:space-between;gap:var(--space-xl);position:relative;background-color:transparent;padding:var(--space-sm) 0;border-radius:0;border:none;box-shadow:none}.main-content-area{flex-grow:1;max-width:1200px}.profile-content .footnotes-container{position:absolute;left:100%;margin-left:3rem;width:16vw;max-width:300px;top:0;height:100%;z-index:10;pointer-events:auto}@media (max-width: 1300px) and (min-width: 769px){.portfolio-page-layout{padding-left:0;padding-right:var(--tablet-padding-right)}.portfolio-main-content-wrapper{padding:0 1.5rem}.profile-content .footnotes-container{position:static;width:100%;margin-left:0;margin-top:2rem;order:3}}#portfolio-header,#summary,#timeline,#experience,#research,#education,#skills,#projects,#contact-section{scroll-margin-top:var(--scroll-margin-top-large)}.about p,.experience-items p,.research-items p,.project-items p,.education-section p,.skills-section p{font-family:var(--font-body);font-size:1.1rem;line-height:1.7;color:var(--color-ink-dark);margin-bottom:var(--space-md)}.experience-item,.research-item,.project-item{background-color:var(--color-paper);padding:var(--space-md) var(--space-lg);border-left:4px solid transparent;margin-bottom:var(--space-lg);border-radius:var(--border-radius-sm);box-shadow:var(--shadow-soft);border:1px solid var(--border-color-light);transition:var(--transition-smooth);position:relative}.experience-item:before,.research-item:before,.project-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:transparent;transition:var(--transition-base)}.experience-item:hover,.research-item:hover,.project-item:hover{transform:translate(3px);box-shadow:var(--shadow-medium);border-color:var(--color-ink-medium)}.experience-item:hover:before,.research-item:hover:before,.project-item:hover:before{background:var(--color-accent)}.item-title{font-family:var(--font-serif);font-size:1.5rem;font-weight:600;margin-bottom:var(--space-xs);color:var(--color-ink-dark);letter-spacing:.01em;line-height:1.3}.item-subtitle{font-family:var(--font-sans);font-size:1rem;font-weight:500;color:var(--color-ink-medium);margin-bottom:var(--space-sm);font-style:italic;line-height:1.5}.item-date{font-family:var(--font-sans);font-size:.875rem;color:var(--color-ink-light);margin-bottom:var(--space-md);display:inline-block;border-bottom:1px dotted var(--color-ink-light);padding-bottom:2px;letter-spacing:.02em}.project-link{display:inline-block;font-family:var(--font-sans);color:var(--color-ink-dark);text-decoration:none;border-bottom:1px dotted var(--color-ink-light);padding-bottom:2px;margin-bottom:var(--space-sm);transition:var(--transition-base);font-weight:500}.project-link:hover{color:var(--color-accent);border-color:var(--color-accent);border-bottom-style:solid}.education-item{margin-bottom:var(--space-lg);padding-left:var(--space-md);border-left:2px solid transparent;transition:border-left-color .3s ease}.education-item:hover{border-left-color:var(--color-accent)}.education-title{font-family:var(--font-serif);font-size:1.2rem;font-weight:600;margin-bottom:var(--space-xs)}.education-institution{font-family:var(--font-sans);font-size:1rem;font-style:italic;color:var(--color-ink-medium);margin-bottom:var(--space-xs)}.education-date{font-family:var(--font-sans);font-size:.9rem;color:var(--color-ink-light);margin-bottom:var(--space-sm)}.skills-category{margin-bottom:var(--space-lg)}.skills-category-title{font-family:var(--font-serif);font-size:1.2rem;font-weight:600;margin-bottom:var(--space-sm);padding-bottom:var(--space-xs);border-bottom:1px solid var(--color-ink-light);display:inline-block}.skills-list{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-bottom:var(--space-md)}.skill-tag{font-family:var(--font-sans);font-size:.9rem;background-color:#8b00001a;color:var(--color-ink-medium);padding:var(--space-xs) var(--space-sm);border-radius:4px;display:inline-block;border:1px solid rgba(139,0,0,.2)}.timeline-container{position:relative;margin:var(--space-lg) 0;padding-left:var(--space-xl)}.timeline-container:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:repeating-linear-gradient(to bottom,var(--color-ink-light),var(--color-ink-light) 4px,transparent 4px,transparent 8px)}.timeline-item{position:relative;margin-bottom:var(--space-lg);padding-left:var(--space-md)}.timeline-item:before{content:"";position:absolute;left:calc(-1 * var(--space-md));top:var(--space-xs);width:12px;height:12px;border-radius:50%;background-color:var(--color-paper);border:2px solid var(--color-accent);transform:translate(-50%)}.timeline-date{font-family:var(--font-serif);font-size:1rem;font-weight:600;color:var(--color-accent);margin-bottom:var(--space-xs)}.timeline-title{font-family:var(--font-serif);font-size:1.1rem;margin-bottom:var(--space-xs)}.timeline-description{font-family:var(--font-body);font-size:.95rem;color:var(--color-ink-medium)}@media (max-width: 768px){.experience-item,.research-item,.project-item{padding:var(--space-sm) var(--space-md)}.item-title{font-size:1.2rem}.timeline-container{padding-left:var(--space-lg)}.skills-list{flex-direction:column;gap:var(--space-xs)}.skill-tag{display:inline-block;margin-right:var(--space-xs);margin-bottom:var(--space-xs)}}@media (max-width: 480px){.experience-item,.research-item,.project-item{padding:var(--space-sm)}.timeline-container{padding-left:var(--space-md)}.timeline-item{padding-left:var(--space-sm)}}.portfolio-section{position:relative;scroll-margin-top:120px}.portfolio-section .section-title{position:relative;font-size:1.5rem;font-weight:600;color:var(--color-ink-dark, #2c3e50);margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-accent-light, rgba(66, 165, 245, .2))}.experience-items,.research-items,.project-items{display:flex;flex-direction:column;gap:2rem}.experience-items>*,.research-items>*,.project-items>*{background:#fff9;border-radius:12px;padding:1.5rem;border:1px solid rgba(230,230,230,.5);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.experience-items>*:before,.research-items>*:before,.project-items>*:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--color-accent, #42A5F5) 0%,var(--color-accent-light, #64B5F6) 100%);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.experience-items>*:hover,.research-items>*:hover,.project-items>*:hover{transform:translateY(-4px);box-shadow:0 8px 32px #0000001a;border-color:var(--color-accent-light, rgba(66, 165, 245, .3))}.experience-items>*:hover:before,.research-items>*:hover:before,.project-items>*:hover:before{transform:scaleX(1)}.footnote{display:inline-block;font-size:.75rem;line-height:1;color:var(--color-accent, #42A5F5);background:#42a5f51a;padding:.2rem .4rem;border-radius:4px;margin-left:.2rem;cursor:pointer;transition:all .2s ease;font-weight:500;border:1px solid rgba(66,165,245,.2)}.footnote:hover{background:#42a5f533;transform:translateY(-1px);box-shadow:0 2px 8px #42a5f54d}.footnote.active{background:var(--color-accent, #42A5F5);color:#fff;transform:scale(1.1)}.footnote-popup{position:fixed;bottom:20px;left:20px;right:20px;background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 12px 48px #0003;border:1px solid rgba(230,230,230,.5);z-index:2000;animation:slideUpFade .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes slideUpFade{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}.footnote-popup-close{position:absolute;top:1rem;right:1rem;width:32px;height:32px;background:#0000001a;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.2rem;font-weight:700;color:var(--color-ink-medium, #666);transition:all .2s ease}.footnote-popup-close:hover{background:#0003;transform:scale(1.1)}@media (max-width: 1300px) and (min-width: 769px){.portfolio-section:before{display:none}.experience-items>*,.research-items>*,.project-items>*{padding:1.25rem}.portfolio-section .section-title{font-size:1.35rem;margin-bottom:1.25rem}}@media (max-width: 768px){.portfolio-section{scroll-margin-top:100px}.portfolio-section:before{display:none}.portfolio-section .section-title{font-size:1.25rem;margin-bottom:1rem}.experience-items,.research-items,.project-items{gap:1.5rem}.experience-items>*,.research-items>*,.project-items>*{padding:1rem;border-radius:8px}.experience-items>*:hover,.research-items>*:hover,.project-items>*:hover{transform:none}.footnote-popup{bottom:16px;left:16px;right:16px;padding:1.25rem}}:root{--font-serif: "Playfair Display", "Times New Roman", Georgia, serif;--font-body: "Source Serif Pro", Georgia, serif;--font-sans: "IBM Plex Sans", -apple-system, system-ui, sans-serif;--font-mono: "IBM Plex Mono", monospace;--color-paper: #fcfaf7;--color-paper-dark: #f5f2ed;--color-ink-dark: #1a1a1a;--color-ink-medium: #333333;--color-ink-light: #666666;--color-accent: #8b0000;--color-accent-light: rgba(139, 0, 0, .08);--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-xxl: 4rem;--shadow-soft: 0 2px 10px rgba(0, 0, 0, .05);--shadow-medium: 0 4px 20px rgba(0, 0, 0, .1);--shadow-strong: 0 8px 32px rgba(0, 0, 0, .15);--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 12px;--border-color: rgba(102, 102, 102, .2);--border-color-light: rgba(102, 102, 102, .1);--border-dotted: 1px dotted var(--color-ink-light);--transition-base: all .2s ease;--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1);--content-max-width: 950px;--sidebar-width: 320px;--toc-width: 350px;--toc-gap: 20px}.experience-items>div,.research-items>div,.project-items>div{padding:var(--space-md) var(--space-lg);border-left:none;border-radius:4px;background-color:var(--color-paper);transition:box-shadow .3s cubic-bezier(.4,0,.2,1),background-color .3s ease;box-shadow:8px 10px 40px #00000026,4px 5px 20px #0000001f,2px 3px 12px #00000014;position:relative;overflow:hidden;margin-bottom:var(--space-sm);margin-left:0;margin-right:0}.experience-items>div:before,.research-items>div:before,.project-items>div:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background-color:var(--color-accent);opacity:1;transition:width .3s cubic-bezier(.4,0,.2,1)}.experience-items>div:hover,.research-items>div:hover,.project-items>div:hover{transform:none!important;box-shadow:8px 10px 40px #00000026,4px 5px 20px #0000001f,2px 3px 12px #00000014!important}.experience-items>div:hover:before,.research-items>div:hover:before,.project-items>div:hover:before{width:4px}.experience-items>div h3,.research-items>div h3,.project-items>div h3{font-family:var(--font-serif);font-size:1.8rem;margin:0 0 var(--space-xs) 0;padding:0;line-height:1.3;font-weight:700;letter-spacing:-.02em;color:var(--color-ink-dark);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.experience-items>div p:first-of-type,.research-items>div p:first-of-type,.project-items>div p:first-of-type{display:block;color:var(--color-ink-medium);font-size:.75rem;margin:0 0 var(--space-xs) 0;padding:0;font-family:var(--font-mono);text-transform:uppercase;font-variant-caps:small-caps;letter-spacing:.08em;font-style:normal;opacity:.85}.experience-items>div ul,.research-items>div ul,.project-items>div ul,.experience-items>div p:not(:first-of-type),.research-items>div p:not(:first-of-type),.project-items>div p:not(:first-of-type){margin:0 0 var(--space-xs) 0;padding:0;line-height:1.6;color:var(--color-ink-dark);font-size:1.05rem;font-family:var(--font-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.experience-items>div ul,.research-items>div ul,.project-items>div ul{margin-left:var(--space-sm);padding-left:0;list-style-position:outside}.experience-items>div ul li,.research-items>div ul li,.project-items>div ul li{margin-bottom:.25rem;padding-left:0;font-family:var(--font-body);line-height:1.6}
