._dots_1g2qz_2{z-index:2;gap:.5rem;display:flex;position:absolute;bottom:1rem;right:1rem}._dotActive_1g2qz_11,._dot_1g2qz_2{border:2px solid var(--color-secondary-lavender-gray);background:var(--color-secondary-lavender-gray-70);cursor:pointer;border-radius:50%;width:10px;height:10px;padding:0;transition:background .2s}._dotActive_1g2qz_11{background:var(--color-secondary-light-gray);border-color:var(--color-cta-celestial-gold)}._carousel_1g2qz_25{position:relative;overflow:hidden}._viewport_1g2qz_30{width:100%;padding:var(--space-sm) 0;overflow:hidden}._container_1g2qz_36{gap:var(--space-md);display:flex}._slide_1g2qz_42{flex:0 0 calc(88% - var(--space-md));min-width:0}@media (width>=30rem){._slide_1g2qz_42{flex:0 0 calc(100% / 1.2 - var(--space-md))}}@media (width>=48rem){._slide_1g2qz_42{flex:0 0 calc(100% / 2.2 - var(--space-md) * 2)}}@media (width>=64rem){._slide_1g2qz_42{flex:0 0 calc(31.25% - var(--space-md) * 2)}}._prev_1g2qz_57{margin-left:4px}._next_1g2qz_62,._prev_1g2qz_57{cursor:pointer;z-index:1;margin:var(--space-sm) 0;background:0 0;border:none;font-size:2rem}._next_1g2qz_62{transform:rotate(180deg)}._portfolioCard_17z3y_1{--size-bg:5%;border-radius:var(--radius-sm);color:var(--color-secondary-charcoal-gray);border:1px solid var(--color-secondary-light-gray);background:var(--color-secondary-light-gray) url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+Cjxzdmcgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDE2NjcgMTEyMyIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3BhY2U9InByZXNlcnZlIiB4bWxuczpzZXJpZj0iaHR0cDovL3d3dy5zZXJpZi5jb20vIiBzdHlsZT0iZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjI7Ij4KICAgIDxyZWN0IGlkPSJtYWluLWxvZ28tb3V0bGluZSIgeD0iLTAiIHk9IjAiIHdpZHRoPSIxNjY2LjU4IiBoZWlnaHQ9IjExMjIuNyIgc3R5bGU9ImZpbGw6bm9uZTsiLz4KICAgIDxnIGlkPSJha25lZS1sb2dvLW91dGxpbmUiPgogICAgICAgIDxnIGlkPSJhdG9tIj4KICAgICAgICAgICAgPHBhdGggZD0iTTI0My41ODMsODMwLjI1OEMzNTkuMzI3LDg2MS42NjIgNDQ1LjUzOSw5MjMuMjA2IDQzMy42OTYsOTY3LjM5OUM0MjEuODQxLDEwMTEuNjQgMzE2LjE4MywxMDIxLjgxIDIwMC4wOCw5OTEuMDA0QzIxNi41NTMsOTk1LjMzOCAyMzQuMzUyLDk5NC42NDkgMjUwLjk4NSw5ODguMjcxQzMyNy44NjUsMTAwMC4zIDM5MC45MjEsOTg5Ljk2MSAzOTkuMjMxLDk1OC45NDhDNDA3LjU0LDkyNy45MzUgMzU4LjQ5Niw4ODUuOTk0IDI4NS45MDMsODU3Ljk3QzI3NC43NzksODQ0LjI0IDI1OS44NjEsODM0Ljc4NiAyNDMuNTgzLDgzMC4yNThaTTI0Mi4zODEsODI5LjkzM0wyNDEuNzk4LDgyOS43NzZDMTI1LjEzNCw3OTguNTE2IDIwLjkxLDgwOS4xODQgOS4wMDgsODUzLjYwM0MtMi44OTQsODk4LjAyNCA4Mi4wMzIsOTU5LjM3NSAxOTguNjk2LDk5MC42MzVMMTk5LjY4Miw5OTAuODk4QzE4My4yNTIsOTg2LjQ5IDE2OC4xNjUsOTc3LjA3NyAxNTYuOTAyLDk2My4zMjdDODMuMDE1LDkzNS4yODIgMzQuMTIzLDg5My45MjUgNDIuNTIxLDg2Mi41ODRDNTAuOTE5LDgzMS4yNDUgMTEzLjkzNyw4MTkuODc0IDE5MS45NDQsODMyLjUyOUMyMDguNDQsODI2LjMwMiAyMjYuMDU5LDgyNS42NTIgMjQyLjM4MSw4MjkuOTMzWiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6cmdiKDE2MCwxNDksMTgzKTtzdHJva2Utd2lkdGg6MTJweDsiLz4KICAgICAgICAgICAgPHBhdGggZD0iTTE1OS4zMzgsMTA0NC4wOUMxNzYuMzk1LDEwMzQuMjQgMTk4LjIzOCwxMDQwLjA5IDIwOC4wODYsMTA1Ny4xNUMyMTcuOTM0LDEwNzQuMjEgMjEyLjA4MSwxMDk2LjA1IDE5NS4wMjQsMTEwNS45QzE3Ny45NjcsMTExNS43NSAxNTYuMTI0LDExMDkuODkgMTQ2LjI3NiwxMDkyLjg0QzEzNi40MjgsMTA3NS43OCAxNDIuMjgxLDEwNTMuOTMgMTU5LjMzOCwxMDQ0LjA5WiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6cmdiKDE2MCwxNDksMTgzKTtzdHJva2Utd2lkdGg6MTJweDsiLz4KICAgICAgICAgICAgPHBhdGggZD0iTTI0Ni44NDksNzE3LjQ5MUMyNjMuOTA2LDcwNy42NDMgMjg1Ljc0OSw3MTMuNDk2IDI5NS41OTcsNzMwLjU1M0MzMDUuNDQ1LDc0Ny42MSAyOTkuNTkyLDc2OS40NTMgMjgyLjUzNSw3NzkuMzAxQzI2NS40NzgsNzg5LjE0OSAyNDMuNjM1LDc4My4yOTYgMjMzLjc4Nyw3NjYuMjM5QzIyMy45MzksNzQ5LjE4MiAyMjkuNzkyLDcyNy4zMzkgMjQ2Ljg0OSw3MTcuNDkxWiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6cmdiKDE2MCwxNDksMTgzKTtzdHJva2Utd2lkdGg6MTJweDsiLz4KICAgICAgICAgICAgPHBhdGggZD0iTTMwNC41MjksMTA1NC43QzM4NC4xODEsMTAwOC43MSA0MTEuNDcyLDkwNi44NjIgMzY1LjQ4NSw4MjcuMjFDMzE5LjQ5OCw3NDcuNTU4IDIxNy42NDgsNzIwLjI2OCAxMzcuOTk2LDc2Ni4yNTVDNTguMzQ0LDgxMi4yNDIgMzEuMDU0LDkxNC4wOTEgNzcuMDQxLDk5My43NDNDMTIzLjAyOCwxMDczLjM5IDIyNC44NzgsMTEwMC42OSAzMDQuNTI5LDEwNTQuN1pNMjYyLjg5Niw5ODIuNTg4QzMwMi43MjIsOTU5LjU5NSAzMTYuMzY3LDkwOC42NjkgMjkzLjM3NCw4NjguODQzQzI3MC4zOCw4MjkuMDE3IDIxOS40NTUsODE1LjM3MyAxNzkuNjI5LDgzOC4zNjZDMTM5LjgwMyw4NjEuMzYgMTI2LjE1OCw5MTIuMjg0IDE0OS4xNTIsOTUyLjExQzE3Mi4xNDUsOTkxLjkzNiAyMjMuMDcsMTAwNS41OCAyNjIuODk2LDk4Mi41ODhaIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTpyZ2IoMTYwLDE0OSwxODMpO3N0cm9rZS13aWR0aDoxMnB4OyIvPgogICAgICAgICAgICA8cGF0aCBkPSJNMjAzLjQxOSw4NzkuNTcyQzIyMC40NzYsODY5LjcyNCAyNDIuMzIsODc1LjU3NyAyNTIuMTY3LDg5Mi42MzRDMjYyLjAxNSw5MDkuNjkxIDI1Ni4xNjIsOTMxLjUzNCAyMzkuMTA1LDk0MS4zODJDMjIyLjA0OCw5NTEuMjMgMjAwLjIwNSw5NDUuMzc3IDE5MC4zNTcsOTI4LjMyQzE4MC41MSw5MTEuMjYzIDE4Ni4zNjIsODg5LjQyIDIwMy40MTksODc5LjU3MloiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOnJnYigxNjAsMTQ5LDE4Myk7c3Ryb2tlLXdpZHRoOjEycHg7Ii8+CiAgICAgICAgPC9nPgogICAgICAgIDxwYXRoIGlkPSJrbmVlIiBkPSJNNjUxLjA3LDg0OC4wM0w1MTguMTA0LDc3Ni40NTZMNTgyLjMzOCw4ODcuNzEyTDQ3Mi41NjQsOTUxLjA5TDMxMS4zNjUsNjcxLjg4Nkw0MjEuMTk1LDYwOC42MDRMNDgxLjU2Miw3MTMuMTYyTDQ5MS4wNDUsNTY4LjU3NEw2MTguNjE5LDQ5NC45MTlMNTk1LjM2Myw2OTUuNTg4TDc4Mi4xMDYsNzcyLjM3Nkw2NTEuMDcsODQ4LjAzWk04MzkuODg3LDM2NC41MzNDODcxLjg2MSwzNDYuMDczIDkwMi45MzcsMzQyLjQxNyA5MzMuMTA0LDM1My41NjlDOTYzLjYxLDM2NC41MjcgOTg5LjQyNiwzODguMzAxIDEwMTAuNTUsNDI0Ljg5MkwxMTAzLjksNTg2LjU4NUw5OTQuNjIyLDY0OS42OEw5MDkuMjYyLDUwMS44MzJDOTAxLjY0OSw0ODguNjQ2IDg5Mi4wMjQsNDgwLjM1NyA4ODAuMzk5LDQ3Ni45NkM4NjguOTExLDQ3My4wNDMgODU3LjIzMSw0NzQuNTEyIDg0NS4zNTgsNDgxLjM2N0M4MzMuMTY0LDQ4OC40MDcgODI1Ljg4OCw0OTcuODgzIDgyMy41MzQsNTA5Ljc5MUM4MjAuOTg4LDUyMS4zNyA4MjMuNTIyLDUzMy43NTMgODMxLjEzNSw1NDYuOTM5TDkxNi40OTUsNjk0Ljc4N0w4MDYuNzIyLDc1OC4xNjRMNjQ1LjcwOCw0NzkuMjhMNzU1LjQ4MSw0MTUuOTAyTDc4MC4wMzMsNDU4LjQyN0M3ODAuOTkxLDQ0MC4yOTMgNzg2LjE3OSw0MjMuMDEzIDc5NS41OTIsNDA2LjU5QzgwNS4zMzksMzg5Ljk3MyA4MjAuMTA3LDM3NS45NTMgODM5Ljg4NywzNjQuNTMzWk0xMzI5LjY2LDI2Ny4wMjVDMTMzNC4wNCwyNzQuNjA3IDEzMzcuNzMsMjgyLjE0NSAxMzQwLjc0LDI4OS42MzhMMTE2NC4yMSwzOTEuNTU4QzExNzkuNzUsNDE0LjY3MiAxMTk2Ljc1LDQyMC44OTkgMTIxNS4yMSw0MTAuMjM5QzEyMjcuMDgsNDAzLjM4OSAxMjMyLjUxLDM5MyAxMjMxLjUxLDM3OS4wNzdMMTM0Ny43MSwzMTEuOTg3QzEzNTUuMTcsMzM0LjA1MSAxMzU3LjA1LDM1Ni43MDIgMTM1My4zMiwzNzkuOTVDMTM0OS43NSw0MDIuNjczIDEzNDAuODksNDI0LjI3MSAxMzI2Ljc4LDQ0NC43MjZDMTMxMi43OSw0NjQuNjY2IDEyOTQuMjYsNDgxLjI5NyAxMjcxLjE4LDQ5NC42MjJDMTI0My41LDUxMC42MDcgMTIxNS40NCw1MTkuMTEyIDExODcuMDMsNTIwLjEzNUMxMTU4LjkzLDUyMC45NzIgMTEzMi42MSw1MTQuMTk1IDExMDguMDQsNDk5LjgwN0MxMDgzLjYxLDQ4NC45MDUgMTA2My4wMiw0NjIuOTQ3IDEwNDYuMjcsNDMzLjkzOEMxMDI5LjUyLDQwNC45MjkgMTAyMC44OSwzNzYuMjg2IDEwMjAuNCwzNDguMDA0QzEwMjAuMDMsMzE5LjIwNiAxMDI3LjIzLDI5Mi44NTQgMTA0MiwyNjguOTQyQzEwNTcuMDksMjQ0Ljg0NCAxMDc4LjQ5LDIyNC43OTkgMTEwNi4xNywyMDguODE0QzExMzMuODcsMTkyLjgyNCAxMTYxLjc1LDE4NC40MTkgMTE4OS44NSwxODMuNTgxQzEyMTguMDcsMTgyLjIyOSAxMjQ0LjIxLDE4OC42NzcgMTI2OC4yNiwyMDIuOTJDMTI5Mi42NCwyMTYuOTc3IDEzMTMuMSwyMzguMzQ2IDEzMjkuNjYsMjY3LjAyNVpNMTIwMy4yNywzMDUuMDU0QzExOTcuOTQsMjk1LjgyMyAxMTkwLjk4LDI5MC42MSAxMTgyLjM5LDI4OS40MkMxMTczLjU5LDI4Ny45MDUgMTE2NC43NSwyODkuNzE0IDExNTUuODUsMjk0Ljg1NEMxMTM2LjQsMzA2LjA4NCAxMTMwLjQ1LDMyMi4wNDMgMTEzOCwzNDIuNzM5TDEyMDMuMjcsMzA1LjA1NFpNMTYzNC4zNiw5MS4xMDVDMTYzOC43NCw5OC42ODcgMTY0Mi40MywxMDYuMjI1IDE2NDUuNDQsMTEzLjcxOEwxNDY4LjkxLDIxNS42MzhDMTQ4NC40NSwyMzguNzUyIDE1MDEuNDUsMjQ0Ljk3OSAxNTE5LjkyLDIzNC4zMTlDMTUzMS43OCwyMjcuNDY5IDE1MzcuMjIsMjE3LjA4IDE1MzYuMjEsMjAzLjE1N0wxNjUyLjQxLDEzNi4wNjdDMTY1OS44NywxNTguMTMxIDE2NjEuNzQsMTgwLjc4NyAxNjU4LjAzLDIwNC4wM0MxNjU0LjQ0LDIyNi43NTggMTY0NS41OSwyNDguMzUxIDE2MzEuNDcsMjY4LjgxMUMxNjE3LjQ5LDI4OC43NDYgMTU5OC45NywzMDUuMzc3IDE1NzUuODksMzE4LjcwMkMxNTQ4LjIsMzM0LjY4NyAxNTIwLjE0LDM0My4xOTIgMTQ5MS43MiwzNDQuMjJDMTQ2My42MywzNDUuMDUyIDE0MzcuMzEsMzM4LjI3NSAxNDEyLjc0LDMyMy44ODdDMTM4OC4zMSwzMDguOTg1IDEzNjcuNzIsMjg3LjAyNyAxMzUwLjk3LDI1OC4wMThDMTMzNC4yMiwyMjkuMDA5IDEzMjUuNiwyMDAuMzY2IDEzMjUuMSwxNzIuMDg0QzEzMjQuNzMsMTQzLjI4NiAxMzMxLjkzLDExNi45MzQgMTM0Ni42OSw5My4wMjdDMTM2MS44LDY4LjkyNCAxMzgzLjE5LDQ4Ljg3OSAxNDEwLjg4LDMyLjg5NEMxNDM4LjU2LDE2LjkwOSAxNDY2LjQ1LDguNDk5IDE0OTQuNTQsNy42NjZDMTUyMi43OCw2LjMwOSAxNTQ4LjkxLDEyLjc1NyAxNTcyLjk2LDI3LjAwNUMxNTk3LjM0LDQxLjA1NyAxNjE3LjgxLDYyLjQyNiAxNjM0LjM2LDkxLjEwNVpNMTUwNy45OCwxMjkuMTM0QzE1MDIuNjUsMTE5LjkwMyAxNDk1LjY5LDExNC42OSAxNDg3LjA4LDExMy41MDVDMTQ3OC4yOSwxMTEuOTg1IDE0NjkuNDUsMTEzLjc5NCAxNDYwLjU1LDExOC45MzRDMTQ0MS4xLDEzMC4xNjQgMTQzNS4xNSwxNDYuMTIzIDE0NDIuNywxNjYuODE5TDE1MDcuOTgsMTI5LjEzNFoiIHN0eWxlPSJmaWxsOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOnJnYigxNjAsMTQ5LDE4Myk7c3Ryb2tlLXdpZHRoOjEycHg7Ii8+CiAgICA8L2c+Cjwvc3ZnPgo=);background-size:var(--size-bg);flex-flow:column;justify-content:space-between;align-items:stretch;max-width:70rem;height:100%;margin:0 auto;text-decoration:none;display:flex;overflow:hidden}@media (width>=30rem){._portfolioCard_17z3y_1{--size-bg:10%}}@media (width>=40rem){._portfolioCard_17z3y_1{--size-bg:15%}}@media (width>=48rem){._portfolioCard_17z3y_1{--size-bg:18%}}@media (width>=64rem){._portfolioCard_17z3y_1{--size-bg:20%}}._thumbnail_17z3y_36{aspect-ratio:3/4;background:var(--color-secondary-light-gray);width:100%;position:relative}._thumbnail_17z3y_36 img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0}._content_17z3y_52{background:var(--color-secondary-light-gray);padding:var(--space-md);justify-content:space-between;align-items:flex-start;gap:var(--space-sm);flex-flow:column wrap;display:flex}._title_17z3y_62{font-size:var(--font-size-lg);margin:0}._description_17z3y_67{margin:0 0 var(--space-sm) 0;font-size:var(--font-size-sm)}main[data-astro-cid-epnv4ixt]{max-width:var(--size-width-content);gap:var(--space-md);flex-flow:column;width:100%;display:flex}section[data-astro-cid-epnv4ixt]{flex-flow:column;justify-content:space-between;align-items:center;display:flex}@media (width>=48rem){section[data-astro-cid-epnv4ixt]{flex-flow:row}}section[data-astro-cid-epnv4ixt]>div[data-astro-cid-epnv4ixt]{padding:0 var(--space-sm)}article[data-astro-cid-epnv4ixt] h2[data-astro-cid-epnv4ixt]{margin-bottom:0}.github-section[data-astro-cid-epnv4ixt]{justify-content:space-between;align-items:flex-start;gap:var(--space-md);flex-flow:column wrap;display:flex}.github-section[data-astro-cid-epnv4ixt] a,.github-section[data-astro-cid-epnv4ixt] h3,.github-section[data-astro-cid-epnv4ixt] p{margin:0}.github-section[data-astro-cid-epnv4ixt] h3{font-size:var(--font-size-xl)}.button-group[data-astro-cid-epnv4ixt]{margin:1rem 0 0}.github-logo svg{--size:100px;width:var(--size);height:var(--size)}@media (width>=48rem){.github-logo svg{--size:200px}}@media (width>=64rem){.github-logo svg{--size:180px}}
