@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;src:url(/static/fonts/notosans/NotoSans.woff2)format("woff2")}:root:has(#dark-theme:checked){--bg-primary-color:#404040;--bg-secondary-color:#262626;--border-color:#737373;--big-btn-color:#525252;--big-btn-hover-color:#404040;--card-color:#404040;--card-hover-color:#525252;--img-filter-color:#0a0a0a80;--link-color:#5fafff;--nav-bg-color:#171717;--outline-color:#e5e5e5;--pill-bg-color:#fafafa;--scrollbar-color:#525252;--text-color:#fafafa;--text-disabled-color:#a1a1a1;--text-hover-color:#d4d4d4}@supports (color:lab(0% 0 0)){:root:has(#dark-theme:checked){--bg-primary-color:lab(27.036% 0 0);--bg-secondary-color:lab(15.204% 0 -.00000596046);--border-color:lab(48.496% 0 0);--big-btn-color:lab(34.924% 0 0);--big-btn-hover-color:lab(27.036% 0 0);--card-color:lab(27.036% 0 0);--card-hover-color:lab(34.924% 0 0);--nav-bg-color:lab(7.78201% -.0000149012 0);--outline-color:lab(90.952% 0 -.0000119209);--pill-bg-color:lab(98.26% 0 0);--scrollbar-color:lab(34.924% 0 0);--text-color:lab(98.26% 0 0);--text-disabled-color:lab(66.128% -.0000298023 .0000119209);--text-hover-color:lab(84.92% 0 -.0000119209)}}:root:has(#dark-theme:not(:checked)){--bg-primary-color:white;--bg-secondary-color:#f5f5f5;--border-color:#a1a1a1;--big-btn-color:#a1a1a1;--big-btn-hover-color:#d4d4d4;--card-color:#f5f5f5;--card-hover-color:#e5e5e5;--img-filter-color:#fafafa99;--link-color:#0353a4;--nav-bg-color:#d4d4d4;--outline-color:#525252;--pill-bg-color:white;--scrollbar-color:#a1a1a1;--text-color:#262626;--text-disabled-color:#737373;--text-hover-color:#525252}@supports (color:lab(0% 0 0)){:root:has(#dark-theme:not(:checked)){--bg-secondary-color:lab(96.52% -.0000298023 .0000119209);--border-color:lab(66.128% -.0000298023 .0000119209);--big-btn-color:lab(66.128% -.0000298023 .0000119209);--big-btn-hover-color:lab(84.92% 0 -.0000119209);--card-color:lab(96.52% -.0000298023 .0000119209);--card-hover-color:lab(90.952% 0 -.0000119209);--nav-bg-color:lab(84.92% 0 -.0000119209);--outline-color:lab(34.924% 0 0);--scrollbar-color:lab(66.128% -.0000298023 .0000119209);--text-color:lab(15.204% 0 -.00000596046);--text-disabled-color:lab(48.496% 0 0);--text-hover-color:lab(34.924% 0 0)}}html,body{font-variation-settings:"wdth" 100;font-optical-sizing:auto;text-wrap:pretty;scroll-behavior:smooth;background-color:var(--bg-primary-color);height:fit-content;color:var(--text-color);fill:var(--text-color);scrollbar-color:var(--scrollbar-color) var(--bg-secondary-color);margin:0;font-family:Noto Sans,Arial,Inter,sans-serif;font-style:normal;font-weight:400;line-height:1.4}body:has(dialog[open]){overflow:hidden}h1,h2,h3,h4,h5,h6{text-wrap:balance;line-height:1}:focus-visible{outline:var(--outline-color) solid 2px}a{color:var(--link-color)}.container{width:clamp(36rem,70vw,50rem);margin:auto}@media (max-width:650px){.container{width:calc(100% - 2rem)}}.container-lg{width:clamp(45rem,70vw,60em);margin:auto}@media (max-width:750px){.container-lg{width:100%}}.col-center{flex-direction:column;align-items:center;display:flex}section{scroll-margin-top:48.38px}.section-heading{text-align:center;height:fit-content;min-height:fit-content;margin:0;padding:2rem 0 1rem;font-size:2.3em}main section{padding-bottom:2.5rem}#dark-theme:checked~* .when-light,#dark-theme:not(:checked)~* .when-dark{display:none!important}nav{z-index:2;background-color:var(--nav-bg-color);flex-direction:row;padding:0 2rem;display:flex;position:sticky;top:0}.nav-container{flex-direction:row;justify-content:space-between;align-items:stretch;display:flex;position:relative}.nav-home{z-index:1;padding:.5rem 0;line-height:0}#nav-burger-menu,#close-menu-overlay,.hidden{visibility:hidden;display:none}nav ul{background-color:inherit;width:fit-content;margin:0;display:flex}nav ul>li{list-style-type:none}nav ul>li a{height:100%;color:var(--text-color);align-items:center;padding:0 1rem;font-size:x-large;font-weight:700;text-decoration:none;display:flex}nav ul>li a:hover{color:var(--text-hover-color)}.theme-switch{cursor:pointer;fill:inherit;align-self:stretch;align-items:center;display:flex}.theme-switch.narrow{display:none}.theme-switch.wide{display:flex}.theme-switch svg{width:2rem;height:2rem}#dark-theme:checked~* .theme-switch.light,#dark-theme:not(:checked)~* .theme-switch.dark{display:none!important}@media (max-width:525px){nav{padding:0 2rem}.nav-home{margin-left:0}#nav-burger-menu{visibility:visible;background:0 0;border:none;justify-content:center;align-items:center;font-size:large;display:flex}#nav-burger-menu svg{width:2rem;height:2rem}nav ul{visibility:hidden;display:none}nav ul>li a{padding:.3rem 0}#nav-menu-toggle:checked+.nav-container{flex-wrap:wrap}#nav-menu-toggle:checked+.nav-container ul{visibility:visible;text-align:start;z-index:1;flex-direction:column;width:100%;padding:.5rem 0;display:flex}#nav-menu-toggle:checked~#close-menu-overlay{visibility:visible;background:0 0;height:100vh;display:block;position:absolute;left:0;right:0}#nav-menu-toggle:checked+.nav-container .theme-switch.narrow{z-index:1;display:flex;position:absolute;bottom:.6rem;right:0}.theme-switch.wide{display:none}}header{width:100%;height:30vh;min-height:8rem;color:var(--text-color);fill:var(--text-color);background-image:url(/static/images/foggy-trees.webp);background-position:50% 0;background-size:cover;position:relative}.background-filter{background-color:var(--img-filter-color)}.background-filter,#theme-overlay{position:absolute;inset:0;overflow:hidden}#theme-container{position:relative}header hgroup{z-index:1;justify-content:center;height:100%;position:absolute;inset:0}header h1.section-heading{margin:0;padding:1rem 0 .75rem}header p{margin:0;padding:.75rem 0 1rem}#about .section-heading{margin:0}#companies{background-color:var(--bg-secondary-color);border-radius:.5rem;flex-wrap:wrap;justify-content:center;gap:.25rem;padding:.75rem;display:flex}.company{background-color:var(--pill-bg-color);border:1px solid #00000020;border-radius:.5em;height:40px;padding:.5em}@media (min-width:930px){#about-panels{flex-direction:row-reverse;display:flex}#about-panel-companies{width:50%;padding-left:1rem}#about-panel-companies p{text-wrap:pretty;margin-top:0}#about-panel-text{border-right:1px solid var(--border-color);flex-direction:column;justify-content:center;align-items:flex-start;row-gap:1rem;width:50%;padding-right:1rem;display:flex}}.button-group{flex-direction:row;display:flex}.button-group .button{border-radius:0}.button-group .button:first-child{border-radius:.5em 0 0 .5em}.button-group .button:last-child{border-radius:0 .5em .5em 0}.button{color:#fff;fill:#fff;text-wrap:nowrap;border:0;border-radius:.5rem;justify-content:center;align-items:center;padding:.5rem .75rem;font-weight:700;display:flex;text-decoration:none!important}.button:has(svg){line-height:0}.button.primary{background-color:#005eae;background-color:lab(37.8738% 9.19367 -67.242)}.button.primary:hover{background-color:#00408e;background-color:lab(25.7306% 17.9192 -67.2629)}.button.secondary{background-color:#737373;background-color:lab(48.496% 0 0)}.button.secondary:hover{background-color:#525252;background-color:lab(34.924% 0 0)}.button svg{height:1em}.button :not(:first-child){margin-left:.5ch}#projects{background-color:var(--bg-secondary-color)}#projects-toggle:checked~#project-container{overflow-y:initial;height:fit-content!important}.projects-showing{visibility:hidden;display:none}#projects-toggle:checked~.projects-showing,#projects-toggle:checked~* .projects-showing{visibility:visible;display:initial}#projects-toggle:checked~.projects-not-showing,#projects-toggle:checked~* .projects-not-showing{visibility:hidden;display:none}#project-container{flex-flow:wrap;justify-content:center;gap:1.5rem;max-width:calc(96rem + 10px);height:19rem;margin:.5rem auto 0;padding:.5rem 1rem 0;display:flex;overflow-y:hidden}#project-container figure{border-radius:.33rem;width:18rem;margin:0}@media (min-width:750px){#project-container{padding:.5rem 8% 0}}.project{width:100%;height:100%;text-align:inherit;border-radius:inherit;color:var(--text-color);background-color:var(--card-color);flex-direction:column;text-decoration:none;display:flex}.project:hover{background-color:var(--card-hover-color)}.project-thumbnail{aspect-ratio:16/9;border-radius:.33rem .33rem 0 0;width:288px;height:162px}@media (max-width:635px){.project{width:100%}.project-thumbnail{height:unset;width:100%}}.project-text{border-radius:0 0 .33rem .33rem;flex-direction:column;row-gap:.5rem;height:100%;padding:.75rem 1.25rem;display:flex}.project-text *{margin:0}.project-text h2{font-size:1.2em}.projects-toggle-button{justify-content:center;align-self:stretch;margin-top:1rem;display:flex}.projects-toggle-button label{cursor:pointer;justify-content:center;width:60%;min-width:8rem;margin:0 .75em;padding:0;font-size:2.5rem;display:flex;background-color:var(--big-btn-color)!important}.projects-toggle-button label:hover{background-color:var(--big-btn-hover-color)!important}.projects-toggle-button span.projects-showing{margin-left:0}.projects-toggle-button svg{display:block}.more-projects-text{text-wrap:balance;text-align:center;margin:1.25rem 0 .25rem;font-weight:700}#project-preview{background-color:#fff;border:0;border-radius:.5rem;width:min(90vw,100rem);padding:0;position:fixed;top:0;overflow-y:hidden}#project-preview::backdrop{opacity:.5;background-color:#000;width:100vw;height:100vh;position:fixed;top:0;left:0}#project-preview form{background-color:var(--bg-secondary-color);max-height:90vh;color:var(--text-color);flex-direction:column;row-gap:.5rem;padding:.5rem 1.5rem;display:flex}#project-preview .header{flex-direction:row;justify-content:space-between;align-items:center;display:flex}#project-preview h3{margin:0;font-size:1.75em}#project-preview .close-button{fill:#000;cursor:pointer;background-color:var(--bg-primary-color);outline:3px solid var(--border-color);padding:.25rem;font-size:2rem}#project-preview .close-button:focus-visible{outline-width:4px}#project-preview .close-button svg{padding:0 3px}#project-preview iframe{aspect-ratio:16/9;border:1px solid var(--border-color);background-size:contain;width:100%;min-height:40vh}@media (max-width:300px){.hidden-xs{display:none}}.contact-links{border-top:1px solid var(--border-color);justify-content:center;padding-top:1rem;display:flex}.contact-links a{height:40px;padding:.25em .5em;text-decoration:none;display:inline-block}.contact-links svg{fill:inherit;width:40px;height:40px}#contact{margin-bottom:4rem}#contact fieldset{border:0;min-width:0;margin:0;padding:0}#contact .ignore{height:0;overflow-y:hidden}#contact .fields{flex-direction:column;align-items:stretch;row-gap:1rem;margin-top:1.5em;display:flex}#contact form input,#contact form textarea{background-color:var(--bg-primary-color);border:1px solid var(--border-color);color:var(--text-color)}:is(#contact form input,#contact form textarea)::placeholder{color:var(--text-disabled-color)}:is(#contact form input,#contact form textarea)::-moz-placeholder{color:var(--text-disabled-color)}:is(#contact form input,#contact form textarea):focus-visible{border:1px solid var(--border-color);outline:var(--border-color) solid 2px}#contact form input,#contact form button,#contact form textarea{border-radius:.5em;max-width:100%;padding:.5em .75em;font-family:inherit;font-size:large}#contact form button{cursor:pointer;align-self:flex-start}textarea{resize:none!important}