/*
Theme overlay: Teutarya's Herald Combined v11
Purpose: single consolidated custom CSS layer for the Infinite News child theme.
Source: previous Teutarya Herald polish/hotfix/optimization/sidebar/taxonomy/lore-guide layers v1-v10 + Music Platform CTA.
Note: Keep this file loaded after style.css. Old teutarya-herald-*.css files are no longer needed/enqueued when using the v11 functions.php.
*/

/* --- Preserved site-level cleanup from old child style.css --- */
.comments-link,
.comment-respond,
#respond,
.meta-login,
.login-link {
  display: none !important;
}



/* ============================================================
   Imported layer: teutarya-herald-polish.css
   ============================================================ */

/*
 * Teutarya's Herald – Gothic Editorial Polish
 * Safe overlay CSS for the Infinite News Child Theme.
 * Load after style.css. Remove the enqueue in functions.php to disable.
 */

:root {
  --teu-ink: #1b1814;
  --teu-ink-2: #2a231d;
  --teu-charcoal: #221f1d;
  --teu-parchment: #f3efe6;
  --teu-parchment-2: #e9e2d3;
  --teu-paper: #fbf7ee;
  --teu-gold: #a98945;
  --teu-gold-soft: rgba(169, 137, 69, 0.45);
  --teu-oxblood: #6d1717;
  --teu-crimson: #9b2525;
  --teu-muted: #6d675c;
  --teu-line: rgba(71, 56, 35, 0.28);
  --teu-shadow: 0 18px 45px rgba(21, 17, 12, 0.16);
  --teu-shadow-soft: 0 8px 24px rgba(21, 17, 12, 0.10);

  --bg-clr: var(--teu-parchment);
  --custom-bg-clr: var(--teu-parchment);
  --bg-clr-light: #efe7d8;
  --clr-text: #383229;
  --clr-text-light: #766f63;
  --primary-color: var(--teu-oxblood);
  --border-clr: var(--teu-line);
  --site-title-color: var(--teu-ink);
}

/* Overall canvas: subtle archive parchment instead of plain magazine gray. */
body {
  background:
    radial-gradient(circle at 18% 0%, rgba(169, 137, 69, 0.16), transparent 30rem),
    radial-gradient(circle at 86% 6%, rgba(109, 23, 23, 0.10), transparent 26rem),
    linear-gradient(180deg, #f6f2e9 0%, #ece6d9 58%, #e7dfcf 100%);
  color: var(--clr-text);
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: 0.28;
  z-index: -1;
  background-image:
    linear-gradient(rgba(33, 27, 19, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(33, 27, 19, 0.018) 1px, transparent 1px);
  background-size: 42px 42px;
}

a {
  color: var(--teu-oxblood);
}

a:hover,
a:focus {
  color: var(--teu-crimson);
}

.section-wrapper {
  max-width: 1440px;
}

/* Header: keep the newspaper structure, make it feel like an official archive. */
.site-header {
  background: linear-gradient(180deg, #211d18 0%, #171411 100%);
  border-bottom: 1px solid rgba(169, 137, 69, 0.45);
  box-shadow: 0 8px 26px rgba(18, 14, 9, 0.22);
}

.site-header .infinite-news-topbar {
  background: #171411;
  color: #d9cfbb;
  border-bottom: 1px solid rgba(169, 137, 69, 0.26);
}

.site-header .infinite-news-topbar .top-header-right .date span,
.site-header .infinite-news-topbar a {
  color: #ded4c0;
}

.site-header .infinite-news-middle-header {
  background:
    linear-gradient(90deg, rgba(169,137,69,0.12), transparent 20%, transparent 80%, rgba(169,137,69,0.10)),
    #f4efe5;
  border-bottom: 1px solid rgba(91, 64, 28, 0.35);
}

.site-header .infinite-news-middle-header .site-branding .site-identity .site-title,
.site-header .infinite-news-middle-header .site-branding .site-identity .site-title a {
  color: var(--teu-ink);
  letter-spacing: 0.01em;
  text-shadow: 0 1px 0 rgba(255,255,255,0.45);
}

.site-header .infinite-news-middle-header .site-branding .site-identity .site-description {
  color: #6b5f4c;
  letter-spacing: 0.02em;
}

.navigation .main-navigation li a {
  color: #2e281f;
  border-bottom: 1px solid transparent;
}

.navigation .main-navigation li a:focus,
.navigation .main-navigation li a:hover,
.navigation .main-navigation .current-menu-item > a,
.navigation .main-navigation .current_page_item > a {
  color: var(--teu-oxblood);
  border-bottom-color: rgba(169, 137, 69, 0.65);
}

.site-header .infinite-news-middle-header .middle-header-right-part .infinite-news-header-search .header-search-wrap .search-icon,
.site-header .infinite-news-middle-header .middle-header-right-part .infinite-news-header-search .header-search-wrap .header-search-form .search-form .search-submit {
  color: var(--teu-ink);
}

/* Flash/news strips and main separators. */
.main-wrap {
  border-top: 1px solid rgba(94, 77, 49, 0.28);
  padding-block-start: 1.1rem;
}

.title-heading {
  border-bottom: 1px solid rgba(94, 77, 49, 0.20);
  padding-bottom: 0.45rem;
}

.title-heading .widget-title,
.title-heading .section-title,
.title-heading .widgettitle,
.widget:not(.ascendoor-widget) .widget-title {
  color: var(--teu-ink);
  letter-spacing: 0.02em;
  text-transform: none;
}

.title-heading .widget-title::before,
.title-heading .section-title::before,
.title-heading .widgettitle::before,
.widget:not(.ascendoor-widget) .widget-title::before {
  border-color: var(--teu-gold);
  box-shadow: 0 0 0 3px rgba(169, 137, 69, 0.14);
}

.title-heading a.view-all {
  color: #6d5e47;
}

/* Post cards: framed chronicle plates. */
.blog-post-container .blog-post-inner {
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.blog-post-container.grid-layout .blog-post-inner,
.blog-post-container.list-layout .blog-post-inner:not(.no-thumbnail),
.related-posts article,
.widget:not(.ascendoor-widget) {
  background: linear-gradient(180deg, rgba(255,255,255,0.52), rgba(243,236,222,0.88));
  border: 1px solid rgba(91, 70, 39, 0.22);
  box-shadow: var(--teu-shadow-soft);
}

.blog-post-container.grid-layout .blog-post-inner,
.related-posts article {
  padding: 8px;
}

.blog-post-container.grid-layout .blog-post-inner:hover,
.blog-post-container.list-layout .blog-post-inner:hover,
.related-posts article:hover {
  transform: translateY(-2px);
  border-color: rgba(169, 137, 69, 0.52);
  box-shadow: var(--teu-shadow);
}

.blog-post-container .blog-post-inner .blog-post-image,
.related-posts .post-thumbnail,
.entry-content .wp-block-image,
.entry-content figure {
  position: relative;
}

.blog-post-container .blog-post-inner .blog-post-image::after,
.related-posts .post-thumbnail::after {
  content: "";
  position: absolute;
  inset: 6px;
  pointer-events: none;
  border: 1px solid rgba(244, 226, 169, 0.35);
  box-shadow: inset 0 0 0 1px rgba(20, 16, 10, 0.18);
}

.blog-post-container .blog-post-inner .blog-post-image img,
.related-posts .post-thumbnail img {
  filter: saturate(0.93) contrast(1.04);
}

.blog-post-container.tile-layout .blog-post-inner {
  border: 1px solid rgba(169, 137, 69, 0.38);
  box-shadow: var(--teu-shadow-soft);
  background-color: #1d1814;
}

.blog-post-container.tile-layout .blog-post-inner:hover {
  box-shadow: 0 22px 52px rgba(16, 12, 8, 0.28);
}

.blog-post-container.tile-layout .blog-post-inner .blog-post-image::before {
  opacity: 0.82;
  background:
    linear-gradient(0deg, rgba(9,7,5,0.92) 0%, rgba(9,7,5,0.55) 38%, rgba(9,7,5,0.18) 72%, rgba(9,7,5,0.05) 100%),
    radial-gradient(circle at 8% 100%, rgba(109,23,23,0.30), transparent 42%);
}

.blog-post-container .blog-post-inner .blog-post-detail .entry-title,
.blog-post-container .blog-post-inner .blog-post-detail .post-main-title {
  letter-spacing: -0.01em;
}

.blog-post-container .blog-post-inner .blog-post-detail .entry-title a,
.blog-post-container .blog-post-inner .blog-post-detail .post-main-title a {
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}

.blog-post-container.grid-layout .blog-post-inner .blog-post-detail .entry-title a,
.blog-post-container.list-layout .blog-post-inner .blog-post-detail .entry-title a {
  color: #272119;
}

.blog-post-container.grid-layout .blog-post-inner .blog-post-detail .entry-title a:hover,
.blog-post-container.list-layout .blog-post-inner .blog-post-detail .entry-title a:hover {
  color: var(--teu-oxblood);
}

/* Category badges: less modern, more heraldic. */
.post-categories,
.entry-footer .post-categories {
  padding-left: 0;
}

.post-categories a,
.blog-post-container.grid-layout .blog-post-inner .blog-post-image .post-categories a,
.blog-post-container.tile-layout .blog-post-inner .blog-post-detail .post-categories a,
.entry-footer .post-categories a,
.widget_tag_cloud .tagcloud a,
.widget .wp-block-tag-cloud > a {
  background: linear-gradient(180deg, #2b2018, #17120e) !important;
  color: #f3e8cf !important;
  border: 1px solid rgba(169, 137, 69, 0.52);
  border-radius: 0;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.05), 0 2px 7px rgba(0,0,0,0.16);
  letter-spacing: 0.065em;
}

.post-categories a:hover,
.blog-post-container.grid-layout .blog-post-inner .blog-post-image .post-categories a:hover,
.blog-post-container.tile-layout .blog-post-inner .blog-post-detail .post-categories a:hover,
.entry-footer .post-categories a:hover,
.widget_tag_cloud .tagcloud a:hover,
.widget .wp-block-tag-cloud > a:hover {
  background: linear-gradient(180deg, #7b1d1d, #3a1111) !important;
  border-color: rgba(232, 195, 103, 0.78);
}

/* Single posts/pages: make long text feel like an archive entry. */
.single-post .infinite-news-main-wrapper .infinite-news-container-wrapper #primary article,
.page:not(.home) .infinite-news-main-wrapper .infinite-news-container-wrapper #primary article {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.58), rgba(246,239,225,0.96)),
    var(--teu-paper);
  border: 1px solid rgba(91, 70, 39, 0.22);
  box-shadow: var(--teu-shadow-soft);
  padding: clamp(18px, 2vw, 34px);
}

.single-post .entry-header .entry-title,
.page .entry-header .entry-title,
.page-title {
  color: #272119;
  line-height: 1.08;
}

.single-post .entry-header,
.page .entry-header,
.page-header {
  position: relative;
  margin-bottom: 1.2rem;
  padding-bottom: 0.85rem;
  border-bottom: 1px solid rgba(91, 70, 39, 0.24);
}

.single-post .entry-header::after,
.page .entry-header::after,
.page-header::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 92px;
  height: 2px;
  background: linear-gradient(90deg, var(--teu-gold), transparent);
}

.single-post .entry-meta,
.single-post .entry-meta a,
.blog-post-container .post-meta,
.blog-post-container .post-meta a {
  color: #756b5c;
}

.entry-content {
  font-size: clamp(1rem, 0.22vw + 0.96rem, 1.12rem);
  line-height: 1.75;
}

.entry-content h2,
.entry-content h3,
.entry-content h4 {
  margin-top: 1.8em;
  color: #2b241b;
}

.entry-content h2 {
  padding-bottom: 0.35rem;
  border-bottom: 1px solid rgba(91, 70, 39, 0.20);
}

.single-post .entry-content > p:first-of-type::first-letter {
  float: left;
  font-size: 3.15em;
  line-height: 0.86;
  padding: 0.08em 0.12em 0 0;
  color: var(--teu-oxblood);
}

.entry-content blockquote {
  margin: 1.8rem 0;
  padding: 1.1rem 1.25rem;
  background: rgba(35, 28, 20, 0.045);
  border-left: 4px solid var(--teu-gold);
  color: #3d352a;
}

.entry-content .wp-block-image img,
.entry-content figure.wp-block-image img,
.single-post-thumbnail-caption + .entry-content img {
  border: 1px solid rgba(169, 137, 69, 0.46);
  box-shadow: var(--teu-shadow-soft);
}

.wp-block-separator,
.entry-content hr {
  border: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(169,137,69,0.72), transparent);
  margin: 2rem 0;
}

/* Sidebar: reduce the default WordPress widget feeling. */
#secondary .widget,
.secondary-widgets-area .widget {
  background: linear-gradient(180deg, rgba(255,255,255,0.46), rgba(239,231,215,0.82));
  border: 1px solid rgba(91, 70, 39, 0.20);
  padding: 14px;
  box-shadow: 0 8px 24px rgba(21, 17, 12, 0.08);
}

#secondary .widget + .widget {
  margin-top: 1.15rem;
}

.widget_search form.search-form,
.site-header .search-form {
  border: 1px solid rgba(91, 70, 39, 0.26);
  background: rgba(255,255,255,0.52);
}

.widget_search form.search-form .search-submit,
.search-form .search-submit {
  background: var(--teu-ink-2);
  color: #f2e7cf;
}

.widget_search form.search-form .search-submit:hover,
.search-form .search-submit:hover {
  background: var(--teu-oxblood);
}

/* Footer: already good, made a little more ceremonial. */
.site-footer {
  background:
    radial-gradient(circle at 12% 20%, rgba(169,137,69,0.08), transparent 26rem),
    linear-gradient(180deg, #24211d, #171411);
  border-top: 1px solid rgba(169, 137, 69, 0.45);
}

.site-footer .infinite-news-top-footer {
  border-bottom: 1px solid rgba(169, 137, 69, 0.18);
}

.site-footer a {
  color: #eadfc9;
}

.site-footer a:hover,
.site-footer a:focus {
  color: #fff3c9;
}

/* Chronicle timeline fixes + polish. */
.timeline {
  --line-x: 28px;
}

.timeline::before,
.timeline:before {
  background: linear-gradient(180deg, transparent, rgba(169,137,69,0.72), rgba(109,23,23,0.45), transparent);
}

.timeline-epoch .epoch-label,
.timeline-item .card {
  border-color: rgba(169, 137, 69, 0.34);
  background: linear-gradient(180deg, rgba(255,255,255,0.54), rgba(241,232,214,0.90));
  box-shadow: var(--teu-shadow-soft);
}

.timeline-item .dot {
  background: var(--teu-oxblood);
  border-color: #f5ead7;
  box-shadow: 0 0 0 3px rgba(169,137,69,0.25), 0 0 16px rgba(109,23,23,0.26);
}

.timeline-item .card .title a {
  color: #2b241b;
}

.timeline-item .card .title a:hover {
  color: var(--teu-oxblood);
}

.timeline-item .card .timeline-thumb,
.timeline-item .card .thumb-link {
  border: 1px solid rgba(169, 137, 69, 0.36);
  box-shadow: inset 0 0 0 1px rgba(0,0,0,0.1);
}

/* Optional reusable Gutenberg blocks/classes for future lore posts. */
.teu-callout,
.teu-lore-card,
.teu-archive-note,
.teu-song-link {
  margin: 1.6rem 0;
  padding: clamp(16px, 2vw, 24px);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.52), rgba(238,228,207,0.86));
  border: 1px solid rgba(169, 137, 69, 0.42);
  box-shadow: var(--teu-shadow-soft);
  position: relative;
}

.teu-callout::before,
.teu-lore-card::before,
.teu-archive-note::before,
.teu-song-link::before {
  content: "";
  position: absolute;
  inset: 7px;
  border: 1px solid rgba(169,137,69,0.20);
  pointer-events: none;
}

.teu-callout h2,
.teu-callout h3,
.teu-lore-card h2,
.teu-lore-card h3,
.teu-archive-note h2,
.teu-archive-note h3,
.teu-song-link h2,
.teu-song-link h3 {
  margin-top: 0;
  color: var(--teu-ink);
}

.teu-archive-note {
  background: linear-gradient(180deg, rgba(39,31,23,0.93), rgba(24,19,15,0.96));
  color: #eadfc9;
}

.teu-archive-note h2,
.teu-archive-note h3,
.teu-archive-note a {
  color: #f5df9f;
}

.teu-kicker {
  display: inline-block;
  margin-bottom: 0.45rem;
  color: var(--teu-oxblood);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.teu-divider {
  height: 1px;
  margin: 2rem 0;
  background: linear-gradient(90deg, transparent, rgba(169,137,69,0.85), rgba(109,23,23,0.45), transparent);
}

/* Keep it civil on small screens. */
@media (max-width: 990px) {
  .single-post .infinite-news-main-wrapper .infinite-news-container-wrapper #primary article,
  .page:not(.home) .infinite-news-main-wrapper .infinite-news-container-wrapper #primary article {
    padding: 18px;
  }

  #secondary .widget,
  .secondary-widgets-area .widget {
    padding: 12px;
  }
}

@media (max-width: 600px) {
  body::before {
    opacity: 0.16;
  }

  .blog-post-container.grid-layout .blog-post-inner,
  .related-posts article {
    padding: 6px;
  }

  .single-post .entry-content > p:first-of-type::first-letter {
    font-size: 2.6em;
  }

  .post-categories a,
  .blog-post-container.grid-layout .blog-post-inner .blog-post-image .post-categories a,
  .blog-post-container.tile-layout .blog-post-inner .blog-post-detail .post-categories a {
    letter-spacing: 0.04em;
  }
}


/* ============================================================
   Imported layer: teutarya-herald-hotfix-v2.css
   ============================================================ */

/*
 * Teutarya's Herald – Hotfix v2
 * Load after teutarya-herald-polish.css.
 * Fixes: single featured image, related post thumbnails, footer widget contrast,
 * and disables the Infinite News preloader delay.
 */

/* 1) Disable the Infinite News preloader / loading screen. */
#loader,
#preloader,
.loader-4 {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body {
  overflow: visible !important;
}

/* 2) Restore featured images on single posts.
   Your old child CSS used `.single-post .post-thumbnail { display: none; }`,
   which also hid thumbnails inside Related Posts. */
.single-post .post-thumbnail {
  display: block !important;
}

.single-post #primary > article > .post-thumbnail,
.single-post #primary article.post > .post-thumbnail {
  margin: 1.15rem 0 1.6rem !important;
  line-height: 0;
  position: relative;
  overflow: hidden;
  background: #1d1814;
  border: 1px solid rgba(169, 137, 69, 0.52);
  box-shadow: 0 14px 34px rgba(21, 17, 12, 0.16);
}

.single-post #primary > article > .post-thumbnail::after,
.single-post #primary article.post > .post-thumbnail::after {
  content: "";
  position: absolute;
  inset: 8px;
  pointer-events: none;
  border: 1px solid rgba(244, 226, 169, 0.34);
  box-shadow: inset 0 0 0 1px rgba(20, 16, 10, 0.22);
}

.single-post #primary > article > .post-thumbnail img,
.single-post #primary article.post > .post-thumbnail img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  filter: saturate(0.96) contrast(1.04);
}

.single-post-thumbnail-caption:empty,
.single-page-thumbnail-caption:empty {
  display: none;
}

/* 3) Restore thumbnails in Related Posts and keep their excerpt typography compact. */
.single-post .related-posts .post-thumbnail,
.single-post .related-posts .row div article .post-thumbnail {
  display: block !important;
  margin: 0 0 10px !important;
  line-height: 0;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(169, 137, 69, 0.42);
  background: #1d1814;
}

.single-post .related-posts .post-thumbnail img,
.single-post .related-posts .row div article .post-thumbnail img {
  display: block !important;
  width: 100% !important;
  height: 175px !important;
  object-fit: cover !important;
}

.single-post .related-posts .entry-content > p:first-of-type::first-letter {
  float: none !important;
  font-size: inherit !important;
  line-height: inherit !important;
  padding: 0 !important;
  color: inherit !important;
}

.single-post .related-posts article {
  min-height: 100%;
}

/* 4) Footer: override the light generic widget card background inside the dark footer. */
footer.site-footer .widget,
footer.site-footer .widget:not(.ascendoor-widget),
footer.site-footer .wp-block-group,
footer.site-footer .wp-block-column {
  background: linear-gradient(180deg, rgba(54, 46, 36, 0.94), rgba(28, 24, 20, 0.98)) !important;
  border: 1px solid rgba(169, 137, 69, 0.34) !important;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.18) !important;
  color: #e8dfcf !important;
}

footer.site-footer .widget {
  padding: 14px !important;
}

footer.site-footer .widget p,
footer.site-footer .widget li,
footer.site-footer .widget span,
footer.site-footer .widget .wp-block-latest-posts__post-excerpt {
  color: #e8dfcf !important;
}

footer.site-footer .widget-title,
footer.site-footer h1,
footer.site-footer h2,
footer.site-footer h3,
footer.site-footer h4,
footer.site-footer h5,
footer.site-footer h6,
footer.site-footer .wp-block-heading {
  color: #f2dfaa !important;
}

footer.site-footer a {
  color: #f2dfaa !important;
}

footer.site-footer a:hover,
footer.site-footer a:focus {
  color: #fff3c9 !important;
}

footer.site-footer .infinite-news-bottom-footer {
  background: #15120f !important;
}

@media (max-width: 600px) {
  .single-post .related-posts .post-thumbnail img,
  .single-post .related-posts .row div article .post-thumbnail img {
    height: auto !important;
  }
}


/* ============================================================
   Imported layer: teutarya-herald-optimization-v3.css
   ============================================================ */

/**
 * Teutarya's Herald – Optimization v3
 * Focus: tighter Related Posts cards + more ceremonial gothic footer.
 * Load after teutarya-herald-hotfix-v2.css.
 */

/* ------------------------------------------------------------
   1) Related Posts: less dead padding, better text width
   ------------------------------------------------------------ */
.single-post .related-posts {
  margin-top: 34px;
  padding-top: 6px;
  border-top: 1px solid rgba(91, 70, 39, 0.16);
}

.single-post .related-posts h2 {
  margin-bottom: 14px;
  letter-spacing: -0.02em;
}

.single-post .related-posts .row {
  gap: 14px !important;
  align-items: stretch;
}

.single-post .related-posts .row > div {
  display: flex;
}

/* If only one related post is returned, do not keep it trapped in a narrow 1/3 card. */
.single-post .related-posts .row > div:only-child {
  flex-basis: 52% !important;
  max-width: 460px;
}

.single-post .related-posts .row div article,
.single-post .related-posts article {
  width: 100%;
  padding: 5px !important;
  border: 1px solid rgba(124, 91, 43, 0.28) !important;
  background: linear-gradient(180deg, rgba(255, 252, 244, 0.66), rgba(239, 229, 208, 0.94)) !important;
  box-shadow: 0 12px 26px rgba(28, 21, 14, 0.10) !important;
}

.single-post .related-posts .row div article:hover,
.single-post .related-posts article:hover {
  box-shadow: 0 17px 34px rgba(28, 21, 14, 0.16) !important;
}

.single-post .related-posts .post-thumbnail,
.single-post .related-posts .row div article .post-thumbnail {
  margin: 0 0 7px !important;
  border-color: rgba(112, 28, 28, 0.38) !important;
}

.single-post .related-posts .post-thumbnail::after,
.single-post .related-posts .row div article .post-thumbnail::after {
  inset: 4px !important;
  border-color: rgba(244, 226, 169, 0.30) !important;
}

.single-post .related-posts .post-thumbnail img,
.single-post .related-posts .row div article .post-thumbnail img {
  height: 150px !important;
}

.single-post .related-posts .row > div:only-child .post-thumbnail img {
  height: 170px !important;
}

.single-post .related-posts .row div article .post-text,
.single-post .related-posts article .post-text {
  margin-top: 0 !important;
  padding: 2px 7px 9px !important;
}

.single-post .related-posts .row div article .post-text .entry-header,
.single-post .related-posts article .entry-header {
  margin: 0 0 5px !important;
}

.single-post .related-posts .entry-title,
.single-post .related-posts h5.entry-title {
  margin: 0 !important;
}

.single-post .related-posts .entry-title a,
.single-post .related-posts h5.entry-title a {
  display: block;
  font-size: 15px !important;
  line-height: 1.18 !important;
  letter-spacing: -0.012em;
  text-wrap: balance;
}

.single-post .related-posts .entry-content,
.single-post .related-posts .row div article .post-text .entry-content {
  margin: 0 !important;
}

.single-post .related-posts .entry-content p,
.single-post .related-posts .row div article .post-text .entry-content p {
  font-size: 13px !important;
  line-height: 1.48 !important;
  margin: 0 !important;
}

@media (max-width: 900px) {
  .single-post .related-posts .row > div:only-child {
    flex-basis: 100% !important;
    max-width: none;
  }
}

@media (max-width: 600px) {
  .single-post .related-posts .post-thumbnail img,
  .single-post .related-posts .row div article .post-thumbnail img,
  .single-post .related-posts .row > div:only-child .post-thumbnail img {
    height: auto !important;
  }
}

/* ------------------------------------------------------------
   2) Footer: darker, more heraldic, less generic widget-block look
   ------------------------------------------------------------ */
.site-footer {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(178, 132, 47, 0.22) 0%, rgba(178, 132, 47, 0.08) 20%, transparent 48%),
    radial-gradient(ellipse at 18% 18%, rgba(100, 26, 21, 0.18) 0%, transparent 36%),
    linear-gradient(180deg, #1d1813 0%, #11100d 58%, #0a0908 100%) !important;
  border-top: 1px solid rgba(206, 168, 83, 0.36);
}

/* ceremonial top line */
.site-footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 6px;
  background:
    linear-gradient(90deg, transparent 0%, rgba(206, 168, 83, 0.15) 18%, rgba(206, 168, 83, 0.82) 39%, rgba(115, 22, 22, 0.76) 50%, rgba(206, 168, 83, 0.82) 61%, rgba(206, 168, 83, 0.15) 82%, transparent 100%);
  opacity: 0.95;
  z-index: 0;
}

/* small center seal / jewel – CSS only, no image dependency */
.site-footer::after {
  content: "";
  position: absolute;
  top: -10px;
  left: 50%;
  width: 34px;
  height: 34px;
  transform: translateX(-50%) rotate(45deg);
  border: 1px solid rgba(229, 192, 102, 0.72);
  background:
    radial-gradient(circle at 50% 50%, rgba(229, 192, 102, 0.62) 0%, rgba(100, 27, 22, 0.55) 34%, rgba(18, 14, 10, 0.96) 68%);
  box-shadow: 0 0 0 6px rgba(12, 10, 8, 0.88), 0 0 28px rgba(229, 192, 102, 0.20);
  z-index: 1;
}

.site-footer .infinite-news-top-footer {
  position: relative;
  padding-top: 48px !important;
  padding-bottom: 34px !important;
  background: transparent !important;
}

.site-footer .infinite-news-top-footer .section-wrapper,
.site-footer .infinite-news-bottom-footer .section-wrapper {
  position: relative;
  z-index: 2;
}

.site-footer .top-footer-wrapper {
  gap: 18px;
}

footer.site-footer .footer-container-wrapper,
footer.site-footer .footer-content-inside {
  min-height: 100%;
}

footer.site-footer .widget,
footer.site-footer .widget:not(.ascendoor-widget),
footer.site-footer .wp-block-group,
footer.site-footer .wp-block-column {
  position: relative;
  min-height: 100%;
  background:
    linear-gradient(180deg, rgba(43, 35, 27, 0.92), rgba(23, 20, 17, 0.96)) !important;
  border: 1px solid rgba(176, 139, 67, 0.32) !important;
  border-left: 3px solid rgba(176, 139, 67, 0.58) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 235, 181, 0.07),
    0 16px 34px rgba(0, 0, 0, 0.24) !important;
  color: #e8dfcf !important;
}

footer.site-footer .widget::before,
footer.site-footer .wp-block-group::before,
footer.site-footer .wp-block-column::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, rgba(229, 192, 102, 0.72), rgba(110, 28, 24, 0.72), transparent 78%);
  pointer-events: none;
}

footer.site-footer .widget-title,
footer.site-footer h1,
footer.site-footer h2,
footer.site-footer h3,
footer.site-footer h4,
footer.site-footer h5,
footer.site-footer h6,
footer.site-footer .wp-block-heading {
  color: #f2dfaa !important;
  padding-bottom: 8px;
  margin-bottom: 12px;
  border-bottom: 1px solid rgba(229, 192, 102, 0.18);
  letter-spacing: 0.015em;
}

footer.site-footer .widget p,
footer.site-footer .widget li,
footer.site-footer .widget span,
footer.site-footer .widget .wp-block-latest-posts__post-excerpt {
  color: #e8dfcf !important;
}

footer.site-footer a {
  color: #f2dfaa !important;
  text-decoration-color: rgba(242, 223, 170, 0.34);
}

footer.site-footer a:hover,
footer.site-footer a:focus {
  color: #fff3c9 !important;
  text-decoration-color: rgba(255, 243, 201, 0.82);
}

footer.site-footer .infinite-news-bottom-footer {
  background: rgba(8, 7, 6, 0.92) !important;
  border-top: 1px solid rgba(229, 192, 102, 0.16);
}

footer.site-footer .bottom-footer-content {
  color: rgba(232, 223, 207, 0.72) !important;
}

/* Make the scroll-to-top button feel less default and more branded. */
.scroll-to-top {
  border: 1px solid rgba(229, 192, 102, 0.45) !important;
  background: linear-gradient(180deg, #7a1d1d, #3d1110) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25) !important;
}


/* ============================================================
   Imported layer: teutarya-herald-chronik-v4.css
   ============================================================ */

/**
 * Teutarya's Herald Chronik v4
 * Ausklappbarer Epochen-Zeitstrahl für page-chronik.php.
 */

.teu-chronik-page {
  --teu-ink: #251f18;
  --teu-muted: #6f6251;
  --teu-gold: #a98945;
  --teu-gold-soft: rgba(169, 137, 69, 0.34);
  --teu-oxblood: #6d1717;
  --teu-paper: rgba(255, 250, 238, 0.78);
  --teu-paper-strong: rgba(247, 238, 218, 0.94);
}

.teu-chronik-hero {
  margin: 0 0 22px;
  padding: clamp(22px, 3vw, 34px);
  background:
    radial-gradient(circle at 16% 0%, rgba(169, 137, 69, 0.17), transparent 38%),
    linear-gradient(135deg, rgba(255,255,255,0.74), rgba(239,228,204,0.92));
  border: 1px solid var(--teu-gold-soft);
  box-shadow: 0 16px 36px rgba(38, 29, 18, 0.10);
  position: relative;
  overflow: hidden;
}

.teu-chronik-hero::before,
.teu-chronik-hero::after {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(169, 137, 69, 0.78), rgba(109, 23, 23, 0.44), transparent);
}

.teu-chronik-hero::before { top: 10px; }
.teu-chronik-hero::after { bottom: 10px; }

.teu-chronik-kicker {
  margin: 0 0 6px;
  color: var(--teu-oxblood);
  font-family: "Cinzel", Georgia, serif;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.teu-chronik-page .page-title {
  margin-bottom: 8px;
}

.teu-chronik-page .page-subtitle {
  max-width: 72ch;
  margin: 0;
  color: var(--teu-muted);
  font-size: 1.02rem;
  line-height: 1.65;
}

.teu-chronik-index {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 22px;
  padding: 12px;
  background: rgba(32, 25, 17, 0.05);
  border: 1px solid rgba(169, 137, 69, 0.22);
}

.teu-chronik-index a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  color: #2d251b;
  background: rgba(255,255,255,0.54);
  border: 1px solid rgba(169, 137, 69, 0.28);
  text-decoration: none;
  box-shadow: 0 2px 8px rgba(36, 28, 18, 0.05);
}

.teu-chronik-index a:hover,
.teu-chronik-index a:focus {
  color: #fff7df;
  background: linear-gradient(135deg, #34281d, #6d1717);
  border-color: rgba(169, 137, 69, 0.70);
}

.teu-chronik-index em {
  min-width: 22px;
  padding: 2px 6px;
  color: #fff5dc;
  background: #2a2117;
  font-style: normal;
  font-size: 0.78rem;
  line-height: 1.2;
  text-align: center;
}

.teu-chronik-timeline {
  position: relative;
  display: grid;
  gap: 14px;
}

.teu-chronik-epoch {
  border: 1px solid rgba(169, 137, 69, 0.38);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.54), rgba(243,232,209,0.90));
  box-shadow: 0 12px 30px rgba(36, 28, 18, 0.10);
}

.teu-chronik-epoch summary {
  cursor: pointer;
  list-style: none;
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 12px;
  align-items: center;
  padding: 16px 18px;
  color: #f8edcd;
  background:
    linear-gradient(90deg, rgba(22, 18, 13, 0.98), rgba(45, 32, 20, 0.94) 46%, rgba(109, 23, 23, 0.86));
  border-bottom: 1px solid rgba(169, 137, 69, 0.44);
  position: relative;
}

.teu-chronik-epoch summary::-webkit-details-marker {
  display: none;
}

.teu-chronik-epoch summary::before {
  content: "+";
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  margin-right: 10px;
  color: #2a2117;
  background: linear-gradient(180deg, #dcc580, #9d7833);
  border: 1px solid rgba(255,255,255,0.28);
  box-shadow: 0 0 0 3px rgba(169, 137, 69, 0.10);
  font-weight: 900;
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
}

.teu-chronik-epoch[open] summary::before {
  content: "–";
}

.teu-epoch-title {
  padding-left: 34px;
  font-family: "Cinzel", Georgia, serif;
  font-size: clamp(1rem, 1.4vw, 1.18rem);
  font-weight: 800;
  letter-spacing: 0.03em;
}

.teu-epoch-range,
.teu-epoch-count {
  font-size: 0.82rem;
  color: rgba(255, 247, 222, 0.82);
  white-space: nowrap;
}

.teu-epoch-count {
  padding: 3px 8px;
  color: #fff3c9;
  background: rgba(0,0,0,0.26);
  border: 1px solid rgba(169, 137, 69, 0.38);
}

.teu-chronik-items {
  position: relative;
  display: grid;
  gap: 14px;
  padding: 20px 18px 22px 48px;
}

.teu-chronik-items::before {
  content: "";
  position: absolute;
  top: 26px;
  bottom: 28px;
  left: 27px;
  width: 2px;
  background: linear-gradient(180deg, transparent, rgba(169, 137, 69, 0.80), rgba(109, 23, 23, 0.45), transparent);
}

.teu-chronik-item {
  position: relative;
  display: grid;
  grid-template-columns: minmax(150px, 220px) 1fr;
  gap: 16px;
  align-items: start;
  padding: 13px;
  background: rgba(255, 250, 238, 0.78);
  border: 1px solid rgba(169, 137, 69, 0.28);
  box-shadow: 0 7px 20px rgba(36, 28, 18, 0.07);
}

.teu-chronik-marker {
  position: absolute;
  left: -28px;
  top: 24px;
  width: 13px;
  height: 13px;
  border-radius: 999px;
  background: var(--teu-oxblood);
  border: 3px solid #f5ead7;
  box-shadow: 0 0 0 3px rgba(169,137,69,0.24), 0 0 14px rgba(109,23,23,0.22);
  z-index: 2;
}

.teu-chronik-thumb {
  display: block;
  min-height: 118px;
  overflow: hidden;
  border: 1px solid rgba(169, 137, 69, 0.42);
  background: #19140f;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,0.16);
}

.teu-chronik-thumb img {
  display: block;
  width: 100%;
  height: 132px;
  object-fit: cover;
  transition: transform 220ms ease, filter 220ms ease;
}

.teu-chronik-thumb:hover img,
.teu-chronik-thumb:focus img {
  transform: scale(1.025);
  filter: contrast(1.06) saturate(1.03);
}

.teu-chronik-body {
  min-width: 0;
}

.teu-chronik-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0 0 5px;
  color: #766953;
  font-size: 0.82rem;
}

.teu-chronik-year {
  color: var(--teu-oxblood);
  font-family: "Cinzel", Georgia, serif;
  font-weight: 800;
}

.teu-chronik-title {
  margin: 0 0 5px;
  font-size: clamp(1rem, 1.25vw, 1.16rem);
  line-height: 1.18;
}

.teu-chronik-title a {
  color: #2d251b;
  text-decoration: none;
}

.teu-chronik-title a:hover,
.teu-chronik-title a:focus {
  color: var(--teu-oxblood);
}

.teu-chronik-excerpt {
  margin: 0;
  color: #4e4538;
  font-size: 0.92rem;
  line-height: 1.48;
}

.teu-chronik-empty {
  padding: 18px;
  background: rgba(255,255,255,0.52);
  border: 1px solid rgba(169, 137, 69, 0.28);
}

@media (max-width: 760px) {
  .teu-chronik-epoch summary {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .teu-epoch-title {
    padding-left: 32px;
  }

  .teu-epoch-range,
  .teu-epoch-count {
    margin-left: 32px;
    white-space: normal;
  }

  .teu-chronik-items {
    padding-left: 36px;
  }

  .teu-chronik-items::before {
    left: 20px;
  }

  .teu-chronik-marker {
    left: -24px;
  }

  .teu-chronik-item {
    grid-template-columns: 1fr;
  }

  .teu-chronik-thumb img {
    height: auto;
    max-height: 260px;
  }
}


/* ============================================================
   Imported layer: teutarya-herald-v5.css
   ============================================================ */

/**
 * Teutarya's Herald – v5 refinement layer
 * Footer layout reset, tighter related cards, improved chronicle timeline,
 * Gutenberg hero portal, clickable YouTube banner frame.
 * Load after teutarya-herald-chronik-v4.css.
 */

:root {
  --teu-v5-ink: #251f18;
  --teu-v5-paper: #f5eddd;
  --teu-v5-paper-strong: #fffaf0;
  --teu-v5-gold: #b59049;
  --teu-v5-gold-soft: rgba(181, 144, 73, 0.38);
  --teu-v5-oxblood: #741919;
  --teu-v5-night: #15110d;
  --teu-v5-night-soft: #211a13;
}

/* ------------------------------------------------------------
   1) Related posts: image frame with less dead padding
   ------------------------------------------------------------ */
.single-post .related-posts .row div article,
.single-post .related-posts article {
  padding: 0 !important;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255, 252, 244, 0.78), rgba(239, 229, 208, 0.96)) !important;
}

.single-post .related-posts .post-thumbnail,
.single-post .related-posts .row div article .post-thumbnail {
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(124, 91, 43, 0.28) !important;
}

.single-post .related-posts .post-thumbnail::after,
.single-post .related-posts .row div article .post-thumbnail::after {
  inset: 5px !important;
}

.single-post .related-posts .row div article .post-text,
.single-post .related-posts article .post-text {
  padding: 10px 12px 13px !important;
}

.single-post .related-posts .entry-title a,
.single-post .related-posts h5.entry-title a {
  font-size: 14.5px !important;
  line-height: 1.22 !important;
}

.single-post .related-posts .entry-content p,
.single-post .related-posts .row div article .post-text .entry-content p {
  font-size: 12.5px !important;
  line-height: 1.45 !important;
}

/* ------------------------------------------------------------
   2) Footer: four columns on desktop, no widget-box highlighting
   ------------------------------------------------------------ */
.site-footer {
  background:
    radial-gradient(ellipse at 50% 0%, rgba(182, 143, 72, 0.18) 0%, rgba(182, 143, 72, 0.07) 24%, transparent 56%),
    radial-gradient(ellipse at 14% 28%, rgba(112, 28, 25, 0.14) 0%, transparent 38%),
    radial-gradient(ellipse at 86% 34%, rgba(112, 28, 25, 0.10) 0%, transparent 34%),
    linear-gradient(180deg, #1a1510 0%, #11100d 62%, #080706 100%) !important;
  border-top: 1px solid rgba(207, 169, 85, 0.28) !important;
}

.site-footer::before {
  height: 8px !important;
  background:
    linear-gradient(90deg, transparent 0%, rgba(205, 168, 86, 0.16) 16%, rgba(205, 168, 86, 0.78) 37%, rgba(117, 25, 25, 0.78) 50%, rgba(205, 168, 86, 0.78) 63%, rgba(205, 168, 86, 0.16) 84%, transparent 100%) !important;
}

/* keep the ornamental seal from v3, but make it subtler */
.site-footer::after {
  opacity: 0.82;
}

footer.site-footer .infinite-news-top-footer {
  padding-top: 46px !important;
  padding-bottom: 32px !important;
  border-top: 0 !important;
}

footer.site-footer .infinite-news-top-footer .top-footer-wrapper {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 28px) !important;
  margin-inline: 0 !important;
  align-items: start;
}

footer.site-footer .infinite-news-top-footer .top-footer-wrapper .footer-container-wrapper {
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}

footer.site-footer .footer-content-inside {
  min-height: 100%;
  padding: 0 !important;
}

footer.site-footer .widget,
footer.site-footer .widget:not(.ascendoor-widget),
footer.site-footer .wp-block-group,
footer.site-footer .wp-block-column {
  background: transparent !important;
  border: 0 !important;
  border-left: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  color: #e7dcc8 !important;
}

footer.site-footer .widget::before,
footer.site-footer .wp-block-group::before,
footer.site-footer .wp-block-column::before {
  display: none !important;
}

footer.site-footer .widget-title,
footer.site-footer h1,
footer.site-footer h2,
footer.site-footer h3,
footer.site-footer h4,
footer.site-footer h5,
footer.site-footer h6,
footer.site-footer .wp-block-heading {
  color: #e9ce86 !important;
  margin: 0 0 12px !important;
  padding: 0 0 9px !important;
  border-bottom: 1px solid rgba(205, 168, 86, 0.24) !important;
  font-family: "Cinzel", Georgia, serif;
  font-size: 0.98rem;
  letter-spacing: 0.03em;
}

footer.site-footer .widget-title::before,
footer.site-footer .wp-block-heading::before {
  content: "◆";
  display: inline-block;
  margin-right: 7px;
  color: var(--teu-v5-gold);
  font-size: 0.62em;
  transform: translateY(-1px);
}

footer.site-footer p,
footer.site-footer li,
footer.site-footer span {
  color: rgba(231, 220, 200, 0.88) !important;
}

footer.site-footer a {
  color: #f1d999 !important;
  text-decoration: none;
}

footer.site-footer a:hover,
footer.site-footer a:focus {
  color: #fff1c7 !important;
  text-decoration: underline;
  text-decoration-color: rgba(255, 241, 199, 0.52);
  text-underline-offset: 3px;
}

footer.site-footer .infinite-news-bottom-footer {
  background: rgba(5, 5, 4, 0.78) !important;
  border-top: 1px solid rgba(205, 168, 86, 0.14) !important;
}

@media (max-width: 1100px) {
  footer.site-footer .infinite-news-top-footer .top-footer-wrapper {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  footer.site-footer .infinite-news-top-footer .top-footer-wrapper {
    grid-template-columns: 1fr;
  }
}

/* ------------------------------------------------------------
   3) Chronik v5: newest-first polish + tighter item rhythm
   ------------------------------------------------------------ */
.teu-chronik-page .page-subtitle {
  max-width: 78ch;
}

.teu-chronik-index {
  margin-bottom: 18px;
}

.teu-epoch-description {
  margin: 0;
  padding: 12px 18px 0 48px;
  color: #5f5343;
  font-size: 0.94rem;
  line-height: 1.55;
  background: linear-gradient(180deg, rgba(255, 250, 238, 0.42), transparent);
}

.teu-chronik-items {
  gap: 10px !important;
  padding-top: 14px !important;
  padding-bottom: 16px !important;
}

.teu-chronik-item {
  padding: 9px 11px !important;
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease;
}

.teu-chronik-item:hover,
.teu-chronik-item:focus-within {
  transform: translateY(-2px);
  border-color: rgba(116, 25, 25, 0.38);
  background: rgba(255, 252, 243, 0.92);
  box-shadow: 0 12px 28px rgba(36, 28, 18, 0.13);
}

.teu-chronik-marker {
  top: 18px !important;
  transition: background 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.teu-chronik-item:hover .teu-chronik-marker,
.teu-chronik-item:focus-within .teu-chronik-marker {
  transform: scale(1.12);
  background: var(--teu-v5-gold);
  box-shadow: 0 0 0 3px rgba(169,137,69,0.26), 0 0 18px rgba(169,137,69,0.28);
}

.teu-chronik-thumb img {
  height: 118px !important;
}

.teu-chronik-meta {
  margin-bottom: 4px !important;
}

.teu-chronik-title {
  margin-bottom: 4px !important;
}

.teu-chronik-excerpt {
  line-height: 1.42 !important;
}

@media (max-width: 760px) {
  .teu-epoch-description {
    padding-left: 18px;
  }

  .teu-chronik-thumb img {
    height: auto !important;
  }
}

/* ------------------------------------------------------------
   4) Gutenberg block: clickable Teutarya YouTube banner
   Paste the HTML pattern from TEUTARYA-GUTENBERG-BLOCKS-V5.html.
   ------------------------------------------------------------ */
.teu-youtube-banner {
  margin: 30px 0;
}

.teu-youtube-banner a {
  position: relative;
  display: block;
  padding: 7px;
  overflow: hidden;
  color: #fff3cf;
  background:
    linear-gradient(135deg, rgba(229, 192, 102, 0.72), rgba(109, 23, 23, 0.80) 46%, rgba(229, 192, 102, 0.55)),
    #17110c;
  border: 1px solid rgba(229, 192, 102, 0.60);
  box-shadow:
    0 14px 32px rgba(31, 22, 13, 0.17),
    inset 0 0 0 1px rgba(255, 241, 199, 0.18);
  text-decoration: none;
  transform: translateZ(0);
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease, filter 220ms ease;
}

.teu-youtube-banner a::before {
  content: "";
  position: absolute;
  inset: 12px;
  border: 1px solid rgba(255, 238, 183, 0.34);
  z-index: 2;
  pointer-events: none;
}

.teu-youtube-banner a::after {
  content: "";
  position: absolute;
  inset: 7px;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.34), transparent 38%, rgba(0,0,0,0.24)),
    radial-gradient(circle at 50% 50%, transparent 52%, rgba(0,0,0,0.30) 100%);
  z-index: 1;
  pointer-events: none;
  opacity: 0.62;
  transition: opacity 220ms ease;
}

.teu-youtube-banner img {
  display: block;
  width: 100%;
  height: auto;
  background: #111;
  filter: contrast(1.03) saturate(0.98);
  transition: transform 260ms ease, filter 260ms ease;
}

.teu-youtube-banner .teu-banner-cta {
  position: absolute;
  right: 22px;
  bottom: 20px;
  z-index: 3;
  padding: 7px 11px;
  color: #fff4cf;
  background: rgba(20, 12, 8, 0.72);
  border: 1px solid rgba(229, 192, 102, 0.58);
  box-shadow: 0 6px 18px rgba(0,0,0,0.26);
  font-family: "Cinzel", Georgia, serif;
  font-size: clamp(0.76rem, 1vw, 0.9rem);
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  opacity: 0.88;
  transform: translateY(2px);
  transition: opacity 220ms ease, transform 220ms ease, background 220ms ease;
}

.teu-youtube-banner a:hover,
.teu-youtube-banner a:focus {
  transform: translateY(-3px);
  border-color: rgba(255, 233, 171, 0.90);
  box-shadow:
    0 22px 48px rgba(31, 22, 13, 0.26),
    0 0 0 3px rgba(181, 144, 73, 0.10),
    inset 0 0 0 1px rgba(255, 241, 199, 0.22);
}

.teu-youtube-banner a:hover::after,
.teu-youtube-banner a:focus::after {
  opacity: 0.36;
}

.teu-youtube-banner a:hover img,
.teu-youtube-banner a:focus img {
  transform: scale(1.012);
  filter: contrast(1.08) saturate(1.04);
}

.teu-youtube-banner a:hover .teu-banner-cta,
.teu-youtube-banner a:focus .teu-banner-cta {
  opacity: 1;
  transform: translateY(0);
  background: rgba(105, 22, 22, 0.84);
}

@media (max-width: 640px) {
  .teu-youtube-banner a {
    padding: 5px;
  }

  .teu-youtube-banner a::before {
    inset: 9px;
  }

  .teu-youtube-banner .teu-banner-cta {
    right: 14px;
    bottom: 13px;
    padding: 5px 8px;
  }
}

/* ------------------------------------------------------------
   5) Gutenberg block: Homepage Hero Portal
   Optional: set --teu-hero-bg:url('...') inline on the section.
   ------------------------------------------------------------ */
.teu-hero-portal {
  --teu-hero-bg: none;
  position: relative;
  margin: 0 0 28px;
  padding: clamp(24px, 4vw, 46px);
  overflow: hidden;
  color: #fff5d6;
  background:
    linear-gradient(90deg, rgba(13, 10, 8, 0.94), rgba(31, 22, 16, 0.80) 46%, rgba(107, 23, 23, 0.70)),
    var(--teu-hero-bg),
    radial-gradient(circle at 20% 0%, rgba(205, 168, 86, 0.22), transparent 36%),
    #14100c;
  background-size: cover;
  background-position: center;
  border: 1px solid rgba(205, 168, 86, 0.48);
  box-shadow: 0 18px 48px rgba(36, 28, 18, 0.18);
}

.teu-hero-portal::before {
  content: "";
  position: absolute;
  inset: 10px;
  border: 1px solid rgba(255, 234, 174, 0.22);
  pointer-events: none;
  z-index: 1;
}

.teu-hero-portal::after {
  content: "";
  position: absolute;
  left: clamp(18px, 4vw, 54px);
  right: clamp(18px, 4vw, 54px);
  bottom: 15px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(205,168,86,0.74), rgba(116,25,25,0.74), rgba(205,168,86,0.74), transparent);
  z-index: 1;
}

.teu-hero-portal__inner {
  position: relative;
  z-index: 2;
  max-width: 760px;
}

.teu-hero-portal__kicker {
  margin: 0 0 8px;
  color: #e9cf8c;
  font-family: "Cinzel", Georgia, serif;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.teu-hero-portal h1,
.teu-hero-portal .teu-hero-portal__title {
  margin: 0 0 10px;
  color: #fff7df;
  font-family: "Cinzel", Georgia, serif;
  font-size: clamp(2rem, 5vw, 4.2rem);
  line-height: 0.98;
  letter-spacing: -0.035em;
  text-shadow: 0 2px 16px rgba(0,0,0,0.34);
}

.teu-hero-portal__text {
  max-width: 62ch;
  margin: 0 0 22px;
  color: rgba(255, 246, 222, 0.88);
  font-size: clamp(1rem, 1.45vw, 1.16rem);
  line-height: 1.58;
}

.teu-hero-portal__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.teu-hero-portal__actions a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 9px 14px;
  color: #fff3cf;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(205, 168, 86, 0.42);
  text-decoration: none;
  font-family: "Cinzel", Georgia, serif;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  transition: transform 180ms ease, background 180ms ease, border-color 180ms ease, color 180ms ease;
}

.teu-hero-portal__actions a:first-child,
.teu-hero-portal__actions a.teu-primary {
  color: #20160d;
  background: linear-gradient(180deg, #efd58f, #b89043);
  border-color: rgba(255, 238, 180, 0.74);
}

.teu-hero-portal__actions a:hover,
.teu-hero-portal__actions a:focus {
  transform: translateY(-2px);
  color: #fff8e1;
  background: rgba(116, 25, 25, 0.70);
  border-color: rgba(255, 238, 180, 0.76);
}

.teu-hero-portal__actions a:first-child:hover,
.teu-hero-portal__actions a:first-child:focus,
.teu-hero-portal__actions a.teu-primary:hover,
.teu-hero-portal__actions a.teu-primary:focus {
  color: #fff8e1;
  background: linear-gradient(180deg, #8a2222, #551414);
}

@media (max-width: 640px) {
  .teu-hero-portal {
    padding: 26px 22px 32px;
  }

  .teu-hero-portal__actions a {
    width: 100%;
    justify-content: center;
  }
}


/* ============================================================
   Imported layer: teutarya-herald-v6-fix.css
   ============================================================ */

/**
 * Teutarya's Herald – v6 fix layer
 * - restores a more balanced Related Posts card rhythm
 * - keeps images framed instead of edge-to-edge
 * - slightly increases related-card text size
 * - adds final timeline hover/tightness polish for the lightweight v6 chronicle template
 * Load after teutarya-herald-v5.css.
 */

:root {
  --teu-v6-gold: #b59049;
  --teu-v6-oxblood: #741919;
  --teu-v6-ink: #251f18;
  --teu-v6-paper: #fff8ea;
}

/* ------------------------------------------------------------
   1) Related Posts: less extreme, more breathing room
   ------------------------------------------------------------ */
.single-post .related-posts .row div article,
.single-post .related-posts article {
  padding: 14px !important;
  overflow: visible !important;
  background: linear-gradient(180deg, rgba(255, 251, 241, 0.92), rgba(239, 229, 208, 0.98)) !important;
  border: 1px solid rgba(127, 94, 45, 0.22) !important;
  box-shadow: 0 10px 26px rgba(45, 34, 20, 0.10) !important;
}

.single-post .related-posts .post-thumbnail,
.single-post .related-posts .row div article .post-thumbnail {
  margin: 0 0 12px !important;
  padding: 4px !important;
  border: 1px solid rgba(127, 94, 45, 0.34) !important;
  border-bottom: 1px solid rgba(127, 94, 45, 0.34) !important;
  background: rgba(31, 23, 15, 0.10) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 245, 218, 0.42) !important;
}

.single-post .related-posts .post-thumbnail img,
.single-post .related-posts .row div article .post-thumbnail img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

.single-post .related-posts .post-thumbnail::after,
.single-post .related-posts .row div article .post-thumbnail::after {
  inset: 8px !important;
  opacity: 0.75 !important;
}

.single-post .related-posts .row div article .post-text,
.single-post .related-posts article .post-text {
  padding: 0 2px 2px !important;
}

.single-post .related-posts .entry-title,
.single-post .related-posts h5.entry-title {
  margin-bottom: 8px !important;
}

.single-post .related-posts .entry-title a,
.single-post .related-posts h5.entry-title a {
  font-size: 15.5px !important;
  line-height: 1.28 !important;
  letter-spacing: -0.01em;
}

.single-post .related-posts .entry-content p,
.single-post .related-posts .row div article .post-text .entry-content p {
  font-size: 13.5px !important;
  line-height: 1.55 !important;
}

.single-post .related-posts article:hover,
.single-post .related-posts article:focus-within {
  transform: translateY(-2px);
  border-color: rgba(116, 25, 25, 0.32) !important;
  box-shadow: 0 16px 34px rgba(45, 34, 20, 0.15) !important;
}

/* If only one related post exists, keep it readable but not oversized. */
.single-post .related-posts .row:has(> *:only-child) > * {
  max-width: 360px !important;
}

@media (max-width: 640px) {
  .single-post .related-posts .row div article,
  .single-post .related-posts article {
    padding: 12px !important;
  }

  .single-post .related-posts .entry-title a,
  .single-post .related-posts h5.entry-title a {
    font-size: 15px !important;
  }
}

/* ------------------------------------------------------------
   2) Chronicle v6: final readable compactness
   ------------------------------------------------------------ */
.teu-chronik-page {
  color: var(--teu-v6-ink);
}

.teu-chronik-page .teu-chronik-query-note {
  margin: 10px 0 0;
  color: rgba(66, 54, 39, 0.74);
  font-size: 0.88rem;
}

.teu-chronik-item {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.teu-chronik-title a:hover,
.teu-chronik-title a:focus {
  color: var(--teu-v6-oxblood) !important;
}

.teu-chronik-epoch summary:hover,
.teu-chronik-epoch summary:focus {
  background: linear-gradient(180deg, rgba(255, 249, 232, 0.96), rgba(235, 220, 190, 0.92)) !important;
}


/* ============================================================
   Imported layer: teutarya-herald-v7-sidebar.css
   ============================================================ */

/**
 * Teutarya's Herald – v7 sidebar + chronicle hover fix
 * Load after v6.
 * - fixes chronicle epoch hover contrast
 * - adds styling for a dedicated curated single-post sidebar
 * - refines Table of Contents / archive cards / side CTAs
 */

:root {
  --teu-v7-ink: #211a12;
  --teu-v7-paper: #fff7e7;
  --teu-v7-paper-deep: #ead9b8;
  --teu-v7-gold: #b59049;
  --teu-v7-gold-soft: rgba(181, 144, 73, 0.42);
  --teu-v7-oxblood: #741919;
  --teu-v7-night: #17120d;
}

/* ------------------------------------------------------------
   1) Chronik: readable epoch hover state
   ------------------------------------------------------------ */
.teu-chronik-epoch summary:hover,
.teu-chronik-epoch summary:focus {
  color: #fff4d2 !important;
  background:
    linear-gradient(90deg, rgba(31, 24, 16, 0.99), rgba(67, 43, 24, 0.97) 48%, rgba(116, 25, 25, 0.91)) !important;
  box-shadow: inset 0 0 0 1px rgba(224, 191, 113, 0.28), 0 10px 24px rgba(36, 28, 18, 0.15) !important;
}

.teu-chronik-epoch summary:hover .teu-epoch-title,
.teu-chronik-epoch summary:hover .teu-epoch-range,
.teu-chronik-epoch summary:hover .teu-epoch-count,
.teu-chronik-epoch summary:focus .teu-epoch-title,
.teu-chronik-epoch summary:focus .teu-epoch-range,
.teu-chronik-epoch summary:focus .teu-epoch-count {
  color: #fff4d2 !important;
}

.teu-chronik-epoch summary:hover .teu-epoch-count,
.teu-chronik-epoch summary:focus .teu-epoch-count {
  background: rgba(0, 0, 0, 0.34) !important;
  border-color: rgba(224, 191, 113, 0.48) !important;
}

.teu-chronik-epoch summary:focus-visible {
  outline: 2px solid rgba(181, 144, 73, 0.75);
  outline-offset: 3px;
}

/* ------------------------------------------------------------
   2) Dedicated curated single-post sidebar
   ------------------------------------------------------------ */
.single-post #secondary.teu-single-sidebar--curated {
  display: grid;
  gap: 18px;
}

.single-post #secondary.teu-single-sidebar--curated .widget,
.single-post #secondary.teu-single-sidebar--curated .teu-curated-widget {
  position: relative;
  padding: 15px 16px 16px !important;
  color: var(--teu-v7-ink);
  background:
    linear-gradient(180deg, rgba(255, 249, 234, 0.96), rgba(238, 224, 198, 0.93)) !important;
  border: 1px solid rgba(127, 94, 45, 0.24) !important;
  box-shadow: 0 10px 28px rgba(39, 29, 17, 0.10) !important;
}

.single-post #secondary.teu-single-sidebar--curated .widget::before,
.single-post #secondary.teu-single-sidebar--curated .teu-curated-widget::before {
  content: "";
  position: absolute;
  left: 10px;
  right: 10px;
  top: 8px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(181, 144, 73, 0.58), rgba(116, 25, 25, 0.26), transparent);
  pointer-events: none;
}

.single-post #secondary.teu-single-sidebar--curated .widget-title,
.single-post #secondary.teu-single-sidebar--curated h2,
.single-post #secondary.teu-single-sidebar--curated h3 {
  margin: 0 0 12px !important;
  padding: 0 0 8px !important;
  color: var(--teu-v7-ink) !important;
  font-family: "Cinzel", Georgia, serif;
  font-size: 15px !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em;
  text-transform: none;
  border-bottom: 1px solid rgba(127, 94, 45, 0.20) !important;
}

.single-post #secondary.teu-single-sidebar--curated .widget-title::before,
.single-post #secondary.teu-single-sidebar--curated h2::before,
.single-post #secondary.teu-single-sidebar--curated h3::before {
  content: "✦";
  margin-right: 6px;
  color: var(--teu-v7-gold);
  font-size: 0.78em;
}

.single-post #secondary.teu-single-sidebar--curated a {
  color: #332719;
  text-decoration: none;
}

.single-post #secondary.teu-single-sidebar--curated a:hover,
.single-post #secondary.teu-single-sidebar--curated a:focus {
  color: var(--teu-v7-oxblood);
}

.single-post #secondary.teu-single-sidebar--curated .search-form,
.single-post #secondary.teu-single-sidebar--curated form[role="search"] {
  display: flex;
  gap: 0;
}

.single-post #secondary.teu-single-sidebar--curated input[type="search"] {
  min-width: 0;
  border-color: rgba(127, 94, 45, 0.28) !important;
  background: rgba(255, 252, 244, 0.90) !important;
}

.single-post #secondary.teu-single-sidebar--curated input[type="submit"],
.single-post #secondary.teu-single-sidebar--curated button[type="submit"] {
  background: var(--teu-v7-oxblood) !important;
  border-color: var(--teu-v7-oxblood) !important;
  color: #fff5d8 !important;
}

/* Generic TOC plugin support: LuckyWP, Easy TOC, SimpleTOC, block lists */
.single-post #secondary.teu-single-sidebar--curated .lwptoc,
.single-post #secondary.teu-single-sidebar--curated .ez-toc-widget-container,
.single-post #secondary.teu-single-sidebar--curated .toc_widget_list,
.single-post #secondary.teu-single-sidebar--curated .simpletoc-list,
.single-post #secondary.teu-single-sidebar--curated .wp-block-list {
  margin-top: 0 !important;
}

.single-post #secondary.teu-single-sidebar--curated .lwptoc_item,
.single-post #secondary.teu-single-sidebar--curated .ez-toc-widget-container li,
.single-post #secondary.teu-single-sidebar--curated .toc_widget_list li,
.single-post #secondary.teu-single-sidebar--curated .simpletoc-list li,
.single-post #secondary.teu-single-sidebar--curated .wp-block-list li {
  margin: 0 !important;
  padding: 7px 0 !important;
  border-bottom: 1px solid rgba(127, 94, 45, 0.14);
  line-height: 1.35;
}

.single-post #secondary.teu-single-sidebar--curated .lwptoc_item a,
.single-post #secondary.teu-single-sidebar--curated .ez-toc-widget-container a,
.single-post #secondary.teu-single-sidebar--curated .toc_widget_list a,
.single-post #secondary.teu-single-sidebar--curated .simpletoc-list a {
  display: block;
  font-size: 13px;
}

/* Curated HTML block for single-post sidebar */
.teu-sidebar-archive-card {
  display: grid;
  gap: 12px;
}

.teu-sidebar-archive-card__intro {
  margin: 0 !important;
  color: rgba(38, 30, 20, 0.78);
  font-size: 13px;
  line-height: 1.55;
}

.teu-sidebar-link-grid {
  display: grid;
  gap: 8px;
}

.teu-sidebar-link-grid a {
  display: grid;
  gap: 3px;
  padding: 10px 11px;
  background: rgba(255, 252, 244, 0.68);
  border: 1px solid rgba(127, 94, 45, 0.20);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.25);
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.teu-sidebar-link-grid a strong {
  font-size: 13.5px;
  line-height: 1.25;
}

.teu-sidebar-link-grid a span {
  color: rgba(38, 30, 20, 0.62);
  font-size: 12px;
  line-height: 1.35;
}

.teu-sidebar-link-grid a:hover,
.teu-sidebar-link-grid a:focus {
  transform: translateY(-1px);
  background: rgba(255, 248, 229, 0.95);
  border-color: rgba(116, 25, 25, 0.34);
  box-shadow: 0 8px 18px rgba(39, 29, 17, 0.10);
}

.teu-sidebar-mini-cta {
  display: block;
  margin-top: 4px;
  padding: 10px 11px;
  text-align: center;
  color: #fff2cc !important;
  background: linear-gradient(135deg, #1b140d, #342010 58%, #741919) !important;
  border: 1px solid rgba(181, 144, 73, 0.42);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.07), 0 10px 22px rgba(39, 29, 17, 0.16);
  font-weight: 800;
  letter-spacing: 0.02em;
}

.teu-sidebar-mini-cta:hover,
.teu-sidebar-mini-cta:focus {
  color: #fff8df !important;
  transform: translateY(-1px);
}

@media (min-width: 1024px) {
  .single-post #secondary.teu-single-sidebar--curated {
    align-self: start;
    position: sticky;
    top: 28px;
  }

  body.admin-bar.single-post #secondary.teu-single-sidebar--curated {
    top: 60px;
  }
}

@media (max-width: 768px) {
  .single-post #secondary.teu-single-sidebar--curated .widget,
  .single-post #secondary.teu-single-sidebar--curated .teu-curated-widget {
    padding: 14px !important;
  }
}


/* ============================================================
   Imported layer: teutarya-herald-v8-sidebar-taxonomy.css
   ============================================================ */

/**
 * Teutarya's Herald – v8 sidebar/taxonomy polish
 * Load after v7.
 * - removes pseudo-icon collisions in TOC widgets and footer headings
 * - fixes Gutenberg search width in Firefox inside curated single sidebars
 * - tightens curated sidebar spacing
 * - upgrades single-post category/tag presentation
 * - adds styling for latest-music CTA and current-entry taxonomy shortcodes
 */

:root {
  --teu-v8-ink: #241b12;
  --teu-v8-muted: rgba(45, 34, 22, 0.66);
  --teu-v8-paper: #fff7e7;
  --teu-v8-paper-2: #f0dfbd;
  --teu-v8-gold: #b59049;
  --teu-v8-gold-soft: rgba(181, 144, 73, 0.32);
  --teu-v8-oxblood: #741919;
  --teu-v8-night: #17120d;
}

/* ------------------------------------------------------------
   1) Remove decorative pseudo-icons that collide with widget titles
   ------------------------------------------------------------ */
.single-post #secondary.teu-single-sidebar--curated .widget-title::before,
.single-post #secondary.teu-single-sidebar--curated .wp-block-heading::before,
.single-post #secondary.teu-single-sidebar--curated h1::before,
.single-post #secondary.teu-single-sidebar--curated h2::before,
.single-post #secondary.teu-single-sidebar--curated h3::before,
.single-post #secondary.teu-single-sidebar--curated h4::before,
.single-post #secondary.teu-single-sidebar--curated .lwptoc_title::before,
.single-post #secondary.teu-single-sidebar--curated .ez-toc-title::before,
.single-post #secondary.teu-single-sidebar--curated .simpletoc-title::before,
footer.site-footer .widget-title::before,
footer.site-footer .wp-block-heading::before,
footer.site-footer h1::before,
footer.site-footer h2::before,
footer.site-footer h3::before,
footer.site-footer h4::before,
footer.site-footer h5::before,
footer.site-footer h6::before {
  content: none !important;
  display: none !important;
}

/* A few TOC plugins use absolutely positioned pseudo-elements. Keep titles clean. */
.single-post #secondary.teu-single-sidebar--curated .lwptoc_title,
.single-post #secondary.teu-single-sidebar--curated .ez-toc-title,
.single-post #secondary.teu-single-sidebar--curated .simpletoc-title,
.single-post #secondary.teu-single-sidebar--curated .toc_title {
  position: relative;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

/* ------------------------------------------------------------
   2) Curated single sidebar: more compact spacing
   ------------------------------------------------------------ */
.single-post #secondary.teu-single-sidebar--curated {
  gap: 12px !important;
}

.single-post #secondary.teu-single-sidebar--curated .widget,
.single-post #secondary.teu-single-sidebar--curated .teu-curated-widget {
  padding: 13px 14px 14px !important;
}

.single-post #secondary.teu-single-sidebar--curated .widget-title,
.single-post #secondary.teu-single-sidebar--curated .wp-block-heading,
.single-post #secondary.teu-single-sidebar--curated h2,
.single-post #secondary.teu-single-sidebar--curated h3 {
  margin-bottom: 9px !important;
  padding-bottom: 7px !important;
}

.single-post #secondary.teu-single-sidebar--curated p,
.single-post #secondary.teu-single-sidebar--curated ul,
.single-post #secondary.teu-single-sidebar--curated ol {
  margin-bottom: 8px !important;
}

.single-post #secondary.teu-single-sidebar--curated p:last-child,
.single-post #secondary.teu-single-sidebar--curated ul:last-child,
.single-post #secondary.teu-single-sidebar--curated ol:last-child {
  margin-bottom: 0 !important;
}

.single-post #secondary.teu-single-sidebar--curated .lwptoc_item,
.single-post #secondary.teu-single-sidebar--curated .ez-toc-widget-container li,
.single-post #secondary.teu-single-sidebar--curated .toc_widget_list li,
.single-post #secondary.teu-single-sidebar--curated .simpletoc-list li,
.single-post #secondary.teu-single-sidebar--curated .wp-block-list li {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

/* ------------------------------------------------------------
   3) Gutenberg search block: Firefox width fix + label above field
   ------------------------------------------------------------ */
.single-post #secondary.teu-single-sidebar--curated .wp-block-search,
.single-post #secondary.teu-single-sidebar--curated .widget_search,
.single-post #secondary.teu-single-sidebar--curated .wp-block-search form {
  width: 100% !important;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-search__label,
.single-post #secondary.teu-single-sidebar--curated label.wp-block-search__label,
.single-post #secondary.teu-single-sidebar--curated .widget_search label {
  display: block !important;
  width: 100% !important;
  margin: 0 0 7px !important;
  color: var(--teu-v8-ink) !important;
  font-family: "Cinzel", Georgia, serif;
  font-size: 14px !important;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: 0.03em;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-search__inside-wrapper {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px !important;
  width: 100% !important;
  align-items: stretch;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-search__input,
.single-post #secondary.teu-single-sidebar--curated input[type="search"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  height: 38px;
  padding: 8px 10px !important;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-search__button,
.single-post #secondary.teu-single-sidebar--curated .wp-element-button.wp-block-search__button,
.single-post #secondary.teu-single-sidebar--curated button[type="submit"] {
  width: auto !important;
  min-width: 78px;
  max-width: none !important;
  height: 38px;
  padding: 8px 11px !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
  line-height: 1 !important;
}

@media (max-width: 420px) {
  .single-post #secondary.teu-single-sidebar--curated .wp-block-search__inside-wrapper {
    grid-template-columns: 1fr;
  }

  .single-post #secondary.teu-single-sidebar--curated .wp-block-search__button,
  .single-post #secondary.teu-single-sidebar--curated .wp-element-button.wp-block-search__button,
  .single-post #secondary.teu-single-sidebar--curated button[type="submit"] {
    width: 100% !important;
  }
}

/* ------------------------------------------------------------
   4) Sidebar cards: Latest Music CTA + curated category paths
   ------------------------------------------------------------ */
.teu-sidebar-release-card,
.teu-sidebar-path-card,
.teu-current-tax-box {
  display: grid;
  gap: 8px;
}

.teu-sidebar-release-card__eyebrow,
.teu-current-tax-label {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 5px;
  padding: 3px 8px;
  color: #fff0c4;
  background: linear-gradient(135deg, #24180d, #4c2714 58%, #741919);
  border: 1px solid rgba(181, 144, 73, 0.38);
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.teu-sidebar-release-card__title {
  margin: 0 !important;
  color: var(--teu-v8-ink);
  font-family: "Cinzel", Georgia, serif;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
}

.teu-sidebar-release-card__text,
.teu-sidebar-path-card__text {
  margin: 0 !important;
  color: var(--teu-v8-muted);
  font-size: 12.8px;
  line-height: 1.48;
}

.teu-sidebar-primary-link {
  display: block;
  margin-top: 3px;
  padding: 10px 11px;
  color: #fff4cf !important;
  background: linear-gradient(135deg, #1b140d, #342010 60%, #741919) !important;
  border: 1px solid rgba(181, 144, 73, 0.44);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.07), 0 8px 16px rgba(39, 29, 17, 0.13);
  font-weight: 800;
  text-align: center;
  transition: transform 160ms ease, box-shadow 160ms ease, filter 160ms ease;
}

.teu-sidebar-primary-link:hover,
.teu-sidebar-primary-link:focus {
  color: #fff8dc !important;
  transform: translateY(-1px);
  filter: brightness(1.05);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.10), 0 12px 22px rgba(39, 29, 17, 0.18);
}

.teu-sidebar-compact-links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.teu-sidebar-compact-links a,
.teu-current-tax-pills a {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 9px;
  color: #302415 !important;
  background: rgba(255, 252, 244, 0.74);
  border: 1px solid rgba(127, 94, 45, 0.22);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.18);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.15;
  transition: transform 150ms ease, border-color 150ms ease, background 150ms ease, color 150ms ease;
}

.teu-sidebar-compact-links a:hover,
.teu-sidebar-compact-links a:focus,
.teu-current-tax-pills a:hover,
.teu-current-tax-pills a:focus {
  color: var(--teu-v8-oxblood) !important;
  background: rgba(255, 247, 225, 0.98);
  border-color: rgba(116, 25, 25, 0.34);
  transform: translateY(-1px);
}

.teu-current-tax-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

/* ------------------------------------------------------------
   5) Single-post footer taxonomy: less default-blog, more archive-pills
   ------------------------------------------------------------ */
.single-post .entry-footer {
  margin: 26px 0 10px !important;
  padding: 13px 14px !important;
  display: grid !important;
  gap: 9px;
  background: linear-gradient(180deg, rgba(255, 249, 234, 0.93), rgba(239, 224, 198, 0.88));
  border: 1px solid rgba(127, 94, 45, 0.20);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.25);
}

.single-post .entry-footer .post-categories {
  display: flex !important;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  margin: 0 !important;
  padding: 0 !important;
  line-height: normal !important;
}

.single-post .entry-footer .post-categories::before {
  content: "Archive Paths";
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  margin-right: 2px;
  padding: 4px 8px;
  color: #fff0c4;
  background: linear-gradient(135deg, #24180d, #4c2714 58%, #741919);
  border: 1px solid rgba(181, 144, 73, 0.38);
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.single-post .entry-footer .post-categories a {
  margin: 0 !important;
  padding: 5px 9px !important;
  color: #302415 !important;
  background: rgba(255, 252, 244, 0.72) !important;
  border: 1px solid rgba(127, 94, 45, 0.22);
  font-size: 11.5px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  letter-spacing: 0.03em;
}

.single-post .entry-footer .post-categories a::after {
  content: none !important;
  display: none !important;
}

.single-post .entry-footer .post-categories a:hover,
.single-post .entry-footer .post-categories a:focus {
  color: var(--teu-v8-oxblood) !important;
  border-color: rgba(116, 25, 25, 0.34);
  background: rgba(255, 247, 225, 0.98) !important;
}

.single-post .entry-footer .tags-links {
  display: flex !important;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  margin: 0 !important;
  font-size: 0 !important; /* hides default "Tagged" text and comma separators */
  font-weight: 600;
}

.single-post .entry-footer .tags-links::before {
  content: "Entry Tags";
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  margin-right: 2px;
  padding: 4px 8px;
  color: #fff0c4;
  background: linear-gradient(135deg, #24180d, #4c2714 58%, #741919);
  border: 1px solid rgba(181, 144, 73, 0.38);
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.single-post .entry-footer .tags-links a {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 5px 9px !important;
  color: #302415 !important;
  background: rgba(255, 252, 244, 0.72);
  border: 1px solid rgba(127, 94, 45, 0.22);
  font-size: 11.5px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  letter-spacing: 0.02em;
}

.single-post .entry-footer .tags-links a:hover,
.single-post .entry-footer .tags-links a:focus {
  color: var(--teu-v8-oxblood) !important;
  border-color: rgba(116, 25, 25, 0.34);
  background: rgba(255, 247, 225, 0.98);
}


/* ============================================================
   Imported layer: teutarya-herald-v9-sidebar-refine.css
   ============================================================ */

/**
 * Teutarya's Herald – v9 sidebar/search/taxonomy refinement
 * Load after v8.
 * - removes excess grid gap in curated single-post sidebar
 * - fixes Gutenberg search block width by overriding v7 flex form rule
 * - hides the old reduced category overview block in single-post sidebar
 * - improves current-post tags/categories presentation
 * - applies Cinzel-style headings inside single-post content
 */

:root {
  --teu-v9-ink: #241a10;
  --teu-v9-muted: rgba(45, 34, 22, 0.68);
  --teu-v9-paper: #fff7e7;
  --teu-v9-paper-soft: #f4e6c9;
  --teu-v9-gold: #b59049;
  --teu-v9-gold-soft: rgba(181, 144, 73, 0.28);
  --teu-v9-oxblood: #741919;
  --teu-v9-night: #17120d;
}

/* ------------------------------------------------------------
   1) Curated single sidebar: remove grid gap and use tighter block flow
   ------------------------------------------------------------ */
.single-post #secondary.teu-single-sidebar--curated {
  display: block !important;
  gap: 0 !important;
}

.single-post #secondary.teu-single-sidebar--curated .widget,
.single-post #secondary.teu-single-sidebar--curated .teu-curated-widget {
  margin: 0 0 11px !important;
  padding: 12px 13px 13px !important;
}

.single-post #secondary.teu-single-sidebar--curated .widget:last-child,
.single-post #secondary.teu-single-sidebar--curated .teu-curated-widget:last-child {
  margin-bottom: 0 !important;
}

.single-post #secondary.teu-single-sidebar--curated .widget > :last-child,
.single-post #secondary.teu-single-sidebar--curated .teu-curated-widget > :last-child,
.single-post #secondary.teu-single-sidebar--curated .wp-block-group > :last-child {
  margin-bottom: 0 !important;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-group,
.single-post #secondary.teu-single-sidebar--curated .wp-block-html,
.single-post #secondary.teu-single-sidebar--curated .wp-block-shortcode,
.single-post #secondary.teu-single-sidebar--curated .wp-block-search {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.single-post #secondary.teu-single-sidebar--curated .widget-title,
.single-post #secondary.teu-single-sidebar--curated .wp-block-heading,
.single-post #secondary.teu-single-sidebar--curated h2,
.single-post #secondary.teu-single-sidebar--curated h3 {
  margin-bottom: 7px !important;
  padding-bottom: 6px !important;
}

.single-post #secondary.teu-single-sidebar--curated p {
  margin-top: 0 !important;
  margin-bottom: 7px !important;
}

.single-post #secondary.teu-single-sidebar--curated .lwptoc_item,
.single-post #secondary.teu-single-sidebar--curated .ez-toc-widget-container li,
.single-post #secondary.teu-single-sidebar--curated .toc_widget_list li,
.single-post #secondary.teu-single-sidebar--curated .simpletoc-list li,
.single-post #secondary.teu-single-sidebar--curated .wp-block-list li {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

/* Hide the old manually inserted reduced category overview, if it is still present. */
.single-post #secondary.teu-single-sidebar--curated .teu-sidebar-path-card {
  display: none !important;
}

/* ------------------------------------------------------------
   2) Gutenberg search block: full-width fix for Firefox/Chrome
      v7 made all role=search forms flex; Gutenberg search needs block layout.
   ------------------------------------------------------------ */
.single-post #secondary.teu-single-sidebar--curated form.wp-block-search,
.single-post #secondary.teu-single-sidebar--curated form[role="search"].wp-block-search,
.single-post #secondary.teu-single-sidebar--curated .wp-block-search {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-search__label {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  color: var(--teu-v9-ink) !important;
  font-family: "Cinzel", Georgia, serif !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.035em;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-search__inside-wrapper {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 6px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-search__input {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 36px !important;
  padding: 7px 9px !important;
  box-sizing: border-box !important;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-search__button,
.single-post #secondary.teu-single-sidebar--curated .wp-element-button.wp-block-search__button {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 66px !important;
  max-width: 86px !important;
  height: 36px !important;
  padding: 7px 9px !important;
  box-sizing: border-box !important;
  font-size: 12px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

/* Legacy search widget fallback. */
.single-post #secondary.teu-single-sidebar--curated .widget_search form.search-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px !important;
  width: 100% !important;
}

.single-post #secondary.teu-single-sidebar--curated .widget_search form.search-form label {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
}

.single-post #secondary.teu-single-sidebar--curated .widget_search .search-field {
  width: 100% !important;
  min-width: 0 !important;
}

@media (max-width: 380px) {
  .single-post #secondary.teu-single-sidebar--curated .wp-block-search__inside-wrapper,
  .single-post #secondary.teu-single-sidebar--curated .widget_search form.search-form {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .single-post #secondary.teu-single-sidebar--curated .wp-block-search__button,
  .single-post #secondary.teu-single-sidebar--curated .wp-element-button.wp-block-search__button {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* ------------------------------------------------------------
   3) Current post tags/categories in sidebar: more deliberate archive block
   ------------------------------------------------------------ */
.single-post #secondary.teu-single-sidebar--curated .teu-current-tax-box {
  position: relative;
  display: block !important;
  padding: 2px 0 0;
}

.single-post #secondary.teu-single-sidebar--curated .teu-current-tax-label {
  margin-bottom: 7px;
  font-family: "Cinzel", Georgia, serif !important;
  font-size: 10px !important;
  letter-spacing: 0.075em;
}

.single-post #secondary.teu-single-sidebar--curated .teu-current-tax-pills {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 5px !important;
}

.single-post #secondary.teu-single-sidebar--curated .teu-current-tax-pills a {
  min-height: 25px !important;
  padding: 4px 8px !important;
  border-radius: 0 !important;
  color: #2c2115 !important;
  background: linear-gradient(180deg, rgba(255, 252, 244, 0.92), rgba(241, 225, 196, 0.86)) !important;
  border: 1px solid rgba(127, 94, 45, 0.26) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.26);
  font-size: 11.5px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
}

.single-post #secondary.teu-single-sidebar--curated .teu-current-tax-pills a:hover,
.single-post #secondary.teu-single-sidebar--curated .teu-current-tax-pills a:focus {
  color: var(--teu-v9-oxblood) !important;
  background: #fff6dc !important;
  border-color: rgba(116, 25, 25, 0.38) !important;
  transform: translateY(-1px);
}

/* Latest Music CTA: slightly tighter after sidebar gap reduction. */
.single-post #secondary.teu-single-sidebar--curated .teu-sidebar-release-card {
  gap: 7px !important;
}

.single-post #secondary.teu-single-sidebar--curated .teu-sidebar-release-card__title {
  font-size: 15px !important;
}

.single-post #secondary.teu-single-sidebar--curated .teu-sidebar-release-card__text {
  font-size: 12.4px !important;
  line-height: 1.42 !important;
}

.single-post #secondary.teu-single-sidebar--curated .teu-sidebar-primary-link {
  padding: 9px 10px !important;
}

/* ------------------------------------------------------------
   4) Single post entry footer categories/tags: more polished, less default-blog
   ------------------------------------------------------------ */
.single-post .entry-footer {
  padding: 12px 13px !important;
  gap: 8px !important;
  background:
    linear-gradient(180deg, rgba(255, 249, 234, 0.96), rgba(238, 224, 198, 0.91)) !important;
  border-color: rgba(127, 94, 45, 0.24) !important;
}

.single-post .entry-footer .post-categories::before,
.single-post .entry-footer .tags-links::before {
  font-family: "Cinzel", Georgia, serif !important;
  font-size: 10px !important;
  letter-spacing: 0.075em !important;
}

.single-post .entry-footer .post-categories a,
.single-post .entry-footer .tags-links a {
  min-height: 25px !important;
  padding: 4px 8px !important;
  color: #2c2115 !important;
  background: linear-gradient(180deg, rgba(255, 252, 244, 0.92), rgba(241, 225, 196, 0.86)) !important;
  border: 1px solid rgba(127, 94, 45, 0.26) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.26);
  font-size: 11.5px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  transition: transform 150ms ease, border-color 150ms ease, background 150ms ease, color 150ms ease;
}

.single-post .entry-footer .post-categories a:hover,
.single-post .entry-footer .post-categories a:focus,
.single-post .entry-footer .tags-links a:hover,
.single-post .entry-footer .tags-links a:focus {
  color: var(--teu-v9-oxblood) !important;
  background: #fff6dc !important;
  border-color: rgba(116, 25, 25, 0.38) !important;
  transform: translateY(-1px);
}

/* ------------------------------------------------------------
   5) Single post content headings: Cinzel editorial/lore feeling
   ------------------------------------------------------------ */
.single-post .entry-content h1,
.single-post .entry-content h2,
.single-post .entry-content h3,
.single-post .entry-content h4,
.single-post .entry-content h5,
.single-post .entry-content h6 {
  font-family: "Cinzel", "Cormorant Garamond", Georgia, serif !important;
  color: #241a10 !important;
  font-weight: 800 !important;
  letter-spacing: 0.018em;
  line-height: 1.25;
}

.single-post .entry-content h2 {
  margin-top: 1.65em !important;
  margin-bottom: 0.62em !important;
  padding-bottom: 0.28em;
  border-bottom: 1px solid rgba(127, 94, 45, 0.24);
}

.single-post .entry-content h3 {
  margin-top: 1.35em !important;
  margin-bottom: 0.48em !important;
}

.single-post .entry-content h4,
.single-post .entry-content h5,
.single-post .entry-content h6 {
  margin-top: 1.15em !important;
  margin-bottom: 0.42em !important;
}

/* Ensure no decorative pseudo marker from earlier widget rules leaks into post headings. */
.single-post .entry-content h1::before,
.single-post .entry-content h2::before,
.single-post .entry-content h3::before,
.single-post .entry-content h4::before,
.single-post .entry-content h5::before,
.single-post .entry-content h6::before {
  content: none !important;
  display: none !important;
}

/* Footer heading pseudo-markers: keep removed. */
footer.site-footer .widget-title::before,
footer.site-footer .wp-block-heading::before,
footer.site-footer h1::before,
footer.site-footer h2::before,
footer.site-footer h3::before,
footer.site-footer h4::before,
footer.site-footer h5::before,
footer.site-footer h6::before {
  content: none !important;
  display: none !important;
}


/* ============================================================
   Imported layer: teutarya-lore-guide-v2-optional-css.css
   ============================================================ */
/* Optional CSS for the Teutarya Lore Guide page.
   Add this to your child theme CSS or Customizer > Additional CSS if you want stronger article styling.
   It is designed to work with the current warm Gothic editorial look. */

.single-post .entry-content .teu-lore-guide-hero,
.page .entry-content .teu-lore-guide-hero {
  margin: 1.25rem 0 1.6rem;
  padding: 1.25rem 1.35rem;
  border: 1px solid rgba(130, 93, 42, 0.34);
  background: linear-gradient(180deg, rgba(255, 248, 231, 0.96), rgba(238, 218, 181, 0.83));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.32), 0 12px 24px rgba(36, 22, 10, .08);
}

.teu-lore-guide-eyebrow,
.teu-lore-guide-callout__kicker {
  margin: 0 0 .4rem;
  font-family: "Cinzel", Georgia, serif;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
  color: #7a1f1f;
}

.teu-lore-guide-hero h2 {
  margin: 0 0 .65rem;
  font-family: "Cinzel", Georgia, serif;
}

.teu-lore-guide-axiom {
  margin: 1rem 0;
  padding: .85rem 1rem;
  border-left: 4px solid #9b7a3d;
  background: rgba(38, 24, 13, .93);
  color: #f7e8c6;
  font-family: "Cinzel", Georgia, serif;
  font-weight: 700;
  line-height: 1.5;
}

.teu-lore-guide-callout,
.teu-lore-guide-final {
  margin: 1.2rem 0;
  padding: 1rem 1.1rem;
  border: 1px solid rgba(130, 93, 42, 0.32);
  background: rgba(255, 248, 231, .72);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.22);
}

.teu-lore-guide-button {
  display: inline-block;
  margin-top: .45rem;
  padding: .55rem .75rem;
  border: 1px solid rgba(130, 93, 42, 0.45);
  background: #1b130d;
  color: #f5dfaa !important;
  font-family: "Cinzel", Georgia, serif;
  font-size: .82rem;
  font-weight: 800;
  text-decoration: none !important;
}

.teu-lore-guide-era-list,
.teu-lore-guide-character-grid,
.teu-lore-guide-paths {
  display: grid;
  gap: .7rem;
  margin: 1rem 0 1.4rem;
}

.teu-lore-guide-era-list > div,
.teu-lore-guide-character-grid > div,
.teu-lore-guide-paths > a {
  padding: .85rem .95rem;
  border: 1px solid rgba(130, 93, 42, 0.26);
  background: rgba(255, 250, 239, .68);
  text-decoration: none !important;
  color: inherit;
  transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

.teu-lore-guide-era-list > div:hover,
.teu-lore-guide-character-grid > div:hover,
.teu-lore-guide-paths > a:hover {
  transform: translateY(-1px);
  border-color: rgba(115, 24, 24, .42);
  background: rgba(255, 246, 220, .92);
}

.teu-lore-guide-era-list strong,
.teu-lore-guide-character-grid strong,
.teu-lore-guide-paths span {
  display: block;
  font-family: "Cinzel", Georgia, serif;
  font-weight: 800;
  color: #2a1b0f;
}

.teu-lore-guide-era-list span,
.teu-lore-guide-paths small {
  display: block;
  margin-top: .15rem;
  font-size: .82rem;
  color: rgba(43, 31, 18, .68);
}

.teu-lore-guide-era-list p,
.teu-lore-guide-character-grid p,
.teu-lore-guide-final p {
  margin-bottom: 0;
}

.teu-lore-guide-character-grid,
.teu-lore-guide-paths {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 680px) {
  .teu-lore-guide-character-grid,
  .teu-lore-guide-paths {
    grid-template-columns: 1fr;
  }
}


/* ============================================================
   v10 final safety overrides
   ============================================================ */

/* Keep featured images and related-post thumbnails visible despite older child-theme rules. */
.single-post .post-thumbnail,
.single-post .related-posts .post-thumbnail,
.single-post .related-posts .post-thumbnail img,
.single-post .related-posts img {
  display: block !important;
}

/* Curated single-post sidebar: compact natural block flow, no global grid gap. */
.single-post #secondary.teu-single-sidebar--curated {
  display: block !important;
}

.single-post #secondary.teu-single-sidebar--curated .widget,
.single-post #secondary.teu-single-sidebar--curated .teu-curated-widget {
  display: block !important;
  margin-block: 0 16px !important;
}

.single-post #secondary.teu-single-sidebar--curated .widget:last-child,
.single-post #secondary.teu-single-sidebar--curated .teu-curated-widget:last-child {
  margin-bottom: 0 !important;
}

/* Gutenberg Search block width fix for Firefox/Chrome inside the curated sidebar. */
.single-post #secondary.teu-single-sidebar--curated .wp-block-search,
.single-post #secondary.teu-single-sidebar--curated form.wp-block-search,
.single-post #secondary.teu-single-sidebar--curated form[role="search"].wp-block-search {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-search__label {
  display: block !important;
  width: 100% !important;
  margin: 0 0 8px !important;
  font-family: "Cinzel", Georgia, serif;
  letter-spacing: .04em;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-search__inside-wrapper {
  display: flex !important;
  align-items: stretch !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-search__input {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

.single-post #secondary.teu-single-sidebar--curated .wp-block-search__button {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: 42% !important;
  margin-left: 0 !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

@media (max-width: 480px) {
  .single-post #secondary.teu-single-sidebar--curated .wp-block-search__inside-wrapper {
    display: block !important;
  }

  .single-post #secondary.teu-single-sidebar--curated .wp-block-search__button {
    width: 100% !important;
    max-width: none !important;
    margin-top: 8px !important;
  }
}

/* Remove unwanted pseudo-icons/bullets from TOC/sidebar/footer widget headings. */
.single-post #secondary.teu-single-sidebar--curated .widget-title::before,
.single-post #secondary.teu-single-sidebar--curated .wp-block-heading::before,
.single-post #secondary.teu-single-sidebar--curated [class*="toc"]::before,
.single-post #secondary.teu-single-sidebar--curated [class*="toc"] .widget-title::before,
.single-post #secondary.teu-single-sidebar--curated [class*="table-of-content"]::before,
.single-post #secondary.teu-single-sidebar--curated [class*="table-of-contents"]::before,
.site-footer .widget-title::before,
.site-footer .wp-block-heading::before,
.footer-widget .widget-title::before,
.footer-widget .wp-block-heading::before {
  content: none !important;
  display: none !important;
}

/* Footer widgets: no individual bordered boxes; keep the footer itself as the visual container. */
.site-footer .widget,
.site-footer .footer-widget,
.site-footer .wp-block-group,
.site-footer [class*="widget"] {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* Footer desktop: stabilize four columns where the parent theme allows footer widget columns. */
@media (min-width: 992px) {
  .site-footer .footer-widget-area,
  .site-footer .footer-widgets-wrapper,
  .site-footer .footer-widget-wrapper,
  .site-footer .footer-widgets,
  .site-footer .widget-area-wrapper {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 24px !important;
  }
}

/* Chronik: readable hover state for epoch summaries. */
.teu-chronicle-era summary:hover,
.teu-chronicle-era summary:focus,
.teu-chronicle-era[open] summary {
  color: #f2d59b !important;
  background: linear-gradient(135deg, rgba(31, 19, 15, .96), rgba(83, 33, 27, .92)) !important;
}

.teu-chronicle-era summary:hover .teu-era-range,
.teu-chronicle-era summary:focus .teu-era-range,
.teu-chronicle-era[open] summary .teu-era-range,
.teu-chronicle-era summary:hover .teu-era-count,
.teu-chronicle-era summary:focus .teu-era-count,
.teu-chronicle-era[open] summary .teu-era-count {
  color: #e8c982 !important;
}

/* Post content headings: Cinzel chapter feeling. */
.single-post .entry-content h1,
.single-post .entry-content h2,
.single-post .entry-content h3,
.single-post .entry-content h4,
.page .entry-content h1,
.page .entry-content h2,
.page .entry-content h3,
.page .entry-content h4 {
  font-family: "Cinzel", Georgia, serif !important;
  letter-spacing: .015em;
}

/* Related posts: balanced image inset + readable text, not flush to the card edge. */
.single-post .related-posts .post,
.single-post .related-posts article,
.single-post .related-posts .post-item {
  padding: 10px !important;
}

.single-post .related-posts .post-thumbnail,
.single-post .related-posts .post-thumbnail a {
  margin: 0 0 10px !important;
  overflow: hidden;
  border-radius: 10px;
}

.single-post .related-posts .entry-title,
.single-post .related-posts h2,
.single-post .related-posts h3,
.single-post .related-posts h4 {
  font-size: 1rem !important;
  line-height: 1.28 !important;
}
/* ============================================================
   v11 Music Platform CTA
   ============================================================ */

.teu-music-platforms {
  --teu-music-bg: #17120d;
  --teu-music-gold: #b59049;
  --teu-music-gold-light: #ead18a;
  --teu-music-oxblood: #741919;
  --teu-music-paper: #fff2cf;
  margin: 2rem 0;
  color: var(--teu-music-paper);
}

.teu-music-platforms__inner {
  position: relative;
  overflow: hidden;
  padding: clamp(18px, 2.4vw, 28px);
  background:
    radial-gradient(circle at 12% 0%, rgba(181, 144, 73, 0.23), transparent 36%),
    radial-gradient(circle at 88% 24%, rgba(116, 25, 25, 0.34), transparent 34%),
    linear-gradient(135deg, rgba(23, 18, 13, 0.98), rgba(42, 28, 17, 0.96) 54%, rgba(85, 20, 18, 0.94));
  border: 1px solid rgba(181, 144, 73, 0.46);
  box-shadow:
    0 18px 42px rgba(35, 25, 14, 0.16),
    inset 0 0 0 1px rgba(255, 244, 207, 0.08);
}

.teu-music-platforms__inner::before {
  content: "";
  position: absolute;
  inset: 9px;
  border: 1px solid rgba(234, 209, 138, 0.20);
  pointer-events: none;
}

.teu-music-platforms__inner::after {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  top: 8px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(234, 209, 138, 0.78), rgba(116, 25, 25, 0.72), rgba(234, 209, 138, 0.78), transparent);
  pointer-events: none;
}

.teu-music-platforms__eyebrow {
  margin: 0 0 0.35rem !important;
  color: var(--teu-music-gold-light);
  font-family: "Cinzel", Georgia, serif;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  line-height: 1.2;
  text-transform: uppercase;
}

.teu-music-platforms__title {
  margin: 0 0 0.45rem !important;
  color: #fff7df !important;
  font-family: "Cinzel", Georgia, serif !important;
  font-size: clamp(1.25rem, 2.3vw, 1.9rem) !important;
  line-height: 1.12 !important;
  letter-spacing: 0.01em;
  border: 0 !important;
  padding: 0 !important;
}

.teu-music-platforms__text {
  max-width: 68ch;
  margin: 0 0 1.05rem !important;
  color: rgba(255, 244, 214, 0.84);
  font-size: 0.98rem;
  line-height: 1.62;
}

.teu-music-platforms__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}

.teu-music-platforms__link {
  display: grid;
  gap: 3px;
  min-height: 58px;
  align-content: center;
  padding: 10px 12px;
  color: #fff0c8 !important;
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid rgba(181, 144, 73, 0.28);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.04);
  text-decoration: none !important;
  transition: transform 170ms ease, background 170ms ease, border-color 170ms ease, box-shadow 170ms ease, color 170ms ease;
}

.teu-music-platforms__link strong {
  color: inherit;
  font-family: "Cinzel", Georgia, serif;
  font-size: 0.88rem;
  font-weight: 800;
  line-height: 1.18;
}

.teu-music-platforms__link span {
  color: rgba(255, 244, 214, 0.68);
  font-size: 0.75rem;
  line-height: 1.25;
}

.teu-music-platforms__link--primary {
  color: #24170d !important;
  background: linear-gradient(180deg, #f0d890, #b68d40);
  border-color: rgba(255, 236, 174, 0.72);
  box-shadow:
    0 7px 18px rgba(0,0,0,0.16),
    inset 0 1px 0 rgba(255,255,255,0.34);
}

.teu-music-platforms__link--primary span {
  color: rgba(36, 23, 13, 0.66);
}

.teu-music-platforms__link:hover,
.teu-music-platforms__link:focus {
  transform: translateY(-2px);
  color: #fff7dc !important;
  background: rgba(116, 25, 25, 0.64);
  border-color: rgba(234, 209, 138, 0.70);
  box-shadow:
    0 12px 24px rgba(0,0,0,0.18),
    inset 0 0 0 1px rgba(255,255,255,0.08);
}

.teu-music-platforms__link:hover span,
.teu-music-platforms__link:focus span {
  color: rgba(255, 245, 218, 0.78);
}

.teu-music-platforms__link--primary:hover,
.teu-music-platforms__link--primary:focus {
  color: #fff7dc !important;
  background: linear-gradient(180deg, #8d2320, #4c1311);
}

@media (max-width: 780px) {
  .teu-music-platforms__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .teu-music-platforms__inner {
    padding: 18px;
  }

  .teu-music-platforms__grid {
    grid-template-columns: 1fr;
  }
}


/* ============================================================
   v12 Music Platform CTA refinements
   ============================================================ */

/* Strong title contrast on the dark platform block. */
.teu-music-platforms .teu-music-platforms__title {
  color: #fff7df !important;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.34);
}

/* Platform icons: uses the FontAwesome set already loaded by Infinite News.
   YouTube uses the same glyph pattern as the theme social widget. */
.teu-music-platforms__link {
  grid-template-columns: 32px minmax(0, 1fr);
  grid-template-areas:
    "icon label"
    "icon note";
  column-gap: 10px;
  align-items: center;
}

.teu-music-platforms__link::before {
  content: "\f001";
  grid-area: icon;
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  color: #f4dda0;
  background: rgba(0, 0, 0, 0.22);
  border: 1px solid rgba(234, 209, 138, 0.26);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.04);
  font-family: "FontAwesome", "Font Awesome 5 Free", "Font Awesome 6 Free";
  font-size: 15px;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: transform 170ms ease, background 170ms ease, color 170ms ease, border-color 170ms ease;
}

.teu-music-platforms__link strong {
  grid-area: label;
}

.teu-music-platforms__link span {
  grid-area: note;
}

.teu-platform-youtube::before,
.teu-platform-youtube_music::before {
  content: "\f16a";
  font-family: "FontAwesome", "Font Awesome 5 Brands", "Font Awesome 6 Brands";
  font-weight: 400;
}

.teu-platform-spotify::before {
  content: "\f1bc";
  font-family: "FontAwesome", "Font Awesome 5 Brands", "Font Awesome 6 Brands";
  font-weight: 400;
}

.teu-platform-apple_music::before {
  content: "\f179";
  font-family: "FontAwesome", "Font Awesome 5 Brands", "Font Awesome 6 Brands";
  font-weight: 400;
}

.teu-platform-amazon_music::before {
  content: "\f270";
  font-family: "FontAwesome", "Font Awesome 5 Brands", "Font Awesome 6 Brands";
  font-weight: 400;
}

.teu-platform-deezer::before {
  content: "\f001";
  font-family: "FontAwesome", "Font Awesome 5 Free", "Font Awesome 6 Free";
  font-weight: 900;
}

.teu-platform-playlist::before {
  content: "\f03a";
  font-family: "FontAwesome", "Font Awesome 5 Free", "Font Awesome 6 Free";
  font-weight: 900;
}

.teu-music-platforms__link--primary::before {
  color: #24170d;
  background: rgba(255, 255, 255, 0.20);
  border-color: rgba(36, 23, 13, 0.18);
}

.teu-music-platforms__link:hover::before,
.teu-music-platforms__link:focus::before {
  transform: translateY(-1px);
  color: #fff7dc;
  background: rgba(0, 0, 0, 0.28);
  border-color: rgba(234, 209, 138, 0.56);
}

.teu-music-platforms__link--primary:hover::before,
.teu-music-platforms__link--primary:focus::before {
  color: #fff7dc;
}

@media (max-width: 520px) {
  .teu-music-platforms__link {
    grid-template-columns: 28px minmax(0, 1fr);
    column-gap: 9px;
  }

  .teu-music-platforms__link::before {
    width: 27px;
    height: 27px;
    font-size: 13px;
  }
}


/* ============================================================
   v14 Audio Stories + final Music CTA contrast fixes
   ============================================================ */

/* Final high-specificity fix: post heading rules were overriding the music CTA title. */
.single-post .entry-content .teu-music-platforms h2.teu-music-platforms__title,
.page .entry-content .teu-music-platforms h2.teu-music-platforms__title,
.entry-content .teu-music-platforms .teu-music-platforms__title,
.teu-music-platforms .teu-music-platforms__title {
  color: #fff7df !important;
  -webkit-text-fill-color: #fff7df !important;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.46) !important;
  border-bottom: 0 !important;
}

/* Prevent the global entry-content H2 underline from cutting through the dark CTA title. */
.single-post .entry-content .teu-music-platforms h2.teu-music-platforms__title::before,
.single-post .entry-content .teu-music-platforms h2.teu-music-platforms__title::after,
.page .entry-content .teu-music-platforms h2.teu-music-platforms__title::before,
.page .entry-content .teu-music-platforms h2.teu-music-platforms__title::after {
  content: none !important;
  display: none !important;
}

/* ------------------------------------------------------------
   Audio Story / Podcast style blocks
   ------------------------------------------------------------ */
.teu-audio-story-card,
.teu-audio-episode-card,
.teu-audio-series-card,
.teu-audio-story-sidebar-card {
  --teu-audio-ink: #251b11;
  --teu-audio-gold: #b59049;
  --teu-audio-oxblood: #741919;
  --teu-audio-night: #17110c;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(181, 144, 73, 0.42);
  box-shadow: 0 14px 34px rgba(35, 25, 14, 0.12), inset 0 0 0 1px rgba(255, 255, 255, 0.18);
}

.teu-audio-story-card,
.teu-audio-episode-card,
.teu-audio-series-card {
  margin: 1.55rem 0;
  padding: clamp(18px, 2.5vw, 28px);
  background:
    radial-gradient(circle at 12% 0%, rgba(181, 144, 73, 0.18), transparent 36%),
    linear-gradient(180deg, rgba(255, 250, 239, 0.94), rgba(238, 222, 190, 0.90));
}

.teu-audio-story-card::before,
.teu-audio-episode-card::before,
.teu-audio-series-card::before {
  content: "";
  position: absolute;
  left: 14px;
  right: 14px;
  top: 10px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(181, 144, 73, 0.68), rgba(116, 25, 25, 0.42), transparent);
  pointer-events: none;
}

.teu-audio-story-kicker,
.teu-audio-story-card__kicker,
.teu-audio-episode-card__kicker,
.teu-audio-series-card__kicker {
  margin: 0 0 0.45rem !important;
  color: var(--teu-audio-oxblood);
  font-family: "Cinzel", Georgia, serif;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.13em;
  line-height: 1.25;
  text-transform: uppercase;
}

.teu-audio-story-card h2,
.teu-audio-story-card h3,
.teu-audio-episode-card h2,
.teu-audio-episode-card h3,
.teu-audio-series-card h2,
.teu-audio-series-card h3 {
  margin-top: 0 !important;
  color: var(--teu-audio-ink) !important;
  font-family: "Cinzel", Georgia, serif !important;
  line-height: 1.16 !important;
}

.teu-audio-story-card p,
.teu-audio-episode-card p,
.teu-audio-series-card p {
  color: rgba(37, 27, 17, 0.82);
}

.teu-audio-story-actions,
.teu-audio-episode-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 1rem;
}

.teu-audio-story-actions a,
.teu-audio-episode-actions a,
.teu-audio-story-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 9px 12px;
  color: #fff4d0 !important;
  background: linear-gradient(135deg, #17110c, #352111 58%, #741919) !important;
  border: 1px solid rgba(181, 144, 73, 0.46);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.07), 0 9px 18px rgba(35, 25, 14, 0.12);
  font-family: "Cinzel", Georgia, serif;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.035em;
  text-decoration: none !important;
  transition: transform 160ms ease, box-shadow 160ms ease, filter 160ms ease;
}

.teu-audio-story-actions a:hover,
.teu-audio-story-actions a:focus,
.teu-audio-episode-actions a:hover,
.teu-audio-episode-actions a:focus,
.teu-audio-story-button:hover,
.teu-audio-story-button:focus {
  transform: translateY(-2px);
  color: #fff8df !important;
  filter: brightness(1.06);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.11), 0 14px 25px rgba(35, 25, 14, 0.18);
}

.teu-audio-story-actions a::before,
.teu-audio-episode-actions a::before,
.teu-audio-story-button::before {
  content: "144";
  font-family: "FontAwesome", "Font Awesome 5 Free", "Font Awesome 6 Free";
  font-weight: 900;
  line-height: 1;
  speak: never;
}

.teu-audio-story-actions a[href*="youtube.com"]::before,
.teu-audio-episode-actions a[href*="youtube.com"]::before,
.teu-audio-story-button[href*="youtube.com"]::before,
.teu-audio-story-actions a[href*="youtu.be"]::before,
.teu-audio-episode-actions a[href*="youtu.be"]::before,
.teu-audio-story-button[href*="youtu.be"]::before {
  content: "16a";
  font-family: "FontAwesome", "Font Awesome 5 Brands", "Font Awesome 6 Brands";
  font-weight: 400;
}

.teu-audio-story-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0.8rem 0 0;
}

.teu-audio-story-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding: 4px 8px;
  color: #2c2115;
  background: rgba(255, 252, 244, 0.75);
  border: 1px solid rgba(127, 94, 45, 0.24);
  font-size: 0.75rem;
  font-weight: 800;
  line-height: 1.15;
}

/* Dark hero variant for story hubs / series pages. */
.teu-audio-story-hero {
  margin: 0 0 1.7rem;
  padding: clamp(24px, 4vw, 44px);
  color: #fff5d5;
  background:
    linear-gradient(90deg, rgba(13, 10, 8, 0.95), rgba(35, 23, 15, 0.82) 52%, rgba(116, 25, 25, 0.72)),
    radial-gradient(circle at 20% 0%, rgba(181, 144, 73, 0.20), transparent 35%),
    #15100c;
  border: 1px solid rgba(181, 144, 73, 0.50);
  box-shadow: 0 18px 44px rgba(36, 28, 18, 0.18);
}

.teu-audio-story-hero h1,
.teu-audio-story-hero h2 {
  max-width: 760px;
  margin: 0 0 0.7rem !important;
  color: #fff7df !important;
  -webkit-text-fill-color: #fff7df !important;
  font-family: "Cinzel", Georgia, serif !important;
  font-size: clamp(2rem, 4.4vw, 3.75rem) !important;
  line-height: 1.02 !important;
  border: 0 !important;
  text-shadow: 0 2px 16px rgba(0,0,0,0.36);
}

.teu-audio-story-hero p {
  max-width: 760px;
  color: rgba(255, 246, 222, 0.88);
  font-size: clamp(1rem, 1.35vw, 1.15rem);
  line-height: 1.6;
}

/* Curated audio-story sidebar. */
.single-post #secondary.teu-audio-story-sidebar--curated,
.single-teutarya_story #secondary.teu-audio-story-sidebar--curated {
  display: block !important;
}

.single-post #secondary.teu-audio-story-sidebar--curated .widget,
.single-post #secondary.teu-audio-story-sidebar--curated .teu-curated-widget,
.single-teutarya_story #secondary.teu-audio-story-sidebar--curated .widget,
.single-teutarya_story #secondary.teu-audio-story-sidebar--curated .teu-curated-widget {
  position: relative;
  margin: 0 0 11px !important;
  padding: 12px 13px 13px !important;
  color: var(--teu-v9-ink, #241a10);
  background: linear-gradient(180deg, rgba(255, 249, 234, 0.96), rgba(238, 224, 198, 0.93)) !important;
  border: 1px solid rgba(127, 94, 45, 0.24) !important;
  box-shadow: 0 10px 28px rgba(39, 29, 17, 0.10) !important;
}

.single-post #secondary.teu-audio-story-sidebar--curated .widget-title,
.single-post #secondary.teu-audio-story-sidebar--curated .wp-block-heading,
.single-teutarya_story #secondary.teu-audio-story-sidebar--curated .widget-title,
.single-teutarya_story #secondary.teu-audio-story-sidebar--curated .wp-block-heading {
  margin: 0 0 7px !important;
  padding: 0 0 6px !important;
  color: #241a10 !important;
  font-family: "Cinzel", Georgia, serif !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em;
  border-bottom: 1px solid rgba(127, 94, 45, 0.20) !important;
}

.teu-audio-story-sidebar-card {
  display: grid;
  gap: 8px;
  padding: 12px;
  color: #fff0c8;
  background:
    radial-gradient(circle at 15% 0%, rgba(181, 144, 73, 0.22), transparent 34%),
    linear-gradient(135deg, #17110c, #2d1c10 58%, #741919);
}

.teu-audio-story-sidebar-card h3 {
  margin: 0 !important;
  color: #fff7df !important;
  -webkit-text-fill-color: #fff7df !important;
  font-family: "Cinzel", Georgia, serif !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  border: 0 !important;
}

.teu-audio-story-sidebar-card p {
  margin: 0 !important;
  color: rgba(255, 244, 214, 0.78);
  font-size: 12.5px;
  line-height: 1.45;
}

.teu-audio-story-sidebar-card a {
  color: #fff3cf !important;
  text-decoration: none !important;
}

.teu-audio-story-sidebar-card__button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 32px;
  padding: 7px 9px;
  color: #24170d !important;
  background: linear-gradient(180deg, #f0d890, #b68d40) !important;
  border: 1px solid rgba(255, 236, 174, 0.72);
  font-family: "Cinzel", Georgia, serif;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-align: center;
}

.teu-audio-story-sidebar-card__button:hover,
.teu-audio-story-sidebar-card__button:focus {
  color: #fff7dc !important;
  background: linear-gradient(180deg, #8d2320, #4c1311) !important;
}

@media (min-width: 1024px) {
  .single-post #secondary.teu-audio-story-sidebar--curated,
  .single-teutarya_story #secondary.teu-audio-story-sidebar--curated {
    align-self: start;
    position: sticky;
    top: 28px;
  }

  body.admin-bar.single-post #secondary.teu-audio-story-sidebar--curated,
  body.admin-bar.single-teutarya_story #secondary.teu-audio-story-sidebar--curated {
    top: 60px;
  }
}

@media (max-width: 640px) {
  .teu-audio-story-actions a,
  .teu-audio-episode-actions a,
  .teu-audio-story-button {
    width: 100%;
    justify-content: center;
  }
}


/* ============================================================
   v14 audio-story category/sidebar separation
   ============================================================ */

/* Music CTA title: hard final contrast override. */
.entry-content .teu-music-platforms h1,
.entry-content .teu-music-platforms h2,
.entry-content .teu-music-platforms h3,
.entry-content .teu-music-platforms .teu-music-platforms__title,
.teu-music-platforms .teu-music-platforms__title {
  color: #fff7df !important;
  -webkit-text-fill-color: #fff7df !important;
  text-shadow: 0 2px 16px rgba(0, 0, 0, 0.55) !important;
  border: 0 !important;
}

/* Restore predictable FontAwesome content values for CTA icons. */
.teu-music-platforms__link::before,
.teu-audio-story-actions a::before,
.teu-audio-episode-actions a::before,
.teu-audio-story-button::before {
  content: "\f144" !important;
  font-family: "FontAwesome", "Font Awesome 5 Free", "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  speak: never;
}

.teu-music-platforms__link[href*="youtube.com"]::before,
.teu-music-platforms__link[href*="youtu.be"]::before,
.teu-audio-story-actions a[href*="youtube.com"]::before,
.teu-audio-story-actions a[href*="youtu.be"]::before,
.teu-audio-episode-actions a[href*="youtube.com"]::before,
.teu-audio-episode-actions a[href*="youtu.be"]::before,
.teu-audio-story-button[href*="youtube.com"]::before,
.teu-audio-story-button[href*="youtu.be"]::before {
  content: "\f16a" !important;
  font-family: "FontAwesome", "Font Awesome 5 Brands", "Font Awesome 6 Brands" !important;
  font-weight: 400 !important;
}

.teu-music-platforms__link.teu-platform-spotify::before,
.teu-music-platforms__link[href*="spotify.com"]::before {
  content: "\f1bc" !important;
  font-family: "FontAwesome", "Font Awesome 5 Brands", "Font Awesome 6 Brands" !important;
  font-weight: 400 !important;
}

.teu-music-platforms__link.teu-platform-apple_music::before,
.teu-music-platforms__link[href*="music.apple.com"]::before {
  content: "\f179" !important;
  font-family: "FontAwesome", "Font Awesome 5 Brands", "Font Awesome 6 Brands" !important;
  font-weight: 400 !important;
}

.teu-music-platforms__link.teu-platform-amazon_music::before,
.teu-music-platforms__link[href*="amazon."]::before {
  content: "\f270" !important;
  font-family: "FontAwesome", "Font Awesome 5 Brands", "Font Awesome 6 Brands" !important;
  font-weight: 400 !important;
}

.teu-music-platforms__link.teu-platform-deezer::before {
  content: "\f001" !important;
}

.teu-music-platforms__link.teu-platform-playlist::before {
  content: "\f03a" !important;
}

/* Shared portal/category sidebar rhythm. Category/archive sidebars are not sticky reading sidebars. */
#secondary.teu-archive-sidebar--curated,
#secondary.teu-audio-story-sidebar--category {
  display: block !important;
}

#secondary.teu-archive-sidebar--curated .widget,
#secondary.teu-archive-sidebar--curated .teu-curated-widget,
#secondary.teu-audio-story-sidebar--category .widget,
#secondary.teu-audio-story-sidebar--category .teu-curated-widget {
  position: relative;
  margin: 0 0 12px !important;
  padding: 13px 14px 14px !important;
  color: #241a10;
  background: linear-gradient(180deg, rgba(255, 249, 234, 0.96), rgba(238, 224, 198, 0.93)) !important;
  border: 1px solid rgba(127, 94, 45, 0.24) !important;
  box-shadow: 0 10px 28px rgba(39, 29, 17, 0.10) !important;
}

#secondary.teu-archive-sidebar--curated .widget::before,
#secondary.teu-audio-story-sidebar--category .widget::before {
  content: "";
  position: absolute;
  left: 10px;
  right: 10px;
  top: 8px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(181, 144, 73, 0.58), rgba(116, 25, 25, 0.26), transparent);
  pointer-events: none;
}

#secondary.teu-archive-sidebar--curated .widget-title,
#secondary.teu-archive-sidebar--curated .wp-block-heading,
#secondary.teu-audio-story-sidebar--category .widget-title,
#secondary.teu-audio-story-sidebar--category .wp-block-heading {
  margin: 0 0 8px !important;
  padding: 0 0 7px !important;
  color: #241a10 !important;
  font-family: "Cinzel", Georgia, serif !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em;
  border-bottom: 1px solid rgba(127, 94, 45, 0.20) !important;
}

#secondary.teu-archive-sidebar--curated .widget-title::before,
#secondary.teu-archive-sidebar--curated .wp-block-heading::before,
#secondary.teu-audio-story-sidebar--category .widget-title::before,
#secondary.teu-audio-story-sidebar--category .wp-block-heading::before {
  content: none !important;
  display: none !important;
}

/* Portal card for category/rubric sidebars. */
.teu-audio-portal-card,
.teu-audio-series-nav-card,
.teu-audio-story-sidebar-card--portal {
  display: grid;
  gap: 9px;
}

.teu-audio-portal-card__kicker,
.teu-audio-series-nav-card__kicker,
.teu-latest-audio-list__title {
  margin: 0 !important;
  color: #741919;
  font-family: "Cinzel", Georgia, serif;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.11em;
  line-height: 1.25;
  text-transform: uppercase;
}

.teu-audio-portal-card h3,
.teu-audio-series-nav-card h3 {
  margin: 0 !important;
  color: #241a10 !important;
  font-family: "Cinzel", Georgia, serif !important;
  font-size: 15.5px !important;
  line-height: 1.22 !important;
  border: 0 !important;
}

.teu-audio-portal-card p,
.teu-audio-series-nav-card p {
  margin: 0 !important;
  color: rgba(36, 26, 16, 0.72);
  font-size: 12.5px;
  line-height: 1.46;
}

.teu-audio-portal-card__links,
.teu-audio-series-nav-card__links {
  display: grid;
  gap: 7px;
  margin-top: 2px;
}

.teu-audio-portal-card__links a,
.teu-audio-series-nav-card__links a,
.teu-audio-portal-button {
  display: block;
  padding: 9px 10px;
  color: #fff4cf !important;
  background: linear-gradient(135deg, #17110c, #342010 58%, #741919) !important;
  border: 1px solid rgba(181, 144, 73, 0.44);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.07), 0 8px 16px rgba(39, 29, 17, 0.13);
  font-family: "Cinzel", Georgia, serif;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.035em;
  text-align: center;
  text-decoration: none !important;
  transition: transform 160ms ease, box-shadow 160ms ease, filter 160ms ease;
}

.teu-audio-portal-card__links a:hover,
.teu-audio-portal-card__links a:focus,
.teu-audio-series-nav-card__links a:hover,
.teu-audio-series-nav-card__links a:focus,
.teu-audio-portal-button:hover,
.teu-audio-portal-button:focus {
  color: #fff8dc !important;
  transform: translateY(-1px);
  filter: brightness(1.05);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.10), 0 12px 22px rgba(39, 29, 17, 0.18);
}

/* Latest audio stories shortcode. */
.teu-latest-audio-list {
  display: grid;
  gap: 8px;
}

.teu-latest-audio-list__items {
  display: grid;
  gap: 7px;
}

.teu-latest-audio-list__item {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 9px;
  align-items: center;
  padding: 7px;
  color: #2d2115 !important;
  background: rgba(255, 252, 244, 0.72);
  border: 1px solid rgba(127, 94, 45, 0.20);
  text-decoration: none !important;
  transition: transform 150ms ease, border-color 150ms ease, background 150ms ease, box-shadow 150ms ease;
}

.teu-latest-audio-list__item:hover,
.teu-latest-audio-list__item:focus {
  transform: translateY(-1px);
  background: rgba(255, 247, 225, 0.96);
  border-color: rgba(116, 25, 25, 0.34);
  box-shadow: 0 8px 16px rgba(39, 29, 17, 0.10);
}

.teu-latest-audio-list__thumb {
  display: block;
  overflow: hidden;
  background: #17110c;
  border: 1px solid rgba(181, 144, 73, 0.34);
}

.teu-latest-audio-list__thumb img {
  display: block;
  width: 54px;
  height: 54px;
  object-fit: cover;
}

.teu-latest-audio-list__text {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.teu-latest-audio-list__text strong {
  color: #251b11;
  font-size: 12.4px;
  line-height: 1.22;
}

.teu-latest-audio-list__text small {
  color: rgba(45, 34, 22, 0.60);
  font-size: 11px;
  line-height: 1.15;
}

.teu-latest-audio-list--empty p {
  margin: 0 !important;
  color: rgba(45, 34, 22, 0.68);
  font-size: 12.5px;
}

/* Single audio-story sidebar remains the reading sidebar: TOC/tags/etc. */
#secondary.teu-audio-story-sidebar--single .widget,
#secondary.teu-audio-story-sidebar--curated .widget {
  margin-bottom: 11px !important;
}

@media (min-width: 1024px) {
  #secondary.teu-audio-story-sidebar--category,
  #secondary.teu-archive-sidebar--curated {
    align-self: start;
    position: static !important;
    top: auto !important;
  }
}
