body {
  font-family: "Nunito Sans", sans-serif;
  color: #322941;

  /* Needed for Safari */
  -webkit-overflow-scrolling: touch;
  overflow-y: scroll;
}

pre[class*="language-"] {
  border-radius: 0.5rem;
  background: #19141f !important;
  border: 1px solid #bd9af4;
  box-shadow: 0 0 8px rgba(189, 154, 244, 0.1);
}

.token.keyword,
.token.function,
.token.selector,
.token.constant {
  color: #bd9af4;
}

.token.comment {
  color: #8885a1;
  font-style: italic;
}

.token.string {
  color: #8cc5a2;
}

.token.number {
  color: #ffb86c;
}

#vanta-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-height: 100%;
  background: rgba(0, 0, 0, 0.75);
  z-index: 1;
}

#vanta-bg {
  min-height: 100vh;
  height: auto;
  position: relative;
}

#content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 2rem;
  text-align: center;
  min-height: 100vh;
}

@media (min-width: 768px) {
  #content {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}

.text-left {
  text-align: left;
}

.text-lg {
  font-size: 1.125rem;
}

h2 {
  font-size: 2.25rem;
  font-weight: bold;
  color: white;
}

p {
  color: #a0aec0;
}

.icon-label {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  color: white;
  font-weight: 600;
  text-align: center;
  transition: 0.3s;
}

.icon-label:hover {
  color: #bd9af4;
  transform: scale(1.05);
}

.max-w-xl {
  max-width: 36rem;
}

#improvements h2 {
  color: white;
}

#improvements .text-lg {
  color: #a0aec0;
}

#features h2 {
  color: white;
}

#features .text-lg {
  color: #a0aec0;
}

.ui-example {
  opacity: 75%;
}

body::-webkit-scrollbar {
  width: 8px;
}

body::-webkit-scrollbar-track {
  background: #12121c;
}

body::-webkit-scrollbar-thumb {
  background: #443162;
  border-radius: 4px;
}

body::-webkit-scrollbar-thumb:hover {
  background: #31293e;
}
