/* Text-only child page results layout (Google-like) */

/* Break out of Kadence container so more columns can fit */
.vp-child-articles {
  width: min(1600px, calc(100vw - 64px));
  margin-left: auto;
  margin-right: auto;
}

/* Responsive grid that auto-expands columns on wide screens */
.vp-results-grid {
  display: grid;

  /* Each card tries to be at least 320px wide.
     Grid will auto-fit as many columns as possible. */
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));

  gap: 36px 56px;
  margin-top: 28px;
}

/* Mobile: force 1 column */
@media (max-width: 768px) {
  .vp-results-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}


/* Mobile */
@media (max-width: 768px) {
  .vp-results-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}

.vp-result-card {
  margin: 0;
}

/* Whole card is clickable */
.vp-result-link {
  display: block;
  text-decoration: none;
  border-radius: 10px;
  padding: 6px 2px;
}

/* Optional: subtle hover affordance */
.vp-result-link:hover .vp-result-title,
.vp-result-link:focus .vp-result-title {
  color: #5757CE;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.vp-result-title {
  color: #111111;
  font-weight: 700;
  font-size: 28px;
  line-height: 1.15;

  /* One line with ellipsis */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Excerpt: ~12pt, up to 3 lines, truncated, fixed height even if empty */
.vp-result-excerpt {
  margin-top: 12px;
  color: #555555;
  font-size: 12pt;
  line-height: 1.35;

  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;

  overflow: hidden;
  text-overflow: ellipsis;

  /* Keep height stable (3 lines) even when empty */
  min-height: calc(1.35em * 3);
}

/* Improve keyboard focus visibility */
.vp-result-link:focus {
  outline: 2px solid #5757CE;
  outline-offset: 4px;
}
