body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#000}.App{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App,html{background-color:initial}html{scroll-behavior:smooth}h2{align-items:center;display:flex;gap:.75rem}.section-icon{flex-shrink:0}.hero{background:#0000;margin:0 auto;max-width:1200px;padding:2.5rem 2rem 2rem;text-align:center;width:calc(100% - 20px)}.hero-container{margin:0 auto;max-width:800px}.profile-picture{background:#fff;border:3px solid #fff;border-radius:50%;box-shadow:0 4px 8px #00000080;height:150px;margin:0 auto 2rem;overflow:hidden;width:150px}.hero-text{color:#fff;font-size:2.5rem;font-weight:600}.profile-picture img{height:100%;object-fit:cover;width:100%}.profile-placeholder{align-items:center;background:linear-gradient(135deg,#2a2a2a,#1a1a1a);color:#fff;display:flex;font-size:3rem;font-weight:700;height:100%;justify-content:center;letter-spacing:.1em;width:100%}.hero h1{color:#fff;font-size:2.5rem;font-weight:600;margin-bottom:.5rem}.roles{display:flex;flex-wrap:nowrap;gap:1rem;justify-content:center;margin:1.5rem 0 2rem}.role-item{align-items:center;background:#1a1a1a80;border:2px solid #33333380;border-radius:12px;cursor:default;display:flex;flex-direction:row;gap:.5rem;opacity:.7;padding:.75rem 1rem;white-space:nowrap}.role-icon{color:#fff;flex-shrink:0;font-size:1.25rem}.role-item span{color:#fff;font-size:.9rem;font-weight:500}.hero .subtitle{color:#ccc;font-size:1.1rem;margin-bottom:.5rem}.location-text{align-items:center;display:flex;gap:.5rem;justify-content:center}.location-icon{color:#ccc;font-size:1rem}.hero .location{color:#888;font-size:.95rem;margin-bottom:2rem}.resume-button{align-items:center;background:#1a1a1a;border:2px solid #333;border-radius:20px;color:#fff;display:inline-flex;font-size:1rem;font-weight:500;gap:.5rem;margin-top:1rem;padding:.75rem 2rem;text-decoration:none;transition:all .3s ease}.resume-button:hover{background:#2a2a2a;border-color:#fff;box-shadow:0 4px 8px #ffffff1a;transform:translateY(-2px)}.hero-links{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center}.hero-links a{color:#ccc;font-size:.95rem;text-decoration:none;transition:color .2s ease}.hero-links a:hover{color:#fff}@media (max-width:768px){.hero{padding:4rem 1rem 3rem}.hero h1{font-size:2rem}.hero .subtitle{font-size:1rem}.profile-picture{height:120px;width:120px}.profile-placeholder{font-size:2.5rem}.roles{align-items:center;flex-direction:column;gap:.75rem}.role-item{width:-webkit-fit-content;width:fit-content}}.about{background:#0d0d0d;border-radius:24px;margin:2rem auto;max-width:1200px;padding:2rem;width:calc(100% - 20px)}.about h2{color:#fff;font-size:2rem;font-weight:600;margin-bottom:1.5rem}.about p{color:#ccc;font-size:1rem;line-height:1.7;margin-bottom:1rem}.about h3{color:#fff;font-size:1.5rem;font-weight:600;margin-bottom:1rem;margin-top:2.5rem}.interests-list{display:flex;flex-wrap:wrap;gap:.75rem}.interests-list span{background:#1a1a1a;border:1px solid #333;border-radius:20px;color:#ccc;font-size:.9rem;padding:.5rem 1rem}.about .resume-button{align-items:center;background:#1a1a1a;border:2px solid #333;border-radius:20px;color:#fff;display:inline-flex;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 2rem;text-decoration:none;transition:all .3s ease}.about .resume-button:hover{background:#2a2a2a;border-color:#fff;box-shadow:0 4px 8px #ffffff1a;transform:translateY(-2px)}@media (max-width:768px){.about{padding:3rem 1rem}.about h2{font-size:1.75rem}.about h3{font-size:1.25rem}}.portfolio{background:#0000;margin:0 auto;max-width:1200px;padding:2rem;width:calc(100% - 20px)}.portfolio h2{color:#fff;font-size:2rem;font-weight:700;justify-content:center;margin-bottom:2rem;text-align:center}.projects-list{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-auto-rows:1fr;grid-template-columns:repeat(3,1fr)}.project-item{align-items:flex-start;background:#1a1a1a;border:2px solid #333;border-radius:16px;display:flex;flex-direction:row;gap:1rem;height:100%;padding:1.25rem;text-align:left;transition:all .3s ease}.project-item:hover{border-color:#fff;box-shadow:0 8px 16px #ffffff1a;transform:translateY(-4px)}.project-item h3{color:#fff;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.project-description{color:#ccc;font-size:.85rem;line-height:1.5;margin-bottom:.75rem}.project-technologies{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-start;margin-bottom:auto}.project-icon{align-items:center;background:#fff;border:1px solid #444;border-radius:10px;display:flex;flex-shrink:0;font-size:1.75rem;height:50px;justify-content:center;padding:.5rem;width:50px}.project-icon img{height:100%;object-fit:contain;width:100%}.project-details{display:flex;flex-direction:column;height:100%;width:100%}.tech-tag{background:#2a2a2a;border:1px solid #444;border-radius:8px;color:#fff;font-size:.7rem;font-weight:500;padding:.3rem .6rem}.project-link{align-self:flex-start;background:#fff;border:2px solid #fff;border-radius:8px;color:#000;display:inline-block;font-size:.8rem;font-weight:600;margin-top:.5rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease;width:auto}.project-link:hover{background:#0000;border-color:#fff;color:#fff;transform:translateX(4px)}.tech-tag:after{content:""}@media (max-width:1024px){.projects-list{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.portfolio{padding:4rem 1rem}.portfolio h2{font-size:2rem}.projects-list{grid-template-columns:1fr}}.skills{background:#0d0d0d;border-radius:24px;margin:2rem auto;max-width:1200px;padding:2rem;width:calc(100% - 20px)}.skills h2{color:#fff;font-size:2rem;font-weight:600;margin-bottom:.5rem}.section-description{color:#fff;font-size:.95rem;line-height:1.6;margin-bottom:1rem;text-align:left}.skills-grid{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.skill-item{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:.6rem .9rem;transition:all .2s ease}.skill-item:hover{background:#2a2a2a;border-color:#fff}.skill-header{align-items:center;display:flex;gap:.5rem}.skill-name{color:#fff;font-size:.85rem;font-weight:500}.skill-level{color:#888;font-size:.85rem;font-weight:400}.skill-bar,.skill-progress{display:none}.certifications-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:1rem}.certification-item{align-items:center;background:#1a1a1a;border:2px solid #333;border-radius:16px;display:flex;gap:1.5rem;padding:1.5rem;transition:all .3s ease}.certification-item:hover{border-color:#fff;box-shadow:0 8px 16px #ffffff1a;transform:translateY(-2px)}.certification-logo{align-items:center;background:#fff;border-radius:12px;display:flex;flex-shrink:0;height:60px;justify-content:center;padding:.75rem;width:60px}.certification-logo img{height:100%;object-fit:contain;width:100%}.certification-details{flex:1 1}.certification-name{color:#fff;font-size:1.1rem;font-weight:600;margin-bottom:.25rem}.certification-year{color:#888;font-size:.9rem}@media (max-width:768px){.skills{padding:4rem 1rem}.skills h2{font-size:2rem}.skills-grid{grid-template-columns:1fr}}.experience{background:#0d0d0d;border-radius:24px;margin:0 auto 2rem;max-width:1200px;padding:2rem;width:calc(100% - 20px)}.experience h2{color:#fff;font-size:2rem;font-weight:600;margin-bottom:2rem}.experience-header{align-items:center;display:flex;gap:1.25rem;margin-bottom:1rem}.company-logo{align-items:center;background:#fff;border:2px solid #333;border-radius:12px;display:flex;flex-shrink:0;height:60px;justify-content:center;padding:.5rem;width:60px}.company-logo img{height:100%;object-fit:contain;width:100%}.experience-info{flex:1 1}.timeline-content .period{color:#666;font-size:.85rem;font-style:italic;margin-bottom:0}.timeline-content .description{color:#ccc;font-size:.95rem;line-height:1.7}@media (max-width:768px){.experience{padding:3rem 1rem}.experience h2{font-size:1.75rem;margin-bottom:1.5rem}.timeline{padding-left:50px}.timeline:before{left:30px}.timeline-year{font-size:.75rem;left:-50px;width:35px}.timeline-item:before{height:10px;left:24px;top:4px;width:10px}.experience-header{align-items:center;flex-direction:row;gap:.75rem}.company-logo{height:50px;padding:.4rem;width:50px}.timeline-content h3{font-size:1.05rem}.timeline-content h4{font-size:.9rem}.timeline-content .period{font-size:.8rem}.timeline-content .description{font-size:.875rem;line-height:1.6}.timeline-content{padding-bottom:1.5rem}}@media (max-width:480px){.experience{padding:2rem 1rem}.experience h2{font-size:1.5rem}.timeline{padding-left:0}.timeline:before{display:none}.timeline-year{font-size:.85rem;margin-bottom:.5rem;padding-top:0;position:static;text-align:left;width:auto}.timeline-item{flex-direction:column}.timeline-item:before{display:none}.company-logo{height:45px;width:45px}.timeline-content h3{font-size:1rem}.timeline-content h4{font-size:.875rem}}.education{background:#0d0d0d;border-radius:24px;margin:2rem auto;max-width:1200px;padding:2rem;width:calc(100% - 20px)}.education h2{color:#fff;font-size:2rem;font-weight:600;margin-bottom:2rem}.timeline{display:flex;flex-direction:column;gap:2rem;padding-left:100px;position:relative}.timeline:before{background:#333;bottom:0;content:"";left:80px;position:absolute;top:0;width:2px}.timeline-item{align-items:flex-start;display:flex;padding:0;position:relative}.timeline-year{color:#fff;font-size:1rem;font-weight:600;left:-100px;padding-top:.2rem;position:absolute;text-align:right;width:60px}.timeline-item:before{background:#fff;border:2px solid #000;border-radius:50%;content:"";height:12px;left:-26px;position:absolute;top:8px;width:12px}.timeline-content{background:#0000;border-bottom:1px solid #333;border-radius:0;box-shadow:none;padding:0 0 2rem;transition:none}.timeline-content:hover{box-shadow:none;transform:none}.timeline-content h3{color:#fff;font-size:1.2rem;font-weight:600;margin-bottom:.25rem}.timeline-content h4{color:#888;font-size:1rem;font-weight:400;margin-bottom:.25rem}@media (max-width:768px){.education{padding:4rem 1rem}.education h2{font-size:2rem}.timeline{padding-left:60px}.timeline:before{left:40px}.timeline-year{font-size:.9rem;left:-60px;width:40px}.timeline-item:before{left:34px}}.contact{background:#0000;margin:0 auto;max-width:1200px;padding:2rem;width:calc(100% - 20px)}.contact h2{color:#fff;font-size:2rem;font-weight:600;justify-content:center;margin-bottom:1rem;text-align:center}.contact-intro{color:#ccc;font-size:1rem;line-height:1.7;margin-bottom:2.5rem;text-align:center}.contact-links{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center}.contact-link{align-items:center;background:#1a1a1a;border:2px solid #333;border-radius:20px;color:#fff;display:flex;flex-direction:column;gap:.75rem;min-width:140px;padding:2rem 1.5rem;text-decoration:none;transition:all .3s ease}.contact-link:hover{background:#2a2a2a;border-color:#fff;box-shadow:0 8px 16px #ffffff1a;transform:translateY(-4px)}.contact-link .icon{font-size:2.5rem}.contact-link span:last-child{font-size:1rem;font-weight:500}.pgp-section{margin-top:4rem;text-align:center}.pgp-section h3{color:#fff;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.pgp-badge{align-items:center;background:#1a1a1a;border:2px solid #333;border-radius:20px;display:inline-flex;gap:.75rem;padding:.75rem 1.25rem;position:relative;transition:all .3s ease}.pgp-badge:hover{border-color:#fff;box-shadow:0 8px 16px #ffffff1a}.pgp-badge:hover:after{background:#2a2a2a;border:1px solid #444;border-radius:8px;color:#fff;content:"Click to view full key";font-size:.85rem;left:50%;padding:.5rem 1rem;pointer-events:none;position:absolute;top:-2.5rem;transform:translateX(-50%);white-space:nowrap}.pgp-icon{color:#fff;font-size:1.25rem}.pgp-details{align-items:center;display:flex;gap:.5rem}.pgp-label{color:#888;font-size:.8rem;font-weight:500}.pgp-hash{color:#fff;font-family:Courier New,monospace;font-size:.85rem}.pgp-full-key{background:#1a1a1a;border:2px solid #333;border-radius:20px;margin-left:auto;margin-right:auto;margin-top:2rem;max-width:800px;padding:2rem}.pgp-full-key pre{word-wrap:break-word;background:#0d0d0d;border-radius:8px;color:#ccc;font-family:Courier New,monospace;font-size:.85rem;margin:0 0 1rem;overflow-x:auto;padding:1.5rem;white-space:pre-wrap}.copy-button{background:#2a2a2a;border:1px solid #444;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;padding:.75rem 1.5rem;transition:all .2s ease;width:100%}.copy-button:hover{background:#333;border-color:#fff}.footer{border-top:1px solid #333;margin-top:4rem;padding-top:2rem;text-align:center}.footer p{color:#888;font-size:.9rem;margin:0}@media (max-width:768px){.contact{padding:4rem 1rem}.contact h2{font-size:2rem}.contact-links{align-items:center;flex-direction:column}.contact-link{max-width:300px;width:100%}.pgp-badge{gap:.5rem;padding:.75rem 1rem}.pgp-badge:hover:after{font-size:.75rem;padding:.4rem .75rem;top:-2.25rem}.pgp-icon{font-size:1rem}.pgp-hash,.pgp-label{font-size:.75rem}.pgp-full-key{padding:1.5rem}.pgp-full-key pre{font-size:.75rem;padding:1rem}}.aurora-container{display:block;height:50%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1}
/*# sourceMappingURL=main.13e5b115.css.map*/