:root{
  --bg:#000;
  --text:#fff;
  --accent:#00ffff;
  --muted:#aaa;
}

/* Reset */
*{margin:0; padding:0; box-sizing:border-box;}
body{font-family:'Courier New', monospace; background:var(--bg); color:var(--text);}

/* Header */
header{
  padding:1rem 2rem;
  border-bottom:1px solid rgba(255,255,255,0.1);
}
.logo{font-size:1.5rem; font-weight:bold;}

/* Hero Section */
.hero{
  display:flex;
  justify-content:space-between;
  align-items:center;
  height:80vh;
  padding:2rem;
  position:relative;
  overflow:hidden;
}
.hero-left{
  flex:1;
  z-index:2;
}
.hero-left h1{font-size:3rem; margin-bottom:1rem;}
.hero-left p{color:var(--accent); font-size:1.2rem; line-height:1.5;}

/* Right side canvas for animation */
.hero-right{
  flex:1;
  position:relative;
}
.hero-right canvas{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:1;
}

/* Sections */
section{
  max-width:900px;
  margin:2rem auto;
  padding:2rem;
  opacity:0;
  transform:translateY(20px);
  transition:1s;
}
section.active{opacity:1; transform:translateY(0);}
h2{color:var(--accent); margin-bottom:1rem;}
.grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:1rem;
}
.card{
  background:#111;
  padding:1rem 1.5rem;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.1);
  transition:0.3s;
}
.card:hover{transform:translateY(-3px); border-color:var(--accent);}
.card h3{margin-bottom:0.5rem;}
.card p{color:var(--muted); font-size:0.95rem;}

/* Footer */
footer{text-align:center; padding:2rem; color:var(--muted);}

/* Responsive */
@media(max-width:768px){
  .hero{flex-direction:column; height:auto;}
  .hero-left{margin-bottom:2rem;}
}
