/* 360 Video Slider
   Matches the look of the 360 Communities News Slider and the Divi Plus blog
   slider on the same page:
     - slide width: fluid, fills the row, so all three sliders line up
     - thumbnails: 16:9, height follows the slide width (no fixed height)
     - card titles: 20px / 24px, weight 600, black
     - arrows: Divi ETmodules chevrons, 45px, black, sitting outside the track
   Self-contained: uses its own c360v- prefix so it never collides with the
   news slider plugin.
   Brand colors: teal #00b4cb | green #6cb33f | gold #ffcb05 */

.c360v-slider{width:100%;margin:0;position:relative;box-sizing:border-box;}
.c360v-slider *{box-sizing:border-box;}

/* ---- Section heading ---- */
.c360v-heading{text-align:center;font-size:26px;font-weight:400;line-height:1.2;color:#00b4cb;margin:0;padding:0 0 10px;}

/* ---- Track: 3 slides with a 15px gutter ---- */
.c360v-viewport{overflow:hidden;margin-top:14px;}
.c360v-track{display:flex;transition:transform .45s ease;margin:0 -7.5px;}
.c360v-card{flex:0 0 33.3333%;padding:0 7.5px;}
.c360v-link{display:block;text-decoration:none;background:none;border:0;border-radius:0;box-shadow:none;height:100%;}

/* ---- Thumbnail: height derived from the slide width ---- */
.c360v-thumb{position:relative;width:100%;padding-top:56.25%;background:#00b4cb;overflow:hidden;border-radius:0;}
@supports (aspect-ratio:1/1){
	.c360v-thumb{padding-top:0;aspect-ratio:16/9;}
}
.c360v-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0;}

/* ---- Play badge ---- */
.c360v-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:68px;height:48px;border-radius:12px;background:rgba(0,0,0,.72);transition:background .2s;pointer-events:none;}
.c360v-play:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-40%,-50%);border-style:solid;border-width:10px 0 10px 17px;border-color:transparent transparent transparent #fff;}
.c360v-link:hover .c360v-play{background:#00b4cb;}

/* ---- Card text ---- */
.c360v-body{padding:10px 5px;}
.c360v-title{font-size:20px;line-height:24px;font-weight:600;color:#000;margin:0 0 5px;}
.c360v-desc{font-size:14px;line-height:24px;color:#666;}

/* ---- Arrows ---- */
.c360v-arrow{position:absolute;top:50%;width:65px;height:55px;padding:0;border:0;background:none;border-radius:0;cursor:pointer;font-size:0;z-index:2;}
.c360v-arrow:after{font-family:'ETmodules';font-size:45px;line-height:55px;color:#000;display:block;}
.c360v-prev{left:-75px;transform:translateY(-50%);}
.c360v-next{right:-75px;transform:translateY(-50%);}
.c360v-prev:after{content:"4";}
.c360v-next:after{content:"5";}
.c360v-arrow:hover:after{opacity:.6;}

/* ---- Dots ---- */
.c360v-dots{text-align:center;margin-top:18px;}
.c360v-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:#c9d1dc;margin:0 4px;border:none;padding:0;cursor:pointer;}
.c360v-dot.is-active{background:#00b4cb;}

/* ---- Lightbox ---- */
.c360v-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;padding:24px;}
.c360v-lightbox-inner{position:relative;width:100%;max-width:960px;aspect-ratio:16/9;}
.c360v-lightbox iframe{width:100%;height:100%;border:0;}
.c360v-lightbox-close{position:absolute;top:-44px;right:0;width:36px;height:36px;border:0;background:none;color:#fff;font-size:30px;line-height:36px;cursor:pointer;}

/* ---- Responsive ---- */
@media (max-width:980px){
	.c360v-slider{padding:0 48px;}
	.c360v-prev{left:0;}
	.c360v-next{right:0;}
}
@media (max-width:860px){.c360v-card{flex-basis:50%;}}
@media (max-width:560px){.c360v-card{flex-basis:100%;}.c360v-slider{padding:0 40px;}.c360v-lightbox-close{top:-40px;}}
