/* ================================
   LOOP CARD
================================ */

.ih-media-card {
  background: #ffffff;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 10px 28px rgba(0,0,0,.06);
  transition: all .25s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.ih-media-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 42px rgba(0,0,0,.10);
}

.ih-media-card .elementor-widget {
  margin-bottom: 0 !important;
}

/* Inner content container:
   Add class ih-media-content to the container that holds
   category + title + date
*/

.ih-media-content {
  padding: 14px 16px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex-grow: 1;
}

.ih-media-content .elementor-widget {
  margin-bottom: 0 !important;
}

/* ================================
   CARD IMAGE
================================ */

.ih-media-image {
  overflow: hidden;
  flex-shrink: 0;
}

.ih-media-image img {
  width: 400px;
  height: 200px;
  object-fit: cover;
  display: block;
  transition: transform .4s ease;
}

.ih-media-card:hover .ih-media-image img {
  transform: scale(1.04);
}

/* ================================
   CATEGORY BADGE
================================ */

.ih-media-category {
  display: inline-flex;
  align-self: flex-start;
  margin: 0;
  padding: 5px 9px;
  border-radius: 7px;
  background: rgba(15,79,58,.10);
  color: #0f4f3a;
  font-size: 8px;
  font-weight: 800;
  line-height: 1;
}

/* Fix taxonomy/term links inside badge */
.ih-media-category a,
.ih-media-category span {
  color: inherit !important;
  font-size: 10px !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  text-decoration: none !important;
}

/* ================================
   CARD TITLE
================================ */

.ih-media-title {
  padding: 0;
}

.ih-media-title,
.ih-media-title h1,
.ih-media-title h2,
.ih-media-title h3,
.ih-media-title h4,
.ih-media-title a {
  font-size: 16px;
  line-height: 1.18;
  font-weight: 850;
  color: #111111;
  margin: 0;
  text-decoration: none;
}

/* ================================
   CARD DATE
================================ */

.ih-media-date {
  margin-top: auto;
  padding-top: 10px;
}

.ih-media-date,
.ih-media-date time,
.ih-media-date span {
  display: block;
  padding: 0;
  font-size: 12px;
  line-height: 1.3;
  color: #777777;
}

