/* ===================================================================
   Finding Hiraeth — Custom CSS (cleaned & consolidated)
   =================================================================== */

/* ===== Essay reading layout ===== */
.single-post .nv-single-post-wrap .entry-content,
.single-post .entry-content {
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}
.single-post .entry-content p,
.single-post .entry-content li {
  font-size: 1.18rem;
  line-height: 1.85;
  color: #3D3436;
}
.single-post .entry-content p { margin-bottom: 1.5em; }
.single-post .entry-content h2 {
  margin-top: 2.6em;
  margin-bottom: 0.6em;
  color: #6E4457;
  letter-spacing: 0.2px;
  font-size: 1.9rem;
  clear: both;              /* clear floated in-body images */
}
.single-post .entry-content h3 {
  margin-top: 2em;
  color: #6E4457;
}
.single-post .entry-content > p:first-of-type {
  font-size: 1.32rem;
  line-height: 1.6;
  color: #6E4457;
  font-style: italic;
}
.single-post .entry-content hr {
  border: 0;
  border-top: 1px solid #E4D6C6;
  margin: 2.2em 0;
}
.single-post .entry-content a {
  color: #6E4457;
  text-underline-offset: 3px;
  text-decoration-color: #C9A9B4;
}
.single-post .entry-content a:hover { color: #C57B54; }
.single-post .entry-content strong { color: #3A2E33; }
.single-post .nv-title-meta-wrap .entry-title { letter-spacing: 0.3px; }

/* Tighten space above the first H2 */
.single-post .entry-content > h2:first-of-type,
.single-post .entry-content > hr:first-of-type + h2 { margin-top: 0.6em; }
.single-post .entry-content > hr:first-of-type { margin-bottom: 1em; }

@media (max-width: 600px) {
  .single-post .entry-content p,
  .single-post .entry-content li { font-size: 1.08rem; line-height: 1.8; }
  .single-post .entry-content > p:first-of-type { font-size: 1.18rem; }
}

/* ===== Essay header: warm deep-plum band with cream title ===== */
.single-post .nv-post-cover {
  background-color: #6E4457 !important;
  min-height: 520px;
  height: 520px;
  background-position: 50% 42%;
}
.single-post .nv-post-cover .entry-title { color: #F7F1EA !important; }
.single-post .nv-post-cover .nv-meta-list,
.single-post .nv-post-cover .nv-meta-list a,
.single-post .nv-post-cover .nv-meta-list li { color: #E8D9C9 !important; }
.single-post .nv-post-cover .nv-overlay { opacity: 0.12 !important; }
.single-post .nv-title-meta-wrap .entry-title,
.single-post .nv-title-meta-wrap .nv-meta-list {
  text-shadow: 0 1px 8px rgba(30,20,25,0.55), 0 1px 3px rgba(30,20,25,0.6);
}
@media (max-width: 768px) {
  .single-post .nv-post-cover { min-height: 440px; height: 440px; }
}

/* ===== In-body images: smaller, text-wrapped, alternating float ===== */
.single-post .entry-content figure.wp-block-image {
  max-width: 260px;
  margin: 0.4em 0 1.2em 0;
}
.single-post .entry-content figure.wp-block-image img {
  width: 100%;
  height: auto;
  border-radius: 4px;
}
.single-post .entry-content figure.wp-block-image:nth-of-type(odd) {
  float: right;
  margin-left: 2em;
}
.single-post .entry-content figure.wp-block-image:nth-of-type(even) {
  float: left;
  margin-right: 2em;
}
/* Wide-aligned images escape the 260px cap and float (used by Somatic panels) */
.single-post .entry-content figure.wp-block-image.alignwide {
  max-width: 100% !important;
  width: 100% !important;
  float: none !important;
  margin-left: 0;
  margin-right: 0;
}
@media (max-width: 600px) {
  .single-post .entry-content figure.wp-block-image {
    float: none !important;
    max-width: 100%;
    margin: 0.4em auto 1.2em auto;
  }
}

/* ===================================================================
   Somatic Field Reports — plum title band, no photo hero.
   Featured image stays intact (listing thumbnails + social shares work);
   it just isn't used as the cover background for this category.
   Title/meta = cream on plum, with real top + bottom breathing room.
   =================================================================== */
body:has(.category-somatic-field-reports) .nv-post-cover {
  background-image: none !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 2.75rem 0 2.5rem !important;
}
body:has(.category-somatic-field-reports) .nv-post-cover .nv-overlay {
  display: none !important;
}
body:has(.category-somatic-field-reports) .nv-post-cover .title.entry-title,
body:has(.category-somatic-field-reports) .nv-post-cover .nv-meta-list,
body:has(.category-somatic-field-reports) .nv-post-cover .nv-meta-list a,
body:has(.category-somatic-field-reports) .nv-post-cover .nv-meta-list li {
  color: #F7F1EA !important;
  text-shadow: none !important;
}
body:has(.category-somatic-field-reports) .nv-post-cover .nv-meta-list {
  margin-bottom: 0 !important;
}
.category-somatic-field-reports.nv-single-post-wrap { margin-top: 2rem; }

/* ===== Footer breathing room ===== */
.site-footer,
.site-footer .nv-footer-content,
.site-footer .footer-content-wrap { padding-top: 3rem; }
.site-footer .footer-content-wrap,
.site-footer .nv-footer-content {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.hfg-grid-main {
  grid-template-columns: 1fr 1fr 1fr;
  gap: 3rem;
}
@media (min-width: 769px) {
  .site-footer .footer-content-wrap,
  .site-footer .nv-footer-content {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}

/* ===== Non-essay page headings: warm dark grey ===== */
body:not(.single-post) .entry-content h1,
body:not(.single-post) .entry-content h2,
body:not(.single-post) .entry-content h3 { color: #574E51; }

/* ===== Home page dividers — match essay pages ===== */
.home .entry-content hr,
.page-id-35 .entry-content hr {
  border: none;
  border-top: 1px solid #E4D6C6;
  height: 0;
  background: none;
  display: block;
  width: 100%;
  max-width: 720px;
  margin: 2.4em auto;
}

/* ===== Home hero: full image, soft title, warm pre-load tone ===== */
.home .wp-block-cover {
  min-height: 92vh !important;
  background-color: #8A7078 !important;   /* warm fallback, no cold grey flash */
}
.home .wp-block-cover .wp-block-cover__image-background {
  object-position: 50% 82% !important;
}
.home .wp-block-cover h1 {
  color: #F4ECE3 !important;
  text-shadow: 0 1px 12px rgba(60, 40, 45, 0.25);
}
@media (max-width: 768px) {
  .home .wp-block-cover { min-height: 72vh !important; }
  .home .wp-block-cover .wp-block-cover__image-background {
    object-position: 30% 88% !important;
  }
}

/* ===== Home/thesis: comfortable reading gutter for wide groups ===== */
.home .entry-content .wp-block-group.alignwide p,
.home .entry-content .wp-block-group.alignwide h1,
.home .entry-content .wp-block-group.alignwide h2,
.home .entry-content .wp-block-group.alignwide h3,
.home .entry-content .wp-block-group.alignwide ul,
.home .entry-content .wp-block-group.alignwide ol,
.home .entry-content .wp-block-group.alignwide blockquote {
  max-width: 680px !important;
}
@media (max-width: 767px) {
  .home .entry-content .wp-block-group.alignwide > .wp-block-group__inner-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box;
  }
}

/* ============================================================
   HIRAETH — LAYOUT REFINEMENTS (added Jul 18 2026)
   Essays header · dividers · reading padding · hero width
   ============================================================ */

/* ---- 1. THE ESSAYS (blog archive) header image ---- */
body.blog .neve-main::before {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 1672 / 941;
  background-image: url("/wp-content/uploads/2026/07/the-essays-writing-nook.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin-bottom: 2.5rem;
}
@supports not (aspect-ratio: 1 / 1) {
  body.blog .neve-main::before { height: 0; padding-bottom: 56.28%; }
}

/* ---- 2. DIVIDERS — site standard: centered wide line ---- */
.entry-content hr,
.entry-content .wp-block-separator {
  border: 0;
  border-top: 4px solid rgba(61,52,54,0.55);
  width: 100%;
  max-width: 680px;
  margin: 2.5rem auto;
  height: 0;
  background: none;
  opacity: 1;
}
/* full-width pages: keep divider a centered reading-width line, not edge-to-edge */
body.page-id-441 .entry-content .wp-block-separator,
body.page-id-441 .entry-content hr,
body.page-id-445 .entry-content .wp-block-separator,
body.page-id-445 .entry-content hr {
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}

/* ---- 3. READING PADDING on full-width (container-fluid) pages ---- */
body.page-id-441 .entry-content > p,
body.page-id-441 .entry-content > h1,
body.page-id-441 .entry-content > h2,
body.page-id-441 .entry-content > h3,
body.page-id-441 .entry-content > h4,
body.page-id-441 .entry-content > ul,
body.page-id-441 .entry-content > ol,
body.page-id-441 .entry-content > blockquote,
body.page-id-445 .entry-content > p,
body.page-id-445 .entry-content > h1,
body.page-id-445 .entry-content > h2,
body.page-id-445 .entry-content > h3,
body.page-id-445 .entry-content > h4,
body.page-id-445 .entry-content > ul,
body.page-id-445 .entry-content > ol,
body.page-id-445 .entry-content > blockquote {
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
}
/* images on those pages stay full-bleed edge to edge */
body.page-id-441 .entry-content > figure.wp-block-image,
body.page-id-445 .entry-content > figure.wp-block-image {
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
}

/* ---- 4. HERO / full-width image width fix on single posts ---- */
.single-post .entry-content figure.wp-block-image.alignfull {
  max-width: 100%;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}


/* ---- DIVIDER CENTER FIX (display block so auto margins center) ---- */
/* HIRAETH DIVIDER CENTER FIX */
.entry-content hr,
.entry-content .wp-block-separator,
.entry-content .wp-block-separator.is-style-wide {
  display: block;
  margin-left: auto;
  margin-right: auto;
  float: none;
}


/* ---- CONTAINED HERO IMAGES (scaled down, centered, off the edges) ---- */
/* Page inline heroes: Bookshelf (441) & The Map (445) */
body.page-id-441 .entry-content > figure.wp-block-image,
body.page-id-445 .entry-content > figure.wp-block-image {
  max-width: 920px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
}
body.page-id-441 .entry-content > figure.wp-block-image img,
body.page-id-445 .entry-content > figure.wp-block-image img {
  width: 100%;
  height: auto;
  border-radius: 4px;
}
/* The Essays blog header image */
body.blog .neve-main::before {
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
}


/* ---- MAP DIVIDER LIGHT (lighter, less heavy rule lines) ---- */
body.page-id-445 .entry-content hr,
body.page-id-445 .entry-content .wp-block-separator,
body.page-id-445 .entry-content .wp-block-separator.is-style-wide {
  border-top-width: 1px;
  border-top-color: rgba(61,52,54,0.28);
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}

/* ---- CONTAINED HERO: About (79) & Reach Out / Contact (38) ---- */
body.page-id-79 .entry-content figure.wp-block-image,
body.page-id-38 .entry-content figure.wp-block-image {
  max-width: 920px !important;
  width: 100%;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
  float: none;
}
body.page-id-79 .entry-content figure.wp-block-image img,
body.page-id-38 .entry-content figure.wp-block-image img {
  width: 100%;
  height: auto;
  border-radius: 4px;
}
/* keep the wrapping alignfull group from forcing full-bleed on these pages */
body.page-id-79 .entry-content .wp-block-group.alignfull,
body.page-id-38 .entry-content .wp-block-group.alignfull {
  margin-left: auto;
  margin-right: auto;
}