:root{--primary:#000;--secondary:#777;--bg:#fff;--bg-alt:#eee;--link:#1b4cec;--border:#ddd;--code-bg:#fafafa;--invert-bg:#000;--invert-bg-hover:#333;--invert-fg:#fff;--danger:#a00}@media screen and (prefers-color-scheme:dark){:root{--primary:#fff;--secondary:#aaa;--bg:#222;--bg-alt:#2a2a2a;--link:#5682ff;--border:#444;--code-bg:#2f2f2f;--invert-bg:#fff;--invert-bg-hover:#ccc;--invert-fg:#000;--danger:#e55}}@media print{@page{margin:0;size:A4 portrait}}.blog.post code,input,textarea,button,body,header .navbar .nav-menu a,header .navbar .nav-menu a:visited{font-family:Fira Code,monospace}@media print{.blog.post code,input,textarea,button,body,header .navbar .nav-menu a,header .navbar .nav-menu a:visited{font-family:Consolas,Fira Code,monospace}}*{box-sizing:border-box}@media screen{[data-scroll]{transition-property:transform,opacity;transition-duration:.4s;transition-delay:.2s}[data-scroll=in]{opacity:1;transform:translateY(0)}[data-scroll=out]{opacity:0;transform:translateY(30px)}.noscreen{display:none!important}}@media print{.noprint{display:none!important}}body{color:var(--primary);flex-direction:column;justify-content:space-between;min-height:100vh;margin:0;padding:0;font-size:14pt;display:flex}@media screen and (width<=1200px){body{font-size:13pt}}@media screen and (width<=768px){body{font-size:12pt}}body{background:var(--bg)}table{color:var(--primary)}svg{fill:var(--primary)}a,a:visited{color:var(--link)}a:not(:hover){text-decoration:none}h1,h2,h3,h4,h5,h6,.title{font-weight:400}.container{max-width:1200px;margin:auto;padding:60px 20px}.container.wide{max-width:1440px}.container.narrow{max-width:1024px}.row{column-gap:3em;display:flex}.column{flex:1}.column.wide{flex:2.8}@media screen and (width<=1024px){.row{flex-direction:column}}.name-size-adjust{font-size:1.16667em}header .navbar{justify-content:space-between;align-items:center;gap:2em;padding:10px 20px;display:flex}header .navbar a,header .navbar a:visited{color:inherit}header .navbar .nav-menu{flex:1;justify-content:center;gap:1.5em;display:none}header .navbar .nav-menu a,header .navbar .nav-menu a:visited{background:var(--invert-bg);color:var(--invert-fg);text-transform:lowercase;padding:.2em 1em .2em .2em;display:block}section.grow{flex:1}section.full{min-height:100vh}footer{text-align:center;color:var(--secondary);padding:60px 20px 30px;font-size:.6em}@media screen{header:nth-child(odd),section:nth-child(odd),footer:nth-child(odd){background:var(--bg-alt)}}@keyframes fadeInTranslate{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.introduction{flex-direction:row;display:flex}.introduction>div{flex-basis:50%}.introduction>div.main-info{text-align:center;flex-direction:column;justify-content:space-evenly;padding:20px;font-size:1.4em;display:flex}.introduction>div.picture{filter:brightness(1.05)contrast(.95);background:#888 url(/assets/picture.jpg) 50% 30%/cover padding-box padding-box;animation:1s fadeIn}@media screen and (prefers-color-scheme:dark){.introduction>div.picture{filter:brightness(.95)}}@media screen and (width<=768px){.introduction{display:block}.introduction>div{height:50vh}}.introduction h1,.introduction h4,.introduction .main-info>div:nth-child(2){animation:.5s both fadeInTranslate}.introduction h1{margin:0;font-size:2em;animation-delay:.2s}.introduction h4{animation-delay:.4s}.introduction .main-info>div:nth-child(2){animation-delay:.6s}.introduction a{margin:4px}.introduction a:hover svg{transform:scale(1.08)}.introduction svg{width:1.2em;height:1.2em;margin:0;transition:transform .3s}.resume .section.references p,.resume .section.timeline>ul>li .description,.resume .section.timeline>ul>li .time{color:var(--secondary);letter-spacing:-.02em;font-size:.86em}@media print{.resume{flex-direction:column;justify-content:space-around;width:210mm;height:297mm;padding:7mm;font-size:9pt;display:flex}}.resume .main-content{row-gap:3em}@media print{.resume .main-content .column:first-child .section:not(:last-child){margin-bottom:2em}}.resume>.topTitle{text-transform:uppercase;margin:0;font-size:1.2em}.resume .identity{justify-content:center;align-items:center;display:flex}.resume .identity>.picture{border:1px solid var(--border);background:url(/assets/picture-small.jpg) 50%/cover;border-radius:50%;width:9.1em;height:9.1em;margin:0 1.25em}.resume .identity>.main-info{position:relative;top:-.63em;left:1.26em}.resume .identity>.main-info>*{margin:.2em 0}.resume .identity>.main-info>h1{font-size:2.25em}.resume .contact{justify-content:center}.resume .contact>h2{background:var(--invert-bg);width:6.46em;color:var(--invert-fg);margin:0 0 .5em 1.6em;padding:.34em;font-size:1em;font-weight:700}.resume .contact>div{flex-direction:column;gap:.4em;display:flex}.resume .contact>div>div{flex-direction:row;align-items:center;display:flex}.resume .contact .logo{width:1.2em;height:1.2em;margin-right:.75em}.resume .contact a{color:var(--primary)}.resume .section:not(:last-child){margin-bottom:3em}.resume .section>h2{text-transform:lowercase;align-items:center;margin-top:0;margin-bottom:.6em;font-size:1.7em;display:flex}.resume .section>h2 .logo{width:1em;height:1em;margin-right:.84em;display:inline-block}.resume .section>div{padding:0 .63em}.resume .section.timeline a{white-space:nowrap}.resume .section.timeline>ul{margin-top:0;margin-left:1.5em;padding:0}.resume .section.timeline>ul>li{margin-bottom:.8em}.resume .section.timeline>ul>li>.title{text-transform:lowercase;font-weight:700}.resume .section.timeline>ul>li .context{flex-flow:wrap;align-items:baseline;column-gap:.6em;display:flex}.resume .section.timeline>ul>li .subtitle{font-size:.94em}.resume .section.timeline>ul>li .time{letter-spacing:-.06em;text-wrap:nowrap;line-height:1em}.resume .section.timeline>ul>li .time,.resume .section.timeline>ul>li .subtitle{margin-bottom:.1em}.resume .section.timeline>ul>li .description{line-height:1.2em}.resume .section.timeline>ul>li .description>ul{margin-left:1.74em;padding:0}.resume .section.timeline>ul>li .description>ul>li{list-style-type:disc}.resume .skills .content{flex-direction:column;gap:1.2em;display:flex}.resume .skills .content .level h4{text-transform:lowercase;margin:0 0 .3em;font-size:1em;font-weight:700}.resume .skills .content .level ul.list{margin:0;padding:0;font-size:.9em;list-style:none}.resume .skills .content .level ul.list>li{white-space:nowrap;display:inline-block}.resume .skills .content .level ul.list>li:not(:last-child):after{content:", "}.resume .languages table{width:100%;font-size:.9em}.resume .languages table td:nth-child(2){text-align:right;color:var(--secondary);padding-right:1em;font-size:.9em}.resume .languages table td:nth-child(2):before{content:"("}.resume .languages table td:nth-child(2):after{content:")"}.resume .languages table td:last-child{vertical-align:top;white-space:nowrap;font-variant-ligatures:none;margin-left:1em;font-weight:700}.resume .hobbies>div{flex-wrap:wrap;justify-content:center;padding:0;display:flex}.resume .hobbies>div svg{max-width:3.5em;max-height:3.5em}.resume .hobbies>div>div{text-align:center;width:50%;margin-bottom:1em;padding:0 .7em}.resume .hobbies>div .title{text-transform:lowercase}.resume .section.references{display:none}@media print{.resume .section.skills,.resume .section.languages{margin-bottom:4em}}.field{margin-top:2em;font-size:.94em;position:relative}input,textarea,button{font-size:1em;transition-property:background-color,border-color,color;transition-duration:.3s}input,textarea{border:none;border-bottom:1.5px solid var(--secondary);width:100%;color:var(--primary);background-color:var(--bg);padding:.5em}input:focus,textarea:focus{border-bottom-color:var(--primary);outline:0}input:required+label:after,textarea:required+label:after{content:"*";color:var(--danger)}input:placeholder-shown+label,textarea:placeholder-shown+label{cursor:text}input:not(:placeholder-shown)+label,textarea:not(:placeholder-shown)+label{font-size:.8em;top:-2em}label{color:var(--secondary);padding:.5em;transition-property:top,font-size;transition-duration:.3s;position:absolute;top:0;left:0}textarea{resize:vertical}button{color:#fff;cursor:pointer;background:#222;border:0;padding:.6em 3em}button:hover,button:focus{background:#333}button:disabled{cursor:wait;color:#888;background:#444}button:disabled:after{content:"ing..."}.completableWrapper{position:relative}.completableWrapper .completionEl,.completableWrapper .initialEl{transition-property:opacity,transform;transition-duration:.3s}.completableWrapper .completionEl{visibility:hidden;opacity:0;position:absolute;transform:translateY(10px)}.completableWrapper.complete .initialEl{visibility:hidden;opacity:0;transform:translateY(10px)}.completableWrapper.complete .completionEl{visibility:visible;opacity:1;transform:translateY(0)}.blog time{color:var(--secondary)}.blog.postlist li{margin-bottom:.6em}.blog.postlist a{margin-right:.5em}.blog.postlist time{white-space:nowrap;font-size:.75em}.blog.post{line-height:1.6em}.blog.post>.content{margin-top:2em;font-size:.94em}.blog.post>.content p,.blog.post>.content code,.blog.post>.content li{font-size:.9em}.blog.post>.content>p{text-align:justify}.blog.post h1,.blog.post h2,.blog.post h3,.blog.post h4,.blog.post h5,.blog.post h6{margin-top:2em;font-weight:700}.blog.post .title{margin:0}.blog.post time{font-size:.8em}.blog.post time.modification{font-size:.7em}.blog.post blockquote{color:var(--secondary);border-left:.2em solid #8884;margin-left:0;padding-left:1em}.blog.post figure{margin:2em auto}.blog.post figure img{max-width:100%;max-height:30em;margin:auto;display:block}.blog.post figure figcaption{color:var(--secondary);text-align:center;font-style:italic}.blog.post figure img+figcaption{margin-top:.6em}.blog.post :not(pre)>code{background-color:var(--code-bg);border:1px solid #8884;padding:0 2px;display:inline-block}.blog.post pre{border:1px solid #8884;border-radius:0;padding:1em;overflow-y:auto}.blog.post .emphasize{background:#4895;outline:4px solid #4895}.blog.post details{border:1px solid #8884;margin-bottom:.5em;padding:.5em .5em 0}.blog.post details[open]{padding:.5em}.blog.post details summary{margin:-.5em -.5em 0;padding:.5em}
