/* -- Mobile responsive -- */
@media screen and (min-width: 320px) {
    /* -- Header container -- */
    .laptop_header {
        display: none;
    }
    .mobile_header {
        display: flex;
    }
        .logotype {
            font-size: var(--size-s);
        }
    /* -- Main container -- */
    .section {
        margin: 1.5rem 0;
    }
        .container {
            width: calc(100% - 4rem);
        }
            .description {
                align-items: center;
            }
                .name {
                    text-align: center;
                    font-size: var(--size-m);
                }
                .text {
                    text-align: center;
                    font-size: var(--size-xs);
                }
    /* -- Hero section -- */
    .hero_left {
        width: 100%;
    }
        .hero_name {
            max-width: 100%;
        }
        .hero_text {
            max-width: 100%;
        }
    /* -- */
    .hero_right {
        display: none;
    }
    /* -- Reviews section -- */
    .reviews_left {
        width: 100%;
    }
        .feature_name {
            font-size: 1.125rem;
        }
        .feature_text {
            text-align: justify;
        }
    /* -- */
    .reviews_right {
        width: 100%;
    }
    /* -- Banner section -- */
    .banner_section {
        width: 100%;
        padding: 4rem 0;
        border-radius: var(--radius-m);
    }
        .banner_description {
            align-items: center;
        }
    /* -- App section -- */
    .app_left {
        display: none;
    }
    .app_right {
        width: 100%;
        display: flex;
    }
        .app_name {
            max-width: 16rem;
        }
    /* -- Blog section -- */
    .blog_name {
        max-width: 16rem;
    }
        .blog {
            width: 20.5rem;
        }
            .blog_title {
                max-width: 13rem;
                font-size: var(--size-m);
            }
            .blog_text {
                max-width: 17rem;
                text-align: start;
            }
    /* -- Requirements section -- */
    .requirements_section {
        padding-top: 8rem;
    }
    /* -- Printers section -- */
    .printer_left {
        display: block;
        width: 100%;
    }
    .printer_right {
        width: 100%;
    }
    /* -- Additional section -- */
    .add_left {
        width: 100%;
    }
    .add_right {
        width: 100%;
    }
    /* -- Footer container -- */
    .mobile_footer {
        display: flex;
    }
    .laptop_footer {
        display: none;
    }
        .copyrights {
            font-size: var(--size-xs);
        }
}
/* -- Tablets responsive -- */
@media screen and (min-width: 768px) {
    /* -- Header container -- */

    /* -- Main container -- */
    .section {
        width: 100%;
    }
        .container {
            width: calc(100% - 4rem);
        }
            .description {
                align-items: start;
            }
                .name {
                    text-align: start;
                    font-size: var(--size-m);
                }
                .text {
                    text-align: start;
                    font-size: var(--size-xs);
                }
    /* -- Hero section -- */
    .hero_left {
        padding-left: 2rem;
        width: calc(60% - 2rem);
    }
        .hero_name {
            max-width: 26.25rem;
        }
        .hero_text {
            max-width: 28rem;
        }
    /* -- */
    .hero_right {
        display: block;
        width: calc(40% - 2rem);
    }
    /* -- Reviews section -- */
    .reviews_left {
        width: calc(50% - 2rem);
    }
        .feature_name {
            font-size: 1.125rem;
        }
        .feature_text {
            text-align: justify;
        }
    /* -- */
    .reviews_right {
        width: calc(50% - 2rem);
    }
    /* -- Banner section -- */
    .banner_section {
        padding: 2rem 0;
        width: 100%;
        border-radius: var(--radius-s);
    }
        .banner_container {
            width: calc(100% - 4rem);
        }
            .banner_description {
                align-items: start;
            }
                .banner_text {
                    max-width: 28rem;
                }
    /* -- App section -- */
    .app_container {
        gap: 4rem;
    }
        .app_left {
            display: block;
            width: calc(50% - 2rem);
        }
        .app_right {
            width: calc(50% - 2rem);
            /* -- */
        }
            .app_description {
                align-items: center;
            }
                /* -- -- */
                .app_name {
                    text-align: center !important;
                    max-width: 16rem;
                }
    /* -- Blog section -- */
    .blog_name {
        max-width: 100%;
    }
        .blog {
            width: 20.5rem;
        }
            .blog_title {
                max-width: 13rem;
                font-size: var(--size-m);
            }
            .blog_text {
                max-width: 17rem;
                text-align: start;
            }
    /* -- Requirements section -- */
    .requirements_section {
        padding-top: 10rem;
    }
    /* -- Printers section -- */
    .printers_container {
        justify-content: space-between;
    }
        .printer_left {
            display: block;
            width: calc(50% - 2rem);
        }
        .printer_right {
            width: calc(50% - 2rem);
        }
    /* -- Additional section -- */
    .additional_container {
        justify-content: space-between;
    }
        .add_left {
            width: calc(50% - 2rem);
        }
        .add_right {
            width: calc(50% - 2rem);
        }
    /* -- Footer container -- */
    .mobile_footer {
        display: none;
    }
    .laptop_footer {
        display: flex;
    }
        .footer_top {
            gap: 3rem;
        }
            .list_label {
                font-size: var(--size-m);
            }
}

/* -- Laptop responsive -- */
@media screen and (min-width: 1024px) {
    /* -- Header container -- */
    .mobile_header {
        display: none;
    }
    /* -- */
    .laptop_header {
        display: flex;
    }
        .logotype {
            font-size: var(--size-s);
        }
    /* -- Main container -- */
    .section {
        margin: 2.5rem 0;
    }
        .container {
            width: calc(100% - 14rem);
        }
            .description {
                align-items: start;
            }
                .name {
                    text-align: start;
                    font-size: var(--size-l);
                }
                .text {
                    text-align: start;
                    font-size: var(--size-s);
                } 
    /* -- Hero section -- */
    .hero_left {
        padding-left: 2rem;
        width: calc(50% - 2rem);
    }
        .hero_name {
            max-width: 26.25rem;
        }
        .hero_text {
            max-width: 28rem;
        }
    /* -- */
    .hero_right {
        display: block;
        width: calc(50% - 2rem);
    }
    /* -- Reviews section -- */
    .reviews_left {
        width: calc(50% - 2rem);
    }
        .feature_name {
            font-size: var(--size-m);
        }
        .feature_text {
            text-align: justify;
        }
    /* -- */
    .reviews_right {
        width: calc(50% - 2rem);
    }
    /* -- Banner section -- */
    .banner_section {
        padding: 2rem 0;
        width: calc(100% - 14rem);
        border-radius: var(--radius-s);
    }
        .banner_container {
            width: calc(100% - 4rem);
        }
            .banner_description {
                align-items: start;
            }
                .banner_text {
                    max-width: 34rem;
                }
    /* -- App section -- */
    .app_container {
        gap: 4rem;
    }
        .app_left {
            display: block;
            width: calc(50% - 2rem);
        }
        .app_right {
            width: calc(50% - 2rem);
            /* -- */
        }
            .app_description {
                align-items: center;
            }
                /* -- -- */
                .app_name {
                    max-width: 100%;
                }
    /* -- Blog section -- */
    .blog_name {
        max-width: 100%;
    }
        .blog {
            width: 30%;
        }
            .blog_title {
                max-width: 13rem;
                font-size: var(--size-m);
            }
            .blog_text {
                max-width: 17rem;
                text-align: start;
            }
    /* -- Requirements section -- */
    .requirements_section {
        padding-top: 10rem;
    }
    /* -- Printers section -- */
    .printers_container {
        justify-content: space-between;
    }
        .printer_left {
            display: block;
            width: calc(50% - 2rem);
        }
        .printer_right {
            width: calc(50% - 2rem);
        }
    /* -- Additional section -- */
    .additional_container {
        justify-content: space-between;
    }
        .add_left {
            width: calc(50% - 2rem);
        }
        .add_right {
            width: calc(50% - 2rem);
        }
    /* -- Footer container -- */
    .mobile_footer {
        display: none;
    }
    .laptop_footer {
        display: flex;
    }
        .footer_top {
            gap: 4rem;
        }
            .list_label {
                font-size: var(--size-m);
            }
        .copyrights {
            font-size: var(--size-s);
        }
}