main {
    clear: both;
    display: flex;
    overflow: auto;
    width: 100%;
    min-height: 88vh;
}

main aside {
    padding: 15px;
}

main article {
    width: calc(100% - 20px);
    background-color: #fff;
    font-size: 0.9rem;
    line-height: 1.5rem;
}

main article blockquote {
    font-size: 0.9rem;
    line-height: 1.5rem;
}

main aside#sidebar {
    background-color: #46bbc4;
    width: 20px;
}

@media screen and (min-width: 640px) {
    main article {
        width: calc(100% - 40px);
        font-size: 1rem;
        line-height: 1.7rem;
    }

    main article blockquote {
        font-size: 1.4rem;
        line-height: 1.8rem;
    }

    main aside#sidebar {
        width: 40px;
    }
}

@media screen and (min-width: 1024px) {
    main article {
        width: calc(100% - 270px);
    }

    main aside#sidebar {
        width: 40px;
    }
}

@media screen and (min-width: 1152px) {
    main {
        min-height: 85vh;
    }

    main article {
        width: calc(100% - 540px);
    }

    main aside#sidebar {
        width: 240px;
    }
}

@media screen and (min-width: 1600px) {
    main article {
        width: calc(100% - 748px);
    }

    main aside#sidebar {
        width: 364px;
    }
}

