/* GHFS Homepage Cards - spacing + professional hover
   Only affects the GHFS homepage cards. Safe to keep site-wide.
*/

.ghfs-homepage .ghfs-section .row{
  /* Works even if Bootstrap gutter utilities aren't available */
  row-gap: 26px;
}

.ghfs-homepage .ghfs-product-card{
  height: 100%;
  display: flex;
  flex-direction: column;

  border: 1px solid rgba(15, 23, 42, .08);
  box-shadow: 0 14px 34px rgba(15, 23, 42, .10);
  background: rgba(255,255,255,.92);

  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
  margin-bottom: 26px; /* fallback spacing if row-gap unsupported */
}

.ghfs-homepage .ghfs-product-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 22px 50px rgba(15, 23, 42, .14);
  border-color: rgba(59, 130, 246, .35);
  background: rgba(255,255,255,.98);
}

.ghfs-homepage .ghfs-card-title{
  font-weight: 700;
  letter-spacing: .2px;
}

.ghfs-homepage .ghfs-desc{
  line-height: 1.55;
  color: rgba(15, 23, 42, .78);
}

.ghfs-homepage .ghfs-features{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}

.ghfs-homepage .ghfs-features span{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12.5px;
  border: 1px solid rgba(15, 23, 42, .08);
  background: rgba(255,255,255,.70);
}

.ghfs-homepage .ghfs-actions{
  margin-top: auto; /* push actions to bottom */
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  padding-top: 14px;
}

.ghfs-homepage .ghfs-actions .btn{
  transition: transform .15s ease, box-shadow .15s ease;
}

.ghfs-homepage .ghfs-actions .btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(15, 23, 42, .12);
}

@media (prefers-reduced-motion: reduce){
  .ghfs-homepage .ghfs-product-card,
  .ghfs-homepage .ghfs-product-card:hover,
  .ghfs-homepage .ghfs-actions .btn,
  .ghfs-homepage .ghfs-actions .btn:hover{
    transition: none !important;
    transform: none !important;
  }
}
