.luxury-video-container { position: relative; padding: 20px 0; overflow: hidden; }

.luxury-card {
    display: block;
    position: relative;
    aspect-ratio: 4/5;
    border-radius: 30px;
    overflow: hidden;
    cursor: pointer;
    text-decoration: none;
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

.luxury-card:hover { transform: scale(1.02); }

.luxury-image {
    width: 100%; height: 100%;
    background-size: cover; background-position: center;
    transition: transform 0.6s ease;
}

.luxury-card:hover .luxury-image { transform: scale(1.1); }

.luxury-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(to bottom, transparent 40%, rgba(0,0,0,0.7) 100%);
}

.luxury-play-btn {
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 60px; height: 60px;
    background: #fff; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    opacity: 0.9; transition: 0.3s;
}

.luxury-play-btn svg { width: 20px; margin-left: 4px; }

.luxury-caption {
    position: absolute; bottom: 15px; left: 15px; right: 15px;
    padding: 20px;
    background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(10px);
    border-radius: 20px;
    color: #fff;
}

.luxury-caption h3 { margin: 0 0 5px; font-size: 18px; font-weight: 500; }
.luxury-caption p { margin: 0; font-size: 13px; opacity: 0.8; }

.luxury-nav { display: flex; justify-content: center; gap: 10px; margin-top: 30px; }
.luxury-prev, .luxury-next {
    padding: 12px 30px; border: 1px solid #333; cursor: pointer;
    font-size: 12px; letter-spacing: 2px; transition: 0.3s;
}
.luxury-next { background: #000; color: #fff; }
.luxury-prev:hover, .luxury-next:hover { opacity: 0.7; }