:root {
    --outer-padding: 20px;
    --inner-padding: 20px;

    --column-padding: calc(var(--inner-padding) / 2);
}

* {
    margin: 0;
    padding: 0;
    outline: 0;
    border: 0;
    box-sizing: border-box;
}

a {
    color: unset;
    text-decoration: none;
}

.container {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
    transition: padding 0.3s ease-out;
    overflow: hidden;
}

.row {
    position: relative;
    width: 100%;
    max-width: 1440px;
    display: flex;
    flex-flow: row wrap;
    margin: auto;
}

.row.full {
    max-width: 100%;
}

.column {
    position: relative;
    display: flex;
    padding-left: var(--column-padding);
    padding-right: var(--column-padding);
}

.column.d12 {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}

.column.d11 {
    width: 91.666666%;
}

.column.d10 {
    width: 83.333333%;
}

.column.d9 {
    width: 75%;
}

.column.d8 {
    width: 66.666666%;
}

.column.d7 {
    width: 58.333333%;
}

.column.d6 {
    width: 50%;
}

.column.d5 {
    width: 41.666666%;
}

.column.d4 {
    width: 33.333333%;
}

.column.d3 {
    width: 25%;
}

.column.d2 {
    width: 16.666666%;
}

.column.d1 {
    width: 8.333333%;
}

.center-h {
    justify-content: center;
}

.center-v {
    align-items: center;
}

.left {
    justify-content: flex-start;
}

.right {
    justify-content: flex-end;
}

.space {
    justify-content: space-between;
}

.d-hide {
    display: none;
}


/* MAX WIDTH REACHED */

@media screen and (max-width: 1440px) {
    .container > .row:not(.full),
    .row.full > .row:not(.full) {
        padding-left: var(--outer-padding);
        padding-right: var(--outer-padding);
    }
}


/* TABLET */

@media screen and (max-width: 768px) {
    .column.t12 {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    .column.t11 {
        width: 91.666666%;
    }

    .column.t10 {
        width: 83.333333%;
    }

    .column.t9 {
        width: 75%;
    }

    .column.t8 {
        width: 66.666666%;
    }

    .column.t7 {
        width: 58.333333%;
    }

    .column.t6 {
        width: 50%;
    }

    .column.t5 {
        width: 41.666666%;
    }

    .column.t4 {
        width: 33.333333%;
    }

    .column.t3 {
        width: 25%;
    }

    .column.t2 {
        width: 16.666666%;
    }

    .column.t1 {
        width: 8.333333%;
    }

    .t-hide {
        display: none;
    }

    .d-hide {
        display: inherit;
    }
}

/* SMARTPHONE */

@media screen and (max-width: 450px) {
    .column.s12 {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    .column.s11 {
        width: 91.666666%;
    }

    .column.s10 {
        width: 83.333333%;
    }

    .column.s9 {
        width: 75%;
    }

    .column.s8 {
        width: 66.666666%;
    }

    .column.s7 {
        width: 58.333333%;
    }

    .column.s6 {
        width: 50%;
    }

    .column.s5 {
        width: 41.666666%;
    }

    .column.s4 {
        width: 33.333333%;
    }

    .column.s3 {
        width: 25%;
    }

    .column.s2 {
        width: 16.666666%;
    }

    .column.s1 {
        width: 8.333333%;
    }

    .s-hide {
        display: none;
    }

}