:root {
  --purple-950: #301534;
  --purple-600: #8b6990;
  --purple-100: #f8eeff;
  --violet-600: #ad28eb;
}

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

body {
  background-color: var(--purple-100);
  font-family: "Work Sans", Arial, Helvetica, sans-serif;
  height: 100vh;
  display: grid;
  place-content: center;
  background-image: url("assets/images/background-pattern-mobile.svg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100vw 33vh;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
  height: auto;
}

input,
button,
textarea,
select {
  font: inherit;
}

a {
  text-decoration: none;
}

@font-face {
  font-display: swap;
  font-family: "Work Sans";
  font-style: normal;
  font-weight: 400;
  src: url("assets/fonts/work-sans-v24-latin-regular.woff2") format("woff2");
}

@font-face {
  font-display: swap;
  font-family: "Work Sans";
  font-style: normal;
  font-weight: 600;
  src: url("assets/fonts/work-sans-v24-latin-600.woff2") format("woff2");
}

@font-face {
  font-display: swap;
  font-family: "Work Sans";
  font-style: normal;
  font-weight: 700;
  src: url("assets/fonts/work-sans-v24-latin-700.woff2") format("woff2");
}

.faq__card {
  max-width: 327px;
  border-radius: 8px;
  background-color: #fff;
  padding: 24px 24px 0 24px;
}

.horizontal-line {
  border: solid 1px var(--purple-100);
}

.faq__head {
  display: flex;
  align-items: center;
  gap: 24px;
}

.faq__logo {
  width: 24px;
}

.faq__title {
  font-size: 32px;
  font-weight: 700;
}

.faq__answer {
  display: none;
  font-size: 14px;
  line-height: 1.5;
  color: var(--purple-600);
  padding-block-end: 24px;
}

.faq__answer.active {
  display: block;
}

.faq__question-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding-block: 24px;
}

.faq__question {
  font-size: 16px;
  font-weight: 600;
  color: var(--purple-950);
}

.faq__question:hover,
.faq__question:focus {
  color: var(--violet-600);
}

.faq__icon:hover {
  cursor: pointer;
}

@media screen and (min-width: 768px) {
  .body {
    background-image: url("assets/images/background-pattern-desktop.svg");
  }

  .faq__card {
    max-width: 608px;
    padding: 40px 40px 16px 40px;
  }

  .faq__logo {
    width: 40px;
  }

  .faq__title {
    font-size: 56px;
    line-height: 66px;
  }

  .faq__question {
    font-size: 18px;
    line-height: 18px;
  }

  .faq__answer {
    font-size: 16px;
    line-height: 24px;
  }
}
