:root{--bg-main: #121212;--bg-panel: #1E1E1E;--text-main: #EAEAEA;--text-secondary: #808080;--accent: #ffffff;--font-heading: "IBM Plex Mono", monospace;--font-body: "Inter", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-main);font-family:var(--font-body);line-height:1.6;overflow-x:hidden}.noise-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 300'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.75' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");opacity:.04;pointer-events:none;z-index:100}.site-header{position:sticky;top:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background-color:#121212cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;border-bottom:1px solid var(--bg-panel)}.logo a{font-family:var(--font-heading);color:var(--text-main);text-decoration:none;font-size:1.2rem;font-weight:700}.main-nav ul{display:flex;list-style:none}.main-nav li{margin-left:2rem}.main-nav a{color:var(--text-secondary);text-decoration:none;font-family:var(--font-heading);font-size:.9rem;text-transform:uppercase;position:relative;transition:color .3s ease}.main-nav a:hover{color:var(--accent)}.hero{position:relative;height:70vh;display:flex;justify-content:center;align-items:center;text-align:center;padding:0 2rem;overflow:hidden}#hero-background{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(30,30,30,.5),var(--bg-main) 10%);transition:background .6s cubic-bezier(.2,1,.8,1);z-index:1}.hero-content{z-index:2}.hero h1{font-family:var(--font-heading);font-size:clamp(1.8rem,8vw,3rem);color:var(--text-main);margin-bottom:1rem;letter-spacing:2px;word-break:break-word}.hero p{color:var(--text-secondary);font-size:.8rem}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;padding:2rem;max-width:1400px;margin:0 auto}.portfolio-item{position:relative;display:block;overflow:hidden;background-color:var(--bg-panel);grid-column:span 1;grid-row:span 1}.portfolio-item.wide{grid-column:span 2}.portfolio-item.tall{grid-row:span 2}.portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.25,.46,.45,.94)}.portfolio-item:hover img{transform:scale(1.05)}.item-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to top,#000000e6,#0000 60%);display:flex;align-items:flex-end;padding:1.5rem;opacity:0;transition:opacity .4s ease}.portfolio-item:hover .item-overlay{opacity:1}.item-info{transform:translateY(20px);transition:transform .4s ease}.portfolio-item:hover .item-info{transform:translateY(0)}.item-info h3{font-family:var(--font-heading);font-size:1.2rem;margin-bottom:.25rem;color:var(--text-main)}.item-info span{font-family:var(--font-body);color:var(--accent);font-size:.9rem}.site-footer-bottom{text-align:center;padding:2rem;margin-top:2rem;border-top:1px solid var(--bg-panel);color:var(--text-secondary);font-size:.9rem}.social-links{margin-bottom:1rem}.social-links a{color:var(--text-secondary);text-decoration:none;margin:0 1rem;font-family:var(--font-heading);transition:color .3s ease}.social-links a:hover{color:var(--accent)}.hamburger-menu{display:none;position:relative;z-index:101;background:none;border:none;cursor:pointer;padding:15px}.hamburger-box{width:30px;height:24px;display:inline-block;position:relative}.hamburger-inner{display:block;top:50%;margin-top:-2px}.hamburger-inner,.hamburger-inner:before,.hamburger-inner:after{width:30px;height:3px;background-color:var(--text-main);border-radius:4px;position:absolute;transition:transform .25s ease-in-out,background-color .25s ease-in-out}.hamburger-inner:before,.hamburger-inner:after{content:"";display:block}.hamburger-inner:before{top:-10px}.hamburger-inner:after{bottom:-10px}.hamburger-menu.is-active .hamburger-inner{transform:rotate(45deg);background-color:var(--accent)}.hamburger-menu.is-active .hamburger-inner:before{transform:rotate(-90deg) translate(-10px);opacity:0}.hamburger-menu.is-active .hamburger-inner:after{transform:rotate(-90deg) translate(0);bottom:0;width:30px;transform:rotate(-90deg)}.mobile-nav{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#121212fa;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);z-index:100;display:flex;justify-content:center;align-items:center;transform:translate(100%);transition:transform .4s cubic-bezier(.25,.46,.45,.94)}.mobile-nav.is-open{transform:translate(0)}.mobile-nav ul{list-style:none;text-align:center}.mobile-nav li{margin:2rem 0}.mobile-nav a{font-family:var(--font-heading);color:var(--text-main);text-decoration:none;font-size:2rem;padding:.5rem;transition:color .3s ease}.mobile-nav a:hover{color:var(--accent)}@media (max-width: 768px){.main-nav{display:none}.hamburger-menu{display:block}.site-header{padding:1rem 1.5rem}.hero{height:60vh;padding:0 1.5rem}.hero p{font-size:.4rem}.portfolio-grid{grid-template-columns:1fr;padding:1rem;gap:1.5rem}.portfolio-item.wide,.portfolio-item.tall{grid-column:span 1;grid-row:span 1}.social-links a{margin:0 .75rem}}@media (max-width: 480px){.hero h1{letter-spacing:1px;font-size:1.1rem}.hero p{font-size:.3rem}.mobile-nav a{font-size:1.5rem}}
