:root{--background-color: 255, 251, 245;--font-color: 33, 47, 61;--font-color-light: 233, 223, 251;--border-color: 98, 114, 84;--item-color: 24, 18, 43;--link-color: 24, 18, 43;--nav-background: 119, 67, 219;--nav-color: 255, 251, 245;--nav-active: 247, 239, 229;--nav-height: 7rem;--gradient-background: 119, 67, 219;--gradient-primary: 119, 67, 219;--gradient-secondary: 195, 172, 208;--gradient-third: 255, 251, 245;--card-background: 247, 239, 229;--parcours-background: none;--parcours-dot-primary: 119, 67, 219;--parcours-dot-secondary: 195, 172, 208;--parcours-active-item: 195, 172, 208;--project-nav: 119, 67, 219;--project-active: 195, 172, 208;--project-link: 119, 67, 219;--project-singlepage-background: 255, 251, 245;--project-singlepage-color: 33, 47, 61;--font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu;--banner-color: 255, 251, 245;--contact-background: 247, 239, 229;--contact-link: 119, 67, 219;--footer-background: 119, 67, 219;--footer-color: 255, 251, 245;--footer-active: 247, 239, 229}*{margin:0;padding:0;box-sizing:border-box;text-decoration:none;font-family:var(--font-family);line-height:1.5}body{background-color:rgb(var(--background-color))}a{color:rgb(var(--link-color))}[data-theme=dark]{--font-color: 0, 0, 61;--link-color: 0, 0, 61}.container{max-width:1200px;margin:auto;padding:2rem}@media screen and (max-width: 600px){.container{padding:2rem 1rem}}.section{scroll-margin-top:var(--nav-height);padding-bottom:128px}.icon-align{display:inline-flex;align-items:center;gap:8px}.a-propos{display:flex;gap:64px}.a-propos .a-propos-image{min-width:200px;height:200px;border-radius:100px;overflow:hidden;box-shadow:0 0 50px rgba(var(--gradient-primary),.5)}.a-propos .a-propos-image img{width:100%;height:100%;object-fit:cover}.a-propos .a-propos-content{text-align:justify}.a-propos .a-propos-content h3{margin-bottom:32px}.a-propos .a-propos-content .a-propos-text{margin-bottom:64px}.a-propos :is(.a-propos-stack,.a-propos-os,.a-propos-hobbies){display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin:16px auto}.a-propos :is(.a-propos-stack,.a-propos-os,.a-propos-hobbies) img{height:2rem;filter:grayscale(100%);transition:.2 ease}.a-propos :is(.a-propos-stack,.a-propos-os,.a-propos-hobbies) img:hover{filter:grayscale(0)}@media screen and (max-width: 900px){.a-propos{justify-content:center;flex-wrap:wrap}}.parcours-item-line{z-index:2;display:flex;position:relative;align-items:center}.parcours-item-line .parcours-item-wrapper .date-dot{width:18px;height:18px;border-radius:9px;background-color:rgb(var(--parcours-dot-primary));left:50%;top:50%;position:absolute;transform:translate(-50%,-50%)}.parcours-item-line .parcours-item-wrapper :is(.date-dot:hover,.date-dot.active){cursor:pointer;width:25px;height:25px;transition:.1s ease}.parcours-item-line .parcours-item-wrapper .date-dot.noContent{cursor:inherit}.parcours-item-line .parcours-item-wrapper :is(.date-dot:hover,.date-dot.active):before{opacity:0}.parcours-item-line .parcours-item-wrapper .date-dot:before{content:"";border:1px rgb(var(--parcours-dot-secondary)) solid;left:50%;top:50%;position:absolute;transform:translate(-50%,-50%);animation:heartbeat 1s ease-out infinite;-webkit-animation:heartbeat 1s ease-out infinite;border-radius:20px;opacity:1}@keyframes heartbeat{0%{width:0;height:0}to{width:25px;height:25px}}@-webkit-keyframes heartbeat{0%{width:0;height:0}to{width:25px;height:25px}}.parcours-item-line .parcours-item-wrapper{width:50%;padding:32px}.parcours-item-line .parcours-item-wrapper .parcours-item{border-radius:16px;padding:16px;background-color:rgb(var(--card-background))}.parcours-item-line:nth-child(2n){justify-content:end;flex-direction:row-reverse}.parcours-item-line span.item-date{padding:32px;font-weight:700}.slide-fade-enter-active{transition:all .3s ease-out}.slide-fade-leave-active{transition:all .3s cubic-bezier(1,.5,.8,1)}.slide-fade-enter-from,.slide-fade-leave-to{transform:translate(20px);opacity:0}@media screen and (max-width: 900px){.parcours-item-line .parcours-item-wrapper{width:100%;padding:32px 0}.parcours-item-line span.item-date.active{display:none}.parcours-item-line .parcours-item-wrapper .parcours-item{padding:32px}.parcours-item-line .parcours-item-wrapper .date-dot.active:not(.noContent){left:100%}}.school{display:inline-block;padding:16px 32px;width:320px;text-align:center;transition:.1s ease-out;cursor:pointer}.school:is(:hover,.active){background-color:rgba(var(--parcours-active-item),.1)}.school .school-logo{display:inline-block;height:70px;min-width:70px;max-width:70px}.school .school-logo img{width:100%;height:100%;object-fit:contain}.school .school-title{font-weight:700;font-size:1.2rem}.school .school-date{font-size:.9rem;font-style:italic;font-weight:lighter;margin-bottom:4px}.school .school-subtitle{color:rgb(var(--parcours-dot-primary));font-weight:600;margin-bottom:16px}.experience{display:flex;gap:32px;font-size:.8rem}.experience:not(:last-child){margin-bottom:32px}.experience .experience-title{font-weight:700;font-size:1.2rem}.experience .experience-date{font-size:.9rem;font-style:italic;font-weight:lighter;margin-bottom:4px}.experience .experience-logo{height:70px;min-width:70px;max-width:70px}.experience .experience-logo img{width:100%;height:100%;object-fit:contain}.experience .experience-subtitle{color:rgb(var(--parcours-dot-primary));font-weight:600;margin-bottom:16px}.experience ul.experience-description{list-style:square;font-size:.9rem}@media screen and (max-width: 900px){.experience{flex-wrap:wrap;justify-content:center}}.parcours-section-wrapper{background-color:rgba(var(--parcours-background))}.parcours{position:relative;padding:26px 0}.start-dot,.end-dot{z-index:1;position:absolute;width:24px;height:24px;border-radius:10px;background-color:rgba(var(--gradient-secondary, .6));left:50%;transform:translate(-50%)}.start-dot{top:0}.end-dot{bottom:0}span.timebar{z-index:-1;background:rgb(var(--gradient-primary));width:4px;position:absolute;left:50%;transform:translate(-50%);opacity:0;transition:.2s linear}span.timebar.full{height:100%;top:0;opacity:1}span.timebar.upper{top:0;height:50%;opacity:1}span.timebar.lower{top:50%;height:50%;opacity:1}.parcours:after{content:"";background:rgba(var(--gradient-secondary),.6);width:4px;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)}.schools{margin-top:64px;font-size:.8rem;display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.project-search-bar[data-v-1d5da88f]{max-width:600px;position:relative;margin:auto auto 16px}input[data-v-1d5da88f]{padding:.6rem .4rem;border-radius:3px;border:1px solid rgb(226,226,225);outline:none;width:100%;margin-top:.6rem}input[data-v-1d5da88f]:focus{outline:2px solid rgb(28,114,216)}.project{border-radius:16px;flex-basis:350px;overflow:hidden;background-color:rgb(var(--card-background));padding-bottom:8px;cursor:pointer;transition:.2s ease;margin:auto}.project:hover{transform:scale(1.05)}.project>div:not(:first-child){padding:10px 16px}.default-background-image{background:rgb(var(--gradient-primary));background:linear-gradient(45deg,rgba(var(--gradient-primary),1) 45%,rgba(var(--gradient-secondary),1) 90%,rgba(var(--gradient-third),1))}.project .project-image{display:flex;align-items:center;justify-content:center;width:100%;height:150px;background:rgb(var(--gradient-primary));background:linear-gradient(45deg,rgba(var(--gradient-primary),1) 45%,rgba(var(--gradient-secondary),1) 90%,rgba(var(--gradient-third),1));text-align:center}.project .project-image img.cover{width:100%;height:100%;object-fit:cover}.project .project-image :is(p,span){font-size:2rem;font-weight:bolder;color:rgb(var(--nav-color))}.project .project-tag{display:flex;flex-wrap:wrap;gap:8px}.tag{font-weight:400;border:1px var(--086a16e2) solid;color:var(--086a16e2);padding:2px 16px;border-radius:8px}.tag:is(.tag-button:hover,.active){background-color:var(--086a16e2);color:rgb(var(--background-color))}.project-filter[data-v-c9b6849c]{max-width:600px;position:relative;margin:auto auto 64px}.project-filter .project-filter-tags[data-v-c9b6849c]{display:flex;justify-content:center;flex-wrap:wrap;gap:16px}.tag-button[data-v-c9b6849c]{cursor:pointer;-webkit-user-select:none;user-select:none;transition:.1s ease-out}.projects{display:flex;flex-wrap:wrap;justify-content:space-between;gap:32px}.projects-move,.projects-enter-active,.projects-leave-active{transition:all .5s ease}.projects-enter-from,.projects-leave-to{opacity:0;transform:translate(30px)}.projects-leave-active{position:absolute}.contact-section-wrapper{background-color:rgb(var(--contact-background))}.contact-section-wrapper .home-title{margin-bottom:128px}.contact{display:flex;justify-content:center;flex-wrap:wrap;gap:64px}.contact .contact-icon{font-size:2rem;display:flex;justify-content:center;align-items:center;gap:8px;margin-bottom:16px;-webkit-user-select:none;user-select:none}.contact .contact-item{min-width:325px;text-align:center;transition:.1s ease-out}.contact .contact-item:hover{transform:scale(1.05)}.contact .contact-item:hover>a.contact-link{transition:.1s ease-out;color:rgb(var(--contact-link))}.navbar{background:transparent;position:fixed;z-index:5;width:100vw;transition:.2s linear}.navbar.scroll{background:rgb(var(--nav-background));box-shadow:0 0 30px rgb(var(--gradient-secondary),.6)}.navbar .navbar-wrapper{display:flex;justify-content:space-between;align-items:center;height:var(--nav-height)}.navbar .navbar-title{font-size:2rem;font-weight:700}.navbar .navbar-menu ul{display:flex;gap:40px;list-style:none}.navbar :is(.navbar-menu ul li a,a){color:rgb(var(--nav-color))}.navbar .navbar-menu ul li a{transition:.2s linear;border-bottom:1px transparent solid}.navbar .navbar-menu ul li a:is(.active,:focus,:hover){color:rgb(var(--nav-active));border-bottom:1px rgb(var(--nav-active)) solid}.navbar .navbar-hamburger{display:none;position:relative;width:40px;height:40px;cursor:pointer;transition:transform .5s}.navbar .navbar-hamburger span{position:absolute;top:50%;left:50%;transform:translate(-50%) translateY(-50%);display:block;width:22px;height:2px;background-color:#fff;transition:background .5s}.navbar .navbar-hamburger span:before,.navbar .navbar-hamburger span:after{content:"";position:absolute;top:0;left:0;transform:translateY(-6px);display:block;width:22px;height:2px;background-color:#fff;transition:transform .5s}.navbar .navbar-hamburger span:after{transform:translateY(6px)}.navbar .navbar-hamburger.is-opened span{background:transparent}.navbar .navbar-hamburger.is-opened span:before{transform:translateY(0) rotate(45deg)}.navbar .navbar-hamburger.is-opened span:after{transform:translateY(0) rotate(-45deg)}.navbar .navbar-hamburger.is-opened{transform:rotate(180deg)}@media screen and (max-width: 600px){.navbar .navbar-menu{position:fixed;display:flex;justify-content:center;align-items:center;top:0;width:100%;height:100vh;right:-100%;background-color:rgba(var(--nav-background),.6);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:1.5rem;transition:.8s ease-out}.navbar .navbar-menu.is-opened{right:0}.navbar .navbar-menu ul{display:flex;flex-direction:column;align-items:center}.navbar .navbar-hamburger{display:unset}}.footer{width:100vw;background:rgb(var(--footer-background));text-align:center;color:rgb(var(--footer-color))}.home-banner{display:flex;align-items:center;width:100vw;height:800px;background:rgb(var(--gradient-background));background:radial-gradient(circle,rgba(var(--gradient-primary),1) 60%,rgba(var(--gradient-secondary),1) 95%,rgba(var(--gradient-third),.8));background-position:center;-webkit-backdrop-filter:brightness(10%);backdrop-filter:brightness(10%);color:rgb(var(--banner-color));text-align:center;animation:5s linear 2s infinite alternate banner;margin-bottom:128px}.home-banner .banner-content p:first-child{font-size:2rem}.home-banner .banner-content p:last-child{font-size:4rem;font-weight:700}.mouse{position:absolute;bottom:50px;left:50%;transform:translate(-50%);width:40px;height:70px;border:3px solid rgb(var(--banner-color));border-radius:60px;cursor:pointer}.mouse:before{content:"";width:10px;height:10px;position:absolute;top:8px;left:50%;transform:translate(-50%);background-color:rgb(var(--banner-color));border-radius:50%;opacity:1;animation:wheel 2s infinite;-webkit-animation:wheel 2s infinite}@keyframes wheel{to{opacity:0;top:50px}}@-webkit-keyframes wheel{to{opacity:0;top:50px}}@keyframes banner{0%{background-size:100%}to{background-size:120%}}@-webkit-keyframes banner{0%{background-size:100%}to{background-size:120%}}.home-title{margin-bottom:64px}@media screen and (max-width: 600px){.home-banner .banner-content p:last-child{font-size:2.5rem}}
