@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap);:root{--primary-gradient:linear-gradient(135deg,#667eea,#764ba2);--secondary-gradient:linear-gradient(135deg,#f093fb,#f5576c);--accent-gradient:linear-gradient(135deg,#4facfe,#00f2fe);--success-gradient:linear-gradient(135deg,#43e97b,#38f9d7);--dark-gradient:linear-gradient(135deg,#1a1a2e,#16213e);--hero-gradient:linear-gradient(135deg,#0f0c29,#302b63 50%,#24243e);--bg-dark:#0f0f1e;--bg-dark-secondary:#1a1a2e;--bg-dark-tertiary:#16213e;--text-primary:#fff;--text-secondary:#b5b5c3;--text-muted:#6c757d;--accent-primary:#667eea;--accent-secondary:#764ba2;--accent-cyan:#00f2fe;--accent-purple:#a78bfa;--accent-pink:#f093fb;--glass-bg:#ffffff0d;--glass-border:#ffffff1a;--shadow-sm:0 2px 4px #0000001a;--shadow-md:0 4px 6px #0000001a;--shadow-lg:0 10px 15px #00000026;--shadow-xl:0 20px 25px #0003;--shadow-glow:0 0 20px #667eea4d;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2.5rem;--spacing-xl:4rem;--font-primary:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-heading:"Space Grotesk","Inter",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0f0f1e;background:var(--bg-dark);color:#fff;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-primary);letter-spacing:.01em;line-height:1.7;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}h1,h2,h3,h4,h5,h6{font-family:Space Grotesk,Inter,sans-serif;font-family:var(--font-heading);font-weight:700;letter-spacing:-.02em;line-height:1.3}h1{font-size:clamp(2.5rem,5vw,4.5rem)}h1,h2{margin-bottom:1.5rem;margin-bottom:var(--spacing-md)}h2{font-size:clamp(2rem,4vw,3.5rem)}h3{font-size:clamp(1.5rem,3vw,2.5rem);margin-bottom:1rem;margin-bottom:var(--spacing-sm)}p{color:#b5b5c3;color:var(--text-secondary);font-size:clamp(1rem,2vw,1.125rem);line-height:1.8}@media (max-width:768px){:root{--spacing-xl:2.5rem;--spacing-lg:1.5rem;--spacing-md:1rem}body{font-size:16px}h1{margin-bottom:1rem;margin-bottom:var(--spacing-sm)}h2,h3{margin-bottom:.5rem;margin-bottom:var(--spacing-xs)}*{transform:none!important}}@media (max-width:480px){:root{--spacing-xl:2rem;--spacing-lg:1.25rem;--spacing-md:0.75rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (prefers-contrast:high){:root{--glass-bg:#ffffff1a;--glass-border:#ffffff4d}}.App{overflow-x:hidden;position:relative;text-align:center}.App:before{background:radial-gradient(circle at 20% 50%,#667eea1a 0,#0000 50%),radial-gradient(circle at 80% 80%,#a78bfa1a 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:0}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.languageFlag{filter:grayscale(.3);opacity:.7;transition:all .3s cubic-bezier(.4,0,.2,1)}.languageFlag:hover{cursor:pointer;filter:grayscale(0);opacity:1;transform:scale(1.1)}#presentation{align-items:center;background:var(--hero-gradient);display:flex;min-height:100vh;min-height:100dvh;overflow:hidden;position:relative}#presentation:after,#presentation:before{pointer-events:none}#presentation .light-rays{animation:light-rays-underwater 30s ease-in-out infinite;background:linear-gradient(110deg,#0000,#0000 46%,#a78bfa14 48%,#a78bfa2e 49.5%,#a78bfa33 50%,#a78bfa2e 50.5%,#a78bfa14 52%,#0000 54%,#0000),linear-gradient(125deg,#0000,#0000 36%,#667eea12 38%,#667eea26 39.5%,#667eea2b 40%,#667eea26 40.5%,#667eea12 42%,#0000 44%,#0000),linear-gradient(95deg,#0000,#0000 56%,#764ba20f 58%,#764ba224 59.5%,#764ba229 60%,#764ba224 60.5%,#764ba20f 62%,#0000 64%,#0000),linear-gradient(140deg,#0000,#0000 26%,rgba(139,92,246,.065) 28%,#8b5cf621 29.5%,#8b5cf626 30%,#8b5cf621 30.5%,rgba(139,92,246,.065) 32%,#0000 34%,#0000),linear-gradient(88deg,#0000,#0000 15%,#7c3aed0d 17%,#7c3aed1a 18.5%,#7c3aed1f 19%,#7c3aed1a 19.5%,#7c3aed0d 21%,#0000 23%,#0000);height:200%;left:-50%;opacity:.85;pointer-events:none;position:absolute;top:-50%;transform:translateZ(0);width:200%;will-change:transform;z-index:0}#presentation>#presentationContainer{position:relative;z-index:3}#presentation:before{animation:stars-move-1 45s linear infinite,stars-pulse-1 8s ease-in-out infinite;animation-delay:0s,0s;box-shadow:150px 300px 0 0 #a78bfae6,150px 300px 0 3px #a78bfa80,150px 300px 0 8px #a78bfa33,1350px 150px 0 5px #667eeacc,1350px 150px 0 12px #667eea4d,550px 500px 0 1px #764ba2b3,1450px 250px 0 0 #8b5cf699,1450px 250px 0 4px #8b5cf64d,950px 400px 0 4px #9333ead9,950px 400px 0 10px #9333ea59,250px 550px 0 0 #667eea99,1550px 100px 0 2px #a78bfabf,1550px 100px 0 7px #a78bfa4d,650px 350px 0 0 #764ba2b3,1200px 200px 0 3px #8b5cf6cc,1200px 200px 0 9px #8b5cf64d,350px 450px 0 1px #9333eab3,350px 450px 0 5px #9333ea40,1420px 280px 0 0 #667eea99,820px 480px 0 5px #a78bfad9,820px 480px 0 13px #a78bfa4d,120px 180px 0 1px #764ba2a6,1320px 380px 0 2px #8b5cf6cc,1320px 380px 0 8px #8b5cf64d,520px 80px 0 0 #9333ea99,1520px 580px 0 4px #667eeacc,1520px 580px 0 11px #667eea4d,280px 420px 0 1px #a78bfab3,280px 420px 0 6px #a78bfa40,1180px 120px 0 0 #764ba2a6,680px 320px 0 3px #8b5cf6d9,680px 320px 0 10px #8b5cf64d,1480px 520px 0 1px #9333eab3,1480px 520px 0 5px #9333ea40,480px 220px 0 0 #667eea99,1380px 420px 0 2px #a78bfacc,1380px 420px 0 7px #a78bfa4d,780px 360px 0 0 #764ba2a6,1080px 560px 0 4px #8b5cf6d9,1080px 560px 0 12px #8b5cf659,380px 260px 0 1px #9333eab3;filter:blur(1.5px)}#presentation:after,#presentation:before{border-radius:50%;content:"";height:1px;left:0;pointer-events:none;position:absolute;top:0;transform:translateZ(0);width:1px;will-change:transform,filter;z-index:1}#presentation:after{animation:stars-move-2 55s linear infinite,stars-pulse-2 12s ease-in-out infinite;animation-delay:0s,4s;box-shadow:1300px 200px 0 1px #a78bfacc,1300px 200px 0 4px #a78bfa66,1300px 200px 0 10px #a78bfa26,400px 400px 0 0 #667eeaa6,1500px 100px 0 3px #764ba2d9,1500px 100px 0 9px #764ba259,200px 300px 0 1px #8b5cf6b3,200px 300px 0 5px #8b5cf640,1400px 500px 0 0 #9333ea99,600px 600px 0 4px #667eeacc,600px 600px 0 11px #667eea4d,1100px 150px 0 1px #a78bfab3,1100px 150px 0 6px #a78bfa40,300px 450px 0 0 #764ba2a6,1600px 250px 0 5px #8b5cf6d9,1600px 250px 0 13px #8b5cf64d,850px 350px 0 1px #9333eab3,1250px 550px 0 2px #667eeabf,1250px 550px 0 8px #667eea4d,450px 80px 0 0 #a78bfa99,1450px 280px 0 3px #764ba2cc,1450px 280px 0 10px #764ba24d,750px 480px 0 1px #8b5cf6b3,750px 480px 0 5px #8b5cf640,1150px 180px 0 0 #9333eaa6,550px 320px 0 4px #667eead9,550px 320px 0 12px #667eea4d,1550px 420px 0 1px #a78bfab3,1550px 420px 0 6px #a78bfa40,150px 520px 0 0 #764ba2a6,1350px 620px 0 2px #8b5cf6cc,1350px 620px 0 7px #8b5cf64d,950px 220px 0 1px #9333eab3,50px 360px 0 0 #667eea99,1050px 460px 0 5px #a78bfad9,1050px 460px 0 13px #a78bfa59,650px 560px 0 1px #764ba2b3,650px 560px 0 5px #764ba240;filter:blur(2px)}@keyframes gradient-shift{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}@keyframes stars-move-1{0%{opacity:0;transform:translateY(600px) translateX(100px) scale(.7)}15%{opacity:1}85%{opacity:1}to{opacity:0;transform:translateY(-600px) translateX(-150px) scale(1.3)}}@keyframes stars-move-2{0%{opacity:0;transform:translateY(-500px) translateX(-80px) scale(1.2)}12%{opacity:1}88%{opacity:1}to{opacity:0;transform:translateY(700px) translateX(120px) scale(.8)}}@keyframes stars-pulse-1{0%,to{filter:blur(1.5px) brightness(1)}15%{filter:blur(3px) brightness(1.6)}30%{filter:blur(1px) brightness(1.2)}55%{filter:blur(4px) brightness(2)}70%{filter:blur(2px) brightness(1.3)}}@keyframes stars-pulse-2{0%,to{filter:blur(2px) brightness(1.1)}20%{filter:blur(1px) brightness(1.4)}45%{filter:blur(3.5px) brightness(1.8)}65%{filter:blur(2.5px) brightness(1.2)}85%{filter:blur(1.5px) brightness(1.6)}}@keyframes space-rays{0%{transform:translateX(0) translateY(0) rotate(0deg)}to{transform:translateX(50%) translateY(50%) rotate(5deg)}}@keyframes light-rays-underwater{0%{transform:translateX(-20%) translateY(-15%) scale(1) skewY(0deg)}25%{transform:translateX(-5%) translateY(5%) scale(1.02,.98) skewY(.3deg)}50%{transform:translateX(15%) translateY(20%) scale(.98,1.02) skewY(-.2deg)}75%{transform:translateX(10%) translateY(8%) scale(1.01,.99) skewY(.2deg)}to{transform:translateX(-20%) translateY(-15%) scale(1) skewY(0deg)}}@keyframes underwater-wave{0%,to{transform:scale(1) skewY(0deg)}25%{transform:scale(1.02,.98) skewY(.3deg)}50%{transform:scale(.98,1.02) skewY(-.2deg)}75%{transform:scale(1.01,.99) skewY(.2deg)}}#biography{min-height:50vh}#skills{min-height:60vh}.App-header{color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;justify-content:center;position:relative}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}#navbar{position:absolute}.fade-in-section{opacity:0;transform:translateY(60px);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform 1s cubic-bezier(.4,0,.2,1);visibility:hidden;will-change:opacity,transform,visibility}.fade-in-section.is-visible{opacity:1;transform:translateY(0);visibility:visible}#nav-wrap a,#nav-wrap li,#nav-wrap ul{border:none;margin:0;outline:none;padding:0}#nav-wrap{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#0f0f1ecc;border-bottom:1px solid var(--glass-border);box-shadow:0 4px 30px #0000001a;font:13px var(--font-heading);left:0;letter-spacing:1.5px;margin:0 auto;position:fixed;text-transform:uppercase;top:0;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%;z-index:100}#nav-wrap:hover{background:#0f0f1ef2;box-shadow:0 8px 40px #0003}.opaque{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1a1a2efa}#nav-wrap>a.mobile-btn{display:none}ul#nav{justify-content:center;margin:0;min-height:50px;padding:0;text-align:center;width:auto}ul#nav li{display:inline-block;height:50px;list-style:none;margin:0 5px;position:relative}ul#nav li .smoothscroll,ul#nav li a{border-radius:8px;color:var(--text-secondary);cursor:pointer;display:inline-block;font-weight:600;line-height:34px;overflow:hidden;padding:8px 20px;position:relative;text-align:center;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}ul#nav li .smoothscroll:before,ul#nav li a:before{background:var(--primary-gradient);border-radius:8px;bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease;z-index:-1}ul#nav li .smoothscroll:active,ul#nav li a:active{background-color:initial!important;transform:scale(.95)}ul#nav li.current .smoothscroll,ul#nav li.current a{background:var(--glass-bg);box-shadow:var(--shadow-glow);color:var(--text-primary)}ul#nav li .smoothscroll:hover,ul#nav li a:hover{color:var(--text-primary);font-weight:600;text-shadow:0 0 20px #667eea99,0 0 40px #667eea4d}ul#nav li .smoothscroll:hover:before,ul#nav li a:hover:before{opacity:0}@media only screen and (max-width:767px){body,html{max-width:100%;overflow-x:hidden}.languageFlag{opacity:1}#languages{height:40px;min-width:90px;padding:8px 12px;width:auto}#languages,#mailContainer{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1a1a2ef2;border:1px solid var(--glass-border);border-radius:12px;bottom:0;text-shadow:none}#mailContainer{align-items:center;display:flex;height:45px;justify-content:center;padding:6px;position:relative;width:45px}#nav-wrap{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0000!important;border:none!important;box-shadow:none!important;font:13px var(--font-heading);letter-spacing:1.5px;position:fixed;right:0;top:0;width:auto}#nav-wrap>a{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1a1a2ef2;border:1px solid var(--glass-border);border-radius:12px;color:#0000;float:right;font:0/0 a;height:48px;position:relative;right:30px;text-align:left;text-shadow:none;top:0;transition:all .3s ease;width:48px}#nav-wrap>a:hover{background:#1a1a2e;box-shadow:var(--shadow-md)}#nav-wrap>a:after,#nav-wrap>a:before{border:2px solid #fff;content:"";left:25%;position:absolute;right:25%;top:35%}#nav-wrap>a:after{top:60%}#nav-wrap:not(:target)>a:first-of-type,#nav-wrap:target>a:last-of-type{border-radius:12px;display:block}#nav-wrap ul#nav{clear:both;display:none;float:right;height:auto;position:relative;right:0;top:12px;width:auto}#nav-wrap:target>ul#nav{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);background:#1a1a2efa;border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--shadow-xl);clear:both;display:block;margin:0 30px;padding:30px 20px 48px}ul#nav li{border-bottom:1px solid #ffffff1a;display:block;height:auto;margin:0 auto;padding:0 4%;text-align:left}ul#nav li:last-child{border-bottom:none}ul#nav li a{border:none;border-radius:8px;display:block;line-height:1.5;margin:0;padding:12px 8px;transition:all .3s ease}ul#nav li a:hover{background:var(--glass-bg);transform:translateX(8px)}}#languages{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;display:flex;justify-content:center;margin-left:20px;padding:8px 12px;position:fixed;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:999}#languages:hover{background:#ffffff14;box-shadow:var(--shadow-lg);transform:translateY(-2px)}#mailContainer{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;display:flex;justify-content:center;margin-right:20px;opacity:.7;padding:8px 12px;position:fixed;right:0;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:999}#mailContainer:hover{background:#ffffff14;box-shadow:var(--shadow-lg);cursor:pointer;opacity:1;transform:translateY(-2px)}#websiteVersion{background:var(--bg-dark-secondary);color:var(--text-muted);font-size:.875rem;margin-bottom:0;margin-top:0;padding:var(--spacing-md);text-align:center}#websiteVersion span{cursor:pointer;transition:all .3s ease}#websiteVersion span:hover{color:var(--accent-primary);text-decoration:none}@media (max-width:768px){#presentation .light-rays{opacity:.5}#presentation:after,#presentation:before{filter:blur(3px);opacity:.6}}@media (max-width:480px){#presentation .light-rays{opacity:.3}#presentation:after,#presentation:before{filter:blur(4px);opacity:.4}}#profilePic{border:4px solid var(--glass-border);border-radius:50%;box-shadow:0 0 40px #667eea4d,0 20px 60px #0000004d;height:300px;margin-top:3%;transition:all .4s cubic-bezier(.4,0,.2,1);width:300px}#profilePic:hover{border-color:#667eea80;box-shadow:0 0 60px #667eea80,0 25px 80px #0006;transform:scale(1.05) translateY(-5px)}#presentationContainer{animation:topToBottom 2s ease;-webkit-animation:topToBottom 2s ease;margin:0 auto;max-width:1200px;padding:var(--spacing-xl) var(--spacing-md);padding-top:120px;position:relative;width:100%;z-index:2}#hello{color:var(--text-primary);font:600 clamp(1.5rem,3vw,2.5rem) var(--font-heading);left:0;letter-spacing:1px;margin-bottom:var(--spacing-lg);position:absolute;right:0;text-align:center;text-shadow:0 2px 20px #0000004d;top:var(--spacing-xl)}#hello b{animation:giovanni-shake-infinite 5s ease-in-out infinite;background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text;display:inline-block;position:relative;vertical-align:initial}#hello b,#hello b:after{-webkit-text-fill-color:#0000;font-weight:800;will-change:transform}#hello b:after{animation:shine-sweep-infinite 5s ease-in-out infinite;background:linear-gradient(90deg,#0000,#fffc 50%,#0000);-webkit-background-clip:text;background-clip:text;background-position:-100% 0;background-size:300% 100%;content:"Giovanni";left:0;pointer-events:none;position:absolute;top:0}.socialIcon{color:#fff;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));margin:20px;opacity:.7;transition:all .3s cubic-bezier(.4,0,.2,1)}.socialIconsContainer{align-items:center;display:flex;gap:0;justify-content:center}.socialIcon:hover{filter:drop-shadow(0 8px 16px rgba(102,126,234,.4));opacity:1;transform:translateY(-5px) scale(1.1)}.socialLink{display:inline-block}.socialLink:hover{color:#fff}.newsletter-container{animation:newsletter-border-blink 2s ease-in-out infinite;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;box-shadow:0 0 40px #8cffb433,var(--shadow-lg);margin-left:auto;margin-right:auto;margin-top:var(--spacing-lg);max-width:400px;padding:20px 24px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.newsletter-container:hover{box-shadow:0 0 50px #8cffb44d,0 20px 40px #0000004d;transform:translateY(-3px)}.newsletter-content{display:flex;flex-direction:column;gap:16px}.newsletter-header{text-align:center}.newsletter-title-link{cursor:pointer;display:inline-block;text-decoration:none;transition:filter .3s ease}.newsletter-title-link:hover .newsletter-title{filter:brightness(1.3) drop-shadow(0 0 12px rgba(140,255,180,.6))}.newsletter-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#8cffb4,#64f0a0);-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:1.25rem;font-weight:700;margin:0 0 4px}.newsletter-icon{-webkit-text-fill-color:initial;background:none;-webkit-background-clip:initial;background-clip:initial;color:inherit;display:inline-block}.newsletter-subtitle{color:var(--text-secondary);font-size:.875rem;margin:0}.newsletter-form{display:flex;gap:8px}.newsletter-input{background:#ffffff0d;border:1px solid var(--glass-border);border-radius:10px;color:var(--text-primary);flex:1 1;font-size:.875rem;outline:none;padding:10px 14px;transition:all .3s ease}.newsletter-input:focus{background:#ffffff14;border-color:#8cffb4;box-shadow:0 0 0 3px #8cffb41a}.newsletter-input::placeholder{color:var(--text-secondary);opacity:.6}.newsletter-button{background:linear-gradient(135deg,#8cffb4,#64f0a0);border:none;border-radius:10px;box-shadow:0 4px 12px #8cffb44d;color:#083717;cursor:pointer;font-size:.875rem;font-weight:700;padding:10px 20px;transition:all .3s ease;white-space:nowrap}.newsletter-button:hover{box-shadow:0 6px 20px #8cffb466;transform:translateY(-2px)}.newsletter-button:active{transform:translateY(0)}@media (max-width:768px){.newsletter-container{max-width:100%}.newsletter-form{flex-direction:column}.newsletter-button{width:100%}}@keyframes newsletter-border-blink{0%,to{border-color:var(--glass-border);box-shadow:0 0 40px #8cffb433,var(--shadow-lg)}50%{border-color:#8cffb499;box-shadow:0 0 40px #8cffb480,0 0 20px #8cffb466,var(--shadow-lg)}}.hide-on-landscape{@media (orientation:landscape) and (hover:none) and (pointer:coarse){display:none}}@keyframes fadein{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes giovanni-bounce{0%{transform:translateY(0)}10%{transform:translateY(-8px)}25%{transform:translateY(0)}40%{transform:translateY(-5px)}55%,to{transform:translateY(0)}}@keyframes giovanni-shake{0%,to{transform:translateX(0) rotate(0deg)}10%{transform:translateX(-6px) rotate(-2deg)}20%{transform:translateX(6px) rotate(2deg)}30%{transform:translateX(-6px) rotate(-2deg)}40%{transform:translateX(6px) rotate(2deg)}50%{transform:translateX(-4px) rotate(-1.5deg)}60%{transform:translateX(4px) rotate(1.5deg)}70%{transform:translateX(-3px) rotate(-1deg)}80%{transform:translateX(3px) rotate(1deg)}90%{transform:translateX(-1px) rotate(-.5deg)}}@keyframes giovanni-shake-mobile{0%,to{transform:translateX(0) rotate(0deg)}10%{transform:translateX(-10px) rotate(-3deg)}20%{transform:translateX(10px) rotate(3deg)}30%{transform:translateX(-10px) rotate(-3deg)}40%{transform:translateX(10px) rotate(3deg)}50%{transform:translateX(-7px) rotate(-2deg)}60%{transform:translateX(7px) rotate(2deg)}70%{transform:translateX(-5px) rotate(-1.5deg)}80%{transform:translateX(5px) rotate(1.5deg)}90%{transform:translateX(-2px) rotate(-1deg)}}@keyframes giovanni-bounce-shake-mobile{0%{transform:translateY(0) translateX(0) rotate(0deg)}7%{transform:translateY(-8px) translateX(0) rotate(0deg)}17%{transform:translateY(0) translateX(0) rotate(0deg)}27%{transform:translateY(-5px) translateX(0) rotate(0deg)}37%,44%{transform:translateY(0) translateX(0) rotate(0deg)}47%{transform:translateY(0) translateX(-15px) rotate(-4deg)}52%{transform:translateY(0) translateX(15px) rotate(4deg)}57%{transform:translateY(0) translateX(-15px) rotate(-4deg)}62%{transform:translateY(0) translateX(15px) rotate(4deg)}67%{transform:translateY(0) translateX(-12px) rotate(-3deg)}72%{transform:translateY(0) translateX(12px) rotate(3deg)}77%{transform:translateY(0) translateX(-8px) rotate(-2deg)}82%{transform:translateY(0) translateX(8px) rotate(2deg)}87%{transform:translateY(0) translateX(-4px) rotate(-1deg)}92%{transform:translateY(0) translateX(4px) rotate(1deg)}to{transform:translateY(0) translateX(0) rotate(0deg)}}@keyframes shine-sweep{0%{background-position:-100% 0}to{background-position:100% 0}}@keyframes shine-sweep-infinite{0%,to{background-position:-100% 0}0.1%{background-position:-100% 0}16%{background-position:100% 0}16.1%,to{background-position:100% 0}}@keyframes giovanni-shake-infinite{0%,15.9%,to{transform:translateX(0) rotate(0deg)}16%{transform:translateX(0) rotate(0deg)}17%{transform:translateX(-6px) rotate(-2deg)}18%{transform:translateX(6px) rotate(2deg)}19%{transform:translateX(-6px) rotate(-2deg)}20%{transform:translateX(6px) rotate(2deg)}21%{transform:translateX(-4px) rotate(-1.5deg)}22%{transform:translateX(4px) rotate(1.5deg)}23%{transform:translateX(-3px) rotate(-1deg)}24%{transform:translateX(3px) rotate(1deg)}25%{transform:translateX(-1px) rotate(-.5deg)}26%,to{transform:translateX(0) rotate(0deg)}}@keyframes light-pass{0%{left:-150%;opacity:0}5%{opacity:1}95%{opacity:1}to{left:150%;opacity:0}}@keyframes topToBottom{0%{opacity:0;transform:translateY(-100px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){#profilePic{height:320px;margin-top:8%;width:320px}#presentationContainer{box-sizing:border-box;max-width:100%;padding:var(--spacing-md) var(--spacing-sm);padding-top:80px;width:100%}#hello{font-size:clamp(2.4rem,4.8vw,4rem);margin-bottom:var(--spacing-md);padding:0 var(--spacing-sm);position:absolute;top:10px}.socialIconsContainer{margin-top:calc(var(--spacing-xl)*1.5)}.socialIcon{margin:20px}.socialIcon[style*="50px"]{height:50px!important;width:50px!important}.socialIcon[style*="45px"]{height:45px!important;width:45px!important}.socialIcon[style*="56px"]{height:60px!important;width:60px!important}.newsletter-container{box-sizing:border-box;margin-top:var(--spacing-md);max-width:calc(100% - 32px);padding:16px 20px;width:100%}.newsletter-title{font-size:1.1rem}.newsletter-subtitle{font-size:.8rem}.socialIcon:hover{transform:translateY(-3px) scale(1.05)}}@media (max-width:480px){#profilePic{height:310px;margin-top:11%;width:310px}#presentationContainer{box-sizing:border-box;max-width:100%;padding:var(--spacing-sm);padding-top:60px;width:100%}.socialIcon{margin:20px}.socialIcon[style*="50px"]{height:50px!important;width:50px!important}.socialIcon[style*="45px"]{height:45px!important;width:45px!important}.socialIcon[style*="56px"]{height:60px!important;width:60px!important}#hello{font-size:clamp(2rem,8vw,2.8rem);margin-bottom:var(--spacing-sm);position:absolute;top:5px}.socialIconsContainer{margin-top:calc(var(--spacing-xl)*2)}.newsletter-container{box-sizing:border-box;margin-top:var(--spacing-sm);max-width:calc(100% - 24px);padding:14px 16px;width:100%}.newsletter-title{font-size:1rem}.newsletter-subtitle{font-size:.75rem;line-height:1.4}.newsletter-button,.newsletter-input{font-size:.8rem;padding:8px 12px}}.slideshow{box-sizing:border-box;margin:60px auto 30px;max-width:100%;overflow:visible;width:100%}.slideshowSlider{max-width:100%;transition:1s ease;white-space:nowrap}.slide{border-radius:40px;display:inline-block;height:350px;max-width:100%;overflow:visible;vertical-align:top;width:100%}.slide img{height:100%;object-fit:cover;width:100%}.slideshowDots{text-align:center}.slideshowDot{background-color:#c4c4c4;border-radius:50%;cursor:pointer;display:inline-block;height:20px;margin:15px 7px 0;width:20px}.slideshowDot.active{background-color:#6a0dad}@media (max-width:768px){.slideshow{margin:30px auto 15px}.slide{border-radius:30px;height:310px}.slideshowDot{height:16px;margin:12px 5px 0;width:16px}}@media (max-width:480px){.slideshow{margin:20px auto 10px}.slide{border-radius:20px;height:310px}.slideshowDot{height:14px;margin:10px 4px 0;width:14px}}#biographyContainer{align-items:center;background:linear-gradient(135deg,#667085,#536278);color:#fff;display:flex;height:100vh;height:100dvh;justify-content:center;overflow-y:auto;padding:4rem 2rem;position:relative;width:100%}#biographyContent{margin:0 auto;max-width:1000px;position:relative;width:100%;z-index:1}.biographyTitle{color:#fff;font-family:var(--font-heading);font-size:clamp(2.5rem,5vw,3.5rem);margin:0;padding:var(--spacing-xl) 0;position:relative;text-align:center;z-index:1}.biographyCardWrapper{position:relative;width:100%}.quoteMarkWrapper{left:10px;pointer-events:none;position:absolute;top:-10px;z-index:10}.quoteMark{animation:quote-shake 5s ease-in-out infinite;color:#b4b9c8;display:block;filter:brightness(1.2);font-family:Georgia,serif;font-size:80px;left:0;line-height:.7;position:absolute;text-shadow:0 0 10px #c8c8dc99,0 0 20px #b4b4c866,2px 2px 4px #00000080,4px 4px 8px #0000004d,-1px -1px 2px #ffffff4d;top:0}@keyframes quote-shake{0%,85%,to{transform:translate(0) rotate(0deg)}86%{transform:translate(-2px,-1px) rotate(-8deg)}87%{transform:translate(3px,2px) rotate(10deg)}88%{transform:translate(-3px,1px) rotate(-9deg)}89%{transform:translate(2px,-2px) rotate(8deg)}90%{transform:translate(-1px,2px) rotate(-6deg)}91%{transform:translate(2px,-1px) rotate(7deg)}92%{transform:translate(-1px,1px) rotate(-4deg)}93%{transform:translate(0) rotate(0deg)}}#biographyTextWrapper{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffff1a,#ffffff0d 50%,#ffffff1a);border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px 0 #0000005e,inset 0 1px 0 0 #ffffff4d,inset 0 -1px 0 0 #0003;overflow:hidden;padding:3rem 3rem 7rem;position:relative}#biographyTextWrapper:after{animation:metallic-shine 8s ease-in-out infinite;background:linear-gradient(90deg,#0000,#ffffff1a 50%,#0000);content:"";height:100%;left:-100%;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}@keyframes metallic-shine{0%,to{left:-100%}50%{left:100%}}#biographyText{color:var(--text-secondary);font-size:clamp(1rem,2vw,1.125rem);line-height:1.8;margin:0;position:relative;text-align:left;z-index:2}#biographyText b{color:var(--text-primary);font-weight:600}#signatureWrapper{max-width:280px;position:absolute;right:0;top:calc(100% - 200px);z-index:2}#biographySignature{display:block;filter:brightness(1.1);opacity:.9;width:100%}@media (max-width:768px){#biographyContainer{padding:3rem 1rem}#biographyTextWrapper{padding:2rem 1.5rem 5.5rem}#biographyText{font-size:1rem;margin-bottom:0}#signatureWrapper{max-width:250px;right:0;top:calc(100% - 170px)}.quoteMarkWrapper{left:8px;top:-8px}.quoteMark{font-size:70px}}@media (max-width:480px){#biographyContainer{padding:2rem .75rem}#biographyTextWrapper{padding:1.5rem 1rem 5rem}#biographyText{margin-bottom:0}#signatureWrapper{max-width:230px;right:0;top:calc(100% - 160px)}.quoteMarkWrapper{left:5px;top:-5px}.quoteMark{font-size:60px}}@media (max-height:500px) and (orientation:landscape){#biographyContainer{padding:2rem 1rem}#signatureWrapper{max-width:170px;top:calc(100% - 50px)}}#timelineContainer{background:var(--bg-dark-tertiary);color:var(--text-primary);overflow:hidden;padding:var(--spacing-xl) var(--spacing-md);position:relative;width:100%}#timelineContainer:before{background:radial-gradient(circle at 50% 100%,#667eea0f 0,#0000 70%);content:"";height:50%;left:0;pointer-events:none;position:absolute;top:50%;width:100%}#historyTitle{-webkit-text-fill-color:#0000;background:var(--secondary-gradient);-webkit-background-clip:text;background-clip:text;font-family:var(--font-heading);font-size:clamp(2.5rem,5vw,3.5rem);padding:var(--spacing-xl) 0;position:relative;text-align:center;z-index:1}.timeline-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#16213eb3!important;border:1px solid #ffffff1a;border-radius:16px!important;box-shadow:0 8px 32px 0 #0000005e;margin:40px auto;max-width:78%;position:relative;z-index:1}.timeline-card .MuiCardContent-root{padding:var(--spacing-lg)!important}.floating-icon{opacity:.2;pointer-events:none;position:absolute;z-index:0}.floating-icon .MuiTimelineDot-root{align-items:center;display:flex;justify-content:center}.icon-1{animation:bounce-1 25s linear infinite}.icon-1 .MuiTimelineDot-root{height:350px;width:350px}.icon-1 .MuiSvgIcon-root{font-size:220px}.icon-2{animation:bounce-2 22s linear infinite}.icon-2 .MuiTimelineDot-root{height:250px;width:250px}.icon-2 .MuiSvgIcon-root{font-size:150px}.icon-3{animation:bounce-3 28s linear infinite}.icon-3 .MuiTimelineDot-root{height:400px;width:400px}.icon-3 .MuiSvgIcon-root{font-size:260px}.icon-4{animation:bounce-4 20s linear infinite}.icon-4 .MuiTimelineDot-root{height:280px;width:280px}.icon-4 .MuiSvgIcon-root{font-size:170px}.icon-5{animation:bounce-5 24s linear infinite}.icon-5 .MuiTimelineDot-root{height:320px;width:320px}.icon-5 .MuiSvgIcon-root{font-size:200px}.icon-6{animation:bounce-6 26s linear infinite}.icon-6 .MuiTimelineDot-root{height:290px;width:290px}.icon-6 .MuiSvgIcon-root{font-size:180px}.icon-7{animation:bounce-7 23s linear infinite}.icon-7 .MuiTimelineDot-root{height:360px;width:360px}.icon-7 .MuiSvgIcon-root{font-size:230px}.icon-8{animation:bounce-8 21s linear infinite}.icon-8 .MuiTimelineDot-root{height:270px;width:270px}.icon-8 .MuiSvgIcon-root{font-size:160px}.icon-9{animation:bounce-9 27s linear infinite}.icon-9 .MuiTimelineDot-root{height:340px;width:340px}.icon-9 .MuiSvgIcon-root{font-size:210px}.icon-10{animation:bounce-10 24s linear infinite}.icon-10 .MuiTimelineDot-root{height:310px;width:310px}.icon-10 .MuiSvgIcon-root{font-size:190px}@keyframes bounce-1{0%{left:5%;top:10%}25%{left:80%;top:70%}50%{left:90%;top:20%}75%{left:15%;top:80%}to{left:5%;top:10%}}@keyframes bounce-2{0%{left:85%;top:60%}25%{left:10%;top:15%}50%{left:20%;top:75%}75%{left:85%;top:30%}to{left:85%;top:60%}}@keyframes bounce-3{0%{left:15%;top:40%}25%{left:75%;top:20%}50%{left:70%;top:85%}75%{left:5%;top:50%}to{left:15%;top:40%}}@keyframes bounce-4{0%{left:60%;top:80%}25%{left:20%;top:25%}50%{left:85%;top:10%}75%{left:40%;top:70%}to{left:60%;top:80%}}@keyframes bounce-5{0%{left:90%;top:30%}25%{left:10%;top:75%}50%{left:30%;top:15%}75%{left:80%;top:60%}to{left:90%;top:30%}}@keyframes bounce-6{0%{left:50%;top:5%}25%{left:5%;top:80%}50%{left:70%;top:25%}75%{left:95%;top:60%}to{left:50%;top:5%}}@keyframes bounce-7{0%{left:25%;top:70%}25%{left:65%;top:10%}50%{left:80%;top:85%}75%{left:15%;top:40%}to{left:25%;top:70%}}@keyframes bounce-8{0%{left:75%;top:15%}25%{left:30%;top:65%}50%{left:5%;top:35%}75%{left:85%;top:80%}to{left:75%;top:15%}}@keyframes bounce-9{0%{left:10%;top:50%}25%{left:85%;top:20%}50%{left:50%;top:75%}75%{left:20%;top:10%}to{left:10%;top:50%}}@keyframes bounce-10{0%{left:40%;top:85%}25%{left:75%;top:30%}50%{left:15%;top:60%}75%{left:90%;top:15%}to{left:40%;top:85%}}@media (max-width:768px){#timelineContainer{padding:var(--spacing-md) var(--spacing-sm)}#historyTitle{padding:var(--spacing-md) 0}.timeline-card{border-radius:12px!important;margin:20px auto!important;max-width:95%!important}.timeline-card .MuiCardContent-root{padding:var(--spacing-md)!important}.floating-icon{display:none}}a{color:var(--accent-cyan);transition:all .3s ease}a,a:hover{text-decoration:none}a:hover{color:var(--accent-primary)}#baby{border-radius:8px;box-shadow:var(--shadow-md);display:block;height:auto;margin:0 auto;max-width:100%;width:auto}.celebration-container{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:9999}.confetti{animation:confettiFall 2s ease-out forwards;font-size:2rem;opacity:0;position:absolute}.confetti-0{animation-delay:0s;left:50%;top:50%}.confetti-1{animation-delay:.1s;left:50%;top:50%}.confetti-2{animation-delay:.2s;left:50%;top:50%}.confetti-3{animation-delay:.3s;left:50%;top:50%}.confetti-4{animation-delay:.4s;left:50%;top:50%}@keyframes confettiFall{0%{opacity:1;transform:translate(0) rotate(0deg) scale(0)}50%{opacity:1}to{opacity:0;transform:translate(0,0) rotate(2turn) scale(1.5);transform:translate(calc(var(--x, 0)*1px),calc(var(--y, 0)*1px)) rotate(2turn) scale(1.5)}}.confetti:first-child{--x:200;--y:-300}.confetti:nth-child(2){--x:-200;--y:-300}.confetti:nth-child(3){--x:300;--y:-200}.confetti:nth-child(4){--x:-300;--y:-200}.confetti:nth-child(5){--x:150;--y:-350}.confetti:nth-child(6){--x:-150;--y:-350}.confetti:nth-child(7){--x:250;--y:-100}.confetti:nth-child(8){--x:-250;--y:-100}.confetti:nth-child(9){--x:100;--y:-250}.confetti:nth-child(10){--x:-100;--y:-250}.confetti:nth-child(11){--x:350;--y:-150}.confetti:nth-child(12){--x:-350;--y:-150}.confetti:nth-child(13){--x:180;--y:-320}.confetti:nth-child(14){--x:-180;--y:-320}.confetti:nth-child(15){--x:280;--y:-180}.confetti:nth-child(16){--x:-280;--y:-180}.confetti:nth-child(17){--x:120;--y:-280}.confetti:nth-child(18){--x:-120;--y:-280}.confetti:nth-child(19){--x:320;--y:-220}.confetti:nth-child(20){--x:-320;--y:-220}.icon{transition:all .3s cubic-bezier(.4,0,.2,1)}.icon:hover{box-shadow:0 0 20px #3451d666,var(--shadow-lg);transform:scale(1.1) rotate(5deg)}.iconChildhood{overflow:hidden;position:relative}.iconChildhood:before{animation:metallicShine 2s ease-in-out infinite;background:linear-gradient(45deg,#0000,#0000 30%,#fff9 50%,#0000 70%,#0000);content:"";height:200%;left:-150%;pointer-events:none;position:absolute;top:150%;width:200%;z-index:1}@keyframes metallicShine{0%,14%{left:-100%;opacity:0;top:100%}15%{left:-80%;opacity:1;top:80%}35%{left:80%;opacity:1;top:-80%}36%,to{left:100%;opacity:0;top:-100%}}.iconChildhood:hover{background:linear-gradient(135deg,#ec5f0d33,#f5783233);border-color:#ec5f0d80;box-shadow:0 0 20px #ec5f0d66,var(--shadow-lg);color:#ec5f0d;transform:scale(1.1) rotate(-5deg)}.iconCompulsorySchool:hover{background:linear-gradient(135deg,#e2070733,#ff323233);border-color:#e2070780;box-shadow:0 0 20px #e2070766,var(--shadow-lg);color:#e20707;transform:scale(1.1) rotate(5deg)}.iconErasmus:hover{background:linear-gradient(135deg,#1a740833,#32c81e33);border-color:#1a740880;box-shadow:0 0 20px #1a740866,var(--shadow-lg);color:#1ac808;transform:scale(1.1) rotate(-5deg)}.iconQuantycaJob:hover{background:linear-gradient(135deg,#91057933,#c832b433);border-color:#91057980;box-shadow:0 0 20px #91057966,var(--shadow-lg);color:#c832b4;transform:scale(1.1) rotate(5deg)}.iconTheForkJob:hover{background:linear-gradient(135deg,#1a740833,#32c81e33);border-color:#1a740880;box-shadow:0 0 20px #1a740866,var(--shadow-lg);color:#1ac808;transform:scale(1.1) rotate(-5deg)}.childDescription{color:#ec7832;font-weight:500;line-height:1.7}.primarySchoolDescription{color:#ff5050;font-weight:600;line-height:1.7}.highSchoolDescription,.middleSchoolDescription{color:#ff5050;font-weight:500;line-height:1.7}.bachelorDescription{color:#667eea;font-weight:500;line-height:1.7}.erasmusDescription{color:#32c832;font-weight:500;line-height:1.7}.masterDescription{color:#667eea;font-weight:500;line-height:1.7}.quantycaJobDescription{color:#c832b4;font-weight:500;line-height:1.7}.theForkJobDescription{color:#32c832;font-weight:500;line-height:1.7}.MuiTimelineContent-root .MuiPaper-root{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg)!important;border:1px solid var(--glass-border);box-shadow:var(--shadow-md);transition:all .3s cubic-bezier(.4,0,.2,1)}.MuiTimelineContent-root .MuiPaper-root:hover{border-color:#667eea4d;box-shadow:var(--shadow-lg);transform:translateY(-5px)}@media (max-width:768px){.MuiTimeline-root{padding-left:0!important;padding-right:0!important}.MuiTimelineItem-root{min-height:auto!important}.MuiTimelineItem-root:before{flex:1 1!important}.MuiTimelineOppositeContent-root{flex:1 1!important;padding:6px 8px!important}.MuiTimelineOppositeContent-root .MuiTypography-root{font-size:.75rem!important}.MuiTimelineSeparator-root{margin-left:8px!important;margin-right:8px!important}.MuiTimelineContent-root{flex:1 1!important;padding:6px 8px!important}.MuiTimelineContent-root .MuiPaper-root{padding:var(--spacing-sm)!important}.MuiTimelineContent-root .MuiTypography-root{font-size:.875rem!important}#baby{height:auto;max-width:100%}}#projectsContainer{background:var(--bg-dark-secondary);color:#fff;display:flex;flex-direction:column;justify-content:flex-start;min-height:100vh;padding:var(--spacing-xl) var(--spacing-md);position:relative;width:100%}#projectsContainer:before{background:radial-gradient(circle at 80% 50%,#764ba214 0,#0000 70%);content:"";height:100%;pointer-events:none;position:absolute;right:0;top:0;width:50%}#projectsTitle{-webkit-text-fill-color:#0000;background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text;font-family:var(--font-heading);font-size:clamp(2.5rem,5vw,3.5rem);padding-bottom:var(--spacing-lg);padding-top:var(--spacing-md);position:relative;text-align:center;z-index:1}@media (max-width:768px){#projectsContainer:before{display:none}}.slideshow-container{margin:0 auto;max-width:100%;position:relative;width:100%}.slideshow-slider{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;display:flex;overflow-x:scroll;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none}.slideshow-slider::-webkit-scrollbar{display:none}.slideshow-slide{align-items:flex-start;box-sizing:border-box;flex:0 0 100%;padding:1rem 2rem;scroll-snap-align:start}.slideshow-dots,.slideshow-slide{display:flex;justify-content:center}.slideshow-dots{gap:12px;margin-bottom:1rem;margin-top:2rem}.slideshow-dot{background-color:#fff6;border-radius:50%;cursor:pointer;height:10px;transition:all .3s ease;width:10px}.slideshow-dot:hover{background-color:#fff9;transform:scale(1.2)}.slideshow-dot.active{background-color:#fff;transform:scale(1.3)}@media (max-width:768px){.slideshow-slide{padding:0 1rem}}@media (max-width:480px){.slideshow-slide{padding:0 .5rem}}.projectContainer{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:20px;box-shadow:var(--shadow-lg);cursor:pointer;display:flex;flex-direction:column;height:50vh;margin:0 auto;max-width:900px;overflow:hidden;padding:var(--spacing-xl);position:relative;text-align:left;transition:all .4s cubic-bezier(.4,0,.2,1);white-space:pre-line;width:100%}.projectContainer:before{background:var(--primary-gradient);border-radius:20px;bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .4s ease;z-index:0}.projectContainer:hover:before{opacity:.05}.projectContainer>*{position:relative;z-index:1}.projectContainer:hover{border-color:#667eea66;box-shadow:var(--shadow-xl),var(--shadow-glow);transform:translateY(-8px)}.projectContainer h1{color:var(--text-primary);font-family:var(--font-heading);font-size:clamp(1.75rem,3vw,2.5rem);margin-bottom:var(--spacing-sm)}.projectContainer h3{color:var(--accent-purple);font-weight:600;margin-bottom:var(--spacing-xs)}.projectContainer h5{color:var(--text-muted);font-size:.875rem;font-weight:500;letter-spacing:1px;text-transform:uppercase}.projectDescription{-webkit-box-orient:vertical;-webkit-line-clamp:8;display:-webkit-box;flex:1 1;margin-top:4%;overflow:hidden;text-overflow:ellipsis;white-space:pre-wrap}#projectContainerCurrent{border:2px solid var(--accent-primary);box-shadow:var(--shadow-xl),0 0 40px #667eea66}#closeIcon{border-radius:50%;cursor:pointer;float:right;opacity:.7;padding:4px;transition:all .3s ease}#closeIcon:hover{background:var(--glass-bg);opacity:1;transform:rotate(90deg) scale(1.1)}#projectModal{overflow:scroll}#projectModal .MuiBox-root{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--bg-dark-secondary)!important;border:1px solid var(--glass-border);border-radius:20px;box-shadow:var(--shadow-xl);max-height:90vh;overflow-y:auto}@media (max-width:768px){.projectContainer{height:45vh;padding:var(--spacing-lg)}.projectDescription{-webkit-line-clamp:6}.projectContainer:hover{transform:translateY(-5px) scale(1)}.projectContainer h1{font-size:clamp(1.5rem,5vw,2rem)}#projectModal .MuiBox-root{height:90%!important;left:50%!important;max-height:90%!important;max-width:95%!important;padding:var(--spacing-md)!important;top:50%!important;transform:translate(-50%,-50%)!important;width:95%!important}}@media (max-width:480px){.projectContainer{border-radius:16px;height:40vh;padding:var(--spacing-md)}.projectDescription{-webkit-line-clamp:5}#projectModal .MuiBox-root{height:85%!important;left:50%!important;max-height:85%!important;max-width:95%!important;padding:var(--spacing-sm)!important;top:50%!important;transform:translate(-50%,-50%)!important;width:95%!important}}#skillsContainer{background:var(--bg-dark);color:#fff;overflow:hidden;padding:var(--spacing-xl) var(--spacing-md);position:relative;width:100%}#skillsTitle{-webkit-text-fill-color:#0000;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;font-family:var(--font-heading);font-size:clamp(2.5rem,5vw,3.5rem);padding:var(--spacing-lg) 0;position:relative;text-align:center;z-index:1}#skillsContent{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;margin:0 auto;max-width:1200px;position:relative;z-index:1}.skills-grid{grid-column-gap:var(--spacing-xl);grid-row-gap:var(--spacing-md);align-items:start;column-gap:var(--spacing-xl);display:grid;grid-template-columns:repeat(2,1fr);row-gap:var(--spacing-md);width:100%}.skills-section{min-width:0}.leftSkills{color:var(--text-primary);font-family:var(--font-heading);font-size:1.75rem;margin-bottom:var(--spacing-md);padding:var(--spacing-md) var(--spacing-md);position:relative;text-align:left}.leftSkills:after{background:var(--primary-gradient);border-radius:2px;bottom:0;content:"";height:3px;left:var(--spacing-md);position:absolute;width:60px}.rightSkills{color:var(--text-primary);font-family:var(--font-heading);font-size:1.75rem;margin-bottom:var(--spacing-md);padding:var(--spacing-md) var(--spacing-md);position:relative;text-align:left}.rightSkills:after{background:var(--accent-gradient);border-radius:2px;bottom:0;content:"";height:3px;left:var(--spacing-md);position:absolute;width:60px}.skill{align-items:center;border:1px solid var(--glass-border);border-radius:12px;display:flex;margin:var(--spacing-sm) 0;min-height:50px;overflow:hidden;padding:var(--spacing-sm) var(--spacing-md);position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.skill-background{background:linear-gradient(90deg,#667eea4d,#764ba24d);border-radius:12px 0 0 12px;height:100%;left:0;position:absolute;top:0;transition:width 1s cubic-bezier(.4,0,.2,1);width:0;width:var(--skill-level,0);z-index:0}.skill:hover .skill-background{background:linear-gradient(90deg,#667eea80,#764ba280)}.skill-content{align-items:center;display:flex;gap:var(--spacing-md);position:relative;width:100%;z-index:1}.skill:hover{border-color:#667eea80;box-shadow:var(--shadow-md);transform:translateX(8px)}.skill p{color:var(--text-secondary);flex:1 1;font-size:1rem;font-weight:500;margin:0}.skill-language{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg)}.skill-language .skill-background{display:none}.flag{flex-shrink:0;height:2.8em!important;width:2.8em!important}#skillsContainer .tag-cloud{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;margin:0;padding:var(--spacing-md)}#skillsContainer .tag-cloud span{cursor:pointer;transition:all .3s ease}#skillsContainer .tag-cloud span:hover{color:var(--accent-cyan)!important;transform:scale(1.1)}@media (max-width:768px){.skills-grid{grid-template-columns:1fr}.skills-soft{order:1}.skills-hard{order:2}.skills-keywords{order:3}.skills-languages{order:4}.leftSkills,.rightSkills{font-size:1.5rem;padding:var(--spacing-md)}.skill{align-items:stretch;flex-direction:column;gap:var(--spacing-sm)}.skill p{flex:none;text-align:left;width:100%}.skill .MuiLinearProgress-root{width:220px}.skill:hover{transform:translateX(0)}#skillsContainer .tag-cloud{padding:var(--spacing-md)}}@media (max-width:480px){.skill .MuiLinearProgress-root{width:180px}.leftSkills:after,.rightSkills:after{left:var(--spacing-md)}}
/*# sourceMappingURL=main.8d294644.css.map*/