:root{--primary:#1b62dd;--primary-1:#2461cb;--status-active:#14be14;--status-error:#ef4444;--text:#0e111b;--text-secondary:#454a58;--bg:#f9fbfc;--bg-secondary:#e0e7ef;--bg-opacity:#e0e7efde;--gray:#b8bcc9;--bg-gray:#e9ebf3;--shadow:#e5eaf3aa;--container-size:60rem;--theme-transition:background-color 400ms ease-in-out,color 400ms ease-in-out,border 400ms ease-in-out,box-shadow 400ms ease-in-out,filter 400ms ease-in-out;--hover-transition:all 150ms ease}.dark{--primary:#3c7cea;--primary-1:#1f65dd;--status-active:#1cb81c;--text:#e3e4e7;--text-secondary:#e3e4e7;--bg:#0c1017;--bg-secondary:#1b222f;--bg-opacity:#1b222fde;--gray:#32353c;--bg-gray:#222224;--shadow:#3c3d3faa}*{box-sizing:border-box;font-family:sans-serif}::-moz-placeholder{font-family:sans-serif}::placeholder{font-family:sans-serif}html{font-family:sans-serif;scroll-behavior:smooth;-webkit-user-select:none;-moz-user-select:none;user-select:none}body,html{transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}body{background-color:#f9fbfc;background-color:var(--bg);color:#0e111b;color:var(--text);margin:0}body:has(#loader.load-active){overflow:hidden}body main{transition:filter .5s linear}h1,h2,h3,h4,h5,h6,p{margin:0}p{font-size:12pt;line-height:1.5}p,span{transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}a{color:inherit;text-decoration:none}ul{list-style-type:none;margin:0;padding:0;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}img{margin:auto;pointer-events:none;width:100%}section{contain-intrinsic-size:80rem;content-visibility:auto}section>div{margin:auto;max-width:60rem;max-width:var(--container-size);padding:4rem 1rem}section:first-child>div{padding-top:10rem}section:first-child>div>p{line-height:1.75}section>div>a{cursor:pointer;font-size:14pt;margin:1rem auto;position:relative}section>div>a:has(>h2):after{bottom:0;color:#b8bcc9;color:var(--gray);content:"#";font-size:18pt;left:-2rem;opacity:0;position:absolute;top:0;transition:all .15s ease;transition:var(--hover-transition)}section>div:hover>a:after{opacity:1}section>div>a>h2{display:table;margin-bottom:.5rem;position:relative;z-index:3}section>div>a>h2:after{background-color:#e9ebf3;background-color:var(--bg-gray);border-radius:.25rem;bottom:0;content:"";height:.4rem;left:105%;position:absolute;top:50%;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out,top .2s linear,bottom .2s linear,left .2s linear,width .2s linear,height .2s linear;transition:var(--theme-transition),top .2s linear,bottom .2s linear,left .2s linear,width .2s linear,height .2s linear;width:2rem;z-index:2}.dark section>div>a>h2:after{background-color:#e5eaf377;height:.2rem;left:0;top:90%;width:5rem}section .section-action{display:table;margin:auto;text-align:center}section .social-links{display:-webkit-box;display:-ms-flexbox;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin:2rem 0 .5rem}section .social-links img{height:2rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition);width:2rem}.dark section .social-links img{filter:brightness(0) invert(1)}button{background-color:transparent;background-color:initial;border:none;color:#0e111b;color:var(--text);cursor:pointer;font-size:11pt;padding:0;text-align:center;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}.btn-outline,.btn-primary{border:1px solid;border-radius:.5rem;box-shadow:0 0 1px transparent;font-size:11pt;letter-spacing:1px;padding:.75rem 1.5rem;text-align:center;text-transform:uppercase;transition:all .15s ease;transition:var(--hover-transition)}.btn-outline:hover,.btn-primary:hover{box-shadow:0 2px 2px #8885;letter-spacing:2px}.btn-outline{background-color:transparent;border-color:#0e111b;border-color:var(--text)}.btn-outline:hover{background-color:#e0e7ef;background-color:var(--bg-secondary)}.btn-primary{background-color:#1b62dd;background-color:var(--primary);border-color:#1b62dd;border-color:var(--primary);color:#f2f5f7}.btn-primary:hover,.dark .btn-primary{background-color:#2461cb;background-color:var(--primary-1);border-color:#2461cb;border-color:var(--primary-1)}.dark .btn-primary:hover{background-color:#1b62dd;background-color:var(--primary);border-color:#1b62dd;border-color:var(--primary)}#loader{align-items:center;backdrop-filter:blur(0);display:-webkit-box;display:-ms-flexbox;display:flex;height:100vh;inset:0;justify-content:center;opacity:0;position:fixed;transition:opacity 1s ease-in-out,visibility 1s ease-in-out,background-color .5s ease-in,z-index 1s ease-in-out;visibility:hidden;width:100%;z-index:-9}#loader.load-active{backdrop-filter:blur(5px);background-color:#f9fbfc;background-color:var(--bg);opacity:1;visibility:visible;z-index:9}#loader>div{display:-webkit-box;display:-ms-flexbox;display:flex;gap:1rem}#loader.load-animate>div{animation:loadRotation 2s infinite;animation-delay:.5s;animation-direction:alternate-reverse}@keyframes loadRotation{0%,25%,75%,to{gap:0}0%,to{transform:rotate(-1turn)}50%{gap:1rem;transform:rotate(1turn)}}#loader span:before{background-color:#0e111b;background-color:var(--text);border-radius:25%;content:"";display:block;height:.5rem;width:.5rem}#loader span:not(:nth-child(2)):before{animation:loadScale 2s infinite;animation-delay:1s;border-radius:50%}@keyframes loadScale{0%,to{border-radius:50%;transform:scale(1)}25%,50%,75%{border-radius:25%;transform:scale(2)}}#loader span:nth-child(2):before{animation:loadCenter 2s infinite;border-radius:50%}@keyframes loadCenter{0%,25%,75%,to{border-radius:50%;transform:scale(1)}50%{border-radius:25%;transform:scale(5)}}.error{background-color:#f9fbfc;background-color:var(--bg);inset:0;overflow:hidden auto;position:fixed;z-index:8}.error>div{margin:10vh auto auto;max-width:50rem;padding:1rem}header{border-radius:1rem;padding:0 1rem;position:fixed;top:1rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition);width:100%;z-index:7}header:has(.menu-open),header:has(.scrolled){z-index:8}header .scrolled{padding:.5rem 1rem}header>div{align-items:center;backdrop-filter:blur(5px);background-color:transparent;border-radius:1rem;box-shadow:0 1px 1rem .5rem transparent;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:space-between;margin:auto;max-width:60rem;max-width:var(--container-size);padding:2rem 1rem;position:relative;transition:.35s ease-in;z-index:inherit}header:has(.scrolled)>div{background-color:#f9fbfc;background-color:var(--bg);box-shadow:0 1px 1rem .5rem #e5eaf3aa;box-shadow:0 1px 1rem .5rem var(--shadow)}header>div .header-left,header>div .header-right{align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;flex-shrink:0;gap:.5rem}header>div .header-left:after{background-color:#14be14;background-color:var(--status-active);border-radius:50%;content:"";height:.5rem;width:.5rem}header>div .header-left .header-name{align-items:center;background-color:#1b62dd;background-color:var(--primary);border-radius:50%;color:#f2f2f2;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:16pt;font-weight:700;height:3rem;justify-content:center;padding:.5rem;transition:all .1s,color .25s;width:3rem}header .header-left .header-name:hover,header:has(.scrolled) .header-left .header-name{background-color:transparent;border-radius:.5rem;color:#1b62dd;color:var(--primary);justify-content:flex-start;padding:.25rem 0;transition:all .1s ease-in-out;width:100%}header .header-left .header-name:hover,header:has(.scrolled) .header-left .header-name:hover{background-color:#e0e7ef;background-color:var(--bg-secondary)}header .header-left .header-name span{display:inline-block;transform:translateY(-1px)}header .header-left .header-name .header-name-full{margin-right:0;opacity:0;transition:all .15s ease;transition:var(--hover-transition);width:0}header .header-left .header-name:hover .header-name-full,header:has(.scrolled) .header-left .header-name .header-name-full{opacity:1;width:auto}header .header-left .header-name:hover .header-name-full:not(:last-child),header:has(.scrolled) .header-left .header-name .header-name-full:not(:last-child){margin-right:.5rem}header nav{flex:1}header nav ul{align-items:stretch;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:flex-end;margin:0 1rem}header nav ul li{position:relative}header .header-right .header-mobile button,header .header-right .preferences .preferences-lang select,header nav ul li div{background-color:transparent;border:none;border-radius:.5rem;margin:.5rem 0;padding:.25rem 1.25rem;transition:all .15s ease;transition:var(--hover-transition)}header nav ul li div{box-shadow:0 1px 1px 0 transparent;transition:all .15s ease;transition:var(--hover-transition)}header:has(.scrolled) .header-right ul li div{margin:.25rem 0}header nav ul li div:hover{background-color:#e0e7ef;background-color:var(--bg-secondary);box-shadow:0 1px 1px 0 #e9ebf3;box-shadow:0 1px 1px 0 var(--bg-gray)}header nav ul .nav-active:after,header nav ul .nav-subactive:after{border-radius:.5rem;bottom:0;content:"";left:50%;position:absolute;transform:translateX(-50%) translateY(0) scale(1);transition:all .15s ease;transition:var(--hover-transition);z-index:1}header nav ul .nav-active:after{animation-delay:2s;animation-duration:.2s;animation-fill-mode:forwards;animation-name:navActive;animation-timing-function:ease-out;background-color:#2461cb;background-color:var(--primary-1);width:50%}@keyframes navActive{0%{height:0;width:0}to{height:.25rem;width:50%}}header nav ul .nav-subactive:after{animation-delay:2s;animation-duration:.2s;animation-fill-mode:backwards;animation-name:navSubactive;animation-timing-function:ease-out;background-color:#14be14;background-color:var(--status-active);height:.5rem;width:.5rem}@keyframes navSubactive{0%{height:.25rem;width:2rem}to{height:.5rem;width:.5rem}}header nav ul .nav-active:has(a:hover):after,header nav ul .nav-subactive:has(a:hover):after{height:.25rem;transform:translateX(-50%) translateY(calc(-50% - .25rem)) scale(.5);width:2rem}header .header-right .header-mobile{display:none;margin-left:.5rem;padding:0}header .header-right .header-mobile button{align-items:center;border:1px solid #b8bcc9;border:1px solid var(--gray);display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:center;padding:.25rem}header:has(.menu-open) .header-right .header-mobile button{border:1px solid transparent}header .header-right .header-mobile button img{transform:rotate(0deg);transition:transform .5s cubic-bezier(.19,1,.22,1)}.dark header:has(.menu-open) .header-right .header-mobile button img,header:has(.menu-open) .header-right .header-mobile button img{transform:rotate(180deg)}.dark header .header-right .header-mobile img{filter:brightness(0) invert(1);transform:rotate(0deg);transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out,transform .5s cubic-bezier(.19,1,.22,1);transition:var(--theme-transition),transform .5s cubic-bezier(.19,1,.22,1)}header .header-right .preferences{border-left:1px solid #e0e7ef;border-left:1px solid var(--bg-secondary);padding-left:.5rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}header .header-right .preferences,header .header-right .preferences button>div{align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;gap:.5rem;justify-content:center}header .header-right .preferences .preferences-lang{position:relative}header .header-right .preferences .preferences-lang select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:none;color:transparent;cursor:pointer;outline:none;padding:.5rem .25em;text-align:center;transition:all .15s ease;transition:var(--hover-transition)}header .header-right .preferences .preferences-lang:after{content:attr(data-flag);font-size:14pt;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}header .header-right .header-mobile button:hover,header .header-right .preferences .preferences-lang select:hover{background-color:#e0e7ef;background-color:var(--bg-secondary)}header .header-right .preferences .preferences-lang select:before{font-size:14pt;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}header .header-right .preferences .preferences-lang select option{color:var(--text-color);font-size:12pt;padding:.5rem}.dark header .header-right .preferences .preferences-lang select option{color:var(--text-color)}header .header-right .preferences #theme-toggle{background-color:#e0e7ef;background-color:var(--bg-secondary);border:none;border-radius:50%;box-shadow:0 0 0 0 transparent;cursor:pointer;overflow:hidden;padding:.5rem;transition:all .15s ease,box-shadow .15s ease-in;transition:var(--hover-transition),box-shadow .15s ease-in}header .header-right .preferences #theme-toggle:hover{background-color:#b8bcc9;background-color:var(--gray);box-shadow:0 0 15rem 5rem #454a58;box-shadow:0 0 15rem 5rem var(--text-secondary)}header .header-right .preferences #theme-toggle:focus{box-shadow:0 0 0 0 transparent}header .header-right .preferences .theme-changed{animation:themeToggle 1s ease-in backwards;box-shadow:0 0 0 0 #f9fbfc;box-shadow:0 0 0 0 var(--bg)}@keyframes themeToggle{50%{box-shadow:0 0 5rem 10rem #f9fbfc;box-shadow:0 0 5rem 10rem var(--bg)}to{box-shadow:0 0 10rem 100rem transparent}}footer{background-color:#0c1017;color:#e3e4e7;overflow:hidden;position:relative;z-index:7}footer>div{margin:auto;max-width:60rem;max-width:var(--container-size);padding:4rem 1rem 2rem}footer .footer-container{align-items:stretch;border-bottom:1px solid #e0e7ef25;display:-webkit-box;display:-ms-flexbox;display:flex;gap:8rem;justify-content:space-between;padding-bottom:1.5rem}footer .footer-container .footer-info{flex:1}footer .footer-container .footer-info .footer-speciality{font-weight:600}footer .footer-container .footer-info .footer-description{margin-top:1rem}footer .footer-container .footer-info .footer-description p{font-size:11pt}footer .footer-container .footer-network>div:not(:first-child){margin-top:2rem}footer .footer-container .footer-info .footer-cv{display:table;margin-top:1rem}footer .footer-container .footer-info .footer-cv a div{border:1px solid #b8bcc9;border-radius:.5rem;font-weight:600;padding:.25rem 1rem;text-align:center;transition:all .15s ease;transition:var(--hover-transition)}footer .footer-container .footer-info .footer-cv div:hover{background-color:#e0e7ef;background-color:var(--bg-secondary);color:#1b62dd;color:var(--primary)}footer .footer-container .footer-links{align-items:flex-start;display:-webkit-box;display:-ms-flexbox;display:flex;flex:1;flex-wrap:wrap;gap:2rem}footer .footer-container .footer-info .footer-name{font-size:16pt}footer .footer-container .footer-link{flex:1}footer .footer-container .footer-link strong{display:inline-block;font-size:13pt;margin-bottom:.75rem}footer .footer-container .footer-link ul{flex:1;font-size:11pt}footer .footer-container .footer-link ul li{background-color:transparent;border-radius:.5rem;display:table;margin:.25rem 0;padding:.1rem;transition:all .15s ease;transition:var(--hover-transition)}footer .footer-container .footer-link ul li:hover{background-color:#222224;text-decoration-line:underline;text-underline-offset:.2rem}footer .footer-container .footer-network ul{align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;gap:1rem;margin-top:.5rem}footer .footer-container .footer-network ul li a img{filter:invert(1) brightness(1.2) contrast(.9);width:2rem}footer .footer-end{color:#b8bcc9;font-size:10pt;padding-top:1.5rem;text-align:center}footer .footer-end p{font-size:11pt;margin-bottom:.1rem}footer .footer-end a{font-weight:700}#interests{text-align:justify}#hero>div{align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;flex-direction:column;gap:1rem;justify-content:center;margin:4rem auto;max-width:100%;min-height:100dvh;position:relative;text-align:center;width:60rem;width:var(--container-size)}#hero .hero-info{color:#1b62dd;color:var(--primary);margin-top:4rem}#hero .hero-info h1{font-size:36pt;font-weight:900;margin-top:-.5rem}#hero .hero-info span{font-size:18pt;font-weight:500}#hero .hero-text>p{font-size:14pt;font-weight:500;margin:auto}#hero .hero-text{line-height:1.5}#hero .hero-action{display:grid;grid-template-columns:repeat(2,minmax(14rem,1fr));grid-gap:.5rem;gap:.5rem}#hero .hero-action a{white-space:nowrap}#about,#connect-with-me,#latest-projects,#main-stacks{overflow:hidden;position:relative}#about:before,#connect-with-me:before,#latest-projects:before,#main-stacks:before{animation-delay:.5s;animation-duration:1s;animation-fill-mode:forwards;animation-timing-function:ease-in;content:"";inset:0;margin:auto;position:absolute;z-index:4}#connect-with-me:before,#main-stacks:before{animation-name:mainStackBg;background:-webkit-gradient(linear,left top,right top,color-stop(15%,transparent),color-stop(#e0e7ef),color-stop(85%,transparent));background:linear-gradient(90deg,transparent 15%,#e0e7ef,transparent 85%);background:-webkit-gradient(linear,left top,right top,color-stop(15%,transparent),color-stop(var(--bg-secondary)),color-stop(85%,transparent));background:linear-gradient(to right,transparent 15%,var(--bg-secondary),transparent 85%);height:100%}@keyframes mainStackBg{0%{opacity:0;width:0}to{opacity:.75;width:100%}}#main-stacks>div{padding:4rem 0;position:relative;text-align:center;z-index:5}#connect-with-me>div>a>h2,#main-stacks>div>a>h2{margin:auto}#connect-with-me>div>a:after,#main-stacks>div>a:after{content:""}#connect-with-me>div>a>h2:after,#main-stacks>div>a>h2:after{visibility:hidden}#main-stacks ul{flex-wrap:wrap;gap:1rem;margin:1rem auto 2rem;max-width:16rem;transition:all .15s ease;transition:var(--hover-transition)}#main-stacks ul,#main-stacks ul li{align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:center}#main-stacks ul li{list-style:none}#main-stacks ul li img{width:2rem}#whatido .whatido-container>div{align-items:center;display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1rem;gap:1rem;margin-bottom:6rem}#whatido .whatido-container>div:last-child{margin-bottom:0}#whatido .whatido-container>div:nth-child(2n-1)>div:first-child{order:2}#whatido .whatido-container h3{color:#1b62dd;color:var(--primary);margin-bottom:1rem}#whatido .whatido-container a{display:table;margin-top:1rem}#whatido .whatido-container a strong{font-size:10pt}#whatido .whatido-container .cylinder-container{align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;justify-content:center;margin:1rem;perspective:50rem}#whatido .whatido-container .cylinder-container .cylinder{animation:rotateCylinder 15s ease-in-out infinite;min-height:5rem;position:relative;transform-style:preserve-3d;width:100%}@keyframes rotateCylinder{0%,10%{transform:rotateX(0deg)}25%,40%{transform:rotateX(-120deg)}60%,75%{transform:rotateX(-240deg)}90%,to{transform:rotateX(-1turn)}}#whatido .whatido-container .cylinder-container .cylinder:hover{animation-play-state:paused}#whatido .whatido-container .cylinder-container .cylinder-face{align-items:center;backface-visibility:hidden;border-radius:.5rem;box-shadow:0 .1rem .25rem #e5eaf3aa;box-shadow:0 .1rem .25rem var(--shadow);cursor:alias;display:-webkit-box;display:-ms-flexbox;display:flex;flex-direction:column;height:100%;justify-content:center;padding:3rem 1rem;position:absolute;text-align:center;transform:scale(1);transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition);width:100%}#whatido .whatido-container .cylinder-container .cylinder-face:hover{background-color:#b8bcc9;background-color:var(--gray);transform:scale(1.5)}#whatido .whatido-container .cylinder-container .cylinder-face span{color:#1b62dd;color:var(--primary);font-size:12pt;letter-spacing:2px;text-transform:uppercase}#whatido .whatido-container .cylinder-container .cylinder-face p{font-size:9pt}#whatido .whatido-container .cylinder-container .cylinder-face:first-child{background:linear-gradient(45deg,#4b5ba423,transparent,#4b5ba423);transform:rotateX(0deg) translateZ(2rem)}#whatido .whatido-container .cylinder-container .cylinder-face:nth-child(2){background:linear-gradient(135deg,#4b5ba423,transparent,#4b5ba423);transform:rotateX(120deg) translateZ(2rem)}#whatido .whatido-container .cylinder-container .cylinder-face:nth-child(3){background:-webkit-gradient(linear,left top,right top,from(#4b5ba423),color-stop(transparent),to(#4b5ba423));background:linear-gradient(90deg,#4b5ba423,transparent,#4b5ba423);transform:rotateX(240deg) translateZ(2rem)}#whatido .whatido-container .neuron-container{align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:8rem;justify-content:center;perspective:10rem}#whatido .whatido-container .neuron-container .neuron{height:7rem;position:relative;transform-style:preserve-3d;width:10rem}#whatido .whatido-container .neuron-container .neuron-core{animation:pulseCore 5s ease-in-out infinite;background-color:#1b62dd;background-color:var(--primary);border-radius:50%;box-shadow:0 0 1rem #e5eaf3aa;box-shadow:0 0 1rem var(--shadow);height:1rem;left:50%;position:absolute;top:50%;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition);width:1rem}@keyframes pulseCore{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.2)}}#whatido .whatido-container .neuron-container .neuron-node{align-items:center;backdrop-filter:blur(2px);border:1px solid #b8bcc9;border:1px solid var(--gray);border-radius:.5rem;box-shadow:0 0 .25rem #e5eaf3aa;box-shadow:0 0 .25rem var(--shadow);cursor:alias;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:center;padding:.5rem 1rem;position:absolute;transform:scale(1);transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition);z-index:1}#whatido .whatido-container .neuron-container .neuron-node:hover{transform:scale(1.1)}#whatido .whatido-container .neuron-container .neuron-node span{color:#1b62dd;color:var(--primary);font-size:10pt;font-weight:600;letter-spacing:1px;text-transform:uppercase}#whatido .whatido-container .neuron-container .node-1{background:-webkit-gradient(linear,left top,right top,from(#4b5ba423),color-stop(transparent),to(#4b5ba423));background:linear-gradient(90deg,#4b5ba423,transparent,#4b5ba423);display:table;left:0;margin:auto;padding:.45rem 1rem .5rem;right:0;top:-.25rem}#whatido .whatido-container .neuron-container .node-2{background:linear-gradient(45deg,#4b5ba423,transparent,#4b5ba423);bottom:.25rem;left:-2.5rem}#whatido .whatido-container .neuron-container .node-3{background:linear-gradient(135deg,#4b5ba423,transparent,#4b5ba423);bottom:.25rem;right:-2.5rem}#whatido .whatido-container .neuron-container .neuron-connection{background:-webkit-gradient(linear,left top,right top,from(#1b62dd),to(transparent));background:linear-gradient(90deg,#1b62dd,transparent);background:-webkit-gradient(linear,left top,right top,from(var(--primary)),to(transparent));background:linear-gradient(90deg,var(--primary),transparent);height:.1rem;opacity:.7;position:absolute;transform-origin:left center}#whatido .whatido-container .neuron-container .conn-1{animation:pulseConnection 2s ease-in-out infinite;left:50%;top:50%;transform:translateY(-50%) rotate(-90deg);width:3rem}#whatido .whatido-container .neuron-container .conn-2{animation:pulseConnection 2s ease-in-out .67s infinite;left:50%;top:50%;transform:translateY(-50%) rotate(145deg);width:55px}#whatido .whatido-container .neuron-container .conn-3{animation:pulseConnection 2s ease-in-out 1.33s infinite;left:50%;top:50%;transform:translateY(-50%) rotate(35deg);width:55px}@keyframes pulseConnection{0%,to{box-shadow:none;opacity:.25}50%{box-shadow:0 0 10px #1b62dd;box-shadow:0 0 10px var(--primary);opacity:1}}#whatido .whatido-container .data-chart-container{align-items:flex-end;display:-webkit-box;display:-ms-flexbox;display:flex;height:8rem;justify-content:center}#whatido .whatido-container .data-chart{align-items:flex-end;display:-webkit-box;display:-ms-flexbox;display:flex;gap:.75rem;height:100%}#whatido .whatido-container .data-chart .data-bar{align-items:flex-end;background:linear-gradient(45deg,#4b5ba423,transparent,#4b5ba423);border:1px solid #b8bcc9;border:1px solid var(--gray);border-bottom:none;border-radius:.5rem .5rem 0 0;box-shadow:0 .1rem .5rem #e5eaf3aa;box-shadow:0 .1rem .5rem var(--shadow);cursor:alias;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:center;overflow:hidden;padding-bottom:.5rem;position:relative;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition);width:3rem}#whatido .whatido-container .data-chart .data-bar span{color:#1b62dd;color:var(--primary);font-size:8pt;font-weight:600;letter-spacing:.5px;padding:.25rem 0;position:relative;text-orientation:mixed;text-transform:uppercase;transform:rotate(180deg);writing-mode:vertical-rl;z-index:1}#whatido .whatido-container .data-chart .bar-1{animation:growBar1 6s ease-in infinite;height:60%}#whatido .whatido-container .data-chart .bar-2{animation:growBar2 6s ease-in infinite;height:75%}#whatido .whatido-container .data-chart .bar-3{animation:growBar3 6s ease-in infinite;height:85%}@keyframes growBar1{0%,to{height:60%}33%{height:90%}66%{height:50%}}@keyframes growBar2{0%,to{height:85%}33%{height:40%}66%{height:65%}}@keyframes growBar3{0%,to{height:45%}33%{height:75%}66%{height:100%}}#whatido .whatido-container .data-chart:hover .data-bar{animation-play-state:paused}#about:before,#latest-projects:before{background:-webkit-gradient(linear,left top,right top,color-stop(15%,transparent),color-stop(#e0e7ef),color-stop(85%,transparent));background:linear-gradient(90deg,transparent 15%,#e0e7ef,transparent 85%);background:-webkit-gradient(linear,left top,right top,color-stop(15%,transparent),color-stop(var(--bg-secondary)),color-stop(85%,transparent));background:linear-gradient(to right,transparent 15%,var(--bg-secondary),transparent 85%);border-bottom-left-radius:50%;border-bottom-right-radius:50%;margin-left:-25%;opacity:.5;width:150%}#latest-projects>div{position:relative;z-index:5}#latest-projects ul{margin-top:2rem}#latest-projects ul:not(:last-child){margin-bottom:0}#latest-projects ul li{margin-bottom:3rem;padding:.5rem 0;position:relative}#latest-projects ul li .latest-projects-info{position:relative;z-index:3}#latest-projects ul li .latest-projects-info h3,#latest-projects ul li .latest-projects-info span{display:block;margin:0 2rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#latest-projects ul li .latest-projects-info span{font-size:11pt}#latest-projects ul li .latest-projects-info h3{font-size:18pt;margin-bottom:.25rem;width:50%}#latest-projects ul li .latest-projects-info span{color:#b8bcc9;color:var(--gray)}#latest-projects ul li .latest-projects-info .latest-projects-description{background-color:#e0e7efde;background-color:var(--bg-opacity);border-radius:1rem;margin-top:.5rem;padding:1.5rem 2rem;position:relative;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition);width:75%;z-index:4}#latest-projects ul li .latest-projects-image{border-radius:1rem;height:100%;overflow:hidden;position:absolute;right:0;top:5%;transition:all .15s ease;transition:var(--hover-transition);width:40%;z-index:2}#latest-projects ul li .latest-projects-image img{height:100%;-o-object-fit:cover;object-fit:cover;transform:scale(1);transition:all .15s ease;transition:var(--hover-transition);width:100%}#latest-projects ul li:hover img{transform:scale(1.1)}#why-me .why-me-container ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));grid-gap:2rem 6rem;gap:2rem 6rem;margin-top:2rem;padding:0 0 0 4rem}#why-me .why-me-container ol li::marker{color:#454a58;color:var(--text-secondary);content:"0"counter(list-item) "  ";font-size:24pt;font-weight:700;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#why-me .why-me-container ol li{border-left:.5rem ridge #e0e7ef;border-left:.5rem ridge var(--bg-secondary);cursor:cell;padding:0 1rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#why-me .why-me-container ol li h4{background-color:#e0e7ef;background-color:var(--bg-secondary);border-radius:.5rem;color:#1b62dd;color:var(--primary);display:table;font-size:18pt;font-weight:700;letter-spacing:0;margin:.5rem 0;padding:.25rem 1rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out,letter-spacing .15s;transition:var(--theme-transition),letter-spacing .15s}#why-me .why-me-container ol li:hover h4{letter-spacing:1px}#about>div{position:relative;z-index:5}#about p,#interests p{line-height:1.8;margin-bottom:2rem;text-align:justify}#experiences .experiences-container{align-items:stretch;display:-webkit-box;display:-ms-flexbox;display:flex;gap:1rem;position:relative}#experiences .experiences-container .experiences-line{background-color:#e0e7ef;background-color:var(--bg-secondary);width:.5rem}#experiences .experiences-container .experiences-line,#experiences .experiences-container .experiences-line .experiences-current-line{transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#experiences .experiences-container .experiences-line .experiences-current-line{background:-webkit-gradient(linear,left top,left bottom,from(transparent),to(#1b62dd));background:linear-gradient(transparent,#1b62dd);background:-webkit-gradient(linear,left top,left bottom,from(transparent),to(var(--primary)));background:linear-gradient(transparent,var(--primary));border-radius:2rem;height:3rem;opacity:.5;position:sticky;top:6rem;width:inherit}#experiences .experiences-container .experiences-list-item{display:-webkit-box;display:-ms-flexbox;display:flex;flex-direction:column}#experiences .experiences-container .experiences-list-item>:not(:last-child){border-bottom:1px solid #e0e7ef;border-bottom:1px solid var(--bg-secondary);transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#experiences .experiences-container .experiences-list-item>:first-child{padding-top:2rem}#experiences .experiences-container .experiences-list-item>:last-child{padding-bottom:0}#experiences .experiences-container .experiences-item{align-items:start;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;gap:1rem;padding:4rem 0}#experiences .experiences-container .experiences-item .experiences-aside{max-width:25%;min-width:25%;position:sticky;top:8rem}#experiences .experiences-container .experiences-item .experiences-aside>strong{display:inline-block;font-size:14pt;margin-bottom:1rem}#experiences .experiences-container .experiences-item .experiences-aside>h4{font-weight:400}#experiences .experiences-container .experiences-item .experiences-aside>h5 i{display:inline-block;font-size:13pt;font-weight:600;margin-top:.5rem}#experiences .experiences-container .experiences-item .experiences-detail{border-left:1px solid #e0e7ef;border-left:1px solid var(--bg-secondary);padding-left:1rem;text-align:justify;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#experiences .experiences-container .experiences-item .experiences-detail .experiences-detail-list ul{color:#454a58;color:var(--text-secondary);list-style-type:disc;margin-left:2rem;margin-top:1rem}#experiences .experiences-container .experiences-item .experiences-detail .experiences-detail-list ul li{margin-top:.5rem}#certificates .certificates-container ul{align-items:stretch;display:-webkit-box;display:-ms-flexbox;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-top:1rem}#certificates .certificates-container ul li{width:calc(50% - .75rem)}#certificates .certificates-container .certificates-item{border:1px solid #e0e7ef;border:1px solid var(--bg-secondary);border-radius:1rem;box-shadow:0 .15rem .1rem #e5eaf3aa;box-shadow:0 .15rem .1rem var(--shadow);cursor:pointer;padding:1rem;transition:all .15s ease,background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--hover-transition),var(--theme-transition)}#certificates .certificates-container .certificates-item:hover{box-shadow:0 .25rem .2rem #e5eaf3aa;box-shadow:0 .25rem .2rem var(--shadow)}#certificates .certificates-container .certificates-image{background-color:#b8bcc9;background-color:var(--gray);border-radius:.5rem;height:12rem;margin-bottom:1rem;overflow:hidden}#certificates .certificates-container .certificates-description{text-align:center}#certificates .certificates-container .certificates-description h4{font-size:14pt}#skills .skills-container,#skills .skills-container>div{margin-top:4rem}#skills .skills-container>div:first-child{margin-top:0}#skills .skills-container ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));grid-gap:1rem;gap:1rem;margin:.5rem 0}#skills .skills-container ul li{transform:scale(1);transition:all .15s ease;transition:var(--hover-transition)}#skills .skills-container ul li:hover{transform:scale(1.05)}#skills .skills-container ul li .skills-item{border:1px solid #e0e7ef;border:1px solid var(--bg-secondary);border-radius:.5rem;cursor:pointer;padding:1rem;position:relative;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#skills .skills-container ul li .skills-item .skills-item-info{align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;gap:.75rem}#skills .skills-container ul li .skills-item .skills-item-info h3{font-size:13pt}#skills .skills-container ul li .skills-item .skills-item-info .skills-item-logo{display:-webkit-box;display:-ms-flexbox;display:flex;height:2rem;justify-content:center;width:2rem}#skills .skills-container ul li .skills-item .skills-item-bar{background-color:#e0e7ef;background-color:var(--bg-secondary);border-radius:1rem;bottom:.5rem;height:.2rem;left:0;margin:auto;overflow:hidden;position:absolute;right:0;transform:scale(1);transition:width 175ms ease-in-out,height .15s ease-in-out,background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:width 175ms ease-in-out,height .15s ease-in-out,var(--theme-transition);width:calc(100% - 2rem)}#skills .skills-container ul li .skills-item .skills-item-bar>div{background-color:#1b62dd;background-color:var(--primary);height:100%;position:absolute;top:0;width:0}#projects .projects-container{margin-top:2rem}#projects .projects-container>ul>li{border-top:.15rem dashed #e0e7ef;border-top-color:var(--bg-secondary);padding-bottom:1rem;padding-top:1.5rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#projects .projects-container>ul>li:first-child{border-top:none;margin-top:0}#projects .projects-container .projects-item{cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;gap:1rem}#projects .projects-container .projects-item .projects-image{align-items:center;border:2px solid #b8bcc9;border:2px solid var(--gray);border-radius:.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;height:10rem;justify-content:center;max-width:14rem;min-width:14rem;overflow:hidden;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#projects .projects-container .projects-item .projects-image span{color:#b8bcc9;color:var(--gray);font-size:10pt;padding:0 .5rem;text-align:center}#projects .projects-container .projects-item .projects-image img{height:100%;-o-object-fit:cover;object-fit:cover;transform:scale(1);transition:all .15s ease;transition:var(--hover-transition);width:100%}#projects .projects-container .projects-item:hover .projects-image img{transform:scale(1.1)}#projects .projects-container .projects-item .projects-info{padding:.5rem}#projects .projects-container .projects-item .projects-info span{color:#454a58;color:var(--text-secondary);font-weight:200}#projects .projects-container .projects-item .projects-info h3{margin-bottom:.5rem}#projects .projects-container .projects-item .projects-info ul{display:-webkit-box;display:-ms-flexbox;display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}#project-detail .project-section .project-tech span,#projects .projects-container .projects-item .projects-info ul li,.dialog-certificate ul li,.dialog-experience .tech-tags span{align-items:center;background-color:#e9ebf3;background-color:var(--bg-gray);border-radius:8rem;color:#1b62dd;color:var(--primary);cursor:help;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:11pt;font-weight:500;justify-content:center;padding:.25rem .75rem;transform:scale(1);transition:all .15s ease,background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--hover-transition),var(--theme-transition)}#project-detail .project-section .project-tech span:hover,#projects .projects-container .projects-item .projects-info ul li:hover,.dialog-certificate ul li:hover,.dialog-experience .tech-tags span:hover{transform:scale(1.1)}#contact>div{padding-bottom:2rem}#contact .contact-form-container{padding:2rem 1rem .5rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#contact .contact-form-container form fieldset{border:1px solid #b8bcc9;border:1px solid var(--gray);border-radius:.75rem;margin:1rem auto;max-width:40rem;padding:1rem 2rem}#contact .contact-form-container form fieldset,#contact .contact-form-container form fieldset legend{transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#contact .contact-form-container form fieldset legend{border:1px solid #b8bcc9;border:1px solid var(--gray);border-radius:.5rem;color:#454a58;color:var(--text-secondary);cursor:alias;font-family:Courier New,Courier,monospace;font-size:18pt;font-weight:600;letter-spacing:-2px;margin:0 2rem;padding:0 2rem}#contact .contact-form-container form fieldset legend:hover{background-color:#e9ebf3;background-color:var(--bg-gray)}#contact .contact-form-container form fieldset label{align-items:center;cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;margin-bottom:.5rem}#contact .contact-form-container form fieldset label:after{background-position:50%;background-repeat:no-repeat;background-size:contain;content:"";height:1rem;margin-left:.5rem;opacity:.5;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition);width:1rem}.dark #contact .contact-form-container form fieldset label:after{filter:invert(1)}#contact .contact-form-container form fieldset label[for=name]:after{background-image:url(/public/ionicons/person-outline.svg)}#contact .contact-form-container form fieldset label[for=email]:after{background-image:url(/public/ionicons/mail-outline.svg)}#contact .contact-form-container form fieldset label[for=message]:after{background-image:url(/public/ionicons/chatbox-ellipses-outline.svg)}#contact .contact-form-container form fieldset>div{margin-bottom:1rem}#contact .contact-form-container form fieldset>div:last-child{margin-bottom:0}#contact .contact-form-container form fieldset input,#contact .contact-form-container form fieldset textarea{background-color:#f9fbfc;background-color:var(--bg);border:1px solid #b8bcc9;border:1px solid var(--gray);border-radius:.5rem;color:#0e111b;color:var(--text);font-size:11pt;padding:.5rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition);width:100%}#contact .contact-form-container form fieldset textarea{resize:vertical}#contact .contact-form-container form fieldset input:focus,#contact .contact-form-container form fieldset textarea:focus{outline:2px solid #2461cb;outline:2px solid var(--primary-1)}#contact .contact-form-container form fieldset button>div{align-items:center;border-radius:2rem;display:-webkit-box;display:-ms-flexbox;display:flex;gap:0}#contact .contact-form-container form fieldset button>div strong{text-wrap:nowrap}#contact .contact-form-container form fieldset button>div img{margin-left:-10%;transition:all .15s ease;transition:var(--hover-transition);width:0}#contact .contact-form-container form fieldset button>div:hover img{margin-left:10%;width:1rem}#contact .contact-form-container form fieldset .form-message{animation:fadeIn .3s ease-in-out;border-radius:.5rem;display:none;font-weight:500;margin-bottom:1rem;padding:.5rem 1rem;text-align:center}#contact .contact-form-container form fieldset .form-message.form-message-success{background-color:#14be14;background-color:var(--status-active);color:#fff}#contact .contact-form-container form fieldset .form-message.form-message-error{background-color:#ef4444;background-color:var(--status-error);color:#fff}#contact .contact-form-container form fieldset .form-message.form-message-show{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}#connect-with-me>div{padding:4rem;position:relative;z-index:5}#connect-with-me ul{display:-webkit-box;display:-ms-flexbox;display:flex;flex-wrap:wrap;justify-content:center;margin:auto}#connect-with-me ul li{flex-shrink:0;width:6rem}#connect-with-me ul li a{align-items:center;border-radius:.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;flex-direction:column;justify-content:center;padding:.5rem 1.5rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#connect-with-me ul li a:hover{background-color:#e9ebf3;background-color:var(--bg-gray)}#connect-with-me ul li a img{height:2rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition);width:2rem}.dark #connect-with-me ul li a img{filter:brightness(0) invert(1)}#connect-with-me ul li a span{font-size:10pt}#project-detail nav{margin-bottom:1rem}#project-detail nav a{display:table}#project-detail nav a div{align-items:center;background-color:transparent;border-radius:.5rem;color:gray;display:-webkit-box;display:-ms-flexbox;display:flex;gap:.5rem;padding:.5rem 0;transition:all .15s ease;transition:var(--hover-transition)}#project-detail nav a div:hover{background-color:#e9ebf3;background-color:var(--bg-gray)}#project-detail nav a div img,#project-detail nav a div span{margin:0;width:auto}#project-detail nav a div img{filter:invert(.5)}#project-detail nav a div span{width:100%}#project-detail .project-header{margin-bottom:2rem;text-align:center}#project-detail .project-header span{background-color:#1b62dd;background-color:var(--primary);border-radius:2rem;color:#fff;display:inline-block;font-size:10pt;font-weight:600;letter-spacing:1px;padding:.25rem 1rem;text-transform:uppercase}#project-detail .project-header h1{color:#0e111b;color:var(--text);font-size:28pt;margin-bottom:.5rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#project-detail .project-header p{color:#454a58;color:var(--text-secondary);font-size:13pt}#project-detail .project-image{border:1px solid #e0e7ef;border:1px solid var(--bg-secondary);border-radius:1rem;margin-bottom:2rem;max-height:24rem;overflow:hidden;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition);width:100%}#project-detail .project-image img{-o-object-fit:cover;object-fit:cover}#project-detail .project-content{margin:auto;max-width:50rem}#project-detail .project-section{margin-bottom:3rem}#project-detail .project-section .project-tech{display:-webkit-box;display:-ms-flexbox;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}#project-detail .project-section h2{border-bottom:2px solid #e0e7ef;border-bottom:2px solid var(--bg-secondary);color:#1b62dd;color:var(--primary);font-size:16pt;margin-bottom:1rem;padding-bottom:.5rem;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition)}#project-detail .project-section p{line-height:1.7;margin-bottom:1rem}#project-detail .project-section ul{list-style:disc;padding-left:1.5rem}#project-detail .project-section ul li{line-height:1.6;margin-bottom:.5rem}#project-detail .project-links{display:-webkit-box;display:-ms-flexbox;display:flex;flex-wrap:wrap;gap:1rem}#project-detail .project-links a{align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;gap:.5rem}#project-detail .project-links a img{height:1rem;margin:initial;transition:background-color .4s ease-in-out,color .4s ease-in-out,border .4s ease-in-out,box-shadow .4s ease-in-out,filter .4s ease-in-out;transition:var(--theme-transition);width:1rem}.dark #project-detail .project-links a img{filter:brightness(0) invert(1)}#project-detail .project-links a.disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.dialog-overlay{background-color:#e5eaf3aa;background-color:var(--shadow);bottom:0;contain:layout paint style;contain-intrinsic-size:100vh;content-visibility:auto;left:0;opacity:0;position:fixed;right:0;top:0;transition:all .3s ease;visibility:hidden;z-index:9}.dialog-overlay.show{opacity:1;visibility:visible}.dialog-container{background-color:#f9fbfc;background-color:var(--bg);border:1px solid #f9fbfc;border:1px solid var(--bg);border-radius:1rem;box-shadow:0 20px 60px #0000004d;left:50%;max-height:90vh;max-width:90vw;opacity:0;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%) scale(.9);transition:transform .3s ease,opacity .3s ease,visibility .3s ease;visibility:hidden;width:600px;z-index:1001}.dialog-container.show{opacity:1;transform:translate(-50%,-50%) scale(1);visibility:visible}.dialog-close{background-color:#f9fbfc;background-color:var(--bg);border:none;border-radius:50%;color:#0e111b;color:var(--text);cursor:pointer;font-size:18pt;height:2.5rem;position:absolute;right:1rem;top:1rem;transition:background-color .2s ease;width:2.5rem;z-index:10}.dialog-close:hover{background:#b8bcc9;background:var(--gray)}.dialog-content{max-height:calc(90vh - 2rem);overflow-y:auto;padding:2rem}.dialog-experience>.dialog-experience-header{border-bottom:1px solid #e0e7ef;border-bottom:1px solid var(--bg-secondary);margin-top:1rem;text-align:center}.dialog-experience>div:not(:first-child){margin:2rem 0}.dialog-experience h3{color:#1b62dd;color:var(--primary);font-size:14pt;margin-bottom:.25rem}.dialog-experience .company-name{font-size:14pt;font-weight:600;margin-bottom:.25rem}.dialog-experience .experience-dates{font-size:11pt}.dialog-experience h4{color:#1b62dd;color:var(--primary);font-size:14pt;margin-bottom:.5rem}.dialog-experience ul{list-style:disc;margin-top:.25rem;padding-left:1.25rem}.dialog-experience ul li{font-size:11pt;line-height:1.5;margin-bottom:.25rem}.dialog-experience .skill-tags,.dialog-experience .tech-tags{display:-webkit-box;display:-ms-flexbox;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.dialog-experience .skill-tags span,.dialog-experience .tech-tags span{background:#e0e7ef;background:var(--bg-secondary);border-radius:1rem;font-size:10pt;padding:.25rem .75rem}.dialog-experience .tech-tags span{color:#1b62dd;color:var(--primary)}.dialog-certificate{text-align:center}.dialog-certificate img{background-color:#e0e7ef;background-color:var(--bg-secondary);border-radius:.5rem;margin-bottom:1rem;max-height:24rem;-o-object-fit:contain;object-fit:contain;width:100%}.dialog-certificate h3{color:#1b62dd;color:var(--primary)}.dialog-certificate p{font-weight:300;margin-top:1rem}.dialog-certificate ul{display:-webkit-box;display:-ms-flexbox;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:1rem}.dialog-skill{text-align:center}.dialog-skill:before{animation:showSkillDialog .5s ease-in forwards;background-color:#e0e7efde;background-color:var(--bg-opacity);border-bottom-right-radius:2rem;border-top-right-radius:2rem;bottom:0;content:"";height:100%;left:0;position:absolute;right:0}@keyframes showSkillDialog{0%{opacity:.5;width:0}75%{opacity:.1;width:90%}to{opacity:0;width:100%}}.dialog-skill .skill-icon{animation:showSkill .5s ease-in;height:6rem;margin:0 auto 1rem;width:6rem}@keyframes showSkill{0%{opacity:0;transform:scale(.5)}50%{transform:scale(.5)}to{opacity:1;transform:scale(1)}}.dialog-skill .skill-icon img{-o-object-fit:contain;object-fit:contain}.dialog-skill h3{color:#1b62dd;color:var(--primary);margin-bottom:1rem}.dialog-skill .skill-description{line-height:1.6;margin-bottom:1.5rem}.dialog-skill .skill-why{background-color:#e0e7ef;background-color:var(--bg-secondary);border-radius:.5rem;border-top:.25rem solid #1b62dd;border-top:.25rem solid var(--primary);overflow:hidden;padding:1rem;text-align:left}.dialog-skill .skill-why h4{color:#1b62dd;color:var(--primary);margin-bottom:.5rem}@media (max-height:50rem){#hero>div{min-height:auto;padding-top:4rem}}@media (max-width:50rem){:root{--container-size:100%}p{font-size:11pt}section>div{padding:2rem 1rem}section>div>a{display:table;font-size:16pt;margin:0;position:relative}section>div>a:before{left:calc(100% + .5rem)}section:first-child>div{padding-top:6rem}.btn-outline,.btn-primary,button{font-size:9pt}body:has(.menu-open) main{filter:blur(1px) grayscale(.25)}header:has(.menu-open)>div{background-color:#e0e7efde;background-color:var(--bg-opacity);border-bottom-left-radius:1rem;border-bottom-right-radius:1rem;box-shadow:0 0 .5rem #e0e7ef;box-shadow:0 0 .5rem var(--bg-secondary);overflow:hidden;padding:0 .5rem}header>div{flex-wrap:wrap;justify-content:space-between;padding:0}header .scrolled{padding:0 .5rem}header>div .header-left .header-name{background-color:transparent;color:#1b62dd;color:var(--primary);font-size:13pt;height:auto;padding:.25rem 0;width:auto}header .header-left .header-name .header-name-full{font-size:13pt;opacity:1;width:100%}header .header-left .header-name .header-name-full:not(:last-child){margin-right:.5rem}header nav{flex:1;min-width:100%;order:3}header nav ul{align-items:center;flex-direction:column;margin:0;max-height:0;opacity:0;overflow:hidden;transition:max-height .2s ease-in-out,opacity .1s ease,margin-top .4s linear}header:has(.menu-open) nav ul{border-top:1px solid #b8bcc9;border-top:1px solid var(--gray);margin-top:.5rem;max-height:16rem;opacity:1;transition:max-height .2s ease-in-out,opacity 1s ease,margin-top .4s linear,border-top .3s linear}header nav ul li{font-weight:600;text-align:center;width:100%}header nav ul li div{margin:0;padding:.75rem 0}header nav ul .nav-active:after{bottom:10%;width:75%}@keyframes navActive{0%{height:0;width:0}to{height:.25rem;width:10%}}header .header-right .header-mobile{align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}header>div .header-right{flex-direction:row-reverse;gap:.5rem}header .header-right .preferences{border-left:none;padding-left:0}footer .footer-container{gap:3rem;text-align:center}footer .footer-container div{margin:auto}footer .footer-container,footer .footer-container .footer-links{flex-direction:column}footer .footer-container .footer-links{gap:2rem}footer .footer-container .footer-link ul,footer .footer-container .footer-network ul{display:-webkit-box;display:-ms-flexbox;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;width:100%}#hero>div{gap:1rem}#hero .hero-info .hero-image{height:8rem;width:8rem}#hero .hero-info h1{font-size:26pt;line-height:1;margin-top:.25rem}#hero .hero-info span{font-size:14pt}#hero .hero-text p{font-size:12pt}#hero .hero-action{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}#main-stacks div>a{gap:1rem .75rem;margin:.25rem auto;max-width:14rem}#main-stacks a ul li img{width:1.75rem}#whatido .whatido-container h3{margin-bottom:.5rem}#whatido .whatido-container button{margin-top:.5rem}#whatido .whatido-container>div{grid-template-columns:1fr;margin-bottom:4rem;text-align:center}#whatido .whatido-container a{margin-inline:auto}#whatido .whatido-container>div:nth-child(2n-1)>div:first-child{order:1}#whatido .whatido-container>div:nth-child(2n-1)>div:last-child{order:2}#latest-projects ul li .latest-projects-info{line-height:1.2;padding:1.5rem 1rem .5rem;text-align:center;z-index:3}#latest-projects ul li .latest-projects-info h3,#latest-projects ul li .latest-projects-info span{color:#e3e4e7;margin:0;width:100%}#latest-projects ul li .latest-projects-info .latest-projects-description{border-radius:.5rem;margin-top:.5rem;padding:1rem 1.5rem;width:100%}#latest-projects ul li .latest-projects-image{filter:brightness(.5);top:0;width:100%;z-index:2}#why-me .why-me-container ol{grid-template-columns:auto;padding:0 0 0 2.5rem}#why-me .why-me-container ol li::marker{font-size:18pt}#why-me .why-me-container ol li h4{font-size:14pt}#experiences .experiences-container .experiences-list-item>:not(:last-child){border-bottom-style:dashed;border-bottom-width:.15rem}#experiences .experiences-container .experiences-item .experiences-aside{max-width:none;min-width:100%;position:static;text-align:center}#experiences .experiences-container .experiences-item .experiences-aside>strong{margin-bottom:.25rem}#experiences .experiences-container .experiences-item{flex-direction:column}#experiences .experiences-container .experiences-item .experiences-detail{border-left:none;border-top:1px solid #e0e7ef;border-top:1px solid var(--bg-secondary);padding-left:0;padding-top:.5rem}#experiences .experiences-container .experiences-item .experiences-detail .experiences-detail-list ul{font-size:11pt;margin-left:.75rem;text-align:start}#certificates .certificates-container ul li{width:100%}#skills .skills-container ul{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr))}#projects .projects-container .projects-item{flex-direction:column}#projects .projects-container .projects-item .projects-image{height:14rem;max-width:none;min-width:100%}#projects .projects-container .projects-item .projects-info h3{font-size:18pt;line-height:1.25;margin-bottom:0}#contact .contact-container{padding:2rem 0}#contact .contact-container form fieldset{margin:1rem 0;padding:.5rem;width:100%}#contact .contact-container form fieldset legend{font-size:13pt}#contact .contact-container form fieldset label{font-size:11pt}#connect-with-me>div{padding:1rem}#connect-with-me>div>a{margin:.5rem auto}#project-detail>div{padding-top:6rem}#project-detail .project-header h1{font-size:20pt}#project-detail .project-header .project-subtitle{font-size:12pt}#project-detail .project-image{max-height:18rem}#project-detail .project-links{flex-direction:column}#project-detail .project-links a{justify-content:center}.dialog-container{max-height:95vh;width:95vw}.dialog-content{padding:1.5rem}}@media (max-width:25rem){section:first-child>div{padding:8rem 1rem}header>div{gap:0 1rem}header>div>*{margin:auto}#hero .hero-action{grid-template-columns:minmax(100%,1fr)}#experiences .experiences-container .experiences-line{display:none}#projects .projects-container .projects-item .projects-image{height:10rem;min-width:auto}#contact .contact-form-container form fieldset{border:none;padding:0}#contact .contact-form-container form fieldset legend{font-size:12pt;margin:.5rem 0;text-align:center;width:100%}#connect-with-me ul li{width:100%}#connect-with-me ul li a{-moz-column-gap:.5rem;column-gap:.5rem;flex-direction:row;justify-content:flex-start;padding:.5rem 0}#connect-with-me ul li a img{margin:initial}}@media (prefers-reduced-motion:reduce){*{animation:none!important}}