body{margin:0;padding:0}*{box-sizing:border-box}.app-container{position:relative;width:100%;min-height:100vh;overflow-x:hidden;justify-content:center;align-items:center}.content{position:relative;z-index:1;text-align:center;color:#f5f5f5;font-family:Arial,Helvetica,sans-serif;padding-top:40vh;letter-spacing:.4em;display:flex;flex-direction:column;align-items:center}.title{font-size:clamp(1.5rem,3vw,3rem);margin:0;margin-bottom:1vh}.description{font-size:clamp(.8rem,1.5vw,1.5rem);font-family:Arial,Helvetica,sans-serif;color:#d75e9c;background:transparent;border:2px solid rgb(215,94,156);width:15vw;padding:.5rem;margin-top:4vh;border-radius:6px;opacity:0;transform:translateY(20px);animation:fadeInUp 1.2s ease forwards;animation-delay:.5s}.description:hover{transform:scale(1.5);background-color:#070c33;border:none;color:#fff}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.cover{height:100vh;width:100%;position:relative;overflow:hidden}.navbar{position:sticky;top:0;background:#fff;z-index:100;box-shadow:0 2px 8px #0000001a}.sections{min-height:80vh;padding:2rem;padding-bottom:0}.footer{background:#070c33;margin:0;padding:0;width:100vw;margin-left:-3rem;height:12rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem}.about-container{display:flex;flex-direction:column;justify-content:center;align-items:center;padding-top:3rem}.header-accent{width:clamp(4rem,9rem,10rem);height:1.3rem;background:#d75e9c;margin-left:7vw;margin-top:-6.5vh;z-index:-1}.cartoon-me{width:25vw;height:auto;padding:1rem}.about-description{width:40vw;padding-right:1.5rem;font-family:Arial,Helvetica,sans-serif;font-size:clamp(.7rem,1.2rem,1.2rem);color:#fff;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.about-content{height:60vh;width:100vw;padding-top:2rem;margin-bottom:5vh;display:flex;flex-direction:row;gap:5vw;box-sizing:border-box}.logo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));align-items:center;height:40vh;width:60vw;margin:0 auto;gap:.3rem;margin-right:2rem;margin-top:4rem;opacity:0;box-sizing:border-box}.logo-grid.fade-in{opacity:1}.tech-logo{height:clamp(40px,10vw,100px);width:clamp(40px,10vw,100px);border:2px solid rgb(162,213,255);border-radius:15px;background-color:#153b69cc;display:flex;flex-direction:column;align-items:center;padding-top:.5rem;gap:0;opacity:0;min-width:0;transform:translate(calc((var(--randX) - .5) * 40px),calc((var(--randY) - .5) * 40px))}.tech-logo svg{max-width:100%;max-height:7vh;height:auto;width:auto}.logo-grid.fade-in .tech-logo{animation-name:fadeUp;animation-duration:.7s;animation-fill-mode:forwards;animation-timing-function:ease}.tech-logo:nth-child(1){animation-delay:.4s;--randX: .2;--randY: .8}.tech-logo:nth-child(2){animation-delay:.65s;--randX: .9;--randY: .3}.tech-logo:nth-child(3){animation-delay:1.15s;--randX: .4;--randY: .1}.tech-logo:nth-child(4){animation-delay:.55s;--randX: .7;--randY: .9}.tech-logo:nth-child(5){animation-delay:.7s;--randX: .1;--randY: .5}.tech-logo:nth-child(6){animation-delay:1s;--randX: .6;--randY: .2}.tech-logo:nth-child(7){animation-delay:.5s;--randX: .3;--randY: .7}.tech-logo:nth-child(8){animation-delay:.1s;--randX: .8;--randY: .4}.tech-logo:nth-child(9){animation-delay:.3s;--randX: .5;--randY: .6}.tech-logo:nth-child(10){animation-delay:.45s;--randX: .2;--randY: .3}.tech-logo:nth-child(11){animation-delay:.85s;--randX: .9;--randY: .8}@keyframes fadeUp{to{opacity:1;transform:translate(0)}}.logo-name{font-size:clamp(.4rem,.7vw,.7rem);color:#fff;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:400;padding:0;text-align:center;word-break:break-word}@media(max-width:768px){.about-content{flex-direction:column;height:auto;align-items:center}.cartoon-me{width:60vw;max-width:300px}.about-description{width:80vw;padding-right:0;text-align:center}.logo-grid{width:85vw;height:auto;margin-right:0;grid-template-columns:repeat(auto-fit,minmax(70px,1fr))}.tech-logo{height:clamp(60px,15vw,80px);width:clamp(60px,15vw,80px)}}@media(max-width:480px){.logo-grid{grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:.5rem}.tech-logo{height:clamp(50px,18vw,70px);width:clamp(50px,18vw,70px)}.tech-logo svg{max-height:5vh}}.project-container{display:flex;flex-direction:column;width:100vw}.header{color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:clamp(1.5rem,3.5vw,3.5rem);align-self:center}.header-accent-projects{width:clamp(4rem,8rem,9rem);height:1.3rem;background:#d75e9c;margin-left:7vw;margin-top:-6.5vh;z-index:-1;align-self:center}.project-content{height:60vh;width:100vw;padding-top:clamp(1rem,3vw,2rem);margin-bottom:clamp(2rem,5vh,5vh);display:flex;flex-direction:row;gap:clamp(1rem,3vw,3vw);align-items:center;margin-top:clamp(3rem,8vw,8rem);margin-bottom:clamp(3rem,8vw,8rem)}@media(max-width:768px){.project-content{flex-direction:column;height:auto}.project-content{margin-left:0!important}.project-blurb{margin-left:0!important;margin-right:0!important}}@media(max-width:480px){.project-content{gap:1.5rem}}.project-blurb{z-index:100;width:25vw;margin-left:-8rem;height:50vh;display:flex;justify-content:center;flex-direction:column;color:#fff;font-family:Arial,Helvetica,sans-serif}.project-title{font-size:clamp(1rem,2vw,2rem);font-weight:700}.project-description{font-size:clamp(.7rem,1vw,1rem);margin-top:2vh;line-height:1rem;margin-bottom:2vh}.codescout-container{display:flex;flex-direction:row;height:60vh;margin-top:12vh;justify-content:flex-start;width:100vw}.codescout-box{display:flex;flex-direction:column;justify-content:center;height:auto;background:#a2d5ff;filter:drop-shadow(10px 10px 15px rgba(0,0,0,.3));padding:clamp(2rem,8vw,6rem);padding-right:clamp(3rem,12vw,9rem);padding-left:0}.codescout-box:hover{transform:scale(.95);transition:transform .3s ease}.codescout-pic{width:55vw;height:auto;object-fit:contain}.project-link{position:relative;display:inline-block;color:#fff;text-decoration:none;border-bottom:2px solid rgb(215,94,156);padding:.5rem 1rem;width:10vw;transition:color .2s ease}.project-link:before{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:#d75e9c;transition:height .2s ease;z-index:-1}.project-link:hover{color:#000}.project-link:hover:before{height:100%}.project-link-text{font-family:Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:.1rem;font-size:clamp(.8rem,1vw,1rem)}.header{color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:clamp(1.5rem,3.5vw,3.5rem)}.header-accent-contact{width:clamp(4rem,8rem,9rem);height:1.3rem;background:#d75e9c;margin-left:7vw;margin-top:-2.5vh;z-index:-1;align-self:center}.header-description{color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:clamp(.7rem,1vw,1rem);max-width:30vw;margin-top:3vh}.email-button{position:relative;display:inline-block;color:#fff;text-decoration:none;border-bottom:2px solid rgb(215,94,156);padding:.5rem 1rem;width:10vw;transition:color .2s ease;background:transparent;border:none;cursor:pointer;font-family:Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:.1rem}.email-button:before{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:#d75e9c;transition:height .2s ease;z-index:-1}.email-button:hover{color:#000}.email-button:hover:before{height:100%}
