:root{--white:#ffffff;--light-gray:#f5f5f5;--dark-green:#2e7d32;--medium-green:#388e3c;--light-green:#4caf50;--text-dark:#263238;--text-medium:#455a64;--text-light:#607d8b;--font-sans:"Inter",-apple-system,sans-serif;--font-mono:"Roboto Mono",monospace;--transition:all 0.3s cubic-bezier(0.645,0.045,0.355,1);--shadow:0 10px 30px -15px rgba(0,0,0,0.2)}body{color:var(--text-medium);font-family:var(--font-sans);line-height:1.6;margin:0;padding:0;overflow-x:hidden}.loading-screen,body{background-color:var(--white)}.loading-screen{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999}.loading-logo{font-size:4rem;font-weight:700;color:var(--dark-green);margin-bottom:2rem}.loading-progress{height:2px;background-color:var(--light-green);max-width:300px}.header{position:fixed;top:0;width:100%;height:80px;background-color:var(--white);box-shadow:0 2px 10px rgba(0,0,0,.1);z-index:100;padding:0 80px;transition:transform .3s ease,box-shadow .3s ease}.header.nav-hidden{transform:translateY(-100%);box-shadow:none}.nav-container{display:flex;justify-content:flex-end;align-items:center;height:100%;max-width:1200px;margin:0 auto}.logo{position:absolute;left:50px;font-weight:700;font-size:1.5rem;color:var(--dark-green)}.logo-text{display:inline-block;width:42px;height:42px;border:2px solid var(--dark-green);border-radius:50%;text-align:center;line-height:38px;transition:var(--transition)}.logo:hover .logo-text{background-color:rgba(46,125,50,.1)}.nav{display:flex;align-items:center}.nav ol{display:flex;list-style:none;margin:0;padding:0}.nav li{margin:0 15px}.nav-link{position:relative;display:flex;align-items:center;font-size:.9rem;color:var(--text-dark);transition:var(--transition)}.nav-link:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background-color:var(--dark-green);transition:width .3s ease}.nav-link:hover:after{width:100%}.nav-number{font-family:var(--font-mono);font-size:.75rem;margin-right:5px}.nav-link:hover,.nav-number,.resume-button{color:var(--dark-green)}.resume-button{margin-left:20px;padding:.75rem 1.25rem;background-color:transparent;border:1px solid var(--dark-green);border-radius:4px;font-family:var(--font-mono);font-size:.9rem;transition:var(--transition);display:flex;align-items:center}.resume-button:hover{background-color:rgba(46,125,50,.1)}.hero-section{height:auto;min-height:100vh;display:flex;padding:0 80px;max-width:1200px;margin:0 auto;position:relative}.hero-content{max-width:800px;display:flex;flex-direction:column;align-items:flex-start;padding:30px 0 60px;z-index:1;text-align:left}.hero-subtitle{color:var(--dark-green);font-family:var(--font-mono);font-size:1.1rem;margin-bottom:1.5rem}.hero-title{color:var(--text-dark);margin:0 0 1.5rem}.hero-heading,.hero-title{font-size:clamp(2.5rem,8vw,5rem);font-weight:700;line-height:1.1;text-align:left}.hero-heading{color:var(--text-medium);margin:0 0 2rem}.hero-description{color:var(--text-medium);font-size:1.1rem;max-width:600px;text-align:left}.hero-description-bg{background:rgba(255,255,255,.62);border-radius:10px;box-shadow:0 4px 24px -8px rgba(46,125,50,.1);padding:1.1rem 2rem;margin-bottom:1rem;display:table;max-width:100%;min-width:0;width:auto;font-size:1.1rem;color:var(--text-dark);transition:background .2s;white-space:normal;box-sizing:border-box;text-align:left}@media (max-width:600px){.hero-description-bg{padding:.7rem 1rem;font-size:1rem;max-width:98vw;display:table}.hero-content{padding:8px 0 24px;align-items:stretch}}.hero-button{display:inline-block;padding:1rem 1.75rem;background-color:var(--dark-green);border:1px solid var(--dark-green);border-radius:4px;color:#fff;font-family:var(--font-mono);font-size:.95rem;font-weight:500;box-shadow:0 2px 12px 0 rgba(46,125,50,.13);margin-top:.5rem;margin-bottom:0;align-self:flex-start;transition:background .2s,color .2s,border .2s}.hero-button:hover{background-color:var(--medium-green);color:#fff;border-color:var(--medium-green)}.about-section{padding:100px 80px;max-width:1200px;margin:75px auto -30px;background-color:var(--light-gray)}.section-heading-container{display:flex;align-items:center;margin-bottom:50px}.section-heading{display:flex;align-items:center;font-size:clamp(1.5rem,5vw,2.5rem);color:var (--text-dark);white-space:nowrap}.section-number{color:var(--dark-green);font-family:var(--font-mono);font-size:1.2rem;margin-right:10px}.section-line{width:300px;height:1px;background-color:var(--text-light);margin-left:20px;opacity:.3}.about-content{display:grid;grid-template-columns:1fr 2fr;gap:50px;align-items:flex-start}.about-image,.image-wrapper{position:relative}.image-wrapper{max-width:300px}.profile-image{border-radius:4px;filter:grayscale(100%) contrast(1);transition:var(--transition);box-shadow:var(--shadow)}.image-overlay{top:0;left:0;background-color:var(--dark-green);mix-blend-mode:multiply;opacity:.1;border-radius:4px}.image-border,.image-overlay{position:absolute;width:100%;height:100%;transition:var(--transition)}.image-border{top:20px;left:20px;border:2px solid var(--dark-green);border-radius:4px;z-index:-1}.about-image:hover .profile-image{filter:none}.about-image:hover .image-overlay{opacity:0}.about-image:hover .image-border{top:15px;left:15px}.about-text{color:var(--text-medium)}.about-text p{margin-bottom:1.5rem;line-height:1.6}.skills-list{display:grid;grid-template-columns:repeat(3,minmax(100px,1fr));gap:0 10px;padding:0;margin:20px 0 0;list-style:none}.skills-list li{position:relative;margin-bottom:10px;padding-left:20px;font-family:var(--font-mono);font-size:.9rem}.skill-bullet{position:absolute;left:0;color:var(--dark-green)}.projects-section{padding:100px 80px;max-width:1200px;margin:0 auto}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:50px}.project-card{position:relative;background-color:var(--white);border-radius:4px;padding:2rem;transition:var(--transition);z-index:1;overflow:hidden;border:1px solid rgba(0,0,0,.1);box-shadow:var(--shadow)}.project-hover-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;transition:var(--transition)}.project-header{display:flex;justify-content:flex-end;margin-bottom:1.5rem}.project-links{display:flex;gap:1rem}.project-links a{color:var(--text-dark);transition:var(--transition)}.project-links a:hover{color:var(--dark-green)}.project-title{color:var(--text-dark);font-size:1.5rem;margin-bottom:1rem}.project-title a{color:inherit;transition:var(--transition)}.project-title a:hover{color:var(--dark-green)}.project-description{color:var(--text-medium);margin-bottom:1.5rem;line-height:1.6}.project-tech{display:flex;flex-wrap:wrap;gap:.5rem;font-family:var(--font-mono);font-size:.8rem;color:var(--text-light);list-style:none;padding:0;margin:0}.projects-section+.projects-section{margin-top:-125px}.contact-section{padding:100px 80px;max-width:600px;margin:0 auto;text-align:center;background-color:var(--light-gray)}.contact-title{color:var(--text-dark);font-size:1.5rem;margin-bottom:1rem}.contact-text{color:var(--text-medium);margin-bottom:3rem;line-height:1.6}.contact-button{display:inline-block;padding:1rem 1.75rem;background-color:transparent;border:1px solid var(--dark-green);border-radius:4px;color:var(--dark-green);font-family:var(--font-mono);font-size:.9rem;transition:var(--transition)}.contact-button:hover{background-color:rgba(46,125,50,.1)}.footer{padding:50px;text-align:center;background-color:var(--white)}.footer-content{max-width:1200px;margin:0 auto}.footer-links{display:flex;justify-content:center;gap:2rem;margin-bottom:1.5rem}.footer-links a{color:var (--text-dark);transition:var(--transition)}.footer-links a:hover{color:var(--dark-green)}.footer-note{color:var(--text-light);font-family:var(--font-mono);font-size:.8rem}.fixed.left-8{left:32px!important}.social-icon{color:var(--text-dark);transition:var(--transition);font-size:2.2rem}.social-icon:hover{color:var(--dark-green);transform:translateY(-3px)}.vertical-text{writing-mode:vertical-rl;letter-spacing:.1em;margin-bottom:1.5rem;font-size:1.2rem}.fixed.right-6{right:32px!important}.h-24.w-px{height:120px!important;width:2px!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:1024px){.about-section,.contact-section,.header,.hero-section,.projects-section{padding:0 24px;box-sizing:border-box}.about-section,.projects-section{max-width:100vw}.footer{padding:32px 16px}.fixed.left-8{left:16px!important}.fixed.right-6{right:16px!important}}@media (max-width:900px){.nav{display:none!important}.menu-button{display:block!important}.skills-list{grid-template-columns:repeat(2,minmax(100px,1fr));gap:0 8px;justify-items:center}.projects-section+.projects-section{margin-top:32px}.hero-section{padding:0 24px}.hero-content{padding:18px 0 36px;padding:36px 0}}@media (max-width:768px){.about-section,.contact-section,.header,.hero-section,.projects-section{padding:0 5vw;box-sizing:border-box}.about-section,.contact-section,.projects-section{max-width:95vw;border-radius:14px;margin-left:auto;margin-right:auto;background:var(--light-gray)}.about-content{display:flex;flex-direction:column;align-items:center;gap:0;width:100%}.about-image{max-width:320px;min-width:220px}.about-image,.image-wrapper{margin:0 auto;width:100%;display:flex;justify-content:center;align-items:center}.image-wrapper{max-width:100%;aspect-ratio:1/1;position:relative}.about-image .profile-image,.about-image img{width:100%!important;height:auto!important;max-width:320px;max-height:320px;min-width:180px;min-height:180px;display:block;object-fit:cover;border-radius:4px}.image-border,.image-overlay{width:100%;height:100%;left:0;top:0}.about-text{width:100%;margin-top:24px;text-align:center}.about-text-content{width:100%;margin:0 auto;padding:0 .5rem}.skills-list{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;padding:0;margin:20px 0 0;list-style:none;width:100%}.skills-list li{min-width:120px;padding-left:18px;font-size:.98rem;margin-bottom:8px;text-align:left;font-family:var(--font-mono);background:rgba(46,125,50,.06);border-radius:4px;padding-top:2px;padding-bottom:2px;display:flex;align-items:center;justify-content:flex-start}.skill-bullet{left:4px;font-size:1.1em}.section-heading{font-size:1.45rem!important;text-align:center;margin-bottom:1.5rem;width:100%;justify-content:center}.section-line{width:40px;margin-left:8px}.section-heading-container{margin-bottom:32px;justify-content:center}.projects-grid{grid-template-columns:1fr;gap:32px;max-width:92vw;margin-left:auto;margin-right:auto;padding-bottom:12px}.project-card{padding:1.2rem;margin:0 auto;max-width:370px;border-radius:10px}.projects-section{margin-bottom:56px}.contact-section,.projects-section{background:var(--light-gray);border-radius:14px}.contact-section{padding:32px 8vw;margin-top:56px;margin-bottom:32px;max-width:95vw}.contact-title{font-size:1.35rem!important}.footer{padding:24px 8px}.header{padding:0 12px}.fixed.left-8,.fixed.right-6{display:none!important}}@media (max-width:600px){.skills-list{grid-template-columns:1fr;gap:0 0}.hero-section{padding:0 8px}.hero-content{padding:8px 0 24px;align-items:stretch}.hero-description-bg{padding:.7rem 1rem;font-size:1rem;max-width:98vw;display:table}}@media (max-width:480px){.header{height:60px;padding:0 4vw}.logo{left:10px;font-size:1.1rem}.logo-text{width:32px;height:32px;line-height:28px;font-size:1.1rem}.hero-title{font-size:1.25rem!important}.hero-heading{font-size:1rem!important}.section-heading{font-size:1.15rem!important}.about-image{width:100%;max-width:320px;min-width:180px}.image-wrapper{max-width:100%;width:100%;aspect-ratio:1/1;min-width:180px;min-height:180px}.about-image .profile-image,.about-image img{width:100%!important;height:auto!important;max-width:320px;max-height:320px;min-width:180px;min-height:180px;object-fit:cover;border-radius:4px}.image-border,.image-overlay{width:100%;height:100%;left:0;top:0}.about-section,.contact-section,.projects-section{padding:14px 2vw;border-radius:10px;max-width:98vw}.footer{padding:12px 2px}.skills-list{gap:6px 8px}.skills-list li{min-width:90px;font-size:.92rem;padding-left:14px}.projects-grid{max-width:98vw;gap:18px}.project-card{max-width:98vw}.contact-title{font-size:1.1rem!important}}@media (max-width:900px){.section{margin:0 auto 44px;padding:2rem 0}.contact-section,.projects-section{margin-bottom:44px}.contact-section{margin-top:44px}}.certifications-section{padding:100px 80px;max-width:1200px;margin:0 auto;background-color:var(--white)}.certifications-badges{display:flex;gap:2rem;flex-wrap:wrap;align-items:center;justify-content:flex-start;margin-top:2rem}.cert-badge img{height:64px;margin-bottom:8px;border-radius:8px;background:#fff;box-shadow:var(--shadow)}.cert-badge span{font-size:.95rem;color:var(--text-dark);font-family:var(--font-mono);text-align:center}.certifications-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:32px;margin-top:48px;margin-bottom:24px}.cert-card{background:var(--light-gray);border-radius:10px;box-shadow:var(--shadow);padding:2.5rem 1.5rem 2rem;display:flex;flex-direction:column;align-items:center;min-height:240px;transition:box-shadow .2s}.cert-card:hover{box-shadow:0 16px 40px -10px rgba(46,125,50,.15)}.cert-image-wrapper{width:80px;height:80px;margin-bottom:1.2rem;display:flex;align-items:center;justify-content:center}.cert-image{width:80px;height:80px;object-fit:contain;border-radius:8px;background:#fff;box-shadow:0 2px 8px rgba(46,125,50,.08)}.cert-name{font-size:1.08rem;color:var(--text-dark);font-family:var(--font-mono);text-align:center;margin-top:.5rem;font-weight:500}@media (max-width:900px){.certifications-section{padding:60px 5vw;max-width:98vw;border-radius:14px;margin-left:auto;margin-right:auto;background:var(--white)}.certifications-grid{gap:20px;margin-top:32px}.cert-card{padding:1.5rem .8rem 1.2rem;min-height:180px}.cert-image,.cert-image-wrapper{width:56px;height:56px}}@media (max-width:480px){.certifications-section{padding:28px 2vw;max-width:99vw}.certifications-grid{gap:12px;margin-top:18px}.cert-card{padding:1rem .5rem;min-height:120px}.cert-image,.cert-image-wrapper{width:40px;height:40px}.cert-name{font-size:.98rem}}@media (max-width:768px){.certifications-section{padding:40px 5vw;max-width:95vw;border-radius:14px;margin-left:auto;margin-right:auto;background:var(--white)}.certifications-badges{gap:1.2rem;justify-content:center}.cert-badge img{height:48px}}.financial-projects-section{padding:100px 80px;max-width:1200px;margin:0 auto;background-color:var(--white)}.financial-projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:32px;margin-top:48px;margin-bottom:24px}.financial-project-card{background:var(--light-gray);border-radius:10px;box-shadow:var (--shadow);padding:2.2rem 1.5rem 2rem;display:flex;flex-direction:column;align-items:flex-start;min-height:200px;transition:box-shadow .2s}.financial-project-card:hover{box-shadow:0 16px 40px -10px rgba(46,125,50,.15)}.financial-project-header{width:100%;display:flex;justify-content:flex-end;margin-bottom:.5rem}.financial-project-date{font-size:.95rem;color:var(--text-light);font-family:var(--font-mono)}.financial-project-title{font-size:1.18rem;color:var(--text-dark);font-family:var(--font-mono);margin-bottom:.7rem;font-weight:600}.financial-project-description{color:var(--text-medium);font-size:1rem;margin-bottom:1.2rem;line-height:1.5}.financial-project-pdf-link{display:inline-block;padding:.7rem 1.2rem;background-color:var(--dark-green);color:#fff;border-radius:4px;font-family:var(--font-mono);font-size:.95rem;text-decoration:none;transition:background .2s}.financial-project-pdf-link:hover{background-color:var(--medium-green)}@media (max-width:900px){.financial-projects-section{padding:60px 5vw;max-width:98vw;border-radius:14px;margin-left:auto;margin-right:auto;background:var(--white)}.financial-projects-grid{gap:20px;margin-top:32px}.financial-project-card{padding:1.5rem .8rem 1.2rem;min-height:160px}}@media (max-width:480px){.financial-projects-section{padding:28px 2vw;max-width:99vw}.financial-projects-grid{gap:12px;margin-top:18px}.financial-project-card{padding:1rem .5rem;min-height:100px}.financial-project-title{font-size:1.02rem}}