@import "https://fonts.googleapis.com/css?family=Nunito";.header-container{z-index:1000;background-color:#fff;justify-content:space-between;align-items:center;width:100%;height:80px;padding:0 40px;display:flex;position:relative;box-shadow:5px 5px 10px #0000001a}.header-title h1{margin:0;font-size:2rem;font-weight:700}.header-title a{color:#000;align-items:center;text-decoration:none;display:flex}.header-menu{align-items:center;gap:10px;height:100%;display:flex}.header-menu a{color:#000;align-items:center;height:40px;padding:0 15px;font-weight:500;text-decoration:none;display:flex}.header-menu a:hover,.header-menu a.active-menu{color:#007cb9}.desktop-title{color:#005689;margin:0;font-size:2rem;font-weight:700;display:block}.mobile-logo{cursor:pointer;color:#000;font-size:1.8rem;display:none}.mobile-menu-icon{display:none}.lang-switch{align-items:center;gap:10px;margin-left:20px;padding-left:20px;font-size:.9rem;font-weight:600;display:flex}.lang-switch span{cursor:pointer;color:#000;font-weight:600;transition:color .2s}.lang-switch span:hover{color:#007cb9}.lang-switch .separator{cursor:default;color:#f0f0f0}.lang-switch .separator:hover{color:#f0f0f0}.active-lang{font-weight:800;color:#007cb9!important}@media (max-width:768px){.header-container{padding:0 20px}.desktop-title{display:none}.mobile-logo{z-index:999;object-fit:contain;width:auto;height:40px;display:block}.mobile-menu-icon{font-size:1.5rem;display:block}.header-menu{z-index:998;background-color:#fff;flex-direction:column;justify-content:flex-start;align-items:center;gap:20px;width:100%;height:auto;padding:20px 0;transition:transform .3s ease-in-out;display:flex;position:fixed;top:80px;left:0;overflow-y:auto;transform:translateY(-150%);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.header-menu a{justify-content:center;width:100%;font-size:1.1rem}.header-menu.active{transform:translateY(0)}.lang-switch{justify-content:center;width:100%;margin:0;padding:0}}.footer-container{color:#fff;background-color:#005689;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;padding:30px 100px;display:flex}.address-section{flex-direction:column;flex:1;align-items:center;min-width:200px;display:flex}.address-section p{text-align:center;font-size:.95rem;line-height:1.6}.address-title{color:#fff}.address-title h3{color:#fff;margin-bottom:15px;font-size:1.1rem;font-weight:700}.connect-section{flex-direction:column;flex:1;align-items:center;min-width:200px;display:flex}.connect-title{color:#fff}.connect-title h3{color:#fff;margin-bottom:15px;font-size:1.1rem;font-weight:700}.socials{gap:15px;display:flex}.socials a{color:#fff;font-size:24px;display:flex}.socials a:hover{color:#f0f0f0;transform:translateY(-3px)}.contact-section{flex-direction:column;flex:1;align-items:center;min-width:200px;display:flex}.contact-section ul{margin:0;padding:0;list-style:none}.contact-section ul li{text-align:center;font-size:.95rem;line-height:1.6}.contact-title{color:#fff}.contact-title h3{color:#fff;margin-bottom:15px;font-size:1.1rem;font-weight:700}@media (max-width:768px){.footer-container{flex-direction:column;align-items:center;gap:40px;padding:40px 20px}.address-section,.connect-section,.contact-section{text-align:center;min-width:100%}.socials a{padding:5px;font-size:28px}}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow-x:hidden}#root{width:100%;height:100%}.layout-container{flex-direction:column;width:100%;min-height:100vh;display:flex;position:relative}.header{z-index:1000;background-color:#fff;width:100%;height:80px;position:fixed;top:0;left:0}.content{flex:1;width:100%;margin-top:100px;padding-bottom:20px}.footer{width:100%}@media (max-width:768px){.header{height:70px}.content{margin-top:70px}}body{font-family:Nunito,sans-serif}.home-container{background-color:#fff;justify-content:space-between;align-items:center;gap:50px;padding:0 10%;display:flex}.home-left{flex:1}.home-left h1{color:#005689;margin-bottom:20px;font-size:3rem;font-weight:800;line-height:1.2}.home-left p{max-width:90%;margin-bottom:30px;font-size:1.1rem;line-height:1.6}.highlight-text{color:#005689;font-weight:700}.buttons{gap:15px;display:flex}.button-contact{color:#000;cursor:pointer;background-color:#fff;border:none;border-radius:5px;padding:12px 24px;box-shadow:0 4px 6px #00000026}.button-contact:hover{transform:translateY(-1px);box-shadow:0 6px 10px #0003}.button-cv{color:#fff;cursor:pointer;background-color:#007cb9;border:none;border-radius:5px;padding:12px 24px;box-shadow:0 4px 6px #00000026}.button-cv:hover{transform:translateY(-1px);box-shadow:0 6px 10px #0003}.home-right{flex:1;justify-content:center;align-items:center;display:flex}.home-right img{width:400px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-up{opacity:0;animation:1s ease-out forwards fadeInUp}.animate-fade-in{opacity:0;animation:1.5s ease-out forwards fadeIn}.delay-1{animation-delay:.2s}.delay-2{animation-delay:.4s}.delay-3{animation-delay:.6s}@media (max-width:768px){.home-container{text-align:center;flex-direction:column-reverse;gap:30px;padding:40px 20px}.home-left p{max-width:100%}.buttons{justify-content:center}.home-right img{width:250px;margin-bottom:20px}}.modal-overlay{z-index:1000;background-color:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background-color:#fff;border-radius:12px;width:90%;max-width:450px;padding:30px;position:relative}.modal-content h2{color:#000;text-align:center;margin-top:0}.modal-content p{text-align:center;color:#000;margin-bottom:20px;font-size:.9rem}.close-btn{color:#000;cursor:pointer;background:0 0;border:none;transition:color .3s;position:absolute;top:15px;right:15px}.form-group{margin-bottom:15px}.form-group label{color:#000;margin-bottom:6px;font-size:.9rem;font-weight:600;display:block}.form-group input{border:1px solid #000;border-radius:5px;width:100%;padding:10px;font-size:.8rem}.form-group input:focus{border-color:#007cb9;outline:none;box-shadow:0 0 0 3px #8594e433}.form-group textarea{border:1px solid #000;border-radius:5px;width:100%;padding:10px;font-size:.8rem}.form-group textarea:focus{border-color:#007cb9;outline:none;box-shadow:0 0 0 3px #8594e433}.submit-btn{color:#fff;cursor:pointer;background-color:#007cb9;border:none;border-radius:6px;width:100%;padding:12px;font-size:.9rem;font-weight:500}.submit-btn:hover{background-color:#005689;transform:translateY(-1px)}.submit-btn:disabled{cursor:not-allowed;background-color:#cbd5e1}.msg-success{color:#7dd87d;text-align:center;margin-top:10px;font-weight:600}.msg-error{color:#f83e4b;text-align:center;margin-top:10px;font-weight:600}.about-container{background-color:#fff;flex-direction:column;gap:80px;min-height:80vh;padding:50px 10%;display:flex}.reveal-section{opacity:0;will-change:opacity,transform;transition:all 1.2s ease-out}.reveal-section.up{transform:translateY(50px)}.reveal-section.right{transform:translate(-100px)}.reveal-section.left{transform:translate(100px)}.reveal-section.is-visible{opacity:1;transform:translate(0)}.about-general{justify-content:space-between;align-items:center;gap:50px;width:100%;display:flex}.about-left,.about-right{flex:1}.about-right h1{color:#005689;margin-bottom:20px;font-size:3rem;font-weight:800;line-height:1.2}.about-right p{color:#000;margin-bottom:30px;font-size:1.1rem;line-height:1.6}.about-img-wrapper{flex-direction:column;align-items:center;gap:20px;display:flex}.about-img-wrapper img{object-fit:cover;width:100%;max-width:380px;box-shadow:0 10px 30px #0000001a}.social-links a{color:#000;padding:0 10px;font-size:2rem}.social-links a:hover{color:#007cb9}.tech-stack h3{color:#005689;margin-bottom:15px;font-size:1.2rem;font-weight:700}.skills-grid{flex-wrap:wrap;gap:15px;display:flex}.skill-item{cursor:pointer;background-color:#fff;border:1px solid #000;border-radius:5px;align-items:center;gap:10px;padding:10px 20px;font-weight:600;display:flex;box-shadow:0 2px 5px #0000000d}.separate-line{border:1px solid #005689}.about-sport{width:100%;margin-top:50px}.sport-title{text-align:center;margin-bottom:40px}.sport-title h3{color:#005689;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;font-size:2rem;font-weight:800}.sport-title p{color:#000;margin:0 auto;font-size:1.1rem;font-style:italic}.sport-media{flex-direction:column;gap:60px;display:flex}.sport-img{grid-template-columns:1fr 1fr;gap:20px;display:grid}.sport-img img{object-fit:cover;border-radius:15px;width:100%;height:auto;transition:transform .3s}.sport-img img:hover{transform:scale(1.02)}.sport-video video{background-color:#000;border-radius:15px;width:70%;max-width:800px;margin:0 auto;transition:transform .3s;display:block}.sport-video video:hover{transform:scale(1.02)}.video-title{text-align:center;color:#005689;text-transform:capitalize;margin-bottom:30px;padding-bottom:10px;font-size:1.6rem;font-weight:700;position:relative}.video-title:after{content:"";background-color:#007cb9;border-radius:2px;width:60px;height:3px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.video-grid{grid-template-columns:repeat(2,1fr);gap:25px;display:grid}.video-grid video{object-fit:cover;background-color:#000;width:100%;height:350px;transition:transform .3s;box-shadow:0 4px 10px #0000001a}.video-grid video:hover{transform:scale(1.02);box-shadow:0 8px 20px #0003}@media (max-width:768px){.about-container{padding:40px 20px}.about-general{text-align:center;flex-direction:column;gap:40px}.about-img-wrapper img{width:80%;max-width:300px}.skills-grid{justify-content:center}.about-right h1{font-size:2.2rem}.sport-img,.video-grid{grid-template-columns:1fr;gap:15px}.sport-img img,.video-grid video{aspect-ratio:16/9;height:auto}.sport-title h3{font-size:1.8rem}}.experience-container{color:#000;max-width:1100px;margin:0 auto;padding:60px 20px}.exp-title{text-align:center;color:#005689;margin-bottom:60px;font-size:2.5rem;font-weight:700;position:relative}.exp-title:after{content:"";background-color:#005689;border-radius:2px;width:60px;height:4px;margin:15px auto 0;display:block}.timeline-wrapper{flex-direction:column;gap:60px;display:flex}.company-header{align-items:center;margin-bottom:25px;display:flex}.company-icon{color:#007cb9;background-color:#8594e426;border:2px solid #007cb9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:55px;height:55px;margin-right:20px;font-size:1.6rem;display:flex}.company-name{color:#000;margin:0;font-size:1.8rem;font-weight:600}.project-list{border-left:2px dashed #007cb9;margin-left:27px;padding-left:35px}.project-card{background-color:#eaf6f6;border:1px solid #007cb9;border-radius:16px;margin-bottom:35px;padding:30px;transition:all .3s}.project-card:hover{border-color:#005689;transform:translateY(-5px)}.project-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:15px;display:flex}.project-title{color:#005689;flex:1;margin:0;font-size:1.5rem;font-weight:700}.project-period{color:#005689;white-space:nowrap;align-items:center;gap:8px;padding:6px 12px;font-size:.9rem;display:flex}.label{color:#000;min-width:80px;margin-right:8px;font-weight:600}.project-role,.project-description,.project-tech{color:#000;margin-bottom:12px;font-size:1rem;line-height:1.6}@media (max-width:768px){.experience-container{padding:40px 15px}.exp-title{margin-bottom:40px;font-size:1.8rem}.timeline-wrapper{gap:40px}.company-icon{width:45px;height:45px;margin-right:15px;font-size:1.3rem}.company-name{font-size:1.4rem}.project-list{border-left-width:1px;margin-top:20px;margin-left:0;padding-left:15px}.project-card{padding:20px}.project-header{flex-direction:column;gap:10px}.project-period{align-self:flex-start}.label{min-width:auto}}.loading-state{color:#000;flex-direction:column;justify-content:center;align-items:center;min-height:200px;font-size:1.2rem;display:flex}.loader{border:4px solid #f0f0f0;border-top-color:#007cb9;border-radius:50%;width:40px;height:40px;margin-bottom:15px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.education-container{max-width:1000px;margin:0 auto;padding:80px 20px}.edu-title,.certificate-title{text-align:center;color:#005689;margin-bottom:40px;font-size:2.8rem;font-weight:800}.edu-title:after,.certificate-title:after{content:"";background-color:#005689;border-radius:2px;width:60px;height:4px;margin:15px auto 0;display:block}.certificate-title{margin-top:100px}.formal-education{flex-direction:column;gap:40px;width:100%;display:flex}.edu-card{box-shadow:.3s ease;background-color:#eaf6f6;border:1px solid #007cb9;border-radius:24px;padding:30px;transition:transform .3s;position:relative;overflow:hidden}.edu-card:hover{border-color:#007cb9;transform:translateY(-5px);box-shadow:0 15px 20px #00568926}.edu-year{color:#000;background-color:#0056891a;border-radius:20px;margin-bottom:15px;padding:5px 12px;font-size:.85rem;font-weight:700;display:inline-block}.school-header{color:#005689;align-items:center;gap:12px;margin-bottom:15px;font-size:1.8rem;font-weight:700;line-height:1.3;display:flex}.school-header .anticon{font-size:2rem}.highschool .school-header .anticon{color:#10b981}.colleague .school-header .anticon{color:#007cb9}.edu-major{color:#334155;margin-bottom:10px;font-size:1.1rem;font-weight:600;line-height:1.6}.xuho-memo{color:#000;margin-bottom:10px;font-size:1rem;font-weight:500;line-height:1.6}.achievement-block{background-color:#f1f5f9;border:1px solid #cbd5e1;border-radius:16px;flex-direction:column;gap:20px;margin-top:20px;padding:15px;display:flex}.achievement-block h4{color:#005689;margin-bottom:10px;font-size:1.1rem}.achievement-block p{color:#334155;margin:0;font-size:1rem;line-height:1.6}.achievement-img{grid-template-columns:repeat(2,1fr);gap:15px;display:grid}.achievement-img img{object-fit:cover;border-radius:15px;width:100%;height:300px;transition:transform .3s}.achievement-img img:hover{transform:scale(1.02)}.achievement-info{flex:1}.achievement-info h4{color:#005689;margin-bottom:5px;font-size:1.15rem;font-weight:700}.achievement-info p{color:#334155;align-items:flex-start;gap:12px;margin:0;font-size:1rem;line-height:1.6;display:flex}.achievement-info p .edu-icon{color:#007cb9;flex-shrink:0;margin-top:4px;font-size:1.1rem}.university-image-container{grid-template-columns:repeat(2,1fr);gap:15px;display:grid}.university-image-container img{object-fit:cover;border-radius:15px;width:100%;height:300px;transition:transform .3s}.university-image-container img:hover{transform:scale(1.02)}.certificate{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;display:grid}.certificate-item{cursor:pointer;color:inherit;background:#fff;border:1px solid #007cb9;border-radius:16px;padding:25px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.certificate-item:hover{border-color:#005689;transform:translateY(-5px);box-shadow:0 12px 20px #00568926}.certificate-item:hover:before{opacity:1;height:100%}.certificate-item:before{content:"";opacity:0;background-color:#005689;width:4px;height:0%;transition:all .3s;position:absolute;top:0;left:0}.certificate-item h4{color:#005689;margin-bottom:12px;font-size:1.2rem;font-weight:700}.certificate-item p{color:#000;flex-grow:1;font-size:.95rem;line-height:1.5}@media (max-width:768px){.education-container{padding:50px 15px}.edu-title,.certificate-title{margin-bottom:35px;font-size:2.2rem}.edu-card{padding:25px}.school-header{flex-direction:column;align-items:flex-start;gap:10px;font-size:1.5rem}.school-header .anticon{font-size:1.8rem}.formal-education{grid-template-columns:1fr;gap:25px}.achievement-info p{font-size:.85rem}.achievement-block{flex-direction:column;align-items:flex-start}.achievement-img{grid-template-columns:1fr;width:100%;margin-top:10px}.achievement-img img{max-height:220px}.university-image-container{grid-template-columns:1fr;width:100%;margin-top:10px}.university-image-container img{max-height:220px}.certificate{grid-template-columns:1fr}}.tech-container{max-width:1200px;margin:0 auto;padding:60px 20px}.tech-header{text-align:center;margin-bottom:50px}.tech-header h2{color:#005689;margin-bottom:20px;font-size:2.5rem;font-weight:700}.tech-header h2:after{content:"";background-color:#005689;border-radius:2px;width:60px;height:4px;margin:15px auto 0;display:block}.tech-desc{color:#000;max-width:700px;margin:0 auto 40px;font-size:1.1rem;line-height:1.6}.tech-block{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px;padding:10px;display:grid}.tech-item{text-align:center;cursor:pointer;color:inherit;background-color:#eaf6f6;border:1px solid #0000000d;flex-direction:column;align-items:center;padding:30px 20px;text-decoration:none;transition:all .3s cubic-bezier(.25,.8,.25,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000000d}.tech-item:hover{border-color:#0000001a;transform:translateY(-8px);box-shadow:0 12px 30px #0000001f}.tech-icon-wrapper{justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:20px;font-size:2.5rem;display:flex}.tech-info h4{font-size:1.25rem;font-weight:600px;color:#000;margin:0 0 10px}.tech-category{color:#000;letter-spacing:.5px;background-color:#bae8e8;border-radius:20px;padding:6px 14px;font-size:.85rem;font-weight:500;display:inline-block}.error-state{color:#000;flex-direction:column;justify-content:center;align-items:center;min-height:200px;font-size:1.2rem;display:flex}@media (max-width:768px){.tech-container{padding:40px 15px}.tech-header h2{font-size:2rem}.tech-block{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:20px}.tech-item{padding:20px 15px}.tech-icon-wrapper{width:60px;height:60px;font-size:2.5rem}.tech-info h4{font-size:1.1rem}}
