.grid {
    display: flex;
    flex-wrap: wrap;
}

.grid-nogutter {
    margin-right: 0;
    margin-left: 0;
    margin-top: 0;
}

.col {
    flex-grow: 1;
    flex-basis: 0;
    padding: .2rem;
}

.col-fixed {
    flex: 0 0 auto;
    padding: .2rem;
}

.col-1 {
    flex: 0 0 auto;
    padding: .2rem;
    width: calc(8.3333% - .4rem);
}

.col-2 {
    flex: 0 0 auto;
    padding: .2rem;
    width: calc(16.6667% - .4rem);
}

.col-3 {
    flex: 0 0 auto;
    padding: .2rem;
    width: calc(25% - .4rem);
}

.col-4 {
    flex: 0 0 auto;
    padding: .2rem;
    width: calc(33.3333% - .4rem);
}

.col-5 {
    flex: 0 0 auto;
    padding: .2rem;
    width: calc(41.6667% - .4rem);
}

.col-6 {
    flex: 0 0 auto;
    padding: .2rem;
    width: calc(50% - .4rem);
}

.col-7 {
    flex: 0 0 auto;
    padding: .2rem;
    width: calc(58.3333% - .4rem);
}

.col-8 {
    flex: 0 0 auto;
    padding: .2rem;
    width: calc(66.6667% - .4rem);
}

.col-9 {
    flex: 0 0 auto;
    padding: .2rem;
    width: calc(75% - .4rem);
}

.col-10 {
    flex: 0 0 auto;
    padding: .2rem;
    width: calc(83.3333% - .4rem);
}

.col-11 {
    flex: 0 0 auto;
    padding: .2rem;
    width: calc(91.6667% - .4rem);
}

.col-12 {
    flex: 0 0 auto;
    padding: .2rem;
    width: calc(100% - .4rem);
}

.col-offset-0 {
    margin-left: 0;
}

.col-offset-1 {
    margin-left: 8.3333%;
}

.col-offset-2 {
    margin-left: 16.6667%;
}

.col-offset-3 {
    margin-left: 25%;
}

.col-offset-4 {
    margin-left: 33.3333%;
}

.col-offset-5 {
    margin-left: 41.6667%;
}

.col-offset-6 {
    margin-left: 50%;
}

.col-offset-7 {
    margin-left: 58.3333%;
}

.col-offset-8 {
    margin-left: 66.6667%;
}

.col-offset-9 {
    margin-left: 75%;
}

.col-offset-10 {
    margin-left: 83.3333%;
}

.col-offset-11 {
    margin-left: 91.6667%;
}

.col-offset-12 {
    margin-left: 100%;
}
