.container {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-content: stretch;
  -ms-align-content: stretch;
  align-content: stretch;
  -webkit-align-items: stretch;
  -ms-align-items: stretch;
  align-items: stretch;
}
.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12 {
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}
.col-1 {
  -webkit-flex: 0 0 6.866%;
  -ms-flex: 0 0 6.866%;
  flex: 0 0 6.866%;
}
.col-2 {
  -webkit-flex: 0 0 15.33%;
  -ms-flex: 0 0 15.33%;
  flex: 0 0 15.33%;
}
.col-3 {
  -webkit-flex: 0 0 23.8%;
  -ms-flex: 0 0 23.8%;
  flex: 0 0 23.8%;
}
.col-4 {
  -webkit-flex: 0 0 32.26%;
  -ms-flex: 0 0 32.26%;
  flex: 0 0 32.26%;
}
.col-5 {
  -webkit-flex: 0 0 40.73%;
  -ms-flex: 0 0 40.73%;
  flex: 0 0 40.73%;
}
.col-6 {
  -webkit-flex: 0 0 49.2%;
  -ms-flex: 0 0 49.2%;
  flex: 0 0 49.2%;
}
.col-7 {
  -webkit-flex: 0 0 58%;
  -ms-flex: 0 0 58%;
  flex: 0 0 58%;
}
.col-8 {
  -webkit-flex: 0 0 66.13%;
  -ms-flex: 0 0 66.13%;
  flex: 0 0 66.13%;
}
.col-9 {
  -webkit-flex: 0 0 71.1%;
  -ms-flex: 0 0 71.1%;
  flex: 0 0 71.1%;
}
.col-10 {
  -webkit-flex: 0 0 83.06%;
  -ms-flex: 0 0 83.06%;
  flex: 0 0 83.06%;
}
.col-11 {
  -webkit-flex: 0 0 91.53%;
  -ms-flex: 0 0 91.53%;
  flex: 0 0 91.53%;
}
.col-12 {
  -webkit-flex: 0 0 100%;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
}
header div.mobile,
div.category-mobile {
  display: none;
}
header div.mobile i.close,
div.category-mobile i.close {
  display: none;
}

@media only screen and (max-width: 1325px) {
    #header nav.menu ul li {
        margin: 0 0 0 1.7rem;
    }
}
@media only screen and (max-width: 1265px) {
    #header nav.menu ul li {
        margin: 0 0 0 1.2rem;
    }
}

@media only screen and (max-width: 1180px) {
    #header div.mobile {
        position: absolute;
        top: 2rem;
        right: 10%;
        display: inline-block;
        font-size: 1.2rem;
        opacity: .7;
        cursor: pointer;
        z-index: 1000;

        -webkit-transition: all .3s ease-in-out;
           -moz-transition: all .3s ease-in-out;
            -ms-transition: all .3s ease-in-out;
             -o-transition: all .3s ease-in-out;
                transition: all .3s ease-in-out;
    }
    #header div.mobile span i {
        display: block;
        width: 1.4rem;
        height: 1rem;
        font-size: 1.4rem;
        color: #fff;
    }
    #wrap.home #header div.mobile span i {
        width: 1.4rem;
        height: 1rem;
        text-align: center;
        color: rgba(17,24,16,1);
    }
    #wrap.home #header div.mobile span i.close,
    #header div.mobile span i.close {
        display: none;
        color: #fff;
    }

    #header div.mobile.active {
        position: fixed;
    }

    #header nav.menu {
        display: none;
    }
    #header nav.menu.active {
        position: fixed;
        display: block;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        background: #26618f;
        z-index: 999;
    }
    #header nav.menu.active ul {
        flex-direction: column;
        height: 100%;
         -webkit-justify-content: center;
                   -ms-flex-pack: center;
                 justify-content: center;
    }
    #header nav.menu.active ul li {
        margin: 0 10%;
    }
    #wrap.home #header nav.menu ul li a,
    #header nav.menu.active ul li a {
        font-size: 1.6rem;
        color: rgba(255,255,255,.8);;
    }
    #wrap.home #header nav.menu ul li a:hover,
    #header nav.menu.active ul li a:hover {
        color: rgba(255,255,255,1);
    }
}

@media only screen and (max-width: 920px) {
    .col-3,
    .col-4 {
        flex: 0 0 49.2%;
    }
    .col-2,
    .col-9 {
        flex: 0 0 100%;
    }

    .col-2 {
/*
        -webkit-order: 1;
                order: 1;
*/
    }
    .col-9 {
/*
        -webkit-order: 2;
                order: 2;
*/
        -ms-word-break: break-all;
            word-break: break-all;

        /* Non standard for WebKit */
            word-break: break-word;

        -webkit-hyphens: auto;
           -moz-hyphens: auto;
            -ms-hyphens: auto;
                hyphens: auto;
    }

    .calendar table,
    .calendar table tbody,
    .calendar table tbody tr,
    .calendar table tbody tr td {
        display: block;
        position: relative;
    }
    .calendar table thead,
    .calendar table td.other,
    .calendar table colgroup {
        display: none;
    }
    .calendar table tbody tr td {
        height: auto;
        min-height: 40px;
        border: 1px solid #ededed;
        width: 100%;
        padding: 10px;
        margin-bottom: -1px;

        -webkit-box-sizing: border-box;
           -moz-box-sizing: border-box;
                box-sizing: border-box;
    }
    .calendar table tbody tr {
        height: auto;
        min-height: auto;
    }
    .calendar table .other {
        align-self: flex-start;
    }
    .calendar table td span.date {
        position: absolute;
        display: flex;
        align-items: center;
        justify-content: center;
        left: 0;
        top: 0;
        bottom: 0;
        width: 50px;
        height: 100%;
        border-right: 1px solid #ededed;
        justify-content: center;
        align-item: center;
    }
    .calendar table ul {
        margin-left: 50px;
    }

    .calendar table tfoot {
        display: table;
        width: 100%;
    }
    .calendar table tfoot tr {
        display: table-row;
    }
    .calendar table tfoot tr td {
        display: table-cell;
    }
    .calendar .cal-next,
    .calendar .cal-prev {
        display: block;
    }
    .calendar .cal-next span,
    .calendar .cal-prev span {
        display: none;
    }
    .calendar .btn.pull-right {
        display: inline-block;
        margin-top: 2rem;
        float: none;
        text-align: center;
    }

    div.category-mobile {
        display: block;
        margin: 2rem 0 0 0;
        padding: .3rem 0;
        font-size: 1rem;
    }
    div.category-mobile span {
        color: rgba(38, 97, 143, 1);
        opacity: .9;
        cursor: pointer;
        text-transform: uppercase;
        vertical-align: middle;

        -webkit-transition: all .3s ease-in-out;
           -moz-transition: all .3s ease-in-out;
            -ms-transition: all .3s ease-in-out;
             -o-transition: all .3s ease-in-out;
                transition: all .3s ease-in-out;
    }
    div.category-mobile span:hover {
        opacity: 1;
    }
    div.category-mobile i {
        display: inline-block;
        cursor: pointer;
        width: 1.4rem;
        height: 1rem;
        font-size: 1.4rem;
        color: rgba(38, 97, 143, 1);
        vertical-align: top;
    }
    div.category-mobile i.close {
        display: none;
    }
    div.news-category {
        margin-bottom: 2rem;
    }
    div.news-category ul {
        display: none;
    }
}

@media only screen and (max-width: 640px) {
    .col-4,
    .col-2,
    .col-6,
    .col-9 {
        flex: 0 0 100%;
    }
}
@media only screen and (max-width: 560px) {
    .col-3,
    .col-4,
    .col-2,
    .col-9 {
        flex: 0 0 100%;
    }

    #headimage figure {
        overflow: hidden;
    }
    #headimage img {
        margin-left: 50%;
        top: 0;
        width: auto;
        height: 210px;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
    }
    #headimage figure figcaption {
        font-size: 1.4rem;
    }


    #parallax figure {
        padding-top: 50%;
    }
    #parallax figure figcaption {
        bottom: 50%;
    }
    #parallax figure figcaption .h1 {
        font-size: 2.2rem;
    }

    #schulprogramm figure {
        overflow: hidden;
    }
    #schulprogramm img {
        margin-left: 50%;
        top: 0;
        width: auto;
        height: 180px;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
    }
    #schulprogramm figure figcaption .h1 {
        font-size: 1.2rem;
    }
}

@media only screen and (max-width: 480px) {
    #parallax figure figcaption .h1 {
        font-size: 1.8rem;
    }
    #schulprogramm figure figcaption .h1 {
        font-size: 1rem;
    }

    #footer nav a {
        margin: 0 1rem;
    }
    #footer nav a:first-child { margin-left: 0; }
    #footer nav a:last-child { margin-right: 0; }
}



