code[class*=language-],pre[class*=language-]{color:#000;text-shadow:0 1px #fff;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;background:0 0;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;line-height:1.5}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{text-shadow:none;background:#b3d4fc}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{margin:.5em 0;padding:1em;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{white-space:normal;border-radius:.3em;padding:.1em}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#905}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#690}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string{color:#9a6e3a;background:#ffffff80}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.function,.token.class-name{color:#dd4a68}.token.regex,.token.important,.token.variable{color:#e90}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{background:#fff;height:100%;margin:0;padding:0}body{color:#333;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;background-image:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);border:.5rem solid #fff;min-height:100%;margin:0;padding:2rem;font-family:Work Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-size:14px;font-style:normal;font-weight:400;line-height:20px}@media (width>=992px){body{border:1rem solid #fff;padding:3rem 0}}h1,h2,h3,h4,h5,h6{color:#313131;margin-bottom:1rem;font-weight:400;line-height:1.25}h1{font-size:3rem;font-weight:700}h2{margin-top:1rem;font-size:1.3rem;line-height:1.4}h3{font-size:1.25rem;font-weight:700}h4,h5,h6{margin-top:1.1rem;font-size:1.1rem}h4{font-weight:700}img{max-width:100%}a{color:inherit;border-bottom:1px solid #0000;text-decoration:none}a:hover{border-bottom:1px solid #555}a.image{text-align:center;border:0;border-radius:5px;margin:30px 0;display:block}mark{background:#fffc76;padding:0 5px}blockquote{background:#eee;border-left:5px solid #ccc;margin:40px 0;padding:5px 30px}.logo{text-align:center;margin:0 auto 35px;-webkit-animation-name:bounce;animation-name:bounce;-webkit-animation-duration:.7s;animation-duration:.7s;-webkit-animation-fill-mode:both;animation-fill-mode:both;position:relative}.logo a{color:#000;text-align:center;box-sizing:border-box;background:#ddd url(/_astro/logo_wrapper.Czl1V0Fc.png);border:5px solid #fff;border-radius:100%;width:100px;height:100px;font-size:1.5em;font-weight:700;line-height:100px;text-decoration:none;display:inline-block}.logo a:hover,.logo a:focus{background:#f14e32}.logo a:hover+.logo-prompt,.logo a:focus+.logo-prompt{display:inline-block!important}.logo a .logo-avatar{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;box-shadow:0 1px 3px #00000026}@media (width<=480px){.logo a:hover+.logo-prompt,.logo a:focus+.logo-prompt{display:none!important}}.logo .logo-prompt{vertical-align:middle;color:#fff;text-align:center;background:#00000080;border-radius:3px;margin-top:-10px;margin-left:15px;padding:5px;font-size:.8235em;line-height:1.2;display:none;position:absolute;top:50%}.logo .logo-prompt:before{content:"";border:5px solid #0000;border-left:0 solid #00000080;border-right-color:#00000080;margin-top:-5px;position:absolute;top:50%;left:-5px}iframe{margin:45px 0!important}ul,ol{margin:.5rem 0;padding-left:2rem}ul li,ol li{word-wrap:break-word}ul img,ol img{border-radius:5px;margin:40px 0}sup{vertical-align:top;margin-left:1px;position:relative;top:-.5em}time{color:#555}code,pre,.code,.footnotes{font-family:Consolas,monaco,monospace}code{color:#f14e32;background:#f7f7f7;padding:2px 6px;font-size:.8rem}pre{white-space:pre;background-color:#f9f9f9;border:1px solid #ddd;margin-top:0;margin-bottom:1rem;padding:1rem;font-size:.8rem;line-height:1.4;display:block;overflow-x:auto}pre code{color:inherit;background-color:#0000;padding:0;font-size:100%}table{table-layout:fixed;width:100%;margin:45px 0}table thead{background:#f2f2f2}table th{text-align:left;border-bottom:15px solid #fff;padding:8px 10px}table td{padding:4px 0}iframe{width:100%}article{max-width:896px;margin:0 auto}article h1.title{text-align:center;font-size:1.4em;line-height:1.4em}article .divider{background:#ddd;background:-webkit-gradient(linear, left top, right top, from(#fff0), color-stop(#ccc), to(#fff0));background:-webkit-linear-gradient(270deg,#fff0,#ccc,#fff0);background:linear-gradient(90deg,#fff0,#ccc,#fff0);height:1px;margin:2em 0}article .center{text-align:center;margin:0 auto}article hr{border:0;border-bottom:1px solid #000;margin:30px 0}article p{word-wrap:break-word;font-size:15px;line-height:1.9em}article .footnote{color:#fff;background-color:#0087be;border:0;padding-left:2px;padding-right:2px}article .footnotes{color:#666;margin:50px auto;font-size:.8em;display:block}article .footnotes p{font-weight:400;line-height:1rem}article .footnotes ol{margin:0;padding-left:15px}article .footnotes ol li{font-weight:700}article .footnotes .reversefootnote{color:#0087be;border:0}article a:hover{color:#369;border-color:#369}.back{text-align:center}.back a{border:0;margin:40px auto 0;padding:10px;text-decoration:none;display:inline-block}.back a:before{content:"<<";color:#000;margin-right:5px}.block{display:block}.page-navigation,.footer{text-align:center;max-width:896px;margin:0 auto;font-size:.8rem}.page-navigation{margin:50px auto 0}.page-navigation a{border-bottom:none;text-decoration:none;display:inline-block}.page-navigation span{display:inline-block}.footer{color:#777;margin-top:50px}.footer a{border:none;font-weight:700}section{max-width:896px;margin:0 auto 50px}section ul{margin:0;padding:0;list-style:none}section ul li{margin:10px 0}section ul li .title{max-width:100%;font-size:1rem;font-weight:400;word-wrap:normal!important}section ul li a{color:#525252;box-sizing:border-box;border:0;text-decoration:none}section ul li .post-date{float:right;margin:0 0 0 20px}section ul li span{color:#757575;letter-spacing:1px;text-transform:uppercase;display:inline-block}@media (width>=992px){section ul li a{border-bottom:2px solid #0000}section ul li a:hover{border-color:#000}}@keyframes bounce{0%{transform:translateY(-1000px)}60%{transform:translateY(25px)}75%{transform:translateY(-10px)}90%{transform:translateY(5px)}to{transform:none}}@-webkit-keyframes bounce{0%{-webkit-transform:translateY(-1000px)}60%{-webkit-transform:translateY(25px)}75%{-webkit-transform:translateY(-10px)}90%{-webkit-transform:translateY(5px)}to{-webkit-transform:none}}@media (prefers-color-scheme:dark){body{color:#d6d6d6;background:linear-gradient(135deg,#162b41 40%,#000 100%);border:1rem solid #0d1928}h1,h2,h3,h4,h5,h6,a{color:#fff}a:hover{border-bottom:1px solid #9abdf6}blockquote{color:#fff;background:#446c904d;border-left:5px solid #9abdf6}article a:hover{color:#fff;border-color:#fff}section ul li a{color:#fff}section ul li a:hover{border-bottom:1px solid #9abdf6}.footer{color:#fff}}.highlight{margin:40px 0}.highlight .c{color:#998;font-style:italic}.highlight .err{color:#a61717;background-color:#e3d2d2}.highlight .k,.highlight .o{font-weight:700}.highlight .cm{color:#998;font-style:italic}.highlight .cp{color:#999;font-weight:700}.highlight .c1{color:#998;font-style:italic}.highlight .cs{color:#999;font-style:italic;font-weight:700}.highlight .gd{color:#000;background-color:#fdd}.highlight .gd .x{color:#000;background-color:#faa}.highlight .ge{font-style:italic}.highlight .gr{color:#a00}.highlight .gh{color:#999}.highlight .gi{color:#000;background-color:#dfd}.highlight .gi .x{color:#000;background-color:#afa}.highlight .go{color:#888}.highlight .gp{color:#555}.highlight .gs{font-weight:700}.highlight .gu{color:#aaa}.highlight .gt{color:#a00}.highlight .kc,.highlight .kd,.highlight .kp,.highlight .kr{font-weight:700}.highlight .kt{color:#458;font-weight:700}.highlight .m{color:#099}.highlight .s{color:#d14}.highlight .na{color:teal}.highlight .nb{color:#0086b3}.highlight .nc{color:#458;font-weight:700}.highlight .no{color:teal}.highlight .ni{color:purple}.highlight .ne,.highlight .nf{color:#900;font-weight:700}.highlight .nn{color:#555}.highlight .nt{color:navy}.highlight .nv{color:teal}.highlight .ow{font-weight:700}.highlight .w{color:#bbb}.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo{color:#099}.highlight .sb,.highlight .sc,.highlight .sd,.highlight .s2,.highlight .se,.highlight .sh,.highlight .si,.highlight .sx{color:#d14}.highlight .sr{color:#009926}.highlight .s1{color:#d14}.highlight .ss{color:#990073}.highlight .bp{color:#999}.highlight .vc,.highlight .vg,.highlight .vi{color:teal}.highlight .il{color:#099}:root{--default-box-shadow:#0000001a 0px 10px 15px -3px, #0000000d 0px 4px 6px -2px}#lego-frame-model{width:100%;height:250px;margin-bottom:16px}#lego-frame-model:focus{outline:none}.home__contact{font-size:1rem;line-height:1.5}.home__contact-callout{color:#d04400;font-weight:700}.home__social-container{flex-wrap:wrap;gap:2rem;display:flex}.home__social-link{color:#313131;font-size:14px}.home__social-icon{margin-right:.4rem}.home__intro-container{margin:6rem auto 4rem}.home__skills-text{margin-top:8px}.home__skills-list{color:#d04400}.home__divider{background:#c2cedf;background:-webkit-gradient(linear, left top, right top, from(#fff0), color-stop(#c2cedf), to(#fff0));background:-webkit-linear-gradient(270deg,#fff0,#c2cedf,#fff0);background:linear-gradient(90deg,#fff0,#c2cedf,#fff0);height:1px;margin:2em 0}.home__featured-work{flex-wrap:wrap;gap:2rem;display:flex}.home__featured-work-title{margin-top:2rem;font-size:1rem;font-weight:700}.Header{justify-content:space-between;align-items:center;max-width:896px;margin:auto;display:flex}.Header__avatar{height:3rem;box-shadow:var(--default-box-shadow);border-radius:60px}.Header__avatar:hover{border:.5px solid #fff}a:has(.Header__avatar){border-bottom:none}.Header__link-items{gap:2rem;display:flex}.Card__wrapper{background:#f4f6fa;border:.5px solid #c3cfe2;border-radius:1rem;display:flex;overflow:hidden}.Card__wrapper--clickable{box-shadow:var(--default-box-shadow);background:#fff}@media (width<=768px){.Card__wrapper{flex-direction:column}}.Card__title{width:100%;margin:0 0 .5rem;font-size:.9rem;font-weight:700}.Card__image{object-fit:cover;width:16rem;height:100%;margin:0}@media (width<=768px){.Card__image{width:100%;max-height:15rem}}.Card__description{padding:2rem}.Card__tags{color:gray;background:0 0;margin:.9rem 0 0;padding:0;font-size:.7rem;display:flex}.Timeline{border-left:1px dashed #adadad;flex-direction:column;padding:32px 0 0 32px;display:flex}.Timeline__item{gap:24px;display:flex}.Timeline__item+*{margin-top:48px}.Timeline__item-icon{background:#343434;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:10px;height:10px;margin-left:-38px;display:flex;overflow:hidden}.Timeline__item-description{flex-direction:column;gap:18px;display:flex}.Timeline__item-description p{margin:-4px 0;font-size:1rem;font-weight:700}.Timeline__item-description a{margin:-4px 0;font-size:1rem;line-height:1rem}@media (prefers-color-scheme:dark){body{border:none}.home__contact-callout{color:#9abdf6}.home__divider{background:#293952;background:-webkit-gradient(linear, left top, right top, from(#fff0), color-stop(#293952), to(#fff0));background:-webkit-linear-gradient(270deg,#fff0,#293952,#fff0);background:linear-gradient(90deg,#fff0,#293952,#fff0)}.home__social-link{color:#fff}.Card__wrapper{background:#0000005c;border:.5px solid #3d5065}.Card__tags{color:#fff}.Timeline{border-left:1px dashed #5f768f}.Timeline__item-icon{background:#9abdf6}}
