.wspc-wrap   { position: relative; }
.wspc-viewport { overflow: hidden; }
.wspc-track  { display: flex; gap: 12px; transition: transform .4s ease; will-change: transform; }
.wspc-slide  { flex-shrink: 0; }
.wspc-card   { display: block; text-decoration: none; color: inherit; }
.wspc-img    { width: 100%; height: 320px; object-fit: cover; display: block; }
.wspc-name   { font-size: 13px; font-weight: 600; margin: 8px 0 0; padding: 0 2px; line-height: 1.4; }
.wspc-card:hover .wspc-name { text-decoration: underline; }

.wspc-btn {
    position: absolute; top: 40%; transform: translateY(-50%);
    background: #fff; border: 1px solid #ddd; width: 36px; height: 36px;
    font-size: 16px; cursor: pointer; display: flex; align-items: center;
    justify-content: center; z-index: 5; opacity: 0; transition: opacity .2s;
}
.wspc-wrap:hover .wspc-btn { opacity: 1; }
.wspc-btn:hover { background: #000; color: #fff; }
.wspc-prev { left: -8px; }
.wspc-next { right: -8px; }
