.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}

/**************************\
  Basic Modal sample Styles
  https://gist.github.com/ghosh/4f94cf497d7090359a5c9f81caf60699
\**************************/

.modal {
    font-family: -apple-system,BlinkMacSystemFont,avenir next,avenir,helvetica neue,helvetica,ubuntu,roboto,noto,segoe ui,arial,sans-serif;
  }
  /*
  .modal__overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.6);
    display: flex;
    justify-content: center;
    align-items: center;

    z-index: 2138902;
  }
  
  .modal__container {
   
  
    box-sizing: border-box;

    width: 100vw;
    height: 100vh;
  }
  */
  .modal__header {
    
    z-index: 1;
    
  }
  
  
  
  .modal__close {
    background: transparent;
    border: 0;
  }

  .modal__close svg {
    width: 24px;
    height: 24px;
  }
  
  /*
  .modal__content {
    margin-top: 2rem;
    margin-bottom: 2rem;
    line-height: 1.5;
    color: rgba(0,0,0,.8);
  }
  
  .modal__btn {
    font-size: .875rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: .5rem;
    padding-bottom: .5rem;
    background-color: #e6e6e6;
    color: rgba(0,0,0,.8);
    border-radius: .25rem;
    border-style: none;
    border-width: 0;
    cursor: pointer;
    -webkit-appearance: button;
    text-transform: none;
    overflow: visible;
    line-height: 1.15;
    margin: 0;
    will-change: transform;
    -moz-osx-font-smoothing: grayscale;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    transition: -webkit-transform .25s ease-out;
    transition: transform .25s ease-out;
    transition: transform .25s ease-out,-webkit-transform .25s ease-out;
  }
  
  .modal__btn:focus, .modal__btn:hover {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
  
  .modal__btn-primary {
    background-color: #00449e;
    color: #fff;
  }
  */
  
  
  /**************************\
    Demo Animation Style
  \**************************/

  /*
  @keyframes mmfadeIn {
      from { opacity: 0; }
        to { opacity: 1; }
  }
  
  @keyframes mmfadeOut {
      from { opacity: 1; }
        to { opacity: 0; }
  }
  
  @keyframes mmslideIn {
    from { transform: translateY(15%); }
      to { transform: translateY(0); }
  }
  
  @keyframes mmslideOut {
      from { transform: translateY(0); }
      to { transform: translateY(-10%); }
  }

  */
  
  .micromodal-slide {
    display: none;
  }
  
  .micromodal-slide.is-open {
    display: block;
  }
  

  /*
  .micromodal-slide[aria-hidden="false"] .modal__overlay {
    animation: mmfadeIn .3s cubic-bezier(0.0, 0.0, 0.2, 1);
  }
  
  .micromodal-slide[aria-hidden="false"] .modal__container {
    animation: mmslideIn .3s cubic-bezier(0, 0, .2, 1);
  }
  
  .micromodal-slide[aria-hidden="true"] .modal__overlay {
    animation: mmfadeOut .3s cubic-bezier(0.0, 0.0, 0.2, 1);
  }
  
  .micromodal-slide[aria-hidden="true"] .modal__container {
    animation: mmslideOut .3s cubic-bezier(0, 0, .2, 1);
  }
  
  .micromodal-slide .modal__container,
  .micromodal-slide .modal__overlay {
    will-change: transform;
  }

  */
  
  
  
  

  



  .cg-shoppable-video-wrapper picture {
    height: 100%;
    width: 100%;
    display: block;
}


/* -- Slide -- */
.cg-shoppable__slide {
    position: relative;
    width: 100%;
    /*height: fit-content;
    aspect-ratio: 9/16;*/
    /*overflow: hidden;*/
}

/* -- Preview Images -- */
.cg-shoppable__slide .cg-shoppable-preview {
   /* position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;*/
   
    pointer-events: none;  
}

.cg-shoppable-preview img {
    width: 100%;
}

.cg-shoppable-preview {
    visibility: visible;
    opacity: 1;
    transition: opacity 0.3s ease;
}


.cg-shoppable__slide .cg-shoppable-preview {
    pointer-events: none;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

/* -- Captions -- */
.cg-shoppable__meta {
    box-sizing: border-box;
    padding: 1rem;
    background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.46), rgba(0, 0, 0, 0.8));
    background-size: 100% 100%;
    bottom: 0px;
    left: 0px;
    margin: 0px;
    min-height: 30%;
    position: absolute;
    width: 100%;
    display: flex;
    align-items: flex-end;
    z-index: 10;
    font-size: 20px;
    font-weight: 600;
    color: #fff;
    transition: opacity 0.25s;
}



.cg-shoppable-play-pause-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 36px;
    height: 36px;
    background: rgba(0,0,0,0.5);
    border: none;
    padding: 0;
    margin: 0;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: none;

    
}
.cg-shoppable-play-icon {
    width: 20px;
    height: 20px;
    fill: #fff;
}

.cg-shoppable-thumbnail picture {
    transition: transform .2s;
    padding-top: 10px;
    margin-bottom: 10px;
    cursor: pointer;

  
    
}

.cg-shoppable-thumbnail picture img {
    border-radius: 6px;
}

.cg-shoppable-thumbnail {
    cursor: pointer;
    padding: 5px;
    
}

figcaption {
    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;
}

.cg-shoppable-thumbnail:hover picture {
transform: scale(1.02);
}



.modal-content {
    display: flex;
    /*flex-direction: column;*/
    align-items: center;
  }
  .modal-slide {
    max-width: 100%;
    max-height: 100vh;
    margin: 0 auto;
  }
  .modal-navigation {
    display: flex;
    justify-content: space-between;
    width: 100%;
  }

/*
  .cg-shoppable--modalContent {
    display: flex;
  }

  .cg-shoppable--modalPlayer {
    width: 75vw;
  }

  .cg-shoppable--productContent {
    width: 25vw;
    background: green;
  }*/


/* Fullscreen Modal Styling */
.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;
  }
  
  .modal.is-open {
    display: flex;
  }
  
  .modal__overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    z-index: -1;
  }
  
  .modal__container {
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: row;
    overflow: hidden;
  }
  
  .modal__header {
    position: absolute;
    top: 15px;
    left: 15px;
   
  }
  
  .modal__close {
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    color: white;
    
    cursor: pointer;
    background: #444;
    border-radius: 50%;
    /* padding: 10px; */
    width: 44px;
    height: 44px;

    backdrop-filter: blur(4px);
        background-color: #ffffff1a;
  }
  
  .modal-content {
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: row;
    align-items: stretch;
  }
  
  /* Video Section */
  .cg-shoppable--modalPlayer {
    width: 75%; /* 75% of the modal's width */
    height: 100vh; /* Full height of the modal */
    background-color: black; 
    
  }
  
  .cg-shoppable--modalPlayer media-player {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .cg-shoppable--modalPlayer media-player video {
    height: 100%;
  }
  
  /* Product Content Section */
  .cg-shoppable--productContent {
    width: 25%; /* 25% of the modal's width */
    height: 100vh; /* Full height of the modal */
    background-color: #fff;
    padding: 1.5rem;
    overflow-y: auto;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    
  }
  
  .cg-shoppable--productContent h2,
  .cg-shoppable--productContent p {
    margin: 0;
    padding: 0.5rem 0;
  }
  


  .cg-shoppable--modalContent {
    width: 100vw;
    display: flex;
  }


  .modal .splide__arrows {
    position: absolute;
    left: 75%;
    height: 100%;
    top: auto;
    bottom: auto;
    margin-left: -40px;
    margin-top: -30px;
    
  }

  .modal .splide__arrows--ttb .splide__arrow--prev {
    margin-top: -2.75em;
    top: 50%;
  }

  .modal .splide__arrows--ttb .splide__arrow--next {
    margin-bottom: -2.75em;
    top: 50%;
  }

  .cg-shoppable--productContent {
    line-height: 1.5;
  }

  .cg-shoppable--productCard-image {
    margin-bottom: 1rem;
  }

  .cg-shoppable--productCard-title {
    font-size: 20px;
    font-weight: 700;
  }

  .cg-shoppable--productCard-price {
    font-size: 16px;
  }

  .cg-shoppable--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-shoppable--productCard-image img {
    height: auto;
    width: auto;
    display: block;
    max-width: 150px;
    max-height: 150px;
  }

  .cg-shoppable--productContent-description {
    color: #323232;
    font-size: 14px;
    
  }

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

media-cast-button {
    --cast-button-display: none;
}

/*video::-internal-media-controls-overlay-cast-button { display: none; }*/


  /* Mobile */

  @media (max-width: 850px) {

   

    .cg-shoppable--modalPlayer media-player video {
        
        width: 100%;
        object-fit: cover;
    }

    .modal .splide__arrows {
        left: 100%;
        margin-top: -90px;
       
    }

    .cg-shoppable--modalContent {
        
        flex-direction: column;
    }

    .cg-shoppable--modalPlayer {
        width: 100%;
        height: calc(100dvh - 140px);
    }
    .cg-shoppable--productContent {
        width: 100%;
        height: auto;
        padding: 15px;
        background-color: #eee;
    }

    .cg-shoppable--productContent-additional {
        display: none;
    }

  .cg-shoppable--productCard {
    display: flex;
    height: 115px;
  }

  .cg-shoppable--productCard-image {
  }

  .cg-shoppable--productCard-image {
    width: 100px;
    
    border-radius: 4px;
    flex-shrink: 0;
    margin: 0;
  }

  .cg-shoppable--productCard-image img {
    border-radius: 4px 0 0 4px;
    height: 100%;
    max-height: 100%;
    object-fit: cover;
  }

  .cg-shoppable--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-shoppable--productCard-price {
    font-size: 13px;
    margin-bottom: 0.25rem;
  }

  .cg-shoppable--productCard-details {
    width: 100%;
    display: flex;
    flex-direction: column;
    background-color: #fff;
    border-radius: 0 4px 4px 0;
    padding: 10px;
  }

  .cg-shoppable--productCard-cta {
    margin: 0;
    margin-top: auto;
    font-size: 13px;
    padding: 8px;
  }
 
}




.modal__thumbnails {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 1rem;
}

#modal-thumbnail-carousel .splide__list {
    display: flex;
    flex-direction: column; /* Ensure thumbnails stack vertically */
    align-items: center;
}