:root{--font-main:"Instrument Sans", sans-serif;--font-mono:"JetBrains Mono", monospace;--bg:#f3f3f0;--ink:#15171c;--body:#3a3d44;--muted:#5c5f66;--tile:#eaeae5;--tile-hover:#e3e3dd;--light-section-border:#dadad5;--rule-soft:#cfcfc9;--link-line:#c9c9c3;--accent:#3150d8;--accent-2:#e06c0d;--bg-dark:#15171c;--text-on-dark:#f3f3f0;--muted-on-dark:#a3a6ad;--rule-on-dark:#3a3d44;--gutter:clamp(16px, 6vw, 7em)}body{font-family:var(--font-main);color:var(--ink);background:var(--bg);margin:0}h1{font-size:"clamp(44px, 6.6vw, 100px)";letter-spacing:-.04em;line-height:.98}h2{font-size:"clamp(36px, 4.4vw, 60px)";letter-spacing:-.035em;line-height:1}h3{letter-spacing:-.02em;font-size:32px;line-height:normal}h1,h2,h3{font-weight:500}html{scroll-behavior:smooth}section{scroll-margin-top:80px}.header,.footer{font-family:var(--font-mono);flex-direction:row;justify-content:space-between;align-items:center;margin:0;padding-block:1.5rem;padding-inline:7rem;font-size:1rem;display:flex}.header{border-bottom:1px solid var(--light-section-border);position:relative}.menu-toggle{color:var(--ink);cursor:pointer;background:0 0;border:none;font-size:1.4rem;display:none}.to-top{border:1px solid var(--light-section-border);background-color:var(--bg);width:3rem;height:3rem;color:var(--ink);cursor:pointer;border-radius:50%;margin:-4.5rem 1.5rem 1.5rem auto;font-size:1.2rem;display:block;position:sticky;bottom:1.5rem}.to-top:hover{border-color:var(--ink)}.hero-section{margin-inline:var(--gutter);flex-direction:row;justify-content:space-between;align-items:center;margin-block:10em;display:flex}.caret{color:var(--accent);animation:1.2s step-end infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.section-buttons{flex-direction:row;align-items:center;gap:2rem;display:flex}.section-buttons a{color:var(--ink);font-family:var(--font-mono);text-decoration:none}.section-buttons a:hover{cursor:pointer}.hero-text h1{margin:0}.hero-text{flex-direction:column;gap:32px;display:flex}.basic-info{padding-inline:var(--gutter);border-top:1px solid var(--light-section-border);border-bottom:1px solid var(--light-section-border);flex-direction:row;align-items:flex-start;gap:clamp(2rem,8vw,15rem);padding-block:2em;display:flex}.basic-info p{margin:0;font-size:18px}.fact{flex-direction:column;gap:.5rem;display:flex}.projects{padding-inline:var(--gutter)}.about{border-top:1px solid var(--light-section-border);margin-inline:var(--gutter);flex-direction:row;gap:clamp(2rem,8vw,10rem);padding-block:10em;display:flex}.about-paragraph{flex:1;min-width:0}.tools{flex-direction:row;gap:clamp(2rem,8vw,15rem);display:flex}.col-text p{margin:0;font-size:18px}.col-text{flex-direction:column;gap:.55rem;display:flex}.contact{background-color:var(--bg-dark);color:var(--text-on-dark);padding-inline:var(--gutter);padding-block:10em}.socials{border-top:1px solid var(--rule-on-dark);gap:3em;padding-top:2rem;display:flex}.socials a{color:inherit;-webkit-text-decoration-color:var(--link-line);text-decoration-color:var(--link-line);border-bottom:1px solid var(--link-line);padding-bottom:.6em;font-size:18px;text-decoration:none}.socials a:hover{border-bottom:1px solid var(--muted)}.footer p{margin:0}.footer a,.header a{color:var(--ink);font-family:var(--font-mono);text-decoration:none}@media (width<=960px){.header,.footer{padding-inline:var(--gutter)}.menu-toggle{display:block}.section-buttons{display:none}.section-buttons.open{z-index:10;padding-inline:var(--gutter);background-color:var(--bg);border-bottom:1px solid var(--light-section-border);flex-direction:column;align-items:stretch;gap:0;display:flex;position:absolute;top:100%;left:0;right:0}.section-buttons.open a{padding-block:1.1rem}.section-buttons.open a+a{border-top:1px solid var(--light-section-border)}.hero-section{flex-direction:column;align-items:flex-start;gap:3rem;margin-block:4em}.basic-info{flex-wrap:wrap;gap:1.5rem}.about{flex-direction:column;gap:0;padding-block:4em}.about-text{max-width:40rem}.tools{flex-wrap:wrap;gap:2rem}.contact{padding-block:5em}.socials{flex-wrap:wrap;gap:1.5em}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.caret{animation:none}}.about-shapes{align-items:center;gap:1rem;display:flex}.about-shapes svg{width:auto;height:1.3rem;overflow:visible}.about-shapes rect,.about-shapes line{fill:none;stroke-width:1px;vector-effect:non-scaling-stroke;stroke:var(--ink);shape-rendering:crispedges}.about-shapes circle{fill:var(--accent)}@media (width<=960px){.about-shapes svg{height:1rem}.about-shapes{gap:.8rem}}.HeaderFigure{justify-content:center;width:auto;height:30rem}.HeaderFigure .dot{fill:var(--muted-on-dark)}.HeaderFigure .main-square,.HeaderFigure line,.triangle{fill:none;stroke-width:1px;vector-effect:non-scaling-stroke}.HeaderFigure .main-square,.HeaderFigure .triangle{stroke:var(--ink);stroke-dasharray:4 6;fill:var(--bg)}.HeaderFigure line{stroke:var(--muted)}.circle_bob{fill:var(--accent);animation:10s ease-in-out infinite bob}.small_circle_bob{fill:#e06c0d;animation:8s ease-in-out infinite small-bob}.circle_bob,.small_circle_bob{mix-blend-mode:color-burn}.blend{isolation:isolate}@keyframes small-bob{0%,to{transform:translate(0)}50%{transform:translateY(-150px)}}@keyframes bob{0%,to{transform:translate(0)}50%{transform:translate(-150px,-150px)}}.triangle{stroke:var(--ink);stroke-dasharray:4 6}@media (prefers-reduced-motion:reduce){.circle_bob{animation:none}}@media (width<=960px){.HeaderFigure{height:15rem}}.ProjectCard{border-top:1px solid var(--light-section-border);flex-direction:row;gap:5em;margin-block:3rem;padding-top:2rem;display:flex}.project-figure{aspect-ratio:16/10;background-color:var(--tile);object-fit:cover;flex:0 0 30rem;justify-content:center;align-self:flex-start;align-items:center;min-width:0;display:flex}.project-content{flex-direction:column;justify-content:space-between;gap:1.2em;display:flex}.project-content a{color:inherit;font-size:.85rem;font-family:var(--font-mono);border-bottom:1px solid var(--link-line);padding-bottom:.6em;text-decoration:none}.project-content a:hover{border-bottom:1px solid var(--accent-2)}.project-description{margin:0;font-size:1.3rem;line-height:1.6}.project-text-muted{font-family:var(--font-mono);color:var(--muted);margin:0;font-size:.85rem}.project-links{gap:1.5rem;margin-top:1.2rem;display:flex}@media (width<=960px){.ProjectCard{flex-direction:column;gap:2em}.project-figure{aspect-ratio:16/10;flex:none;width:min(80vw,40rem);min-height:0}.project-description{font-size:1.1rem}.project-content{gap:2em}}.AutoRecallFigure{width:60%;height:auto;overflow:visible}.AutoRecallFigure line,.AutoRecallFigure .review-dot{vector-effect:non-scaling-stroke;stroke-width:1px}.AutoRecallFigure .timeline{stroke:var(--muted)}.AutoRecallFigure .today-tick{stroke:var(--ink);stroke-width:1.5px}.AutoRecallFigure .review-dot{fill:var(--accent);stroke:var(--ink)}
