:root{--ink: #311e0b;--text: #6b4226;--text-muted: #7a4e33;--accent: #8c5a3b;--action: #664234;--action-hover: #8c5a3b;--border: #b08968;--paper: rgb(235, 220, 179);--card: #fff5e6}*{font-family:Itim,cursive;margin:0;padding:0}h1,h2,h3,h4{font-family:Poppins;font-weight:600;text-transform:uppercase}.lil-gui .title{color:#fff;font-size:11px}.lig-gui .controller{color:#fff}html,body{background:#000}html{overflow-y:scroll;overflow-x:hidden}body{overflow-x:hidden}html.no-scroll{overflow:hidden}.webgl{position:fixed;top:0;left:0;outline:none;width:100vw;height:100vh}.height-div{height:300vh}@media(min-width:481px){.global-div{transform:translate(-50%,-50%)}}.global-div{position:fixed;top:50%;left:50%;display:flex;flex-direction:column;justify-content:flex-start;padding:40px 50px 50px;height:90vh;width:80vw;background-color:#ebdcb3;box-shadow:0 4px 12px #0000001a;margin:auto;border-radius:50px;box-sizing:border-box;overflow-y:auto;animation:popIn .5s ease;z-index:5}.global-div::-webkit-scrollbar{width:16px}.global-div::-webkit-scrollbar-track{margin:50px 0;background:transparent}.global-div::-webkit-scrollbar-thumb{background-color:#b08968;background-clip:padding-box;border:4px solid transparent;border-radius:8px}@supports not selector(::-webkit-scrollbar){.global-div{scrollbar-width:thin;scrollbar-color:#b08968 transparent}}.about-me,.work,.edu,.contact,.project{opacity:0;transition:opacity .2s ease;display:none}.close-button{position:absolute;right:30px;top:30px;background-color:#664234;color:#fff;border:none;border-radius:50%;width:60px;height:60px;display:flex;justify-content:center;align-items:center;font-size:1.2rem;cursor:pointer;box-shadow:0 4px 8px #0000001a;transition:background-color .3s ease,transform .2s ease}.close-button:hover{background-color:#8c5a3b;transform:scale(1.1)}.close-button:focus{outline:none}.close-button:focus-visible{box-shadow:0 0 0 3px #b0896880}.title{font-size:3rem;text-transform:uppercase}.con li{font-size:2rem}.con h3{font-size:3rem}li{color:#311e0b;font-size:1.6cqmin}ul{padding-left:20px;margin:0;list-style:disc}h1{color:var(--ink)}.contact-form{display:flex;flex-direction:column;gap:15px}.form-group{display:flex;flex-direction:column}.form-group label{font-size:1.5rem;color:#6b4226;margin-bottom:5px}.form-group input,.form-group textarea{padding:10px;border-radius:10px;border:1px solid #b08968;background-color:#fff5e6;font-size:1.5rem;color:#6b4226;box-shadow:0 4px 8px #0000000d}.form-group textarea{resize:vertical;height:200px}.submit-button{padding:20px;border:none;border-radius:20px;background-color:var(--action);color:#fff;font-size:1.5rem;cursor:pointer;transition:background-color .3s ease;width:50%;margin:auto}.submit-button:hover{background-color:var(--action-hover)}.contact .social-links{margin:20px 0 25px;width:100%;justify-content:left}.contact .social-links a{font-size:3rem;color:#6b4226}.contact p{margin-top:10px;font-size:1.5rem;color:var(--text)}.about-me-top{display:flex;flex-direction:row}.about-me .title{margin-top:20px;font-size:3rem}.about-me .sub-title{font-size:2rem;color:var(--text)}.about-me-photo{width:40%;position:absolute;bottom:0;right:0}.about-me-description{font-size:1.6rem;color:#6b4226;border-radius:20px;padding:15px;width:60%}.social-links{display:flex;gap:20px;margin-top:20px;width:60%;justify-content:center}.social-links a{font-size:4rem;color:#6b4226;transition:color .3s ease}.social-links a:hover{color:#b08968}.technologies{text-align:center;width:60%}.technology-group{margin:18px 0 0;color:#6b4226;font-size:.9rem;letter-spacing:.05em}.technology-list{display:flex;flex-wrap:wrap;justify-content:center;list-style-type:none;padding:0;margin:4px 0 0}.technology-list li{background-color:var(--action);color:#fff;padding:10px 20px;border-radius:30px;margin:6px;font-size:1rem}.work .title{margin-bottom:20px}.timeline{position:relative;padding-left:50px}.timeline:before{content:"";position:absolute;left:187.5px;top:0;bottom:0;width:4px;background-color:#b08968;border-radius:2px}.work-entry{display:flex;align-items:flex-start;align-items:center;position:relative;margin-bottom:40px;margin-left:100px}.date{font-size:.9rem;color:var(--text-muted);font-weight:700;position:absolute;left:-170px;top:50%;transform:translateY(-50%);width:150px;text-align:center}.logo-container{position:relative;margin-right:20px;z-index:1;display:flex;justify-content:center;align-items:center;width:75px}.company-logo{width:75px;height:75px;border-radius:50%;background-color:#b08968;display:flex;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;color:#fff;z-index:1}.work-info{flex:1;display:flex;flex-direction:column;justify-content:center;margin-left:20px;background-color:#fff5e6;box-shadow:0 4px 8px #0000000d;padding:20px;border-radius:20px}.company-name{font-size:1.4rem;font-weight:700;color:#6b4226}.location{display:inline-flex;align-items:center;gap:6px;margin-left:10px;font-size:.95rem;font-weight:400;color:var(--text-muted);vertical-align:middle}.flag{height:.9em;width:auto;border-radius:2px;box-shadow:0 0 0 1px #0000001a}.job-title{font-size:1.2rem;color:#8c5a3b}.job-description{font-size:1.2rem;color:var(--text);margin-top:5px;max-width:75ch}.edu .title{margin-bottom:20px}.edu .section-heading{font-size:1.5rem;color:var(--ink);margin:10px 0 15px}.edu a{font-size:1rem;display:block;color:var(--accent);text-decoration:underline;text-underline-offset:3px}.edu a:hover{color:var(--action)}.education-item,.certification-item{margin-bottom:20px;background-color:#fff5e6;padding:20px;border-radius:20px;box-shadow:0 4px 8px #0000000d}.education-item h4,.certification-item h4{font-size:1.1rem;color:#6b4226;font-family:Itim;text-transform:none}.education-item p,.certification-item p{font-size:1rem;color:#8c5a3b}.toggle-buttons{display:flex;justify-content:center;margin-bottom:20px}.toggle-buttons button{padding:10px 20px;border-radius:20px;background-color:transparent;font-size:1.2rem;color:var(--action);border:2px solid var(--action);cursor:pointer;margin:0 10px;transition:background-color .3s ease}.toggle-buttons button.active{background-color:var(--action);color:#fff}.toggle-buttons button:hover{background-color:var(--action-hover);border-color:var(--action-hover);color:#fff}.project-section,.project-items-wrapper{display:flex;flex-direction:row;gap:20px;flex-wrap:wrap;justify-content:center}.project-item{background-color:#fff5e6;padding:20px;border-radius:20px;box-shadow:0 4px 8px #0000000d;display:flex;flex-direction:column;align-items:center;text-align:center;width:300px;transition:transform .3s ease,box-shadow .3s ease}.project-item:hover{transform:scale(1.1);box-shadow:0 8px 16px #0003}.project-image{width:100%;max-width:300px;height:auto;border-radius:20px;margin-bottom:15px}.hidden{display:none}.project-image{width:100%;max-width:300px;height:auto;border-radius:20px;transition:transform .3s ease;box-shadow:0 4px 8px #0000001a;margin-bottom:15px}.project h4{text-align:left;font-size:1.5rem}.project p,.project a{font-size:1rem}.project-item ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:2px;justify-content:center}.project-item ul li{color:#fff;background-color:var(--action);padding:4px 12px;border-radius:20px;font-size:.8rem;cursor:default;margin-bottom:10px}.project-item .buttons{display:flex;gap:10px;margin-top:30px}.project-item a{display:inline-block;padding:10px 40px;background-color:var(--action);color:#fff;text-decoration:none;border-radius:10px;transition:background-color .3s ease;box-shadow:0 4px 8px #0000001a;font-size:1rem}.project-item a:hover{background-color:var(--action-hover)}.loading-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#fff}.loading-percentage{font-size:24px;color:#fff;margin-bottom:10px}.loading-gif{width:200px;height:auto}.mobile-container{position:fixed;display:none;flex-direction:column;z-index:1000;width:100%;height:100%;background-color:#000;color:#fff;align-items:center;justify-content:center;text-align:center;font-size:20px}.mobile-container button{background-color:#ffffffc9;margin-top:20px;border:0px;font-size:30px;padding:10px 40px;border-radius:10px}.top-controls{position:fixed;top:20px;right:20px;z-index:4;display:flex;align-items:center}.audio-controls{padding:10px;border-radius:5px}#play-pause-button{background-color:transparent;border:none;padding:10px;font-size:30px;border-radius:5px;cursor:pointer;color:#fff}#play-pause-button:hover{transform:scale(1.1)}@media(max-width:768px){.global-div{flex-direction:column;height:auto;max-height:90vh}.left-column{width:100%;max-width:none;padding-right:0;margin-bottom:20px}.info{flex:none;width:100%}#play-pause-button{font-size:20px}}@keyframes popIn{0%{transform:translate(-50%,-50%) scale(.8)}50%{transform:translate(-50%,-50%) scale(1.1)}to{transform:translate(-50%,-50%) scale(1)}}@keyframes popInMobile{0%{transform:scale(.8)}50%{transform:scale(1.1)}to{transform:scale(1)}}@media(max-width:480px){body{user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.height-div{height:250vh}.global-div{height:100vh;max-height:none;width:100vw;margin:0;padding:20px;overflow-y:auto;position:fixed;top:0;left:0;z-index:999;border-radius:0;animation:popInMobile .5s ease}.close-button{width:40px;height:40px;font-size:1rem;top:10px;right:10px}h1.title{font-size:2rem}.sub-title{font-size:1.5rem}.about-me .title{margin-top:40px;font-size:11cqw}.about-me .sub-title{font-size:2rem;text-align:center}.about-me-photo{max-width:60%;height:auto;margin:auto;display:block;position:relative;border-radius:100%}.about-me-description{font-size:1.2rem;width:100%;margin-top:0;margin-bottom:10px;text-align:center;padding:0}.contact .social-links a{font-size:2.5rem}.contact p{font-size:4cqw}.technologies{width:100%}.technology-list{margin:0}.social-links{width:100%}.technology-list li{padding:8px 15px;font-size:.8rem;margin:2px}.timeline{padding-left:0}.timeline:before{left:20px;width:2px;background-color:transparent}.date{font-size:.9rem;position:relative;left:0;top:50%;transform:translateY(-50%);width:150px;text-align:center}.work-entry{flex-direction:column;align-items:flex-start;margin-left:0}.logo-container{position:absolute;margin-right:0;right:-10px;display:flex;justify-content:right;align-items:center;width:75px}.company-logo{width:75px;height:75px}.work-info{margin-left:0;padding:10px}.location{display:flex;margin:2px 0 0}.education-item,.certification-item{font-size:.9rem}.project-item{width:100%;margin:10px 0;padding:10px}.project-item .buttons{flex-direction:row;width:100%}.project-item a{width:70%;text-align:center;margin-bottom:10px}.form-group label{font-size:1.2rem}.form-group input,.form-group textarea{font-size:1.2rem;padding:8px}.submit-button{font-size:1.2rem;padding:10px;width:80%}.toggle-buttons button{padding:15px 10px;border-radius:20px;font-size:1rem;margin:0 10px}}@media(hover:none),(pointer:coarse){.close-button:active,.submit-button:active,.project-item:active,.social-links a:active{background-color:#fff5e6;transform:scale(1.05);box-shadow:0 4px 8px #0000001a}.close-button:hover,.submit-button:hover,.project-item:hover,.social-links a:hover{background-color:#fff5e6;transform:scale(1.05);box-shadow:none}}.submit-button:disabled{opacity:.6;cursor:wait}.scroll-hint{position:fixed;bottom:30px;left:50%;transform:translate(-50%);z-index:3;color:#ebdcb3;font-size:1.4rem;text-shadow:0 2px 8px rgba(0,0,0,.6);pointer-events:none;opacity:0;transition:opacity 1s ease}.scroll-hint i{display:block;margin-top:4px;text-align:center;animation:scrollHintBounce 1.6s ease-in-out infinite}.loaded .scroll-hint{opacity:1;transition-delay:1s}.loaded .scroll-hint.dismissed,html.no-scroll .scroll-hint{opacity:0;transition-delay:0s}@keyframes scrollHintBounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.hover-label{position:fixed;top:0;left:0;z-index:4;padding:4px 12px;border-radius:20px;background-color:#ebdcb3;color:#311e0b;font-size:1rem;box-shadow:0 4px 12px #00000040;pointer-events:none;white-space:nowrap;opacity:0;transition:opacity .15s ease}.hover-label.visible{opacity:1}@media(prefers-reduced-motion:reduce){.global-div,.scroll-hint i{animation:none!important}}.site-nav{opacity:0;visibility:hidden}.loaded .site-nav{opacity:1;visibility:visible;transition:opacity .6s ease .6s}html.no-scroll .site-nav{opacity:0;visibility:hidden;transition:none}html.menu-open{overflow:hidden}.nav-toggle{position:relative;z-index:2;padding:10px;border:none;border-radius:5px;background:transparent;color:#fff;font-size:30px;cursor:pointer}.nav-toggle:hover{transform:scale(1.1)}.nav-list{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;flex-direction:column;align-items:center;justify-content:center;gap:10px;margin:0;padding:0;list-style:none;background-color:#180e0ab8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:menuFadeIn .25s ease}.site-nav.open .nav-list{display:flex}.nav-list li{font-size:inherit}.nav-list button{padding:6px 24px;border:none;background:transparent;color:#fff;font-family:Poppins,sans-serif;font-weight:600;font-size:clamp(2rem,8vw,3.2rem);text-transform:uppercase;text-shadow:0 4px 14px rgba(0,0,0,.4);cursor:pointer;transition:color .2s ease}.nav-list button:hover,.nav-list button:focus-visible{color:#ebdcb3}.nav-list button:focus,.nav-toggle:focus{outline:none}.nav-list button:focus-visible{text-decoration:underline;text-underline-offset:8px}.nav-toggle:focus-visible{box-shadow:0 0 0 3px #ebdcb3e6}@keyframes menuFadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:768px){.nav-toggle{font-size:20px}}@media(prefers-reduced-motion:reduce){.nav-list{animation:none}}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:3;background-color:#140c088c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .4s ease}html.no-scroll body:before{opacity:1}.about-me{--pane: #a8553f;--pane-dark: #7e3e2d}.work{--pane: #6c705a;--pane-dark: #4d5040}.edu{--pane: #776b62;--pane-dark: #564c45}.project{--pane: #4c5a6b;--pane-dark: #343f4b}.contact{--pane: #627880;--pane-dark: #44555c}.global-div{background-color:var(--pane);border:22px solid #d4a866;border-radius:56px;padding:30px 44px 34px;box-shadow:inset 0 0 0 3px #0000002e,inset 0 8px 18px #00000047,0 0 0 3px #b58a4c,0 24px 60px #00000073}.global-div .title,.edu .section-heading{color:#fff8ec;text-shadow:0 2px 6px rgba(0,0,0,.2)}.global-div .close-button{background-color:#6b4226}.about-me .sub-title,.about-me-description,.contact p,.form-group label{color:#fff8ec}.technology-group,.date{color:#fff}.global-div .social-links a{color:#fff8ec}.global-div .social-links a:hover{color:var(--card)}.timeline:before{background-color:#fff8ec8c}.technology-list li{background-color:var(--card);color:var(--pane-dark)}.project-item ul li{background-color:var(--pane);color:#fff8ec}.submit-button,.project-item a{background-color:var(--pane-dark);border-color:var(--pane-dark);color:#fff8ec}.submit-button:hover,.project-item a:hover{background-color:var(--action)}.form-group input,.form-group textarea{border-color:transparent}.about-me .title{margin-top:6px}.about-me .social-links{width:auto;justify-content:flex-start;gap:14px;margin:10px 0 4px}.about-me .social-links a{font-size:2.4rem}.about-me-description{font-size:1.6rem;padding:12px 0;width:55%}@media(min-width:481px){.about-me{justify-content:center}}.technologies{display:grid;grid-template-columns:max-content 1fr;align-items:center;column-gap:14px;row-gap:10px;text-align:left;margin-top:14px;width:58%}.technology-group{margin:0;font-size:.8rem}.technology-list{justify-content:flex-start;margin:0}.technology-list li{margin:4px;padding:8px 16px;font-size:1rem}.education-item,.certification-item{padding:14px 18px;margin-bottom:12px}.edu .section-heading{margin:8px 0 12px}.project-section,.project-items-wrapper{flex-wrap:nowrap;align-items:stretch}.project-item .buttons{margin-top:auto;padding-top:16px}.project-item{flex:1 1 0;min-width:0;max-width:320px;width:auto;padding:16px}.project-item:hover{transform:translateY(-4px)}.project-image{aspect-ratio:1;object-fit:cover;max-height:28vh;width:auto;max-width:100%}.toggle-buttons{width:fit-content;margin:0 auto 16px;padding:4px;gap:4px;border-radius:999px;background-color:#00000038}.toggle-buttons button{margin:0;padding:8px 22px;border:none;border-radius:999px;background-color:transparent;color:#fff8ec;font-size:1.1rem;transition:background-color .2s ease,color .2s ease}.toggle-buttons button:hover{background-color:#fff8ec24;color:#fff8ec}.toggle-buttons button.active,.toggle-buttons button.active:hover{background-color:var(--card);color:var(--pane-dark)}.contact p,.contact .form-group label,.contact .social-links a{color:#fff}.contact .contact-form{flex:1}.contact .submit-button{margin:auto}.contact-form{gap:10px}.form-group label,.form-group input,.form-group textarea{font-size:1.25rem}.form-group textarea{height:140px}@media(max-height:850px)and (min-width:481px){.global-div{padding:22px 36px 26px}.global-div .title{font-size:2.4rem}.education-item,.certification-item{padding:10px 16px;margin-bottom:8px}.form-group textarea{height:100px}}@media(max-width:480px){.global-div{border-width:10px;border-radius:0;padding:20px}.technologies{grid-template-columns:1fr}.project-section,.project-items-wrapper{flex-wrap:wrap}.project-item{max-width:none}.project-image{max-height:none;width:100%}}
