body {
  margin: 0;
  font-family: Arial, sans-serif;
  background-color: #000;
  color: #0f0;
}

header {
  background-color: #000;
  padding: 20px;
  text-align: center;
  font-size: 2em;
  border-bottom: 2px solid #0f0;
}

nav {
  background-color: #001a00;
  display: flex;
  justify-content: center;
  padding: 10px 0;
  border-bottom: 1px solid #0f0;
}

nav a {
  color: #0f0;
  text-decoration: none;
  margin: 0 20px;
  font-weight: bold;
}

nav a:hover {
  color: #33ff33;
  text-decoration: underline;
}

main {
  padding: 30px;
  text-align: center;
}

footer {
  background-color: #003300;
  padding: 10px;
  text-align: center;
  position: fixed;
  bottom: 0;
  width: 100%;
  border-top: 1px solid #0f0;
}

.link-table {
  border: 1px solid #33ff33;
  border-collapse: collapse;
  margin: 0 auto;
}

.link-table td, .link-table th {
  border: 1px solid #33ff33;
  padding: 0.5em 0.75em;
  vertical-align: middle;
}

.link-table .favicon {
  width: 20px;
  height: 20px;
}

.link-table a {
  text-decoration: none;
  color: #0066cc;
  font-weight: 500;
}

.link-table a:hover {
  text-decoration: underline;
  color: #004999;
}

.contact-links {
      display: flex;
      gap: 40px;
      justify-content: center;
      flex-wrap: wrap;
      margin-top: 20px;
    }
    .contact-card {
      background-color: #001a00;
      border: 2px solid #0f0;
      border-radius: 12px;
      padding: 20px 30px;
      width: 200px;
      text-align: center;
      transition: background-color 0.3s, border-color 0.3s;
      cursor: pointer;
      text-decoration: none;
      color: #0f0;
      display: flex;
      flex-direction: column;
      align-items: center;
      box-shadow: 0 0 8px #0f0a;
    }
    .contact-card:hover {
      background-color: #003300;
      border-color: #33ff33;
      box-shadow: 0 0 20px #33ff33;
    }
    .contact-icon {
      width: 48px;
      height: 48px;
      margin-bottom: 12px;
      filter: invert(44%) sepia(76%) saturate(608%) hue-rotate(85deg) brightness(90%) contrast(87%);
    }
    /* Text link style inside cards */
    .contact-card span {
      font-weight: bold;
      font-size: 1.1em;
      margin-top: 6px;
      word-break: break-word;
    }
    @media (max-width: 450px) {
      .contact-card {
        width: 90vw;
      }
    }