.grid-container {
    padding-right: 0.375rem;
    padding-left: 0.375rem;
    max-width: 60rem;
    margin-left: auto;
    margin-right: auto;
}
@media print, screen and (min-width: 40em) {
    .grid-container {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }
}
.grid-container.fluid {
    padding-right: 0.375rem;
    padding-left: 0.375rem;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
@media print, screen and (min-width: 40em) {
    .grid-container.fluid {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }
}
.grid-container.full {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.grid-x {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
}
.cell {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    min-height: 0;
    min-width: 0;
    width: 100%;
}
.cell.auto {
    -webkit-flex: 1 1 0px;
    flex: 1 1 0px;
}
.cell.shrink {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
}
.grid-x > .auto,
.grid-x > .shrink {
    width: auto;
}
.grid-x > .small-1,
.grid-x > .small-2,
.grid-x > .small-3,
.grid-x > .small-4,
.grid-x > .small-5,
.grid-x > .small-6,
.grid-x > .small-7,
.grid-x > .small-8,
.grid-x > .small-9,
.grid-x > .small-10,
.grid-x > .small-11,
.grid-x > .small-12,
.grid-x > .small-full,
.grid-x > .small-shrink {
    -webkit-flex-basis: auto;
    flex-basis: auto;
}
@media print, screen and (min-width: 40em) {
    .grid-x > .medium-1,
    .grid-x > .medium-2,
    .grid-x > .medium-3,
    .grid-x > .medium-4,
    .grid-x > .medium-5,
    .grid-x > .medium-6,
    .grid-x > .medium-7,
    .grid-x > .medium-8,
    .grid-x > .medium-9,
    .grid-x > .medium-10,
    .grid-x > .medium-11,
    .grid-x > .medium-12,
    .grid-x > .medium-full,
    .grid-x > .medium-shrink {
        -webkit-flex-basis: auto;
        flex-basis: auto;
    }
}
@media print, screen and (min-width: 64em) {
    .grid-x > .large-1,
    .grid-x > .large-2,
    .grid-x > .large-3,
    .grid-x > .large-4,
    .grid-x > .large-5,
    .grid-x > .large-6,
    .grid-x > .large-7,
    .grid-x > .large-8,
    .grid-x > .large-9,
    .grid-x > .large-10,
    .grid-x > .large-11,
    .grid-x > .large-12,
    .grid-x > .large-full,
    .grid-x > .large-shrink {
        -webkit-flex-basis: auto;
        flex-basis: auto;
    }
}
.grid-x > .small-1,
.grid-x > .small-2,
.grid-x > .small-3,
.grid-x > .small-4,
.grid-x > .small-5,
.grid-x > .small-6,
.grid-x > .small-7,
.grid-x > .small-8,
.grid-x > .small-9,
.grid-x > .small-10,
.grid-x > .small-11,
.grid-x > .small-12 {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
}
.grid-x > .small-1 {
    width: 8.33333%;
}
.grid-x > .small-2 {
    width: 16.66667%;
}
.grid-x > .small-3 {
    width: 25%;
}
.grid-x > .small-4 {
    width: 33.33333%;
}
.grid-x > .small-5 {
    width: 41.66667%;
}
.grid-x > .small-6 {
    width: 50%;
}
.grid-x > .small-7 {
    width: 58.33333%;
}
.grid-x > .small-8 {
    width: 66.66667%;
}
.grid-x > .small-9 {
    width: 75%;
}
.grid-x > .small-10 {
    width: 83.33333%;
}
.grid-x > .small-11 {
    width: 91.66667%;
}
.grid-x > .small-12 {
    width: 100%;
}
@media print, screen and (min-width: 40em) {
    .grid-x > .medium-auto {
        -webkit-flex: 1 1 0px;
        flex: 1 1 0px;
        width: auto;
    }
    .grid-x > .medium-1,
    .grid-x > .medium-2,
    .grid-x > .medium-3,
    .grid-x > .medium-4,
    .grid-x > .medium-5,
    .grid-x > .medium-6,
    .grid-x > .medium-7,
    .grid-x > .medium-8,
    .grid-x > .medium-9,
    .grid-x > .medium-10,
    .grid-x > .medium-11,
    .grid-x > .medium-12,
    .grid-x > .medium-shrink {
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto;
    }
    .grid-x > .medium-shrink {
        width: auto;
    }
    .grid-x > .medium-1 {
        width: 8.33333%;
    }
    .grid-x > .medium-2 {
        width: 16.66667%;
    }
    .grid-x > .medium-3 {
        width: 25%;
    }
    .grid-x > .medium-4 {
        width: 33.33333%;
    }
    .grid-x > .medium-5 {
        width: 41.66667%;
    }
    .grid-x > .medium-6 {
        width: 50%;
    }
    .grid-x > .medium-7 {
        width: 58.33333%;
    }
    .grid-x > .medium-8 {
        width: 66.66667%;
    }
    .grid-x > .medium-9 {
        width: 75%;
    }
    .grid-x > .medium-10 {
        width: 83.33333%;
    }
    .grid-x > .medium-11 {
        width: 91.66667%;
    }
    .grid-x > .medium-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 64em) {
    .grid-x > .large-auto {
        -webkit-flex: 1 1 0px;
        flex: 1 1 0px;
        width: auto;
    }
    .grid-x > .large-1,
    .grid-x > .large-2,
    .grid-x > .large-3,
    .grid-x > .large-4,
    .grid-x > .large-5,
    .grid-x > .large-6,
    .grid-x > .large-7,
    .grid-x > .large-8,
    .grid-x > .large-9,
    .grid-x > .large-10,
    .grid-x > .large-11,
    .grid-x > .large-12,
    .grid-x > .large-shrink {
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto;
    }
    .grid-x > .large-shrink {
        width: auto;
    }
    .grid-x > .large-1 {
        width: 8.33333%;
    }
    .grid-x > .large-2 {
        width: 16.66667%;
    }
    .grid-x > .large-3 {
        width: 25%;
    }
    .grid-x > .large-4 {
        width: 33.33333%;
    }
    .grid-x > .large-5 {
        width: 41.66667%;
    }
    .grid-x > .large-6 {
        width: 50%;
    }
    .grid-x > .large-7 {
        width: 58.33333%;
    }
    .grid-x > .large-8 {
        width: 66.66667%;
    }
    .grid-x > .large-9 {
        width: 75%;
    }
    .grid-x > .large-10 {
        width: 83.33333%;
    }
    .grid-x > .large-11 {
        width: 91.66667%;
    }
    .grid-x > .large-12 {
        width: 100%;
    }
}
.grid-margin-x:not(.grid-x) > .cell {
    width: auto;
}
.grid-margin-y:not(.grid-y) > .cell {
    height: auto;
}
.grid-margin-x {
    margin-left: -0.375rem;
    margin-right: -0.375rem;
}
@media print, screen and (min-width: 40em) {
    .grid-margin-x {
        margin-left: -0.5rem;
        margin-right: -0.5rem;
    }
}
.grid-margin-x > .cell {
    width: calc(100% - 0.75rem);
    margin-left: 0.375rem;
    margin-right: 0.375rem;
}
@media print, screen and (min-width: 40em) {
    .grid-margin-x > .cell {
        width: calc(100% - 1rem);
        margin-left: 0.5rem;
        margin-right: 0.5rem;
    }
}
.grid-margin-x > .auto,
.grid-margin-x > .shrink {
    width: auto;
}
.grid-margin-x > .small-1 {
    width: calc(8.33333% - 0.75rem);
}
.grid-margin-x > .small-2 {
    width: calc(16.66667% - 0.75rem);
}
.grid-margin-x > .small-3 {
    width: calc(25% - 0.75rem);
}
.grid-margin-x > .small-4 {
    width: calc(33.33333% - 0.75rem);
}
.grid-margin-x > .small-5 {
    width: calc(41.66667% - 0.75rem);
}
.grid-margin-x > .small-6 {
    width: calc(50% - 0.75rem);
}
.grid-margin-x > .small-7 {
    width: calc(58.33333% - 0.75rem);
}
.grid-margin-x > .small-8 {
    width: calc(66.66667% - 0.75rem);
}
.grid-margin-x > .small-9 {
    width: calc(75% - 0.75rem);
}
.grid-margin-x > .small-10 {
    width: calc(83.33333% - 0.75rem);
}
.grid-margin-x > .small-11 {
    width: calc(91.66667% - 0.75rem);
}
.grid-margin-x > .small-12 {
    width: calc(100% - 0.75rem);
}
@media print, screen and (min-width: 40em) {
    .grid-margin-x > .auto,
    .grid-margin-x > .shrink {
        width: auto;
    }
    .grid-margin-x > .small-1 {
        width: calc(8.33333% - 1rem);
    }
    .grid-margin-x > .small-2 {
        width: calc(16.66667% - 1rem);
    }
    .grid-margin-x > .small-3 {
        width: calc(25% - 1rem);
    }
    .grid-margin-x > .small-4 {
        width: calc(33.33333% - 1rem);
    }
    .grid-margin-x > .small-5 {
        width: calc(41.66667% - 1rem);
    }
    .grid-margin-x > .small-6 {
        width: calc(50% - 1rem);
    }
    .grid-margin-x > .small-7 {
        width: calc(58.33333% - 1rem);
    }
    .grid-margin-x > .small-8 {
        width: calc(66.66667% - 1rem);
    }
    .grid-margin-x > .small-9 {
        width: calc(75% - 1rem);
    }
    .grid-margin-x > .small-10 {
        width: calc(83.33333% - 1rem);
    }
    .grid-margin-x > .small-11 {
        width: calc(91.66667% - 1rem);
    }
    .grid-margin-x > .small-12 {
        width: calc(100% - 1rem);
    }
    .grid-margin-x > .medium-auto,
    .grid-margin-x > .medium-shrink {
        width: auto;
    }
    .grid-margin-x > .medium-1 {
        width: calc(8.33333% - 1rem);
    }
    .grid-margin-x > .medium-2 {
        width: calc(16.66667% - 1rem);
    }
    .grid-margin-x > .medium-3 {
        width: calc(25% - 1rem);
    }
    .grid-margin-x > .medium-4 {
        width: calc(33.33333% - 1rem);
    }
    .grid-margin-x > .medium-5 {
        width: calc(41.66667% - 1rem);
    }
    .grid-margin-x > .medium-6 {
        width: calc(50% - 1rem);
    }
    .grid-margin-x > .medium-7 {
        width: calc(58.33333% - 1rem);
    }
    .grid-margin-x > .medium-8 {
        width: calc(66.66667% - 1rem);
    }
    .grid-margin-x > .medium-9 {
        width: calc(75% - 1rem);
    }
    .grid-margin-x > .medium-10 {
        width: calc(83.33333% - 1rem);
    }
    .grid-margin-x > .medium-11 {
        width: calc(91.66667% - 1rem);
    }
    .grid-margin-x > .medium-12 {
        width: calc(100% - 1rem);
    }
}
@media print, screen and (min-width: 64em) {
    .grid-margin-x > .large-auto,
    .grid-margin-x > .large-shrink {
        width: auto;
    }
    .grid-margin-x > .large-1 {
        width: calc(8.33333% - 1rem);
    }
    .grid-margin-x > .large-2 {
        width: calc(16.66667% - 1rem);
    }
    .grid-margin-x > .large-3 {
        width: calc(25% - 1rem);
    }
    .grid-margin-x > .large-4 {
        width: calc(33.33333% - 1rem);
    }
    .grid-margin-x > .large-5 {
        width: calc(41.66667% - 1rem);
    }
    .grid-margin-x > .large-6 {
        width: calc(50% - 1rem);
    }
    .grid-margin-x > .large-7 {
        width: calc(58.33333% - 1rem);
    }
    .grid-margin-x > .large-8 {
        width: calc(66.66667% - 1rem);
    }
    .grid-margin-x > .large-9 {
        width: calc(75% - 1rem);
    }
    .grid-margin-x > .large-10 {
        width: calc(83.33333% - 1rem);
    }
    .grid-margin-x > .large-11 {
        width: calc(91.66667% - 1rem);
    }
    .grid-margin-x > .large-12 {
        width: calc(100% - 1rem);
    }
}
.grid-padding-x .grid-padding-x {
    margin-right: -0.375rem;
    margin-left: -0.375rem;
}
@media print, screen and (min-width: 40em) {
    .grid-padding-x .grid-padding-x {
        margin-right: -0.5rem;
        margin-left: -0.5rem;
    }
}
.grid-container:not(.full) > .grid-padding-x {
    margin-right: -0.375rem;
    margin-left: -0.375rem;
}
@media print, screen and (min-width: 40em) {
    .grid-container:not(.full) > .grid-padding-x {
        margin-right: -0.5rem;
        margin-left: -0.5rem;
    }
}
.grid-padding-x > .cell {
    padding-right: 0.375rem;
    padding-left: 0.375rem;
}
@media print, screen and (min-width: 40em) {
    .grid-padding-x > .cell {
        padding-right: 0.5rem;
        padding-left: 0.5rem;
    }
}
.small-up-1 > .cell {
    width: 100%;
}
.small-up-2 > .cell {
    width: 50%;
}
.small-up-3 > .cell {
    width: 33.33333%;
}
.small-up-4 > .cell {
    width: 25%;
}
.small-up-5 > .cell {
    width: 20%;
}
.small-up-6 > .cell {
    width: 16.66667%;
}
.small-up-7 > .cell {
    width: 14.28571%;
}
.small-up-8 > .cell {
    width: 12.5%;
}
@media print, screen and (min-width: 40em) {
    .medium-up-1 > .cell {
        width: 100%;
    }
    .medium-up-2 > .cell {
        width: 50%;
    }
    .medium-up-3 > .cell {
        width: 33.33333%;
    }
    .medium-up-4 > .cell {
        width: 25%;
    }
    .medium-up-5 > .cell {
        width: 20%;
    }
    .medium-up-6 > .cell {
        width: 16.66667%;
    }
    .medium-up-7 > .cell {
        width: 14.28571%;
    }
    .medium-up-8 > .cell {
        width: 12.5%;
    }
}
@media print, screen and (min-width: 64em) {
    .large-up-1 > .cell {
        width: 100%;
    }
    .large-up-2 > .cell {
        width: 50%;
    }
    .large-up-3 > .cell {
        width: 33.33333%;
    }
    .large-up-4 > .cell {
        width: 25%;
    }
    .large-up-5 > .cell {
        width: 20%;
    }
    .large-up-6 > .cell {
        width: 16.66667%;
    }
    .large-up-7 > .cell {
        width: 14.28571%;
    }
    .large-up-8 > .cell {
        width: 12.5%;
    }
}
.grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 0.75rem);
}
.grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 0.75rem);
}
.grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 0.75rem);
}
.grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 0.75rem);
}
.grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 0.75rem);
}
.grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 0.75rem);
}
.grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 0.75rem);
}
.grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 0.75rem);
}
@media print, screen and (min-width: 40em) {
    .grid-margin-x.small-up-1 > .cell {
        width: calc(100% - 1rem);
    }
    .grid-margin-x.small-up-2 > .cell {
        width: calc(50% - 1rem);
    }
    .grid-margin-x.small-up-3 > .cell {
        width: calc(33.33333% - 1rem);
    }
    .grid-margin-x.small-up-4 > .cell {
        width: calc(25% - 1rem);
    }
    .grid-margin-x.small-up-5 > .cell {
        width: calc(20% - 1rem);
    }
    .grid-margin-x.small-up-6 > .cell {
        width: calc(16.66667% - 1rem);
    }
    .grid-margin-x.small-up-7 > .cell {
        width: calc(14.28571% - 1rem);
    }
    .grid-margin-x.small-up-8 > .cell {
        width: calc(12.5% - 1rem);
    }
    .grid-margin-x.medium-up-1 > .cell {
        width: calc(100% - 1rem);
    }
    .grid-margin-x.medium-up-2 > .cell {
        width: calc(50% - 1rem);
    }
    .grid-margin-x.medium-up-3 > .cell {
        width: calc(33.33333% - 1rem);
    }
    .grid-margin-x.medium-up-4 > .cell {
        width: calc(25% - 1rem);
    }
    .grid-margin-x.medium-up-5 > .cell {
        width: calc(20% - 1rem);
    }
    .grid-margin-x.medium-up-6 > .cell {
        width: calc(16.66667% - 1rem);
    }
    .grid-margin-x.medium-up-7 > .cell {
        width: calc(14.28571% - 1rem);
    }
    .grid-margin-x.medium-up-8 > .cell {
        width: calc(12.5% - 1rem);
    }
}
@media print, screen and (min-width: 64em) {
    .grid-margin-x.large-up-1 > .cell {
        width: calc(100% - 1rem);
    }
    .grid-margin-x.large-up-2 > .cell {
        width: calc(50% - 1rem);
    }
    .grid-margin-x.large-up-3 > .cell {
        width: calc(33.33333% - 1rem);
    }
    .grid-margin-x.large-up-4 > .cell {
        width: calc(25% - 1rem);
    }
    .grid-margin-x.large-up-5 > .cell {
        width: calc(20% - 1rem);
    }
    .grid-margin-x.large-up-6 > .cell {
        width: calc(16.66667% - 1rem);
    }
    .grid-margin-x.large-up-7 > .cell {
        width: calc(14.28571% - 1rem);
    }
    .grid-margin-x.large-up-8 > .cell {
        width: calc(12.5% - 1rem);
    }
}
.small-margin-collapse,
.small-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0;
}
.small-margin-collapse > .small-1 {
    width: 8.33333%;
}
.small-margin-collapse > .small-2 {
    width: 16.66667%;
}
.small-margin-collapse > .small-3 {
    width: 25%;
}
.small-margin-collapse > .small-4 {
    width: 33.33333%;
}
.small-margin-collapse > .small-5 {
    width: 41.66667%;
}
.small-margin-collapse > .small-6 {
    width: 50%;
}
.small-margin-collapse > .small-7 {
    width: 58.33333%;
}
.small-margin-collapse > .small-8 {
    width: 66.66667%;
}
.small-margin-collapse > .small-9 {
    width: 75%;
}
.small-margin-collapse > .small-10 {
    width: 83.33333%;
}
.small-margin-collapse > .small-11 {
    width: 91.66667%;
}
.small-margin-collapse > .small-12 {
    width: 100%;
}
@media print, screen and (min-width: 40em) {
    .small-margin-collapse > .medium-1 {
        width: 8.33333%;
    }
    .small-margin-collapse > .medium-2 {
        width: 16.66667%;
    }
    .small-margin-collapse > .medium-3 {
        width: 25%;
    }
    .small-margin-collapse > .medium-4 {
        width: 33.33333%;
    }
    .small-margin-collapse > .medium-5 {
        width: 41.66667%;
    }
    .small-margin-collapse > .medium-6 {
        width: 50%;
    }
    .small-margin-collapse > .medium-7 {
        width: 58.33333%;
    }
    .small-margin-collapse > .medium-8 {
        width: 66.66667%;
    }
    .small-margin-collapse > .medium-9 {
        width: 75%;
    }
    .small-margin-collapse > .medium-10 {
        width: 83.33333%;
    }
    .small-margin-collapse > .medium-11 {
        width: 91.66667%;
    }
    .small-margin-collapse > .medium-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 64em) {
    .small-margin-collapse > .large-1 {
        width: 8.33333%;
    }
    .small-margin-collapse > .large-2 {
        width: 16.66667%;
    }
    .small-margin-collapse > .large-3 {
        width: 25%;
    }
    .small-margin-collapse > .large-4 {
        width: 33.33333%;
    }
    .small-margin-collapse > .large-5 {
        width: 41.66667%;
    }
    .small-margin-collapse > .large-6 {
        width: 50%;
    }
    .small-margin-collapse > .large-7 {
        width: 58.33333%;
    }
    .small-margin-collapse > .large-8 {
        width: 66.66667%;
    }
    .small-margin-collapse > .large-9 {
        width: 75%;
    }
    .small-margin-collapse > .large-10 {
        width: 83.33333%;
    }
    .small-margin-collapse > .large-11 {
        width: 91.66667%;
    }
    .small-margin-collapse > .large-12 {
        width: 100%;
    }
}
.small-padding-collapse {
    margin-right: 0;
    margin-left: 0;
}
.small-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0;
}
@media print, screen and (min-width: 40em) {
    .medium-margin-collapse,
    .medium-margin-collapse > .cell {
        margin-right: 0;
        margin-left: 0;
    }
}
@media print, screen and (min-width: 40em) {
    .medium-margin-collapse > .small-1 {
        width: 8.33333%;
    }
    .medium-margin-collapse > .small-2 {
        width: 16.66667%;
    }
    .medium-margin-collapse > .small-3 {
        width: 25%;
    }
    .medium-margin-collapse > .small-4 {
        width: 33.33333%;
    }
    .medium-margin-collapse > .small-5 {
        width: 41.66667%;
    }
    .medium-margin-collapse > .small-6 {
        width: 50%;
    }
    .medium-margin-collapse > .small-7 {
        width: 58.33333%;
    }
    .medium-margin-collapse > .small-8 {
        width: 66.66667%;
    }
    .medium-margin-collapse > .small-9 {
        width: 75%;
    }
    .medium-margin-collapse > .small-10 {
        width: 83.33333%;
    }
    .medium-margin-collapse > .small-11 {
        width: 91.66667%;
    }
    .medium-margin-collapse > .small-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 40em) {
    .medium-margin-collapse > .medium-1 {
        width: 8.33333%;
    }
    .medium-margin-collapse > .medium-2 {
        width: 16.66667%;
    }
    .medium-margin-collapse > .medium-3 {
        width: 25%;
    }
    .medium-margin-collapse > .medium-4 {
        width: 33.33333%;
    }
    .medium-margin-collapse > .medium-5 {
        width: 41.66667%;
    }
    .medium-margin-collapse > .medium-6 {
        width: 50%;
    }
    .medium-margin-collapse > .medium-7 {
        width: 58.33333%;
    }
    .medium-margin-collapse > .medium-8 {
        width: 66.66667%;
    }
    .medium-margin-collapse > .medium-9 {
        width: 75%;
    }
    .medium-margin-collapse > .medium-10 {
        width: 83.33333%;
    }
    .medium-margin-collapse > .medium-11 {
        width: 91.66667%;
    }
    .medium-margin-collapse > .medium-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 64em) {
    .medium-margin-collapse > .large-1 {
        width: 8.33333%;
    }
    .medium-margin-collapse > .large-2 {
        width: 16.66667%;
    }
    .medium-margin-collapse > .large-3 {
        width: 25%;
    }
    .medium-margin-collapse > .large-4 {
        width: 33.33333%;
    }
    .medium-margin-collapse > .large-5 {
        width: 41.66667%;
    }
    .medium-margin-collapse > .large-6 {
        width: 50%;
    }
    .medium-margin-collapse > .large-7 {
        width: 58.33333%;
    }
    .medium-margin-collapse > .large-8 {
        width: 66.66667%;
    }
    .medium-margin-collapse > .large-9 {
        width: 75%;
    }
    .medium-margin-collapse > .large-10 {
        width: 83.33333%;
    }
    .medium-margin-collapse > .large-11 {
        width: 91.66667%;
    }
    .medium-margin-collapse > .large-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 40em) {
    .medium-padding-collapse {
        margin-right: 0;
        margin-left: 0;
    }
    .medium-padding-collapse > .cell {
        padding-right: 0;
        padding-left: 0;
    }
}
@media print, screen and (min-width: 64em) {
    .large-margin-collapse,
    .large-margin-collapse > .cell {
        margin-right: 0;
        margin-left: 0;
    }
}
@media print, screen and (min-width: 64em) {
    .large-margin-collapse > .small-1 {
        width: 8.33333%;
    }
    .large-margin-collapse > .small-2 {
        width: 16.66667%;
    }
    .large-margin-collapse > .small-3 {
        width: 25%;
    }
    .large-margin-collapse > .small-4 {
        width: 33.33333%;
    }
    .large-margin-collapse > .small-5 {
        width: 41.66667%;
    }
    .large-margin-collapse > .small-6 {
        width: 50%;
    }
    .large-margin-collapse > .small-7 {
        width: 58.33333%;
    }
    .large-margin-collapse > .small-8 {
        width: 66.66667%;
    }
    .large-margin-collapse > .small-9 {
        width: 75%;
    }
    .large-margin-collapse > .small-10 {
        width: 83.33333%;
    }
    .large-margin-collapse > .small-11 {
        width: 91.66667%;
    }
    .large-margin-collapse > .small-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 64em) {
    .large-margin-collapse > .medium-1 {
        width: 8.33333%;
    }
    .large-margin-collapse > .medium-2 {
        width: 16.66667%;
    }
    .large-margin-collapse > .medium-3 {
        width: 25%;
    }
    .large-margin-collapse > .medium-4 {
        width: 33.33333%;
    }
    .large-margin-collapse > .medium-5 {
        width: 41.66667%;
    }
    .large-margin-collapse > .medium-6 {
        width: 50%;
    }
    .large-margin-collapse > .medium-7 {
        width: 58.33333%;
    }
    .large-margin-collapse > .medium-8 {
        width: 66.66667%;
    }
    .large-margin-collapse > .medium-9 {
        width: 75%;
    }
    .large-margin-collapse > .medium-10 {
        width: 83.33333%;
    }
    .large-margin-collapse > .medium-11 {
        width: 91.66667%;
    }
    .large-margin-collapse > .medium-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 64em) {
    .large-margin-collapse > .large-1 {
        width: 8.33333%;
    }
    .large-margin-collapse > .large-2 {
        width: 16.66667%;
    }
    .large-margin-collapse > .large-3 {
        width: 25%;
    }
    .large-margin-collapse > .large-4 {
        width: 33.33333%;
    }
    .large-margin-collapse > .large-5 {
        width: 41.66667%;
    }
    .large-margin-collapse > .large-6 {
        width: 50%;
    }
    .large-margin-collapse > .large-7 {
        width: 58.33333%;
    }
    .large-margin-collapse > .large-8 {
        width: 66.66667%;
    }
    .large-margin-collapse > .large-9 {
        width: 75%;
    }
    .large-margin-collapse > .large-10 {
        width: 83.33333%;
    }
    .large-margin-collapse > .large-11 {
        width: 91.66667%;
    }
    .large-margin-collapse > .large-12 {
        width: 100%;
    }
}
@media print, screen and (min-width: 64em) {
    .large-padding-collapse {
        margin-right: 0;
        margin-left: 0;
    }
    .large-padding-collapse > .cell {
        padding-right: 0;
        padding-left: 0;
    }
}
.small-offset-0 {
    margin-left: 0;
}
.grid-margin-x > .small-offset-0 {
    margin-left: 0.375rem;
}
.small-offset-1 {
    margin-left: 8.33333%;
}
.grid-margin-x > .small-offset-1 {
    margin-left: calc(8.33333% + 0.375rem);
}
.small-offset-2 {
    margin-left: 16.66667%;
}
.grid-margin-x > .small-offset-2 {
    margin-left: calc(16.66667% + 0.375rem);
}
.small-offset-3 {
    margin-left: 25%;
}
.grid-margin-x > .small-offset-3 {
    margin-left: calc(25% + 0.375rem);
}
.small-offset-4 {
    margin-left: 33.33333%;
}
.grid-margin-x > .small-offset-4 {
    margin-left: calc(33.33333% + 0.375rem);
}
.small-offset-5 {
    margin-left: 41.66667%;
}
.grid-margin-x > .small-offset-5 {
    margin-left: calc(41.66667% + 0.375rem);
}
.small-offset-6 {
    margin-left: 50%;
}
.grid-margin-x > .small-offset-6 {
    margin-left: calc(50% + 0.375rem);
}
.small-offset-7 {
    margin-left: 58.33333%;
}
.grid-margin-x > .small-offset-7 {
    margin-left: calc(58.33333% + 0.375rem);
}
.small-offset-8 {
    margin-left: 66.66667%;
}
.grid-margin-x > .small-offset-8 {
    margin-left: calc(66.66667% + 0.375rem);
}
.small-offset-9 {
    margin-left: 75%;
}
.grid-margin-x > .small-offset-9 {
    margin-left: calc(75% + 0.375rem);
}
.small-offset-10 {
    margin-left: 83.33333%;
}
.grid-margin-x > .small-offset-10 {
    margin-left: calc(83.33333% + 0.375rem);
}
.small-offset-11 {
    margin-left: 91.66667%;
}
.grid-margin-x > .small-offset-11 {
    margin-left: calc(91.66667% + 0.375rem);
}
@media print, screen and (min-width: 40em) {
    .medium-offset-0 {
        margin-left: 0;
    }
    .grid-margin-x > .medium-offset-0 {
        margin-left: 0.5rem;
    }
    .medium-offset-1 {
        margin-left: 8.33333%;
    }
    .grid-margin-x > .medium-offset-1 {
        margin-left: calc(8.33333% + 0.5rem);
    }
    .medium-offset-2 {
        margin-left: 16.66667%;
    }
    .grid-margin-x > .medium-offset-2 {
        margin-left: calc(16.66667% + 0.5rem);
    }
    .medium-offset-3 {
        margin-left: 25%;
    }
    .grid-margin-x > .medium-offset-3 {
        margin-left: calc(25% + 0.5rem);
    }
    .medium-offset-4 {
        margin-left: 33.33333%;
    }
    .grid-margin-x > .medium-offset-4 {
        margin-left: calc(33.33333% + 0.5rem);
    }
    .medium-offset-5 {
        margin-left: 41.66667%;
    }
    .grid-margin-x > .medium-offset-5 {
        margin-left: calc(41.66667% + 0.5rem);
    }
    .medium-offset-6 {
        margin-left: 50%;
    }
    .grid-margin-x > .medium-offset-6 {
        margin-left: calc(50% + 0.5rem);
    }
    .medium-offset-7 {
        margin-left: 58.33333%;
    }
    .grid-margin-x > .medium-offset-7 {
        margin-left: calc(58.33333% + 0.5rem);
    }
    .medium-offset-8 {
        margin-left: 66.66667%;
    }
    .grid-margin-x > .medium-offset-8 {
        margin-left: calc(66.66667% + 0.5rem);
    }
    .medium-offset-9 {
        margin-left: 75%;
    }
    .grid-margin-x > .medium-offset-9 {
        margin-left: calc(75% + 0.5rem);
    }
    .medium-offset-10 {
        margin-left: 83.33333%;
    }
    .grid-margin-x > .medium-offset-10 {
        margin-left: calc(83.33333% + 0.5rem);
    }
    .medium-offset-11 {
        margin-left: 91.66667%;
    }
    .grid-margin-x > .medium-offset-11 {
        margin-left: calc(91.66667% + 0.5rem);
    }
}
@media print, screen and (min-width: 64em) {
    .large-offset-0 {
        margin-left: 0;
    }
    .grid-margin-x > .large-offset-0 {
        margin-left: 0.5rem;
    }
    .large-offset-1 {
        margin-left: 8.33333%;
    }
    .grid-margin-x > .large-offset-1 {
        margin-left: calc(8.33333% + 0.5rem);
    }
    .large-offset-2 {
        margin-left: 16.66667%;
    }
    .grid-margin-x > .large-offset-2 {
        margin-left: calc(16.66667% + 0.5rem);
    }
    .large-offset-3 {
        margin-left: 25%;
    }
    .grid-margin-x > .large-offset-3 {
        margin-left: calc(25% + 0.5rem);
    }
    .large-offset-4 {
        margin-left: 33.33333%;
    }
    .grid-margin-x > .large-offset-4 {
        margin-left: calc(33.33333% + 0.5rem);
    }
    .large-offset-5 {
        margin-left: 41.66667%;
    }
    .grid-margin-x > .large-offset-5 {
        margin-left: calc(41.66667% + 0.5rem);
    }
    .large-offset-6 {
        margin-left: 50%;
    }
    .grid-margin-x > .large-offset-6 {
        margin-left: calc(50% + 0.5rem);
    }
    .large-offset-7 {
        margin-left: 58.33333%;
    }
    .grid-margin-x > .large-offset-7 {
        margin-left: calc(58.33333% + 0.5rem);
    }
    .large-offset-8 {
        margin-left: 66.66667%;
    }
    .grid-margin-x > .large-offset-8 {
        margin-left: calc(66.66667% + 0.5rem);
    }
    .large-offset-9 {
        margin-left: 75%;
    }
    .grid-margin-x > .large-offset-9 {
        margin-left: calc(75% + 0.5rem);
    }
    .large-offset-10 {
        margin-left: 83.33333%;
    }
    .grid-margin-x > .large-offset-10 {
        margin-left: calc(83.33333% + 0.5rem);
    }
    .large-offset-11 {
        margin-left: 91.66667%;
    }
    .grid-margin-x > .large-offset-11 {
        margin-left: calc(91.66667% + 0.5rem);
    }
}
.grid-y {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
}
.grid-y > .cell {
    width: auto;
    max-width: none;
}
.grid-y > .auto,
.grid-y > .shrink {
    height: auto;
}
.grid-y > .small-1,
.grid-y > .small-2,
.grid-y > .small-3,
.grid-y > .small-4,
.grid-y > .small-5,
.grid-y > .small-6,
.grid-y > .small-7,
.grid-y > .small-8,
.grid-y > .small-9,
.grid-y > .small-10,
.grid-y > .small-11,
.grid-y > .small-12,
.grid-y > .small-full,
.grid-y > .small-shrink {
    -webkit-flex-basis: auto;
    flex-basis: auto;
}
@media print, screen and (min-width: 40em) {
    .grid-y > .medium-1,
    .grid-y > .medium-2,
    .grid-y > .medium-3,
    .grid-y > .medium-4,
    .grid-y > .medium-5,
    .grid-y > .medium-6,
    .grid-y > .medium-7,
    .grid-y > .medium-8,
    .grid-y > .medium-9,
    .grid-y > .medium-10,
    .grid-y > .medium-11,
    .grid-y > .medium-12,
    .grid-y > .medium-full,
    .grid-y > .medium-shrink {
        -webkit-flex-basis: auto;
        flex-basis: auto;
    }
}
@media print, screen and (min-width: 64em) {
    .grid-y > .large-1,
    .grid-y > .large-2,
    .grid-y > .large-3,
    .grid-y > .large-4,
    .grid-y > .large-5,
    .grid-y > .large-6,
    .grid-y > .large-7,
    .grid-y > .large-8,
    .grid-y > .large-9,
    .grid-y > .large-10,
    .grid-y > .large-11,
    .grid-y > .large-12,
    .grid-y > .large-full,
    .grid-y > .large-shrink {
        -webkit-flex-basis: auto;
        flex-basis: auto;
    }
}
.grid-y > .small-1,
.grid-y > .small-2,
.grid-y > .small-3,
.grid-y > .small-4,
.grid-y > .small-5,
.grid-y > .small-6,
.grid-y > .small-7,
.grid-y > .small-8,
.grid-y > .small-9,
.grid-y > .small-10,
.grid-y > .small-11,
.grid-y > .small-12 {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
}
.grid-y > .small-1 {
    height: 8.33333%;
}
.grid-y > .small-2 {
    height: 16.66667%;
}
.grid-y > .small-3 {
    height: 25%;
}
.grid-y > .small-4 {
    height: 33.33333%;
}
.grid-y > .small-5 {
    height: 41.66667%;
}
.grid-y > .small-6 {
    height: 50%;
}
.grid-y > .small-7 {
    height: 58.33333%;
}
.grid-y > .small-8 {
    height: 66.66667%;
}
.grid-y > .small-9 {
    height: 75%;
}
.grid-y > .small-10 {
    height: 83.33333%;
}
.grid-y > .small-11 {
    height: 91.66667%;
}
.grid-y > .small-12 {
    height: 100%;
}
@media print, screen and (min-width: 40em) {
    .grid-y > .medium-auto {
        -webkit-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto;
    }
    .grid-y > .medium-1,
    .grid-y > .medium-2,
    .grid-y > .medium-3,
    .grid-y > .medium-4,
    .grid-y > .medium-5,
    .grid-y > .medium-6,
    .grid-y > .medium-7,
    .grid-y > .medium-8,
    .grid-y > .medium-9,
    .grid-y > .medium-10,
    .grid-y > .medium-11,
    .grid-y > .medium-12,
    .grid-y > .medium-shrink {
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto;
    }
    .grid-y > .medium-shrink {
        height: auto;
    }
    .grid-y > .medium-1 {
        height: 8.33333%;
    }
    .grid-y > .medium-2 {
        height: 16.66667%;
    }
    .grid-y > .medium-3 {
        height: 25%;
    }
    .grid-y > .medium-4 {
        height: 33.33333%;
    }
    .grid-y > .medium-5 {
        height: 41.66667%;
    }
    .grid-y > .medium-6 {
        height: 50%;
    }
    .grid-y > .medium-7 {
        height: 58.33333%;
    }
    .grid-y > .medium-8 {
        height: 66.66667%;
    }
    .grid-y > .medium-9 {
        height: 75%;
    }
    .grid-y > .medium-10 {
        height: 83.33333%;
    }
    .grid-y > .medium-11 {
        height: 91.66667%;
    }
    .grid-y > .medium-12 {
        height: 100%;
    }
}
@media print, screen and (min-width: 64em) {
    .grid-y > .large-auto {
        -webkit-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto;
    }
    .grid-y > .large-1,
    .grid-y > .large-2,
    .grid-y > .large-3,
    .grid-y > .large-4,
    .grid-y > .large-5,
    .grid-y > .large-6,
    .grid-y > .large-7,
    .grid-y > .large-8,
    .grid-y > .large-9,
    .grid-y > .large-10,
    .grid-y > .large-11,
    .grid-y > .large-12,
    .grid-y > .large-shrink {
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto;
    }
    .grid-y > .large-shrink {
        height: auto;
    }
    .grid-y > .large-1 {
        height: 8.33333%;
    }
    .grid-y > .large-2 {
        height: 16.66667%;
    }
    .grid-y > .large-3 {
        height: 25%;
    }
    .grid-y > .large-4 {
        height: 33.33333%;
    }
    .grid-y > .large-5 {
        height: 41.66667%;
    }
    .grid-y > .large-6 {
        height: 50%;
    }
    .grid-y > .large-7 {
        height: 58.33333%;
    }
    .grid-y > .large-8 {
        height: 66.66667%;
    }
    .grid-y > .large-9 {
        height: 75%;
    }
    .grid-y > .large-10 {
        height: 83.33333%;
    }
    .grid-y > .large-11 {
        height: 91.66667%;
    }
    .grid-y > .large-12 {
        height: 100%;
    }
}
.grid-padding-y .grid-padding-y {
    margin-top: -0.375rem;
    margin-bottom: -0.375rem;
}
@media print, screen and (min-width: 40em) {
    .grid-padding-y .grid-padding-y {
        margin-top: -0.5rem;
        margin-bottom: -0.5rem;
    }
}
.grid-padding-y > .cell {
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
}
@media print, screen and (min-width: 40em) {
    .grid-padding-y > .cell {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
}
.grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: stretch;
    align-items: stretch;
    width: 100vw;
}
.cell .grid-frame {
    width: 100%;
}
.cell-block {
    overflow-x: auto;
    max-width: 100%;
}
.cell-block,
.cell-block-y {
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
}
.cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
}
.cell-block-container {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    max-height: 100%;
}
.cell-block-container > .grid-x {
    max-height: 100%;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
}
@media print, screen and (min-width: 40em) {
    .medium-grid-frame {
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        align-items: stretch;
        width: 100vw;
    }
    .cell .medium-grid-frame {
        width: 100%;
    }
    .medium-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
    .medium-cell-block-container {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column;
        flex-direction: column;
        max-height: 100%;
    }
    .medium-cell-block-container > .grid-x {
        max-height: 100%;
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
    .medium-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        min-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
}
@media print, screen and (min-width: 64em) {
    .large-grid-frame {
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        align-items: stretch;
        width: 100vw;
    }
    .cell .large-grid-frame {
        width: 100%;
    }
    .large-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
    .large-cell-block-container {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column;
        flex-direction: column;
        max-height: 100%;
    }
    .large-cell-block-container > .grid-x {
        max-height: 100%;
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
    .large-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        min-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
}
.grid-y.grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: stretch;
    align-items: stretch;
    height: 100vh;
}
@media print, screen and (min-width: 40em) {
    .grid-y.medium-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        align-items: stretch;
        height: 100vh;
    }
}
@media print, screen and (min-width: 64em) {
    .grid-y.large-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        align-items: stretch;
        height: 100vh;
    }
}
.cell .grid-y.grid-frame {
    height: 100%;
}
@media print, screen and (min-width: 40em) {
    .cell .grid-y.medium-grid-frame {
        height: 100%;
    }
}
@media print, screen and (min-width: 64em) {
    .cell .grid-y.large-grid-frame {
        height: 100%;
    }
}
.grid-margin-y {
    margin-top: -0.375rem;
    margin-bottom: -0.375rem;
}
@media print, screen and (min-width: 40em) {
    .grid-margin-y {
        margin-top: -0.5rem;
        margin-bottom: -0.5rem;
    }
}
.grid-margin-y > .cell {
    height: calc(100% - 0.75rem);
    margin-top: 0.375rem;
    margin-bottom: 0.375rem;
}
@media print, screen and (min-width: 40em) {
    .grid-margin-y > .cell {
        height: calc(100% - 1rem);
        margin-top: 0.5rem;
        margin-bottom: 0.5rem;
    }
}
.grid-margin-y > .auto,
.grid-margin-y > .shrink {
    height: auto;
}
.grid-margin-y > .small-1 {
    height: calc(8.33333% - 0.75rem);
}
.grid-margin-y > .small-2 {
    height: calc(16.66667% - 0.75rem);
}
.grid-margin-y > .small-3 {
    height: calc(25% - 0.75rem);
}
.grid-margin-y > .small-4 {
    height: calc(33.33333% - 0.75rem);
}
.grid-margin-y > .small-5 {
    height: calc(41.66667% - 0.75rem);
}
.grid-margin-y > .small-6 {
    height: calc(50% - 0.75rem);
}
.grid-margin-y > .small-7 {
    height: calc(58.33333% - 0.75rem);
}
.grid-margin-y > .small-8 {
    height: calc(66.66667% - 0.75rem);
}
.grid-margin-y > .small-9 {
    height: calc(75% - 0.75rem);
}
.grid-margin-y > .small-10 {
    height: calc(83.33333% - 0.75rem);
}
.grid-margin-y > .small-11 {
    height: calc(91.66667% - 0.75rem);
}
.grid-margin-y > .small-12 {
    height: calc(100% - 0.75rem);
}
@media print, screen and (min-width: 40em) {
    .grid-margin-y > .auto,
    .grid-margin-y > .shrink {
        height: auto;
    }
    .grid-margin-y > .small-1 {
        height: calc(8.33333% - 1rem);
    }
    .grid-margin-y > .small-2 {
        height: calc(16.66667% - 1rem);
    }
    .grid-margin-y > .small-3 {
        height: calc(25% - 1rem);
    }
    .grid-margin-y > .small-4 {
        height: calc(33.33333% - 1rem);
    }
    .grid-margin-y > .small-5 {
        height: calc(41.66667% - 1rem);
    }
    .grid-margin-y > .small-6 {
        height: calc(50% - 1rem);
    }
    .grid-margin-y > .small-7 {
        height: calc(58.33333% - 1rem);
    }
    .grid-margin-y > .small-8 {
        height: calc(66.66667% - 1rem);
    }
    .grid-margin-y > .small-9 {
        height: calc(75% - 1rem);
    }
    .grid-margin-y > .small-10 {
        height: calc(83.33333% - 1rem);
    }
    .grid-margin-y > .small-11 {
        height: calc(91.66667% - 1rem);
    }
    .grid-margin-y > .small-12 {
        height: calc(100% - 1rem);
    }
    .grid-margin-y > .medium-auto,
    .grid-margin-y > .medium-shrink {
        height: auto;
    }
    .grid-margin-y > .medium-1 {
        height: calc(8.33333% - 1rem);
    }
    .grid-margin-y > .medium-2 {
        height: calc(16.66667% - 1rem);
    }
    .grid-margin-y > .medium-3 {
        height: calc(25% - 1rem);
    }
    .grid-margin-y > .medium-4 {
        height: calc(33.33333% - 1rem);
    }
    .grid-margin-y > .medium-5 {
        height: calc(41.66667% - 1rem);
    }
    .grid-margin-y > .medium-6 {
        height: calc(50% - 1rem);
    }
    .grid-margin-y > .medium-7 {
        height: calc(58.33333% - 1rem);
    }
    .grid-margin-y > .medium-8 {
        height: calc(66.66667% - 1rem);
    }
    .grid-margin-y > .medium-9 {
        height: calc(75% - 1rem);
    }
    .grid-margin-y > .medium-10 {
        height: calc(83.33333% - 1rem);
    }
    .grid-margin-y > .medium-11 {
        height: calc(91.66667% - 1rem);
    }
    .grid-margin-y > .medium-12 {
        height: calc(100% - 1rem);
    }
}
@media print, screen and (min-width: 64em) {
    .grid-margin-y > .large-auto,
    .grid-margin-y > .large-shrink {
        height: auto;
    }
    .grid-margin-y > .large-1 {
        height: calc(8.33333% - 1rem);
    }
    .grid-margin-y > .large-2 {
        height: calc(16.66667% - 1rem);
    }
    .grid-margin-y > .large-3 {
        height: calc(25% - 1rem);
    }
    .grid-margin-y > .large-4 {
        height: calc(33.33333% - 1rem);
    }
    .grid-margin-y > .large-5 {
        height: calc(41.66667% - 1rem);
    }
    .grid-margin-y > .large-6 {
        height: calc(50% - 1rem);
    }
    .grid-margin-y > .large-7 {
        height: calc(58.33333% - 1rem);
    }
    .grid-margin-y > .large-8 {
        height: calc(66.66667% - 1rem);
    }
    .grid-margin-y > .large-9 {
        height: calc(75% - 1rem);
    }
    .grid-margin-y > .large-10 {
        height: calc(83.33333% - 1rem);
    }
    .grid-margin-y > .large-11 {
        height: calc(91.66667% - 1rem);
    }
    .grid-margin-y > .large-12 {
        height: calc(100% - 1rem);
    }
}
.grid-frame.grid-margin-y {
    height: calc(100vh + 0.75rem);
}
@media print, screen and (min-width: 40em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 1rem);
    }
}
@media print, screen and (min-width: 64em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 1rem);
    }
}
@media print, screen and (min-width: 40em) {
    .grid-margin-y.medium-grid-frame {
        height: calc(100vh + 1rem);
    }
}
@media print, screen and (min-width: 64em) {
    .grid-margin-y.large-grid-frame {
        height: calc(100vh + 1rem);
    }
} /*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
}
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}
hr {
    box-sizing: content-box;
    overflow: visible;
}
pre {
    font-family: monospace, monospace;
    font-size: 1em;
}
a {
    background-color: transparent;
}
abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
}
b,
strong {
    font-weight: bolder;
}
code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sub {
    bottom: -0.25em;
}
sup {
    top: -0.5em;
}
img {
    border-style: none;
}
button,
input,
optgroup,
select,
textarea {
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}
button,
input {
    overflow: visible;
}
button,
select {
    text-transform: none;
}
[type="button"],
[type="reset"],
[type="submit"],
button {
    -webkit-appearance: button;
}
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0;
}
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText;
}
fieldset {
    padding: 0.35em 0.75em 0.625em;
}
legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal;
}
progress {
    vertical-align: baseline;
}
textarea {
    overflow: auto;
}
[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}
[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
}
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}
::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit;
}
details {
    display: block;
}
summary {
    display: list-item;
}
[hidden],
template {
    display: none;
}
.foundation-mq {
    font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em";
}
html {
    box-sizing: border-box;
    font-size: 100%;
}
*,
:after,
:before {
    box-sizing: inherit;
}
body {
    margin: 0;
    padding: 0;
    background: #fefefe;
    font-family: Inter, Helvetica, Roboto, Arial, sans-serif;
    font-weight: 400;
    line-height: 1.5;
    color: #0a0a0a;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
img {
    display: inline-block;
    vertical-align: middle;
    max-width: 100%;
    height: auto;
    -ms-interpolation-mode: bicubic;
}
textarea {
    height: auto;
    min-height: 50px;
    border-radius: 0;
}
select {
    box-sizing: border-box;
    width: 100%;
    border-radius: 0;
}
.map_canvas embed,
.map_canvas img,
.map_canvas object,
.mqa-display embed,
.mqa-display img,
.mqa-display object {
    max-width: none !important;
}
button {
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    border-radius: 0;
    background: transparent;
    line-height: 1;
    cursor: auto;
}
[data-whatinput="mouse"] button {
    outline: 0;
}
pre {
    overflow: auto;
}
button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
}
.is-visible {
    display: block !important;
}
.is-hidden {
    display: none !important;
}
blockquote,
dd,
div,
dl,
dt,
form,
h1,
h2,
h3,
h4,
h5,
h6,
li,
ol,
p,
pre,
td,
th,
ul {
    margin: 0;
    padding: 0;
}
p {
    margin-bottom: 1rem;
    font-size: inherit;
    line-height: 1.6;
    text-rendering: optimizeLegibility;
}
em,
i {
    font-style: italic;
}
b,
em,
i,
strong {
    line-height: inherit;
}
b,
strong {
    font-weight: 700;
}
small {
    font-size: 80%;
    line-height: inherit;
}
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: Inter, Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: inherit;
    text-rendering: optimizeLegibility;
}
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
    line-height: 0;
    color: #cacaca;
}
.h1,
h1 {
    font-size: 2.5rem;
}
.h1,
.h2,
h1,
h2 {
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: 1.2rem;
}
.h2,
h2 {
    font-size: 1.875rem;
}
.h3,
h3 {
    font-size: 1.1875rem;
}
.h3,
.h4,
h3,
h4 {
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: 1.2rem;
}
.h4,
h4 {
    font-size: 1.125rem;
}
.h5,
h5 {
    font-size: 1.0625rem;
}
.h5,
.h6,
h5,
h6 {
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: 1.2rem;
}
.h6,
h6 {
    font-size: 1rem;
}
@media print, screen and (min-width: 40em) {
    .h1,
    h1 {
        font-size: 2.5rem;
    }
    .h2,
    h2 {
        font-size: 1.875rem;
    }
    .h3,
    h3 {
        font-size: 1.9375rem;
    }
    .h4,
    h4 {
        font-size: 1.5625rem;
    }
    .h5,
    h5 {
        font-size: 1.25rem;
    }
    .h6,
    h6 {
        font-size: 1rem;
    }
}
a {
    line-height: inherit;
    color: #1779ba;
    text-decoration: none;
    cursor: pointer;
}
a:focus,
a:hover {
    color: #1468a0;
}
a img,
hr {
    border: 0;
}
hr {
    clear: both;
    max-width: 60rem;
    height: 0;
    margin: 0;
    border-bottom: 2px solid #e6e6e6;
}
dl,
ol,
ul {
    margin-bottom: 1rem;
    list-style-position: outside;
    line-height: 1.6;
}
li {
    font-size: inherit;
}
ul {
    list-style-type: disc;
}
ol,
ul {
    margin-left: 1.25rem;
}
ol ol,
ol ul,
ul ol,
ul ul {
    margin-left: 1.25rem;
    margin-bottom: 0;
}
dl {
    margin-bottom: 1rem;
}
dl dt {
    margin-bottom: 0.3rem;
    font-weight: 700;
}
blockquote {
    margin: 0 0 1rem;
    padding: 0.5625rem 1.25rem 0 1.1875rem;
    border-left: 1px solid #cacaca;
}
blockquote,
blockquote p {
    line-height: 1.6;
    color: #8a8a8a;
}
cite {
    display: block;
    font-size: 0.8125rem;
    color: #8a8a8a;
}
cite:before {
    content: "— ";
}
abbr,
abbr[title] {
    border-bottom: 1px dotted #0a0a0a;
    cursor: help;
    text-decoration: none;
}
figure {
    margin: 0;
}
code {
    padding: 0.125rem 0.3125rem 0.0625rem;
    border: 1px solid #cacaca;
    font-weight: 400;
}
code,
kbd {
    background-color: #e6e6e6;
    font-family: Consolas, Liberation Mono, Courier, monospace;
    color: #0a0a0a;
}
kbd {
    margin: 0;
    padding: 0.125rem 0.25rem 0;
}
.subheader {
    margin-top: 0.2rem;
    margin-bottom: 0.5rem;
    font-weight: 400;
    line-height: 1.4;
    color: #8a8a8a;
}
.lead {
    font-size: 125%;
    line-height: 1.6;
}
.stat {
    font-size: 2.5rem;
    line-height: 1;
}
p + .stat {
    margin-top: -1rem;
}
ol.no-bullet,
ul.no-bullet {
    margin-left: 0;
    list-style: none;
}
.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}
.text-center {
    text-align: center;
}
.text-justify {
    text-align: justify;
}
@media print, screen and (min-width: 40em) {
    .medium-text-left {
        text-align: left;
    }
    .medium-text-right {
        text-align: right;
    }
    .medium-text-center {
        text-align: center;
    }
    .medium-text-justify {
        text-align: justify;
    }
}
@media print, screen and (min-width: 64em) {
    .large-text-left {
        text-align: left;
    }
    .large-text-right {
        text-align: right;
    }
    .large-text-center {
        text-align: center;
    }
    .large-text-justify {
        text-align: justify;
    }
}
.show-for-print {
    display: none !important;
}
@media print {
    * {
        background: transparent !important;
        box-shadow: none !important;
        color: #000 !important;
        text-shadow: none !important;
    }
    .show-for-print {
        display: block !important;
    }
    .hide-for-print {
        display: none !important;
    }
    table.show-for-print {
        display: table !important;
    }
    thead.show-for-print {
        display: table-header-group !important;
    }
    tbody.show-for-print {
        display: table-row-group !important;
    }
    tr.show-for-print {
        display: table-row !important;
    }
    td.show-for-print,
    th.show-for-print {
        display: table-cell !important;
    }
    a,
    a:visited {
        text-decoration: underline;
    }
    a[href]:after {
        content: " (" attr(href) ")";
    }
    .ir a:after,
    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }
    abbr[title]:after {
        content: " (" attr(title) ")";
    }
    blockquote,
    pre {
        border: 1px solid #8a8a8a;
        page-break-inside: avoid;
    }
    thead {
        display: table-header-group;
    }
    img,
    tr {
        page-break-inside: avoid;
    }
    img {
        max-width: 100% !important;
    }
    @page {
        margin: 0.5cm;
    }
    h2,
    h3,
    p {
        orphans: 3;
        widows: 3;
    }
    h2,
    h3 {
        page-break-after: avoid;
    }
    .print-break-inside {
        page-break-inside: auto;
    }
}
.top-bar {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    padding: 0;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.top-bar,
.top-bar ul {
    background-color: #fefefe;
}
.top-bar input {
    max-width: 200px;
    margin-right: 1rem;
}
.top-bar .input-group-field {
    width: 100%;
    margin-right: 0;
}
.top-bar input.button {
    width: auto;
}
.top-bar .top-bar-left,
.top-bar .top-bar-right {
    -webkit-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}
@media print, screen and (min-width: 40em) {
    .top-bar {
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
    .top-bar .top-bar-left {
        -webkit-flex: 1 1 auto;
        flex: 1 1 auto;
        margin-right: auto;
    }
    .top-bar .top-bar-right {
        -webkit-flex: 0 1 auto;
        flex: 0 1 auto;
        margin-left: auto;
    }
}
@media screen and (max-width: 63.99875em) {
    .top-bar.stacked-for-medium {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .top-bar.stacked-for-medium .top-bar-left,
    .top-bar.stacked-for-medium .top-bar-right {
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
}
@media screen and (max-width: 74.99875em) {
    .top-bar.stacked-for-large {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .top-bar.stacked-for-large .top-bar-left,
    .top-bar.stacked-for-large .top-bar-right {
        -webkit-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
}
.top-bar-title {
    margin: 0.5rem 1rem 0.5rem 0;
}
.top-bar-left,
.top-bar-right,
.top-bar-title {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
}
@font-face {
    font-family: DINWeb;
    src: url(fonts/DINWeb.woff) format("woff");
}
@font-face {
    font-family: DINWeb-Light;
    src: url(fonts/DINWeb-Light.woff) format("woff");
}
@font-face {
    font-family: DINWeb-Medium;
    src: url(fonts/DINWeb-Medium.woff) format("woff");
}
@font-face {
    font-family: DINWeb-Bold;
    src: url(fonts/9cab3d10-a1a9-4145-ab8a-cde6265a011d.eot?#iefix);
    src: url(fonts/9cab3d10-a1a9-4145-ab8a-cde6265a011d.eot?#iefix) format("eot"), url(fonts/55fa1cf8-baf8-4bf8-9718-b096b1dd231f.woff2) format("woff2"), url(fonts/4cadc2f9-fb32-4b99-b1f2-9ce6d68afbd5.woff) format("woff"),
        url(fonts/24018d68-3235-4323-9ec0-4a86537b0f30.ttf) format("truetype");
}
@font-face {
    font-family: DINWeb-Black;
    src: url(fonts/855cca78-9141-48c7-bc2d-5d78d489f326.eot?#iefix);
    src: url(fonts/855cca78-9141-48c7-bc2d-5d78d489f326.eot?#iefix) format("eot"), url(fonts/d6241c0e-d7b5-46c2-8d41-524b7a7c86d1.woff2) format("woff2"), url(fonts/b02e1860-f927-4d9a-9f4f-e66d2a5760d9.woff) format("woff"),
        url(fonts/2e5b5154-6c68-4104-b8b3-fde29e396482.ttf) format("truetype");
}
* {
    box-sizing: border-box;
}
body,
html {
    background: #fff;
}
.restrain {
    max-width: 1160px;
    margin: 0 auto;
}
img {
    display: block;
}
button::-moz-focus-inner {
    border: 0;
}
a:focus,
button:focus {
    outline: none;
}
section.karriere .details .fliesstext a:not(.button),
section.karriere .text .fliesstext a:not(.button),
section.unternehmen .fliesstext a:not(.button) {
    color: inherit;
    text-decoration: underline;
}
section.karriere .details .fliesstext a:not(.button):hover,
section.karriere .text .fliesstext a:not(.button):hover,
section.unternehmen .fliesstext a:not(.button):hover {
    color: #003b71;
}
.grecaptcha-badge {
    visibility: hidden !important;
}
.single-lackus_joboffer #main > section:first-child {
    padding-top: 160px;
    background: #cfd2d3;
}
.single-lackus_joboffer #main > section:last-child {
    padding-bottom: 60px;
}
.single-lackus_joboffer section a.button {
    font-family: DINWeb-Medium, sans-serif;
    font-weight: 400;
    border-radius: 2px;
    background-color: #f0df00;
    border-color: #f0df00;
    padding: 0.6em 1em 0.5em;
    margin-top: 3em;
}
.single-lackus_joboffer section h1,
.single-lackus_joboffer section h2,
.single-lackus_joboffer section h3,
.single-lackus_joboffer section h4,
.single-lackus_joboffer section h5,
.single-lackus_joboffer section h6 {
    margin-bottom: 1em;
}
.icons ul {
    padding: 0;
    list-style-type: none;
    display: -webkit-flex;
    display: flex;
    line-height: 1;
    margin: 0 0 32px;
}
.icons ul li:not(:last-child) {
    margin-right: 28px;
}
.icons ul a {
    display: block;
    overflow: hidden;
    text-indent: -1000px;
    background: red;
    width: 33px;
    height: 33px;
}
.icons ul .icon-linkedin a {
    background: url(img/logo-linkedin.svg) no-repeat;
    background-size: 100% auto;
    background-size: contain;
}
.icons ul .icon-xing a {
    background: url(img/logo-xing.svg) no-repeat;
    background-size: 100% auto;
    background-size: contain;
}
.icons ul .icon-facebook a {
    background: url(img/logo-facebook.svg) no-repeat;
    background-size: 100% auto;
    background-size: contain;
}
.admin-bar #contact-container {
    top: 114px;
}
.scrolled #contact-container {
    top: 62px;
}
.scrolled #contact-container .scroll {
    max-height: calc(100vh - 62px);
}
.scrolled .admin-bar #contact-container {
    top: 94px;
}
#contact-container.is-open {
    max-height: 100vh;
}
html.contact-is-open,
html.contact-is-open body {
    overflow: hidden;
}
#contact-container {
    transition: all 0.2s ease;
    position: fixed;
    top: 82px;
    left: 0;
    right: 0;
    z-index: 100;
    background: rgba(28, 33, 36, 0.9);
    overflow: hidden;
    max-height: 0;
}
#contact-container a:hover {
    text-decoration: underline;
}
#contact-container .widget-title {
    display: none !important;
}
#contact-container .icons ul .icon-linkedin a {
    background-image: url(img/logo-linkedin-grey.svg);
}
#contact-container .icons ul .icon-xing a {
    background-image: url(img/logo-xing-grey.svg);
}
#contact-container .icons ul .icon-facebook a {
    background-image: url(img/logo-facebook-grey.svg);
}
#contact-container .scroll {
    max-height: calc(100vh - 82px);
    overflow: auto;
}
#contact-container .restrain {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 46px;
    padding-bottom: 37px;
}
#contact-container.fliesstext {
    font-size: 18px;
    line-height: 1.33;
}
#contact-container .contactform:last-child {
    width: 32.5%;
    padding-right: 5em;
}
#contact-container .contactform:last-child .textwidget > p:first-child {
    font-family: DINWeb-Bold, sans-serif;
    font-weight: 400;
}
#contact-container .contactform:last-child p:not(:first-child) {
    margin-bottom: 2.67em;
}
#contact-container .contactform:last-child p > strong {
    font-size: 18px;
}
#contact-container .contactform:last-child h5,
#contact-container .contactform:last-child h6 {
    margin-bottom: 0.43em;
}
#contact-container .contactform:first-child {
    width: 54%;
    margin-right: auto;
}
#contact-container .contactform:first-child h4 {
    position: relative;
}
#contact-container .contactform:first-child h4 a.close {
    top: 16px;
    background-image: url(img/x-white-big.svg);
}
#contact-container .contactform:nth-child(2) {
    width: 54%;
}
#contact-container .contactform b,
#contact-container .contactform div.wpcf7-acceptance-missing,
#contact-container .contactform div.wpcf7-validation-errors,
#contact-container .contactform h5,
#contact-container .contactform h6,
#contact-container .contactform p.legend,
#contact-container .contactform strong {
    letter-spacing: normal;
    font-size: 16px;
    color: #cfd2d3;
    font-family: DINWeb-Bold, sans-serif;
    font-weight: 400;
}
#contact-container .contactform div.wpcf7-acceptance-missing,
#contact-container .contactform div.wpcf7-validation-errors {
    border: 0;
    padding: 0;
    color: red;
}
#contact-container .contactform h5,
#contact-container .contactform h6 {
    color: #cfd2d3 !important;
}
#contact-container .contactform p.legend {
    color: #323e48;
}
#contact-container .contactform .wpcf7-form.invalid p.legend {
    display: none !important;
}
#contact-container .contactform h4 {
    margin-bottom: 0.738em;
}
#contact-container .contactform p.anliegen {
    margin-bottom: 0.8em;
}
#contact-container .contactform h5,
#contact-container .contactform h6 {
    margin-bottom: 1.06em;
}
#contact-container.fliesstext,
#contact-container.fliesstext a,
#contact-container.fliesstext h1,
#contact-container.fliesstext h2,
#contact-container.fliesstext h3,
#contact-container.fliesstext h4,
#contact-container.fliesstext h5,
#contact-container.fliesstext h6 {
    color: #fff;
}
#contact-container.fliesstext .recaptcha-text a {
    text-decoration: underline;
}
#contact-container form p:not(.recaptcha-text) {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 1.29em;
}
#contact-container form p.captcha {
    align-items: flex-start;
}

#contact-container form p:not(.recaptcha-text) br {
    display: none !important;
}
#contact-container form p:not(.recaptcha-text) .wpcf7-form-control-wrap {
    width: 300px;
    max-width: 48%;
    margin-bottom: 1.38em;
}
#contact-container form p:not(.recaptcha-text) .wpcf7-form-control-wrap .wpcf7-not-valid-tip {
    display: none;
}
#contact-container form p:not(.recaptcha-text) .wpcf7-form-control-wrap.ihre-mitteilung,
#contact-container form p:not(.recaptcha-text) .wpcf7-form-control-wrap.strasse {
    width: 100%;
    max-width: 100%;
}
#contact-container form p:not(.recaptcha-text) .wpcf7-form-control-wrap.ihre-mitteilung {
    margin-bottom: 0;
}
#contact-container form label {
    display: none;
}
#contact-container form .nice-select,
#contact-container form input:not(.button),
#contact-container form textarea {
    font-size: 18px;
    display: block;
    margin: 0;
    padding: 0.3em 9px 0.2em 7px;
    border: 0;
    width: 100%;
    color: #fff;
    box-shadow: none;
    outline: none;
    border-bottom: 1px solid #f0df00;
    background: #323e48;
    line-height: 1.27;
}
#contact-container form .nice-select:invalid:not(:focus):not(:placeholder-shown),
#contact-container form input:not(.button):invalid:not(:focus):not(:placeholder-shown),
#contact-container form textarea:invalid:not(:focus):not(:placeholder-shown) {
    border-color: red;
}
#contact-container form .nice-select::-webkit-input-placeholder,
#contact-container form input:not(.button)::-webkit-input-placeholder,
#contact-container form textarea::-webkit-input-placeholder {
    opacity: 1;
    color: #fff;
}
#contact-container form .nice-select::-moz-placeholder,
#contact-container form input:not(.button)::-moz-placeholder,
#contact-container form textarea::-moz-placeholder {
    opacity: 1;
    color: #fff;
}
#contact-container form .nice-select:-ms-input-placeholder,
#contact-container form input:not(.button):-ms-input-placeholder,
#contact-container form textarea:-ms-input-placeholder {
    opacity: 1;
    color: #fff;
}
#contact-container form .nice-select::-ms-input-placeholder,
#contact-container form input:not(.button)::-ms-input-placeholder,
#contact-container form textarea::-ms-input-placeholder {
    opacity: 1;
    color: #fff;
}
#contact-container form .nice-select::placeholder,
#contact-container form input:not(.button)::placeholder,
#contact-container form textarea::placeholder {
    opacity: 1;
    color: #fff;
}
#contact-container form .nice-select.wpcf7-not-valid,
#contact-container form input:not(.button).wpcf7-not-valid,
#contact-container form textarea.wpcf7-not-valid {
    border: 1px solid red !important;
}
#contact-container div.wpcf7-response-output {
    margin: 0 0 1.29em;
}
.nice-select {
    float: none;
    border-radius: 0 !important;
    border: 0 !important;
    height: 32px;
    min-width: 220px;
    width: auto !important;
    max-width: 100%;
    display: inline-block !important;
}
.nice-select > .current {
    padding-right: 30px;
}
.nice-select:after {
    border: 0;
    content: "";
    display: block;
    height: 18px;
    width: 33px;
    margin-top: 0;
    pointer-events: none;
    position: absolute;
    right: 4px;
    top: 50%;
    background: url(img/select-pfeil.svg) no-repeat 50%;
    background-size: 100% auto;
    background-size: contain;
    transition: all 0.15s ease-in-out;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
}
.nice-select.open:after {
    -webkit-transform: translateY(-50%) scaleY(-1);
    transform: translateY(-50%) scaleY(-1);
}
.nice-select .list {
    margin: 0;
    background-color: #323e48;
    border-radius: 0;
    box-shadow: 0;
    width: 100%;
    border-top: 1px solid #cfd2d3;
    box-shadow: 0 5px 8px -3px rgba(0, 0, 0, 0.5);
}
.nice-select .list > li:first-child {
    display: none;
}
.nice-select .option {
    font-weight: 400;
    line-height: 32px;
    min-height: 32px;
    padding-left: 7px;
    padding-right: 9px;
    border-bottom: 1px solid #cfd2d3;
}
.nice-select .option.focus,
.nice-select .option.selected,
.nice-select .option.selected.focus,
.nice-select .option:hover {
    background-color: inherit;
    font-weight: 400;
}
@media (max-width: 1360px) and (min-width: 1024px) {
    #contact-container .restrain {
        padding-left: 100px;
        padding-right: 100px;
    }
    #contact-container .contactform:last-child {
        width: 270px;
        padding-right: 0;
    }
    #contact-container .contactform:nth-child(2) {
        width: calc(100% - 320px);
    }
}
@media (max-width: 1023px) {
    body > #main {
        max-width: 100%;
        overflow: hidden;
    }
    #contact-container {
        top: 65px !important;
    }
    #contact-container .scroll {
        max-height: calc(100vh - 65px) !important;
    }
    #contact-container .restrain {
        display: block;
        padding: 25px 24px 30px;
    }
    #contact-container .contactform:first-child {
        width: 100%;
        margin-right: 0;
        padding-top: 45px;
        position: relative;
    }
    #contact-container .contactform:first-child h4 {
        position: static;
    }
    #contact-container .contactform:first-child h4 a.close {
        top: 0;
        background-image: url(img/x-white-small.svg);
    }
    #contact-container .contactform h4 {
        margin-bottom: 1em;
    }
    #contact-container .contactform:nth-child(2) {
        width: 100%;
        padding-right: 26px;
    }
    #contact-container form p {
        display: block !important;
        margin-bottom: 2.55em !important;
    }
    #contact-container form p.message,
    #contact-container form p.recaptcha-text {
        margin-bottom: 1.33em !important;
    }
    #contact-container form p:not(.recaptcha-text) .wpcf7-form-control-wrap {
        display: block;
        width: 100%;
        max-width: 100%;
    }
    #contact-container .contactform:last-child {
        width: 100%;
        padding-right: 2em;
        padding-top: 30px;
    }
}
.cc-window.cc-banner,
.cc-window.cc-floating {
    padding: 17px 0 14px;
    right:auto;
}
.cc-revoke {
    display: none !important;
}
.cc-banner,
.cc-window {
    display: block;
    width: 100%;
    color: #fff;
    font-family: DINWeb-Light, sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.27;
    max-width: 100% !important;
    bottom: 0 !important;
    background: rgba(28, 33, 36, 0.9);
}
.cc-banner strong,
.cc-window strong {
    color: #f0df00;
    font-family: DINWeb-Bold, sans-serif;
    font-weight: 400;
}
.cc-banner .cc-link,
.cc-window .cc-link {
    opacity: 1;
    padding: 0;
    text-decoration: none;
    color: #fff;
    font-family: DINWeb-Bold, sans-serif;
    font-weight: 400;
}
.cc-banner .cc-btn,
.cc-window .cc-btn {
    text-align: center;
    min-width: 140px;
    display: inline-block;
    border: 1px solid #f0df00;
    border-radius: 2px;
    padding: 0.45em 1em 0.65em;
    margin: 0.3em 0.5em;
    color: #ebe717;
    background: transparent;
    font-size: 16px;
    font-family: DINWeb-Bold, sans-serif;
    line-height: 1.3125;
    font-weight: 400;
}
.cc-banner .cc-btn.cc-deny,
.cc-window .cc-btn.cc-deny {
    border-color: #CFD2D3;
    color: #CFD2D3;
}



.cc-banner .restrain,
.cc-window .restrain {
    max-width: 1160px;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    align-items: flex-start;
}
.cc-banner.cc-floating .cc-message,
.cc-banner .cc-message,
.cc-window.cc-floating .cc-message,
.cc-window .cc-message {
    margin: 0 30px 0 0;
}
.cc-banner .cc-close,
.cc-window .cc-close {
    top: 27px;
    right: 27px;
    opacity: 1;
    overflow: hidden;
    background: url(img/x-white-small.svg) no-repeat 50%;
    background-size: 100% auto;
    background-size: contain;
    text-indent: -1000px;
    display: block;
    width: 19px;
    height: 19px;
}
@media (max-width: 1360px) and (min-width: 1024px) {
    .cc-banner .restrain,
    .cc-window .restrain {
        width: 100%;
        max-width: 100%;
        padding-left: 100px;
        padding-right: 100px;
    }
}
@media (max-width: 1023px) {
    .cc-window {
        padding: 80px 20px 20px !important;
    }
    .cc-banner .restrain,
    .cc-window .restrain {
        display: block;
    }
    .cc-banner.cc-floating .cc-message,
    .cc-banner .cc-message,
    .cc-window.cc-floating .cc-message,
    .cc-window .cc-message {
        margin: 0 0 0.8em;
    }
    .cc-banner .cc-btn, .cc-window .cc-btn {
        margin-left: 0; margin-right:0;
    }
    .cc-banner .cc-btn + .cc-btn, .cc-window .cc-btn  + .cc-btn {
        margin-left: 1em;
    }
    .cc-banner .cc-close,
    .cc-window .cc-close {
        top: 32px;
        right: 25px;
    }
}
footer .container {
    padding: 57px 0 31px;
    font-family: DINWeb-Light, sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.67;
    color: #2b2d33;
    background: #fff;
}
footer b,
footer h3,
footer h4,
footer h5,
footer h6,
footer strong {
    font-weight: 400;
    font-family: DINWeb-Bold, sans-serif;
}
footer h4 {
    font-size: 12px;
    line-height: 2;
}
footer h4,
footer p {
    margin-bottom: 0.5em;
    position: relative;
}
footer h4:last-child,
footer p:last-child {
    margin-bottom: 0;
}
footer h5,
footer h6 {
    color: #003057;
    font-size: 18px;
    line-height: 1.11;
    margin-bottom: 0.9em;
}
footer .footer-top {
    margin-bottom: 41px;
}
footer .footer-top,
footer .footer-top > *,
footer h3 {
    line-height: 1.27 !important;
    color: #003057;
    font-family: DINWeb-Black, sans-serif;
    font-size: 22px;
}
footer h3 {
    margin-bottom: 1.45em;
}
footer .copy {
    color: #737888;
    font-family: DINWeb-Medium, sans-serif;
    font-size: 12px;
    padding-right: 3.9em;
    white-space: nowrap;
}
footer a {
    color: #2b2d33;
    text-decoration: none;
}
footer a:hover {
    color: #2b2d33;
    text-decoration: underline;
}
footer .icons {
    margin-top: -50px;
}
footer .above-icons {
    padding-bottom: 70px;
}
footer .footer {
    line-height: 1;
}
footer .footer-menu {
    margin: 0;
    padding: 0;
    list-style-type: none;
    display: -webkit-flex;
    display: flex;
    line-height: 1;
}
footer .footer-menu li:not(:last-child) {
    font-size: 12px;
    margin-right: 40px;
}
footer .footer-menu a {
    display: block;
    font-family: DINWeb-Medium, sans-serif;
    font-size: 12px;
}
footer .maps-links {
    padding-bottom: 0.5em;
}
footer .maps-links .widget {
    width: 380px;
    max-width: 100%;
    padding-right: 30px;
}
footer .maps-links p {
    padding-right: 54px;
}
footer .maps-links a {
    position: absolute;
    display: block;
    overflow: hidden;
    text-indent: -1000px;
    background: url(img/icon-maps.svg) no-repeat;
    background-size: 100% auto;
    background-size: contain;
    width: 24px;
    height: 23px;
    top: 4px;
    right: 0;
}
@media (max-width: 1023px) {
    footer .container {
        padding-left: 23px;
        padding-right: 23px;
    }
}
@media (max-width: 640px) {
    footer .icons ul {
        margin-bottom: 40px;
    }
    footer .container {
        padding: 20px 23px 30px;
    }
    footer .footer-top {
        margin-bottom: 8px;
    }
    footer .copy {
        padding-right: 1.16em;
        white-space: normal;
    }
    footer .footer .links {
        margin-left: auto;
        -webkit-flex: 0 1 auto;
        flex: 0 1 auto;
    }
    footer .footer-menu li:not(:last-child) {
        margin-right: 1em;
    }
    footer .icons {
        margin-top: 0;
    }
    footer .footer {
        margin-top: 35px;
    }
    footer .above-icons {
        padding-bottom: 16px;
    }
    footer .maps-links .widget {
        width: 100%;
        padding-right: 12px;
    }
    footer .maps-links p {
        padding-right: 28px;
    }
}
header {
    background: rgba(28, 33, 36, 0.9);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
}
header .container {
    padding: 25px 0 15px;
    transition: padding 0.2s ease;
}
header .container,
header a {
    font-family: DINWeb-Light, sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1;
    color: #fefefe;
}
header .featured-product .title a {
    font-family: DINWeb-Bold, sans-serif;
    color: #fff;
    padding-top:0;
}
/* header .header-menu ul.pmenu li.is-current a,
header .header-menu ul.pmenu li.is-current a:not(:hover), */
header a:focus,
header a:hover {
    color: #f0df00;
}
header .featured-product a:hover,
header .featured-product .fliesstext .button:hover {
    color: #f0df00;
	border-color: #f0df00;
}

header li,
header ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
header #branding a {
    display: block;
    width: 197px;
    height: 32px;
    max-width: 100%;
    background: url(img/logo-lackus.svg) no-repeat;
    background-size: 100% auto;
    background-size: contain;
    overflow: hidden;
    text-indent: -1000px;
    transition: all 0.2s ease;
}
header li.button a {
    display: block;
    background: #f0df00;
    border-radius: 2px;
    color: #323e48;
    font-family: DINWeb-Medium, sans-serif;
    font-size: 16px;
    line-height: 1;
    padding: 0.8em 1em 0.7em;
    transition: padding 0.2s ease, background 0.2s ease;
}
header li.mobile-only {
    display: none;
}
header .header-menu {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    padding-left: 6%;
    position: relative;
}
header .header-menu a {
    display: block;
    padding-top: 10px;
}
header .header-menu .kontakt {
    margin-left: auto;
}
header .header-menu > li:not(:last-child):not(.button.kontakt) {
    padding-right: 10.5%;
}
header .header-menu li.button.kontakt {
    margin-right: 0;
    white-space: nowrap;
}
header .header-menu .sub-menu {
    display: none;
    position: absolute;
    top: 55px;
    padding-top: 1em;
    padding-bottom: 3.5em;
}
header .header-menu .sub-menu,
header .header-menu .sub-menu a,
header .header-menu .sub-menu li {
    line-height: 1.27;
}
header .header-menu .sub-menu li.title a {
    font-weight: 400;
    font-family: DINWeb-Black, sans-serif;
}
header .header-menu .sub-menu li {
    display: block;
    margin-right: 0;
    z-index: 2;
    position: relative;
}
header .header-menu .sub-menu:before {
    background: rgba(28, 33, 36, 0.9);
    top: 2px;
    height: calc( 100% - 2px );
}
header .header-menu .sub-menu:after,
header .header-menu .sub-menu:before {
    content: "";
    display: block;
    position: absolute;
    left: -100vw;
    width: 200vw;
    z-index: 1;
}
header .header-menu .sub-menu:after {
    background: rgba(28, 33, 36, 0.01);
    top: 0;
    height: 2px;
}
header #menu-toggle {
    display: none;
}
header li.is-open .sub-menu {
    display: flex;
}
.contact-is-open header li.is-open .sub-menu {
    display: none !important;
}
.scrolled header .header-menu .sub-menu {
    top: 41px;
}
.admin-bar header {
    top: 32px;
}

.produkte-subnav {
    display: none;
    position: relative;
}
header .header-menu .sub-menu.produkte-subnav {
    padding: 0 0 0 6%;
    left:0;
    width:100%;
	flex-wrap: no-wrap;
}
.produkte-subnav ul.pmenu {
    position: relative; z-index:2;
    padding: 28px 20px 40px 0;
	flex: 0 0 53.1%;
}
.produkte-subnav ul.pmenu li {
    position: static;
    margin-top: 2px;
}
.produkte-subnav ul.pmenu li.title + li:not(.title) {
    margin-top: 6px;
}
.produkte-subnav ul.pmenu li.title + li.title {
    margin-top: 10px;
}
.produkte-subnav ul.pmenu .image {
    position: absolute;
    top:54px;bottom:64px;left:-11.5%;
    transform: translateX(-100%);
    width: 215px;
    overflow:hidden;
    opacity:0;
    transition: opacity 150ms ease;
    display: flex;
    align-items: center;
	z-index:1;
}
.produkte-subnav ul.pmenu li.is-hover .image {
    opacity:1;
	z-index:5;
}
.produkte-subnav ul.pmenu .image img {
    display: block;
    width:100%;
    height:100%;
    object-fit: contain;
    object-position: center right;
}
header .header-menu  ul.pmenu .image a {
    padding-top: 0 !important;
    border-radius:2px;
    overflow:hidden;
}
header .header-menu  ul.pmenu .text a {
    padding-top: 0 !important;
}
header .header-menu  ul.pmenu a:not(:hover) {
    color:#8c8c8c;
}
header .header-menu  ul.pmenu .title,
header .header-menu  ul.pmenu .title a:not(:hover) {
    color:#cfd2d3;
}
header .header-menu  ul.pmenu .title,
header .header-menu  ul.pmenu a strong {
    font-weight: normal;
    font-family: DINWeb-Bold, sans-serif;
}
header .header-menu  ul.pmenu .title:not(:first-child) {
    margin-top: 17px;
}
header .featured-product {
    position: relative;
    z-index:2;
    flex: 0 0 auto;
    width:64%; /* 523 bei 1440 */
    padding: 30px 4.7% 40px 3.7%;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
}
header .featured-product:before {
    content:"";
    display: block;
    background:#192228;
    position: absolute;
    z-index:1;
    left:0;
    width:100vw;
    top:2px;
    bottom:0;
}
header .featured-product .image,
header .featured-product .fliesstext {
    position: relative;
    z-index:2;
}
header .featured-product .image {
    flex: 0 0 39%;
}
header .featured-product .texte {
    flex: 0 0 61%;
    padding-right: 6%;
}
header .featured-product .fliesstext {
    color:#8c8c8c;
    border-color:#8c8c8c;
}
header .featured-product .fliesstext .button {
    color:#cfd2d3;
    border-color:#cfd2d3;
}


header .featured-product .fliesstext {
    font-size: 18px;
}
header .featured-product .sub-title {
    flex: 1 0 100%;
    margin-bottom: 1.7rem;
}
header .featured-product .sub-title,
header .featured-product .fliesstext .title {
    font-weight: normal;
    font-family: DINWeb-Bold, sans-serif;
}
header .featured-product .fliesstext .title {
    color:#fff;
}
@media (max-width: 1100px) {
	header .featured-product .image {
		flex: 0 0 30%;
	}
	header .featured-product .texte {
		flex: 0 0 70%;
	}
}



@media (min-width: 1024px) {
    .scrolled header .container {
        padding: 19px 0 13px;
    }
    .scrolled header #branding a {
        width: 160px;
        height: 26px;
    }
    .scrolled header li.button a {
        background: url(img/icon-mail.svg) no-repeat;
        background-size: 100% auto;
        background-size: contain;
        border-radius: 0;
        text-indent: -1000px;
        overflow: hidden;
        padding: 0;
        width: 30px;
        height: 24px;
    }
}
@media (max-width: 1023px) {
    header {
        background: rgba(28, 33, 36, 0.01);
    }
    header:before {
        top: 0;
        min-height: 64px;
    }
    header:after,
    header:before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        display: block;
        background: rgba(28, 33, 36, 0.9);
        z-index: 1;
    }
    header:after {
        top: 65px;
        bottom: 0;
    }
    header .container {
        position: relative;
        z-index: 2;
        width: 100%;
        padding: 22px 24px 21px;
    }
    header .grid-x {
        position: relative;
    }
    header #branding a {
        margin-top: 1px;
        width: 123px;
        height: 20px;
    }
    header #menu-toggle {
        display: block;
        position: absolute;
        top: 2px;
        right: 0;
        width: 20px;
        height: 16px;
        border-top: 2px solid #fff;
        border-bottom: 2px solid #fff;
        cursor: pointer;
    }
    header #menu-toggle:after,
    header #menu-toggle:before {
        display: block;
        content: "";
        height: 2px;
        background: #fff;
        width: 100%;
        position: absolute;
        top: 50%;
        margin-top: -1px;
        left: 0;
        transition: all 0.15s ease;
    }
    header #menu-toggle:hover {
        border-color: #f0df00;
    }
    header #menu-toggle:hover:after,
    header #menu-toggle:hover:before {
        background: #f0df00;
    }
    header li.button {
        display: block;
        position: fixed;
        top: 21px;
        right: 60px;
        overflow: hidden;
    }
    header li.button.kontakt {
        right: 100px;
    }
    header li.button.kontakt a {
        width: 26px;
        height: 20px;
        background: url(img/icon-mail.svg) no-repeat;
        background-size: 100% auto;
        background-size: contain;
    }
    header li.button.tel a {
        width: 21px;
        height: 21px;
        background: url(img/icon-phone.svg) no-repeat;
        background-size: 100% auto;
        background-size: contain;
    }
    header li.mobile-only {
        display: block;
    }
    header li.button a {
        border-radius: 0;
        text-indent: -1000px;
        padding: 0;
    }
    header .header-menu {
        display: block;
        max-height: 0;
        overflow: hidden;
        transition: all 0.2s ease;
        padding-left: 0;
        position: relative;
        top:22px;
    }
    header .header-menu > li:first-child {
        padding-top: 20px;
    }
    header .header-menu li:not(:last-child):not(.button.kontakt) {
        margin-right: 0;
        padding-right:0;
    }
    header .header-menu a {
        display: block;
        padding: 0;
        font-size: 42px;
        line-height: 1.28;
        letter-spacing: normal;
    }
    header .header-menu .featured-product .title a {
        font-size: 18px;
        line-height: normal;
        letter-spacing: normal;
        font-family: DINWeb-Bold, sans-serif;
    }
    header .header-menu .sub-menu {
        display: block;
        position: relative;
        top: 0 !important;
        padding: 0;
    }
    /*header .header-menu .sub-menu .title,*/
    header .header-menu .sub-menu:after,
    header .header-menu .sub-menu:before {
        display: none !important;
    }
    header .header-menu > li > a {
        font-family: DINWeb-Black, sans-serif;
        padding-bottom: 0.2em;
    }
    .menu-is-open .header-menu {
        max-height: calc( 100vh - 64px);
        transition: all 0.7s ease;
        overflow-y: auto;
        padding-bottom:30px;
    }
    .menu-is-open #menu-toggle {
        top: 0;
        width: 18px;
        height: 18px;
        border-top: 0;
        border-bottom: 0;
    }
    .menu-is-open #menu-toggle:after,
    .menu-is-open #menu-toggle:before {
        left: -15%;
        width: 130%;
    }
    .menu-is-open #menu-toggle:before {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    .menu-is-open #menu-toggle:after {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .produkte-subnav ul.pmenu .image,
    header .featured-product .texte > :not(.title),
    header .featured-product .image,
    header .featured-product .sub-title,
    header .featured-product::before {
        display: none;
    }
    header .header-menu .sub-menu.produkte-subnav {
        padding: 0;
    }
    .produkte-subnav ul.pmenu {
        padding: 20px 0 90px 0;
    }
    header .header-menu ul.pmenu .title,
    header .header-menu ul.pmenu a,
    header .header-menu ul.pmenu a strong {
        font-size: 18px;
    }
    .produkte-subnav ul.pmenu li .text {
        width: auto;
    }
    header .featured-product .title {
        margin-bottom: 2em;
    }

    header .featured-product .title,
    header .featured-product .title a {
        color:#f0df00 !important;
    }
    header .featured-product {
		position: absolute;
        left: 0;
        top: auto;
        bottom: 0;
        width: 100%;
        padding: 0;
        display: block;

    }
}

