/*
 * YooperHub article defaults.
 *
 * Ordinary pasted content is normalized to these defaults. Gutenberg's
 * explicit font-size, font-family, and text-color classes remain available
 * when a publisher intentionally chooses an override in the editor.
 */

:root {
  --yh-article-serif: "EB Garamond", Georgia, "Times New Roman", serif;
  --yh-article-sans: Mulish, Arial, sans-serif;
  --yh-article-copy: #d8e1e8;
  --yh-article-heading: #f6f8fa;
  --yh-article-muted: #9fb2c4;
  --yh-article-rule: #293b4d;
  --yh-article-accent: #72a6ff;
}

body.single-post .wp-block-post-title,
.editor-styles-wrapper .editor-post-title__input,
.editor-styles-wrapper .wp-block-post-title {
  max-width: 840px;
  margin: 16px auto 0;
  font-family: var(--yh-article-sans);
  font-size: 54px;
  font-weight: 780;
  line-height: 1.06;
  letter-spacing: -0.04em;
  text-wrap: balance;
}

body.single-post .wp-block-post-title {
  color: var(--yh-article-heading);
}

body.single-post .wp-block-post-content,
.editor-styles-wrapper .is-root-container {
  font-family: var(--yh-article-serif);
  font-size: 22px;
  font-weight: 450;
  line-height: 1.66;
}

body.single-post .wp-block-post-content {
  color: var(--yh-article-copy);
}

body.single-post .wp-block-post-content > p:not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color),
.editor-styles-wrapper .is-root-container > p:not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color) {
  margin-top: 28px !important;
  margin-bottom: 28px !important;
  font-family: var(--yh-article-serif) !important;
  font-size: 22px !important;
  font-style: normal !important;
  font-weight: 450 !important;
  letter-spacing: normal !important;
  line-height: 1.66 !important;
}

body.single-post .wp-block-post-content > p:not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color) {
  color: var(--yh-article-copy) !important;
}

body.single-post .wp-block-post-content > p:first-child,
.editor-styles-wrapper .is-root-container > p:first-child {
  margin-top: 0 !important;
}

body.single-post .wp-block-post-content > p:first-child > em:only-child,
.editor-styles-wrapper .is-root-container > p:first-child > em:only-child {
  font-style: normal !important;
}

body.single-post .wp-block-post-content > p:not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color) :where(span, font),
.editor-styles-wrapper .is-root-container > p:not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color) :where(span, font) {
  color: inherit !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-style: inherit !important;
  font-weight: inherit !important;
  letter-spacing: inherit !important;
  line-height: inherit !important;
}

body.single-post .wp-block-post-content > :is(h2, h3, h4):not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color),
.editor-styles-wrapper .is-root-container > :is(h2, h3, h4):not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color) {
  font-family: var(--yh-article-sans) !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  text-wrap: balance;
}

body.single-post .wp-block-post-content > :is(h2, h3, h4):not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color) {
  color: var(--yh-article-heading) !important;
}

body.single-post .wp-block-post-content > h2:not([class*="-font-size"]):not([class*="-font-family"]) {
  margin: 60px 0 0 !important;
  font-size: 34px !important;
  line-height: 1.16 !important;
}

body.single-post .wp-block-post-content > h3:not([class*="-font-size"]):not([class*="-font-family"]) {
  margin: 42px 0 0 !important;
  font-size: 27px !important;
  line-height: 1.16 !important;
}

body.single-post .wp-block-post-content > h4:not([class*="-font-size"]):not([class*="-font-family"]) {
  margin: 36px 0 0 !important;
  font-size: 23px !important;
  line-height: 1.2 !important;
}

.editor-styles-wrapper .is-root-container > h2:not([class*="-font-size"]):not([class*="-font-family"]) {
  margin: 60px auto 0 !important;
  font-size: 34px !important;
  line-height: 1.16 !important;
}

.editor-styles-wrapper .is-root-container > h3:not([class*="-font-size"]):not([class*="-font-family"]) {
  margin: 42px auto 0 !important;
  font-size: 27px !important;
  line-height: 1.16 !important;
}

.editor-styles-wrapper .is-root-container > h4:not([class*="-font-size"]):not([class*="-font-family"]) {
  margin: 36px auto 0 !important;
  font-size: 23px !important;
  line-height: 1.2 !important;
}

body.single-post .wp-block-post-content > :is(ul, ol):not([class*="-font-size"]):not([class*="-font-family"]),
.editor-styles-wrapper .is-root-container > :is(ul, ol):not([class*="-font-size"]):not([class*="-font-family"]) {
  margin: 28px 0 !important;
  padding-left: 1.35em;
  font-family: var(--yh-article-serif) !important;
  font-size: 22px !important;
  line-height: 1.58 !important;
}

body.single-post .wp-block-post-content > :is(ul, ol) li + li,
.editor-styles-wrapper .is-root-container > :is(ul, ol) li + li {
  margin-top: 10px;
}

body.single-post .wp-block-post-content > :is(ul, ol):not([class*="-font-size"]):not([class*="-font-family"]) {
  color: var(--yh-article-copy) !important;
}

body.single-post .wp-block-post-content > blockquote:not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color),
.editor-styles-wrapper .is-root-container > blockquote:not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color) {
  margin: 36px 0 !important;
  padding: 8px 0 8px 24px;
  border-left: 4px solid var(--yh-article-accent);
  font-family: var(--yh-article-serif) !important;
  font-size: 25px !important;
  font-style: italic;
  line-height: 1.5 !important;
}

body.single-post .wp-block-post-content > blockquote:not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color) {
  color: var(--yh-article-heading) !important;
}

body.single-post .wp-block-post-content > blockquote cite,
.editor-styles-wrapper .is-root-container > blockquote cite {
  display: block;
  margin-top: 12px;
  font-family: var(--yh-article-sans);
  font-size: 13px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.04em;
}

body.single-post .wp-block-post-content > blockquote cite {
  color: var(--yh-article-muted);
}

body.single-post .wp-block-post-content > :is(figure, .wp-block-embed),
.editor-styles-wrapper .is-root-container > :is(figure, .wp-block-embed) {
  margin-top: 32px;
  margin-bottom: 32px;
}

body.single-post .wp-block-post-content figcaption,
.editor-styles-wrapper .is-root-container figcaption {
  margin-top: 10px;
  font-family: var(--yh-article-sans);
  font-size: 13px;
  font-style: normal;
  line-height: 1.45;
  text-align: left;
}

body.single-post .wp-block-post-content figcaption {
  color: var(--yh-article-muted);
}

body.single-post .wp-block-post-content > hr,
.editor-styles-wrapper .is-root-container > hr {
  margin: 36px 0;
  border-color: var(--yh-article-rule);
}

body.single-post .wp-block-post-content > :is(table, .wp-block-table),
.editor-styles-wrapper .is-root-container > :is(table, .wp-block-table) {
  margin: 36px 0;
  font-family: var(--yh-article-sans);
  font-size: 16px;
  line-height: 1.5;
}

body.single-post .wp-block-post-content > p:not(.has-link-color) a,
body.single-post .wp-block-post-content > :is(ul, ol, blockquote):not(.has-link-color) a {
  color: var(--yh-article-accent);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.15em;
}

.editor-styles-wrapper .is-root-container > p:not(.has-link-color) a,
.editor-styles-wrapper .is-root-container > :is(ul, ol, blockquote):not(.has-link-color) a {
  text-decoration-thickness: 1px;
  text-underline-offset: 0.15em;
}

body.single-post .wp-block-post-content .has-small-font-size,
.editor-styles-wrapper .is-root-container .has-small-font-size {
  font-size: var(--wp--preset--font-size--small) !important;
}

body.single-post .wp-block-post-content .has-medium-font-size,
.editor-styles-wrapper .is-root-container .has-medium-font-size {
  font-size: var(--wp--preset--font-size--medium) !important;
}

body.single-post .wp-block-post-content .has-large-font-size,
.editor-styles-wrapper .is-root-container .has-large-font-size {
  font-size: var(--wp--preset--font-size--large) !important;
}

body.single-post .wp-block-post-content .has-x-large-font-size,
.editor-styles-wrapper .is-root-container .has-x-large-font-size {
  font-size: var(--wp--preset--font-size--x-large) !important;
}

@media (max-width: 700px) {
  body.single-post .wp-block-post-title,
  .editor-styles-wrapper .editor-post-title__input,
  .editor-styles-wrapper .wp-block-post-title {
    max-width: 100%;
    font-size: 32.37px;
    line-height: 1.08;
    letter-spacing: -0.04em;
  }

  body.single-post .wp-block-post-content,
  .editor-styles-wrapper .is-root-container {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.56;
  }

  body.single-post .wp-block-post-content > p:not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color),
  .editor-styles-wrapper .is-root-container > p:not([class*="-font-size"]):not([class*="-font-family"]):not(.has-text-color) {
    margin-top: 28px !important;
    margin-bottom: 28px !important;
    font-size: 21.45px !important;
    font-weight: 520 !important;
    line-height: 1.5 !important;
  }

  body.single-post .wp-block-post-content > h2:not([class*="-font-size"]):not([class*="-font-family"]),
  .editor-styles-wrapper .is-root-container > h2:not([class*="-font-size"]):not([class*="-font-family"]) {
    margin-top: 51px !important;
    font-size: 27.69px !important;
    line-height: 1.1 !important;
  }

  body.single-post .wp-block-post-content > h3:not([class*="-font-size"]):not([class*="-font-family"]),
  .editor-styles-wrapper .is-root-container > h3:not([class*="-font-size"]):not([class*="-font-family"]) {
    margin-top: 40px !important;
    font-size: 24px !important;
    line-height: 1.14 !important;
  }

  body.single-post .wp-block-post-content > h4:not([class*="-font-size"]):not([class*="-font-family"]),
  .editor-styles-wrapper .is-root-container > h4:not([class*="-font-size"]):not([class*="-font-family"]) {
    margin-top: 34px !important;
    font-size: 21px !important;
    line-height: 1.18 !important;
  }

  body.single-post .wp-block-post-content > :is(ul, ol):not([class*="-font-size"]):not([class*="-font-family"]),
  .editor-styles-wrapper .is-root-container > :is(ul, ol):not([class*="-font-size"]):not([class*="-font-family"]) {
    margin: 28px 0 !important;
    font-size: 20px !important;
    line-height: 1.55 !important;
  }

  body.single-post .wp-block-post-content > blockquote,
  .editor-styles-wrapper .is-root-container > blockquote {
    margin: 32px 0;
    padding-left: 18px;
    font-size: 22px;
  }

  body.single-post .wp-block-post-content > :is(figure, .wp-block-embed),
  .editor-styles-wrapper .is-root-container > :is(figure, .wp-block-embed) {
    margin-top: 28px;
    margin-bottom: 28px;
  }
}
