/* Mobile & Tablet */
@media (max-width: 979.999px) {
    main section { padding: 10px; }

    .p,
    .pb,
    .ps1 { padding: 10px; }

    .ps,
    .ph { padding: 0 10px; }

    .pv { padding: 10px 0; }
}

/* Desktop */
@media (min-width: 980px) {
    header section,
    main section,
    footer section {
        padding-left: 20px;
        padding-right: 20px;
    }

    main section {
        padding-top: 10px;
        padding-bottom: 10px;
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .p,
    .pb { padding: 20px; }

    .ps,
    .ph { padding: 0 20px; }

    .pv { padding: 20px 0; }

    .ps1 { padding: 10px 20px; }
}

.p1 { padding: 10px; }

.p2 { padding: 20px; }

.p4 { padding: 40px; }

.p01 { padding: 0 10px; }

.m8 {
    max-width: 800px;
    margin: 0 auto;
}

.cf { overflow: auto; }

.cf .fl { float: left; }

.cf .fr { float: right; }


/* Mobile */
@media (min-width: 480px) {
    .c32,
    .c-32 {
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
    }

    .fx {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .fx > div {
        display: flex;
        flex-direction: column;
    }

    .fx > div > div:last-child { margin-top: auto; }
}

/* Mobile & Tablet */
@media (min-width: 640px) {
    .c43,
    .c-4 {
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
    }
}

@media (min-width: 480px) and (max-width: 679.999px) {
    .c32,
    .c-32 { width: 50%; }
}

@media (min-width: 640px) and (max-width: 799.999px) {
    .c43,
    .c-4 { width: 50%; }
}

/* Tablet */
@media (min-width: 680px) {
    .c32 { width: 33.333%; }

    .c-32 { width: 66.666%; }
}

@media (min-width: 800px) {
    .c2,
    .c3,
    .c-3,
    .c4,
    .c-4 {
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
    }

    .c2 { width: 50%; }

    .c3 { width: 33.333%; }

    .c-3 { width: 66.666%; }
}

@media (min-width: 800px) and (max-width: 1119.999px) {
    .c4,
    .c-4 { width: 50%; }

    /*.c32,*/
    .c43 { width: 33.333%; }

    .c-4 { width: 66.666%; }
}

/* Desktop */
@media (min-width: 1120px) {
    .c4,
    .c43 { width: 25%; }

    .c-4 { width: 75%; }
}