/* ========================================
   CONTENT TYPES — v1.2.0
======================================== */

/* Image Gallery Thumbnails */
.dss-gallery-thumbs{position:absolute;bottom:20px;right:20px;z-index:9;display:flex;gap:6px;opacity:0;transform:translateY(10px)}
.dss-slide.active .dss-gallery-thumbs{animation:fadeInUp .5s 1s ease-out forwards}
.dss-gallery-thumb{width:48px;height:48px;border-radius:6px;overflow:hidden;border:2px solid rgba(255,255,255,.3);cursor:pointer;padding:0;background:none;transition:all .3s}
.dss-gallery-thumb.active{border-color:var(--dss-accent);box-shadow:0 0 12px rgba(255,68,68,.4)}
.dss-gallery-thumb:hover{border-color:#fff;transform:scale(1.1)}
.dss-gallery-thumb img{width:100%;height:100%;object-fit:cover}
.dss-rtl .dss-gallery-thumbs{right:auto;left:20px}

/* Testimonial Overlay */
.dss-testimonial-overlay{position:absolute;bottom:0;left:0;width:100%;z-index:9;padding:40px 60px;background:linear-gradient(0deg,rgba(0,0,0,.85) 0%,transparent 100%)}
.dss-testimonial-quote{margin-bottom:20px}
.dss-tq-mark{font-size:60px;line-height:0;color:var(--dss-accent);font-family:Georgia,serif;display:block;margin-bottom:-10px;opacity:.6}
.dss-tq-text{font-size:18px;line-height:1.6;color:#fff;font-style:italic;margin:0;max-width:700px}
.dss-testimonial-author{display:flex;align-items:center;gap:14px}
.dss-ta-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--dss-accent)}
.dss-ta-info{display:flex;flex-direction:column;gap:2px}
.dss-ta-name{font-size:15px;font-weight:700;color:#fff}
.dss-ta-role{font-size:12px;color:rgba(255,255,255,.5)}
.dss-ta-stars{margin-left:auto}
.dss-ta-stars .star{color:rgba(255,255,255,.2);font-size:14px}
.dss-ta-stars .star.filled{color:#fbbf24}

/* Team Member Card */
.dss-team-overlay{position:absolute;bottom:0;left:0;width:100%;z-index:9;padding:30px 50px;background:linear-gradient(0deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.6) 60%,transparent 100%)}
.dss-team-card{display:flex;align-items:center;gap:24px;max-width:600px}
.dss-team-photo{width:100px;height:100px;border-radius:50%;overflow:hidden;border:3px solid var(--dss-accent);flex-shrink:0}
.dss-team-photo img{width:100%;height:100%;object-fit:cover}
.dss-team-info{flex:1}
.dss-team-name{font-size:22px;font-weight:800;color:#fff;margin:0 0 4px}
.dss-team-role{display:inline-block;font-size:12px;font-weight:700;color:var(--dss-accent);text-transform:uppercase;letter-spacing:2px;margin-bottom:8px}
.dss-team-bio{font-size:13px;color:rgba(255,255,255,.7);line-height:1.5;margin:0}
.dss-team-social{margin-top:10px;display:flex;gap:8px}
.dss-team-social a{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:rgba(255,255,255,.1);border-radius:50%;color:#fff;text-decoration:none;font-size:14px;transition:all .3s}
.dss-team-social a:hover{background:var(--dss-accent);transform:scale(1.15)}

/* Before / After Comparison */
.dss-before-after{position:absolute;top:0;left:0;width:100%;height:100%;z-index:8;overflow:hidden;cursor:col-resize}
.dss-ba-before,.dss-ba-after{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}
.dss-ba-before{z-index:2;clip-path:inset(0 50% 0 0)}
.dss-ba-after{z-index:1}
.dss-ba-before img,.dss-ba-after img{width:100%;height:100%;object-fit:cover;pointer-events:none}
.dss-ba-label{position:absolute;top:50%;padding:6px 16px;background:rgba(0,0,0,.7);color:#fff;font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;border-radius:4px;transform:translateY(-50%)}
.dss-ba-before-label{left:16px}
.dss-ba-after-label{right:16px}
.dss-ba-handle{position:absolute;top:0;left:50%;width:4px;height:100%;z-index:3;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;justify-content:center}
.dss-ba-handle-line{flex:1;width:2px;background:rgba(255,255,255,.8)}
.dss-ba-handle-circle{width:40px;height:40px;background:var(--dss-accent);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 2px 10px rgba(0,0,0,.4);flex-shrink:0}
.dss-ba-handle:focus-visible{outline:2px solid var(--dss-accent);outline-offset:2px}

/* ========================================
   RESPONSIVE
======================================== */
@media(max-width:768px){
    .dss-gallery-thumb{width:36px;height:36px}
    .dss-testimonial-overlay{padding:20px 24px}
    .dss-tq-text{font-size:14px}
    .dss-ta-avatar{width:36px;height:36px}
    .dss-team-overlay{padding:16px 20px}
    .dss-team-photo{width:64px;height:64px}
    .dss-team-name{font-size:16px}
    .dss-ba-handle-circle{width:32px;height:32px}
    .dss-ba-label{font-size:10px;padding:4px 10px}
}
