:root{--font-sans: "iA Writer Quattro S", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-small-size: 13px;--font-base-size: 15px;--font-body-size: 16px;--font-size-l: 18px;--font-size-xl: 24px;--font-heading-weight: 700;--font-body-weight: 400;--space-2: 4px;--space-3: 8px;--space-4: 12px;--space-5: 16px;--space-6: 21px;--space-7: 28px;--space-8: 36px;--space-9: 48px;--space-10: 68px;--space-11: 96px;color-scheme:light}:root[data-theme=light],:root:not([data-theme]){--color-bg: #fafaf7;--color-surface: #f0e8fa;--color-text-primary: #3b3143;--color-text-muted: #a999b680;--color-accent: #e45aa7;--color-diagram-accent: #0a9fae;--shadow-glow: 0 0 0 rgba(228, 90, 167, .45);--shadow-surface: 0 0 0 rgba(36, 22, 47, .25)}:root[data-theme=dark]{--color-bg: #191226;--color-surface: #191226;--color-text-primary: #f4f3c6;--color-text-muted: #f4f3c650;--color-accent: #ff4cc3;--color-diagram-accent: #4fd1c5;--shadow-glow: 0 0 12px var(--color-text-primary);--shadow-surface: -4px 0 48px 0 var(--color-text-primary);color-scheme:dark}:root{background:var(--color-bg)}html{background:var(--color-bg);box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}body{width:100vw;max-width:100vw;margin:0;min-height:100vh;overflow-x:hidden}a{color:var(--color-text-primary);text-decoration:none}main{width:100%;max-width:1512px;margin:0 auto;padding-top:var(--space-8);padding-left:var(--space-10);padding-right:var(--space-10)}.layout-root{min-height:100vh;display:flex;flex-direction:column;width:100%}.layout-root>main{flex:1;width:100%}header.navbar-container{width:100%;position:sticky;top:36px;z-index:20;transition:transform .2s ease-out,opacity .15s ease-out}.navbar-container--hidden{transform:translateY(-150%);opacity:0}.navbar{display:flex;justify-content:space-between;align-items:center;max-width:1512px;margin:0 auto 48px;padding-left:var(--space-10);padding-right:var(--space-10)}.navbar-menu-wrapper{position:relative;display:flex;align-items:center}.navbar-brand{text-decoration:none}.navbar-brand-wrapper{display:inline-flex;align-items:center;gap:8px}.navbar-brand h1{color:var(--color-text-primary);margin:0;font-size:15px;line-height:18px;font-weight:700;text-shadow:var(--shadow-glow);text-decoration:none}.navbar-page-path{font-size:15px;line-height:18px;font-weight:400;color:var(--color-text-muted)}.nav-links a{color:var(--color-text-primary);text-decoration:none;margin-left:24px}.nav-links a:hover{color:var(--color-accent)}.hamburger{display:none;font-size:15px;background:none;color:var(--color-text-primary);border:none;padding:0;cursor:pointer}.hamburger:hover{color:var(--color-accent)}.nav-dropdown{position:absolute;top:100%;right:0;margin-top:var(--space-4);background-color:var(--color-bg);border:1px solid var(--color-text-muted);border-radius:0;padding:var(--space-4) var(--space-5);display:none;z-index:1000}.nav-dropdown--open{display:block}.nav-dropdown-content{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.nav-dropdown-content a{font-size:15px;color:var(--color-text-primary);text-decoration:none;text-align:left;white-space:nowrap}.nav-dropdown-content a:hover{color:var(--color-accent)}@media(max-width:780px){.nav-links{display:none}.hamburger{display:block}}@media(min-width:781px){.navbar-menu-wrapper{display:none}}footer{position:static;font-size:13px;color:var(--color-text-muted);padding-top:320px;padding-bottom:24px;background:radial-gradient(84.82% 84.82% at 50% 100%,#ee652040,#edcb4426 47.65%,#fafaf700 91.87%)}.footer-inner{max-width:1512px;margin:0 auto;padding-left:var(--space-10);padding-right:var(--space-10);display:flex;justify-content:space-between;align-items:flex-start}@media(max-width:600px){.footer-inner{justify-content:center;align-items:center}}footer a{color:var(--color-text-muted);text-decoration:none}footer a:hover{color:var(--color-text-primary);text-decoration:underline}.footer-info{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px}.footer-copyright-row{display:inline-flex;align-items:center;gap:16px}.footer-social{display:inline-flex;align-items:center;gap:8px}.footer-social-link{display:inline-flex;color:var(--color-text-muted);padding:2px}.footer-social-link:hover{color:var(--color-text-primary)}.footer-social-link img{display:block;width:16px;height:16px;object-fit:contain;opacity:.2}.footer-links{display:flex;flex-direction:row;align-items:center;gap:12px}.theme-toggle{display:inline-flex;align-items:center;gap:8px;background:transparent;border:none;color:var(--color-text-muted);font-size:13px;cursor:pointer;padding:0}.theme-toggle-track{position:relative;width:40px;height:20px;border-radius:999px;background-color:#0000000f;box-shadow:inset 0 0 0 1px #00000014;overflow:hidden}[data-theme=dark] .theme-toggle-track{background-color:#f4f3c62e;box-shadow:inset 0 0 0 1px #f4f3c64d}.theme-toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:999px;background-color:var(--color-text-muted);box-shadow:0 1px 3px #00000026;opacity:.7;transform:translate(0);transition:transform .25s ease,box-shadow .25s ease}.theme-toggle-thumb--dark{transform:translate(20px)}.theme-toggle-label{font-family:var(--font-sans);font-size:var(--font-small-size);line-height:1.2}@media(max-width:900px){main{padding-left:var(--space-7);padding-right:var(--space-7)}.navbar,.footer-inner{padding-left:var(--space-7);padding-right:var(--space-7)}}@media(max-width:600px){main{padding-left:var(--space-8);padding-right:var(--space-8)}.navbar{padding-left:var(--space-8);padding-right:var(--space-8)}.navbar-page-path{display:none}.footer-inner{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-4)}.footer-info,.footer-copyright-row{flex-direction:column;align-items:center;gap:var(--space-3)}.footer-links,.footer-social{justify-content:center}.theme-toggle{flex-direction:column;align-items:center;gap:var(--space-2);margin-top:var(--space-3)}}footer:hover{color:var(--color-text-primary)}footer:hover a{color:var(--color-text-primary)}footer:hover .footer-social-link img{opacity:1}footer:hover .theme-toggle{color:var(--color-text-primary)}footer:hover .theme-toggle-thumb{background-color:var(--color-text-primary);box-shadow:0 2px 6px #00000040;opacity:1}.imprint{max-width:600px;margin:0 auto;display:flex;flex-direction:column}.imprint h2{font-size:18px;margin-bottom:12px}.imprint h3{font-size:15px;line-height:1.4;margin-bottom:4px}.imprint p{font-size:15px;margin-bottom:16px;line-height:1.4}@media(max-width:480px){.navbar,.footer-inner{padding-left:var(--space-6);padding-right:var(--space-6)}main{padding-top:var(--space-6);padding-left:var(--space-6);padding-right:var(--space-6)}}@font-face{font-family:iA Writer Quattro S;src:url(/assets/iAWriterQuattroS-Bold-DzkVVaht.woff2) format("woff2");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:iA Writer Quattro S;src:url(/assets/iAWriterQuattroS-BoldItalic-BRKpd2c3.woff2) format("woff2");font-style:italic;font-weight:700;font-display:swap}@font-face{font-family:iA Writer Quattro S;src:url(/assets/iAWriterQuattroS-Italic-DzF8or6q.woff2) format("woff2");font-style:italic;font-weight:400;font-display:swap}@font-face{font-family:iA Writer Quattro S;src:url(/assets/iAWriterQuattroS-Regular-CS_Vpeb6.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}html{font-family:var(--font-sans);color:var(--color-text-primary);font-size:var(--font-base-size);line-height:1.2}h1{font-size:18px;font-weight:700}h2,h3{font-size:15px;font-weight:700;margin:0 0 12px}.emphasis{font-style:oblique}.muted-text{color:var(--color-text-muted)}.bold{font-weight:700}p{margin:0}article p,article ul,article ol{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.2;font-size:var(--font-body-size)}article p{margin-bottom:8px}a{text-decoration:underline solid;color:var(--color-text-primary)}a.visited{color:#a9a889}a:hover{color:var(--color-accent)}p a{text-decoration:underline}p a:hover{text-decoration:none;color:var(--color-accent)}a.underlined{text-decoration:underline}a.underlined:hover{text-decoration:none;color:var(--color-accent)}.glow{text-shadow:var(--shadow-glow)}.content{display:flex;gap:128px;width:100%;max-width:100%}@media(max-width:1200px){.content{gap:var(--space-11)}}@media(max-width:1080px){.content{gap:64px}}@media(max-width:780px){.content{flex-direction:column;gap:24px}.articles-section{display:none}}.left-column{flex-basis:440px;flex-shrink:0}@media(max-width:1080px){.left-column{flex-basis:320px}}.intro-text{font-size:15px;line-height:18px;margin-bottom:48px}.intro-text-p{margin-bottom:12px}.list-title{margin-bottom:4px}ul li{margin-bottom:0}.intro-text-image{height:196px;width:144px;object-fit:cover;margin-bottom:16px}li.article-item{display:flex;justify-content:space-between}.article-list{list-style:none;padding:0;margin:0}.article-list li{font-size:15px;margin-bottom:12px}.article-list li a{color:var(--color-text-primary);text-decoration:none}.article-list li a:hover{color:var(--color-accent)}.right-column{flex-grow:1;min-width:0;overflow-wrap:break-word}.projects-list{display:flex;flex-direction:column}.project-item-link{display:flex;align-items:center;gap:16px;width:100%;height:100%;color:inherit;text-decoration:none}.project-item-link:hover{color:inherit}.project-learn-more{font-size:13px;line-height:1.2}.project-coming-soon{font-size:13px;line-height:1.2;color:var(--color-text-muted)}.project-item-link:hover .project-learn-more{color:var(--color-accent)}.project-item:hover{cursor:pointer}.projects-list:hover .project-item,.projects-list .project-item:hover{opacity:1}.projects-list .project-item:hover .project-learn-more{color:var(--color-accent)}.project-item{display:flex;align-items:center;height:90px;gap:16px;margin-bottom:16px;width:100%}.project-item--disabled,.project-item--disabled:hover{cursor:default}.project-item--disabled .project-details h3,.project-item--disabled .project-details p{color:var(--color-text-muted)}.project-item--disabled .project-thumbnail img,.project-item--disabled .project-thumbnail-placeholder{opacity:.3}.project-thumbnail{width:120px;height:90px;flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.project-thumbnail img{width:100%;height:100%;object-fit:cover}.project-thumbnail-placeholder{height:100%;width:100%;background-color:var(--color-text-primary);opacity:.08}.project-details{display:flex;flex-direction:column;justify-content:space-between;height:100%;flex-grow:1;min-width:0;overflow-wrap:break-word}.project-details h3{font-size:15px;font-weight:700;margin:0}.project-details p{font-size:13px;margin:4px 0;line-height:1.2;overflow:hidden;max-width:100%;flex-grow:1;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;text-overflow:ellipsis}.project-details a{font-size:13px;color:var(--color-text-primary);text-decoration:none;align-self:start}.project-details a:hover{color:var(--color-accent)}#resume-container,.resume-container{max-width:560px;margin:auto;padding:20px 20px 120px}.experience-item{display:flex;flex-direction:row;gap:16px;align-items:baseline;margin-bottom:15px}.experience-item h3{margin:0;font-size:15px;font-weight:400}.resume-container .dim-color{opacity:60%}.resume-container .text-s{font-size:13px}.duration-hold{min-width:76px}.resume-container p{margin:2px 0}.resume-container a{color:var(--color-text-primary);text-decoration:none}.resume-container a:hover{color:var(--color-accent)}.resume-container p a{color:var(--color-text-primary);text-decoration:underline}.resume-container p a:hover{color:var(--color-accent);text-decoration:none}.thesis-page{position:static;padding-bottom:80px;margin-top:-102px}body.thesis-scroll-snap{scroll-snap-type:y mandatory}.thesis-cover{position:static;inset:0;padding:15vh 15% 200px;box-sizing:border-box;background:transparent;height:100dvh;width:100vw;scroll-snap-align:start}@media(max-width:600px){.thesis-cover{padding:80px 50px 180px}}.thesis-cover-inner{width:100%;height:100%;background:url(/content/projects/is-this-still-me/images/thumbnail-2.png) center center/cover no-repeat;position:relative;cursor:pointer;padding:0 20%;display:flex;align-items:center;justify-content:center;text-align:center}.thesis-start-reading{position:absolute;transform:translate(-50%,-120%);color:var(--color-bg);font-size:13px;font-weight:500;pointer-events:none;white-space:nowrap}.thesis-cover-quote{max-width:720px;font-family:var(--font-sans);font-size:var(--font-base-size);line-height:23px;text-align:center;color:#fff}.thesis-explore-button{color:var(--color-text-primary);font-size:13px;border:1px solid var(--color-text-primary);padding:8px 16px;cursor:pointer;background-color:transparent;position:absolute;transform:translate(-50%);left:50%;bottom:100px;text-decoration:none}.thesis-explore-button:hover{color:var(--color-accent);border:1px solid var(--color-accent)}.thesis-open-thesis-as-pdf{font-size:13px;position:absolute;transform:translate(-50%);left:50%;bottom:70px;text-decoration:none;text-align:center;display:block}@media(min-width:900px){.thesis-cover-quote{font-size:17px;line-height:25px}}@media(max-width:480px){.thesis-cover-quote{font-size:15px;line-height:21px}.thesis-cover{padding:106px 10% 172px}.thesis-explore-button{bottom:120px}.thesis-open-thesis-as-pdf{bottom:72px}}.thesis-intro-quote{position:static;height:100dvh;width:100%;display:flex;align-items:center;justify-content:center;scroll-snap-align:start;cursor:pointer}.thesis-intro-quote p{max-width:720px;font-family:var(--font-sans);font-size:17px;line-height:1.6;text-align:center}.thesis-intro-quote-inner{max-width:720px}.thesis-read-abstract{position:absolute;transform:translate(-50%,-120%);color:var(--color-accent);font-size:13px;font-weight:500;pointer-events:none;white-space:nowrap;opacity:1}.thesis-intro-quote-inner:hover~.thesis-read-abstract{opacity:0}.thesis-abstract-cover{height:100dvh;width:100%;display:flex;align-items:center;justify-content:center;padding:0;scroll-snap-align:start}.thesis-cover,.thesis-intro-quote,.thesis-abstract-cover{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.thesis-abstract-inner{max-width:720px;text-align:center;padding:0 var(--space-10)}.thesis-abstract-title{font-family:var(--font-sans);font-weight:700;font-size:18px;margin-bottom:16px}.thesis-abstract-body{font-family:var(--font-sans);font-size:15px;line-height:1.6}.thesis-layout{display:flex;padding:var(--space-10) 0;gap:var(--space-10);max-width:none;margin:0}.thesis-toc-toggle{display:none}.thesis-sidebar{flex:0 0 300px;font-size:13px;position:sticky;top:80px;align-self:flex-start;transition:transform .2s ease-out}@media(min-width:1201px){body.thesis-header-hidden .thesis-sidebar{transform:translateY(-40px)}}.thesis-main{flex:1;max-width:none;margin:0;line-height:1.7;font-size:var(--font-body-size);display:block;padding:0}.thesis-main article p,.thesis-main article ul,.thesis-main article ol{font-family:var(--font-sans);line-height:20px;font-size:15px}.thesis-main h2{font-size:24px;margin-bottom:24px}.thesis-chapter-title{font-size:24px;margin-top:32px;margin-bottom:16px}.thesis-chapter-title:first-of-type{margin-top:0}.thesis-section{margin-bottom:32px}.thesis-chapter{width:100%}.thesis-section h2,.thesis-section h3,.thesis-section h4{margin-top:32px;margin-bottom:8px}.thesis-section h2[id],.thesis-section h3[id],.thesis-section h4[id]{scroll-margin-top:80px}.thesis-section h2[id]:hover:after,.thesis-section h3[id]:hover:after,.thesis-section h4[id]:hover:after{content:"#";margin-left:8px;opacity:.5;font-size:.9em}.thesis-markdown p{margin-bottom:1em;padding:0}.thesis-paragraph-block{display:flex;gap:var(--space-8, 36px);align-items:flex-start;margin-bottom:1em;flex-wrap:nowrap}.thesis-paragraph-block>p{flex:0 0 600px;max-width:600px;margin-bottom:0;min-width:auto;padding:0}.thesis-paragraph-block .thesis-footnotes{flex:0 1 220px;min-width:0;font-size:var(--font-small-size);color:var(--color-text-muted, #666);line-height:1.4;text-decoration:none;position:sticky;top:40px;align-self:flex-start}.thesis-markdown .markdown-video{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:var(--space-8, 36px) 0 var(--space-9, 48px) 0}.thesis-markdown .markdown-video video{width:400px;max-width:100%;height:auto;display:block;border-radius:4px}.thesis-markdown .markdown-video figcaption{font-size:var(--font-small-size);line-height:1.5;color:var(--color-text-muted);max-width:400px}.thesis-paragraph-block .thesis-footnotes p,.thesis-paragraph-block .thesis-footnotes li{font-size:inherit;line-height:inherit;margin:0 0 var(--space-2, 4px) 0}.thesis-paragraph-block .thesis-footnotes:empty{display:none}.thesis-paragraph-block .thesis-footnotes a,.thesis-paragraph-block .thesis-footnotes a:hover{text-decoration:none}.thesis-markdown sup{font-size:.75em;line-height:0}.markdown-mini-diagram{display:block;width:160px;margin-top:0;margin-bottom:var(--space-2, 4px)}.diagram-framework{max-width:600px}.thesis-markdown sup a{text-decoration:none;color:inherit;cursor:pointer}.thesis-markdown sup a:hover{color:var(--color-accent)}.thesis-paragraph-block:has(sup:hover) .thesis-footnotes{background-color:color-mix(in srgb,var(--color-accent) 8%,transparent);border-left:2px solid var(--color-accent);padding-left:10px}.thesis-paragraph-block .thesis-footnotes a[data-footnote-backref]{display:none}.thesis-markdown blockquote{max-width:600px;margin:0;box-sizing:border-box;padding:0 var(--space-8, 36px)}@media(max-width:1380px){.thesis-layout{gap:var(--space-9)}.thesis-sidebar{flex:0 0 256px}.thesis-paragraph-block{gap:var(--space-9)}.thesis-paragraph-block>p{flex:0 0 512px;max-width:512px}.thesis-paragraph-block .thesis-footnotes{flex:1 1 auto}}@media(max-width:1200px){.thesis-layout{position:relative;flex-direction:column}.thesis-toc-toggle{display:inline-flex;align-items:center;gap:6px;font-size:13px;border:1px solid var(--color-text-primary);padding:6px 12px;background:var(--color-bg);color:var(--color-text-primary);cursor:pointer;position:fixed;left:var(--space-7);bottom:var(--space-7);z-index:50}.thesis-toc-toggle:hover{color:var(--color-accent);border-color:var(--color-accent)}.thesis-sidebar{position:fixed;inset:0 auto 0 0;width:280px;max-width:80%;background:var(--color-bg);padding:var(--space-7) var(--space-7) var(--space-8);height:100vh;overflow:hidden;transform:translate(-100%);transition:transform .2s cubic-bezier(.5,0,.5,1);z-index:40;border-right:1px solid var(--color-text-muted);display:flex;flex-direction:column}.thesis-sidebar--open{transform:translate(0)}.thesis-sidebar nav{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-9);scrollbar-width:none;-ms-overflow-style:none}.thesis-sidebar nav::-webkit-scrollbar{display:none}.thesis-main{flex:1 1 auto;max-width:100%}}.thesis-section>h2,.thesis-section>h3,.thesis-section>h4,.thesis-markdown h2,.thesis-markdown h3,.thesis-markdown h4{max-width:600px}@media(max-width:900px){.thesis-paragraph-block{flex-direction:column;gap:var(--space-4, 16px)}.thesis-paragraph-block>p{flex:0 1 auto;max-width:600px;width:100%}.thesis-paragraph-block .thesis-footnotes{position:static;flex-basis:auto;width:100%;max-width:420px}.thesis-layout{flex-direction:column;gap:24px;max-width:100%}.reading-progress{margin-left:calc(-1 * var(--space-7));margin-right:calc(-1 * var(--space-7))}}.thesis-markdown figure{display:flex;flex-direction:column;gap:8px;margin:var(--space-8, 36px) 0 var(--space-9, 48px) 0}.thesis-markdown figure img{width:100%;height:auto;margin:0;filter:saturate(.9);transition:filter .18s cubic-bezier(.5,0,.5,1)}.thesis-markdown figure img:hover{filter:saturate(1)}.thesis-markdown figure figcaption{font-size:13px;line-height:1.5;color:var(--color-text-muted);max-width:600px}.markdown-slider{width:100%;margin:var(--space-8, 36px) 0 var(--space-9, 48px) 0}.markdown-slider figure{margin:0}.markdown-slider-controls{display:flex;gap:8px;align-items:center;justify-content:flex-start;margin:var(--space-4, 12px) 0 0 0}.markdown-slider-control{color:var(--color-text-primary);font-size:13px;border:1px solid var(--color-text-primary);padding:6px 12px;cursor:pointer;background-color:transparent;text-decoration:none;line-height:1;-webkit-user-select:none;user-select:none}.markdown-slider-control:hover{color:var(--color-accent);border:1px solid var(--color-accent)}.markdown-slider-control.is-disabled{opacity:.35;pointer-events:none}.markdown-slider-viewport{overflow:hidden;width:100%}.markdown-slider-track{display:flex;transition:transform .26s cubic-bezier(.5,0,.5,1);will-change:transform}.markdown-slider-slide{flex:0 0 100%;min-width:0}.markdown-slider-slide figure{margin:0}.thesis-chapter-list,.thesis-section-list{list-style:none;padding:0;margin:0}.thesis-chapter-button{display:inline-block;padding:6px 0;color:var(--color-text-muted);font-size:var(--font-small-size);text-decoration:none}.thesis-chapter-button.is-active{color:var(--color-text-primary);font-weight:600}.thesis-chapter-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.thesis-chevron-button{all:unset;background:none;cursor:pointer;color:var(--color-text-muted);font-size:18px;padding:0}.thesis-chevron-button.is-active{color:var(--color-text-primary)}.thesis-section-list{font-size:var(--font-small-size);margin-bottom:10px;margin-top:10px}.thesis-section-link{margin-bottom:10px}.thesis-section-link.level-2{margin-left:8px;margin-bottom:10px;margin-top:10px}.thesis-section-link.level-3{margin-left:16px;margin-bottom:5px}.thesis-section-link.level-4{margin-left:24px;margin-bottom:10px}.thesis-section-link.is-active a{color:var(--color-text-primary)}.thesis-sidebar a{color:var(--color-text-muted);text-decoration:none}.thesis-sidebar a:hover{color:var(--color-accent)}.reading-progress{position:sticky;top:0;left:0;right:0;height:3px;background:transparent;z-index:10;margin-left:calc(-1 * var(--space-10));margin-right:calc(-1 * var(--space-10))}.reading-progress-bar{height:100%;width:0;background-color:var(--color-accent)}#root{width:100%}
