.custom-gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.custom-gallery .gallery-item {
    width: calc(50% - 8px);
}
.custom-gallery img {
    max-width: 100%;
    height: auto;
    display: block;
}
.custom-video-modal {
    display: none;
    position: fixed;
    inset: 0;
    background-color: rgba(0,0,0,0.8);
    justify-content: center;
    align-items: center;
    z-index: 9999;
}
.custom-video-modal.active {
    display: flex;
}
.custom-video-modal video {
    max-width: 90vw;
    max-height: 80vh;
}
.close-video-modal {
    position: absolute;
    top: 10px;
    right: 20px;
    font-size: 30px;
    color: #fff;
    background: none;
    border: none;
    cursor: pointer;
}
.close-video-modal:hover,
.close-video-modal:focus{
    background-color: transparent;
}
.gallery-item.video-gallery-item{
    background-size: cover;
    background-position:center center;
    background-repeat: no-repeat;
}
.gallery-item.video-gallery-item img{
    opacity:0;
}
.elementor-nav-menu--main .elementor-nav-menu a,
.elementor-nav-menu--main .elementor-nav-menu a.highlighted,
.elementor-nav-menu--main .elementor-nav-menu a:focus,
.elementor-nav-menu--main .elementor-nav-menu a:hover{
    padding:13px 33px;
}
#navbar-mobile ul .e-n-menu-title-container{
    width: calc( 100% - 33px);
}
.custom-gallery.swiper-container {
    width: 100%;
    max-width: 100%;
    margin: auto;
}

.custom-gallery .swiper-slide img {
    width: 100%;
    height: auto;
    display: block;
}

.custom-gallery-mobile .swiper-slide {
    height: 300px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.custom-gallery-mobile .swiper-slide a,
.custom-gallery-mobile .swiper-slide img {
    height: 100%;
    width: auto;
    object-fit: contain;
}
.custom-gallery-mobile-pagination .swiper-pagination{
    position:relative;
    top:0;
    display:inline-block;
    width:auto;
    background-color:#F2F2F2;
    border-radius:12px;
    padding:0 10px;
}
.custom-gallery-mobile-pagination .swiper-pagination-bullet{
    width:8px;
    height:8px;
}

.custom-gallery-mobile-pagination .swiper-pagination-bullet{
    background-color: #6D6D6D;
    opacity:1;
}
.custom-gallery-mobile-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
    background-color: #98151A;
}

.elementor-element :where(.swiper-horizontal) ~ .custom-gallery-mobile-pagination .swiper-pagination-bullets .swiper-pagination-bullet,
.elementor-lightbox :where(.swiper-horizontal) ~ .custom-gallery-mobile-pagination .swiper-pagination-bullets .swiper-pagination-bullet{
    margin:0 4px;
}

.custom-gallery .gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;

    aspect-ratio: 1 / 1;
}
.custom-gallery .gallery-item {
    overflow: hidden;
    position: relative;
    aspect-ratio: 1 / 1;
}

.show-more-overlay {
    display:none;
}
.be-content {
    position: relative;
    cursor: default;
}

#timeline .timeline li .timeline-panel .be-desc > span{
    min-width:80px;
}
/*.woocommerce-cart .woocommerce{*/
/*    padding-left:30px;*/
/*    padding-right:30px;*/
/*}*/
li.wc_payment_method.payment_method_yith-paypal-ec label img{
    padding: 10px !important;
}
.woocommerce-cart .cross-sells ul.products{
    display:flex;
    gap: 0;
    margin:0;
}
.woocommerce-cart .cross-sells ul.products li.product{
    display:flex;
    justify-content: center;
    align-items: center;
    flex-direction:column;
    border: 1px solid #ddd;
    padding:15px;
}
.woocommerce-cart .cross-sells ul.products li.product:first-child{
    margin-right:5px;
}
.woocommerce-cart .cross-sells ul.products li.product:last-child{
    margin-left:5px;
}

.select2-container .select2-selection--single .select2-selection__rendered{
    padding: .9em;
}

@media (max-width:992px){
    .woocommerce-cart .cart-collaterals{
        display:flex;
        flex-direction:column;
    }
    .woocommerce-cart .cart-collaterals .cross-sells,
    .woocommerce-cart .cart-collaterals .cart_totals{
        width:100%;
    }

    .woocommerce table.shop_table_responsive tr td[data-title="Spedizione"],
    .woocommerce-page table.shop_table_responsive tr td[data-title="Spedizione"]{
        text-align:left !important;
    }
}
@media (max-width:600px){
    .woocommerce-cart .cross-sells ul.products{
        flex-direction:column;
    }
    .woocommerce-cart .cross-sells ul.products li.product{
        width:100%;
    }
    .woocommerce-cart .cross-sells ul.products li.product:first-child{
        margin-bottom:15px;
        margin-right:0;
    }
    .woocommerce-cart .cross-sells ul.products li.product:last-child{
        margin-left:0;
    }

    .woocommerce-cart table.cart td.actions .coupon button,
    .woocommerce-cart table.cart td.actions .coupon .input-text{
        float:none !important;
        width:100% !important;
        max-width:100% !important;
    }
    .woocommerce-cart table.cart td.actions .coupon .input-text{
        margin-bottom:5px;
    }
}

.woocommerce-cart .cross-sells ul.products li.product img{
    max-width:300px;
    max-height:300px;
    margin:0 auto;
}

.woocommerce-cart .cross-sells ul.products li.product a.button,
.woocommerce-cart .cross-sells ul.products li.product .onsale{
    display:none;
}

.woocommerce-cart .cross-sells ul.products li.product h2,
.woocommerce-cart .cross-sells ul.products li.product .price{
    font-family: "Montserrat", Sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 22px;
}

.woocommerce-cart .cross-sells ul.products li.product .price{
    color:#000;
}

.woocommerce-cart .shipping-calculator-form button{
    background-color: #98151A !important;
    font-weight: 500 !important;
    transition: background-color 0.3s ease;
    color:#fff !important;
    font-size:16px;
    border-radius:0;
    margin-top:15px;
}

.woocommerce-cart .woocommerce .quantity .qty{
    width:100px;
}
.woocommerce-cart table.cart td.actions .coupon .input-text{
    width:100%;
    max-width:200px;
}
.woocommerce-cart .woocommerce-cart-form button,
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order{
    background-color: #98151A !important;
    font-weight: 500 !important;
    transition: background-color 0.3s ease;
    color: #fff !important;
    font-size: 16px;
    border-radius: 0;
    text-decoration:none;
}

.woocommerce-cart .woocommerce-cart-form button:hover,
.woocommerce-cart .woocommerce-cart-form button:focus,
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order:hover,
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order:focus {
    text-decoration: underline;
    background-color: #6b0f12 !important;
}

@media (max-width: 768px) {
    .custom-gallery {
        display: none !important;
    }
    .custom-gallery-mobile{
        display: block !important;
    }
    .custom-gallery-mobile-pagination{
        display: flex !important;
        justify-content:center;
        align-items:center;
        padding-top: 10px;
    }
    .be-content {
        position: relative;
        cursor: pointer;
    }
    .show-more-overlay {
        display:block;
        position: absolute;
        bottom: 0;
        right: 0;
        background: linear-gradient(to right, transparent, white 50%);
        padding-left: 10px;
        font-weight: bold;
    }
}

@media (min-width: 769px) {
    .custom-gallery-mobile,
    .custom-gallery-mobile-pagination{
        display: none !important;
    }
}