/* =========================================================
   WRAPMASTER Blog Template — single post styles
   Namespaced with .wm- prefix to avoid Enfold conflicts.
   Wrap all rules under .wm-blog-wrap.
   ========================================================= */

.wm-blog-wrap {
  --wm-navy: #0b1d3a;
  --wm-navy-deep: #061331;
  --wm-amber: #f6a623;
  --wm-amber-soft: #fff4dc;
  --wm-ink: #1a1a1a;
  --wm-muted: #5a6678;
  --wm-line: #e6eaf0;
  --wm-card: #ffffff;
  --wm-bg: #f7f8fb;
  --wm-max: 1280px;

  background: var(--wm-bg);
  color: var(--wm-ink);
  font-family: 'Inter', -apple-system, system-ui, sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
.wm-blog-wrap * { box-sizing: border-box; }
.wm-blog-wrap a { color: var(--wm-navy); text-decoration: none; border-bottom: 1px solid rgba(11,29,58,0.2); transition: border-color .15s; }
.wm-blog-wrap a:hover { border-bottom-color: var(--wm-amber); }
.wm-blog-wrap img { max-width: 100%; display: block; height: auto; }
.wm-container { max-width: var(--wm-max); margin: 0 auto; padding: 0 24px; }

/* === HERO === */
.wm-hero { background: var(--wm-navy); color: #fff; padding: 64px 0 80px; position: relative; overflow: hidden; }
.wm-hero::before { content: ''; position: absolute; top: 0; right: -10%; width: 60%; height: 100%; background: radial-gradient(circle at 30% 30%, rgba(246,166,35,0.15), transparent 60%); pointer-events: none; }
.wm-hero .wm-container { position: relative; z-index: 1; }
.wm-breadcrumbs { color: rgba(255,255,255,0.6); font-size: 13px; margin-bottom: 16px; }
.wm-breadcrumbs a { color: rgba(255,255,255,0.8); border-color: transparent; }
.wm-breadcrumbs a:hover { color: var(--wm-amber); }
.wm-hero-cat { display: inline-block; background: var(--wm-amber); color: var(--wm-navy); padding: 5px 12px; border-radius: 4px; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; border: 0; }
.wm-hero-cat:hover { background: #ffb43c; border: 0; }
.wm-hero-title { font-family: 'Fraunces', Georgia, serif; font-size: clamp(32px, 4.4vw, 56px); line-height: 1.08; margin: 18px 0 18px; max-width: 920px; letter-spacing: -0.02em; font-weight: 700; color: #fff; }
.wm-hero-meta { color: rgba(255,255,255,0.75); font-size: 14px; display: flex; gap: 18px; flex-wrap: wrap; align-items: center; }
.wm-author { display: flex; align-items: center; gap: 8px; }
.wm-avatar { width: 28px; height: 28px; border-radius: 50%; background: linear-gradient(135deg, var(--wm-amber), #ffb43c); display: grid; place-items: center; color: var(--wm-navy); font-weight: 700; font-size: 12px; }
.wm-author > span:last-child { display: flex; flex-direction: column; line-height: 1.2; }
.wm-author small { margin-top: 3px; color: rgba(255,255,255,.65); font-size: 11px; font-weight: 500; }
.wm-sep { color: rgba(255,255,255,0.3); }

/* === FEATURED IMAGE === */
.wm-featured-wrap { margin-top: -48px; position: relative; z-index: 5; padding-bottom: 48px; }
.wm-featured { aspect-ratio: 16/9; border-radius: 16px; overflow: hidden; box-shadow: 0 30px 60px -20px rgba(11,29,58,0.4); background: #eaeef5; }
.wm-featured img { width: 100%; height: 100%; object-fit: cover; }

/* === MAIN GRID === */
.wm-main-grid { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 56px; padding-bottom: 80px; align-items: start; }
@media (max-width: 980px) { .wm-main-grid { grid-template-columns: 1fr; } }

/* === ARTICLE === */
.wm-post { font-size: 18px; line-height: 1.75; color: #2a2f3a; max-width: 720px; }
.wm-post p { margin: 0 0 20px; }
.wm-post h2 { font-family: 'Fraunces', Georgia, serif; font-size: 32px; font-weight: 700; letter-spacing: -0.01em; margin: 48px 0 16px; color: var(--wm-navy); line-height: 1.2; }
.wm-post h3 { font-size: 22px; font-weight: 700; margin: 32px 0 12px; color: var(--wm-navy); }
.wm-post strong { color: var(--wm-navy); font-weight: 700; }
.wm-post a { color: #2052c5; border-bottom: 1px solid rgba(32,82,197,0.3); }
.wm-post a:hover { border-bottom-color: #2052c5; }

.wm-author-profile { display: grid; grid-template-columns: 64px 1fr; gap: 18px; align-items: start; margin: 56px 0 8px; padding: 24px; border: 1px solid var(--wm-line); border-radius: 12px; background: #fff; }
.wm-author-profile-avatar { width: 64px; height: 64px; border-radius: 50%; display: grid; place-items: center; background: linear-gradient(135deg, var(--wm-amber), #ffb43c); color: var(--wm-navy); font-size: 22px; font-weight: 800; }
.wm-author-profile-kicker { margin: 0 0 4px !important; color: #8b5b00 !important; font-size: 11px !important; font-weight: 800; letter-spacing: .08em; }
.wm-author-profile h2 { margin: 0 0 4px; font-size: 24px; }
.wm-author-profile-role { margin: 0 0 8px !important; color: var(--wm-navy) !important; font-size: 14px !important; font-weight: 700; }
.wm-author-profile p:last-child { margin: 0; font-size: 14px; line-height: 1.6; }
@media (max-width: 520px) { .wm-author-profile { grid-template-columns: 1fr; } }
.wm-post ol, .wm-post ul { padding-left: 24px; margin: 0 0 20px; }
.wm-post li { margin: 8px 0; }
.wm-post img, .wm-post figure.wp-block-image img { border-radius: 12px; margin: 32px 0; box-shadow: 0 8px 24px -8px rgba(0,0,0,0.15); }
.wm-post figure.wp-block-image { margin: 0; }
.wm-post blockquote.wp-block-quote { background: var(--wm-amber-soft); border-left: 4px solid var(--wm-amber); padding: 24px 28px; border-radius: 8px; margin: 0 0 40px; font-size: 17px; line-height: 1.65; font-style: normal; }
.wm-post blockquote.wp-block-quote p { margin: 0 0 12px; }
.wm-post blockquote.wp-block-quote p:last-child { margin-bottom: 0; }
.wm-post table { width: 100%; border-collapse: collapse; margin: 32px 0; font-size: 15px; background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 1px 0 var(--wm-line); }
.wm-post th { background: var(--wm-navy); color: #fff; text-align: left; padding: 14px 16px; font-weight: 600; font-size: 13px; text-transform: uppercase; letter-spacing: 0.04em; }
.wm-post td { padding: 14px 16px; border-bottom: 1px solid var(--wm-line); vertical-align: top; }
.wm-post tr:last-child td { border-bottom: 0; }

/* === INLINE PRODUCT SHOWCASE (shortcode output) === */
.wm-product-showcase { margin: 56px 0; padding: 36px 32px; background: linear-gradient(180deg, #fff, #f0f3f9); border-radius: 16px; border: 1px solid var(--wm-line); }
.wm-showcase-title { font-family: 'Fraunces', Georgia, serif; font-size: 26px; font-weight: 700; color: var(--wm-navy); margin: 0 0 6px; }
.wm-showcase-sub { color: var(--wm-muted); font-size: 15px; margin-bottom: 24px; }
.wm-product-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
@media (max-width: 700px) { .wm-product-cards { grid-template-columns: 1fr; } }
.wm-product-card { background: #fff; border-radius: 12px; padding: 16px; border: 1px solid var(--wm-line); transition: all .2s; display: block; }
.wm-product-card:hover { transform: translateY(-3px); box-shadow: 0 12px 24px -10px rgba(11,29,58,0.2); border-color: var(--wm-amber); }
.wm-pc-thumb { aspect-ratio: 1; border-radius: 8px; overflow: hidden; margin-bottom: 14px; background: #f0f3f9; display: grid; place-items: center; color: var(--wm-muted); font-size: 13px; }
.wm-pc-thumb img { width: 100%; height: 100%; object-fit: cover; }
.wm-pc-name { color: var(--wm-navy); font-weight: 700; font-size: 15px; line-height: 1.3; margin-bottom: 6px; }
.wm-pc-price { color: var(--wm-navy); font-weight: 700; font-size: 16px; margin-top: 6px; }
.wm-product-cta { margin-top: 20px; display: inline-block; background: var(--wm-navy); color: #fff; padding: 12px 22px; border-radius: 6px; font-weight: 600; font-size: 14px; border: 0; }
.wm-product-cta:hover { background: var(--wm-navy-deep); border: 0; }

/* === SIDEBAR === */
.wm-sidebar { position: sticky; top: 96px; }
@media (max-width: 980px) { .wm-sidebar { position: static; } }
.wm-side-card { background: #fff; border: 1px solid var(--wm-line); border-radius: 12px; padding: 22px; margin-bottom: 22px; }
.wm-side-title { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--wm-navy); margin: 0 0 16px; padding-bottom: 12px; border-bottom: 1px solid var(--wm-line); }

/* Recent posts list */
.wm-recent-post { display: flex; gap: 12px; margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--wm-line); }
.wm-recent-post:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.wm-rp-thumb { width: 72px; height: 72px; border-radius: 8px; flex-shrink: 0; background: #eaeef5; overflow: hidden; }
.wm-rp-thumb img { width: 100%; height: 100%; object-fit: cover; }
.wm-rp-meta a { color: var(--wm-navy); font-size: 14px; font-weight: 600; line-height: 1.35; border: 0; display: block; }
.wm-rp-meta a:hover { color: var(--wm-amber); }
.wm-rp-date { color: var(--wm-muted); font-size: 12px; margin-top: 6px; }

/* Side product */
.wm-side-product { display: flex; gap: 12px; padding: 12px; border-radius: 8px; align-items: center; border: 1px solid transparent; }
.wm-side-product:hover { background: #f7f8fb; border-color: var(--wm-line); }
.wm-sp-thumb { width: 56px; height: 56px; border-radius: 6px; background: #f0f3f9; flex-shrink: 0; overflow: hidden; }
.wm-sp-thumb img { width: 100%; height: 100%; object-fit: cover; }
.wm-sp-name { font-size: 13px; font-weight: 600; line-height: 1.3; color: var(--wm-navy); }
.wm-sp-price { font-size: 13px; color: var(--wm-muted); margin-top: 4px; }

/* TOC */
.wm-toc-list { list-style: none; padding: 0; margin: 0; }
.wm-toc-list li { margin-bottom: 8px; }
.wm-toc-list a { display: block; color: var(--wm-ink); font-size: 14px; padding: 6px 10px; border-left: 2px solid transparent; border-radius: 0; border-bottom: 0; }
.wm-toc-list a:hover, .wm-toc-list a.active { color: var(--wm-navy); border-left-color: var(--wm-amber); background: #f7f8fb; }

/* Newsletter */
.wm-newsletter { background: linear-gradient(135deg, var(--wm-navy), var(--wm-navy-deep)); color: #fff; padding: 22px; border-radius: 12px; }
.wm-newsletter h3 { font-family: 'Fraunces', Georgia, serif; font-size: 20px; margin: 0 0 6px; line-height: 1.25; color: #fff; }
.wm-newsletter p { font-size: 13px; opacity: 0.85; margin: 0 0 14px; }
.wm-newsletter-button { display: block; width: 100%; background: var(--wm-amber); color: var(--wm-navy) !important; padding: 11px 12px; border-radius: 6px; border: 0 !important; font-weight: 700; font-size: 14px; text-align: center; text-decoration: none !important; }
.wm-newsletter-button:hover { background: #ffb43c; }
.wm-newsletter-link { display: block; margin-top: 11px; color: #fff !important; font-size: 13px; font-weight: 700; text-align: center; text-decoration: none !important; }

/* === BOTTOM SECTION === */
.wm-bottom { background: #fff; border-top: 1px solid var(--wm-line); padding: 64px 0; }
.wm-bottom-title { font-family: 'Fraunces', Georgia, serif; font-size: 32px; font-weight: 700; color: var(--wm-navy); margin: 0 0 8px; }
.wm-bottom-sub { color: var(--wm-muted); margin-bottom: 32px; }
.wm-strip-products { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 64px; }
@media (max-width: 800px) { .wm-strip-products { grid-template-columns: repeat(2, 1fr); } }
.wm-related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
@media (max-width: 800px) { .wm-related-grid { grid-template-columns: 1fr; } }
.wm-related-card { background: #fff; border: 1px solid var(--wm-line); border-radius: 12px; overflow: hidden; transition: all .2s; display: block; }
.wm-related-card:hover { transform: translateY(-4px); box-shadow: 0 16px 32px -16px rgba(11,29,58,0.25); border-color: var(--wm-amber); }
.wm-rc-thumb { aspect-ratio: 16/9; background: #eaeef5; overflow: hidden; }
.wm-rc-thumb img { width: 100%; height: 100%; object-fit: cover; }
.wm-rc-body { padding: 18px 20px 22px; }
.wm-rc-cat { font-size: 11px; font-weight: 700; color: var(--wm-amber); text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 8px; }
.wm-rc-body h4 { color: var(--wm-navy); font-size: 18px; line-height: 1.3; margin: 0 0 8px; font-weight: 700; }
.wm-rc-date { color: var(--wm-muted); font-size: 13px; }

/* Override any inherited Enfold styles that mess with the body */
.wm-blog-wrap .wm-post p,
.wm-blog-wrap .wm-post li { font-size: inherit; line-height: inherit; }
.wm-blog-wrap .wm-post .wp-block-image figcaption { text-align: center; color: var(--wm-muted); font-size: 14px; margin-top: 8px; }

/* === FAQ ACCORDION === */
.wm-faq { margin: 24px 0 48px; }
.wm-faq details { background: #fff; border: 1px solid var(--wm-line); border-radius: 10px; margin-bottom: 10px; padding: 18px 22px; transition: border-color .15s; }
.wm-faq details[open] { border-color: var(--wm-amber); box-shadow: 0 4px 16px -8px rgba(11,29,58,0.15); }
.wm-faq summary { cursor: pointer; font-weight: 700; color: var(--wm-navy); list-style: none; outline: none; font-size: 17px; line-height: 1.4; padding-right: 32px; position: relative; }
.wm-faq summary::-webkit-details-marker { display: none; }
.wm-faq summary::after { content: '+'; position: absolute; right: 0; top: -2px; font-size: 26px; color: var(--wm-amber); font-weight: 400; line-height: 1; transition: transform .2s; }
.wm-faq details[open] summary::after { content: '−'; }
.wm-faq details > *:not(summary) { margin-top: 14px; color: #2a2f3a; font-size: 16px; line-height: 1.7; }
.wm-faq details > p { margin-bottom: 8px; }
.wm-faq details > p:last-child { margin-bottom: 0; }

/* Inline product showcase shortcode CTA fix (anchor styling override) */
.wm-blog-wrap a.wm-product-cta,
.wm-blog-wrap a.wm-product-card,
.wm-blog-wrap a.wm-side-product,
.wm-blog-wrap a.wm-recent-post,
.wm-blog-wrap a.wm-related-card { border-bottom: 0; }
.wm-blog-wrap a.wm-product-cta:hover,
.wm-blog-wrap a.wm-product-card:hover,
.wm-blog-wrap a.wm-related-card:hover { border-bottom: 0; }

/* Print-safe + reduced motion */
@media (prefers-reduced-motion: reduce) {
  .wm-product-card, .wm-related-card { transition: none; }
  .wm-product-card:hover, .wm-related-card:hover { transform: none; }
}

/* ============================================================
   BLOG INDEX PAGE (/blog/)
   Hero + filters + featured + grid + newsletter + pagination
   ============================================================ */

.wm-blog-index .wm-hero { padding: 64px 0 88px; }
.wm-blog-index .wm-hero-title { font-size: clamp(40px, 5.4vw, 64px); margin: 18px 0 18px; }
.wm-index-sub { color: rgba(255,255,255,0.8); font-size: 18px; max-width: 720px; line-height: 1.55; margin: 0 0 28px; }
.wm-blog-index .wm-hero-meta { margin-bottom: 32px; }
.wm-blog-index .wm-hero-meta strong { color: #fff; font-weight: 600; }

/* Search bar in hero */
.wm-index-search { display: flex; max-width: 600px; background: #fff; border-radius: 10px; padding: 6px; box-shadow: 0 20px 40px -20px rgba(0,0,0,0.35); }
.wm-index-search input { flex: 1; padding: 14px 18px; border: 0; outline: 0; font-size: 16px; font-family: inherit; background: transparent; color: var(--wm-ink); }
.wm-index-search button { background: var(--wm-navy); color: #fff; padding: 12px 28px; border: 0; border-radius: 8px; font-weight: 700; font-size: 15px; cursor: pointer; border-bottom: 0; }
.wm-index-search button:hover { background: var(--wm-navy-deep); }

/* Filter pills sticky bar */
.wm-filters-wrap { background: #fff; border-bottom: 1px solid var(--wm-line); padding: 22px 0; position: sticky; top: 0; z-index: 10; }
.wm-filters { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.wm-filter-pill { display: inline-flex; align-items: center; gap: 6px; padding: 10px 18px; border-radius: 30px; background: #fff; border: 1px solid var(--wm-line); font-size: 14px; font-weight: 600; color: var(--wm-navy); cursor: pointer; transition: all .15s; text-decoration: none; border-bottom: 1px solid var(--wm-line); }
.wm-filter-pill:hover { border-color: var(--wm-amber); border-bottom-color: var(--wm-amber); }
.wm-filter-pill.active { background: var(--wm-navy); color: #fff; border-color: var(--wm-navy); }
.wm-pill-count { font-size: 12px; opacity: 0.7; font-weight: 500; }
.wm-filter-pill.active .wm-pill-count { color: var(--wm-amber); opacity: 1; font-weight: 700; }

/* Index main */
.wm-index-main { padding: 56px 0 96px; background: var(--wm-bg); }

/* Featured (latest) article */
.wm-featured-article { display: grid; grid-template-columns: 1.3fr 1fr; gap: 0; background: #fff; border-radius: 14px; overflow: hidden; border: 1px solid var(--wm-line); margin-bottom: 48px; transition: all .25s; text-decoration: none; color: inherit; }
@media (max-width: 800px) { .wm-featured-article { grid-template-columns: 1fr; } }
.wm-featured-article:hover { border-color: var(--wm-amber); transform: translateY(-3px); box-shadow: 0 16px 32px -16px rgba(11,29,58,0.25); }
.wm-featured-thumb { aspect-ratio: 16/10; overflow: hidden; background: #eaeef5; }
.wm-featured-thumb img { width: 100%; height: 100%; object-fit: cover; }
.wm-featured-body { padding: 36px; display: flex; flex-direction: column; justify-content: center; }
@media (max-width: 800px) { .wm-featured-body { padding: 28px; } }
.wm-featured-badge { display: inline-block; background: var(--wm-amber-soft); color: var(--wm-navy); padding: 4px 10px; border-radius: 4px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 12px; align-self: flex-start; }
.wm-featured-title { font-family: 'Fraunces', Georgia, serif; font-size: clamp(24px, 2.8vw, 32px); line-height: 1.15; color: var(--wm-navy); margin: 0 0 14px; font-weight: 700; }
.wm-featured-excerpt { color: var(--wm-muted); font-size: 16px; line-height: 1.65; margin: 0 0 18px; }
.wm-featured-meta { color: var(--wm-muted); font-size: 13px; }

/* Grid */
.wm-index-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin-bottom: 64px; }
@media (max-width: 900px) { .wm-index-grid { grid-template-columns: repeat(2, 1fr); gap: 22px; } }
@media (max-width: 600px) { .wm-index-grid { grid-template-columns: 1fr; } }
.wm-index-card { background: #fff; border: 1px solid var(--wm-line); border-radius: 12px; overflow: hidden; transition: all .2s; display: block; color: inherit; text-decoration: none; border-bottom: 1px solid var(--wm-line); }
.wm-index-card:hover { transform: translateY(-4px); box-shadow: 0 16px 32px -16px rgba(11,29,58,0.25); border-color: var(--wm-amber); }
.wm-card-thumb { aspect-ratio: 16/9; background: #eaeef5; overflow: hidden; }
.wm-card-thumb img { width: 100%; height: 100%; object-fit: cover; }
.wm-card-body { padding: 22px 22px 26px; }
.wm-card-cat { font-size: 11px; font-weight: 700; color: #8a4b00; text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 8px; }
.wm-card-body h3 { color: var(--wm-navy); font-size: 18px; line-height: 1.3; margin: 0 0 10px; font-weight: 700; }
.wm-card-excerpt { color: var(--wm-muted); font-size: 14px; line-height: 1.6; margin: 0 0 14px; }
.wm-card-meta { color: var(--wm-muted); font-size: 13px; }

/* Commercial paths from the knowledge base into product and partner systems */
/* Knowledge base intro / hub copy */
.wm-kb-intro { max-width: 860px; margin: 8px 0 64px; padding: 40px 0 0; border-top: 1px solid var(--wm-line); }
.wm-kb-intro h2 { font-family: 'Fraunces', Georgia, serif; font-size: clamp(24px, 2.6vw, 32px); line-height: 1.2; color: var(--wm-navy); margin: 40px 0 14px; }
.wm-kb-intro h2:first-of-type { margin-top: 0; }
.wm-kb-intro h3 { font-size: 17px; font-weight: 700; color: var(--wm-navy); margin: 0 0 8px; }
.wm-kb-intro p { color: var(--wm-muted); font-size: 16px; line-height: 1.7; margin: 0 0 16px; }
.wm-kb-intro strong { color: var(--wm-navy); font-weight: 700; }
.wm-kb-intro-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin: 24px 0 28px; }
.wm-kb-intro-cols > div { background: #fff; border: 1px solid var(--wm-line); border-radius: 12px; padding: 22px 20px; }
.wm-kb-intro-cols p { font-size: 15px; line-height: 1.6; margin: 0; }
@media (max-width: 900px) { .wm-kb-intro-cols { grid-template-columns: 1fr; gap: 16px; } }

.wm-system-paths { margin: 0 0 64px; }
.wm-system-paths-head { max-width: 760px; margin-bottom: 24px; }
.wm-system-paths-kicker { margin: 0 0 8px; color: #8b5b00; font-size: 12px; font-weight: 800; letter-spacing: .09em; }
.wm-system-paths-head h2 { font-family: 'Fraunces', Georgia, serif; font-size: clamp(26px, 3vw, 36px); line-height: 1.15; color: var(--wm-navy); margin: 0 0 10px; }
.wm-system-paths-head > p:last-child { margin: 0; color: var(--wm-muted); font-size: 16px; line-height: 1.6; }
.wm-system-paths-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.wm-system-path { display: flex; min-height: 190px; flex-direction: column; padding: 24px; border: 1px solid var(--wm-line) !important; border-radius: 12px; background: #fff; color: var(--wm-navy) !important; text-decoration: none !important; transition: transform .2s, border-color .2s, box-shadow .2s; }
.wm-system-path:hover { transform: translateY(-3px); border-color: var(--wm-amber) !important; box-shadow: 0 16px 32px -20px rgba(11,29,58,.35); }
.wm-system-path strong { color: var(--wm-navy); font-size: 18px; line-height: 1.3; }
.wm-system-path span { margin-top: 9px; color: var(--wm-muted); font-size: 14px; line-height: 1.55; }
.wm-system-path b { margin-top: auto; padding-top: 20px; color: #8b5b00; font-size: 13px; }
@media (max-width: 850px) { .wm-system-paths-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .wm-system-paths-grid { grid-template-columns: 1fr; } .wm-system-path { min-height: 0; } }

/* Newsletter strip mid-page */
.wm-newsletter-strip { background: linear-gradient(135deg, var(--wm-navy), var(--wm-navy-deep)); color: #fff; padding: 56px 48px; border-radius: 16px; display: grid; grid-template-columns: 1.4fr 1fr; gap: 32px; align-items: center; margin-bottom: 64px; }
@media (max-width: 700px) { .wm-newsletter-strip { grid-template-columns: 1fr; padding: 36px 28px; } }
.wm-newsletter-strip h2 { font-family: 'Fraunces', Georgia, serif; font-size: clamp(22px, 2.6vw, 30px); line-height: 1.15; margin: 0 0 8px; color: #fff; }
.wm-newsletter-strip p { margin: 0; opacity: 0.85; font-size: 16px; }
.wm-newsletter-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.wm-newsletter-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 20px; border: 1px solid var(--wm-amber) !important; border-radius: 8px; background: var(--wm-amber); color: var(--wm-navy) !important; font-weight: 800; text-decoration: none !important; }
.wm-newsletter-cta:hover { background: #ffb43c; }
.wm-newsletter-cta-secondary { border-color: rgba(255,255,255,.45) !important; background: transparent; color: #fff !important; }
.wm-newsletter-cta-secondary:hover { border-color: #fff !important; background: rgba(255,255,255,.08); }
@media (max-width: 700px) { .wm-newsletter-actions { justify-content: flex-start; } .wm-newsletter-cta { width: 100%; } }

/* One final commercial action after the article product context */
.wm-article-commercial-cta { display: grid; grid-template-columns: 1.2fr 1fr; gap: 24px; align-items: center; padding: 28px; margin: 0 0 56px; border: 1px solid var(--wm-line); border-radius: 14px; background: var(--wm-navy); color: #fff; }
.wm-article-commercial-cta strong { display: block; color: #fff; font-size: 20px; margin-bottom: 6px; }
.wm-article-commercial-cta span { display: block; color: rgba(255,255,255,.8); line-height: 1.55; }
.wm-article-commercial-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.wm-article-commercial-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 16px; border: 1px solid var(--wm-amber) !important; border-radius: 7px; background: var(--wm-amber); color: var(--wm-navy) !important; font-size: 14px; font-weight: 800; text-decoration: none !important; }
.wm-article-commercial-actions a:last-child { border-color: rgba(255,255,255,.5) !important; background: transparent; color: #fff !important; }
@media (max-width: 760px) { .wm-article-commercial-cta { grid-template-columns: 1fr; } .wm-article-commercial-actions { justify-content: flex-start; } }

/* Pagination */
.wm-pagination { display: flex; justify-content: center; gap: 8px; margin-top: 32px; flex-wrap: wrap; }
.wm-pagination .wm-page-link { padding: 10px 16px; border-radius: 6px; border: 1px solid var(--wm-line); color: var(--wm-navy); font-weight: 600; font-size: 14px; text-decoration: none; transition: all .15s; }
.wm-pagination .wm-page-link:hover { border-color: var(--wm-amber); color: var(--wm-navy); }
.wm-pagination .wm-page-current { background: var(--wm-navy); color: #fff; border-color: var(--wm-navy); }

.wm-no-results { text-align: center; padding: 48px 0; color: var(--wm-muted); }

/* Hub copy figure */
.wm-kb-intro-figure { margin: 28px 0; }
.wm-kb-intro-figure img { width: 100%; height: auto; border-radius: 12px; display: block; }
.wm-kb-intro-figure figcaption { margin-top: 10px; color: var(--wm-muted); font-size: 14px; line-height: 1.5; }
