.blockquotes {
  display: grid;
  padding-inline: var(--space-xx-large);
  position: relative;
}

.blockquotes section {
  column-gap: var(--space-large);
  column-width: 21em;
  margin-top: calc(-1 * var(--space-large));
}

.blockquotes blockquote {
  background: var(--color-white);
  border-radius: var(--border-radius);
  box-shadow: var(--box-shadow);
  color: var(--color-ink);
  display: inline-flex;
  flex-direction: column;
  gap: var(--space-neutral);
  margin-top: var(--space-large);
  padding: var(--space-large);
  text-wrap: pretty;
  width: 100%;
}

.blockquotes q {
  font-style: italic;
  margin-bottom: -0.3875em;
  margin-top: -0.35em;
  position: relative;
}

.blockquotes q:before {
  content: '“';
  position: absolute;
  right: 100%;
  top: 0;
}

.blockquotes q:after {
  content: '”';
  display: inline;
}

.blockquotes cite {
  font-size: var(--font-size-small);
  font-weight: 600;
  letter-spacing: var(--letter-spacing-loose);
  line-height: var(--line-height-x-tight);
  margin-bottom: -0.2125em;
  margin-top: -0.225em;
}

.blockquotes cite:before {
  content: '—';
  display: inline;
}



@supports(-webkit-hyphens: none) {

  .blockquotes section {
    margin-bottom: -2.5125em;
  }

}



@media(min-width: 64em) {

  .blockquotes section {
    margin-inline: calc(-1 * var(--space-medium));
  }

}



@media(prefers-color-scheme: dark) {

  .blockquotes blockquote {
    background: var(--color-slate-3);
  }

}
