{# ============================== #}
{#            CARD BASE           #}
{# ============================== #}

.c-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  flex-grow: 1;
  padding-bottom: 25px;
  border: 1px solid rgba(140, 149, 170, 0.3);
}
.c-card-content.versa-hubdb-card__content {
  padding: 25px!important;
}
.flexi-card-outer {
  height: 100%;
}

.c-card img:not(.versa-hubdb-card__img) {
  display: block;
  margin: auto;
}

.c-card-content {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.c-card-content blockquote {
  margin: 0 0 25px 0;
  padding-left: 0;
  border-left: 0;
}

{# ============================== #}
{#        TEAM CARD LAYOUT        #}
{# ============================== #}

.c-card-mod {
  position: relative;
  z-index: 1;
}

.c-card-mod .c-social-team-con {
  position: absolute;
  bottom: 25px;
  display: inline-flex;
}

.c-card-mod .c-social-team-con a {
  padding-left: 0;
  padding-right: 10px;
}

{# ============================== #}
{#            BUTTONS             #}
{# ============================== #}

.learn-more.u4m-card-cta.versa-card-cta {
  background: transparent!important;
}
.versa-hubdb-card-link:hover .learn-more.u4m-card-cta.versa-card-cta {
  background: rgba(252,100,31,0.15)!important;
}




.c-card-btn-con {
  padding-top: 30px;
  margin-top: auto;
}

.load-more-row {
  margin-top: 25px;
}

.load-more-btn {
  cursor: pointer;
}

/* 1. Force the container to use Flexbox and auto-height */
.portfolio-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  height: auto !important; /* Overrides Isotope's hardcoded pixel height */
}

/* 2. Strip Isotope's absolute positioning off the cards */
.portfolio-grid .filter-card {
  position: relative !important;
  left: auto !important;
  top: auto !important;
}

/* 3. Hidden cards (pagination / load more) don't consume grid space */
.portfolio-grid .filter-card[style*="display: none"] {
  display: none !important;
}

/* HubDB flexi: fixed 16:10 media frame (module.css so rules always ship with module) */
.filter-card.versa-hubdb-flexi {
  display: flex;
  flex-direction: column;
}

.versa-hubdb-card__media {
  position: relative;
  width: 100%;
  overflow: hidden;
  flex-shrink: 0;
  min-height: 0;
}

.versa-hubdb-card__media::before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 62.5%;
}

.versa-hubdb-card__img {
  position: absolute !important;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center;
  margin: 0 !important;
  max-width: none !important;
  border-radius: 0 !important;
  display: block;
}

.versa-hubdb-card-link .c-card {
  min-height: 0;
}

.versa-hubdb-card__content .versa-hubdb-card__desc {
  margin-bottom: 24px;
}