.configurator {
    position: relative;
    padding: 0;
}

    .configurator__loading-icon {
        position: absolute;
        top: 100px;
        left: 50%;
        color: rgb(233, 78, 27);
        font-size: 3em;
        margin: -.5em;
        opacity: 1;
        transition: 1s;
    }

    .configurator:not(.configurator--loading) .configurator__loading-icon {
        opacity: 0;
        pointer-events: none;
    }

    .configurator > *:not(.configurator__loading-icon) {
        transition: 1s;
        transition-delay: 1s;
        opacity: 1;
    }

    .configurator.configurator--loading > *:not(.configurator__loading-icon) {
        opacity: 0;
        pointer-events: none;
    }

    .configurator__step-navigation {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        background-color: rgba(255, 255, 255, .9);
        border-top: 1px solid rgb(240, 240, 240);
        padding: 10px 0;
        z-index: 1;
    }

        .configurator__step-navigation-container {
            display: flex;
        }

            .configurator__step-navigation-button--previous {
                margin-right: 10px;
            }

                .configurator__step-navigation-button--previous::before {
                    content: '<';
                }


            .configurator__step-navigation-button--next {
                flex-grow: 1;
            }

                .configurator__step-navigation-button-text {
                    display: none;
                }


            .configurator__step-navigation-text {
                display: none;
            }


    .configurator__steps-container {
        display: flex;
        padding: 0 5px;
    }

        .configurator__step {
            display: none;
            flex-basis: 25%;
            flex-grow: 1;
            color: inherit;
            margin: 0 -5px;
            line-height: 1;
            position: relative;
            border-bottom: 1px solid rgb(240, 240, 240);
        }

        .configurator__step--active {
            display: block;
            padding-bottom: 1em;
        }

            .configurator__step-number {
                color: rgb(233, 78, 27);
                font-size: 2em;
                font-weight: 800;
                font-style: normal;
                margin-right: 0.25em;
            }

            /* .configurator__step--completed .configurator__step-number {
                display: inline-block;
                font-family: "Font Awesome 5 Free";
                font-weight: 900;
                -moz-osx-font-smoothing: grayscale;
                -webkit-font-smoothing: antialiased;
                font-style: normal;
                font-variant: normal;
                text-rendering: auto;
                text-indent: -1em;
                padding-left: 1em;
            } */

            /* .configurator__step--completed .configurator__step-number::before {
                content: "\f00c";
                position: absolute;
                text-indent: 0;
                top: 0;
                left: 0;
            } */


            .configurator__step-name {
                font-size: 1.3125em;
                font-weight: 600;
            }


    .configurator__main-container {
    }

    .configurator__main-container--dealer {
        margin-bottom: 50px;
    }

        .configurator__quotation-list {
            background-color: rgb(255, 255, 255);
            position: fixed;
            right: -90%;
            margin: 0;
            box-sizing: border-box;
            top: 0;
            bottom: 0;
            transition: .4s;
            width: 90%;
            z-index: 5;
        }

        .configurator__quotation-list--open {
            right: 0;
            box-shadow: 0 0 10px rgba(0, 0, 0, .5);
        }

            .quotation-list__scroller {
                overflow-y: auto;
                height: 100%;
                padding: 20px;
                box-sizing: border-box;
            }

            .quotation-list__toggle {
                position: absolute;
                bottom: 80px;
                right: calc(100% + 20px);
                width: 50px;
                line-height: 50px;
                text-align: center;
                background-color: rgb(233, 78, 27);
                color: rgb(255, 255, 255);
                border-radius: 25px;
                box-shadow: 0 0 1px rgba(255, 255, 255, .3) inset, 0 2px 0 rgb(181, 62, 22);
                opacity: 0;
                pointer-events: none;
                transition: .2s;
            }

            .configurator__quotation-list--open .quotation-list__toggle {
                right: calc(100% - 25px);
                opacity: 1;
                pointer-events: auto;
            }

                .quotation-list__toggle-icon {
                    transition: .2s;
                }


            .quotation-list__closer {
                position: absolute;
                right: 100%;
                top: 0;
                width: 200%;
                height: 100%;
                background-color: rgba(0, 0, 0, .5);
                opacity: 0;
                pointer-events: none;
                z-index: -1;
                transition: .4s;
            }

            .configurator__quotation-list--open .quotation-list__closer {
                opacity: 1;
                pointer-events: auto;
            }

            .configurator-quotation-list__group {
                margin-bottom: 3em;
            }

                .configurator-quotation-list__title {
                    position: relative;
                    font-weight: normal;
                    padding-left: 40px;
                }

                    .configurator-quotation-list__title-number {
                        position: absolute;
                        top: 0;
                        left: 0;
                        color: rgb(233, 78, 27);
                        font-weight: 800;
                        font-style: normal;
                        margin-right: 0.25em;
                    }


                .configurator-quotation-list__items-container {
                }

                    .configurator-quotation-list__items-list {
                        list-style: none;
                        padding: 0;
                        margin: 0;
                    }

                        .configurator-quotation-list__item {
                            display: flex;
                            align-items: center;
                            position: relative;
                            transition: background-color 5s 5s;
                            padding-left: 5px;
                            margin-left: -5px;
                        }

                        .configurator-quotation-list__item--updated {
                            background-color: rgba(0, 255, 0, .25);
                            transition: none;
                        }

                            .configurator-quotation-list-item__image-container {
                                position: relative;
                                text-align: center;
                                box-sizing: border-box;
                                width: 100px;
                                height: 66px;
                                line-height: 56px;
                                padding: 10px;
                                margin: 5px 20px 5px 0;
                                border: 1px solid rgb(240, 240, 240);
                                background-color: rgb(255, 255, 255);
                            }

                                .configurator-quotation-list-item__image {
                                    max-width: 100%;
                                    max-height: 100%;
                                }

                                .configurator-quotation-list-item__delete-button {
                                    position: absolute;
                                    top: 50%;
                                    left: 0;
                                    transform: translate(-50%, -50%);
                                    color: rgb(255, 255, 255);
                                    opacity: .5;
                                    width: 30px;
                                    line-height: 30px;
                                    background: rgb(233, 78, 27);
                                    border-radius: 15px;
                                    text-align: center;
                                    font-size: 13px;
                                    box-sizing: border-box;
                                }

                                    .configurator-quotation-list-item__delete-icon {
                                        margin-right: -2px;
                                    }


                            .configurator-quotation-list-item__name {
                                padding: 15px 0;
                            }

                                .configurator-quotation-list-item__name[data-js_amount]::before {
                                    content: attr(data-js_amount)'x';
                                    color: rgb(233, 78, 27);
                                    padding-right: 5px;
                                }


                    .configurator-quotation-list__message {
                        font-size: .9em;
                        color: rgb(191, 191, 191);
                    }

                    .configurator-quotation-list__items-list:not(:empty) ~ .configurator-quotation-list__message {
                        display: none;
                    }


            .configurator-quotation-list__button {
                width: 100%;
                margin-bottom: 40px;
            }



.collection-popup-content {
    padding-top: 20px;
    padding-bottom: 20px;
}

    .collection-popup__added-item {
        width: 50%;
        margin: 0 auto 20px;
    }

        .collection-popup-added-item__image-container {
            box-shadow: none;
        }


    .collection-popup__title {
        text-align: center;
        margin-bottom: 30px;
    }

    .collection-popup__items-container {
        justify-content: center;
        margin-bottom: 10px;
    }

    .collection-popup__buttons-container {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin: 0 -10px;
    }

        .collection-popup__button {
            flex-grow: 1;
            margin: 10px 10px 0;
        }


    @keyframes quotation-show-collection-items {

        0% {
            margin-top: -10px;
            opacity: 0;
            max-height: 0;
        }
        20% {
            margin-top: 0;
            opacity: 1;
        }
        99% {
            margin-top: 0;
            max-height: 8085px;
            opacity: 1;
        }
        100% {
            margin-top: 0;
            max-height: none;
            opacity: 1;
        }
    }


@media only screen and (min-width: 768px) {

    .configurator__step-navigation-button--previous,
    .configurator__step-navigation-button--next {
        flex-grow: 1;
        flex-basis: 50%;
    }

        .configurator__step-navigation-button--previous::before {
            display: none;
        }

        .configurator__step-navigation-button-text {
            display: inline;
        }


    .collection-popup__added-item {
        width: calc(100% / 3);
    }

    .collection-popup__button {
        flex-grow: 0;
    }


    .configurator__main-container--dealer {
        display: flex;
    }

        .configurator__quotation-list--static {
            position: static;
            width: 370px;
            padding: 0 0 0 5px;
            margin-left: auto;
            box-sizing: border-box;
            order: 1;
            box-shadow: none;
            transition: 1s, width .4s;
            z-index: 0;
        }

        .configurator__quotation-list--static .configurator__quotation-list--placeholder {
            display: block;
        }

            .configurator__quotation-list--static .quotation-list__scroller {
                position: fixed;
                width: 370px;
                padding: 0 0 0 20px;
                height: auto;
            }

            .configurator__quotation-list--static .quotation-list__toggle,
            .configurator__quotation-list--static .quotation-list__closer {
                display: none;
            }

            .configurator__quotation-list--static .configurator-quotation-list-item__delete-button {
                display: none;
            }
}


@media only screen and (min-width: 1025px) {

    .configurator {
    }

        .configurator__step-navigation {
            justify-content: space-between;
            align-items: center;
        }

            .configurator__step-navigation-button {
                flex-grow: 0;
                flex-basis: auto;
            }

            .configurator__step-navigation-button--next {
                margin-left: auto;
            }

            .configurator__step-navigation-text {
                display: inline;
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
            }

        .configurator__step {
            display: block;
            text-align: center;
            line-height: 1.2;
            padding: 0 20px 1em;
            transition: .4s;
        }

        .configurator__step--active {
            border-bottom-color: rgb(255, 255, 255);
        }

            .configurator__step:not(:last-of-type)::before,
            .configurator__step:not(:last-of-type)::after {
                content: '';
                display: block;
                position: absolute;
                right: 0;
                height: 50%;
                border-right: 1px solid rgb(240, 240, 240);
            }

            .configurator__step::before {
                top: 0;
                transform: skew(20deg,0deg);
            }

            .configurator__step::after {
                top: 50%;
                transform: skew(-20deg,0deg);
            }

            .configurator__step > *,
            .configurator__steps-container:hover .configurator__step--active > * {
                opacity: .25;
                transition: .4s;
            }

            .configurator__step--active > *,
            .configurator__steps-container:hover .configurator__step:hover > * {
                opacity: 1;
                transition: opacity .4s;
            }

            .configurator__step-number {
                display: block;
                margin-right: 0;
            }

            /* .configurator__step--completed .configurator__step-number {
                display: block;
                font-family: "Font Awesome 5 Free";
                padding-left: 0;
            } */

            /* .configurator__step--completed .configurator__step-number::before {
                left: 50%;
                transform: translateX(-50%);
            } */


    .configurator__main-container {
        display: flex;
    }

        .configurator__quotation-list {
            display: none;
            position: static;
            width: 370px;
            padding: 0 0 0 30px;
            margin-left: auto;
            box-sizing: content-box;
            order: 1;
            box-shadow: none;
            margin-right: -10%;
            opacity: 0;
            pointer-events: none;
            transition: 1s, width .4s;
            z-index: 0;
        }

        .configurator__quotation-list--placeholder {
            display: block;
        }

        .configurator__quotation-list--static {
            display: none;
        }

        .configurator__quotation-list--open {
            margin-right: 0;
            opacity: 1;
            pointer-events: auto;
        }

            .quotation-list__scroller {
                position: fixed;
                width: 370px;
                padding: 0 0 0 20px;
                height: auto;
            }

            .quotation-list__toggle,
            .quotation-list__closer {
                display: none;
            }

            .configurator-quotation-list-item__image {
                opacity: .75;
            }

            .configurator-quotation-list-item__delete-button {
                opacity: 0;
                transition: .2s;
            }

            .configurator-quotation-list__item:hover .configurator-quotation-list-item__delete-button {
                opacity: .5;
            }

            .configurator-quotation-list__item:hover .configurator-quotation-list-item__delete-button:hover {
                opacity: 1;
            }


        .configurator__quotation-list--placeholder ~ .configurator__step-items {
            width: calc(100% - 400px);
        }

        .configurator__quotation-list--placeholder ~ .configurator__step-items .overview-item {
            width: 50%;
        }


    .collection-popup__added-item {
        width: 20%;
    }

    .configurator-quotation-list__button {
        margin-bottom: 0;
    }
}


@media only screen and (min-width: 1024px) {

    .configurator__quotation-list--placeholder ~ .configurator__step-items .overview-item {
        width: calc(100% / 3);
    }
}