@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@400;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;700&display=swap";.header{padding:10px;position:fixed;width:-webkit-fill-available;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;top:0}.header .nav{display:grid;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;grid-template-columns:2fr 2fr 0fr;gap:15px}.header .nav a{text-decoration:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:max-content;padding:5px}.header .nav .logo{font-size:1.5rem;font-weight:700;background:linear-gradient(45deg,#fff,#988);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.header .nav .nav-links{display:flex;align-items:center;width:max-content}.header .nav .nav-links a{margin-left:1rem;color:#fff;text-decoration:none;transition:color .3s ease;font-weight:800}.header .nav .nav-links a:hover{color:#8299f7}.header .nav .download-button{background-color:#8a2be2;color:#fff!important;padding:5px 10px;border:none;border-radius:8px;font-size:16px;cursor:pointer;transition:background-color .3s ease;text-decoration:none;width:max-content}.header .nav .download-button:hover{color:#fff;transition:all .3s ease;background-color:#6a5acd}.header .nav .download-button:active{background-color:indigo}.header .nav #burger-menu{display:none;cursor:pointer;color:#fff;font-weight:900;font-size:30px}@media (max-width: 768px){.header{-webkit-backdrop-filter:none;backdrop-filter:none;padding:0}.header .nav{align-items:center;padding:0 10px 10px;position:relative;display:grid;grid-template-columns:10fr 1fr 1fr}.header .nav .logo{font-size:1.25rem;margin-right:auto}.header .nav #burger-menu{display:block;font-size:1.5rem;cursor:pointer;right:100px}.header .nav .nav-links{display:none;flex-direction:column;width:250px;position:absolute;top:60px;right:0;border-radius:8px;z-index:1000;padding:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.header .nav .nav-links.open{display:flex}.header .nav .nav-links a{margin:10px 0;text-align:center;color:#fff;text-decoration:none;transition:color .3s ease}.header .nav .nav-links a:hover{color:#8299f7}.header .nav .download-button{margin-top:10px;right:20%}}@media (min-width: 769px) and (max-width: 1024px){.header{-webkit-backdrop-filter:none;backdrop-filter:none;padding:0}.header .nav{align-items:center;padding:0 10px 10px;position:relative;display:grid;grid-template-columns:10fr 1fr 1fr}.header .nav .logo{font-size:1.25rem;margin-right:auto}.header .nav #burger-menu{display:block;font-size:1.5rem;cursor:pointer;right:100px}.header .nav .nav-links{display:none;flex-direction:column;width:250px;position:absolute;top:60px;right:0;border-radius:8px;z-index:1000;padding:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.header .nav .nav-links.open{display:flex}.header .nav .nav-links a{margin:10px 0;text-align:center;color:#fff;text-decoration:none;transition:color .3s ease}.header .nav .nav-links a:hover{color:#8299f7}.header .nav .download-button{margin-top:10px;right:20%}}.footer{background:#333;padding:1rem;text-align:center;color:#d0d0d0}.footer .social-links{display:flex;justify-content:center;gap:1rem;margin-bottom:20px}.footer .social-links a{font-weight:900;gap:.5rem;display:flex;align-items:center;color:#fff;text-decoration:none;transition:color .3s ease}.footer .social-links a:hover{color:#958bd6}@media (max-width: 768px){.contact-content{grid-template-columns:1fr}.footer .social-links{flex-direction:column}}section{max-width:1200px;margin:50px auto 0}#projects{margin-top:50px}.github-button-container{display:flex;justify-content:center;margin-top:50px}.projects,.experience,.education,.skills,.contact{padding:4rem 2rem;max-width:1200px;margin:0 auto}.section-title{font-size:2rem;text-align:center;margin-bottom:2rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.projects-grid .project-card{background:#292525;border-radius:8px;box-shadow:0 4px 6px #0000001a;overflow:hidden;transition:transform .3s ease;cursor:pointer}.projects-grid .project-card:hover{transform:translateY(-5px)}.projects-grid .project-card .project-image{width:100%;height:200px;object-fit:cover}.projects-grid .project-card .project-info{padding:1rem}.projects-grid .project-card .project-info .project-title{font-size:1.2rem;margin-bottom:.5rem}.projects-grid .project-card .project-info .project-description{color:#d0d0d0}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#292525;border-radius:8px;box-shadow:0 4px 6px #0000001a;padding:2rem;max-width:600px;width:90%}.modal-title{font-size:1.5rem;margin-bottom:1rem}.modal-image{width:100%;height:auto;border-radius:8px;margin-bottom:1rem}.modal-description{margin-bottom:1rem}.modal .modal-description{margin-top:20px;line-height:1.6;font-size:16px;color:#fff}.modal .modal-image{max-width:100%;max-height:500px;object-fit:contain;margin-bottom:20px}.modal .btn-modal{display:flex;gap:20px}.modal .btn-modal button{background-color:#8a2be2;color:#fff!important;padding:5px 10px;border:none;border-radius:8px;font-size:16px;cursor:pointer;transition:background-color .3s ease}.modal .btn-modal button:hover{color:#fff;transition:all .3s ease;background-color:#6a5acd}.modal .btn-modal button:active{background-color:indigo}.all-projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.all-projects-grid .project-card{background:#292525;border-radius:8px;box-shadow:0 4px 6px #0000001a;overflow:hidden;transition:transform .3s ease;cursor:pointer}.all-projects-grid .project-card:hover{transform:translateY(-5px)}.all-projects-grid .project-card .project-image{width:100%;height:200px;object-fit:cover}.all-projects-grid .project-card .project-info{padding:1rem}.all-projects-grid .project-card .project-info .project-title{font-size:1.2rem;margin-bottom:.5rem}.all-projects-grid .project-card .project-info .project-description{color:#d0d0d0}#all-projects{margin-top:0;padding:4rem 2rem}.languages{margin-bottom:20px}.languages h4{margin-bottom:10px}.languages .language-icons{display:flex;flex-wrap:wrap;gap:10px}.languages .language-icon{display:flex;align-items:center;gap:5px}.languages .language-icon img{width:30px;height:auto}.languages .language-icon span{font-size:14px;color:#fff}.filter-search-container{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap}.language-filter{flex:1;margin-right:1rem;position:relative}.language-filter .filter-toggle{display:flex;align-items:center;gap:5px;background-color:#8a2be2;color:#fff;padding:.5rem 1rem;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s ease}.language-filter .filter-toggle:hover{background-color:#6a5acd}.language-filter .filter-toggle:active{background-color:indigo}.language-filter .filter-content{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:5px;position:absolute;z-index:10;background-color:#6a0d91;padding:1rem;border-radius:8px;box-shadow:0 4px 6px #0000001a}.language-filter .language-checkbox{display:flex;align-items:center;gap:.5rem;border:1px solid;border-radius:8px;border-color:#000;padding:.3rem .6rem;cursor:pointer;position:relative;transition:background-color .3s ease,transform .2s ease}.language-filter .language-checkbox input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;width:0;height:0;margin:0;cursor:pointer}.language-filter .language-checkbox:hover{background-color:#6a5acd;transform:translateY(-4px)}.language-filter .language-checkbox input[type=checkbox]+span:before{content:"";position:absolute;left:0;width:1rem;height:1rem;border:2px solid black;background-color:transparent;border-radius:8px;transition:background-color .3s ease}.language-filter .language-checkbox input[type=checkbox]:checked+span:before{background-color:#fff}.language-filter .language-checkbox.checked{background-color:#6a5acd}.language-filter .language-checkbox span{color:#f5f5f5;position:relative}.project-search{flex:1;max-width:300px;display:flex}.project-search input{width:100%;padding:.5rem;border:1px solid #000000;border-left:0px;border-radius:0 8px 8px 0;background-color:#292525;color:#f5f5f5;transition:border-color .3s ease,box-shadow .3s ease}.project-search input:focus{outline:none;box-shadow:0 0 0 2px #1a73e833}.project-search input::placeholder{color:#d0d0d0}.search-icon{font-size:20px;border:1px solid #000000;display:flex;align-items:center;border-radius:8px 0 0 8px;padding:5px;background-color:#292525;color:#f5f5f5}@media (max-width: 768px){.filter-search-container{flex-direction:column;align-items:stretch}.language-filter{margin-right:0;margin-bottom:1rem}.language-filter .filter-content{position:static;width:100%}.project-search{max-width:100%}}.notification{position:fixed;bottom:11%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:15px;border-radius:5px;box-shadow:0 4px 6px #0000001a;z-index:9999;opacity:0;visibility:hidden;transition:opacity .5s ease-in-out,visibility .5s ease-in-out;font-size:16px;text-align:center;width:300px}.notification.show{opacity:1;visibility:visible}.notification.success{background-color:#4caf50}.notification.error{background-color:#f44336}@keyframes pulse{0%{box-shadow:0 0 #fff6}70%{box-shadow:0 0 0 10px #fff0}to{box-shadow:0 0 #fff0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}*{margin:0;padding:0}body::-webkit-scrollbar{display:none}h1,h2,h3{font-family:Roboto Mono,monospace}p{font-family:Montserrat,sans-serif}a{font-family:Ubuntu,sans-serif}.portfolio{min-height:100vh;background:linear-gradient(135deg,#6a0d91 10%,#03f 300%);color:#f5f5f5;font-family:Arial,sans-serif}.hero{height:75vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:2rem}.hero-content{max-width:800px}.hero-title{font-size:3rem;margin-bottom:1rem;animation:fadeIn 1s ease-out}.hero-subtitle{font-size:1.5rem;color:#d0d0d0;margin-bottom:1rem;animation:fadeIn 1s ease-out .5s both}.hero-description{margin-bottom:2rem;animation:fadeIn 1s ease-out 1s both;line-height:1.6}.profile-container{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem}.profile-container .profile-pic{width:200px;height:200px;border-radius:50%;border:4px solid #ffffff;margin-bottom:1rem;animation:pulse 2s infinite;object-fit:cover;object-position:top}.cta-button{animation:bounce 2s infinite;background-color:#8a2be2;color:#fff;padding:10px 20px;border:none;border-radius:8px;font-size:16px;cursor:pointer;transition:background-color .3s ease}.cta-button:hover{transition:all .3s ease;background-color:#6a5acd}.cta-button:active{background-color:indigo}.glowContenu{-webkit-box-shadow:0px 0px 105px 10px rgb(45,255,196);-moz-box-shadow:0px 0px 105px 10px rgb(45,255,196);box-shadow:0 0 105px 10px #2dffc4}.experience-timeline,.education-timeline{position:relative;padding-left:2rem}.experience-timeline:before,.education-timeline:before{content:"";-webkit-box-shadow:0px 0px 105px 10px rgb(45,255,196);-moz-box-shadow:0px 0px 105px 10px rgb(45,255,196);box-shadow:0 0 105px 10px #2dffc4;position:absolute;left:0;top:8px;height:100%;width:2px;background:#fff}.experience-timeline .experience-item,.experience-timeline .education-item,.education-timeline .experience-item,.education-timeline .education-item{position:relative;margin-bottom:2rem}.experience-timeline .experience-item:before,.experience-timeline .education-item:before,.education-timeline .experience-item:before,.education-timeline .education-item:before{content:"";-webkit-box-shadow:0px 0px 105px 10px rgb(45,255,196);-moz-box-shadow:0px 0px 105px 10px rgb(45,255,196);box-shadow:0 0 105px 10px #2dffc4;position:absolute;left:-2.4rem;top:.5rem;width:1rem;height:1rem;border-radius:50%;background:#fff}.experience-timeline .experience-item .experience-content,.experience-timeline .experience-item .education-content,.experience-timeline .education-item .experience-content,.experience-timeline .education-item .education-content,.education-timeline .experience-item .experience-content,.education-timeline .experience-item .education-content,.education-timeline .education-item .experience-content,.education-timeline .education-item .education-content{background:#292525 50%;border-radius:8px;box-shadow:0 4px 6px #0000001a;padding:1rem}.experience-timeline .experience-item .experience-title,.experience-timeline .experience-item .education-degree,.experience-timeline .education-item .experience-title,.experience-timeline .education-item .education-degree,.education-timeline .experience-item .experience-title,.education-timeline .experience-item .education-degree,.education-timeline .education-item .experience-title,.education-timeline .education-item .education-degree{font-size:1.2rem;margin-bottom:.5rem}.experience-timeline .experience-item .experience-company,.experience-timeline .experience-item .education-school,.experience-timeline .education-item .experience-company,.experience-timeline .education-item .education-school,.education-timeline .experience-item .experience-company,.education-timeline .experience-item .education-school,.education-timeline .education-item .experience-company,.education-timeline .education-item .education-school{font-weight:700;color:#fff;margin-bottom:.5rem}.experience-timeline .experience-item .experience-period,.experience-timeline .experience-item .education-period,.experience-timeline .education-item .experience-period,.experience-timeline .education-item .education-period,.education-timeline .experience-item .experience-period,.education-timeline .experience-item .education-period,.education-timeline .education-item .experience-period,.education-timeline .education-item .education-period{display:flex;align-items:center;color:#d0d0d0;margin-bottom:.5rem}.experience-timeline .experience-item .experience-period .icon,.experience-timeline .experience-item .education-period .icon,.experience-timeline .education-item .experience-period .icon,.experience-timeline .education-item .education-period .icon,.education-timeline .experience-item .experience-period .icon,.education-timeline .experience-item .education-period .icon,.education-timeline .education-item .experience-period .icon,.education-timeline .education-item .education-period .icon{margin-right:.5rem}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}.skills-grid .skill-item{display:flex;flex-direction:column;align-items:center;padding:1rem;background:#292525 50%;border-radius:8px;box-shadow:0 4px 6px #0000001a;transition:transform .3s ease;text-decoration:none;color:#f5f5f5}.skills-grid .skill-item:hover{transform:translateY(-5px)}.skills-grid .skill-item .skill-logo{width:50px;height:50px;margin-bottom:.5rem}.skills-grid .skill-item .skill-name{font-size:1rem;text-align:center}.about{max-width:1200px;padding:2rem 1rem;background:#292525 50%;border-radius:8px;box-shadow:0 4px 6px #0000001a;margin:0 auto}.about .about-content{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem;max-width:800px;margin:0 auto}.about .about-content .about-title{font-size:25px;margin-bottom:1rem;display:flex;align-items:center;justify-content:center}.about .about-content .about-description{margin-bottom:1rem;line-height:1.6;margin-bottom:30px}.contact .social-links{display:flex;gap:1rem;justify-content:center;margin-bottom:20px}.contact .social-links a{font-weight:900;gap:.5rem;display:flex;align-items:center;color:#fff;text-decoration:none;transition:color .3s ease}.contact .social-links a:hover{color:#958bd6}.contact-content{max-width:800px;justify-content:center;margin:auto;gap:5rem}.contact-content .contact-form{display:flex;flex-direction:column;gap:1rem;grid-column:2}.contact-content .contact-form input,.contact-content .contact-form textarea{width:100%;padding:10px;border:1px solid #000000;border-radius:8px;outline:none;font-size:14px;transition:border-color .3s ease}.contact-content .contact-form input:focus,.contact-content .contact-form textarea:focus{transition:all .2s ease;border:1px solid #1a73e8}.contact-content .contact-form textarea{resize:vertical}.contact-content .contact-form button{background-color:#8a2be2;color:#fff;padding:10px 20px;border:none;border-radius:8px;font-size:16px;cursor:pointer;transition:background-color .3s ease}.contact-content .contact-form button:hover{transition:all .3s ease;background-color:#6a5acd}.contact-content .contact-form button:active{background-color:indigo}@media (max-width: 768px){.hero{height:50vh;padding:1.5rem}.hero-content{max-width:90%}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.3rem}.hero-description{font-size:1rem}.profile-container .profile-pic{width:180px;height:180px}.cta-button{padding:8px 16px;font-size:14px}}@media (max-width: 480px){.hero{padding:1rem}.hero-content{max-width:100%}.hero-title{font-size:2rem}.hero-subtitle{font-size:1.1rem}.hero-description{font-size:.9rem}.profile-container .profile-pic{width:150px;height:150px}.cta-button{padding:6px 12px;font-size:12px}}#about div article p{text-align:left}.contact .social-links{display:none}.contact-content{display:flex;flex-direction:column}body{background:linear-gradient(135deg,#6a0d91 10%,#03f 300%)}.loader{display:flex;justify-content:center;align-items:center;height:100vh}.wheel-and-hamster{--dur: 1s;position:relative;width:12em;height:12em;font-size:14px}.wheel,.hamster,.hamster div,.spoke{position:absolute}.wheel,.spoke{border-radius:50%;top:0;left:0;width:100%;height:100%}.wheel{background:radial-gradient(100% 100% at center,#9990 47.8%,#999 48%);z-index:2}.hamster{animation:hamster var(--dur) ease-in-out infinite;top:50%;left:calc(50% - 3.5em);width:7em;height:3.75em;transform:rotate(4deg) translate(-.8em,1.85em);transform-origin:50% 0;z-index:1}.hamster__head{animation:hamsterHead var(--dur) ease-in-out infinite;background:#f48c25;border-radius:70% 30% 0 100%/40% 25% 25% 60%;box-shadow:0 -.25em #facc9e inset,.75em -1.55em #fce6cf inset;top:0;left:-2em;width:2.75em;height:2.5em;transform-origin:100% 50%}.hamster__ear{animation:hamsterEar var(--dur) ease-in-out infinite;background:#fbb6b6;border-radius:50%;box-shadow:-.25em 0 #f48c25 inset;top:-.25em;right:-.25em;width:.75em;height:.75em;transform-origin:50% 75%}.hamster__eye{animation:hamsterEye var(--dur) linear infinite;background-color:#000;border-radius:50%;top:.375em;left:1.25em;width:.5em;height:.5em}.hamster__nose{background:#f98686;border-radius:35% 65% 85% 15%/70% 50% 50% 30%;top:.75em;left:0;width:.2em;height:.25em}.hamster__body{animation:hamsterBody var(--dur) ease-in-out infinite;background:#fce6cf;border-radius:50% 30%/15% 60% 40% 40%;box-shadow:.1em .75em #f48c25 inset,.15em -.5em #facc9e inset;top:.25em;left:2em;width:4.5em;height:3em;transform-origin:17% 50%;transform-style:preserve-3d}.hamster__limb--fr,.hamster__limb--fl{clip-path:polygon(0 0,100% 0,70% 80%,60% 100%,0% 100%,40% 80%);top:2em;left:.5em;width:1em;height:1.5em;transform-origin:50% 0}.hamster__limb--fr{animation:hamsterFRLimb var(--dur) linear infinite;background:linear-gradient(#facc9e 80%,#f98686 80%);transform:rotate(15deg) translateZ(-1px)}.hamster__limb--fl{animation:hamsterFLLimb var(--dur) linear infinite;background:linear-gradient(#fce6cf 80%,#fbb6b6 80%);transform:rotate(15deg)}.hamster__limb--br,.hamster__limb--bl{border-radius:.75em .75em 0 0;clip-path:polygon(0 0,100% 0,100% 30%,70% 90%,70% 100%,30% 100%,40% 90%,0% 30%);top:1em;left:2.8em;width:1.5em;height:2.5em;transform-origin:50% 30%}.hamster__limb--br{animation:hamsterBRLimb var(--dur) linear infinite;background:linear-gradient(#facc9e 90%,#f98686 90%);transform:rotate(-25deg) translateZ(-1px)}.hamster__limb--bl{animation:hamsterBLLimb var(--dur) linear infinite;background:linear-gradient(#fce6cf 90%,#fbb6b6 90%);transform:rotate(-25deg)}.hamster__tail{animation:hamsterTail var(--dur) linear infinite;background:#fbb6b6;border-radius:.25em 50% 50% .25em;box-shadow:0 -.2em #f98686 inset;top:1.5em;right:-.5em;width:1em;height:.5em;transform:rotate(30deg) translateZ(-1px);transform-origin:.25em .25em}.spoke{animation:spoke var(--dur) linear infinite;background:radial-gradient(100% 100% at center,#999 4.8%,#9990 5%),linear-gradient(#8c8c8c00 46.9%,#a6a6a6 47%,#a6a6a6 52.9%,#a6a6a600 53%) 50% 50% / 99% 99% no-repeat}@keyframes hamster{0%,to{transform:rotate(4deg) translate(-.8em,1.85em)}50%{transform:rotate(0) translate(-.8em,1.85em)}}@keyframes hamsterHead{0%,25%,50%,75%,to{transform:rotate(0)}12.5%,37.5%,62.5%,87.5%{transform:rotate(8deg)}}@keyframes hamsterEye{0%,90%,to{transform:scaleY(1)}95%{transform:scaleY(0)}}@keyframes hamsterEar{0%,25%,50%,75%,to{transform:rotate(0)}12.5%,37.5%,62.5%,87.5%{transform:rotate(12deg)}}@keyframes hamsterBody{0%,25%,50%,75%,to{transform:rotate(0)}12.5%,37.5%,62.5%,87.5%{transform:rotate(-2deg)}}@keyframes hamsterFRLimb{0%,25%,50%,75%,to{transform:rotate(50deg) translateZ(-1px)}12.5%,37.5%,62.5%,87.5%{transform:rotate(-30deg) translateZ(-1px)}}@keyframes hamsterFLLimb{0%,25%,50%,75%,to{transform:rotate(-30deg)}12.5%,37.5%,62.5%,87.5%{transform:rotate(50deg)}}@keyframes hamsterBRLimb{0%,25%,50%,75%,to{transform:rotate(-60deg) translateZ(-1px)}12.5%,37.5%,62.5%,87.5%{transform:rotate(20deg) translateZ(-1px)}}@keyframes hamsterBLLimb{0%,25%,50%,75%,to{transform:rotate(20deg)}12.5%,37.5%,62.5%,87.5%{transform:rotate(-60deg)}}@keyframes hamsterTail{0%,25%,50%,75%,to{transform:rotate(30deg) translateZ(-1px)}12.5%,37.5%,62.5%,87.5%{transform:rotate(10deg) translateZ(-1px)}}@keyframes spoke{0%{transform:rotate(0)}to{transform:rotate(-1turn)}}.not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;text-align:center;background:linear-gradient(135deg,#6a0d91 10%,#03f 300%);color:#fff}.not-found-title{font-size:6rem;margin-bottom:1rem}.not-found-message{font-size:1.5rem;margin-bottom:2rem}.not-found-link{font-size:1rem;color:#007bff;text-decoration:none}.not-found-link:hover{text-decoration:underline}
