:root{--color-navy-blue:rgb(5 11 56/100%);--color-navy-blue-90:rgb(5 11 56/90%);--color-navy-blue-80:rgb(5 11 56/80%);--color-white-70:rgb(255 255 255/70%);--color-white-10:rgb(255 255 255/10%);--color-pink-bright:rgb(213 11 84/90%);--color-pink-dusty:rgb(245 208 200/80%)}*{box-sizing:border-box;scroll-behavior:smooth}body{margin:0 auto;padding:0;max-width:1140px;width:100%;background-color:var(--color-navy-blue);color:var(--color-white-70);font-family:sans-serif;font-weight:400;font-size:medium;line-height:1.5}ul{list-style:none;padding-left:0}.scroll-section{overflow-y:scroll}p{font-family:sans-serif;color:rgb(5 11 56/85%);font-size:.9em;font-weight:400}h2{display:block;font-weight:400;color:var(--color-pink-dusty);font-size:3em;letter-spacing:-.1vw;border-top:2px solid var(--color-pink-dusty)}h2,h3{position:relative;font-family:Oswald,sans-serif;text-transform:uppercase;-webkit-font-smoothing:auto}h3{color:rgb(245 208 200/80%);size:1.25em;letter-spacing:unset;font-weight:500;line-height:1;margin-bottom:0}.icon-sm,h3{display:inline-block}.icon-sm{font-size:24px;vertical-align:middle}.social-icon{width:24px;height:24px;display:inline-block;align-items:center;justify-content:center}a{text-decoration:none;transition:color .3s ease}a,a:hover{color:inherit}a:hover{text-decoration:inherit}.content-link{border-bottom:3px solid var(--color-pink-bright)}.content-link:hover{border-bottom-color:var(--color-pink-dusty)}.nav-list-item .nav-list-item-link{position:relative;display:inline-block}.nav-list-item .nav-list-item-link:before{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:2px;background-color:var(--color-pink-bright);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.nav-list-item .nav-list-item-link:hover:before{transform:scaleX(1)}.button-dark{background-color:var(--color-navy-blue-80);color:white}.button-dark,.button-light{display:inline-block;font-family:Oswald,sans-serif;border-radius:6px;margin-right:10px;padding:5px 15px;text-align:center;text-decoration:none;font-size:.9rem;transition:all .3s ease-out}.button-light{background-color:rgb(255 255 255/80%);color:var(--color-navy-blue-80)!important;margin-bottom:1rem}.button-dark:hover,.button-light:hover{background-color:var(--color-pink-bright);color:white}.site-container{width:100%;max-width:1140px;display:flex;flex-direction:row;margin:0}.content-container{flex:1 1;min-width:0;padding:0 2rem}.content-section{min-height:296px;padding-block:1rem}.navigation-container{flex:0 0 10%;min-width:90px;margin-right:2rem;background-color:unset;font-size:large}nav{margin-left:1rem}.navbar-list{display:flex;flex-direction:column}.nav-list-item{font-family:Oswald,sans-serif;margin:.25rem 0}.nav-list-item .nav-link{color:var(--color-white-70);padding:.5rem 1rem}header{display:flex;flex-wrap:wrap;align-items:center;gap:2rem}h1{font-size:clamp(3rem,8vw,5rem);min-width:0;font-family:Oswald,sans-serif;font-weight:500;font-style:italic;text-transform:uppercase;letter-spacing:-.07em;color:var(--color-white-70);text-align:right;line-height:.7;position:-webkit-sticky;position:sticky;transition:color .4s ease;margin-block:.5em}h1:hover{cursor:pointer;color:var(--color-white-10);opacity:.8}.tagline{flex:0 1 auto;min-width:0;font-family:Crimson Text,serif;font-size:2em;font-style:italic;margin-left:0;color:var(--color-pink-dusty);z-index:-1}#about p{color:var(--color-white-70)}.about-columns{column-count:2;column-gap:20px}.skills-list{padding-left:0;font-family:sans-serif}.skill-item{list-style:none}.list-columns{column-count:4}.masonry-grid{column-width:280px;column-gap:1rem}.masonry-grid>*{page-break-inside:avoid;break-inside:avoid;margin-bottom:1rem}@media (max-width:700px){.masonry-grid{column-width:240px}}@media (max-width:500px){.masonry-grid{column-width:100%}}.masonry-grid-column{padding-left:1rem;background-clip:padding-box;min-width:266px}.masonry-grid-column:first-of-type{padding-left:unset}.card{break-inside:avoid-column;page-break-inside:avoid;display:inline-block;width:100%;margin:0 0 1rem;vertical-align:top;border:none;background-color:#f3f3f3;border-radius:4px;overflow:hidden}.card-image{border-radius:4px 4px 0 0;width:100%;object-fit:cover;display:block}.card-body{padding:0 1.25rem 1.25rem}h3.card-heading{position:relative;color:var(--color-navy-blue-80)}h3.card-heading:hover{text-decoration:none}h3.card-heading:before{content:"";position:absolute;left:0;width:100%;height:2px;bottom:-2px;background-color:var(--color-pink-bright);visibility:hidden;transform:scaleX(0);transition:transform .3s ease-in-out}h3.card-heading:hover:before{visibility:visible;transform:scaleX(1)}.card-text{color:rgb(5 11 56/85%);font-size:.9em}summary{display:initial}.list-tech-used{color:rgb(5 11 56/80%);font-family:sans-serif;font-weight:400;font-size:.95rem;display:block;list-style:none;margin-block:1em;-webkit-padding-start:0;padding-inline-start:0}.github-logo-icon{display:inline-block;color:rgb(5 11 56/90%);font-size:1.5em;vertical-align:sub;transition:all .3s ease-out}.github-logo-icon:hover{color:var(--color-pink-bright)}.contact-info{font-family:sans-serif}.deep-dives-content{display:flex;flex-direction:row;margin-top:2rem}.deep-dives-image-container{max-width:450px;margin-right:1rem}.deep-dives-text-container{color:var(--color-white-70);margin-left:1rem}.deep-dives-text p,ul.list-features li,ul.list-tech-used-deep-dive{color:var(--color-white-70);font-family:sans-serif;font-size:medium}.deep-dives-text p:first-of-type{margin-top:unset}.deep-dives-mobile-image-list{display:flex}.deep-dives-image{width:auto;height:auto;margin-bottom:1rem;margin-right:1rem;max-width:466px}.deep-dives-image-mobile{max-width:225px}.list-features,.list-tech-used-deep-dive{display:block;list-style:none;margin-block:1em;-webkit-padding-start:0;padding-inline-start:0}@media (max-width:768px){.site-container{flex-direction:column-reverse}.navigation-container{display:block;flex:0 0 auto;width:100vw;margin:0;background-color:#12194f}nav{position:static;margin:0}.navbar-list{display:flex;flex-direction:row;justify-content:center}.nav-list-item{margin:0 .5rem}.content-container{padding:0 2rem}.deep-dives-content{flex-direction:column}.list-columns{column-count:3}.deep-dives-image-container{width:100%;max-width:100%;margin:1rem auto}.deep-dives-image{width:100%;max-width:100%}.deep-dives-mobile-image-list{display:block;width:100%;max-width:100%;margin:1rem auto}h2{font-size:1.5em}header{flex-direction:column;align-items:flex-start;gap:unset}header h1{font-size:clamp(2rem,10vw,5em);text-align:left;opacity:.7}.tagline{text-align:left;font-size:2em;line-height:1.1}h3{margin-block:.5em}}@media (max-width:500px){.masonry-grid-column:first-of-type{padding-left:unset}.list-columns{column-count:2}.about-columns{column-count:1;column-gap:0}.deep-dives-text-container{margin-left:unset}.deep-dives-image-container{margin:unset}.deep-dives-image{margin-bottom:unset;margin-right:unset}.deep-dives-image-mobile{width:100%;max-width:100%}header h1{font-size:3em}.tagline{font-size:1.8em}}@font-face{font-family:Oswald;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b3097673cd409a21-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Oswald;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/2409d02eaee47cb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Oswald;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b72a6a678d511e3a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Oswald;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/a33a3f3323a75998-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Oswald;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/bd9b9909c3a641ff-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b3097673cd409a21-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/2409d02eaee47cb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b72a6a678d511e3a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/a33a3f3323a75998-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/bd9b9909c3a641ff-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Oswald Fallback;src:local("Arial");ascent-override:146.51%;descent-override:35.49%;line-gap-override:0.00%;size-adjust:81.43%}.__className_6f0b5e{font-family:Oswald,Oswald Fallback;font-style:normal}@font-face{font-family:Crimson Text;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/f9c175e84c2746b9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Crimson Text;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/38f1353136457b55-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Crimson Text;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/f388ce6667079c43-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Crimson Text;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b23db1c6f4ff0acf-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Crimson Text;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/9cb252b81356e010-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Crimson Text;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e400baae650c21fc-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Crimson Text Fallback;src:local("Times New Roman");ascent-override:97.50%;descent-override:36.01%;line-gap-override:0.00%;size-adjust:97.36%}.__className_2ddac2{font-family:Crimson Text,Crimson Text Fallback;font-weight:400}