:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}html{scroll-behavior:smooth}.navbar{position:sticky;top:0;width:100%;min-height:70px;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:10px;background-color:#f9f5e3;z-index:100}.navbar a{color:#122023;font-size:16pt;text-decoration:none;margin:10px}.navbar a:hover{color:#122023ad}.links{width:100%;height:100%;display:flex;flex-direction:row;align-items:center;justify-content:center;flex-wrap:wrap;font-weight:700;font-family:Open Sans}navbar a:hover{color:#122023ad}.toggleButton{position:absolute;top:15px;right:20px;z-index:101;display:flex;align-items:center;justify-content:center;height:50px;width:50px}.toggleButton button{background-color:transparent;border:none;cursor:pointer}.toggleButton button:hover{background-color:#f2e9dc1b;transform:scale(1.01)}.toggleButton svg{font-size:50px;color:#122023}.toggleButton svg:hover{color:#122023ad}#open{height:40vh}#open a{width:100%;text-align:center}#close .links{display:none}@media only screen and (max-width: 900px){.navbar a{width:70px}}@media only screen and (max-width: 600px){.toggleButton{display:flex}#open .links{flex-direction:column;gap:5px;margin-top:20px}#close .links{display:none}}@media only screen and (min-width: 600px){.toggleButton,.hiddenLinks{display:none}#open{height:auto}#open .links,#close .links{display:flex;flex-direction:row;margin-top:0}}.about{background-color:#fff1e6;width:100%;font-family:Open Sans,sans-serif;color:#122023;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:left;scroll-margin-top:80px;padding:.5rem}.about h1{color:#122023;font-size:36pt;font-family:Roboto,sans-serif;text-align:center;margin:20px 0;position:relative}.introduction{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem auto;max-width:1100px;width:100%;align-items:center;pad:0 1rem}.text-section{font-size:1rem;line-height:1.5}.image{display:flex;justify-content:center;align-items:center;border-radius:16px;width:100%;max-height:300px;overflow:hidden}.image img{width:100%;height:auto;border-radius:16px;object-fit:cover}.experience{width:100%;max-width:1100px;margin:0 auto;padding:2rem 1rem}.vertical-timeline-element-content{background:#fff;border-radius:12px;padding:.6rem!important;box-shadow:0 4px 10px #00000012;text-align:left}.vertical-timeline-element-title a{color:#1a73e8;text-decoration:none;font-weight:600;transition:color .2s ease}.vertical-timeline-element-title a:hover{color:#0c47a1;text-decoration:underline}.vertical-timeline-element-subtitle{color:#555;font-size:1rem;margin-top:5px;margin-bottom:10px}.vertical-timeline-element{padding:0!important;margin:0 0 1rem!important}.vertical-timeline-element p a{color:#333;text-decoration:none;display:inline-flex;align-items:center;gap:4px;font-size:.95rem;font-weight:500}.vertical-timeline-element p a:hover{color:#122023f1;text-decoration:underline}.vertical-timeline-element p{margin-top:10px;line-height:1.5}.vertical-timeline-element-content .vertical-timeline-element-date{position:static;color:#6b6b6b;font-weight:500;text-align:left}@media only screen and (max-width: 600px){.about h1{font-size:2rem}.about h2{font-size:40px}.vertical-timeline-element-content{padding:1rem}.experience{padding:1rem .5rem}}@media (max-width: 768px){.introduction{grid-template-columns:1fr;text-align:center}.text-section,.image{order:1}.image img{max-height:250px}}.vertical-timeline *{box-sizing:border-box}.vertical-timeline{width:95%;max-width:1170px;margin:0 auto;position:relative;padding:2em 0}.vertical-timeline:after{content:"";display:table;clear:both}.vertical-timeline:before{content:"";position:absolute;top:0;left:18px;height:100%;width:4px;background:var(--line-color)}.vertical-timeline.vertical-timeline--one-column-right:before{right:18px;left:unset}@media only screen and (min-width:1170px){.vertical-timeline.vertical-timeline--two-columns{width:90%}.vertical-timeline.vertical-timeline--two-columns:before{left:50%;margin-left:-2px}}.vertical-timeline-element{position:relative;margin:2em 0}.vertical-timeline-element>div{min-height:1px}.vertical-timeline-element:after{content:"";display:table;clear:both}.vertical-timeline-element:first-child{margin-top:0}.vertical-timeline-element:last-child{margin-bottom:0}@media only screen and (min-width:1170px){.vertical-timeline-element{margin:4em 0}.vertical-timeline-element:first-child{margin-top:0}.vertical-timeline-element:last-child{margin-bottom:0}}.vertical-timeline-element-icon{position:absolute;top:0;left:0;width:40px;height:40px;border-radius:50%}.vertical-timeline-element-icon.shadow-size-small{box-shadow:0 0 0 2px #fff,inset 0 1px #00000014,0 2px 0 4px #0000000d}.vertical-timeline-element-icon.shadow-size-medium{box-shadow:0 0 0 3px #fff,inset 0 2px #00000014,0 3px 0 5px #0000000d}.vertical-timeline-element-icon.shadow-size-large{box-shadow:0 0 0 4px #fff,inset 0 2px #00000014,0 4px 0 6px #0000000d}.vertical-timeline--one-column-right .vertical-timeline-element-icon{right:0;left:unset}.vertical-timeline-element-icon svg{display:block;width:24px;height:24px;position:relative;left:50%;top:50%;margin-left:-12px;margin-top:-12px}@media only screen and (min-width:1170px){.vertical-timeline--two-columns .vertical-timeline-element-icon{width:60px;height:60px;left:50%;margin-left:-30px}}.vertical-timeline-element-icon{-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden}.vertical-timeline--animate .vertical-timeline-element-icon.is-hidden{visibility:hidden}.vertical-timeline--animate .vertical-timeline-element-icon.bounce-in{visibility:visible;-webkit-animation:cd-bounce-1 .6s;-moz-animation:cd-bounce-1 .6s;animation:cd-bounce-1 .6s}@-webkit-keyframes cd-bounce-1{0%{opacity:0;-webkit-transform:scale(.5)}60%{opacity:1;-webkit-transform:scale(1.2)}to{-webkit-transform:scale(1)}}@-moz-keyframes cd-bounce-1{0%{opacity:0;-moz-transform:scale(.5)}60%{opacity:1;-moz-transform:scale(1.2)}to{-moz-transform:scale(1)}}@keyframes cd-bounce-1{0%{opacity:0;-webkit-transform:scale(.5);-moz-transform:scale(.5);-ms-transform:scale(.5);-o-transform:scale(.5);transform:scale(.5)}60%{opacity:1;-webkit-transform:scale(1.2);-moz-transform:scale(1.2);-ms-transform:scale(1.2);-o-transform:scale(1.2);transform:scale(1.2)}to{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1)}}.vertical-timeline-element-content{position:relative;margin-left:60px;background:#fff;border-radius:.25em;padding:1em;box-shadow:0 3px #ddd}.vertical-timeline--one-column-right .vertical-timeline-element-content{margin-right:60px;margin-left:unset}.vertical-timeline-element--no-children .vertical-timeline-element-content{background:0 0;box-shadow:none}.vertical-timeline-element-content:after{content:"";display:table;clear:both}.vertical-timeline-element-content h2{color:#303e49}.vertical-timeline-element-content .vertical-timeline-element-date,.vertical-timeline-element-content p{font-size:13px;font-size:.8125rem;font-weight:500}.vertical-timeline-element-content .vertical-timeline-element-date{display:inline-block}.vertical-timeline-element-content p{margin:1em 0 0;line-height:1.6}.vertical-timeline-element-title,.vertical-timeline-element-subtitle{margin:0}.vertical-timeline-element-content .vertical-timeline-element-date{float:left;padding:.8em 0;opacity:.7}.vertical-timeline-element-content-arrow{content:"";position:absolute;top:16px;right:100%;height:0;width:0;border:7px solid transparent;border-right:7px solid #fff}.vertical-timeline--one-column-right .vertical-timeline-element-content-arrow{content:"";position:absolute;top:16px;right:unset;left:100%;height:0;width:0;border:7px solid transparent;border-left:7px solid #fff}.vertical-timeline--one-column-right .vertical-timeline-element-content:before{left:100%;border-left:7px solid #fff;border-right:unset}.vertical-timeline-element--no-children .vertical-timeline-element-content:before{display:none}.vertical-timeline-element--no-children .vertical-timeline-element-content-arrow{display:none}@media only screen and (min-width:768px){.vertical-timeline-element-content h2{font-size:20px;font-size:1.25rem}.vertical-timeline-element-content p{font-size:16px;font-size:1rem}.vertical-timeline-element-content .vertical-timeline-element-date{font-size:14px;font-size:.875rem}}@media only screen and (min-width:1170px){.vertical-timeline--two-columns .vertical-timeline-element-content{margin-left:0;padding:1.5em;width:44%}.vertical-timeline--two-columns .vertical-timeline-element-content-arrow{top:24px;left:100%;transform:rotate(180deg)}.vertical-timeline--two-columns .vertical-timeline-element-content .vertical-timeline-element-date{position:absolute;width:100%;left:124%;top:6px;font-size:16px;font-size:1rem}.vertical-timeline--two-columns .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content,.vertical-timeline--two-columns .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content{float:right}.vertical-timeline--two-columns .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content-arrow,.vertical-timeline--two-columns .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content-arrow{top:24px;left:auto;right:100%;transform:rotate(0)}.vertical-timeline--one-column-right .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content-arrow,.vertical-timeline--one-column-right .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content-arrow{top:24px;left:100%;right:auto;transform:rotate(0)}.vertical-timeline--two-columns .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content .vertical-timeline-element-date,.vertical-timeline--two-columns .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content .vertical-timeline-element-date{left:auto;right:124%;text-align:right}}.vertical-timeline--animate .vertical-timeline-element-content.is-hidden{visibility:hidden}.vertical-timeline--animate .vertical-timeline-element-content.bounce-in{visibility:visible;-webkit-animation:cd-bounce-2 .6s;-moz-animation:cd-bounce-2 .6s;animation:cd-bounce-2 .6s}@media only screen and (min-width:1170px){.vertical-timeline--two-columns.vertical-timeline--animate .vertical-timeline-element.vertical-timeline-element--right .vertical-timeline-element-content.bounce-in,.vertical-timeline--two-columns.vertical-timeline--animate .vertical-timeline-element:nth-child(2n):not(.vertical-timeline-element--left) .vertical-timeline-element-content.bounce-in{-webkit-animation:cd-bounce-2-inverse .6s;-moz-animation:cd-bounce-2-inverse .6s;animation:cd-bounce-2-inverse .6s}}@media only screen and (max-width:1169px){.vertical-timeline--animate .vertical-timeline-element-content.bounce-in{visibility:visible;-webkit-animation:cd-bounce-2-inverse .6s;-moz-animation:cd-bounce-2-inverse .6s;animation:cd-bounce-2-inverse .6s}}@-webkit-keyframes cd-bounce-2{0%{opacity:0;-webkit-transform:translateX(-100px)}60%{opacity:1;-webkit-transform:translateX(20px)}to{-webkit-transform:translateX(0)}}@-moz-keyframes cd-bounce-2{0%{opacity:0;-moz-transform:translateX(-100px)}60%{opacity:1;-moz-transform:translateX(20px)}to{-moz-transform:translateX(0)}}@keyframes cd-bounce-2{0%{opacity:0;-webkit-transform:translateX(-100px);-moz-transform:translateX(-100px);-ms-transform:translateX(-100px);-o-transform:translateX(-100px);transform:translate(-100px)}60%{opacity:1;-webkit-transform:translateX(20px);-moz-transform:translateX(20px);-ms-transform:translateX(20px);-o-transform:translateX(20px);transform:translate(20px)}to{-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translate(0)}}@-webkit-keyframes cd-bounce-2-inverse{0%{opacity:0;-webkit-transform:translateX(100px)}60%{opacity:1;-webkit-transform:translateX(-20px)}to{-webkit-transform:translateX(0)}}@-moz-keyframes cd-bounce-2-inverse{0%{opacity:0;-moz-transform:translateX(100px)}60%{opacity:1;-moz-transform:translateX(-20px)}to{-moz-transform:translateX(0)}}@keyframes cd-bounce-2-inverse{0%{opacity:0;-webkit-transform:translateX(100px);-moz-transform:translateX(100px);-ms-transform:translateX(100px);-o-transform:translateX(100px);transform:translate(100px)}60%{opacity:1;-webkit-transform:translateX(-20px);-moz-transform:translateX(-20px);-ms-transform:translateX(-20px);-o-transform:translateX(-20px);transform:translate(-20px)}to{-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translate(0)}}.projects{width:100%;padding:20px 0;height:auto;display:flex;align-items:center;flex-direction:column;background-color:#fff1e6;font-family:Open Sans,sans-serif;color:#122023;scroll-margin-top:80px}.projects h1{color:#122023;font-size:36pt;font-family:Roboto,sans-serif;text-align:center;margin:20px 0;position:relative}.projects .projectTitle{text-align:center;color:#122023;font-size:60px;font-weight:bolder}.projectList{width:70vw;height:auto;display:grid;grid-template-columns:1fr 1fr 1fr;place-items:center}.projectItem{border-radius:15px;width:300px;height:340px;margin:40px;padding:10px;position:relative;box-shadow:0 3px 15px #00000010;text-align:center;overflow:hidden;border:1px solid #cccccc18}.projectItem:hover{box-shadow:0 3px 15px #00000080;transition:.3s ease-in;cursor:pointer}.bgImage{width:100%;height:60%;background-size:cover;background-position:center;position:relative}.projectItem h1{font-size:36px;font-weight:700;margin-top:10px}.projectItem h2{font-size:24px;margin-top:8px}a:link,a:visited{color:#122023;text-decoration:none}.projectItem p{font-size:16px;color:#122023;margin-top:10px;line-height:1.5}.techIcons{display:flex;justify-content:center;gap:10px;margin-top:8px}.techIcon{font-size:24px;color:#122023}@media only screen and (max-width: 1300px){.projectList{grid-template-columns:repeat(2,1fr)}}@media only screen and (max-width: 800px){.projectList{width:100%;grid-template-columns:1fr;gap:5px}.projectItem{width:300px}}.skills{font-size:16px;width:100%;display:flex;justify-content:center;flex-direction:column;align-items:center;color:#122023;background-color:#f9f5e3;padding:20px 0;scroll-margin-top:80px}.skills h1{color:#122023;font-size:36pt;font-family:Roboto,sans-serif;text-align:center;margin:20px 0;position:relative}.skills .list{list-style:none;width:80%;padding:0;display:flex;flex-direction:column;gap:30px;align-items:center}.item{text-align:center}.item h2{font-size:24px;margin-bottom:10px;font-weight:600}.list span{color:#122023;gap:15px;display:flex;justify-content:center;flex-wrap:wrap}.skillIcon{font-size:60px;transition:transform .3s ease,color .3s ease;color:#122023}.skillIcon:hover{transform:scale(1.05);color:#122023f1}.githubStats{background-color:#f9f5e3;padding:0;border:none;box-shadow:none;border-radius:10px;overflow:hidden;display:flex;justify-content:center;align-items:center;text-align:center;flex-direction:column;gap:0 px}.githubLink{color:#122023c2!important;text-decoration:underline!important}.githubLink:hover{color:#122023f1!important}.githubStats img{width:80%;max-width:100%;height:80%;object-fit:cover}.statsCard{width:80%;max-width:500px;border-radius:10px}@media only screen and (max-width: 600px){.skills h1{font-size:28pt}.item h2{font-size:22px}.list{padding:0}.skillIcon{font-size:48px}}.footer{width:100%;height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#f9f5e3;font-family:Open Sans;font-size:16px;text-decoration:none;color:#122023;padding-top:10px;scroll-margin-top:80px}.icons{display:flex;justify-content:center;align-items:center;gap:15px}.icon{color:#122023;font-size:70px;cursor:pointer;margin:20px;transition:transform .4s ease-in-out}.icon:hover{transform:scale(1.07)}.copyright{font-weight:700;font-size:12px}.email{font-size:16px;font-weight:800;text-align:center;margin-top:1rem;display:flex;flex-direction:column;align-items:center}.emailRow{display:flex;align-items:center;gap:8px;margin-top:.5rem}.emailIcon{font-size:18px;color:#122023;cursor:pointer}.emailAddress{font-weight:700;cursor:pointer;color:#122023}.emailAddress:hover{text-decoration:underline}.copy{display:inline-block;margin-top:.5rem;color:#122023;font-size:16px;font-family:Open Sans;animation:fadeCopy 2s ease-in-out forwards}@keyframes fadeCopy{0%{opacity:0;transform:translateY(5px)}10%{opacity:1;transform:translateY(0)}90%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-5px)}}@media only screen and (max-width: 600px){.footer svg{font-size:50px}.emailIcon{font-size:16px!important}}*{margin:0;padding:0;box-sizing:border-box}#root{max-width:1280px;margin:0 auto;padding:0 1rem;text-align:center}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
