.tprint {
    max-width: 100vw;
    margin: 4rem -1rem 0;
    display: grid;
    grid-template-columns: 3fr 2fr;
    gap: 1rem;
    background-color: #fff;
    background: var(--lite-gradient);

    div,
    input {
        box-sizing: border-box;
    }

    .aside {
        grid-column: span 2;
        padding: 2rem 3rem;
        gap: 0;
        row-gap: 0;
        background-image: linear-gradient(#faf9fadd, #faf0fadd);

        .aside__title {
            margin-bottom: 0.5em;

            font-size: 1.2rem;
            text-transform: uppercase;
            font-weight: 600;
        }

        .aside__text {
            max-width: 21em;
            margin: 1rem 0;
            font-size: 1.2rem;
            font-weight: 400;

            strong {
                font-weight: 550;
            }
        }

        .aside__action-button {
            display: block;
            width: fit-content;
            margin: 2rem auto;

            background: var(--brand-gradient);
            font-size: 1.2rem;
            color: #fff;
            padding: 1rem 1.3rem;
            border-radius: 3rem;
            cursor: pointer;
            box-shadow: rgba(0, 0, 0, 0.16) 0px 2px 4px;

            &:hover {
                opacity: 0.95;
            }
        }
    }
    .calc {
        grid-column: span 2;

        height: calc(100vh - 20vh);
        max-height: 900px;
        min-height: 667px;

        width: 100%;
        max-width: 920px;
        min-width: 360px; /* iphone se 2nd gen */

        display: grid;
        grid-template-columns: 8rem 1fr 8rem;
        grid-template-rows: 150px 1fr 150px;
        grid-auto-rows: max-content;

        background-size: cover;
        background-position: center center;

        -webkit-transition: background-image 0.3s ease-in-out;
        transition: background-image 0.3s ease-in-out;

        @media (min-width: 900px) {
            & {
                border-radius: 4px;
                margin: 0 auto;
            }
        }

        .format {
            grid-column: 1/2;
            grid-row: 2/3;
            width: 100%;
            height: 100%;
            z-index: 100;
        }

        .quantity {
            grid-column: 3/4;
            grid-row: 2/3;
            width: 100%;
            height: 100%;
        }

        .show {
            grid-column: 1/4;
            grid-row: 1/4;
            position: relative;
            width: 100%;
            height: 100%;
        }

        .show__format {
            top: 1rem;
            left: 1rem;
        }

        .show__quantity {
            top: 1rem;
            right: 1rem;
        }

        .show__piece-price {
            bottom: 1rem;
            left: 1rem;
        }
        .show__total-price {
            bottom: 1rem;
            right: 1rem;
        }

        @media (min-width: 764px) {
            & {
                padding: 1rem 1.4rem;
            }
        }

        .show__format,
        .show__quantity,
        .show__total-price,
        .show__piece-price {
            position: absolute;
            padding: 0.8rem;
            text-align: center;

            background: rgba(255, 255, 255, 0.2);
            border-radius: 4px;
            box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
            backdrop-filter: blur(5px);
            -webkit-backdrop-filter: blur(5px);
            border: 1px solid rgba(255, 255, 255, 0.3);
        }

        .show__title {
            font-weight: 400;
            font-size: 1.2em;
            color: #fff;
            text-shadow: 0 0 1rem #000;
        }

        .show__value {
            font-weight: 600;
            color: #fff;
            text-shadow: 0 0 1rem #000;
            font-size: 7vw;
        }

        .show__descr {
            font-size: 0.8rem;
        }

        @media (min-width: 764px) {
            .show__format,
            .show__quantity,
            .show__total-price,
            .show__piece-price {
                padding: 1rem 1.4rem;
            }

            .show__value {
                font-weight: 600;
                color: #fff;
                text-shadow: 0 0 1rem #000;
                font-size: 3em;
            }

            .show__descr {
                font-size: 1rem;
            }
        }

        .slider__container {
            position: relative;
            height: 100%;
            display: flex;
            flex-direction: column;
            isolation: isolate;
            padding: 1rem;
        }

        .slider {
            flex-grow: 1;
            writing-mode: vertical-lr;
            direction: rtl;
            vertical-align: middle;
            -webkit-appearance: none;
            appearance: none;
            outline: none;
            width: 5.4rem;
            padding: 0;
            background: #fff0;
            overflow: hidden;
            z-index: 100;
        }

        .slider.--left {
            border-left: solid 3px red;
            border-radius: 1rem 0 0 1rem;
        }

        .slider.--right {
            border-right: solid 3px red;
            border-radius: 0 1rem 1rem 0;
        }

        .slider::-webkit-slider-thumb {
            -webkit-appearance: none;
            appearance: none;
            border: solid 3px red;
            height: 2rem;
            width: 5.2rem;

            mix-blend-mode: color;
        }

        .slider::-moz-range-thumb {
            -webkit-appearance: none;
            appearance: none;
            border: solid 3px red;
            height: 2rem;
            width: 5rem;

            mix-blend-mode: color;
        }

        .slider.--left::-webkit-slider-thumb {
            background:
                linear-gradient(315deg, #fff0 0%, #fff0 85%, #f00 85%),
                linear-gradient(225deg, #fff0 0%, #fff0 85%, #f00 85%), #fff2;
            border-radius: 0 0.3rem 0.3rem 0;
        }

        .slider.--left::-moz-range-thumb {
            background:
                linear-gradient(315deg, #fff0 0%, #fff0 85%, #f00 85%),
                linear-gradient(225deg, #fff0 0%, #fff0 85%, #f00 85%), #fff2;
            border-radius: 0 0.3rem 0.3rem 0;
        }

        .slider.--right::-webkit-slider-thumb {
            background:
                linear-gradient(-315deg, #fff0 0%, #fff0 85%, #f00 85%),
                linear-gradient(-225deg, #fff0 0%, #fff0 85%, #f00 85%), #fff2;
            border-radius: 0.3rem 0 0 0.3rem;
        }
        .slider.--right::-moz-range-thumb {
            background:
                linear-gradient(-315deg, #fff0 0%, #fff0 85%, #f00 85%),
                linear-gradient(-225deg, #fff0 0%, #fff0 85%, #f00 85%), #fff2;
            border-radius: 0.3rem 0 0 0.3rem;
        }

        .slider__scale {
            position: absolute;
            top: 0;
            border-radius: 1rem;
            flex-grow: 1;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            padding: 1.5rem 1rem;
            isolation: isolate;
            height: 100%;
            text-align: center;
            width: 7rem;
        }

        .--right + .slider__scale {
            left: 0;
        }

        .--left + .slider__scale {
            right: 0;
        }

        .slider__scale-part {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }

        .slider__scale-value {
            text-align: center;
            font-size: 1.5rem;
            font-weight: 600;
            color: #fff;
            text-shadow: 0 0 1rem #000e;
        }

        .--muted {
            color: #eee;
            line-height: 0.3em;
            font-size: 1rem;
        }

        .slider__knob {
            position: absolute;
            color: white;
            font-size: 1.5rem;
            font-weight: 600;
            color: #fff;
            z-index: 100;
            text-align: center;
            border: solid 1px gold;
            margin: 1.5rem 0;
        }
    }

    @media (min-width: 994px) {
        & {
            border-radius: 1rem;
        }

        .aside {
            grid-column: span 1;
        }
        .calc {
            grid-column: span 1;
        }
    }

    .feedback__wrapper.--active {
        display: flex;
    }

    .feedback__wrapper {
        display: none;
        overflow: hidden;
        position: fixed;
        z-index: 1000;
        left: 0;
        top: 0;
        bottom: 0;
        right: 0;
        justify-content: center;
        align-items: center;
        background-color: #000b;
    }

    .feedback__loader.--active,
    .feedback__popup.--active,
    .feedback__success.--active,
    .feedback__fail.--active {
        display: flex;
    }

    .feedback__loader {
        display: none;
        width: 100px;
        height: 100px;
    }

    .feedback__popup,
    .feedback__success,
    .feedback__fail {
        display: none;
        position: relative;
        flex-direction: column;
        gap: 1rem;
        padding: 1.5rem 1rem;
        max-width: 500px;
        width: 100%;
        background-color: #fff;
        z-index: 1001;
        overflow-y: scroll;
        scrollbar-width: none;

        &::-webkit-scrollbar {
            display: none; /* Safari and Chrome */
        }

        @media (min-width: 500px) {
            & {
                border-radius: 4px;
                margin: 0 1rem;
                padding: 1rem 2rem;
            }
        }
    }

    .feedback__close-btn {
        font-size: 2rem;
        position: absolute;
        right: 0.5rem;
        top: 0.5rem;
        font-weight: 400;
        padding: 0.15em;
        border-radius: 1em;
        width: 1em;
        height: 1em;
        line-height: 0.6em;
        cursor: pointer;
        text-align: center;
        background: #f5f5f5;
        color: #555;
        user-select: none;
        transition: background-color 0.1s ease-in;
    }

    .feedback__close-btn:hover {
        background: #e0e0e0;
        color: #000;
    }

    .feedback__close-btn:active {
        background: #f0f0f0;
        transition: background-color 0.05s ease-in;
    }

    .feedback__title {
        text-align: center;
        font-family: "Tenor Sans";
        font-size: 1.4rem;
        margin: 1rem;
    }

    .feedback__subtitle {
        text-align: center;
    }

    .feedback__form {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .feedback__form input,
    .feedback__form textarea {
        font-size: 1.1rem;
        padding: 0.8em 1em;
        appearance: none;
        border: solid 1px #bababa;
        border-radius: 4px;
    }

    .feedback__details {
        line-height: 1.6em;
    }

    .feedback__details > span {
        display: inline-block;
        padding: 0.4em 0.8em;
        background-color: #f0f0f0;
        margin: 0.2em;
        border-radius: 2em;
    }

    .feedback__submit-btn {
        apperance: none;
        border-radius: 4px;
        border: none;
        background: #333;
        color: #fff;
        font-size: 1.1rem;
        padding: 0.8em 1em;
        cursor: pointer;
    }

    .feedback__message {
        text-align: center;
    }

    .feedback__success,
    .feedback__fail {
        padding-bottom: 3rem;
    }

    .feedback__tel {
        color: #2c2c2a;
        text-decoration: none;
        background: #cdcdcd;
        padding: 1rem 2rem;
        display: block;
        width: fit-content;
        margin: 0 auto;
        border-radius: 2em;
        font-family: "Tenor Sans";
    }

    span.hide {
        display: none;
    }
}
