body {
    background-color: #ffffff;
}

/*Login Register*/
.login-div {
    height: calc(100dvh - 110px);
}

/*Dropdown menu navbar*/
.header {
    .dropdown-with-icons {
        a.dropdown-item {
            display: flex;
            align-items: center;
            gap: 10px;

            i.zmdi{
                min-width: 20px;
            }
        }
        a.dropdown-item:hover{
            background-color: #ff6900;
            color: #ffffff;
        }
    }

    .dropdown-small {
        width: max-content;
        min-width: unset;

        a {
            text-align: center;
        }
        a:hover{
            background-color: #ff6900;
            color: #ffffff;
        }
    }
}

/*Navbar*/

.orangesection-navbar {
    background-color: #ff6900;
    height: fit-content;
    padding: 10px 0;

    a {
        color: #ffffff;
        text-decoration: none;
    }

    a:hover {
        color: #000000;
    }

    .social-icons-navbar {
        width: fit-content;
        font-size: 1.3rem;
    }
}


#navbarnavbar-fixed-header {
    > .container-fluid {
        padding: 0;
    }

    .navbar-toggler {
        color: #ffffff;
    }

    .header {
        button:not(.smallcart-toggle) {
            border: 0;
            background-color: transparent;
            color: #ffffff;
            border-radius: 0;
            margin-top: -5px;
        }

        button:not(.smallcart-toggle):hover {
            color: #ff6900;
            border-bottom: 5px solid #ff6900;
height: 36px;
        }
    }
}

.orange-navbar-info {
    height: 40px;
    background-color: #ff6900;
    width: 100%;
}

/*Pagination with number results*/
.fixed-header {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: unset !important;

    .row {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin-bottom: 10px;

        .pagination-with-numresults {
            > .row {
                gap: 5px;
            }

            .result-number-select {
                flex: 0 1;
                min-width: 300px;
                max-width: 320px;

                .input-group {
                    align-items: stretch;
                    display: flex;
                    flex-wrap: wrap;
                    position: relative;
                    width: 100%;
                }
            }

            .result-pagination {
                display: flex;
                justify-content: center;
                flex: 0 1;
                min-width: fit-content;

                .pagination {
                    margin: 0;

                    .page-item {
                        min-width: fit-content;
                    }
                }
            }
        }
    }
}

/*Small Cart*/
.smallcart-main {
    .smallcart-toggle {
        .smallcart-badge {
            background-color: inherit !important;
        }
    }

    .smallcart-dropdown.dropdown-menu {
        width: 500px;

        .smallcart-items {
            overflow-y: auto;
            overflow-x: hidden;
            max-height: 500px;
            padding: 0 5px;

            .media-body .btn-danger::before {
                content: url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="white" class="bi bi-trash-fill" viewBox="0 0 16 16"><path d="M2.5 1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1H3v9a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V4h.5a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H10a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1zm3 4a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 .5-.5M8 5a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7A.5.5 0 0 1 8 5m3 .5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 1 0"/></svg>');
                padding: 3px 0 0 0;
            }

            .smallcart-line + .smallcart-line {
                border-top: 1px solid rgba(0, 0, 0, .175) !important;
            }

            .smallcart-line {
                .smallcart-image {
                    min-width: fit-content;
                    min-height: fit-content;
                }

                .media-body {
                    flex-grow: 1;
                    align-items: center;
                    margin-right: 15px;
                    max-width: calc(100% - 60px);
                }

                .delete-smallcart {
                    width: 30px;
                    height: 30px;
                    min-width: 30px;
                    min-height: 30px;
                }
            }
        }

        .smallcart-footer {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            min-height: 60px;
            height: 60px;
            border-top: 1px solid #D8D8D8;
            gap: 5px;
            padding: 10px;

            .dropdown-item {
                display: flex;
                justify-content: center;

            }

            a.smallcart-emptycart {
                display: flex;
                align-items: center;
                justify-content: space-around;
                background-color: #dc3545;
                color: white;
                border-radius: 0.375rem;
                width: 150px;
                height: 36px;
            }

            a.checkout-link {
                display: flex;
                align-items: center;
                justify-content: space-around;
                background-color: #008000;
                color: white;
                border-radius: 0.375rem;
                width: 250px;
                font-size: 1.2rem;
            }
        }
    }
}

/*Search results*/
.homeresult {
    .results_list > div {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
}

/*Card products search results*/
.product-item {
    min-width: 270px !important;
    flex: 1 0 100%;
    max-width: 300px;

    .card-image {
        cursor: pointer;
        min-height: 250px;

        picture{
            display: flex;
            align-items: center;
            justify-content: center;
        }
    }

    .card-body {
        .price-container {
            position: absolute;
            top: 281px;
            right: 15px;
            width: fit-content;
            border-radius: 0.375rem;
            background-color: #ff6900;
            color: #ffffff;
            padding: 5px 7px;

            .sale-price{
                font-weight: bold;
            }
        }
        .price-container:has(.discount-price) .sale-price{
            text-decoration: line-through;
            font-weight: normal;
        }
        .price-container .discount-price{
            font-weight: bold;
        }

        .card-title {
            a {
                color: black;
                text-decoration: none;
            }
        }
    }
}

/*Add to cart template*/
.addtocartform {
    .pricefield:has(.discount-price) .sale-price{
        text-decoration: line-through;
        font-weight: normal;
    }
    .pricefield .discount-price{
        font-weight: bold;
    }
    .product-buttons {
        height: 44px;
        min-width: fit-content;

        .product-qta-minus, .product-qta-plus {
            width: 44px;
            height: 44px;
            border: 1px solid #dee2e6;
            background-color: #ffffff;
        }

        .product-qta-minus {
            border-radius: .25rem 0 0 .25rem;
        }

        .product-qta-plus {
            border-radius: 0 .25rem .25rem 0;
        }

        .element_number {
            margin: 0 !important;


            input {
                height: 44px;
                max-height: 44px;
                min-height: 44px;
                border-left: none;
                border-right: none;
                border-radius: 0;
            }

            label {
                padding: 0 10px;
                align-items: center;
                display: flex;
                margin: 0;
            }
        }

        .addtocartbtn {
            width: 44px;
            height: 44px;
        }
    }
}

.productcart-mobileonly {
    position: fixed;
    left: 0;
    top: calc(100vh - 60px);
    width: 100%;
    padding: 15px;
    background-color: #ffffff;
    z-index: 1000;
    box-shadow: 0 0.5rem 1rem 0 #000000a8 !important;

    .btn {
        width: 100%;
        font-size: 1rem;
        margin: 0 !important;
    }
}

/*Single Product Page*/
.productBodyRow{
    .img-with-lightbox{
        .lightboxbutton{
            /*position: absolute;
            top: 0px;
            width: 7.5%;
            height: 100%;
            background-color: transparent;
            font-size: 3rem;
            opacity: 0.6;
        }
        .lightboxbutton:hover{
            opacity: 1;
            background: rgba(255, 105, 0, 0.4);*/
            background: rgba(255, 105, 0);
            border: none;
        }
    }
}

/*Technical data Section*/
.specifiche-tecniche{
    .techdata_img{
        .img-data{
            flex: 1 0 15%;
            font-size: 1.1rem;
            font-weight: bold;
            color: #ff6900;
        }
    }
    .techdata_text{
        .text-data{
            flex: 1 0 30%;
            min-height: 80px;
            justify-content: end;
            gap: 5px;

            strong{
                font-size: 1.1rem;
                font-weight: bold;
                color: #ff6900;
            }
        }
    }
}
.specifiche-tecniche:has(.text-data):has(.img-data) .techdata_img {
    border-bottom: 1px dashed #00000045;
    padding-bottom: 20px;
}
.specifiche-tecniche:not(:has(.text-data)):not(:has(.img-data)) {
    display: none;
}



/*Expandend Search form*/
.expandedSearchForm {
    .badge {
        height: fit-content;
        margin-left: auto;
        margin-right: 5px;
    }

    .accordion-item {
        border: 0;
    }

    .form-check-label:hover {
        background-color: #cfe2ff;
        cursor: pointer;
    }

    .card-body {
        padding-bottom: 10px;
    }

    .form-row {
        gap: 5px;
        display: flex;
        flex-direction: column;

        .form-control {
            height: 44px;
        }

        > input {
            height: 44px;
        }

        .accordion-button:focus {
            box-shadow: none !important;

        }

        .accordion-header {
            margin-bottom: 0;
            height: 44px;
            display: flex;

            .accordion-button {
                padding: 0;
                z-index: 1;
                cursor: pointer;

                .form-check-label {
                    display: flex;
                    gap: 10px;
                    height: 100%;
                    align-items: center;
                    width: 100%;
                    padding-left: 10px;

                    .form-check-input {
                        margin: 0;
                        opacity: 0;
                    }

                }


            }

            .accordion-button:after {
                z-index: 2;
                position: absolute;
                left: 7px;
            }
        }

        .accordion-body {
            padding: 10px;

            .hierarchicalMenu {
                display: flex;
                flex-direction: column;
                gap: 5px;

                .form-check-label {
                    display: flex;
                    gap: 5px;
                    padding: 10px 0;
                    align-items: center;

                    .form-check-input {
                        opacity: 0;
                        width: 0;
                    }
                }

                .accordion-item {
                    .accordion-button {
                        padding: 0;

                        .form-check-label {
                            padding: 0 0 0 28px !Important;
                        }
                    }

                    .accordion-collapse .accordion-body {
                        padding: 10px 0;
                    }
                }
            }

        }
    }

    .card-footer {
        background-color: #ffffff;
        border-top: 0;
        padding-top: 0;
    }
}

/*Footer*/
.site-footer {
    background-color: #000000;
    color: #ffffff;
    padding: 20px 20px 25px 20px;
    /*flex: 0 1 0;*/
    max-height: fit-content;
    box-shadow: 0 0.5rem 1.5rem #00000026;
    *{
        line-height: 1.6rem;
    }

    .menu-beforefooter a, .menu-footer a, .menu-afterfooter a {
        color: #ffffff;
        padding-left: 0;
        text-align: left;
    }

    .social-icons a {
        color: #ffffff;
        font-size: 1.3rem;
    }

    .menu-beforefooter a:hover, .menu-footer a:hover, .menu-afterfooter a:hover, .social-icons a:hover {
        color: #ff6900;
    }

    .menu-beforefooter .widget-block, .menu-footer .widget-block, .menu-afterfooter > div {
        text-align: left;
    }

    .title-footer {
        text-decoration: none;
    }

    .title-footer:hover {
        color: #ffffff !important;
    }
}

/*Checkout*/
#appcontainer:has(.checkoutpage) {
    background-color: #fafafa;
}

.checkoutpage {
    min-height: calc(100dvh - 100px);

    .prodotti-hideshow {
        background-color: #ffffff;
        padding: 15px;
        border-radius: .7rem;
    }

    .products-area-checkout {
        flex-grow: 1;
    }

    .products-area-checkout:has(.checkout-widget-products) {
        .prodotti-hideshow {
            padding: 15px 15px 0 15px;
            border-radius: .7rem .7rem 0 0;
        }
    }

    .checkout-widget-products {
        background-color: #ffffff;
        padding: 20px;
        border-radius: .7rem;
        margin-bottom: 15px;

        .checkout-header .info-aggiuntive-row {
            display: none;
        }

        .checkout-body {
            .row:has(.checkout-product-row):last-of-type{
                border-bottom: 0;
            }
            .row:has(.checkout-product-row) {
                padding: 10px 0;
                border-bottom: 1px solid #dadada;
            }

            .img-product-checkout {
                .img-with-lightbox {
                    position: relative;
                    picture{
                        display: flex;
                        align-items: center;
                        justify-content: center;
                    }

                    button.lightboxbutton {
                        position: absolute;
                        top: 0;
                        left: 0;
                        border: none;
                        background: transparent;
                        color: white;
                        opacity: 0.7;
                        width: 100%;
                        height: 100%;
                    }

                    button.lightboxbutton:hover {
                        opacity: 1;
                        background: rgba(255, 105, 0, 0.4);
                    }

                }

            }

        }
    }

    .checkout-widget-info {
        position: fixed;
        top: 110px;
        background-color: #ffffff;
        padding: 20px;
        border-radius: .7rem;
        margin: 45px 25px;
        flex-grow: 1;
        max-width: 650px;

        .info-aggiuntive-row {
            .rifordine {
                input.form-control {
                    height: 44px;
                    min-height: unset;
                    padding: 0 12px;
                }

                label.form-label {
                    height: 44px;
                    padding: 6px;
                }
            }

            .rifordine.is-filled {
                label.form-label {
                    display: none;
                }
            }
        }

        .payments {
            .confirm-checkout-btn {
                width: 250px;
            }
        }
    }
}

/*Pagine Profilo*/
.profile-user{
    .profile-label{
        min-width: 60px;
        width: fit-content !important;
        display: block;
    }
    a{
        color: black;
    }
    a:hover{
        color: #ff6900;
    }
}

/*Bootstrap XXL = 1400px*/
@media screen and (max-width: 1399px) {
    /*Checkout Page*/
    .checkoutpage {
        .checkout-widget-info {
            flex: 0 0 auto;
            width: 40%;
        }
    }

    /*Technical Data section*/
    .specifiche-tecniche{
        .techdata_img{
            .img-data{
                flex: 1 0 30%;
            }
        }
    }

}

/*Bootstrap XL = 1200px*/
@media screen and (max-width: 1199px) {
    /*Checkout*/
    .checkoutpage {
        .checkout-widget-products {
            .checkout-product-row {
                .addtocartform {
                    .product-buttons {
                        flex-wrap: wrap;
                        gap: 5px;
                        justify-content: end;

                        .quantity-buttons {
                            width: 100%;
                        }
                    }
                }
            }
        }

        .checkout-widget-info {
            width: 45%;

        }

    }

    /*Pagination with number results*/
    .pagination-with-numresults {
        padding: 0;
        display: flex;
        justify-content: center;

        > .row {
            justify-content: center;
        }

        .result-pagination {
            max-width: fit-content;

            .top-pagination {
                min-width: max-content;
            }
        }

        .result-action-btn {
            display: none;
        }
    }
}

/*Bootstrap LG = 992px*/
@media screen and (max-width: 991px) {
    .orangesection-navbar {
        padding: 0;

        .element {
            min-width: 50%;
        }
    }

    /*Checkout*/
    .checkoutpage {
        .checkout-widget-products {
            padding: 15px;

            .checkout_container {
                max-width: none;
            }
        }

        .checkout-widget-info {
            position: unset;
            margin: 0 0 20px 0;
            width: 100%;
            max-width: unset;
        }
    }
}

/*Bootstrap MD = 768px*/

@media screen and (max-width: 676px) {
    /*Card products search results*/
    .product-item {
        max-width: 47%;
        min-width: 250px !important;
    }
}

/*Bootstrap SM = 576px*/
@media screen and (max-width: 575px) {
    /*Card products search results*/
    .product-item {
        max-width: 300px;
        min-width: 270px !important;
    }

    /*Small Cart*/
    .smallcart-main {
        .smallcart-dropdown.dropdown-menu {
            height: unset;
            max-height: calc(100vh - 200px);

            .smallcart-items {
                max-height: calc(100vh - 270px);
            }
        }
    }

    /*Single Product page*/
    .productTitleRow {
        margin-top: 20px;
    }

    /*Footer*/
    .site-footer {
        .menu-beforefooter .widget-block, .menu-footer .widget-block, .menu-afterfooter > div {
            text-align: center;
        }
    }
}

@media screen and (max-width: 500px) {
    /*Pagination with number results*/
    .pagination-with-numresults {
        > .row {
            flex-direction: column;
            align-items: center;
        }
    }

    /*Small Cart*/
    .smallcart-main {
        .smallcart-dropdown.dropdown-menu {
            width: 95dvw;
            /*left: calc(64px - 95dvw) !important;*/
            top: 1px !important;
            left: -5px !important;
        }
    }
}