.vh-links{ background:#0b0b0c; color:#f5f5f7; padding:56px 0 80px; position:relative; }
.vhl-wrap{ max-width:1280px; margin:0 auto; padding:0 16px; }

/* 상단 4열 */
.vhl-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:48px;
  border-top:1px solid rgba(255,255,255,.06);
  padding-top:28px;
}
.vhl-head{
  font-size:20px; font-weight:800; letter-spacing:.02em; margin:0 0 16px;
}
.vhl-list{ list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.vhl-list a{
  color:#f5f5f7; text-decoration:none; opacity:.85;
}
.vhl-list a:hover{ opacity:1; text-decoration:underline; }

/* 연락처 + SNS */
.vhl-addr{ font-style:normal; opacity:.9; display:grid; gap:8px; margin:4px 0 16px; }
.vhl-sns{ display:flex; gap:12px; }
.vhl-snsbtn{
  width:42px; height:42px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center;
  background:#222; color:#fff; border:1px solid rgba(255,255,255,.12);
}
.vhl-snsbtn svg{ width:20px; height:20px; }

/* 하단 라인 */
.vhl-bottom{
  display:flex; gap:20px; align-items:center; justify-content:space-between;
  border-top:1px solid rgba(255,255,255,.06); margin-top:36px; padding-top:18px;
  opacity:.85; font-size:14px;
}

/* 우측 하단 퀵아이콘 */
.vhl-quick{
  position:fixed; right:18px; bottom:18px; display:flex; gap:10px; z-index:9990;
}
.vhl-qbtn{
  width:42px; height:42px; border-radius:10px; border:1px solid rgba(255,255,255,.22);
  background:#121214; color:#fff; display:inline-flex; align-items:center; justify-content:center;
  box-shadow:0 8px 20px rgba(0,0,0,.25); cursor:pointer; transition:transform .12s ease, background .2s;
  opacity:.95;
}
.vhl-qbtn:hover{ transform:translateY(-2px); background:#171719; }
.vhl-qbtn svg{ width:22px; height:22px; }

/* 맨위로 버튼 표시/숨김 */
#vhlTop{ opacity:0; transition:opacity .2s ease; }

/* 반응형 */
@media (max-width:1080px){
  .vhl-grid{ grid-template-columns:repeat(2,1fr); gap:32px; }
}
@media (max-width:560px){
  .vhl-grid{ grid-template-columns:1fr; }
  .vhl-bottom{ flex-direction:column; align-items:flex-start; gap:8px; }
}