*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html,body{height:100%}body{font-family:Geist Mono,Courier New,monospace;line-height:1.5;-webkit-font-smoothing:antialiased;background-color:#151b2b;color:#333}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root{isolation:isolate;min-height:100vh}#root{width:100%;text-align:center}.App{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem;max-width:800px;margin:45px auto 0;min-height:calc(100vh - 45px)}h1{font-size:3.2em;line-height:1.1;margin-bottom:1rem;color:#333}.greeting{font-size:1.2em;color:#cfcfcf;margin-bottom:.5rem;text-align:center}.description{font-size:1.1em;color:#cfcfcf;margin-bottom:1.8rem;text-align:center}.highlight{color:#d18701;font-weight:600}.name-title{font-size:2.5em;font-weight:500;color:#cfcfcf;margin-bottom:.5rem;margin-left:2em;display:flex;align-items:center;justify-content:center;gap:.8em}.typing-emoticon{color:#cfcfcf;font-size:1em;min-width:3em;display:inline-block;text-align:left;position:relative}.cursor{animation:blink 1s infinite;font-weight:400;color:#cfcfcf}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes typing-blink{0%{opacity:0;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}p{font-size:1.2em;color:#666;line-height:1.6}.email-button{background:#fff;color:#1a1a1a;border:2px solid #e5e7eb;border-radius:12px;padding:.8rem 1.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:2rem;box-shadow:0 4px 20px #0000001a;font-family:inherit;display:inline-flex;align-items:center;justify-content:center}.email-button:hover{transform:translateY(-3px);box-shadow:0 8px 30px #00000026;border-color:#d1d5db;background:#f9fafb}.email-button:active{transform:translateY(-1px);box-shadow:0 4px 15px #0000001f}.email-button svg{margin-right:.5rem;font-size:1.1em;color:#1a1a1a}@media (prefers-color-scheme: dark){:root{color:#213547;background-color:#151b2b}}@media (max-width: 320px){.main-content{padding:2rem .8rem;margin-top:50px}.name-title{font-size:1.8em;flex-direction:column;gap:.2em;margin-left:0}.typing-emoticon{font-size:.9em;min-width:2.5em}.greeting{font-size:1em}.description{font-size:.95em;margin-bottom:1.5rem;padding:0 .5rem}.email-button{font-size:.8rem;padding:.6rem 1rem;margin-top:1rem}}@media (min-width: 321px) and (max-width: 480px){.main-content{padding:2.5rem 1rem 2rem;margin-top:50px}.name-title{font-size:2.2em;flex-direction:column;gap:.3em;margin-left:0}.typing-emoticon{font-size:.95em;min-width:3em}.greeting{font-size:1.1em}.description{font-size:1em;margin-bottom:1.6rem;padding:0 .5rem}.email-button{font-size:.85rem;padding:.6rem 1.2rem;margin-top:1.2rem}}@media (min-width: 481px) and (max-width: 768px){.main-content{padding:3rem 1.5rem 2rem;margin-top:50px}.name-title{font-size:2.6em;flex-direction:row;gap:.6em;margin-left:.5em}.typing-emoticon{font-size:1em}.greeting{font-size:1.15em}.description{font-size:1.05em;margin-bottom:1.7rem;padding:0 1rem}.email-button{font-size:.9rem;padding:.7rem 1.3rem;margin-top:1.5rem}}@media (min-width: 769px) and (max-width: 1024px){.main-content{padding:3.5rem 2rem 2rem;margin-top:50px}.name-title{font-size:2.8em;gap:.7em;margin-left:1em}.typing-emoticon{font-size:1em}.greeting{font-size:1.2em}.description{font-size:1.1em;margin-bottom:1.8rem;max-width:700px}.email-button{font-size:.95rem;padding:.75rem 1.4rem;margin-top:1.8rem}}@media (min-width: 1025px){.main-content{padding:4rem 2rem;max-width:900px}.name-title{font-size:3.2em;gap:.8em;margin-left:1.5em}.greeting{font-size:1.3em}.description{font-size:1.2em;max-width:800px}}.about-section{background:#151b2b;padding:4rem 0}.about-container{max-width:1000px;margin:0 auto;padding:0 2rem}.section-title{font-size:1.5em;font-weight:700;color:#cfcfcf;text-align:left;margin-bottom:3rem}.about-content{display:grid;grid-template-columns:2fr 1fr;gap:4rem;align-items:start}.about-text{color:#b3b3b3;font-size:.9em;line-height:1.8;text-align:justify}.about-text p{margin-bottom:1.5rem;color:#b3b3b3}.about-text strong{color:#cfcfcf;font-weight:600}.tech-highlight{color:#3b82f6;font-weight:600;background:#3b82f61a;padding:.1em .3em;border-radius:4px}.about-photo{display:flex;justify-content:center;align-items:flex-start;margin-top:-4.5rem}.photo-container{position:relative;width:280px;height:420px;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px #0000004d;transition:all .3s ease}.photo-container:hover{transform:translateY(-5px);box-shadow:0 15px 40px #0006}.profile-img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.photo-container:hover .profile-img{transform:scale(1.05)}.photo-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000c);padding:2rem 1.5rem 1.5rem;color:#fff;text-align:center;opacity:0;transition:opacity .3s ease}.photo-container:hover .photo-overlay{opacity:1}.photo-overlay p{font-size:1.1em;font-weight:600;margin:0;color:#fff}@media (max-width: 320px){.about-section{padding:2rem 0}.about-container{padding:0 .8rem}.section-title{font-size:1.6em;margin-bottom:1.5rem;text-align:center}.about-content{grid-template-columns:1fr;gap:1.5rem}.about-text{font-size:.9rem;line-height:1.6;text-align:left}.about-photo{margin-top:0}.photo-container{width:200px;height:300px}.photo-overlay p{font-size:.9em}}@media (min-width: 321px) and (max-width: 480px){.about-section{padding:2.5rem 0}.about-container{padding:0 1rem}.section-title{font-size:1.8em;margin-bottom:1.8rem;text-align:center}.about-content{grid-template-columns:1fr;gap:2rem}.about-text{font-size:.95rem;line-height:1.7;text-align:left}.about-photo{margin-top:0}.photo-container{width:220px;height:330px}.photo-overlay p{font-size:1em}}@media (min-width: 481px) and (max-width: 768px){.about-section{padding:3rem 0}.about-container{padding:0 1.5rem}.section-title{font-size:2em;margin-bottom:2rem;text-align:center}.about-content{grid-template-columns:1fr;gap:2.5rem}.about-text{font-size:1rem;line-height:1.7;text-align:left}.about-photo{margin-top:0;order:-1}.photo-container{width:250px;height:380px}}@media (min-width: 769px) and (max-width: 1024px){.about-section{padding:3.5rem 0}.about-container{padding:0 2rem;max-width:900px}.section-title{font-size:2.2em;margin-bottom:2.5rem}.about-content{grid-template-columns:1.8fr 1fr;gap:3rem;align-items:start}.about-text{font-size:1.05rem;line-height:1.8}.about-photo{margin-top:-2rem}.photo-container{width:260px;height:390px}}@media (min-width: 1025px){.about-section{padding:4rem 0}.about-container{max-width:1100px;padding:0 2rem}.section-title{font-size:2.5em;margin-bottom:3rem}.about-content{grid-template-columns:2fr 1fr;gap:4rem}.about-text{font-size:1.1rem;line-height:1.8}.about-photo{margin-top:-4rem}.photo-container{width:300px;height:450px}}.experience-section{background:#151b2b;padding:4rem 0}.experience-container{max-width:900px;margin:0 auto;padding:0 2rem}.tabs-nav{display:flex;gap:.5rem;margin-bottom:3rem;border-bottom:2px solid rgba(255,255,255,.1)}.tab-button{background:transparent;border:none;color:#b3b3b3;padding:1rem 1.5rem;font-size:1rem;font-weight:500;font-family:inherit;cursor:pointer;border-bottom:3px solid transparent;transition:all .3s ease;position:relative}.tab-button:hover{color:#cfcfcf;background:#ffffff0d}.tab-button.active{color:#d18701;border-bottom-color:#d18701;background:#3b82f61a}.tab-content{min-height:300px;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.experience-details{background:#151b2b;padding:2.5rem;border-radius:12px}.experience-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.job-title{font-size:1.8em;color:#cfcfcf;font-weight:600;margin:0}.experience-period{color:#cfcfcf;padding:.5rem 1rem;border-radius:20px;font-size:.9em;font-weight:600}.company-name{font-size:1.2em;color:#d18701;font-weight:500;margin-bottom:1.5rem}.job-description{font-size:1em;line-height:1.8;color:#b3b3b3;margin-bottom:2rem;text-align:left;white-space:pre-line}.job-skills{display:flex;flex-wrap:wrap;gap:.8rem}.skill-badge{background:#ffffff0d;color:#cfcfcf;padding:.5rem 1rem;border-radius:20px;font-size:.9em;font-weight:500;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.skill-badge:hover{background:#ffffff1a;transform:translateY(-2px)}@media (max-width: 320px){.experience-section{padding:2rem 0}.experience-container{padding:0 .8rem;max-width:100%}.tabs-nav{flex-direction:column;gap:0;margin-bottom:1.5rem}.tab-button{padding:.6rem .8rem;border-bottom:1px solid rgba(255,255,255,.1);border-radius:0;text-align:left;font-size:.8rem}.tab-button.active{border-bottom-color:#d18701;border-left:3px solid #D18701;background:#d187011a}.experience-details{padding:1rem}.experience-header{flex-direction:column;align-items:flex-start;gap:.6rem}.job-title{font-size:1.2em;line-height:1.3}.company-name{font-size:1em}.experience-period{font-size:.75em;padding:.3rem .6rem}.job-description{font-size:.9rem;line-height:1.6;text-align:left}}@media (min-width: 321px) and (max-width: 480px){.experience-section{padding:2.5rem 0}.experience-container{padding:0 1rem;max-width:100%}.tabs-nav{flex-direction:column;gap:0;margin-bottom:1.8rem}.tab-button{padding:.7rem .8rem;border-bottom:1px solid rgba(255,255,255,.1);border-radius:0;text-align:left;font-size:.9rem}.tab-button.active{border-bottom-color:#d18701;border-left:3px solid #D18701;background:#d187011a}.experience-details{padding:1.5rem}.experience-header{flex-direction:column;align-items:flex-start;gap:.7rem}.job-title{font-size:1.3em;line-height:1.3}.company-name{font-size:1.05em}.experience-period{font-size:.8em;padding:.4rem .7rem}.job-description{font-size:.95rem;line-height:1.7;text-align:left}}@media (min-width: 481px) and (max-width: 768px){.experience-section{padding:3rem 0}.experience-container{padding:0 1.5rem;max-width:100%}.tabs-nav{flex-direction:column;gap:0;margin-bottom:2rem}.tab-button{padding:.8rem 1rem;border-bottom:1px solid rgba(255,255,255,.1);border-radius:0;text-align:left;font-size:.95rem}.tab-button.active{border-bottom-color:#d18701;border-left:3px solid #D18701;background:#d187011a}.experience-details{padding:2rem}.experience-header{flex-direction:column;align-items:flex-start;gap:.8rem}.job-title{font-size:1.5em}.company-name{font-size:1.1em}.experience-period{font-size:.85em;padding:.4rem .8rem}.job-description{font-size:1rem;text-align:left}}@media (min-width: 769px) and (max-width: 1024px){.experience-section{padding:3.5rem 0}.experience-container{padding:0 2rem;max-width:95%}.tabs-nav{flex-direction:row;gap:.5rem;margin-bottom:2.5rem}.tab-button{padding:.9rem 1.2rem;border-bottom:3px solid transparent;border-radius:0;text-align:center;font-size:.95rem}.tab-button.active{border-bottom-color:#d18701;background:#d187011a}.experience-details{padding:2.5rem}.experience-header{flex-direction:row;align-items:center;gap:1rem}.job-title{font-size:1.7em}.company-name{font-size:1.15em}.job-description{font-size:1.05rem;text-align:left}}@media (min-width: 1025px){.experience-section{padding:4rem 0}.experience-container{max-width:1000px;padding:0 2rem}.tabs-nav{flex-direction:row;gap:.5rem;margin-bottom:3rem}.tab-button{padding:1rem 1.5rem;border-bottom:3px solid transparent;font-size:1rem}.tab-button.active{border-bottom-color:#d18701;background:#d187011a}.experience-details{padding:3rem}.experience-header{flex-direction:row;align-items:center;gap:1rem}.job-title{font-size:1.8em}.company-name{font-size:1.2em}.job-description{font-size:1.1rem;text-align:left}}.company-name{font-size:1.1em}.job-description{font-size:.95rem}.experience-period,.skill-badge{font-size:.8em;padding:.4rem .8rem}.footer{background:#151b2b;padding:2rem 0}.footer-content{max-width:1200px;margin:0 auto;padding:0 2rem;text-align:center}.footer-content p{color:#b3b3b3;font-size:.95rem;line-height:1.6;margin-bottom:.8rem}.footer-content .highlight{color:#d18701;font-weight:600}.tech-stack{color:#d18701;font-weight:500;font-size:.9rem}.copyright{font-size:.85rem!important;color:#888!important;margin-top:1rem!important;margin-bottom:0!important}@media (max-width: 320px){.footer{padding:1.2rem 0;margin-top:2rem}.footer-content{padding:0 .8rem}.footer-content p{font-size:.8rem;line-height:1.5}.tech-stack{font-size:.75rem}.copyright{font-size:.7rem!important;margin-top:.8rem!important}}@media (min-width: 321px) and (max-width: 480px){.footer{padding:1.4rem 0;margin-top:2.5rem}.footer-content{padding:0 1rem}.footer-content p{font-size:.85rem;line-height:1.5}.tech-stack{font-size:.8rem}.copyright{font-size:.75rem!important;margin-top:.9rem!important}}@media (min-width: 481px) and (max-width: 768px){.footer{padding:1.6rem 0;margin-top:3rem}.footer-content{padding:0 1.5rem}.footer-content p{font-size:.9rem;line-height:1.6}.tech-stack{font-size:.85rem}.copyright{font-size:.8rem!important;margin-top:1rem!important}}@media (min-width: 769px) and (max-width: 1024px){.footer{padding:1.8rem 0;margin-top:3.5rem}.footer-content{padding:0 2rem}.footer-content p{font-size:.95rem;line-height:1.6}.tech-stack{font-size:.9rem}.copyright{font-size:.82rem!important;margin-top:1rem!important}}@media (min-width: 1025px){.footer{padding:2rem 0;margin-top:4rem}.footer-content{padding:0 2rem}.footer-content p{font-size:1rem;line-height:1.6}.tech-stack{font-size:.95rem}.copyright{font-size:.85rem!important;margin-top:1rem!important}}.header{background-color:#151b2b;border-bottom:1px solid #151B2B;padding:.2rem 0;position:fixed;top:0;width:100%;z-index:1000}.container{width:100%;margin:0;padding:0 2rem;display:flex;justify-content:center;align-items:center}.nav{display:flex;gap:4rem;align-items:center;justify-content:center}.nav-link{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:#e5e7eb;padding:.75rem 1.25rem;border-radius:8px;transition:all .3s ease;font-weight:500;border:2px solid transparent}.nav-link:hover{color:#fff;transform:translateY(-2px)}.nav-link .icon{font-size:1.4rem;display:flex;align-items:center;justify-content:center}.nav-link .text{font-size:1rem;font-weight:600}@media (max-width: 320px){.header{padding:.15rem 0}.container{padding:0 .8rem}.nav{gap:1rem}.nav-link{padding:.4rem;font-size:.8rem}.nav-link .text{display:none}.nav-link .icon{font-size:1.6rem}}@media (min-width: 321px) and (max-width: 480px){.header{padding:.15rem 0}.container{padding:0 1rem}.nav{gap:1.3rem}.nav-link{padding:.45rem;font-size:.85rem}.nav-link .text{display:none}.nav-link .icon{font-size:1.7rem}}@media (min-width: 481px) and (max-width: 768px){.header{padding:.18rem 0}.container{padding:0 1.5rem}.nav{gap:1.8rem}.nav-link{padding:.5rem;font-size:.9rem}.nav-link .text{display:none}.nav-link .icon{font-size:1.8rem}}@media (min-width: 769px) and (max-width: 1024px){.header{padding:.2rem 0}.container{padding:0 2rem}.nav{gap:2.5rem}.nav-link{padding:.6rem 1rem;font-size:.95rem}.nav-link .text{display:inline;font-size:.9rem}.nav-link .icon{font-size:1.3rem}}@media (min-width: 1025px){.header{padding:.2rem 0}.container{padding:0 2rem}.nav{gap:4rem}.nav-link{padding:.75rem 1.25rem;font-size:1rem}.nav-link .text{display:inline;font-size:1rem}.nav-link .icon{font-size:1.4rem}}
