/* Blog listing module: the template CSS of design/templates/blog-listing/blog-listing.css without its shared tail
   (already in the global stylesheet), then the fixes block markup needs. */

/* ---------- bl-head: this template's facts line in the lv-arthead--split page head ---------- */
.bl-head .lv-crumbs a { min-width: 48px; }
.bl-head .facts { list-style: none; display: flex; flex-wrap: wrap; align-items: center; gap: 0 20px; margin-top: 16px; font-size: var(--fs-ui); color: var(--c-head); font-weight: 600; }
.bl-head .facts li + li { border-left: 1px solid var(--c-edge); padding-left: 20px; }
.bl-head .facts a { display: inline-flex; align-items: center; min-height: 48px; }

/* ---------- lv-postsearch: the live "Search blog titles" box, with a visible label and the suggestion panel.
   The field is the theme's 56px lv-search as it stands; the panel has a 2px edge and no shadow ---------- */
.lv-postsearch .lv-flabel { font-size: 20px; font-weight: 700; margin-bottom: 10px; }
.lv-postsearch .field { position: relative; }
.lv-postsearch .lv-search { max-width: none; }
.lv-postsearch .hint { margin: 10px 0 0; font-size: var(--fs-ui); color: var(--c-ink-soft); }
.lv-suggest { position: absolute; z-index: 6; left: 0; right: 0; top: calc(100% + 6px); background: var(--c-paper); border: 2px solid var(--c-edge);
  border-radius: var(--radius-card); overflow: hidden; }
.lv-suggest[hidden] { display: none; }
.lv-suggest .status { margin: 0; padding: 12px 20px; font-size: var(--fs-ui); color: var(--c-ink-soft); }
.lv-suggest ul { list-style: none; }
.lv-suggest a { display: block; min-height: 56px; padding: 15px 20px; border-top: 1px solid var(--c-hairline);
  color: var(--c-head); text-decoration: none; font-size: 19px; line-height: 1.35; }
.lv-suggest a:hover { background: var(--c-sky); text-decoration: underline; }
.lv-suggest a:focus-visible { outline-offset: -4px; box-shadow: inset 0 0 0 7px var(--c-focus-halo); }
.lv-suggest b { font-weight: 700; }
@media (forced-colors: active) { .lv-suggest { border: 2px solid CanvasText; } }

/* ---------- lv-learn--media: the home Learning Center block with the featured image and thumbnails ---------- */
.lv-learn--media .grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.lv-learn--media .lead-story { border-top: 0; padding-top: 0; }
.lv-learn--media .lead-story .lv-media { aspect-ratio: 3 / 2; margin-bottom: 12px; }
.lv-learn--media .rows li { display: grid; grid-template-columns: minmax(0, 1fr) 200px; gap: 24px; align-items: start; }
.lv-learn--media .rows li:first-child { padding-top: 20px; }
.lv-learn--media .rows .lv-media { aspect-ratio: 3 / 2; margin-top: 12px; }
.lv-learn--media .rows p:not(.lv-meta) { margin: 0; }
.lv-learn--media h3 a { display: flex; align-items: center; min-height: 48px; }
.lv-media .slot span.lbl { font-size: 18px; line-height: 1.35; }
@media (max-width: 900px) { .lv-learn--media .grid { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .lv-learn--media .rows li { grid-template-columns: 1fr; } .lv-learn--media .rows .lv-media { order: -1; margin: 0 0 4px; } }
