.theme-toggle[data-astro-cid-l6lhmie6]{cursor:pointer;color:var(--muted);background:0 0;border:0;align-self:start;align-items:center;gap:7px;min-height:40px;margin-top:auto;padding:6px 0;font-family:JetBrains Mono,monospace;font-size:12px;transition:color .15s,transform .15s;display:flex;&:hover{color:var(--ink)}&:active{transform:scale(.96)}&:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}& .swatch{border:1px solid var(--muted);background:linear-gradient(to right, var(--paper) 0 50%, var(--ink) 50% 100%);border-radius:50%;width:10px;height:10px}}@media (width<=800px){.theme-toggle[data-astro-cid-l6lhmie6]{align-self:center;margin-top:0;margin-left:auto;padding:4px 0}}:root{--paper:#fbfbf9;--ink:#1b1e24;--muted:#5c6470;--line:#e6e8e2;--accent:#0b7a66;--accent-soft:#e7f3ef;color-scheme:light}@media screen{:root[data-theme=dark]{--paper:#14161a;--ink:#e7eae8;--muted:#98a2ae;--line:#2a2f36;--accent:#4ecfb0;--accent-soft:#14302a;color-scheme:dark}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Instrument Sans,system-ui,sans-serif;font-size:16px;line-height:1.6}.frame{grid-template-columns:200px minmax(0,1fr);gap:56px;max-width:1060px;margin:0 auto;padding:0 24px;display:grid}.toc{border-right:1px solid var(--line);flex-direction:column;align-self:start;height:100vh;padding:48px 0;display:flex;position:sticky;top:0;& .logo{letter-spacing:.02em;margin-bottom:40px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}& .toc-links{flex-direction:column;align-items:flex-start;display:flex}& a{color:var(--muted);border-left:2px solid #0000;margin-left:-13px;padding:6px 0 6px 12px;font-family:JetBrains Mono,monospace;font-size:12.5px;text-decoration:none;transition:color .15s,border-color .15s;&:hover{color:var(--ink)}&:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}&.sub{padding-left:26px;font-size:12px}&.locale-switch{color:var(--accent);margin-top:20px}}}main{--section-gap:48px;padding:48px 0 96px;&>section+section{margin-block-start:var(--section-gap)}}section{scroll-margin-top:24px}h1,h2,h3,h4{text-wrap:balance;font-family:Bricolage Grotesque,sans-serif}h1{letter-spacing:-.015em;margin-bottom:18px;font-size:clamp(38px,6vw,56px);font-weight:700;line-height:1.04}h2{letter-spacing:-.01em;margin-bottom:16px;font-size:26px;font-weight:600;line-height:1.2}h3,h4{letter-spacing:-.005em;font-weight:600;line-height:1.35}h3{font-size:18px}h4{font-size:16px}#about{--grid-line:color-mix(in oklab, var(--line) 92%, var(--accent));isolation:isolate;border-radius:0 0 18px;margin:-48px -28px 0 -56px;padding:48px 28px 0 56px;position:relative;overflow:hidden;&:before{content:"";z-index:-1;background-image:linear-gradient(color-mix(in srgb, var(--grid-line) 62%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--grid-line) 62%, transparent) 1px, transparent 1px);opacity:.72;pointer-events:none;background-position:-1px -1px;background-size:24px 24px;position:absolute;inset:0;mask-image:linear-gradient(to bottom right,#000,#0000 88%)}}.lede{max-width:58ch;color:var(--ink);text-wrap:pretty;font-size:17.5px;& a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}}.meta-row{color:var(--muted);flex-wrap:wrap;gap:10px 22px;margin-top:22px;font-family:JetBrains Mono,monospace;font-size:12.5px;display:flex;& a{color:var(--muted);border-bottom:1px solid var(--line);text-decoration:none;transition:color .15s,border-color .15s;&:hover{color:var(--accent);border-color:var(--accent)}&:focus-visible{outline:2px solid var(--accent);outline-offset:2px}}& .url-origin{color:color-mix(in srgb, var(--muted) 65%, var(--paper))}}.entry{max-width:62ch;margin-bottom:44px;scroll-margin-top:24px;&:last-child{margin-bottom:0}&>.head{gap:6px 12px}& .when{color:var(--muted);font-family:JetBrains Mono,monospace;font-size:12px}& .role{color:var(--muted);margin-bottom:10px;font-size:15px}& .about{color:var(--muted);margin-bottom:12px;font-size:15px}& ul{list-style:none}& li{margin-bottom:9px;padding-left:20px;font-size:15.5px;position:relative;&:before{content:"";background:var(--accent);width:7px;height:2px;position:absolute;top:.78em;left:5px}}& a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}}.head{flex-wrap:wrap;align-items:baseline;margin-bottom:2px;display:flex}.timeline-entry{margin-bottom:0;padding:0 0 44px 28px;position:relative;left:5px;&:last-child{padding-bottom:0}&:before{content:"";z-index:1;border:2px solid var(--muted);background:var(--paper);border-radius:50%;width:9px;height:9px;position:absolute;top:8px;left:-5px}&:after{content:"";background:var(--line);width:1px;position:absolute;top:12px;bottom:-12px;left:-1px}&:last-child:after{display:none}}.project{border-left:2px solid var(--accent-soft);margin:16px 0 18px;padding:2px 0 2px 18px;&>.head{gap:4px 10px}& .tag{letter-spacing:.04em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border-radius:4px;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:11px}}.skills{border-block:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid;& .group{break-inside:avoid;min-width:0;padding-block:11px 12px;&:nth-child(n+3){border-top:1px solid var(--line)}&:nth-child(odd):not(.wide){padding-inline-end:24px}&:nth-child(2n){border-inline-start:1px solid var(--line);padding-inline-start:24px}&.wide{grid-column:1/-1}}& .label{color:var(--accent);letter-spacing:.04em;text-transform:uppercase;margin-bottom:3px;font-family:JetBrains Mono,monospace;font-size:11px}& .skill-line{flex-wrap:wrap;align-items:baseline;font-size:14px;line-height:1.5;display:flex;& span{white-space:nowrap;&:not(:last-child):after{content:"·";color:var(--muted);padding:0 5px}}}}@media (width<=800px){.frame{grid-template-columns:1fr;gap:0}.toc{border-right:none;border-bottom:1px solid var(--line);flex-flow:wrap;align-items:center;gap:4px 18px;height:auto;padding:28px 0 16px;position:static;& .logo{margin-bottom:0;margin-right:8px}& .toc-links{display:contents}& a{border-left:none;min-height:40px;margin-left:0;padding:10px 0;&.sub{display:none}&.locale-switch{margin-top:0}}}main{padding-top:36px}#about{border-radius:14px;margin:-20px -16px 0;padding:24px 16px 36px}}@media (width<=520px){.frame{padding:0 18px}main{--section-gap:40px}.timeline-entry{padding-left:20px}.skills{grid-template-columns:1fr;& .group{padding-block:10px 11px;&:nth-child(n+2){border-top:1px solid var(--line)}&:nth-child(odd):not(.wide),&:nth-child(2n){border-inline-start:0;padding-inline:0}&.wide{grid-column:auto}}& .skill-line{font-size:13.5px}}}@media print{@page{size:A4;margin:15mm}body{background:#fff;font-size:11px}.toc{display:none}.frame{max-width:none;padding:0;display:block}main{--section-gap:0}section{padding-top:24px}#about{border-radius:0;margin:0;padding:0;overflow:visible;&:before{display:none}}section:not(#about)>h2{border-bottom:1px solid #c8ccc5;margin-bottom:13px;padding-bottom:5px;font-size:18px}h1{margin-bottom:12px;font-size:34px}.lede{max-width:none;font-size:13px;line-height:1.6}a{color:var(--ink)!important;border-bottom:0!important;text-decoration:none!important}a.named-link{border-bottom:1px solid #777d76!important;text-decoration:none!important}.meta-row{margin-top:16px;font-size:10px}#experience{padding-top:32px}.entry{max-width:none;margin-bottom:27px;&:not(#zuplo){page-break-inside:avoid;break-inside:avoid-page}& .role,& .about{font-size:11px}& .role{margin-bottom:7px}& .about{margin-bottom:9px}& li{page-break-inside:avoid;break-inside:avoid-page;margin-bottom:7px;font-size:11px;&:before{content:"-";color:currentColor;background:0 0;width:auto;height:auto;font-family:JetBrains Mono,monospace;font-weight:600;top:0}}}.timeline-entry{margin-bottom:27px;padding:0;&:last-child{margin-bottom:27px}&:before,&:after{display:none}}.project{page-break-inside:avoid;break-inside:avoid-page;margin:13px 0 16px;padding-left:14px}.skills{border-color:#d8dcd4;border-block-start:0;& .group{padding-block:8px 9px;&:nth-child(n+3){border-top-color:#d8dcd4}&:nth-child(odd):not(.wide){padding-inline-end:11px}&:nth-child(2n){border-inline-start-color:#d8dcd4;padding-inline-start:11px}}& .label{margin-bottom:3px;font-size:9px}& .skill-line{font-size:10px;line-height:1.5}}}
