.entry-contents {
  --entry-contents-font-size: clamp(1.2rem, 1.7578vw, 1.8rem);
  --spacing-sm: calc(var(--entry-contents-font-size) * 1);
  --spacing-md: calc(var(--entry-contents-font-size) * 2);
  --spacing-lg: calc(var(--entry-contents-font-size) * 3);
  --spacing-xlg: calc(var(--entry-contents-font-size) * 4);

  font-size: var(--entry-contents-font-size);

  .wp-block-heading:is(h2) {
    font-feature-settings: "palt" 1;
    margin-top: var(--spacing-xlg);
    margin-bottom: var(--spacing-md);
    font-size: calc(var(--entry-contents-font-size) * 2);
    font-weight: 600;
    line-height: 1.25;
  }

  .wp-block-heading:is(h3) {
    font-feature-settings: "palt" 1;
    margin-top: var(--spacing-lg);
    margin-bottom: var(--spacing-md);
    font-size: calc(var(--entry-contents-font-size) * 1.5);
    font-weight: 600;
  }

  .wp-block-heading:is(h4) {
    margin-top: var(--spacing-lg);
    margin-bottom: var(--spacing-md);
    font-size: calc(var(--entry-contents-font-size) * 1.25);
    font-weight: 600;
  }

  p {
    margin-top: var(--spacing-md);
    margin-bottom: var(--spacing-md);
    font-size: var(--entry-contents-font-size);
    font-weight: 400;
    line-height: 2;
  }

  .wp-block-image {
    margin-top: var(--spacing-md);
    margin-bottom: var(--spacing-md);
  }

  .wp-block-list {
    list-style: revert;
    margin-top: var(--spacing-md);
    margin-bottom: var(--spacing-md);
    padding-left: 1.5em;

    > li {
      font-size: var(--entry-contents-font-size);
      font-weight: 400;
      line-height: 1.75;
    }
  }

  .wp-block-quote {
    position: relative;
    margin-top: var(--spacing-md);
    margin-bottom: var(--spacing-md);
    padding: 0.5em 1em 0.5em 3em;
    background-color: #eee;
    border-left: 2px solid #aaa;

    &::before {
      position: absolute;
      left: 0.25em;
      top: 0.25em;
      content: "“";
      font-size: 3em;
      color: #666;
    }
  }

}
