/** GLOBAL RESET */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background-color: #000;
  color: #33ff33;
  font-family: 'Courier New', Courier, monospace;
  line-height: 1.6;
  overflow-x: hidden;
  text-align: center;
}

header {
  padding: 20px;
  background: #000;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.logo {
  max-width: 250px;
  filter: drop-shadow(0 0 10px #00ff00);
}

nav {
  margin-top: 10px;
}

nav a {
  color: #33ff33;
  text-decoration: none;
  margin: 0 10px;
  font-size: 1em;
  transition: color 0.3s ease;
}

nav a:hover {
  color: #00ff00;
  text-shadow: 0 0 5px #00ff00;
}

.hero {
  padding: 80px 20px 40px;
}

.typewriter h1 {
  display: inline-block;
  border-right: 2px solid #33ff33;
  white-space: nowrap;
  overflow: hidden;
  animation: typing 3s steps(30, end), blink 0.7s step-end infinite;
  font-size: 2em;
}

@keyframes typing {
  from { width: 0 }
  to { width: 100% }
}

@keyframes blink {
  50% { border-color: transparent; }
}

.intro {
  font-size: 1.2em;
  margin-top: 20px;
  color: #66ff66;
}

.video {
  margin: 40px 0;
}

.video h2 {
  color: #00ff00;
  margin-bottom: 20px;
}

video {
  width: 80%;
  max-width: 1080px;
  border: 2px solid #00ff00;
  box-shadow: 0 0 20px #00ff00;
}

.content {
  padding: 40px 20px;
  max-width: 800px;
  margin: 0 auto;
}

.content h2 {
  font-size: 1.5em;
  margin-bottom: 10px;
  color: #00ff00;
}

.content p, .content ul {
  margin-bottom: 20px;
}

footer {
  text-align: center;
  padding: 20px;
  font-size: 0.9em;
  background-color: #000;
  border-top: 1px solid #111;
  color: #009900;
}

.matrix-bg {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: radial-gradient(#001100 0%, #000000 100%);
  opacity: 0.1;
}

.matrix-canvas {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -2;
  pointer-events: none;
}

/** Manifesto Styling (about.html) */
.command {
  font-size: 1.2em;
  font-family: monospace;
  color: #33ff33;
  margin: 60px 0 20px;
  animation: blink-cursor 1s step-end infinite;
}

@keyframes blink-cursor {
  50% { border-right: 2px solid transparent; }
}

.manifesto {
  display: inline-block;
  text-align: left;
  max-width: 700px;
  margin: 0 auto 100px;
  color: #66ff66;
}

.manifesto p {
  margin-bottom: 1.2em;
  font-size: 1.1em;
}
