/* ===================================
   PRODUCT GALLERY VIDEOS
=================================== */

.wpg-related-videos iframe{
    max-width:100%;
    margin:10px 0;
    display:block;
}

/* ===================================
   VIDEO THUMBNAILS
=================================== */

.wpg-video-placeholder{
    position:relative;
    cursor:pointer;
    overflow:hidden;
    border-radius:12px;
    background:#000;
}

.wpg-video-placeholder img{
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
    display:block;
    transition:transform .3s ease;
}

.wpg-video-placeholder:hover img{
    transform:scale(1.05);
}

.wpg-video-placeholder:before{
    content:'';
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.15);
    transition:.25s;
}

.wpg-video-placeholder:hover:before{
    background:rgba(0,0,0,.05);
}

/* ===================================
   YOUTUBE PLAY BUTTON
=================================== */

.wpg-youtube-play{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width:68px;
    height:48px;
    pointer-events:none;
    transition:.25s ease;
}

.wpg-video-placeholder:hover .wpg-youtube-play{
    transform:translate(-50%,-50%) scale(1.12);
}

.wpg-youtube-play svg{
    width:100%;
    height:100%;
    display:block;
}

/* ===================================
   RELATED VIDEOS SECTION
=================================== */

.wpg-related-videos{
    position:relative;
    margin:40px 0;
}

/* ===================================
   VIDEO SLIDER
=================================== */

.wpg-video-slider{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:20px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-behavior:smooth;
    -webkit-overflow-scrolling:touch;
    padding:10px 0;

    /* Hide scrollbar */
    scrollbar-width:none;
}

.wpg-video-slider::-webkit-scrollbar{
    display:none;
}

.wpg-video-slide{
    flex:0 0 calc(33.333% - 14px);
    min-width:calc(33.333% - 14px);
}

.wpg-video-slide iframe{
    width:100%;
    aspect-ratio:16/9;
    border:none;
    border-radius:12px;
    display:block;
}

/* ===================================
   NAVIGATION ARROWS
=================================== */

.wpg-prev,
.wpg-next{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:46px;
    height:46px;
    border:none;
    border-radius:50%;
    background:#fff;
    cursor:pointer;
    z-index:20;

    display:flex;
    align-items:center;
    justify-content:center;

    box-shadow:0 4px 15px rgba(0,0,0,.12);

    opacity:0;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        opacity .25s ease;
}

.wpg-prev{
    left:-23px;
}

.wpg-next{
    right:-23px;
}

.wpg-related-videos:hover .wpg-prev,
.wpg-related-videos:hover .wpg-next{
    opacity:1;
}

.wpg-prev:hover,
.wpg-next:hover{
    transform:translateY(-50%) scale(1.08);
    box-shadow:0 8px 25px rgba(0,0,0,.18);
}

.wpg-prev svg,
.wpg-next svg{
    width:22px;
    height:22px;
    fill:none;
    stroke:#111827;
    stroke-width:2.5;
    stroke-linecap:round;
    stroke-linejoin:round;
}

/* ===================================
   TABLET
=================================== */

@media(max-width:1024px){

    .wpg-video-slide{
        flex:0 0 calc(50% - 10px);
        min-width:calc(50% - 10px);
    }

}

.wpg-video-placeholder,
.wpg-video-placeholder iframe{
    width:100%;
    aspect-ratio:16/9;
    border-radius:12px;
}

.wpg-video-placeholder iframe{
    display:block;
    border:none;
    height:100%;
}
.wpg-video-slider{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    width:100%;
    max-width:100%;
    gap:20px;
    scroll-behavior:smooth;
}

.wpg-video-slide{
    flex:0 0 350px !important;
    min-width:350px !important;
    max-width:350px !important;
}

.wpg-scrollbar{
    width:100%;
    height:5px;
    background:#e5e7eb;
    border-radius:999px;
    margin-top:15px;
    overflow:hidden;
}

.wpg-scrollbar-thumb{
    height:100%;
    width:0;
    background:#2563eb;
    border-radius:999px;
}
/* Custom Slider Bar */

.wpg-scrollbar{
    width:100%;
    height:6px;
    background:#e5e7eb;
    border-radius:999px;
    margin-top:15px;
    overflow:hidden;
}

.wpg-scrollbar-thumb{
    height:100%;
    width:20%;
    background:#2563eb;
    border-radius:999px;
    transition:transform .1s linear;
}

/* ===================================
   MOBILE
=================================== */

@media(max-width:768px){

    .wpg-video-slide{
        flex:0 0 100%;
        min-width:100%;
    }

    .wpg-youtube-play{
        width:56px;
        height:40px;
    }

    .wpg-prev,
    .wpg-next{
        width:38px;
        height:38px;
    }

    .wpg-prev{
        left:5px;
    }

    .wpg-next{
        right:5px;
    }

    .wpg-prev svg,
    .wpg-next svg{
        width:18px;
        height:18px;
    }
}


/* Add this to your existing CSS file */
.wpg-prev.wpg-hidden,
.wpg-next.wpg-hidden {
    opacity: 0 !important;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-50%) scale(0.9);
}


/* ===================================
   FIXED NAVIGATION ARROWS (BULLETPROOF)
=================================== */

.wpg-prev,
.wpg-next {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    border: none !important;
    border-radius: 50% !important;
    background: #ffffff !important; /* Forces clean white background */
    cursor: pointer !important;
    z-index: 20 !important;
    padding: 0 !important; /* Removes theme padding layout breaks */
    margin: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 4px 15px rgba(0,0,0,.15) !important;
    opacity: 0;
    visibility: hidden;
    transition: transform .25s ease, box-shadow .25s ease, opacity .25s ease, background-color .25s ease !important;
}

.wpg-prev {
    left: -23px !important;
}

.wpg-next {
    right: -23px !important;
}

/* Hover States: Elegant blue shift */
.wpg-prev:hover,
.wpg-next:hover {
    background: #2563eb !important; /* Soft premium blue on hover */
    transform: translateY(-50%) scale(1.08) !important;
    box-shadow: 0 8px 25px rgba(0,0,0,.2) !important;
}

.wpg-related-videos:hover .wpg-prev:not(.wpg-hidden),
.wpg-related-videos:hover .wpg-next:not(.wpg-hidden) {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Force SVG Arrow signs to show clearly */
.wpg-prev svg,
.wpg-next svg {
    width: 20px !important;
    height: 20px !important;
    display: block !important;
    fill: none !important;
    stroke: #111827 !important; /* Dark line color for white state */
    stroke-width: 3 !important; /* Distinct crisp line thickness */
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    transition: stroke 0.25s ease !important;
}

/* Switches arrow sign to white when button is hovered */
.wpg-prev:hover svg,
.wpg-next:hover svg {
    stroke: #ffffff !important;
}

/* Hidden state rule compatibility */
.wpg-prev.wpg-hidden,
.wpg-next.wpg-hidden {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Container positioning */
.wpg-related-videos {
    position: relative;
    margin-top: 40px;
    margin-bottom: 40px;
}

/* The horizontal scrolling track */
.wpg-video-slider {
    display: flex;
    overflow-x: auto;
    gap: 15px;
    scroll-behavior: smooth;
    padding-bottom: 10px;
    scrollbar-width: none; /* Hides scrollbar on Firefox */
}

.wpg-video-slider::-webkit-scrollbar {
    display: none; /* Hides scrollbar on Chrome/Safari */
}

/* Individual Slide Sizing */
.wpg-video-slide {
    flex: 0 0 calc(33.333% - 10px); /* Shows 3 videos side-by-side on desktop */
    min-width: 250px; /* Prevents them from getting too small on mobile */
}

/* The clickable placeholder image container */
.wpg-video-placeholder {
    position: relative;
    cursor: pointer;
    padding-bottom: 56.25%; /* Forces a perfect 16:9 widescreen ratio */
    background: #000;
    border-radius: 8px;
    overflow: hidden;
}

.wpg-video-placeholder img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.85;
    transition: opacity 0.3s ease;
}

.wpg-video-placeholder:hover img {
    opacity: 0.6;
}

/* Center the Red YouTube SVG Button */
.wpg-youtube-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 40px;
    pointer-events: none; /* Prevents the SVG from blocking the click */
}

/* Slider Navigation Arrows */
.wpg-prev, .wpg-next {
    position: absolute;
    top: 50%;
    transform: translateY(-20%);
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    cursor: pointer;
    z-index: 10;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

/* Position arrows outside the slider */
.wpg-prev { left: -15px; }
.wpg-next { right: -15px; } 

.wpg-prev:hover, .wpg-next:hover {
    background: #f0f0f0;
}

.wpg-prev svg, .wpg-next svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: #333;
    stroke-width: 2;
}