body{-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{-webkit-font-smoothing:antialiased;background-color:#050505;color:#fff;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:24px;line-height:1.6;overflow-y:auto}body,html{-ms-overflow-style:none;overflow-x:hidden;scrollbar-width:none}body::-webkit-scrollbar{display:none}html{scroll-behavior:smooth}h1,h2,h3,h4{font-weight:700;letter-spacing:-.5px;text-transform:uppercase}h1{font-size:4.5rem;line-height:1.02}h2{font-size:3.2rem;margin-bottom:1rem}h3{font-size:2rem}.label{border-left:2px solid #fff;color:#888;font-size:.85rem;letter-spacing:2px;margin-bottom:1.5rem;padding-left:10px;text-transform:uppercase}button{cursor:pointer;font-family:inherit;transition:all .3s ease}.btn-primary{background:#fff;border:none;color:#000;font-size:1.05rem;font-weight:700;letter-spacing:1px;margin-top:20px;padding:18px 36px;text-transform:uppercase}.btn-primary:hover{background:#ccc}.btn-outline{background:#0000;border:1px solid #fff;color:#fff;font-size:1.05rem;font-weight:700;letter-spacing:1px;margin-top:30px;padding:18px 36px;text-transform:uppercase}.btn-outline:hover{background:#fff;color:#000}.navbar{align-items:center;display:flex;justify-content:space-between;padding:20px 50px;position:fixed;top:0;transition:background .3s ease;width:100%;z-index:1000}.navbar.scrolled{background:#050505f2;border-bottom:1px solid #222}.logo{font-size:1.2rem;font-weight:900}.logo,.nav-links button{letter-spacing:1px;text-transform:uppercase}.nav-links button{background:none;border:none;color:#fff;font-size:1rem;margin-left:30px;opacity:.8}.nav-links button:hover{opacity:1}.section{border-bottom:1px solid #1a1a1a;padding:100px 50px}.hero{align-items:center;background-color:#050505;display:flex;height:100vh;padding:0 50px;perspective:900px;position:relative}.hero-ascii{pointer-events:none;position:absolute;right:750px;top:50%;transform:translateY(-50%);transform-style:preserve-3d;width:360px}.ascii-layer{font-family:Courier New,Consolas,monospace;font-size:.95rem;line-height:.95;margin:0;transform-origin:center;transition:transform .25s ease,opacity .25s ease;white-space:pre}.ascii-layer.layer-back{color:#0000;filter:blur(.6px);transform:translateZ(-18px) rotateY(-8deg)}.ascii-layer.layer-mid{color:#ffffff4d;transform:translateZ(-8px) rotateY(-4deg)}.ascii-layer.layer-front{color:#0000;text-shadow:0 1px 0 #0000;transform:translateZ(0) rotateY(0deg)}@media (max-width:768px){.hero-ascii{display:none}}.hero-content{max-width:800px;z-index:2}.hero-content p{color:#aaa;font-size:1.6rem;margin-top:20px;max-width:700px}.bio-section .content-grid{grid-gap:50px;display:grid;gap:50px;grid-template-columns:1fr 1fr}.bio-section p{color:#ccc;font-size:1.1rem}.stats-col{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.stat-item h3{font-size:4.5rem;margin-bottom:5px}.stat-item span{color:#666;font-size:.8rem;letter-spacing:1px;text-transform:uppercase}.projects-section h2{margin-bottom:50px}.projects-grid{grid-gap:2px;background:#222;border:1px solid #222;display:grid;gap:2px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.project-card{background:#0a0a0a;border:1px solid #0000;display:flex;flex-direction:column;justify-content:space-between;min-height:340px;overflow:hidden;padding:48px;position:relative;transition:border-color .3s ease;z-index:1}.project-card:hover{background:#000;border-color:#fff}.project-bg-image{height:100%;left:0;object-fit:cover;opacity:0;position:absolute;top:0;transition:opacity .4s ease-in-out;width:100%;z-index:-1}.project-card:hover .project-bg-image{opacity:.3}.card-content{padding:0;pointer-events:none;position:relative;z-index:2}.card-arrow,.tech-stack{pointer-events:auto;position:relative;z-index:2}.card-arrow{padding:0}@media (max-width:768px){.project-card{min-height:auto;padding:28px}}.tech-stack span{border:1px solid #333;color:#888;font-size:.85rem;margin-right:6px;padding:6px 10px}.card-arrow{align-self:flex-end;font-size:1.5rem;margin-top:20px}.resume-container{max-width:800px}.timeline{border-left:1px solid #333;margin-top:50px}.timeline-item{margin-bottom:50px;padding-left:30px;position:relative}.timeline-item:before{background:#fff;content:"";height:9px;left:-5px;position:absolute;top:5px;width:9px}.year{color:#666;font-size:.8rem;margin-bottom:5px}.job-details h4{color:#888;font-weight:400;margin-bottom:10px}.job-details p{color:#bbb}.footer{background:#000;border-top:1px solid #222;padding:80px 50px 30px}.footer-content{display:flex;justify-content:space-between;margin-bottom:80px}.email-link{border-bottom:2px solid #333;color:#fff;font-size:2rem;font-weight:700;text-decoration:none;transition:border .3s}.email-link:hover{border-color:#fff}.footer-links ul{list-style:none}.footer-links li{margin-bottom:10px}.footer-links a{color:#888;font-size:.8rem;letter-spacing:1px;text-decoration:none;text-transform:uppercase;transition:color .3s ease}.footer-links a:hover{color:#fff;text-decoration:none}.copyright{color:#444;font-size:.75rem;text-transform:uppercase}@media (max-width:768px){h1{font-size:2.8rem}h2{font-size:1.8rem}h3{font-size:1.4rem}body{font-size:16px}.btn-outline,.btn-primary{font-size:.95rem;padding:12px 20px}.project-card{min-height:auto;padding:28px}.hero-content p{font-size:1.05rem;max-width:100%}.nav-links{display:none}}.resume-modal{align-items:center;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.resume-modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#000000b3;inset:0;position:absolute}.resume-modal-content{background:#0a0a0a;border:1px solid #222;box-shadow:0 10px 40px #0009;display:flex;flex-direction:column;height:86vh;max-width:1200px;padding:14px;position:relative;width:92%;z-index:2001}.resume-modal-close{background:#0000;border:none;color:#fff;cursor:pointer;font-size:1.2rem;position:absolute;right:8px;top:8px;z-index:2002}.resume-iframe{background:#fff;border:none;flex:1 1 auto;width:100%}.resume-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:10px}.resume-modal .btn-outline{font-size:.9rem;padding:10px 16px}a,a:visited{color:inherit;text-decoration:none}a:focus,a:hover{color:inherit;outline:none;text-decoration:underline}.tech-section h2{margin-bottom:24px}.tech-grid{grid-gap:18px;align-items:start;display:grid;gap:18px;grid-template-columns:repeat(4,1fr)}.tech-column{background:#0b0b0b;border:1px solid #1a1a1a;display:flex;flex-direction:column;gap:10px;min-height:140px;padding:20px}.tech-column h4{color:#bbb;font-size:1rem;letter-spacing:1px;margin-bottom:6px;text-transform:uppercase}.tech-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.tech-item{background:#111;border:1px solid #222;border-radius:6px;color:#ddd;display:inline-block;font-size:.95rem;padding:8px 10px}@media (max-width:992px){.tech-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.tech-grid{grid-template-columns:1fr}}
/*# sourceMappingURL=main.b4bde724.css.map*/