/**
 * 2018 - 2023 L'nkboot
 * module lnk_pagebuilder
 *
 * @author    L'nkboot  <contact@lnkboot.fr>
 * @copyright 2018 - 2023 L'nkboot
 * @license   commercial
 * @version   2.1.0 from 2023/11/01
 */
 
html:root{
    --scrollbar-width: 17px;
}

.position-relative{
    position: relative;
}

.modal-open{
    overflow: hidden;
}

/* #footer{
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    padding-left: calc(0.5 * var(--bs-gutter-x));
    padding-right: calc(0.5 * var(--bs-gutter-x));
    padding-top: 0;
} */

.word-break, .word-break * {
    word-break: break-word;
}

.stretch_row, .stretch_row_no_spaces, .stretch_row_content{
    position: relative;
    width: calc(100vw - var(--scrollbar-width));
    right: 50%;
    left: 50%;
    margin-left: calc(-50vw + var(--scrollbar-width)/2);
    margin-right: calc(-50vw + var(--scrollbar-width)/2);
}

.pagebuilder_group::after {
    content: "";
    display: none;
    clear: both;
}
.pagebuilder_group .full-img{
    position: relative;
}
.pagebuilder_group .full-img img{
    object-fit: cover;
    min-width: 100%;
    background-repeat: no-repeat;
    background-position: center;
    height: 100%;
    max-width: 100%;
}
.pagebuilder_group .info-img{
    position: absolute;
    display: block;
    vertical-align: middle;
    color: #fff;
    bottom: 20%;
    padding: 0 65px;
}

.pagebuilder_group .info-img .title-img{
    font-weight: 400;
    display: block;
    font-size: calc(1rem + .8vw);
    margin: 0;
    text-transform: initial;
    margin-bottom: 0.14rem;
}

.pagebuilder_group .info-img .content-img{
    color: #fff;
    font-weight: 300;
    font-size: 24px;
    margin-bottom: 0;
    position: relative;
    display: inline-block;
}

.pagebuilder_group .pb-block-video{
    position: relative;
}

.pagebuilder_group .pb-block-video video{
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
}

.imagebundle{
    cursor: pointer;
}

.contentimagebundle{
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    position:fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: #fff;
    z-index: 1099;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
}
.container-imagebundle{
    width: 100vw;
    height: 100vh;
    display: block;
    overflow: hidden;
    position: relative;
}
.container-imagebundle .container-block{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    overflow: hidden;
    padding: 30px;
}
.container-imagebundle .container-block .image-container {
    height: 100%;
}

.container-imagebundle .container-block .image-container img {
    height: 100%;
    width: auto;
}

.container-imagebundle .container-block .products-container {
    overflow: hidden auto;
    height: 100%;
}

.close-imagebundle{
    position: absolute;
    right: 10px;
    top: 10px;
    cursor: pointer;
    z-index: 9999;
}

.lds-ripple {
    display: inline-block;
    position: relative;
    width: 80px;
    height: 80px;
  }
  .lds-ripple div {
    position: absolute;
    border: 4px solid rgb(156, 156, 156);
    opacity: 1;
    border-radius: 50%;
    animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;
  }
  .lds-ripple div:nth-child(2) {
    animation-delay: -0.5s;
  }
  @keyframes lds-ripple {
    0% {
      top: 36px;
      left: 36px;
      width: 0;
      height: 0;
      opacity: 1;
    }
    100% {
      top: 0px;
      left: 0px;
      width: 72px;
      height: 72px;
      opacity: 0;
    }
}
  
@media (max-width: 991.98px) {
    .container-imagebundle .container-block .image-container {
        display: none;
    }
    .container-imagebundle .container-block{
        padding: 55px 0 30px;
    }
    .close-imagebundle{
        right: 15px;
    }
}

@media (max-width: 767.98px) {
    .container-imagebundle .container-block{
        padding: 55px 0 30px;
    }
    .close-imagebundle{
        right: 15px;
    }
}

.img-100 img,
.img-100{
    object-fit: cover;
    min-width: 100%;
}

.storie__item {
    min-width: 74px;
    width: 90px;
    margin: 0 10px;
    padding: 0;
    position: relative;
    margin-bottom: 10px;
    text-align: center;
}

.storie__link {
    cursor: pointer;
}

.storie__thumbnail {
    box-sizing: border-box;
    display: block;
    padding: 4px;
    border-radius: 50%;
    border: 1px solid transparent;
    overflow: hidden;
    -webkit-transition: border-color 0.6s ease;
    -ms-transition: border-color 0.6s ease;
    transition: border-color 0.6s ease;
    margin-bottom: 8px;
}

.storie__item:hover .storie__thumbnail{
    border-color: #212121;
}

.img_thumbnail,
.storie__img {
    width: 100%;
    height: auto;
    border-radius: 50% !important;
    border: 0.5px solid #d8d8d8;
}
.img_thumbnail{
    display:block;
}

.storie__name {
    color: #212121 !important;
    white-space: break-spaces;
    line-height: 1.4;
    text-transform: capitalize;
    word-break: break-word;
    font-size: 11px;
}
.stories-grid {
    flex-wrap: wrap;
}

.video-responsive video{
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    z-index: 999;
}


.shoppableimage-bundle{
    position: relative;
}

.shoppableimage-bundle .shoppableimage-mark{
    transition: border-color 250ms ease-in-out,opacity 250ms ease-in-out,visibility 250ms ease-in-out;
    transform: translateX(-1rem) translateY(-1rem) scale(0.999);
    padding: 0;
    width: 2rem;
    height: 2rem;
    border: 2px solid transparent;
    position: absolute;
    background: rgba(0,0,0,.2);
    border-radius: 64px;
    line-height: .5;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.shoppableimage-bundle .shoppableimage-mark:after {
    content: "";
    transition: transform 250ms ease-in-out;
    position: relative;
    display: block;
    background: #fff;
    box-shadow: 0 1px 4px rgb(0 0 0 / 55%);
    width: 0.75rem;
    height: 0.75rem;
    border-radius: 64px;
}
.shoppableimage-bundle .shoppableimage-mark:before {
    content: "";
    position: absolute;
    top: -0.5rem;
    left: -0.5rem;
    right: -0.5rem;
    bottom: -0.5rem;
    display: block;
}

.shoppableimage-bundle .shoppableimage-mark:hover:after {
    transform: scale(0.667);
}
.shoppableimage-bundle .shoppableimage-mark:hover:after {
    background: #fff;
    box-shadow: 0 1px 4px rgb(0 0 0 / 80%);
    border:1px solid  rgba(255,255,255,.5);
}

.shoppableimage-bundle .shoppableimage-mark:hover {
    border:1px solid  rgba(255,255,255,.5);
}

.shoppableimage-nameproduct{
    display: block;
    font-size: 12px;
    margin-bottom: 10px;
}

.modal-body .btn-close{
    padding: 5px;
    color: #000;
    background: white;
    position: absolute;
    right: -40px;
    top: 0px;
    cursor: pointer;
    border: 0;
    display: block;
    padding-bottom: 1px;
    border-radius: 5px;
}

.pb-active-son {
    position: absolute;
    right: 1rem;
    top: 2rem;
    color: #000;
    font-size: 1.5rem;
    background: rgb(255 255 255 / 30%);
    border-radius: 50%;
}

.pb-active-son:focus{
    outline: 0;
}

.pb-active-son i.muted-icon {
    width: 22.3px;
    height: 36px;
    background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1NzYgNTEyIj48IS0tISBGb250IEF3ZXNvbWUgUHJvIDYuMS4yIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChDb21tZXJjaWFsIExpY2Vuc2UpIENvcHlyaWdodCAyMDIyIEZvbnRpY29ucywgSW5jLiAtLT48cGF0aCBkPSJNMzAxLjIgMzQuODVjLTExLjUtNS4xODgtMjUuMDItMy4xMjItMzQuNDQgNS4yNTNMMTMxLjggMTYwSDQ4Yy0yNi41MSAwLTQ4IDIxLjQ5LTQ4IDQ3LjF2OTUuMWMwIDI2LjUxIDIxLjQ5IDQ3LjEgNDggNDcuMWg4My44NGwxMzQuOSAxMTkuOWM1Ljk4NCA1LjMxMiAxMy41OCA4LjA5NCAyMS4yNiA4LjA5NGM0LjQzOCAwIDguOTcyLS45Mzc1IDEzLjE3LTIuODQ0YzExLjUtNS4xNTYgMTguODItMTYuNTYgMTguODItMjkuMTZWNjRDMzE5LjEgNTEuNDEgMzEyLjcgNDAgMzAxLjIgMzQuODV6TTUxMy45IDI1NS4xbDQ3LjAzLTQ3LjAzYzkuMzc1LTkuMzc1IDkuMzc1LTI0LjU2IDAtMzMuOTRzLTI0LjU2LTkuMzc1LTMzLjk0IDBMNDgwIDIyMi4xTDQzMi4xIDE3NWMtOS4zNzUtOS4zNzUtMjQuNTYtOS4zNzUtMzMuOTQgMHMtOS4zNzUgMjQuNTYgMCAzMy45NGw0Ny4wMyA0Ny4wM2wtNDcuMDMgNDcuMDNjLTkuMzc1IDkuMzc1LTkuMzc1IDI0LjU2IDAgMzMuOTRjOS4zNzMgOS4zNzMgMjQuNTYgOS4zODEgMzMuOTQgMEw0ODAgMjg5LjlsNDcuMDMgNDcuMDNjOS4zNzMgOS4zNzMgMjQuNTYgOS4zODEgMzMuOTQgMGM5LjM3NS05LjM3NSA5LjM3NS0yNC41NiAwLTMzLjk0TDUxMy45IDI1NS4xeiIvPjwvc3ZnPg==) no-repeat;
    display: block;
    background-size: 22px;
    padding: 0.3rem;
    background-position: center;
}

.pb-active-son.on i.muted-icon {
    background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NDAgNTEyIj48IS0tISBGb250IEF3ZXNvbWUgUHJvIDYuMS4yIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChDb21tZXJjaWFsIExpY2Vuc2UpIENvcHlyaWdodCAyMDIyIEZvbnRpY29ucywgSW5jLiAtLT48cGF0aCBkPSJNNDEyLjYgMTgyYy0xMC4yOC04LjMzNC0yNS40MS02Ljg2Ny0zMy43NSAzLjQwMmMtOC40MDYgMTAuMjQtNi45MDYgMjUuMzUgMy4zNzUgMzMuNzRDMzkzLjUgMjI4LjQgNDAwIDI0MS44IDQwMCAyNTUuMWMwIDE0LjE3LTYuNSAyNy41OS0xNy44MSAzNi44M2MtMTAuMjggOC4zOTYtMTEuNzggMjMuNS0zLjM3NSAzMy43NGM0LjcxOSA1LjgwNiAxMS42MiA4LjgwMiAxOC41NiA4LjgwMmM1LjM0NCAwIDEwLjc1LTEuNzc5IDE1LjE5LTUuMzk5QzQzNS4xIDMxMS41IDQ0OCAyODQuNiA0NDggMjU1LjFTNDM1LjEgMjAwLjQgNDEyLjYgMTgyek00NzMuMSAxMDguMmMtMTAuMjItOC4zMzQtMjUuMzQtNi44OTgtMzMuNzggMy4zNGMtOC40MDYgMTAuMjQtNi45MDYgMjUuMzUgMy4zNDQgMzMuNzRDNDc2LjYgMTcyLjEgNDk2IDIxMy4zIDQ5NiAyNTUuMXMtMTkuNDQgODIuMS01My4zMSAxMTAuN2MtMTAuMjUgOC4zOTYtMTEuNzUgMjMuNS0zLjM0NCAzMy43NGM0Ljc1IDUuNzc1IDExLjYyIDguNzcxIDE4LjU2IDguNzcxYzUuMzc1IDAgMTAuNzUtMS43NzkgMTUuMjItNS40MzFDNTE4LjIgMzY2LjkgNTQ0IDMxMyA1NDQgMjU1LjFTNTE4LjIgMTQ1IDQ3My4xIDEwOC4yek01MzQuNCAzMy40Yy0xMC4yMi04LjMzNC0yNS4zNC02Ljg2Ny0zMy43OCAzLjM0Yy04LjQwNiAxMC4yNC02LjkwNiAyNS4zNSAzLjM0NCAzMy43NEM1NTkuOSAxMTYuMyA1OTIgMTgzLjkgNTkyIDI1NS4xcy0zMi4wOSAxMzkuNy04OC4wNiAxODUuNWMtMTAuMjUgOC4zOTYtMTEuNzUgMjMuNS0zLjM0NCAzMy43NEM1MDUuMyA0ODEgNTEyLjIgNDg0IDUxOS4yIDQ4NGM1LjM3NSAwIDEwLjc1LTEuNzc5IDE1LjIyLTUuNDMxQzYwMS41IDQyMy42IDY0MCAzNDIuNSA2NDAgMjU1LjFTNjAxLjUgODguMzQgNTM0LjQgMzMuNHpNMzAxLjIgMzQuOThjLTExLjUtNS4xODEtMjUuMDEtMy4wNzYtMzQuNDMgNS4yOUwxMzEuOCAxNjAuMUg0OGMtMjYuNTEgMC00OCAyMS40OC00OCA0Ny45NnY5NS45MmMwIDI2LjQ4IDIxLjQ5IDQ3Ljk2IDQ4IDQ3Ljk2aDgzLjg0bDEzNC45IDExOS44QzI3Mi43IDQ3NyAyODAuMyA0NzkuOCAyODggNDc5LjhjNC40MzggMCA4Ljk1OS0uOTMxNCAxMy4xNi0yLjgzNUMzMTIuNyA0NzEuOCAzMjAgNDYwLjQgMzIwIDQ0Ny45VjY0LjEyQzMyMCA1MS41NSAzMTIuNyA0MC4xMyAzMDEuMiAzNC45OHoiLz48L3N2Zz4=) no-repeat;
    background-size: 22px;
    background-position: center;
}

.slide-portfolio .element__img{
    max-width: 100%;
}

.slide-portfolio .filter__link{
    font-size: 13px;
    line-height: 21px;
    text-decoration: none;
    color: #000;
    transition: all 0.3s ease-in-out;
    position: relative;
}
.slide-portfolio .filter__link:after{
    content: "";
    border-bottom: 1px solid #000;
    width: 0;
    transition: all 0.3s ease-in-out;
    position: absolute;
    bottom: 2px;
    left: 0;
}
.slide-portfolio .filter__link:hover,
.slide-portfolio .filter__link.active{
    font-weight: 700;
}

.slide-portfolio .filter__link.active:after,
.slide-portfolio .filter__link:hover:after
{
    width: 100%;
}

.slide-portfolio .elements-slide .h3{
    font-size: 16px;
    line-height: 21px;
    color: #5E5E5E;
    font-weight: 400;
    margin-bottom: 0;
}

.slide-portfolio .elements-slide p{
    font-size: 13px;
    line-height: 21px;
    color: #5E5E5E;
}

.portfolio-carousel{
    margin-right: -15px;
    margin-left: -15px;
}
.modalproducts .modal-content{
    width: 100%;
}

.swiper-slide {
    width: 25%;
    height:auto;
}

.swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.swiper-button-next.swiper-button-disabled, 
.swiper-button-prev.swiper-button-disabled{
    display: none;
}

.masonry-slide{
    padding-left: 12px;
    padding-right: 12px;
}

/* accordion */
.accordion{
    border-bottom: 1px solid #d4d4d4;
}
.accordion .accordion-content{
    max-height: 0;
    overflow: hidden;
    transition: all .6s ease-in-out;
}
.accordion.active .accordion-content{
    max-height: 500px;
    overflow: hidden;
    padding: 15px;
}
.accordion .accordion-header{
    padding: 15px;
    cursor: pointer;
    line-height: 1;
    font-weight: 700;
    display: flex;
    align-items: center;
}

.accordion .accordion-header::before{
    content: "expand_more";
    margin-right: 10px;
    font-family: Material Icons;
    font-weight: 400;
    font-style: normal;
    display: inline-block;
    vertical-align: middle;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-feature-settings: "liga";
    font-feature-settings: "liga";
    font-size: 21px;
}

.accordion.active .accordion-header::before{
    content: "expand_less";
}

.info-img .pb-button-img{
    text-decoration: none;
}

@media (max-width: 1449.98px) {
    .pagebuilder_group .info-img {
        padding: 0 20px;
    }
}

@media (max-width: 991.98px) {
    .noslide-mobile .swiper-wrapper{
        display: block;
    }
}

@media (max-width: 767.98px) {
    .swiper-slide {
        width: 100%;
        height:auto;
    }
    .noslide-mobile .swiper-wrapper{
        display: block;
        width: 100vw;
        margin-left: -15px;
        overflow-y: auto;
        max-height: 600px;
    }

    .noslide-mobile{
        overflow: initial;
    }

    .noslide-mobile .swiper-slide p,
    .noslide-mobile .swiper-slide span.h3{
        padding-left: 25px;
        padding-right: 25px;
    }

    .noslide-mobile .swiper-wrapper::-webkit-scrollbar {
        height: 1px;
        width: 1px;
    }

    .noslide-mobile .swiper-wrapper::-webkit-scrollbar-thumb {
        background-color: rgba(0,0,0,.3);
        border-radius: 0;
    }

    .noslide-mobile .swiper-wrapper::-webkit-scrollbar-track {
        background-color: transparent;
    }

    .noslide-mobile .swiper-button-prev,
    .noslide-mobile .swiper-button-next{
        display: none;
    }

}
