@import url("https://fonts.googleapis.com/css2?family=Great+Vibes&family=PT+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap");

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

:root {
  --clr-primary: hsl(205, 78%, 60%);
  --clr-primary-light: hsla(204, 46%, 69%, 0.415);
  --clr-gold: hsl(36, 47%, 57%);

  --ff-primary: "PT Sans", sans-serif;
  --ff-secondary: "Great Vibes", cursive;

  --light-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

body {
  font-family: var(--ff-primary);
  background-color: var(--clr-primary-light);
}

.section-center {
  width: 90vw;
  margin-inline: auto;
  max-width: 500px;
  padding-top: 5rem;
}

@media screen and (min-width: 500px) {
  .section-center {
    width: 50vw;
  }
}

.section-center h1 {
  font-family: var(--ff-secondary);
  font-size: 3rem;
  color: var(--clr-gold);
  margin-bottom: 3rem;
  text-align: center;
}

.question {
  background-color: white;
  padding: 2rem 1rem 0 2rem;
  border-radius: 0.5rem;
  box-shadow: var(--light-shadow);
  margin-bottom: 1.5rem;
}

.question-header {
  display: flex;
  gap: 1rem;
}

.question-header h3 {
  flex-grow: 1;
  margin-bottom: 1rem;
}

.icon {
  color: var(--clr-gold);
  cursor: pointer;
  border: 2px solid var(--clr-gold);
  border-radius: 4px;
  height: fit-content;
  padding-inline: 0.2rem;
}

.show-answer i::before {
  content: "\f068";
}

.question-answer {
  max-height: 0;
  padding: 0;
  transition: max-height 0.2s linear, padding 0.2s linear;
  overflow: hidden;
  border: none;
}

.show-answer .question-answer {
  padding: 1rem 1rem 1rem 0;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  max-height: 10rem; /* any large number */
  overflow-y: hidden;
}
