/*
 * ELEO unified typography 1.0.0
 * Reading text: Georgia, 22px desktop / 20px mobile.
 * Card previews: 16px on homepage and archive.
 * Headings, muted text and colours are shared across sections.
 * Music player controls and the separate Caveat typography plugin are untouched.
 */
:root {
  --eleo-reading-ink: #403a34;
  --eleo-heading-ink: #302c28;
  --eleo-secondary-ink: #665e55;
  --eleo-reading-font: Georgia, "Times New Roman", serif;
}
body { color: var(--eleo-reading-ink); }
body .hero .intro,
body .page-content .eleo-page-body > p:not(.eleo-contact-handle) {
  font-family: var(--eleo-reading-font) !important;
  font-size: 21px !important;
  line-height: 1.75 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  color: var(--eleo-reading-ink) !important;
}
body .page-content .eyebrow, body .hero .eyebrow {
  color: var(--eleo-secondary-ink) !important;
}
/* One title scale everywhere, including About (formerly 76px). */
body article.page-content > h1,
body.single-eleo_poem article.page-content > h1,
body .hero > h1 {
  font-family: var(--eleo-reading-font) !important;
  font-weight: 400 !important;
  font-size: clamp(40px, 5vw, 58px) !important;
  line-height: 1.2 !important;
  letter-spacing: -.018em !important;
  color: var(--eleo-heading-ink) !important;
}
body.page-id-10 article.page-content > h1 {
  font-family: var(--eleo-reading-font) !important;
  font-size: clamp(40px, 5vw, 58px) !important;
  letter-spacing: -.018em !important;
  color: var(--eleo-heading-ink) !important;
}
/* Do not apply the theme's accidental large first-letter ornament to pages. */
body.page .eleo-page-body > p:first-child::first-letter,
body .eleo-page-body .eleo-contact-simple p::first-letter,
body .eleo-page-body .eleo-about-story p::first-letter {
  float: none !important;
  font-family: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
  padding: 0 !important;
  margin: 0 !important;
  color: inherit !important;
}
/* Existing poem layout stays intact. Only harmonise its text colour. */
body.single-eleo_poem .poem-text,
body.single-eleo_poem .poem-text .eleo-poem,
body.single-eleo_poem .poem-text .eleo-stanza {
  color: var(--eleo-reading-ink) !important;
}
body.single-eleo_poem .eleo-signature,
body.single-eleo_poem .poem-text + p,
body.single-eleo_poem .back {
  color: var(--eleo-secondary-ink) !important;
}
/* Homepage and archive share exactly the same card component. */
body .poem-card h2,
body .poem-card h2 a {
  font-family: var(--eleo-reading-font) !important;
  font-size: 26px !important;
  line-height: 1.32 !important;
  font-weight: 400 !important;
  color: var(--eleo-heading-ink) !important;
}
body .poem-card p,
body.page-id-34 .eleo-page-body .poem-card p {
  font-family: var(--eleo-reading-font) !important;
  font-size: 16px !important;
  line-height: 1.72 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  font-weight: 400 !important;
  color: var(--eleo-secondary-ink) !important;
}
body .poem-card .date,
body .poem-card .back { color: var(--eleo-secondary-ink) !important; }
/* About: prose is now as readable as the verses, not tiny Cormorant. */
body.page-id-10 .eleo-page-body .eleo-about-story {
  max-width: 660px !important;
  margin: 0 auto !important;
  font-family: var(--eleo-reading-font) !important;
  font-size: 22px !important;
  line-height: 1.74 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  color: var(--eleo-reading-ink) !important;
}
body.page-id-10 .eleo-page-body .eleo-about-story > p,
body.page-id-10 .eleo-page-body .eleo-about-story p:not(.eleo-author-quote p),
body.page-id-10 .eleo-about-story .eleo-about-opening {
  font-family: var(--eleo-reading-font) !important;
  font-size: 22px !important;
  line-height: 1.74 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  color: var(--eleo-reading-ink) !important;
  margin-bottom: 1.15em !important;
  text-align: left !important;
}
body.page-id-10 .eleo-about-story .eleo-about-short {
  font-family: var(--eleo-reading-font) !important;
  font-size: 22px !important;
  line-height: 1.6 !important;
  font-style: italic !important;
  text-align: center !important;
  color: var(--eleo-secondary-ink) !important;
  letter-spacing: 0 !important;
  margin: 1.5em 0 !important;
}
body.page-id-10 .eleo-about-story .eleo-about-rule,
body.page-id-10 .eleo-about-story .eleo-about-divider {
  clear: both;
  display: block;
  height: 1px;
  width: 54px;
  margin: 2em auto !important;
  background: #bdb0a2;
}
body.page-id-10 .eleo-about-story .eleo-author-quote {
  display: block;
  clear: both;
  margin: 40px auto 65px !important;
  max-width: 600px !important;
  padding: 26px 32px !important;
  border-left: 2px solid #b5a596;
  background: rgba(150,136,119,.045);
  text-align: center !important;
}
body.page-id-10 .eleo-about-story .eleo-author-quote p {
  font-family: var(--eleo-reading-font) !important;
  font-size: 22px !important;
  line-height: 1.65 !important;
  letter-spacing: 0 !important;
  font-style: italic !important;
  text-align: center !important;
  color: #544c44 !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  border: 0 !important;
}
body.page-id-10 .eleo-about-story .eleo-author-quote footer {
  font-family: var(--eleo-reading-font) !important;
  font-size: 17px !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  color: var(--eleo-secondary-ink) !important;
  text-align: right !important;
}
body.page-id-10 .eleo-about-story .eleo-about-portrait {
  float: left !important;
  width: 190px !important;
  height: 190px !important;
  margin: 7px 25px 14px 0 !important;
  border-radius: 12px !important;
  object-fit: cover !important;
  shape-outside: none !important;
}
/* Music has the same size and ink as the About prose. */
body.page-id-23 .eleo-page-body > p {
  font-family: var(--eleo-reading-font) !important;
  font-size: 22px !important;
  line-height: 1.74 !important;
  color: var(--eleo-reading-ink) !important;
  text-align: left !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  margin: 0 0 1.25em !important;
  padding: 0 !important;
  border: 0 !important;
}
body.page-id-23 .eleo-page-body > h2 {
  font-family: var(--eleo-reading-font) !important;
  color: var(--eleo-heading-ink) !important;
  font-size: 28px !important;
  line-height: 1.35 !important;
  margin: 1.55em 0 .3em !important;
}
body.page-id-23 .eleo-page-body > audio {
  display: block;
  width: 100%;
  max-width: 620px;
  margin: 12px 0 35px;
}
body.page-id-23 .eleo-page-body > p:last-child {
  font-size: 17px !important;
  text-align: right !important;
  margin-top: 1.75em !important;
  color: var(--eleo-secondary-ink) !important;
}
/* Contacts are deliberately minimal; same body font/colour. */
body.page-id-35 .eleo-page-body .eleo-contact-simple p,
body.page-id-35 .eleo-page-body .eleo-contact-simple p.intro,
body.page-id-35 .eleo-page-body .eleo-contact-simple p.eleo-contact-handle {
  font-family: var(--eleo-reading-font) !important;
  font-size: 22px !important;
  line-height: 1.74 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  color: var(--eleo-reading-ink) !important;
  text-align: center !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 auto 22px !important;
}
body.page-id-35 .eleo-contact-simple a {
  color: var(--eleo-reading-ink) !important;
}
@media (max-width: 680px) {
  body article.page-content > h1,
  body.page-id-10 article.page-content > h1,
  body.single-eleo_poem article.page-content > h1,
  body .hero > h1 { font-size: clamp(36px, 9vw, 47px) !important; }
  body .hero .intro,
  body .page-content .eleo-page-body > p:not(.eleo-contact-handle) { font-size: 20px !important; }
  body.page-id-10 .eleo-page-body .eleo-about-story,
  body.page-id-10 .eleo-page-body .eleo-about-story > p,
  body.page-id-10 .eleo-page-body .eleo-about-story p:not(.eleo-author-quote p),
  body.page-id-10 .eleo-about-story .eleo-about-opening {
    font-size: 20px !important;
    line-height: 1.69 !important;
  }
  body.page-id-10 .eleo-about-story .eleo-about-short { font-size: 20px !important; }
  body.page-id-10 .eleo-about-story .eleo-author-quote {
    padding: 22px 18px !important;
    margin: 32px auto 45px !important;
  }
  body.page-id-10 .eleo-about-story .eleo-author-quote p {
    font-size: 20px !important;
    line-height: 1.6 !important;
  }
  body.page-id-10 .eleo-about-story .eleo-about-portrait {
    width: 125px !important;
    height: 125px !important;
    margin: 5px 16px 10px 0 !important;
  }
  body.page-id-23 .eleo-page-body > p,
  body.page-id-35 .eleo-page-body .eleo-contact-simple p,
  body.page-id-35 .eleo-page-body .eleo-contact-simple p.intro,
  body.page-id-35 .eleo-page-body .eleo-contact-simple p.eleo-contact-handle {
    font-size: 20px !important;
    line-height: 1.69 !important;
  }
  body.page-id-23 .eleo-page-body > h2 { font-size: 26px !important; }
}

/* ELEO feature quotation — same visual treatment on Home and About. */
body .hero.wrap blockquote.eleo-feature-quote,
body.page-id-10 .eleo-page-body .eleo-about-story blockquote.eleo-feature-quote {
  display: block !important;
  box-sizing: border-box !important;
  clear: both !important;
  width: 100% !important;
  max-width: 650px !important;
  margin: 35px auto 45px !important;
  padding: 28px 36px 25px !important;
  border: 0 !important;
  border-left: 2px solid #b5a292 !important;
  border-radius: 0 !important;
  background: #f0ebe4 !important;
  text-align: center !important;
  box-shadow: none !important;
}
body.page-id-10 .eleo-page-body .eleo-about-story blockquote.eleo-feature-quote {
  max-width: 610px !important;
  margin: 35px auto 60px !important;
}
body .hero.wrap blockquote.eleo-feature-quote p,
body.page-id-10 .eleo-page-body .eleo-about-story blockquote.eleo-feature-quote p {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 22px !important;
  line-height: 1.65 !important;
  font-weight: 400 !important;
  font-style: italic !important;
  letter-spacing: 0 !important;
  color: #51483e !important;
  text-align: center !important;
  float: none !important;
  max-width: none !important;
  margin: 0 0 21px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
body .hero.wrap blockquote.eleo-feature-quote p::first-letter,
body.page-id-10 .eleo-page-body .eleo-about-story blockquote.eleo-feature-quote p::first-letter {
  font: inherit !important;
  font-style: italic !important;
  color: inherit !important;
  float: none !important;
  padding: 0 !important;
}
body .hero.wrap blockquote.eleo-feature-quote footer,
body.page-id-10 .eleo-page-body .eleo-about-story blockquote.eleo-feature-quote footer {
  display: block !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
  font-style: normal !important;
  letter-spacing: .03em !important;
  color: #76685c !important;
  text-align: right !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
@media (max-width: 680px) {
  body .hero.wrap blockquote.eleo-feature-quote,
  body.page-id-10 .eleo-page-body .eleo-about-story blockquote.eleo-feature-quote {
    padding: 23px 20px 22px !important;
    margin: 26px auto 40px !important;
  }
  body .hero.wrap blockquote.eleo-feature-quote p,
  body.page-id-10 .eleo-page-body .eleo-about-story blockquote.eleo-feature-quote p {
    font-size: 20px !important;
    line-height: 1.6 !important;
  }
  body .hero.wrap blockquote.eleo-feature-quote footer,
  body.page-id-10 .eleo-page-body .eleo-about-story blockquote.eleo-feature-quote footer {
    font-size: 15px !important;
  }
}
