:root {
  --color-text: #424654;
  /* --color-accent-lightest: #7edaa4; */
  --color-accent-lightest: #0eda63;
  --color-accent-light: #28af60;
  --color-accent-medium: rgb(42, 122, 74);
}

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  list-style: none;
  background-color: rgb(255, 255, 255);
  /* background-color: rgb(253, 253, 253); */
  /* background-color: rgb(255, 255, 255); */
}

.container {
  max-width: 1280px;
  margin: 0 auto;
  overflow: hidden;
  padding: 0 1.5rem;
}

#content-box {
  height: 100vh;
  padding-top: 8rem;
}
#content {
  /* height: 100%; */
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#logo img {
  width: 100%;
}

#tag-line {
  display: flex;
  /* justify-content: center; */
  align-items: center;
  margin: 2rem 2rem 4rem;
  font-size: 5rem;
  font-family: 'Dosis', sans-serif;
  /* font-family: 'Roboto', sans-serif; */
  color: var(--color-text);
}

#slash {
  color: var(--color-accent-medium);
  margin: 0 1rem;
}

#loading-card {
  position: relative;
  margin-top: 11rem;
}

.ring {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 380px;
  height: 380px;
  background: transparent;
  /* border: 3px solid #3c3c3c; */
  border-radius: 50%;
  text-align: center;
  line-height: 150px;
  font-family: sans-serif;
  font-size: 20px;
  color: var(--color-accent-medium);
  letter-spacing: 4px;
  text-transform: uppercase;
  text-shadow: 0 0 10px var(--color-accent-light);
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 20px var(--color-accent-light);
  display: flex;
  align-items: center;
  justify-content: center;
}
.ring:before {
  content: '';
  position: absolute;
  top: -3px;
  left: -3px;
  width: 100%;
  height: 100%;
  border: 3px solid transparent;
  /* border-top: 3px solid var(--color-accent-light); */
  border-top: 3px solid
    oklch(from var(--color-accent-light) l calc(c +0.7) h/.6);
  border-right: 3px solid var(--color-accent-lightest);
  border-radius: 50%;
  animation: animateC 3s linear infinite;
}
span {
  display: block;
  position: absolute;
  top: calc(50% - 2px);
  left: 50%;
  width: 50%;
  height: 4px;
  background: transparent;
  transform-origin: left;
  animation: animate 3s linear infinite;
}
span:before {
  content: '';
  position: absolute;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--color-accent-lightest);
  top: -6px;
  right: -8px;
  box-shadow: 0 0 20px var(--color-accent-medium);
}

#loading-text {
  animation: fadeInOut 3s ease-in-out infinite;
}

@keyframes animateC {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes animate {
  0% {
    transform: rotate(45deg);
  }
  100% {
    transform: rotate(405deg);
  }
}

@keyframes fadeInOut {
  0% {
    opacity: 1;
  }
  52% {
    opacity: 0; /* Fully visible quickly */
  }
  56% {
    opacity: 0; /* Fully visible quickly */
  }

  100% {
    opacity: 1; /* Fades out */
  }
}
