main {
  width: 100%;
  height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: var(--Pale-blue);
}

.container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-radius: 1rem;
  font-size: var(--font-size);
  max-width: 70rem;
}

/*======  RESULT ======*/
h1 {
  font-size: 2.4rem;
  font-weight: var(--font-weight-bold);
  opacity: 0.8;
}

p {
  line-height: 1.5;
  opacity: 0.8;
}

.result {
  display: grid;
  place-items: center;
  gap: 2.4rem;
  text-align: center;
  padding: 4.5rem;
  border-radius: 2.5rem;
  background: linear-gradient(
    to bottom,
    var(--Light-slate-blue),
    var(--Light-royal-blue)
  );
  color: var(--White);
  z-index: 100;
}
.result-score {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: linear-gradient(
    to bottom,
    var(--Violet-blue),
    var(--Persian-blue)
  );
  border-radius: 50%;
  width: 20rem;
  height: 20rem;
}
.score {
  font-size: clamp(3.2rem, 2.038rem + 4.958vw, 6.5rem);
  font-weight: var(--font-weight-heavy);
}

strong {
  font-size: clamp(2.2rem, 1.707rem + 2.103vw, 3.6rem);
  font-weight: var(--font-weight-bold);
  margin-bottom: 1.2rem;
}

/*====== SUMMARY ======*/
.summary {
  background-color: var(--White);
  display: grid;
  grid-row: auto;
  gap: 2.4rem;
  padding: 4.5rem 4.5rem 4.5rem 4.9rem;
  color: var(--Dark-gray-blue);
  border-radius: 0 2.5rem 2.5rem 0;
  margin-left: -2.2rem;
}
summary h1 {
  font-size: 2.4rem;
  font-weight: var(--font-weight-bold);
  margin-bottom: 0;
}
.summary article {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
  border-radius: 1rem;
}
.Reaction {
  background-color: var(--light-red-gd);
}
.Reaction div {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: var(--Light-red);
}
.Memory {
  background-color: var(--Orangey-yellow-gd);
}
.Memory div {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: var(--Orangey-yellow);
}
.Verbal {
  background-color: var(--Green-teal-gd);
}
.Verbal div {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: var(--Green-teal);
}
.Visual {
  background-color: var(--Cobalt-blue-gd);
}
.Visual div {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: var(--Cobalt-blue);
}

em {
  font-weight: var(--font-weight-bold);
  font-style: none;
}

/*====== BUTTON ======*/
button {
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size);
  color: var(--White);
  border-radius: 2rem;
  border: none;
  background-color: var(--Dark-gray-blue);
  padding: 1rem;
  cursor: pointer;
  transition: background 0.3s, transform 0.3s;
}
button:hover {
  background: linear-gradient(
    to bottom,
    var(--Light-slate-blue),
    var(--Light-royal-blue)
  );
}
button:active {
  transform: scale(1.05);
}

/*====== FOOTER ======*/
footer {
  background-color: var(--Pale-blue);
}
.attribution {
  font-size: 1.1rem;
  text-align: center;
}
.attribution a {
  color: hsl(228, 45%, 44%);
}

@media (max-width: 475px) {
  main {
    width: 100%;
    height: auto;
  }
  .container {
    grid-template-columns: 1fr;
  }
  .result {
    width: 100%;
    border-radius: 0 0 2rem 2rem;
    padding: 1.5rem;
  }
  .result-score {
    width: 15rem;
    height: 15rem;
  }
  .summary {
    border-radius: 0;
    margin: -2rem 0 0 0;
  }
  footer {
    background-color: var(--White);
  }
}
