:root{--main-color-whitesmoke:whitesmoke;--background:#202836;--accent-color-blue:#06f;--accent-font-blue:#4e95ff;--highlight-orange:#ff5722;--soft-gray:#737373;--font-roboto:"Roboto", sans-serif;--font-grotesk:"Space Grotesk", sans-serif;--transition-fast:.3s ease}html{background-color:#202836;margin:0;padding:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{margin:0;padding:0;overflow-x:hidden}#root{margin:0;padding:0}.fixed-bg{z-index:-1;pointer-events:none;background-image:url(/assets/black-linen-B_xuVjKY.webp);background-position:50%;background-repeat:no-repeat;background-size:cover;position:fixed;inset:0;height:100vh!important}.grain-overlay{pointer-events:none;z-index:1;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200' viewBox='0 0 200 200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 1 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");background-size:200px 200px;position:fixed;inset:0}@media (width<=800px){.grain-overlay{opacity:.04}}.soft-glow{opacity:.15;filter:blur(80px);z-index:-1;pointer-events:none;border-radius:50%;width:750px;height:750px;position:absolute}.glow-blue{background:radial-gradient(circle, var(--accent-color-blue) 0%, transparent 70%)}.glow-orange{background:radial-gradient(circle, var(--highlight-orange) 0%, transparent 70%)}.fixed-glow{position:fixed;bottom:-200px}.four-oh-four{text-align:center;width:min(700px,90vw);margin:5rem auto}.four-oh-four__title{font-size:clamp(20px,14px + 1vw,32px)!important}.four-oh-four__home-link{text-align:center}.four-oh-four__home-link a{color:#f5f5f5}.pos-glow-1{top:0%;left:3%}.pos-glow-2{top:9%;right:22%}.pos-glow-3{top:21%;left:60%}.pos-glow-4{top:38%;right:4%}.pos-glow-5{top:53%;left:12%}.pos-glow-6{top:66%;right:40%}.pos-glow-7{bottom:29%;left:28%}.pos-glow-8{bottom:18%;right:6%}.pos-glow-9{bottom:6%;left:5%}.pos-glow-10{bottom:0%;right:38%}.pos-glow-11{top:83%;left:75%}.pos-glow-12{bottom:72%;right:68%}body{min-width:350px;max-width:100%;font-family:var(--font-roboto);margin:0;position:relative}.nav-placeholder{height:75px}.main-navbar{z-index:1000;box-sizing:border-box;width:90%;height:75px;box-shadow:none;font-family:var(--font-grotesk);background-color:#0000;border-radius:0;justify-content:space-between;align-items:center;padding:.5rem 2rem;transition:width .3s,top .3s,border-radius .3s,background-color .3s,box-shadow .3s;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.main-navbar.scrolled{background-color:#000813;border-radius:4rem;width:75%;position:fixed;top:10px;box-shadow:0 8px 20px #00000080}.main-navbar.no-transition,.main-navbar.no-transition *{transition:none!important}.main-navbar .name{color:#f5f5f5;font-size:1.8rem;font-family:var(--font-grotesk);padding-bottom:.25rem;padding-left:2rem;display:inline-block;position:relative}.main-navbar a{font-size:clamp(14px,12px + .8vw,22px);font-weight:300;font-family:var(--font-grotesk);color:var(--main-color-whitesmoke);text-align:center;box-sizing:border-box;text-shadow:2px 2px 1px #000;margin-right:.5rem;padding:.5rem;text-decoration:none;transition:color .3s;position:relative}.main-navbar .nav-links a.is-active{color:#ff5722}.main-navbar .nav-links a:after{content:"";transform-origin:50%;background-color:#ff5722;width:75%;height:2px;transition:transform .4s;position:absolute;bottom:5px;left:50%;transform:translate(-50%)scaleX(0)}.main-navbar a:hover:after{transform:translate(-50%)scaleX(1)}.main-navbar .name:after{content:"";transform-origin:50%;background-color:#ff5722;width:100%;height:2px;transition:transform .4s;position:absolute;bottom:0;left:10%;transform:scaleX(0)}.main-navbar .name:hover:after{transform:scaleX(1)}.nav-links{flex:1;justify-content:flex-end;gap:1.5rem;display:flex}.hamburger-wrapper{cursor:pointer;color:inherit;background:0 0;border:none;border-radius:4px;padding:.25rem;display:none}.hamburger-wrapper:focus-visible{outline-offset:2px;outline:2px solid #ff5722}.nav-mobile,.nav-mobile-overlay{display:none}.home-content{width:80%;margin:0 auto 2rem;padding-top:5%}.main-name>*{text-align:left;color:var(--main-color-whitesmoke);padding:0}.main-name>div{font-size:calc(4px + 1vw)}.main-name>h1{font-weight:400;font-family:var(--font-grotesk)}.main-name>h2{text-shadow:1px 1px 1px #000;font-size:clamp(14px,8px + 1vw,22px);font-weight:400;font-family:var(--font-grotesk)}h1{color:var(--main-color-whitesmoke);font-weight:400;font-family:var(--font-grotesk);margin:2.5rem 0}#main-name{text-shadow:1px 1px 1px #000;letter-spacing:-1.5px;width:475px;margin:0;font-size:48px;transition:all .5s}#main-name:hover{color:#fff;cursor:default;position:relative;transform:scale(1.02)}#main-name:hover:after{content:"";background-color:#ff5722;width:450px;height:4px;animation:.2s linear underline;position:absolute;bottom:0;left:0}@keyframes underline{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.about-me{color:#f5f5f5;width:80%;margin:0 auto 0 10%;padding:1% 0}.about-me-portfolio-wrap{width:90%!important;margin:0 auto!important;padding:0!important}.about-me-paragraphs{text-align:left;color:#f5f5f5d9;font-size:clamp(15px,12px + .6vw,20px);font-weight:300;line-height:1.7}#about-me-titles{color:#f5f5f5;text-align:center;text-shadow:2px 2px 2px #000;width:60%;font-size:4rem;font-family:var(--font-grotesk);margin:3rem auto;position:relative}#about-me-titles:hover{color:#fff;cursor:default}.about-me-paragraphs a{color:inherit;text-decoration:none;position:relative}.about-me-paragraphs a:hover{color:#ff5722;text-shadow:1px 1px 1px #000}.about-me-paragraphs a:hover:after{content:"";background-color:#ff5722;width:100%;height:2px;animation:.3s linear underline;position:absolute;bottom:-2px;left:0}.resume-cta{font-size:clamp(14px,12px + .4vw,17px);font-weight:400;font-family:var(--font-grotesk);letter-spacing:.5px;color:#f5f5f5;border:1px solid var(--highlight-orange);border-radius:4px;margin-top:.5rem;padding:.6rem 1.4rem;text-decoration:none;transition:background .25s,color .25s,box-shadow .25s;display:inline-block}.resume-cta:hover{background:var(--highlight-orange);color:#fff;box-shadow:0 0 12px #ff57224d}.about-me-paragraph-grid-section{grid-template-columns:1fr 1fr;padding-bottom:1rem;display:grid}.about-me-paragraph-grid-section>img{border-radius:1rem;outline:1px solid gray;justify-content:center;align-items:center;width:70%;height:auto;margin:0 auto;transition:all .2s;box-shadow:4px 4px #ff5722}.about-me-paragraph-grid-section>img:hover{outline:1px solid #ff5722;transform:translate(-2px,-2px);box-shadow:8px 8px #ff5722dd}.share-buttons>a{color:#f5f5f5;appearance:none;background:#0003;border:1px solid #0000;border-radius:2px;outline:2px solid #0000;justify-content:center;align-items:center;margin:8px auto;padding:6px 12px;text-decoration:none;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;display:flex;box-shadow:0 0 3px #fff3}.share-buttons>a svg{stroke:currentColor;fill:currentColor;transition:color .2s ease-in-out,box-shadow .2s ease-in-out}.share-buttons>a:hover{outline-offset:-1px;cursor:pointer;transform:translateY(-3px)scale(1.025);box-shadow:1px 1px 1px 2px #06f;border-color:#ff5722!important;outline:2px solid #ff5722!important}.share-buttons>a:focus,.share-buttons>a:active{border:1px solid #ff5722!important;outline:2px solid #ff5722!important}#main-portfolio{color:var(--main-color-whitesmoke);list-style-type:none}#main-portfolioContainer{grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));align-items:stretch;gap:2rem;width:min(900px,88vw);margin:0 auto 2rem;display:grid}.portfolio-card{box-sizing:border-box;border:1px solid var(--highlight-orange);height:100%;box-shadow:0 0 #0000;box-shadow:3px 3px 0px 3px var(--highlight-orange);background:#111;border-radius:20px;flex-direction:column;padding:1rem;transition:border-color .4s,box-shadow .4s;display:flex;position:relative}.portfolio-card .image-wrapper{aspect-ratio:16/9;border-radius:10px;margin-bottom:1rem;position:relative;overflow:hidden}.portfolio-card .image-wrapper img{object-fit:cover;will-change:transform;width:100%;height:100%;transition:transform .4s;display:block}.portfolio-card:hover .image-wrapper img{transform:scale(1.02)}.portfolio-card h2{font-size:clamp(22px,12px + 1.5vw,36px);font-weight:500;font-family:var(--font-grotesk);letter-spacing:-1.5px;color:var(--main-color-whitesmoke);text-align:left;margin:.5rem 0 .25rem;padding:0}.portfolio-card .portfolio-card-description{letter-spacing:-.1px;color:var(--accent-font-blue);text-align:left;flex-grow:1;margin:0 0 .75rem;font-size:clamp(14px,12px + .3vw,17px);font-weight:300;line-height:1.55}.portfolio-card-actions{justify-content:flex-end;align-items:center;gap:.75rem;padding-top:.5rem;display:flex}.portfolio-card-actions .card-icon a{padding:.25rem;transition:transform .15s;display:inline-flex}.portfolio-card-actions .card-icon a:hover{transform:translateY(-2px)scale(1.05)}.resume-header{width:min(1100px,92vw);margin:0 auto}.resume-header>h1{color:#f5f5f5;letter-spacing:-2px;text-shadow:2px 2px 6px #000;font-variant:small-caps;margin:2.5rem 0 1rem;font-size:clamp(36px,5vw,80px);font-weight:300}.resume-header .resume-contact{color:#f5f5f5;text-shadow:2px 2px 6px #000;margin:0 0 1rem;font-size:clamp(14px,1vw + 8px,18px);font-style:normal;font-weight:350}#main-resume{text-align:left;width:min(1100px,92vw);color:var(--main-color-whitesmoke);margin:0 auto;font-size:clamp(15px,12px + .5vw,19px);font-weight:350;line-height:1.7;list-style-type:none}#main-resume>section>h2,#main-resume>div>h2{letter-spacing:.5px;text-transform:capitalize;font-variant:small-caps;color:var(--main-color-whitesmoke);width:fit-content;margin:1.5rem auto 1rem;font-size:clamp(28px,12px + 3vw,48px);font-weight:400}#main-resume ul{margin-left:7%;padding-left:1rem}#main-resume ul>li{padding-bottom:.75rem;font-size:clamp(14px,10px + .5vw,18px);line-height:1.55;list-style-type:circle}#main-resume p{margin-left:7%;margin-right:7%}.borderdiv{background-color:#0000;background-image:linear-gradient(90deg,#78787826 2px,#0000 2px),linear-gradient(90deg,#78787826 2px,#0000 2px),linear-gradient(270deg,#06f 2px,#0000 2px),linear-gradient(270deg,#ff5722 2px,#0000 2px),linear-gradient(#78787826 2px,#0000 2px),linear-gradient(#06f 2px,#0000 2px),linear-gradient(0deg,#78787826 2px,#0000 2px),linear-gradient(0deg,#ff5722 2px,#0000 2px);background-position:0 0,0 100%,100% 0,100% 100%,0 0,100% 0,0 100%,100% 100%;background-repeat:no-repeat;background-size:clamp(80px,200px + 8vw,320px) clamp(40px,50px + 2vh,80px);background-attachment:scroll,scroll,scroll,scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box,border-box,border-box,border-box;border-radius:4px;margin:1.5rem auto;padding:1.5rem;font-weight:350}.borderdiv>h2{padding:0}.skills-list{margin-left:7%;margin-right:7%;line-height:1.7}.resume-job{margin-bottom:1.5rem}.resume-job:last-child{margin-bottom:0}.resume-company,.resume-company-line{color:var(--main-color-whitesmoke);margin:1.25rem 0 .25rem;font-size:clamp(16px,12px + .6vw,22px);font-weight:400}.resume-blurb,.resume-tenure{color:#f5f5f5d9;font-size:clamp(14px,10px + .4vw,17px);font-weight:300;margin:.25rem 0!important}.resume-tenure i{font-style:italic}#main-resume a{color:inherit;text-decoration:none;transition:color .2s;position:relative}#main-resume a:hover{color:#ff5722}#main-resume a:hover:after{content:"";background-color:#ff5722;width:100%;height:2px;animation:.2s linear underline;position:absolute;bottom:-2px;left:0}@media screen and (width<=800px){body{font-smooth:always;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;scroll-behavior:smooth}html,body{max-width:100vw;overflow-x:hidden}h1{font-size:2.5rem}.nav-links{display:none}.hamburger-wrapper{z-index:1001;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.nav-placeholder{height:0}.nav-mobile-overlay{opacity:0;pointer-events:none;z-index:9998;background:#00000080;transition:opacity .25s;display:block;position:fixed;inset:0}.nav-mobile-overlay.open{opacity:1;pointer-events:auto}.pos-glow-8,.pos-glow-9,.pos-glow-10,.pos-glow-11,.pos-glow-12{display:none}.soft-glow{filter:none;opacity:.08}.nav-mobile{z-index:9999;background:#121212;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;transition:left .35s;display:flex;position:fixed;top:0;left:-100vw}.nav-mobile.open{left:0}.nav-mobile a{color:#fff;margin:1rem 0;font-size:1.8rem;text-decoration:none;transition:color .3s}.nav-mobile a:hover,.nav-mobile a.is-active{color:#ff5722}.main-navbar{justify-content:center;width:100%;padding:.5rem 1rem;position:relative;left:auto;transform:none}.main-navbar.scrolled{width:90%;position:fixed;top:10px;left:50%;transform:translate(-50%)}.main-navbar .menuItems{position:absolute;right:1.5rem}.main-navbar .name{padding:0;position:absolute;left:50%;transform:translate(-50%)}.name>a{white-space:nowrap;text-overflow:clip;font-size:1.75rem;overflow:hidden}.nav-mobile .closebtn{cursor:pointer;color:#f5f5f5;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:3rem;line-height:1;position:absolute;top:1.5rem;right:2.5rem}.nav-mobile .closebtn:focus-visible{outline-offset:2px;outline:2px solid #ff5722}.home-content{width:90%;margin:0 auto;padding-top:0}#main-name{text-align:center;width:100%;font-size:calc(12px + 5vw)}.main-name{width:95%;margin:1.5rem auto}.main-name>div{font-size:22px}#main-name:after{display:none}#main-name:hover{color:var(--main-color-whitesmoke)}.main-name>h1{font-weight:400}.main-name>h2{text-align:center;margin-top:3rem;font-size:calc(14px + 3vw);font-weight:400}.about-me-paragraphs{max-width:100%;margin:2rem auto;font-size:clamp(16px,12px + 1.2vw,22px);line-height:1.55}.about-me{margin:2rem auto 5rem!important}#about-me-titles{width:100%;font-size:3rem}#about-me-titles:hover:after{display:none}#about-me-paragraph-container{max-width:95%;margin:4rem auto 2rem}.about-me-paragraph-grid-section{grid-template-rows:auto auto;grid-template-columns:1fr;display:grid;margin-bottom:0!important;padding-bottom:0!important}.about-me-paragraphs{width:98%;color:var(--main-color-whitesmoke);text-align:left}.about-me-paragraph-grid-section>img{border-radius:1rem;grid-area:1/1;width:95%}.borderdiv{background-size:clamp(70px,70px + 8vw,200px) clamp(35px,25px + 2vh,60px)}}@media screen and (width<=600px){.main-navbar .name:after{content:"";transform-origin:50%;background-color:#ff5722;width:100%;height:2px;transition:transform .4s;position:absolute;bottom:0;left:0%;transform:scaleX(0)}#main-portfolioContainer{width:min(500px,85vw);padding-left:-10px}}@media screen and (width<=450px){#main-name{display:block}.portfolio-card h2{letter-spacing:0;margin:1rem 0 .5rem;font-size:clamp(24px,24px + 2vw,36px);font-weight:400}.portfolio-card .portfolio-card-description{font-size:clamp(15px,14px + .4vw,18px)}}.app-wrapper{z-index:0;background-image:linear-gradient(90deg,#3c3f4340 30%,#1f212540 70%,#1b1d2040 80%);flex-direction:column;display:flex;position:relative}.main-grid{box-sizing:border-box;flex:1;grid-template-columns:clamp(120px,12vw,180px) minmax(0,1fr);width:100%;margin-top:0;display:grid}.site-footer{width:min(1100px,92vw);font-family:var(--font-roboto);color:#dcdcdc;border-top:1px solid #ffffff14;margin:1.5rem auto 1rem;padding-top:.5rem;font-size:clamp(13px,11px + .3vw,15px)}.site-footer__row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1.5rem;padding:1.5rem 0 0;display:flex}.site-footer__identity,.site-footer__links,.site-footer__base{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.site-footer__name{color:#f5f5f5;font-weight:400}.site-footer__sep{color:#b4b4b480}.site-footer a{color:inherit;text-decoration:none;transition:color .3s;position:relative}.site-footer a:hover{color:#ff5722}.site-footer a:hover:after{content:"";background-color:#ff5722;width:100%;height:2px;animation:.2s linear underline;position:absolute;bottom:-2px;left:0}.site-footer__base{color:#b4b4b4b3;justify-content:center;margin-top:.4rem;padding-top:.6rem;font-size:clamp(11px,10px + .2vw,13px)}@media (width<=700px){.site-footer{margin:1rem auto .75rem}.site-footer__row{text-align:center;justify-content:center;gap:.4rem 1rem}}.suspense-fallback{justify-content:center;margin:10% auto;display:flex}.scroll-button{z-index:1000;border:1px solid var(--highlight-orange);width:42px;height:42px;color:var(--main-color-whitesmoke);cursor:pointer;opacity:0;visibility:hidden;transition:opacity var(--transition-fast), visibility var(--transition-fast), background-color var(--transition-fast), color var(--transition-fast);background-color:#0000;border-radius:4px;justify-content:center;align-items:center;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:2px 2px 2px #141e4680}.scroll-button--visible{opacity:1;visibility:visible}.scroll-button:hover,.scroll-button:focus-visible{background-color:var(--highlight-orange);color:#fff}.share-buttons{flex-direction:column;align-items:center;gap:5px;display:flex;position:sticky;top:20%}.share-buttons>a{border:none;outline:none;box-shadow:inset 1px 1px 1px gray}.share-button-line{background-color:var(--highlight-orange);border-radius:2rem;width:1px;height:2rem}#socials-mobile{display:none}.main-content{min-width:0}@media (width<=767px){.main-grid{grid-template-columns:1fr}.share-buttons-container{border-bottom:2px solid #06f;width:100%;height:auto;margin:0 auto;padding:0;display:flex;position:static}.share-buttons{flex-direction:row;justify-content:center;align-items:center;gap:5px;margin:0 auto;transform:scale(.9)}.share-button-line{background-color:var(--highlight-orange);width:calc(10px + 3vw);height:1px}#socials-mobile{justify-content:center;align-items:end;margin:30vh auto 0;display:flex}}@media (width<=450px){.share-button-line{background-color:var(--highlight-orange);width:0;height:1px}}@media print{html,body{color:#000!important;background:#fff!important}.fixed-bg,.soft-glow,.main-navbar,.nav-placeholder,.nav-mobile,.nav-mobile-overlay,.share-buttons-container,.scroll-button,#socials-mobile,footer,.footer-wrapper{display:none!important}.main-grid{grid-template-columns:1fr!important;display:block!important}.main-content,#main-resume{color:#000!important;width:100%!important;max-width:100%!important;overflow:visible!important}.resume-header>h1,#main-resume,#main-resume *{color:#000!important;text-shadow:none!important}#main-resume a{text-decoration:underline;color:#000!important}.borderdiv{page-break-inside:avoid;background:0 0!important;border:1px solid #999!important;margin:.75rem 0!important;padding:.75rem!important}.resume-job{page-break-inside:avoid}}
