.vh-service{ background:#0b0b0c; color:#f5f5f7; padding:72px 0 56px; }
.vhs-wrap{ max-width:1280px; margin:0 auto; padding:0 16px; }
.vhs-title{
  text-align:center; font-weight:800; font-size:clamp(22px,3vw,40px);
  margin:0 0 28px; text-shadow:0 2px 0 rgba(0,0,0,.3);
}

/* 카드 그리드 */
.vhs-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:0; /* 한 줄 4등분 */
  border:1px solid rgba(255,255,255,.07); border-radius:8px; overflow:hidden;
}
.vhs-card{
  background:#121214; text-decoration:none; color:#fff;
  min-height:260px; padding:34px 28px; display:flex; flex-direction:column; align-items:center; text-align:center;
  border-right:1px solid rgba(255,255,255,.07);
  transition:background .2s ease, transform .12s ease;
}
.vhs-card:last-child{ border-right:0; }
.vhs-card:hover{ background:#171719; transform:translateY(-2px); }

.vhs-icon{
  width:72px; height:72px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center;
  border:2px solid rgba(255,255,255,.7); color:#fff; margin-bottom:14px;
}
.vhs-icon svg{ width:34px; height:34px; }

.vhs-name{ font-size:clamp(18px,2.2vw,26px); font-weight:800; margin:6px 0 10px; }
.vhs-desc{ max-width:320px; opacity:.8; line-height:1.6; font-size:14px; margin:0 0 18px; }

.vhs-cta{
  display:inline-flex; align-items:center; gap:8px; font-weight:700; color:#fff; opacity:.9;
}
.vhs-cta svg{ width:16px; height:16px; }

/* 반응형 */
@media (max-width:1024px){
  .vhs-grid{ grid-template-columns:repeat(2,1fr); }
  .vhs-card{ border-bottom:1px solid rgba(255,255,255,.07); }
  .vhs-card:nth-child(2n){ border-right:0; }
}
@media (max-width:560px){
  .vhs-grid{ grid-template-columns:1fr; }
  .vhs-card{ border-right:0; }
}