.grid-cards {
  min-height: 25.2rem;
  width: 100%;
  margin: auto;
  display: grid;
  justify-content: center;
  align-content: start;
  grid-gap: 1rem;
  grid-template: auto/repeat(auto-fill, minmax(21rem, 21rem)); }
  @media only screen and (max-width: 48rem) {
    .grid-cards {
      grid-template: auto / 1fr;
      padding: 1rem; } }

.grid-cards > .card {
  height: 21rem;
  display: flex;
  box-shadow: 1px 3px 3px rgba(0, 10, 20, 0.06);
  margin: 0; }
  @media only screen and (max-width: 48rem) {
    .grid-cards > .card {
      flex: 1 1 auto; } }
  .grid-cards > .card > .card-image {
    width: 2rem;
    height: auto;
    text-align: center;
    max-width: 2rem; }
    @media only screen and (max-width: 48rem) {
      .grid-cards > .card > .card-image {
        max-width: 1rem; } }
    .grid-cards > .card > .card-image > img {
      width: 100%;
      height: auto;
      object-fit: cover;
      flex: 1 1 auto; }
  .grid-cards > .card > .card-inner {
    width: 19rem;
    max-height: 100%;
    flex: 1 1 auto;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    padding: 0.5rem; }
    .grid-cards > .card > .card-inner button {
      flex: none;
      align-self: flex-start;
      margin-top: auto;
      padding: 0.6rem 1.2rem;
      font-size: 0.9em;
      background: none;
      border: 0.5px solid #777;
      border-radius: 2px; }
      .grid-cards > .card > .card-inner button:hover {
        border-color: #d099a0; }
    .grid-cards > .card > .card-inner > .card-text {
      position: relative;
      flex: 1;
      overflow: hidden;
      text-overflow: ellipsis;
      margin: 0;
      padding: 0;
      font-size: 0.9rem; }
      .grid-cards > .card > .card-inner > .card-text:after {
        position: absolute;
        bottom: 0;
        content: "";
        width: 100%;
        height: 2.8em;
        background: linear-gradient(rgba(255, 255, 255, 0), white); }
    .grid-cards > .card > .card-inner > .card-text.ovr-visible {
      overflow: visible; }
    .grid-cards > .card > .card-inner > .card-text.ovr-scroll {
      overflow: scroll; }

.grid-cards > .card > .card-image > img.font-icon {
  width: auto;
  height: 3rem;
  padding-top: 1rem;
  filter: brightness(0) saturate(100%) invert(27%) sepia(10%) saturate(5054%) hue-rotate(153deg) brightness(90%) contrast(89%) drop-shadow(0px 0px 3px var(--a-brand-clr-relf3)); }

.darkmode .grid-cards > .card > .card-image > img.font-icon {
  filter: brightness(0) saturate(100%) invert(92%) sepia(8%) saturate(502%) hue-rotate(160deg) brightness(87%) contrast(89%) drop-shadow(0px 0px 3px var(--a-brand-clr-relf3)); }

.grid-cards > .card > .card-inner h3 {
  font-size: 1.2rem; }

.grid-cards > .card > .card-inner p {
  font-size: 0.9rem; }

.grid-cards > .card > .card-inner b {
  color: var(--a-brand-clr-dark-200); }

.darkmode .grid-cards > .card > .card-inner b {
  color: var(--a-brand-clr-light-300); }
