/* -- Splide -- */
.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__arrow{-ms-flex-align:center;align-items:center;background:#ccc;border:0;border-radius:50%;cursor:pointer;display:-ms-flexbox;display:flex;height:2em;-ms-flex-pack:center;justify-content:center;opacity:.7;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:2em;z-index:1}.splide__arrow svg{fill:#000;height:1.2em;width:1.2em}.splide__arrow:hover:not(:disabled){opacity:.9}.splide__arrow:disabled{opacity:.3}.splide__arrow:focus-visible{outline:3px solid #0bf;outline-offset:0px}.splide__arrow--prev{left:1em}.splide__arrow--prev svg{transform:scaleX(-1)}.splide__arrow--next{right:1em}.splide.is-focus-in .splide__arrow:focus{outline:3px solid #0bf;outline-offset:3px}.splide__pagination{bottom:.5em;left:0;padding:0 1em;position:absolute;right:0;z-index:1}.splide__pagination__page{background:#ccc;border:0;border-radius:50%;display:inline-block;height:8px;margin:3px;opacity:.7;padding:0;position:relative;transition:transform .2s linear;width:8px}.splide__pagination__page.is-active{background:#fff;transform:scale(1.4);z-index:1}.splide__pagination__page:hover{cursor:pointer;opacity:.9}.splide__pagination__page:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__pagination__page:focus{outline:3px solid #0bf;outline-offset:3px}.splide__progress__bar{background:#ccc;height:3px}.splide__slide{-webkit-tap-highlight-color:rgba(0,0,0,0)}.splide__slide:focus{outline:0}@supports(outline-offset:-3px){.splide__slide:focus-visible{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide__slide:focus-visible{border:3px solid #0bf}}@supports(outline-offset:-3px){.splide.is-focus-in .splide__slide:focus{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide.is-focus-in .splide__slide:focus{border:3px solid #0bf}.splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{border-color:#0bf}}.splide__toggle{cursor:pointer}.splide__toggle:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__toggle:focus{outline:3px solid #0bf;outline-offset:3px}.splide__track--nav>.splide__list>.splide__slide{border:3px solid transparent;cursor:pointer}.splide__track--nav>.splide__list>.splide__slide.is-active{border:3px solid #000}.splide__arrows--rtl .splide__arrow--prev{left:auto;right:1em}.splide__arrows--rtl .splide__arrow--prev svg{transform:scaleX(1)}.splide__arrows--rtl .splide__arrow--next{left:1em;right:auto}.splide__arrows--rtl .splide__arrow--next svg{transform:scaleX(-1)}.splide__arrows--ttb .splide__arrow{left:50%;transform:translate(-50%)}.splide__arrows--ttb .splide__arrow--prev{top:1em}.splide__arrows--ttb .splide__arrow--prev svg{transform:rotate(-90deg)}.splide__arrows--ttb .splide__arrow--next{bottom:1em;top:auto}.splide__arrows--ttb .splide__arrow--next svg{transform:rotate(90deg)}.splide__pagination--ttb{bottom:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;left:auto;padding:1em 0;right:.5em;top:0}

/* -- Slide -- */
.cg-ugc__slide {
  position: relative;
  width: 100%; 
}

/* -- Preview Images -- */
.cg-ugc__slide .cg-ugc__preview {
  pointer-events: none;
  object-fit: cover;
  width: 100%;
  height: 100%;
  pointer-events: none; 
}
.cg-ugc__preview img {
  width: 100%;
}
.cg-ugc__thumbnail {
  width: 100%;
  display: block;
  position: relative;
  cursor: pointer;
  padding: 5px;  
}
.cg-ugc__thumbnail picture {
  height: 100%;
  width: 100%;
  display: block;
  padding-top: 10px;
  margin-bottom: 10px;
  cursor: pointer;  
  transition: transform .2s;
}
.cg-ugc__thumbnail picture img {
    border-radius: 6px;
}
.cg-ugc__thumbnail:hover picture {
  transform: scale(1.02);
}

/* -- Play icon -- */
.cg-ugc__playIcon {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 36px;
  height: 36px;
  background: rgba(0,0,0,0.5);
  border-radius: 50%;
  pointer-events: none;  
}
.cg-ugc__playIcon svg {
  width: 20px;
  height: 20px;
  fill: #fff;
}

/* -- Caption -- */
.cg-ugc__previewCaption {
    padding: 0 10px;
    text-align: center;
    font-size: clamp(0.875rem, 0.748rem + 0.4065vw, 1rem); /* 14-16 */
    text-wrap: pretty;
    line-height: 1.4;
}

/* -- Modal -- */
.cg-ugc__micromodal-slide {
  display: none;
}
.cg-ugc__micromodal-slide.is-open {
  display: block;
}
.cg-ugc__modal.is-open {
  display: flex;
}
.cg-ugc__modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: -1;
}
.cg-ugc__modalContainer {
  display: flex;
  align-items: center;
}

/* -- Modal Header -- */
.cg-ugc__modal__header {
  position: absolute;
  top: 15px;
  left: 15px;
  z-index: 1;
}
.cg-ugc__modal__close {
  display: flex;
  justify-content: center;
  align-items: center;
  border: none;
  color: white;
  cursor: pointer;
  border-radius: 50%;
  width: 44px;
  height: 44px;
  backdrop-filter: blur(4px);
  background-color: #ffffff1a;
}
.cg-ugc__modal__close svg {
  width: 24px;
  height: 24px;
}

/* -- Fullscreen -- */
.cg-ugc__modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.9);
  z-index: 1000;
  justify-content: center;
  align-items: center;
}
.cg-ugc__modalWrapper {
  display: flex;
  width: 100%;
  height: 100%;
  flex-direction: row;
  overflow: hidden;
}
.cg-ugc__modalContainer {
  display: flex;
  width: 100%;
  height: 100%;
  flex-direction: row;
  align-items: stretch;
}

/* -- Video Section - */
.cg-ugc__modalPlayer {
  width: 75%;
  height: 100vh;
  background-color: black;  
}
.cg-ugc__modalPlayer media-player {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cg-ugc__modalPlayer media-player video {
  height: 100%;
}

/* -- Vidstack -- */
.cg-ugc__container [data-media-player][data-layout=video]:not([data-fullscreen]) {
  border: none;
  border-radius: 0;
}
.ccg-ugc__container .vds-controls {
  border-radius: 0;
}

/* -- Modal Content Section -- */
.cg-ugc__productContent {
  width: 25%;
  height: 100vh;
  background-color: #fff;
  padding: 1.5rem;
  overflow-y: auto;
  box-sizing: border-box;
  display: flex;
  flex-direction: column; 
}
.cg-ugc__modalContent {
  width: 100vw;
  display: flex;
}
.cg-ugc__productContent {
  line-height: 1.5;
}
.cg-ugc__productCard-image img {
  height: auto;
  width: auto;
  display: block;
  max-width: 150px;
  max-height: 150px;
}
.cg-ugc__productCard-image {
  margin-bottom: 1rem;
}
.cg-ugc__productCard-title {
  font-size: 20px;
  font-weight: 700;
}
.cg-ugc__productCard-price {
  font-size: 16px;
}
.cg-ugc__productCard-cta {
  width: 100%;
  background: #111;
  color: #fff;
  padding: 16px 20px;
  border: none;
  font-size: 16px;
  font-weight: 700;
  border-radius: 4px;
  cursor: pointer;
  margin: 0.75rem 0 1.5rem 0;
}
.cg-ugc__productCard-image img {
  height: auto;
  width: auto;
  display: block;
  max-width: 150px;
  max-height: 150px;
}
.cg-ugc__additionalContent-description {
  color: #323232;
  font-size: 14px;
}

/* -- Modal Arrows -- */
.cg-ugc__modal .splide__arrows {
  position: absolute;
  left: 75%;
  top: 0px;
  bottom: auto;
  margin-left: -40px;
  height: calc(100dvh - 140px);    
}
.cg-ugc__modal .splide__arrows--ttb .splide__arrow--prev {
  margin-top: -3.25em;
  top: 50%;
}
.cg-ugc__modal .splide__arrows--ttb .splide__arrow--next {
  margin-bottom: -3.25em;
  top: 50%;
}
.cg-ugc__modal .splide__arrow {
  backdrop-filter: blur(4px);
  background-color: #ffffff1a;
  width: 2.5em;
  height: 2.5em;
}
.cg-ugc__modal .splide__arrow svg {
  fill: none;
  stroke: #fff;
  width: 20px;
  height: 20px;
}
.cg-ugc__modal .splide__arrows--ttb .splide__arrow--prev svg,
.cg-ugc__modal .splide__arrows--ttb .splide__arrow--next svg {
  transform: none;
}

/* -- Mobile -- */
@media (max-width: 992px) {

  /* Play icon */
  .cg-ugc__playIcon {
    width: 28px;
    height: 28px;
  }
  .cg-ugc__playIcon svg {
    width: 16px;
    height: 16px;
  }

  /* Modal grid */
  .cg-ugc__modalContent {
    flex-direction: column;
  }
  .cg-ugc__modalPlayer {
    width: 100%;
    height: calc(100dvh - 142px);
  }
  .cg-ugc__productContent {
    width: 100%;
    height: auto;
    padding: 15px;
    background-color: #eee;
  }

  /* Modal video */
  .cg-ugc__modalPlayer media-player video {
    width: 100%;
    object-fit: cover;
  }

  /* Modal arrows */
  .cg-ugc__modal .splide__arrows {
    left: 100%;
    margin-left: -30px;
  }

  /* Modal product */
  .cg-ugc__additionalContent {
    display: none;
  }
  .cg-ugc__productCard {
    display: flex;
    height: 115px;
  }
  .cg-ugc__productCard-image {
    width: 100px;
    border-radius: 4px;
    flex-shrink: 0;
    margin: 0;
  }
  .cg-ugc__productCard img {
    border-radius: 4px 0 0 4px;
    height: 100%;
    max-height: 100%;
    object-fit: cover;
  }
  .cg-ugc__productCard-title {
    font-size: 13px;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* Number of lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .cg-ugc__productCard-price {
    font-size: 13px;
    margin-bottom: 0.25rem;
  }
  .cg-ugc__productCard-details {
    width: 100%;
    display: flex;
    flex-direction: column;
    background-color: #fff;
    border-radius: 0 4px 4px 0;
    padding: 10px;
  }
  .cg-ugc__productCard-cta {
    margin: 0;
    margin-top: auto;
    font-size: 13px;
    padding: 8px;
  }

}








/* Video.js Custom Theme Styles */

/*
.cg-ugc__modalPlayer {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 300px;
  background: #000;
}

*/

/* Base player styles */
.video-js {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

/* Custom skin modifications */
.video-js .vjs-control-bar {
  background-color: rgba(0, 0, 0, 0.7);
  height: 3.5em;
}

.video-js .vjs-big-play-button {
  background-color: rgba(0, 0, 0, 0.6);
  border: none;
  border-radius: 50%;
  height: 3em;
  width: 3em;
  line-height: 3em;
  margin-left: -1.5em;
  margin-top: -1.5em;
}

/*
.video-js .vjs-big-play-button:hover {
  background-color: rgba(0, 0, 0, 0.8);
}

.video-js .vjs-progress-holder {
  height: 0.5em;
}

.video-js .vjs-progress-control:hover .vjs-progress-holder {
  height: 0.7em;
}

.video-js .vjs-play-progress {
  background-color: #fff;
}

*/

/* Button icons */

/*
.video-js .vjs-play-control {
  font-size: 1.5em;
}

.video-js .vjs-volume-panel {
  margin-right: 1em;
}

*/

/* Loading spinner */

/*
.vjs-loading-spinner {
  border: 3px solid rgba(255, 255, 255, 0.7);
}

*/

/* Responsive adjustments */

/*
@media (max-width: 768px) {
  .cg-ugc__modalPlayer {
    min-height: 200px;
  }

  .video-js .vjs-control-bar {
    height: 3em;
  }

  .video-js .vjs-big-play-button {
    height: 2.5em;
    width: 2.5em;
    line-height: 2.5em;
    margin-left: -1.25em;
    margin-top: -1.25em;
  }

 

} */

/* Modal specific adjustments */

/*
.cg-ugc__modal .video-js {
  max-height: 80vh;
}

*/

/* Fullscreen mode adjustments */

/*
.video-js.vjs-fullscreen {
  max-height: none;
}

*/

/*
.cg-ugc__modalPlayer {
  overflow: hidden;
}
  */

.video-js.vjs-fluid:not(.vjs-audio-only-mode) {
  height: 100% !important;
}

.cg-ugc__unmute-button {
  position: absolute;
  
  background: rgba(0, 0, 0, 0.7);
  color: white;
  border: none;
  
  cursor: pointer;
  z-index: 2;
  font-size: 14px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

  width: 120px;
  height: 120px;
  
  justify-content: center;
  align-items: center;
  backdrop-filter: blur(4px);
    background-color: #ffffff1a;
    border-radius: 50%;

    /*display: flex;*/
    display: none; /* Hidden by default, shown on mobile via flex when muted */
}

.cg-ugc__unmute-button svg {
  width: 60px;
  height: 60px;
  fill: #fff;
}

/*
.cg-ugc__unmute-button:hover {
  background: rgba(0, 0, 0, 0.9);
}
  */

.cg-ugc__modalPlayer {
  position: relative;
}

.video-js.vjs-default-skin .vjs-big-play-button { display: none; }