body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@font-face{font-display:swap;font-family:Montserrat-Reg;src:url(/static/media/Montserrat-Regular.8822698224fc182b604b.woff2)}@font-face{font-display:swap;font-family:Montserrat-SemiBold;src:url(/static/media/Montserrat-SemiBold.bd33c0be6d1a180c703e.woff2)}@font-face{font-display:swap;font-family:Montserrat-Bold;src:url(/static/media/Montserrat-Bold.eff03f4f2e58f05b7ad5.woff2)}.App{background-image:linear-gradient(200deg,#223347,#19212b);color:#dfdfdf;font-family:Montserrat-Reg,sans-serif;height:100%;isolation:isolate;width:100%}::-webkit-scrollbar{height:16px;width:16px}::-webkit-scrollbar-thumb{background-clip:padding-box;background-color:#0000004d;border:3px solid #0000;border-radius:10px;box-shadow:inset -1px -1px 0 #0000000d,inset 1px 1px 0 #0000000d;height:6px}::-webkit-scrollbar-thumb:hover{background-color:#0006}::-webkit-scrollbar-track{background:#1a2733;width:22px}.display-none{display:none}.back{align-content:center;background-color:#121a22;border-radius:50px;color:#dfdfdf;display:flex;font-size:1.2rem;left:3.4rem;opacity:.85;padding:10px 5px 5px 10px;position:fixed;top:3.4rem;transform:translate(-50%,-50%);transition:all .2s ease;z-index:5}.back .arrow{fill:#dfdfdf;height:30px;opacity:.5}.back:hover{padding:11px 6px 6px 11px}.back:hover .arrow:hover{height:34px}.project-link{align-items:center;bottom:1vw;display:flex;left:24%;padding:10px;position:absolute;transform:translate(-50%,-50%)}.project-link .arrow{fill:#dfdfdf;margin:3px .7vmin 0 0;transition:all 50ms ease;width:2.8vmin}.project-link .proj{color:#dfdfdf;font-size:2.4vmin;transition:all 50ms ease}.project-link:hover .arrow{width:2.9vmin}.project-link:hover .proj{font-size:2.5vmin}@media(max-width:950px){.project-link{left:14%}.project-link .arrow{width:3.5vmin}.project-link .proj{font-size:3.5vmin}}a{text-decoration:none}.wlcm-page-wrap{overflow:hidden}.left-wrapper{float:left;height:100vh;width:20%}.wlcm-content{align-items:center;color:#dfdfdf;display:flex;flex-direction:column;font-family:Montserrat-Bold,sans-serif;font-weight:700;height:100vh;justify-content:center;margin-left:0;text-align:center;text-transform:uppercase;width:45vw}.wlcm-content .wlcm-ln1,.wlcm-content .wlcm-ln2,.wlcm-content .wlcm-ln3,.wlcm-content img{z-index:3}.wlcm-content img{height:170px;width:170px}.wlcm-content .wlcm-ln1{font-size:4.7rem}.wlcm-content .wlcm-ln2{font-size:2rem}.wlcm-content .wlcm-ln3{font-size:1rem;margin-top:40px}.wlcm-content .wlcm-ln4{color:#dfdfdf;font-size:1rem;margin-top:35px;opacity:.3;text-transform:none}.logo-wrapper{float:right;height:100vh;overflow:hidden;position:relative;top:0;width:80%}.logo-wrapper .logo{opacity:.15;position:absolute;transform:translate(-50%,-50%)}.logo-wrapper .react{height:25vh;left:26vh;top:14vh;width:auto}.logo-wrapper .cSharp{height:27vh;left:58vh;top:7vh;width:auto}.logo-wrapper .vue{height:18vh;left:90vh;top:13vh;width:auto}.logo-wrapper .git{height:20vh;left:116vh;top:12vh;width:auto}.logo-wrapper .js{height:30vh;left:149vh;top:12vh;width:auto}.logo-wrapper .bootstrap{height:24vh;left:50vh;top:39vh;width:auto}.logo-wrapper .html{height:20vh;left:78vh;top:37vh;width:auto}.logo-wrapper .nodejs{height:19vh;left:104vh;top:35vh;width:auto}.logo-wrapper .ai{height:20vh;left:130vh;top:45vh;width:auto}.logo-wrapper .sql{height:20vh;left:160vh;top:43vh;width:auto}.logo-wrapper .sass{height:17vh;left:61vh;top:64vh;width:auto}.logo-wrapper .postman{height:22vh;left:91vh;top:62vh;width:auto}.logo-wrapper .css{height:20vh;left:120vh;top:72vh;width:auto}.logo-wrapper .rbs{height:40vh;left:160vh;top:80vh;width:auto}.logo-wrapper .github{height:20vh;left:15vh;top:100vh;width:auto}.logo-wrapper .ps{height:20vh;left:40vh;top:96vh;width:auto}.logo-wrapper .java{height:26vh;left:66vh;top:90vh;width:auto}.logo-wrapper .flutter{height:28vh;left:94vh;opacity:.15;top:92vh;width:auto}.logo-wrapper .dart{height:20vh;left:125vh;top:97vh;width:auto}@media(max-width:1550px){.left-wrapper{width:0}.wlcm-content{margin-left:8vh;width:40vw}}@media(max-width:850px){.left-wrapper{width:0}.wlcm-content{margin-left:10vh;width:52vw}}@media(max-width:607px){.left-wrapper{width:0}.wlcm-content{margin-left:10vh;width:60vw}.wlcm-content img{height:12rem;width:12rem}.wlcm-content .wlcm-ln1{font-size:4.2rem}.wlcm-content .wlcm-ln2{font-size:1.6rem}}@media(max-width:470px){.left-wrapper{width:0}.wlcm-content{margin-left:4.2vh;width:84vw}.wlcm-content .wlcm-ln1{font-size:3.7rem}.wlcm-content .wlcm-ln2{font-size:1.3rem}.wlcm-content .wlcm-ln3{font-size:1rem;margin-top:48px}}@keyframes shake{0%{transform:translate(1px,1px) rotate(-2deg)}10%{transform:translate(-1px,-2px) rotate(-4deg)}20%{transform:translate(-3px) rotate(-2deg)}30%{transform:translate(3px,2px) rotate(-3deg)}40%{transform:translate(1px,-1px) rotate(-2deg)}50%{transform:translate(-1px,2px) rotate(-4deg)}60%{transform:translate(-3px,1px) rotate(-3deg)}70%{transform:translate(3px,1px) rotate(-4deg)}80%{transform:translate(-1px,-1px) rotate(-2deg)}90%{transform:translate(1px,2px) rotate(-3deg)}to{transform:translate(1px,-2px) rotate(-4deg)}}.info-wrapper{height:100%;overflow-x:hidden;position:relative}.info-wrapper .left-wrap{align-items:center;display:flex;float:left;height:100vh;justify-content:center;position:relative;width:50%}.info-wrapper .left-wrap .info-wrap{padding:0 5.5vw}.info-wrapper .left-wrap .info-wrap .info{display:flex}.info-wrapper .left-wrap .info-wrap .info .img-div{flex:1 1 50%;position:relative}.info-wrapper .left-wrap .info-wrap .info .img-div .me{border-radius:2vmin;display:block;transform:rotate(-4deg);width:100%}.info-wrapper .left-wrap .info-wrap .info .img-div .me-angry{animation:shake .5s;animation-iteration-count:infinite}.info-wrapper .left-wrap .info-wrap .info .img-div .egg1{bottom:-8px;color:#a5a5a51c;cursor:not-allowed;font-size:6px;position:absolute;right:0}.info-wrapper .left-wrap .info-wrap .info .info-div{flex:1 1 50%;padding-left:4.5vmin}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content{display:flex;flex-direction:column;height:100%;justify-content:space-between}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .name{line-height:3.5vw;text-transform:uppercase}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .name .first{font-size:3vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .name .last{font-size:4vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .live-wrap{align-items:center;display:flex}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .live-wrap .live-dot-container{height:20px;margin:0 6px;position:relative;width:20px}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .live-wrap .live-dot{background-color:#28a745;border-radius:50%;height:12px;left:4px;position:absolute;top:4px;width:12px}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .live-wrap .live-dot-pulse{animation:pulse 2s ease-out infinite;background-color:#28a745;border-radius:50%;content:"";display:block;height:20px;left:0;opacity:.6;position:absolute;top:0;width:20px}@keyframes pulse{0%{opacity:.8;transform:scale(.8)}to{opacity:0;transform:scale(2.4)}}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .live-wrap .email{color:#74a3c4;display:inline-block;font-size:1.25vw;padding-bottom:4px}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .live-wrap .email:hover{text-decoration:underline}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .media{align-items:left;display:flex;flex-direction:row;justify-content:space-between}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .media .media-link{height:3vw;position:relative;width:3vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .media .media-link:after{background:#dfdfdf;bottom:-6px;content:"";height:2.5px;left:0;position:absolute;transform:scaleX(0);transition:transform .1s ease;width:100%;will-change:transform}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .media .media-link:hover:after{transform:scaleX(1)}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .media .media-svg{fill:#dfdfdf;display:block;height:100%;width:100%}.info-wrapper .left-wrap .info-wrap .desc{font-size:1.2vw;margin-top:4vw;text-align:justify}.info-wrapper .left-wrap .info-wrap .desc p .scrabble-link{color:#74a3c4;font-size:20px}.info-wrapper .left-wrap .info-wrap .desc p .scrabble-link:hover{text-decoration:underline}.info-wrapper .stack-wrap{align-items:center;display:flex;flex-direction:column;float:right;height:100vh;justify-content:center;width:50%}.info-wrapper .stack-wrap .backend,.info-wrapper .stack-wrap .design-wrap,.info-wrapper .stack-wrap .frameworks-wrap,.info-wrapper .stack-wrap .fundamentals-wrap,.info-wrapper .stack-wrap .libraries-wrap,.info-wrapper .stack-wrap .version-control{height:5vmin;padding-top:5vmin;position:relative;width:10px}.info-wrapper .stack-wrap .backend .ai,.info-wrapper .stack-wrap .backend .be,.info-wrapper .stack-wrap .backend .bootstrap,.info-wrapper .stack-wrap .backend .css,.info-wrapper .stack-wrap .backend .figma,.info-wrapper .stack-wrap .backend .fw,.info-wrapper .stack-wrap .backend .git,.info-wrapper .stack-wrap .backend .github,.info-wrapper .stack-wrap .backend .html,.info-wrapper .stack-wrap .backend .js,.info-wrapper .stack-wrap .backend .nodejs,.info-wrapper .stack-wrap .backend .rbs,.info-wrapper .stack-wrap .backend .react,.info-wrapper .stack-wrap .backend .sass,.info-wrapper .stack-wrap .backend .sql,.info-wrapper .stack-wrap .backend .typescript,.info-wrapper .stack-wrap .backend .vue,.info-wrapper .stack-wrap .design-wrap .ai,.info-wrapper .stack-wrap .design-wrap .be,.info-wrapper .stack-wrap .design-wrap .bootstrap,.info-wrapper .stack-wrap .design-wrap .css,.info-wrapper .stack-wrap .design-wrap .figma,.info-wrapper .stack-wrap .design-wrap .fw,.info-wrapper .stack-wrap .design-wrap .git,.info-wrapper .stack-wrap .design-wrap .github,.info-wrapper .stack-wrap .design-wrap .html,.info-wrapper .stack-wrap .design-wrap .js,.info-wrapper .stack-wrap .design-wrap .nodejs,.info-wrapper .stack-wrap .design-wrap .rbs,.info-wrapper .stack-wrap .design-wrap .react,.info-wrapper .stack-wrap .design-wrap .sass,.info-wrapper .stack-wrap .design-wrap .sql,.info-wrapper .stack-wrap .design-wrap .typescript,.info-wrapper .stack-wrap .design-wrap .vue,.info-wrapper .stack-wrap .frameworks-wrap .ai,.info-wrapper .stack-wrap .frameworks-wrap .be,.info-wrapper .stack-wrap .frameworks-wrap .bootstrap,.info-wrapper .stack-wrap .frameworks-wrap .css,.info-wrapper .stack-wrap .frameworks-wrap .figma,.info-wrapper .stack-wrap .frameworks-wrap .fw,.info-wrapper .stack-wrap .frameworks-wrap .git,.info-wrapper .stack-wrap .frameworks-wrap .github,.info-wrapper .stack-wrap .frameworks-wrap .html,.info-wrapper .stack-wrap .frameworks-wrap .js,.info-wrapper .stack-wrap .frameworks-wrap .nodejs,.info-wrapper .stack-wrap .frameworks-wrap .rbs,.info-wrapper .stack-wrap .frameworks-wrap .react,.info-wrapper .stack-wrap .frameworks-wrap .sass,.info-wrapper .stack-wrap .frameworks-wrap .sql,.info-wrapper .stack-wrap .frameworks-wrap .typescript,.info-wrapper .stack-wrap .frameworks-wrap .vue,.info-wrapper .stack-wrap .fundamentals-wrap .ai,.info-wrapper .stack-wrap .fundamentals-wrap .be,.info-wrapper .stack-wrap .fundamentals-wrap .bootstrap,.info-wrapper .stack-wrap .fundamentals-wrap .css,.info-wrapper .stack-wrap .fundamentals-wrap .figma,.info-wrapper .stack-wrap .fundamentals-wrap .fw,.info-wrapper .stack-wrap .fundamentals-wrap .git,.info-wrapper .stack-wrap .fundamentals-wrap .github,.info-wrapper .stack-wrap .fundamentals-wrap .html,.info-wrapper .stack-wrap .fundamentals-wrap .js,.info-wrapper .stack-wrap .fundamentals-wrap .nodejs,.info-wrapper .stack-wrap .fundamentals-wrap .rbs,.info-wrapper .stack-wrap .fundamentals-wrap .react,.info-wrapper .stack-wrap .fundamentals-wrap .sass,.info-wrapper .stack-wrap .fundamentals-wrap .sql,.info-wrapper .stack-wrap .fundamentals-wrap .typescript,.info-wrapper .stack-wrap .fundamentals-wrap .vue,.info-wrapper .stack-wrap .libraries-wrap .ai,.info-wrapper .stack-wrap .libraries-wrap .be,.info-wrapper .stack-wrap .libraries-wrap .bootstrap,.info-wrapper .stack-wrap .libraries-wrap .css,.info-wrapper .stack-wrap .libraries-wrap .figma,.info-wrapper .stack-wrap .libraries-wrap .fw,.info-wrapper .stack-wrap .libraries-wrap .git,.info-wrapper .stack-wrap .libraries-wrap .github,.info-wrapper .stack-wrap .libraries-wrap .html,.info-wrapper .stack-wrap .libraries-wrap .js,.info-wrapper .stack-wrap .libraries-wrap .nodejs,.info-wrapper .stack-wrap .libraries-wrap .rbs,.info-wrapper .stack-wrap .libraries-wrap .react,.info-wrapper .stack-wrap .libraries-wrap .sass,.info-wrapper .stack-wrap .libraries-wrap .sql,.info-wrapper .stack-wrap .libraries-wrap .typescript,.info-wrapper .stack-wrap .libraries-wrap .vue,.info-wrapper .stack-wrap .version-control .ai,.info-wrapper .stack-wrap .version-control .be,.info-wrapper .stack-wrap .version-control .bootstrap,.info-wrapper .stack-wrap .version-control .css,.info-wrapper .stack-wrap .version-control .figma,.info-wrapper .stack-wrap .version-control .fw,.info-wrapper .stack-wrap .version-control .git,.info-wrapper .stack-wrap .version-control .github,.info-wrapper .stack-wrap .version-control .html,.info-wrapper .stack-wrap .version-control .js,.info-wrapper .stack-wrap .version-control .nodejs,.info-wrapper .stack-wrap .version-control .rbs,.info-wrapper .stack-wrap .version-control .react,.info-wrapper .stack-wrap .version-control .sass,.info-wrapper .stack-wrap .version-control .sql,.info-wrapper .stack-wrap .version-control .typescript,.info-wrapper .stack-wrap .version-control .vue{height:12vmin;position:absolute;width:auto}.info-wrapper .stack-wrap .backend,.info-wrapper .stack-wrap .frameworks-wrap,.info-wrapper .stack-wrap .fundamentals-wrap,.info-wrapper .stack-wrap .libraries-wrap{margin-bottom:7.7vmin}.info-wrapper .stack-wrap .frameworks-wrap{margin-top:8vmin}.info-wrapper .stack-wrap .frameworks-wrap .fw{font-size:7vmin;left:-25vmin;top:-6.5vmin}.info-wrapper .stack-wrap .frameworks-wrap .react{height:14vmin;left:-11vmin}.info-wrapper .stack-wrap .frameworks-wrap .vue{height:13vmin;left:11vmin;padding-right:0}.info-wrapper .stack-wrap .libraries-wrap .lib{left:-10vmin;top:-4.5vmin}.info-wrapper .stack-wrap .libraries-wrap .bootstrap{left:-19vmin}.info-wrapper .stack-wrap .libraries-wrap .rbs{height:12vmin}.info-wrapper .stack-wrap .libraries-wrap .sass{height:11vmin;left:21vmin}.info-wrapper .stack-wrap .fundamentals-wrap{height:8vmin}.info-wrapper .stack-wrap .fundamentals-wrap .funds{font-size:7.2vmin;left:-39vmin;top:-7.5vmin}.info-wrapper .stack-wrap .fundamentals-wrap .css,.info-wrapper .stack-wrap .fundamentals-wrap .html,.info-wrapper .stack-wrap .fundamentals-wrap .js,.info-wrapper .stack-wrap .fundamentals-wrap .typescript{height:13vmin}.info-wrapper .stack-wrap .fundamentals-wrap .html{left:-28.5vmin}.info-wrapper .stack-wrap .fundamentals-wrap .css{left:-10vmin}.info-wrapper .stack-wrap .fundamentals-wrap .js{left:10vmin}.info-wrapper .stack-wrap .fundamentals-wrap .typescript{left:30vmin}.info-wrapper .stack-wrap .backend{height:3vmin}.info-wrapper .stack-wrap .backend .be{left:-16vmin;top:-5.4vmin}.info-wrapper .stack-wrap .backend .sql{height:12vmin;left:-18vmin}.info-wrapper .stack-wrap .backend .nodejs{height:12vmin;left:18vmin}.info-wrapper .stack-wrap .backend .aws{height:12vmin;left:0}.info-wrapper .stack-wrap .design-wrap{height:9vmin}.info-wrapper .stack-wrap .design-wrap .design{font-size:4.4vmin;left:-8.7vmin;top:1.5vmin;width:35vw}.info-wrapper .stack-wrap .design-wrap .figma{height:12vmin;left:-16vmin}.info-wrapper .stack-wrap .design-wrap .ai{height:10vmin;left:16vmin}.info-wrapper .stack-wrap .version-control{height:10vmin}.info-wrapper .stack-wrap .version-control .vc{font-size:4.1vmin;left:-20.5vmin;top:2vmin;width:35vw}.info-wrapper .stack-wrap .version-control .github{height:11vmin;left:-27.5vmin}.info-wrapper .stack-wrap .version-control .git{height:11vmin;left:27.5vmin}.info-wrapper .stack-wrap .stack-text{font-family:Montserrat-SemiBold,sans-serif;font-size:5vmin;font-weight:bolder;opacity:.08;position:absolute;text-transform:uppercase;top:-20px;z-index:0}.logo{transform:translate(-50%,-50%);transition:all 50ms ease;width:auto;z-index:1}.info-wrapper .stack-wrap .frameworks-wrap .react:hover{height:14.9vmin}.info-wrapper .stack-wrap .frameworks-wrap .vue:hover{height:13.8vmin}.info-wrapper .stack-wrap .libraries-wrap .logo:hover{height:12.5vmin}.info-wrapper .stack-wrap .fundamentals-wrap .logo:hover{height:13.4vmin}.info-wrapper .stack-wrap .backend .logo:hover{height:12.6vmin}.info-wrapper .stack-wrap .libraries-wrap .sass:hover,.info-wrapper .stack-wrap .version-control .git:hover,.info-wrapper .stack-wrap .version-control .github:hover{height:11.5vmin}.info-wrapper .stack-wrap .design-wrap .figma:hover{height:12.8vmin}.info-wrapper .stack-wrap .design-wrap .ai:hover{height:10.5vmin}@media(max-width:1430px){.info-wrapper{height:200vh}.info-wrapper .left-wrap{float:left;width:100%}.info-wrapper .left-wrap .info-wrap{font-size:1.5vmin;padding:0 4vw;width:70%}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .name{line-height:5vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .name .first{font-size:4vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .name .last{font-size:6.2vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .email{font-size:3vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .email:hover{text-decoration:underline}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .media{align-items:left;display:flex;flex-direction:row;justify-content:space-between}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .media .media-link{height:5vw;position:relative;width:5vw}.info-wrapper .left-wrap .info-wrap .desc{font-size:1.8vw;margin-top:4vw}.info-wrapper .stack-wrap{float:left;width:100%}.info-wrapper .stack-wrap .version-control .vc{font-size:4.1vmin;left:-21vmin;top:25%;width:-webkit-max-content;width:max-content}.info-wrapper .stack-wrap .design-wrap .figma{height:10vmin}.info-wrapper .stack-wrap .design-wrap .ai{height:9vmin}.info-wrapper .stack-wrap .design-wrap .figma:hover{height:10.8vmin}.info-wrapper .stack-wrap .design-wrap .ai:hover{height:9.6vmin}.project-link{left:48.5%}.project-link .proj{font-size:3vmin}.logo{height:100%;z-index:1}}@media(max-width:950px){.info-wrapper{display:block;height:100%}.info-wrapper .left-wrap{float:left;height:100vw;width:100%}.info-wrapper .left-wrap .info-wrap{width:87%}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .name{line-height:6vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .name .first{font-size:5vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .name .last{font-size:7vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .email{font-size:3.6vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .media .media-link{height:6vw;width:6vw}.info-wrapper .left-wrap .info-wrap .desc{font-size:1.2rem}.info-wrapper .stack-wrap{height:100vh}.info-wrapper .project-link{bottom:0;left:89%;position:inherit}}@media(max-width:746px){.experience-page .experience-wrap .showcase-wrap .text .features-wrap{display:block!important}}@media(max-width:530px){.info-wrapper{display:block;height:100%}.info-wrapper .left-wrap{float:left;height:100%;margin-top:22vmin;width:100%}.info-wrapper .left-wrap .info-wrap{width:85%}.info-wrapper .left-wrap .info-wrap .info{display:block}.info-wrapper .left-wrap .info-wrap .info .info-div{height:53vmin;margin:7vmin 0;padding:0}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .name{line-height:10vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .name .first{font-size:10vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .name .last{font-size:12vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .email{font-size:5.5vw}.info-wrapper .left-wrap .info-wrap .info .info-div .info-content .media .media-link{height:11vw;width:11vw}.info-wrapper .left-wrap .info-wrap .desc{font-size:1.4rem}.info-wrapper .stack-wrap{height:100vw;margin:25vmin 0}.info-wrapper .stack-wrap .stack-text{opacity:.15}.info-wrapper .stack-wrap .frameworks-wrap,.info-wrapper .stack-wrap .fundamentals-wrap,.info-wrapper .stack-wrap .libraries-wrap{padding-bottom:10vmin}.info-wrapper .stack-wrap .frameworks-wrap .fw{font-size:8vmin;top:-10vmin}.info-wrapper .stack-wrap .frameworks-wrap .react{height:19vmin}.info-wrapper .stack-wrap .frameworks-wrap .vue{height:18vmin}.info-wrapper .stack-wrap .libraries-wrap .lib{font-size:7vmin;top:-7vmin}.info-wrapper .stack-wrap .libraries-wrap .bootstrap,.info-wrapper .stack-wrap .libraries-wrap .rbs,.info-wrapper .stack-wrap .libraries-wrap .sass{height:14vmin}.info-wrapper .stack-wrap .fundamentals-wrap{top:1vmin}.info-wrapper .stack-wrap .fundamentals-wrap .funds{font-size:8.5vmin;top:-10vmin}.info-wrapper .stack-wrap .fundamentals-wrap .css,.info-wrapper .stack-wrap .fundamentals-wrap .html,.info-wrapper .stack-wrap .fundamentals-wrap .js,.info-wrapper .stack-wrap .fundamentals-wrap .typescript{height:17vmin;top:6vmin}.info-wrapper .stack-wrap .backend{top:2.5vmin}.info-wrapper .stack-wrap .backend .be{font-size:6vmin;left:-17vmin;top:-8vmin}.info-wrapper .stack-wrap .backend .aws,.info-wrapper .stack-wrap .backend .nodejs,.info-wrapper .stack-wrap .backend .sql{height:16vmin}.info-wrapper .stack-wrap .backend .sql{left:-21vmin}.info-wrapper .stack-wrap .backend .nodejs{left:21vmin}.info-wrapper .stack-wrap .design-wrap{top:4vmin}.info-wrapper .stack-wrap .design-wrap .design{font-size:4.2vmin}.info-wrapper .stack-wrap .design-wrap .ai,.info-wrapper .stack-wrap .design-wrap .figma{height:13vmin}.info-wrapper .stack-wrap .version-control{top:14vmin}.info-wrapper .stack-wrap .version-control .vc{font-size:3.9vmin;left:-20vmin;top:3vmin}.info-wrapper .stack-wrap .version-control .github{height:14vmin;left:-30vmin}.info-wrapper .stack-wrap .version-control .git{height:15vmin;left:30vmin}.info-wrapper .project-link{bottom:0;left:85.4%;position:inherit}.info-wrapper .project-link .arrow{width:4.5vmin}.info-wrapper .project-link .proj{font-size:4.5vmin}}h1,h2{font-family:Montserrat-SemiBold,sans-serif;font-weight:bolder}h2{font-size:2.5rem;margin-bottom:2.25rem;opacity:.65;text-transform:uppercase}.header-wrap{align-items:center;background-color:#1a273382;display:flex;height:20vmin;justify-content:center;margin-top:10vmin;width:100%}.experience-container{align-items:center;display:flex;flex-direction:column;overflow-x:hidden}.experience-container .experience-wrap{margin:8vmin 5vmin 0}.experience-container .experience-wrap h3{font-size:27px;margin:14vmin 0 8vmin}.experience-container .experience-wrap .showcase-wrap{height:50%;margin-bottom:10vmin;width:80vmin}.experience-container .experience-wrap .showcase-wrap .media-svg{fill:#44b38b;height:3rem;transition:all .15s ease}.experience-container .experience-wrap .showcase-wrap .media-svg:hover{fill:#3fa17d}.experience-container .experience-wrap .showcase-wrap .showcase{border-radius:16px;overflow:hidden;transition:all .4s ease}.experience-container .experience-wrap .showcase-wrap .text{font-size:1.1rem;padding:6px 12px 0;width:97%}.experience-container .experience-wrap .showcase-wrap .text .title-wrap{align-items:center;display:flex;justify-content:space-between;margin:1vmin 0 2vmin}.experience-container .experience-wrap .showcase-wrap .text .desc{line-height:1.4em;margin:0 0 1.4em;text-align:justify}.experience-container .experience-wrap .showcase-wrap .text .features-wrap{display:flex}.experience-container .experience-wrap .showcase-wrap .text .features-wrap .features{margin-right:50px}.experience-container .experience-wrap .showcase-wrap .text ul{align-items:center;list-style:none;padding-left:1.5rem}.experience-container .experience-wrap .showcase-wrap .text ul li:before{color:#44b38b;content:"●";font-size:.9rem;line-height:2rem;margin-right:.8rem}.experience-container .experience-wrap .showcase-wrap .showcase:hover{border-radius:20px}.experience-container .experience-wrap .showcase-wrap .project-footer-wrap{align-items:center;background-color:#f2f5fb;border-radius:15px;display:flex;justify-content:space-between;margin:3vmin 0 2vmin;padding:10px 10px 10px 4px}.experience-container .experience-wrap .showcase-wrap .project-footer-wrap #logo-fr{height:67px;width:auto}.experience-container .experience-wrap .showcase-wrap .project-footer-wrap #logo-pdi{height:70px}.proj-img{transform:scale3d(1.035,1.035,1);transform-origin:center;transition:all .3s ease;width:100%}.proj-img:hover{transform:scale3d(1.02,1.02,1);transition:transform .4s cubic-bezier(.25,.46,.45,.94) 0s}@media(max-width:900px){.experience-container .experience-wrap{padding:10vmin 0}.experience-container .experience-wrap .showcase-wrap{height:60%;width:91vmin}.experience-container .experience-wrap .showcase-wrap .showcase{width:100%}.experience-container .experience-wrap .showcase-wrap .text{font-size:2.3vh;padding:.5vmin .4vmin 0 1vmin;width:97%}.experience-container .experience-wrap .showcase-wrap .text .title-wrap{margin:0}.experience-container .experience-wrap .showcase-wrap .showcase:hover{border-radius:20px}}@media(max-width:550px){.header-wrap{height:-webkit-max-content;height:max-content}.header-wrap h2{font-size:8vmin;padding:25px;text-align:center}.experience-container{height:100%}.experience-container .proj-wrap{height:28vmin}.experience-container .experience-wrap{padding:8vmin 0}.experience-container .experience-wrap .showcase-wrap{height:60%;width:91vmin}.experience-container .experience-wrap .showcase-wrap .showcase{border-radius:0;margin-left:-6.5vmin;width:115%}.experience-container .experience-wrap .showcase-wrap .text{font-size:2.3vh;padding:3vmin .4vmin 1vmin;width:97%}.experience-container .experience-wrap .showcase-wrap .project-footer-wrap{display:flex;flex-direction:column}}.scrabble-game{background-image:linear-gradient(200deg,#223347,#19212b);color:#f1f1f1;flex-direction:column;font-family:monospace;font-size:30px;justify-content:center;min-height:100vh;text-align:center}.letters-score,.scrabble-game{align-items:center;display:flex}.letters{border:2px solid #434957;border-radius:6px;display:flex;flex-direction:row;height:40px;margin:12px 0;padding:3px 0;text-transform:uppercase;width:305px}.rack-row{align-items:center;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);width:675px}.rack-row .letters{grid-column:2}.rack-actions{align-items:center;display:flex;gap:8px;grid-column:3;justify-self:start;margin-left:14px}.hint-counter{color:#9aa5b1;font-size:12px;white-space:nowrap}.letter{border:2px solid #434957;border-radius:6px;box-sizing:border-box;height:40px;margin-left:5px;padding:2px 9px;position:relative;width:38px}.letter.selectable{cursor:pointer}.letter.selectable[draggable=true]{cursor:grab}.letter.selected{border-color:#f4d35e;box-shadow:inset 0 0 0 2px #f4d35e}.letter.dragging{opacity:.4}.letter.empty{border-color:#434957;border-style:dashed;opacity:.4}.letter-value{bottom:1px;font-family:Trebuchet MS,Lucida Sans Unicode,Lucida Grande,Lucida Sans,Arial,sans-serif;font-size:9px;line-height:1;opacity:.8;pointer-events:none;position:absolute;right:3px}.score{font-size:22px}.letters-left{background-color:#121a22;border-radius:20px;color:#dfdfdf;font-size:1rem;left:6.6rem;opacity:.85;padding:8px 14px;position:fixed;top:3.4rem;transform:translateY(-50%);white-space:nowrap;z-index:5}.tile-wrap{grid-gap:32px;align-items:stretch;align-self:stretch;display:grid;gap:32px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);margin-left:6px}.tile-container{grid-column:2;width:675px}.tile-div{background-color:#363b44;border:1px solid #7f848b;border-radius:4px;box-sizing:border-box;display:inline-block;height:40px;margin:0 5px 5px 0;position:relative;vertical-align:top;width:40px}.tile-div.bonus-tw{background-color:#b23b3b}.tile-div.bonus-dw,.tile-div.center-square{background-color:#c97b5a}.tile-div.bonus-tl{background-color:#3b6ea5}.tile-div.bonus-dl{background-color:#7ec8e3}.tile-div.locked{background-color:#4a5568}.tile-div[draggable=true]{cursor:grab}.tile-div.dragging{opacity:.4}.tile-div.highlighted{border-color:#f4d35e;border-width:2px}.tile-div.word-valid{border-color:#4caf50;border-width:2px}.tile-div.word-invalid{border-color:#e05252;border-width:2px}.tile{align-items:center;display:flex;inset:0;justify-content:center;position:absolute}.pending-letter{color:#f1f1f1;font-family:monospace;font-size:22px;text-transform:uppercase}.bonus-label,.pending-letter{line-height:1;pointer-events:none}.bonus-label{color:rgba(25,33,43,.522);font-family:Trebuchet MS,Lucida Sans Unicode,Lucida Grande,Lucida Sans,Arial,sans-serif;font-size:12px;font-weight:700;left:0;position:absolute;right:0;text-align:center;top:13px}.bonus-label.star{font-size:22px;top:8px}.locked-tile{align-items:center;display:flex;font-weight:700;height:100%;justify-content:center;text-transform:uppercase;width:100%}h3{margin:.5em 0 .9em}.sidebar{align-items:center;display:flex;flex-direction:column;gap:18px;grid-column:3;justify-self:start;width:255px}.sidebar,.tutorial{box-sizing:border-box}.tutorial{background-color:rgba(25,33,43,.843);border-radius:6px;font-family:Trebuchet MS,Lucida Sans Unicode,Lucida Grande,Lucida Sans,Arial,sans-serif;font-size:15px;line-height:1.3rem;padding:14px;text-align:justify;width:100%}.trade-button{background-color:#2b3b3a;border:1px solid #7f848b;border-radius:4px;color:#f1f1f1;cursor:pointer;font-size:14px;height:34px;width:124px}.trade-button:hover{background-color:#354a48}.trade-button:disabled{cursor:not-allowed;opacity:.5}.icon-button{align-items:center;background-color:#121a22;border:none;border-radius:50px;color:#dfdfdf;cursor:pointer;display:flex;font-family:monospace;font-size:1rem;gap:8px;height:44px;justify-content:center;opacity:.85;padding:0 18px;transition:all .2s ease}.icon-button span{white-space:nowrap}.icon-button svg{stroke:#dfdfdf;stroke-width:2;flex-shrink:0;height:20px;width:20px}.icon-button:hover{opacity:1}.icon-button:disabled{cursor:not-allowed;opacity:.4}.round-icon-button{border-radius:50%;height:36px;padding:0;width:36px}.round-icon-button svg{height:17px;width:17px}.top-actions{display:flex;gap:14px;position:fixed;right:3.4rem;top:3.4rem;transform:translateY(-50%);z-index:5}.file-input{display:none}.history-panel{background-color:rgba(18,26,34,.933);border-left:1px solid #434957;box-sizing:border-box;font-family:Trebuchet MS,Lucida Sans Unicode,Lucida Grande,Lucida Sans,Arial,sans-serif;font-size:15px;height:100vh;overflow-y:auto;padding:20px;position:fixed;right:0;text-align:left;top:0;transform:translateX(100%);transition:transform .25s ease;width:300px;z-index:10}.history-panel.open{transform:translateX(0)}.history-panel-header{align-items:center;display:flex;justify-content:space-between}.history-panel-header h3{margin:0}.history-empty{color:#9aa5b1;font-size:14px;margin-top:12px}.history-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.history-row{background-color:rgba(25,33,43,.843);border:1px solid #0000;border-radius:6px;box-sizing:border-box;padding:8px 10px}.history-row:hover{border-color:#f4d35e}.history-row-header{color:#9aa5b1;display:flex;font-size:12px;justify-content:space-between}.history-row-words{font-size:15px;font-weight:700}.history-row-score{color:#f4d35e;font-size:13px}.history-row-meta{color:#9aa5b1;font-size:13px}.bottom-actions{display:flex;gap:12px;justify-content:center;margin-top:auto;width:100%}.bottom-actions .icon-button{padding:0 14px}.cta-button{background-color:#f4d35e;color:#19212b;font-weight:700;opacity:1}.cta-button svg{stroke:#19212b}.cta-button:hover{background-color:#f7dd7c}.cta-button:disabled{background-color:#f4d35e;cursor:not-allowed;opacity:.5}.pending-count,.pending-score,.turn{font-size:18px;text-align:center;width:100%}.pending-score{color:#f4d35e}.validation-error{color:#e08585;font-size:14px;text-align:center;width:100%}.game-over-offer{background-color:rgba(58,47,27,.843);border:1px solid #f4d35e;border-radius:6px;box-sizing:border-box;font-size:14px;line-height:1.3rem;padding:14px;width:100%}.game-over-offer p{margin:0 0 12px}.game-over-offer-actions{display:flex;gap:10px;justify-content:center}.game-over-offer-actions .icon-button{font-size:14px;height:36px;padding:0 14px}.game-over{text-align:center;width:100%}.game-over h3{color:#f4d35e;margin:0 0 .4em}.game-over p{font-size:16px;margin:0}.letter.hidden-letter{background-image:repeating-linear-gradient(45deg,#2b3038,#2b3038 4px,#353b45 0,#353b45 8px)}.modal-overlay{align-items:center;background-color:#0d1117cc;display:flex;inset:0;justify-content:center;position:fixed;z-index:100}.modal{background-color:#19212b;border:1px solid #434957;border-radius:10px;box-sizing:border-box;font-family:Trebuchet MS,Lucida Sans Unicode,Lucida Grande,Lucida Sans,Arial,sans-serif;max-width:90vw;padding:24px;text-align:left;width:320px}.modal h3{font-family:monospace;margin:0 0 18px;text-align:center}.modal-section{margin-bottom:18px}.modal-section:last-of-type{margin-bottom:0}.modal-label{color:#9aa5b1;font-size:13px;margin-bottom:8px}.modal-options{display:flex;gap:8px}.modal-option{background-color:#121a22;border:1px solid #434957;border-radius:6px;color:#dfdfdf;cursor:pointer;flex:1 1;font-family:inherit;font-size:14px;padding:10px 6px}.modal-option:hover{border-color:#7f848b}.modal-option.selected{background-color:#2b2517;border-color:#f4d35e;color:#f4d35e}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.modal-actions .icon-button{height:38px;padding:0 16px}.debug-panel{background-color:rgba(18,26,34,.933);border-right:1px solid #434957;box-sizing:border-box;font-family:Trebuchet MS,Lucida Sans Unicode,Lucida Grande,Lucida Sans,Arial,sans-serif;font-size:14px;height:100vh;left:0;overflow-y:auto;padding:20px;position:fixed;text-align:left;top:0;width:320px;z-index:20}.debug-panel-header{align-items:center;display:flex;justify-content:space-between}.debug-panel-header h3{color:#f4d35e;margin:0}.debug-section{border-top:1px solid #2a323d;margin-top:18px;padding-top:18px}.debug-section:first-of-type{border-top:none;margin-top:18px;padding-top:0}.debug-label{color:#9aa5b1;font-size:12px;margin-bottom:8px}.debug-toggle{align-items:center;display:flex;gap:8px}.debug-toggle,.debug-toggle input{cursor:pointer}.debug-toggle-spaced{margin-top:10px}.debug-bag-contents{background-color:#19212b;border:1px solid #434957;border-radius:4px;color:#dfdfdf;font-family:monospace;font-size:12px;line-height:1.6;margin-top:8px;padding:8px;word-break:break-word}.debug-row,.debug-stack{display:flex;gap:8px}.debug-stack{align-items:flex-start;flex-direction:column}.debug-input{background-color:#19212b;border:1px solid #434957;border-radius:4px;box-sizing:border-box;color:#f1f1f1;flex:1 1;font-family:monospace;font-size:13px;padding:6px 8px;text-transform:uppercase}.debug-input::placeholder{color:#5b6472;text-transform:uppercase}.debug-button{background-color:#2b3b3a;border:1px solid #7f848b;border-radius:4px;color:#f1f1f1;cursor:pointer;font-size:13px;padding:6px 12px;white-space:nowrap}.debug-button:hover{background-color:#354a48}.debug-bot-log{font-size:13px;line-height:1.4}.debug-bot-log-top{margin-top:8px}.debug-bot-log-top ol{margin:4px 0 0;padding-left:20px}.debug-empty{color:#9aa5b1;font-size:13px}.hexagon-background{display:block;left:0;pointer-events:none;position:fixed;top:0;z-index:-1}
/*# sourceMappingURL=main.58fd978b.css.map*/