@layer projects {
  @scope (.scope.faq) to (.scope) {
    :scope {
      background: #f7f2f2;
      display: grid;
      justify-items: center;
      padding-block: calc(80 * var(--px-to-rem)) calc(120 * var(--px-to-rem));
    }

    ._inner {
      inline-size: var(--content-width);
    }

    ._heading {
      text-align: center;
    }

    ._slug {
      color: var(--color-accent);
      font-family: var(--font-futura);
      font-size: var(--font-size-300);
      letter-spacing: 0.4em;
      line-height: 1;
      text-align: inherit;
      text-transform: uppercase;
    }

    ._title {
      font-size: var(--font-size-500);
      font-weight: var(--font-weight-medium);
      letter-spacing: 0.15em;
      line-height: 1.6;
      padding-top: calc(24 * var(--px-to-rem));
    }

    ._main {
      display: grid;
      gap: calc(40 * var(--px-to-rem));
      padding-top: calc(40 * var(--px-to-rem));
    }

    ._item {
      border-bottom: 0.5px solid var(--color-black);
      display: grid;
      gap: calc(32 * var(--px-to-rem));
      letter-spacing: 0;
      padding: calc(24 * var(--px-to-rem)) calc(80 * var(--px-to-rem)) calc(32 * var(--px-to-rem));
    }

    ._question {
      align-items: baseline;
      display: flex;
      font-size: var(--font-size-400);
      font-weight: var(--font-weight-medium);
      gap: calc(16 * var(--px-to-rem));
      line-height: 1;
    }

    ._answer {
      align-items: baseline;
      display: flex;
      gap: calc(16 * var(--px-to-rem));
    }

    ._answer p {
      font-size: var(--font-size-300);
      line-height: 2;
    }

    :where(._question, ._answer)::before {
      color: var(--color-accent);
      font-family: var(--font-futura);
      font-size: var(--font-size-400);
      letter-spacing: 0.1em;
      line-height: 1;
      white-space: pre;
    }

    ._question::before {
      content: 'Q.';
    }

    ._answer::before {
      content: 'A.';
    }

    @media (width <= 767px) {
      :scope {
        padding-block: calc(50 * var(--px-to-rem));
      }

      ._slug {
        font-size: var(--font-size-200);
      }

      ._title {
        font-size: calc(22 * var(--px-to-rem));
      }

      ._main {
        gap: calc(24 * var(--px-to-rem));
        padding-top: calc(24 * var(--px-to-rem));
      }

      ._item {
        gap: calc(16 * var(--px-to-rem));
        padding: calc(24 * var(--px-to-rem)) 0 calc(40 * var(--px-to-rem));
      }

      ._question {
        font-size: calc(18 * var(--px-to-rem));
        gap: calc(12 * var(--px-to-rem));
        line-height: 1.4;
      }

      ._answer {
        gap: calc(12 * var(--px-to-rem));
      }

      ._answer p {
        font-size: var(--font-size-100);
        line-height: 1.6;
      }

      :where(._question, ._answer)::before {
        font-size: var(--font-size-300);
      }
    }
  }
}
