:root {
  --color-bg: rgba(252, 238, 255, 1);
  --color-box-bg: #fff;
  --color-heading: rgba(48, 21, 52, 1);
  --color-heading-hover: rgba(173, 40, 235, 1);
  --color-txt: rgba(139, 105, 144, 1);
}

/* Typography */
.work-sans {
  font-family: "Work Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}

h1 {
  font-size: clamp(2rem, 7.29vw, 3.5rem);
  font-weight: 700;
  color: var(--color-heading);
}

h2 {
  font-size: clamp(1rem, 2.34vw, 1.125rem);
  font-weight: 600;
  color: var(--color-heading);
}

.answer {
  font-size: clamp(0.875rem, 2.08vw, 1rem);
  line-height: 1.5;
  font-weight: 400;
  color: var(--color-txt);
}

/* Layout */
header img {
  inline-size: 100%;
}

body {
  margin: 0;
  background-color: var(--color-bg);
}

:where(h1, h2, p) {
  margin-block: 0;
}

main {
  padding-inline: 1.5rem;
  padding-block-end: 9rem;
}

.faq {
  box-sizing: border-box;
  background-color: var(--color-box-bg);
  max-inline-size: 37.5rem;
  margin-inline: auto;
  margin-block: -100px 0;
  padding: clamp(1.5rem, 5.2vw, 2.5rem);
  border-radius: 0.5rem;
  position: relative;
  z-index: 2;
  box-shadow: 0 32px 56px 0 rgba(80, 0, 118, 0.1);
}

.title {
  display: flex;
  gap: 26px;
  margin-block-end: 1.5rem;
}

.title img {
  max-inline-size: 21px;
}

.question {
  display: flex;
  gap: 24px;
  margin-block-end: 1rem;
  padding-block-start: clamp(0rem, 1.05vw, 0.5rem);
  padding-block-end: clamp(0.5rem, 1.5625vw, 0.75rem);
}

.question img {
  max-inline-size: 25px;
  margin-left: auto;
}

hr {
  margin-block: clamp(1.25rem, 3.125vw, 1.5rem);
  border: none;
  height: 1px;
  background-color: rgba(252, 238, 255, 1);
}

.question:hover {
  cursor: pointer;
}
.question:hover h2 {
  color: var(--color-heading-hover);
}

.hide {
  visibility: hidden;
  display: none;
  height: 0;
}