html{scroll-behavior:smooth}:root{--bg-primary: #0a0a0a;--bg-secondary: #141414;--text-main: #f4f4f5;--text-muted: #a1a1aa;--accent-red: #dc2626;--border-color: #27272a}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}body{background-color:var(--bg-primary);color:var(--text-main);line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:0 2rem}h1,h2,h3{letter-spacing:-.05em;font-weight:700}.text-accent{color:var(--accent-red)}section{padding:6rem 0;border-bottom:1px solid var(--border-color)}.hero{height:80vh;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at top left,#1a1a1a,#0a0a0a)}.hero h1{font-size:4rem;margin-bottom:1rem;text-transform:uppercase}.hero p{font-size:1.2rem;color:var(--text-muted);max-width:600px}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:3rem}.portfolio-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);padding:2rem;border-radius:8px;transition:transform .2s,border-color .2s}.portfolio-card:hover{transform:translateY(-5px);border-color:var(--accent-red)}.portfolio-card img{width:100%;max-height:150px;object-fit:contain;margin-bottom:1.5rem;filter:grayscale(100%);transition:filter .3s ease}.portfolio-card:hover img{filter:grayscale(0%)}.ip-badge{display:inline-block;background-color:#dc26261a;color:var(--accent-red);padding:.5rem 1rem;border-radius:4px;font-family:monospace;font-size:1.1rem;border:1px solid var(--accent-red);margin-top:1rem}.mobile-menu-btn{display:none}.nav-links{display:flex;gap:2rem;align-items:center}@media (max-width: 768px){.container{padding:0 1.5rem}.hero h1{font-size:2.5rem;line-height:1.2}.hero p{font-size:1rem}h2{font-size:1.75rem}section{padding:4rem 0}.portfolio-card img{max-width:150px;margin:0 auto 1.5rem;display:block}.mobile-menu-btn{display:block;background:none;border:none;color:var(--text-main);font-size:1.5rem;cursor:pointer;z-index:101}.nav-links{display:none;width:100%;flex-direction:column;padding-top:1rem;margin-top:1rem;border-top:1px solid var(--border-color)}.nav-links.open{display:flex;animation:fadeIn .3s ease forwards}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
