    :root {
      --bg: #0f0f0f;
      --fg: #ffffff;
      --accent: #a855f7;
      --muted: #999;
    }

    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    body {
      font-family: 'Inter', sans-serif;
      background: var(--bg);
      color: var(--fg);
      line-height: 1.6;
    }

    .navbar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 1rem 2rem;
      background: #121212;
      position: sticky;
      top: 0;
      z-index: 1000;
    }

    .logo {
      display: flex;
      align-items: center;
      gap: 0.75rem;
      font-weight: 600;
      font-size: 1.2rem;
      color: var(--fg);
    }

    .logo img {
      width: 32px;
      height: 32px;
      border-radius: 50%;
    }

nav { display: flex; justify-content: space-between; align-items: center; padding: 1rem; }
ul { list-style: none; padding: 0; margin: 0; }
li { display: inline-block; margin: 0 10px; }
a { color: #fff; text-decoration: none; position: relative; }
a:after {
  content: "";
  display: block;
  height: 2px;
  background: #ffbb00;
  width: 0;
  transition: 0.3s;
}
a:hover:after { width: 100%; }
    header {
      position: relative;
      padding: 6rem 2rem 3rem;
      text-align: center;
    }

    .headshot {
      width: 280px;
      height: 280px;
      border-radius: 100%;
      object-fit: cover;
      border: 4px solid var(--accent);
      margin: 0 auto;
      z-index: 1;
      position: relative;
    }

    .intro {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -20%);
      width: 100%;
      max-width: 640px;
      z-index: 2;
      text-align: center;
    }

    .intro h1 {
      font-size: 2.2rem;
      font-weight: 700;
      background: rgba(15, 15, 15, 0.6);
      display: inline-block;
      padding: 0.5rem 1rem;
      border-radius: 8px;
    }

    .intro p {
      margin-top: 1rem;
      color: var(--muted);
      font-size: 1rem;
    }

    .btn {
      display: inline-block;
      margin-top: 1.5rem;
      padding: 0.75rem 1.5rem;
      background: var(--accent);
      color: var(--fg);
      border: none;
      border-radius: 6px;
      font-weight: 600;
      text-decoration: none;
      transition: background 0.3s ease;
    }

    .btn:hover {
      background: #9333ea;
    }

  /* Grid Layout */
.grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
  padding: 2rem;
}

.grid-item {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.3);
  background: #111;
  text-decoration: none; /* for <a> items */
  color: inherit;
  transition: transform 0.3s ease;
}

.grid-item:hover {
  transform: scale(1.03);
}

/* Media/video wrapper */
.video-wrapper {
  width: 100%;
  height: 100%;
}
.video-wrapper video,
.video-wrapper img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* Overlay text */
.overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 1rem;
  background: linear-gradient(transparent, rgba(0,0,0,0.8));
  color: #fff;
  font-size: 0.95rem;
  font-weight: 600;
}

    footer {
      padding: 2rem;
      text-align: center;
      color: var(--muted);
      font-size: 0.875rem;
    }