body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background-color);color:var(--text-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#root,body,html{height:100%}.App,body{overflow-x:hidden}.App{height:100vh;overflow-y:scroll;scroll-behavior:smooth;scroll-padding-top:90px;scroll-snap-type:y proximity}.container{margin:0 auto;max-width:1200px;padding:0 var(--spacing-md)}h1,h2,h3,h4,h5,h6{font-weight:600}a{color:var(--primary-color);text-decoration:none}a:hover{text-decoration:underline}:root{--primary-color:#000;--secondary-color:#333;--text-color:#000;--text-light:#666;--background-color:#fff;--border-color:#ddd;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:32px;--spacing-xl:64px}.header{background-color:var(--background-color);border-bottom:1px solid var(--border-color);box-shadow:0 8px 20px #00000059;padding:var(--spacing-md) 0;position:sticky;top:0;z-index:100}.header-content{justify-content:space-between}.header-content,.logo{align-items:center;display:flex}.logo{cursor:pointer;transition:transform .3s ease}.logo:hover{transform:scale(1.05)}.logo svg{height:60px;width:60px}.nav-wrapper{align-items:center;display:flex;gap:24px}.nav{display:flex;gap:var(--spacing-md)}.nav button{background:none;border:none;border-radius:4px;color:var(--text-color);cursor:pointer;font-size:16px;font-weight:700;padding:8px 16px;transition:text-shadow .25s ease,transform .25s ease}.nav button:hover{text-shadow:0 4px 10px #0006;transform:scale(1.08)}.lang-switcher{align-items:center;border-left:1px solid var(--border-color);display:flex;gap:4px;padding-left:20px}.lang-switcher button{background:none;border:1px solid var(--border-color);border-radius:14px;color:var(--text-light);cursor:pointer;font-size:12px;font-weight:700;letter-spacing:.3px;padding:5px 10px;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.lang-switcher button:hover{border-color:var(--primary-color);color:var(--primary-color)}.lang-switcher button.active{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.hamburger{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:5px;height:40px;justify-content:center;padding:9px;width:40px}.hamburger span{background-color:var(--primary-color);border-radius:2px;display:block;height:2px;transition:transform .3s ease,opacity .3s ease;width:100%}.hamburger.open span:first-child{transform:translateY(7px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media (max-width:900px) and (min-width:769px){.nav-wrapper{gap:12px}.nav{gap:4px}.nav button{font-size:14px;padding:8px 10px}.lang-switcher{padding-left:12px}}@media (max-width:768px){.hamburger{display:flex}.nav-wrapper{gap:10px}.lang-switcher{border-left:none;padding-left:0}.nav{background-color:var(--background-color);border-bottom:1px solid var(--border-color);box-shadow:0 12px 20px #0000001f;display:none;flex-direction:column;gap:0;left:0;overflow:hidden;position:absolute;right:0;top:100%}.nav.open{display:flex}.nav button{border-bottom:1px solid var(--border-color);border-radius:0;padding:16px 24px;text-align:left;width:100%}.nav button:hover{background-color:#f5f5f5;text-shadow:none;transform:none}}.hero{align-items:center;background:linear-gradient(135deg,#000,#333);color:#fff;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:40px 0;position:relative;scroll-snap-align:start}.hero:after,.hero:before{border-radius:50%;content:"";filter:blur(70px);opacity:.55;position:absolute;z-index:0}.hero:before{animation:float-blob-1 16s ease-in-out infinite;background:radial-gradient(circle,#aaa,#0000 70%);height:520px;left:-100px;top:-150px;width:520px}.hero:after{animation:float-blob-2 18s ease-in-out infinite;background:radial-gradient(circle,#bbb,#0000 70%);bottom:-180px;height:470px;right:-80px;width:470px}@keyframes float-blob-1{0%,to{transform:translate(0) scale(1)}33%{transform:translate(80px,60px) scale(1.15)}66%{transform:translate(-40px,40px) scale(.9)}}@keyframes float-blob-2{0%,to{transform:translate(0) scale(1)}33%{transform:translate(-60px,-50px) scale(1.1)}66%{transform:translate(50px,-30px) scale(.95)}}.hero-blob{border-radius:50%;pointer-events:none;position:absolute;z-index:0}.hero-blob-1{animation:float-blob-4 13s ease-in-out infinite;background:radial-gradient(circle,#ccc,#0000 70%);filter:blur(35px);height:160px;left:55%;opacity:.5;top:12%;width:160px}.hero-blob-2{animation:float-blob-5 10s ease-in-out infinite;animation-delay:1.5s;background:radial-gradient(circle,#999,#0000 70%);filter:blur(30px);height:120px;left:30%;opacity:.45;top:65%;width:120px}.hero-blob-3{animation:float-blob-6 9s ease-in-out infinite;animation-delay:3s;background:radial-gradient(circle,#bbb,#0000 70%);filter:blur(25px);height:90px;left:8%;opacity:.4;top:30%;width:90px}@keyframes float-blob-4{0%,to{transform:translate(0) scale(1)}20%{transform:translate(-30px,25px) scale(1.2)}45%{transform:translate(20px,50px) scale(.85)}70%{transform:translate(35px,-15px) scale(1.1)}}@keyframes float-blob-5{0%,to{transform:translate(0) scale(1)}30%{transform:translate(40px,-30px) scale(.9)}55%{transform:translate(-25px,-45px) scale(1.15)}80%{transform:translate(-40px,10px) scale(.95)}}@keyframes float-blob-6{0%,to{transform:translate(0) scale(1)}25%{transform:translate(25px,35px) scale(1.1)}50%{transform:translate(-20px,20px) scale(.8)}75%{transform:translate(15px,-25px) scale(1.05)}}.hero-wrapper{grid-gap:60px;display:grid;gap:60px;grid-template-columns:auto 1fr;z-index:1}.hero-image,.hero-wrapper{align-items:center;position:relative}.hero-image{display:flex;height:460px;justify-content:center}.hero-image:before{animation:float-blob-3 12s ease-in-out infinite;background:radial-gradient(circle,#ccc,#0000 70%);border-radius:50%;content:"";filter:blur(50px);height:280px;opacity:.6;position:absolute;right:-60px;top:-40px;width:280px;z-index:0}.hero-image img{border-radius:12px;box-shadow:0 20px 40px #0000004d;height:100%;max-width:380px;object-fit:contain;position:relative;width:auto;z-index:1}@keyframes float-blob-3{0%,to{transform:translate(0) scale(1)}33%{transform:translate(-30px,40px) scale(1.2)}66%{transform:translate(20px,-30px) scale(.85)}}.hero-content{text-align:left}.hero-title{font-size:72px;font-weight:900;letter-spacing:-2px;line-height:1.1;margin:0 0 20px}.hero-subtitle1{color:#e0e0e0;font-size:28px;font-weight:700;letter-spacing:.5px;margin:0 0 12px}.hero-subtitle2{color:#b0b0b0;font-size:20px;font-weight:400;letter-spacing:1px;line-height:1.5;margin:0 0 40px}.hero-description{color:#a0a0a0;font-size:17px;letter-spacing:.3px;line-height:1.8;margin:0 0 50px}.hero-buttons{display:flex;flex-wrap:wrap;gap:16px;justify-content:flex-start}.btn{border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;padding:14px 40px;transition:all .3s ease}.btn-primary{background-color:#fff;color:#000}.btn-primary:hover{background-color:#f5f5f5;box-shadow:0 8px 16px #ffffff1a;transform:translateY(-3px)}.btn-secondary{background-color:initial;border:2px solid #fffc;color:#fff}.btn-secondary:hover{background-color:#ffffff1a;border-color:#fff;box-shadow:0 8px 16px #ffffff1a;transform:translateY(-3px)}@media (max-width:768px){.hero-wrapper{gap:40px;grid-template-columns:1fr}.hero-image{height:360px}.hero-title{font-size:48px}.hero-subtitle1{font-size:24px}.hero-subtitle2{font-size:18px}.hero-buttons{justify-content:flex-start}}.about{background-color:#f9f9f9;min-height:100vh;padding:120px 0;position:relative;scroll-snap-align:start}.about .section-label{color:var(--text-light);display:block;font-size:14px;font-weight:700;letter-spacing:3px;margin-bottom:12px;text-transform:uppercase}.about h2{color:var(--primary-color);font-size:40px;font-weight:900;letter-spacing:-1px;margin-bottom:50px}.about-content{display:flex;flex-direction:column;gap:56px}.about-intro{color:#333;font-size:19px;letter-spacing:.2px;line-height:1.9;word-break:keep-all}.about-strengths{display:flex;flex-direction:column;gap:20px}.strength-card{align-items:flex-start;background:#fff;border-left:1px solid var(--border-color);border:1px solid var(--border-color);border-left-width:3px;border-radius:10px;box-shadow:0 2px 6px #00000008;display:flex;gap:28px;padding:30px 36px;transition:transform .3s ease,box-shadow .3s ease,border-left-color .3s ease}.strength-card:hover{border-left-color:var(--primary-color);box-shadow:0 12px 24px #00000014;transform:translateX(4px)}.strength-number{color:#ddd;flex-shrink:0;font-size:26px;font-weight:900;letter-spacing:-1px;line-height:1;padding-top:3px;width:40px}.strength-text h3{color:var(--primary-color);font-size:19px;font-weight:700;letter-spacing:-.3px;margin-bottom:10px}.strength-text p{color:var(--text-light);font-size:15px;letter-spacing:.1px;line-height:1.75;margin:0;word-break:keep-all}@media (max-width:768px){.about{padding:80px 0}.about h2{font-size:32px}.about-intro{font-size:17px}.strength-card{gap:18px;padding:24px}.strength-number{font-size:22px}}.skills{background-color:#fff;min-height:100vh;padding:120px 0;scroll-snap-align:start}.skills .section-label{color:var(--text-light);display:block;font-size:14px;font-weight:700;letter-spacing:3px;margin-bottom:12px;text-transform:uppercase}.skills h2{color:var(--primary-color);font-size:40px;font-weight:900;letter-spacing:-1px;margin-bottom:50px}.skills-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.skill-card{background:#f9f9f9;border:1px solid var(--border-color);border-radius:8px;border-top:3px solid var(--border-color);display:flex;flex-direction:column;padding:18px 20px;transition:transform .3s ease,box-shadow .3s ease,border-top-color .3s ease}.skill-card:hover{border-top-color:var(--primary-color);box-shadow:0 12px 24px #00000014;transform:translateY(-4px)}.skill-card h3{color:var(--primary-color);font-size:15px;font-weight:700;letter-spacing:-.2px;margin-bottom:10px}.skill-tags{display:flex;flex-wrap:wrap;gap:6px}.skill-tag{background:#fff;border:1px solid var(--border-color);border-radius:20px;color:var(--text-color);font-size:11px;font-weight:500;padding:4px 10px;white-space:nowrap}.skill-levels{border-top:1px solid var(--border-color);margin-top:14px;padding-top:14px}.skill-level-row{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:90px 1fr 30px;margin-bottom:8px}.skill-level-row:last-child{margin-bottom:0}.skill-level-name{color:var(--text-color);font-size:12px;font-weight:600}.skill-level-bar{background:#e8e8e8;border-radius:3px;height:6px;overflow:hidden}.skill-level-fill{background:var(--primary-color);border-radius:3px;height:100%}.skill-level-value{color:var(--text-light);font-size:11px;font-weight:600;text-align:right}.skills-legend{border-top:1px solid var(--border-color);margin-top:32px;padding-top:24px}.skills-legend-title{color:var(--text-light);display:block;font-size:12px;font-weight:700;letter-spacing:1px;margin-bottom:14px;text-transform:uppercase}.skills-legend-items{display:flex;flex-wrap:wrap;gap:10px 24px}.skills-legend-item{align-items:center;display:flex;gap:8px}.skills-legend-number{align-items:center;background:var(--primary-color);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:20px;justify-content:center;width:20px}.skills-legend-desc{color:var(--text-light);font-size:13px}@media (max-width:640px){.skills{padding:80px 0}.skills h2{font-size:32px}.skills-grid{grid-template-columns:1fr}.skill-level-row{gap:8px;grid-template-columns:80px 1fr 30px}.skills-legend-items{flex-direction:column;gap:10px}}.certifications{background-color:#fff;min-height:100vh;padding:120px 0;scroll-snap-align:start}.certifications .section-label{color:var(--text-light);display:block;font-size:14px;font-weight:700;letter-spacing:3px;margin-bottom:12px;text-transform:uppercase}.certifications h2{color:var(--primary-color);font-size:40px;font-weight:900;letter-spacing:-1px;margin-bottom:50px}.cert-featured-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-bottom:56px}.cert-featured-card{background:#f9f9f9;border:1px solid var(--border-color);border-radius:8px;border-top:3px solid var(--border-color);display:flex;flex-direction:column;padding:18px 20px;position:relative;transition:transform .3s ease,box-shadow .3s ease,border-top-color .3s ease}.cert-featured-card:hover{border-top-color:var(--primary-color);box-shadow:0 12px 24px #00000014;transform:translateY(-4px)}.cert-icon{align-items:center;border-radius:50%;display:flex;height:40px;justify-content:center;margin-bottom:16px;width:40px}.cert-icon,.cert-status{background:#fff;border:1px solid var(--border-color)}.cert-status{border-radius:20px;color:var(--text-color);display:inline-block;font-size:11px;font-weight:500;letter-spacing:.2px;padding:4px 10px;position:absolute;right:20px;top:18px}.cert-featured-card h3{color:var(--primary-color);font-size:16px;font-weight:700;letter-spacing:-.2px;margin-bottom:6px}.cert-featured-card p{color:var(--text-light);font-size:13px;margin:0}.cert-others-title{color:var(--text-light);font-size:15px;font-weight:700;margin-bottom:18px}.cert-list{display:flex;flex-direction:column;gap:2px}.cert-row{grid-gap:16px;align-items:center;border-bottom:1px solid #f0f0f0;display:grid;gap:16px;grid-template-columns:90px 1fr auto;padding:12px 0}.cert-date{color:#999;font-size:13px}.cert-name{color:var(--text-color);font-size:14px;font-weight:600}.cert-org{color:#999;font-size:12px;white-space:nowrap}.cert-toggle{background:none;border:1px solid var(--border-color);border-radius:20px;color:var(--text-color);cursor:pointer;font-size:13px;font-weight:600;margin-top:20px;padding:8px 20px;transition:background-color .3s ease,border-color .3s ease}.cert-toggle:hover{background-color:#000;border-color:#000;color:#fff}@media (max-width:640px){.certifications{padding:80px 0}.certifications h2{font-size:32px}.cert-featured-card{padding:18px 20px}.cert-status{right:20px;top:18px}.cert-row{gap:4px;grid-template-columns:1fr;padding:14px 0}.cert-org{white-space:normal}}.projects{background-color:#f9f9f9;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:var(--spacing-xl) 0;scroll-snap-align:start}.projects .section-label{color:var(--text-light);display:block;font-size:14px;font-weight:700;letter-spacing:3px;margin-bottom:12px;text-transform:uppercase}.projects h2{color:var(--primary-color);font-size:40px;font-weight:900;letter-spacing:-1px;margin-bottom:50px}.projects-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.project-card{background:#fff;border:1px solid var(--border-color);border-radius:8px;display:flex;flex-direction:column;height:100%;padding:var(--spacing-md);transition:transform .3s ease,box-shadow .3s ease}.project-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-5px)}.project-card h3{color:var(--primary-color)}.project-card p{color:var(--text-light);flex:1 1;line-height:1.6}.card-divider{border:none;border-top:1px solid var(--border-color);margin:var(--spacing-md) 0}.tags{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.tag{background-color:#f0f0f0;border:1px solid var(--border-color);border-radius:20px;color:var(--text-color);font-size:12px;padding:4px 12px}.links{display:flex;gap:var(--spacing-sm)}.link-btn{align-items:center;background-color:var(--primary-color);border-radius:20px;color:#fff;display:inline-flex;font-size:14px;font-weight:600;gap:6px;padding:8px 16px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.link-btn:hover{box-shadow:0 6px 14px #0003;text-decoration:none;transform:translateY(-2px)}.link-btn-arrow{transition:transform .2s ease}.link-btn:hover .link-btn-arrow{transform:translateX(3px)}.link-btn-outline{background-color:initial;border:1.5px solid var(--primary-color);color:var(--primary-color)}.link-btn-outline:hover{background-color:var(--primary-color);color:#fff}@media (max-width:640px){.projects{padding:80px 0}.projects h2{font-size:32px}}.contact{background-color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:var(--spacing-xl) 0;scroll-snap-align:start;text-align:center}.contact .section-label{color:var(--text-light);display:block;font-size:14px;font-weight:700;letter-spacing:3px;margin-bottom:12px;text-transform:uppercase}.contact h2{color:var(--primary-color);font-size:40px;font-weight:900;letter-spacing:-1px;margin-bottom:20px}.contact-intro{color:var(--text-light);font-size:17px;margin-bottom:40px}.contact-links{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.contact-link{align-items:center;background-color:var(--primary-color);border:none;border-radius:24px;color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;font-size:15px;font-weight:600;justify-content:center;min-width:140px;padding:14px 28px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,min-width .35s ease,padding .35s ease,background-color .35s ease,border-color .35s ease}.contact-link:hover{box-shadow:0 10px 20px #00000026;text-decoration:none;transform:translateY(-3px)}.contact-email{position:relative}.contact-email.open{background-color:#fff;border:2px solid var(--primary-color);box-shadow:0 10px 24px #0000001f;min-width:300px;padding:20px 36px}.contact-email.open:hover{box-shadow:0 10px 24px #0000001f;transform:none}.contact-email-close{align-items:center;border-radius:50%;color:var(--text-light);display:flex;font-size:16px;height:22px;justify-content:center;left:14px;line-height:1;position:absolute;top:50%;transform:translateY(-50%);transition:background-color .2s ease,color .2s ease;width:22px}.contact-email-close:hover{background-color:#f0f0f0;color:var(--primary-color)}.contact-email.open .contact-email-text{color:var(--primary-color);font-size:16px;font-weight:700;transition:color .2s ease}@media (max-width:640px){.contact{padding:80px 0}.contact h2{font-size:32px}.contact-links{align-items:center;flex-direction:column}.contact-link{max-width:260px;width:100%}}.footer{background-color:#f9f9f9;border-top:1px solid #e0e0e0;color:#666;margin-top:var(--spacing-xl);padding:var(--spacing-lg) 0;scroll-snap-align:start}.footer-content{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:1fr 1fr 1fr;text-align:center}.footer-links,.footer-social{display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:center}.footer-links a,.footer-social a{color:#666;font-size:14px;text-decoration:none;transition:color .3s ease}.footer-links a:hover,.footer-social a:hover{color:#000}.footer-middle p{color:#999;font-size:14px;margin:0}@media (max-width:768px){.footer-content{gap:var(--spacing-md);grid-template-columns:1fr}}.chatbot{bottom:28px;position:fixed;right:28px;z-index:1000}.chatbot-toggle{background:#000;border:none;border-radius:50%;box-shadow:0 8px 20px #00000040;color:#fff;cursor:pointer;font-size:24px;height:56px;transition:transform .2s ease;width:56px}.chatbot-toggle:hover{transform:scale(1.08)}.chatbot-window{animation:balloon-up .4s cubic-bezier(.34,1.56,.64,1);background:#fff;border-radius:12px;bottom:72px;box-shadow:0 16px 40px #0003;display:flex;flex-direction:column;height:672px;max-height:80vh;overflow:hidden;position:absolute;right:0;transform-origin:bottom right;width:512px}@keyframes balloon-up{0%{opacity:0;transform:translateY(40px) scale(.4)}to{opacity:1;transform:translateY(0) scale(1)}}.chatbot-header{align-items:center;background:#000;color:#fff;display:flex;font-size:16px;font-weight:700;justify-content:space-between;padding:16px 20px}.chatbot-close{background:none;border:none;color:#fff;cursor:pointer;font-size:20px;line-height:1}.chatbot-messages{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:20px}.chatbot-message{border-radius:12px;font-size:15px;line-height:1.5;max-width:80%;padding:10px 14px}.chatbot-message.bot{align-self:flex-start;background:#f0f0f0;border-bottom-left-radius:2px;color:#000}.chatbot-message.user{align-self:flex-end;background:#000;border-bottom-right-radius:2px;color:#fff}.chatbot-input-area{border-top:1px solid var(--border-color);display:flex;gap:10px;padding:14px}.chatbot-input-area input{border:1px solid var(--border-color);border-radius:20px;flex:1 1;font-size:15px;outline:none;padding:10px 16px}.chatbot-input-area input:focus{border-color:#000}.chatbot-input-area button{background:#000;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:15px;padding:10px 18px}@media (max-width:560px){.chatbot-window{height:70vh;width:calc(100vw - 40px)}}
/*# sourceMappingURL=main.12e5f81f.css.map*/