.ma-lh-grid {
  --ma-lh-card-background: var(--global-palette9, #fff);
  --ma-lh-card-border: #d9dee6;
  --ma-lh-accent: var(--global-palette1, #26334a);
  --ma-lh-side: 30%;
  color: inherit;
  font-family: inherit;
}
.ma-lh-grid *, .ma-lh-grid *::before, .ma-lh-grid *::after { box-sizing: border-box; }
.ma-lh-grid .screen-reader-text { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

/* Filter bar */
.ma-lh-filters { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 14px; margin: 0 0 24px; }
.ma-lh-filters-title { margin-right: 2px; font-size: .9rem; font-weight: 700; }
.ma-lh-filter select { min-width: 170px; max-width: 100%; min-height: 38px; padding: 7px 34px 7px 14px; border: 1px solid transparent; border-radius: 999px; background-color: #f0f2f5; color: #283243; font: inherit; font-size: .85rem; cursor: pointer; }
.ma-lh-filter select:focus-visible, .ma-lh-card a:focus-visible, .ma-lh-pagination a:focus-visible, .ma-lh-apply:focus-visible { outline: 2px solid var(--ma-lh-accent); outline-offset: 3px; }
.ma-lh-apply { min-height: 38px; padding: 7px 16px; border: 1px solid var(--ma-lh-accent); border-radius: 999px; background: var(--ma-lh-accent); color: #fff; font: inherit; font-size: .85rem; cursor: pointer; }
.ma-lh-enhanced .ma-lh-apply { display: none; }

/* Cards */
.ma-lh-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.ma-lh-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid var(--ma-lh-card-border); border-radius: 6px; background: var(--ma-lh-card-background); transition: box-shadow .2s ease, transform .2s ease, background-color .2s ease, border-color .2s ease; }
.ma-lh-lift .ma-lh-card:hover { transform: translateY(-4px); }
.ma-lh-card-content { display: flex; flex: 1 1 auto; flex-direction: column; min-width: 0; }
.ma-lh-card-body { padding: 14px 16px 17px; }
.ma-lh-align-bottom .ma-lh-card-body { display: flex; flex: 1 1 auto; flex-direction: column; }
.ma-lh-align-bottom .ma-lh-read-more-wrap { margin-top: auto; padding-top: 12px; }

/* Image */
.ma-lh-image { position: relative; display: block; flex: 0 0 auto; aspect-ratio: 2.2 / 1; overflow: hidden; background: #e0e4ea; }
.ma-lh-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.ma-lh-zoom .ma-lh-card:hover .ma-lh-image img { transform: scale(1.035); }
.ma-lh-image-placeholder { display: block; width: 100%; height: 100%; min-height: 60px; background: #e0e4ea; }
.ma-lh-img-left .ma-lh-card:not(.ma-lh-card--no-image) { flex-direction: row; }
.ma-lh-img-right .ma-lh-card:not(.ma-lh-card--no-image) { flex-direction: row-reverse; }
.ma-lh-img-left .ma-lh-image, .ma-lh-img-right .ma-lh-image { flex: 0 0 var(--ma-lh-side); align-self: flex-start; width: var(--ma-lh-side); }
.ma-lh-img-full .ma-lh-image { align-self: stretch; min-height: 120px; aspect-ratio: auto; }
.ma-lh-img-full .ma-lh-image img, .ma-lh-img-full .ma-lh-image-placeholder { position: absolute; inset: 0; height: 100%; }

/* Text */
.ma-lh-type { display: flex; flex-wrap: wrap; column-gap: .35em; margin-bottom: 5px; color: var(--ma-lh-accent); font-size: .68rem; font-weight: 700; letter-spacing: .06em; line-height: 1.3; text-transform: uppercase; }
.ma-lh-type a { color: inherit; text-decoration: none; }
.ma-lh-type a:hover { text-decoration: underline; }
.ma-lh-card-title { margin: 0; font-family: inherit; font-size: clamp(1rem, 1.2vw, 1.13rem); font-weight: 700; line-height: 1.3; }
.ma-lh-card-title a { color: inherit; text-decoration: none; }
.ma-lh-card-title a:hover { color: var(--ma-lh-accent); text-decoration: underline; text-underline-offset: 3px; }
.ma-lh-meta { display: flex; flex-wrap: wrap; column-gap: .5em; row-gap: .2em; margin: 7px 0 0; color: var(--global-palette5, inherit); font-size: .78rem; line-height: 1.4; }
.ma-lh-meta--above-title { margin: 0 0 6px; }
.ma-lh-meta--below-excerpt { margin-top: 10px; }
.ma-lh-excerpt { margin: 9px 0 0; font-size: .86rem; line-height: 1.48; }

/* Dividers between meta, footer, and label items */
.ma-lh-div-dot > * + *::before { content: '·'; margin-right: .5em; }
.ma-lh-div-line > * + *::before { content: '|'; margin-right: .5em; opacity: .5; }
.ma-lh-div-pipe > * + *::before { content: '|'; margin-right: .5em; }
.ma-lh-div-dash > * + *::before { content: '–'; margin-right: .5em; }
.ma-lh-div-slash > * + *::before { content: '/'; margin-right: .5em; }
.ma-lh-div-comma > :not(:last-child)::after { content: ','; }
.ma-lh-type.ma-lh-div-comma { column-gap: .3em; }

/* Read More */
.ma-lh-read-more-wrap { margin-top: 14px; }

/* Footer */
.ma-lh-card-footer { display: flex; flex-wrap: wrap; column-gap: .5em; row-gap: .2em; padding: 10px 16px; border-top: 1px solid var(--ma-lh-card-border); font-size: .78rem; line-height: 1.4; }
.ma-lh-align-bottom .ma-lh-card-footer { margin-top: auto; }
.ma-lh-card-footer a { color: inherit; }
.ma-lh-card-footer a:hover { color: var(--ma-lh-accent); }

/* Pagination */
.ma-lh-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 5px; margin-top: 22px; }
.ma-lh-pagination a, .ma-lh-page-gap { display: inline-flex; align-items: center; justify-content: center; min-width: 34px; min-height: 34px; padding: 0 8px; border-radius: 4px; color: inherit; font-size: .82rem; text-decoration: none; }
.ma-lh-pagination a:hover { background: #f0f2f5; }
.ma-lh-pagination a[aria-current="page"] { background: #e6e9ee; font-weight: 700; }
.ma-lh-empty { padding: 38px 16px; border: 1px solid var(--ma-lh-card-border); border-radius: 6px; text-align: center; }
.ma-lh-grid[aria-busy="true"] .ma-lh-results { opacity: .55; }

/* Single-item shortcodes */
.ma-lh-embed { position: relative; width: 100%; aspect-ratio: 16 / 9; }
.ma-lh-embed iframe { width: 100%; height: 100%; }
.ma-lh-pdf { display: inline-block; }
.ma-lh-type-label { font-weight: 700; text-transform: uppercase; }
.ma-lh-byline { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: .65em; row-gap: .25em; font: inherit; font-size: .9rem; }
.ma-lh-byline > :not(:first-child)::before { content: '·'; margin-right: .65em; color: var(--global-palette5, currentColor); }

/* Tablet and mobile match the Kadence breakpoints. */
@media (max-width: 1024px) { .ma-lh-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) {
  .ma-lh-filters { justify-content: stretch; align-items: stretch; }
  .ma-lh-filters-title { width: 100%; }
  .ma-lh-filter { flex: 1 1 100%; }
  .ma-lh-filter select { width: 100%; }
  .ma-lh-cards { grid-template-columns: 1fr; }
  .ma-lh-img-stack .ma-lh-card:not(.ma-lh-card--no-image) { flex-direction: column; }
  .ma-lh-img-stack .ma-lh-image { flex-basis: auto; align-self: stretch; width: auto; }
  .ma-lh-img-stack.ma-lh-img-full .ma-lh-image { aspect-ratio: 2.2 / 1; }
}
@media (prefers-reduced-motion: reduce) { .ma-lh-image img, .ma-lh-card { transition: none; } .ma-lh-lift .ma-lh-card:hover { transform: none; } }
