.card-list { position: relative; width: 100%; background: #fff; }
/* Alternation counts only card-list sections, not unrelated CMS blocks. */
.site-main > .card-list:nth-child(even of .card-list) { background: var(--surface-muted); }
/* The image chosen as a legacy compact-card background stays in CMS but does not cover the reference's clean section colors. */
.card-list__bg { display: none; }
.card-list__inner { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 28px; max-width: var(--container-max-width); padding-top: 62px; padding-bottom: 66px; }
.card-list__content { display: flex; flex-direction: column; align-items: stretch; gap: 42px; width: 100%; }
.card-list__title, .card-list--with-bg .card-list__title, .card-list--plain .card-list__title { margin: 0; padding: 0; color: #0d0d10; font-size: 32px; font-weight: 700; line-height: 1.2; text-shadow: none; text-align: center; }
.card-list__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: stretch; gap: 26px; width: 100%; }
.card-list__more { display: flex; width: 100%; justify-content: flex-end; }
.card-list__more .btn { min-width: 108px; }
/* Gray section: white CTA with blue lettering. White section: default blue CTA. */
.site-main > .card-list:nth-child(even of .card-list) .card-list__more .btn {
  background: #fff;
  color: var(--brand-blue);
  border-color: #fff;
}
.site-main > .card-list:nth-child(even of .card-list) .card-list__more .btn:hover {
  background: #eef1ff;
  border-color: #eef1ff;
  color: var(--brand-blue);
}

@media (max-width: 800px) {
  .card-list__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
  .card-list__inner { padding-top: 48px; padding-bottom: 51px; }
  .card-list__content { gap: 28px; }
}
@media (max-width: 530px) {
  .card-list__grid { grid-template-columns: 1fr; gap: 24px; }
  .card-list__title, .card-list--with-bg .card-list__title, .card-list--plain .card-list__title { font-size: 28px; }
  .card-list__more { justify-content: center; }
}
