*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:root {
  --name-color: #ffffff;
  --name-size: clamp(3rem, 10vw, 8rem);
}

html, body {
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #000;
}

/* Video */
#video-bg {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  opacity: 0;
  transition: opacity 1.2s ease;
}

#video-bg.loaded {
  opacity: 1;
}

/* Subtle dark vignette so text is always legible */
#vignette {
  position: fixed;
  inset: 0;
  z-index: 1;
  background: radial-gradient(ellipse at center,
    rgba(0,0,0,0.05) 0%,
    rgba(0,0,0,0.45) 100%
  );
  pointer-events: none;
}

/* Name */
#name {
  position: fixed;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Times New Roman', Times, serif;
  font-weight: normal;
  font-style: normal;
  font-size: var(--name-size);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--name-color);
}