@font-face {
    font-family: 'GillSans';
    src: local('GillSans'), url(GILL___S.TTF);
}

@font-face {
    font-family: 'Gill Sans MT';
    src: local('Gill Sans MT'), url(GIL____.TTF);
}

@font-face {
    font-family: 'Open Sans';
    font-weight: normal;
    src: local('Open Sans Regular'), url(OpenSans-Regular.ttf);
}

@font-face {
    font-family: 'News Cycle';
    font-weight: normal;
    src: local('News Cycle Medium'), url(NewsCycle-Regular.ttf);
}

@font-face {
    font-family: 'News Cycle';
    font-weight: bold;
    src: local('News Cycle Medium'), url(NewsCycle-Bold.ttf);
}

/* für die Fusszeile, die am Ende der Seite bleiben soll: */

* {
    margin: 0;
}

html, body {
    height: 100%;
}

#page, #cookies-incompatible, #js-incompatible {
    height: 100%;
    background-color: white;
}

#outer, #footerSeparator, #footer, #cookies-incompatible {
    display: none;
}

.outer {
    min-height: 100%;
    height: auto !important;
    height: 100%;
    margin: 0 auto -192px;
    background-color: white;
}

    .outer p {
        margin-top: 10px;
        margin-bottom: 10px;
    }

.footerSeparator {
    background-color: white;
    padding: 0 20px;
    margin: 0 auto;
    max-width: 1200px;
    min-width: 700px;
}

    .footerSeparator .wrapper {
        border-top: 1px solid black;
        height: 25px;
    }

.footer {
    min-height: 166px;
    padding: 0 20px;
    clear: both;
}

.push {
    height: 191px;
    padding: 0 20px;
    clear: both;
}

.push {
    padding-right: 20px;
}

.faq_hints {
    font-weight: bold;
}

section > .wrapper {
    margin-bottom: 0;
}

article {
    display: block;
    float: left;
    width: 66%;
}


aside {
    display: block;
    float: left;
    width: 33%;
}


/* Ende Sticky Footer*/

html, body {
    font-family: 'News Cycle', sans-serif;
    -webkit-text-size-adjust: 100%;
    font-size-adjust: 100%;
    margin: 0;
    padding: 0;
    text-align: justify;
}

body {
    line-height: 1.2;
    background-color: #4D4C4D;
}

.clear {
    display: block;
    clear: both;
    float: none;
}

.wrapper .error {
    color: red;
    font-family: 'News Cycle', sans-serif;
    font-size: 1em;
    font-weight: bold;
}

a {
    transition: color 0.2s ease, background-color 0.2s ease;
}
/* header start */
header .mobile {
    display: none;
}

#top_bar {
    background-color: #4D4C4D;
    padding: 2px 20px 6px 20px;
    font-size: .9em;
    color: #FFF;
    text-align: right;
}

    #top_bar .wrapper {
        max-width: 1200px;
        min-width: 700px;
        margin: 0 auto;
    }

    #top_bar a {
        color: #FFF;
        text-decoration: none;
    }

        #top_bar a:before {
            content: "";
        }

        #top_bar a:hover {
            color: #BD9F65;
        }

        #top_bar a.active {
            font-weight: bold;
        }

    #top_bar nav div,
    #top_bar nav ul,
    #top_bar nav li {
        display: inline-block;
    }

    #top_bar nav li {
        padding-right: 10px;
    }

    #top_bar nav div li {
        padding-right: 0px;
    }

header .login {
    padding-left: 20px;
    padding-right: 20px;
    position: relative;
}

header .search {
    padding-left: 20px;
    padding-right: 20px;
    position: relative;
}

    header .search button {
        position: absolute;
        background-color: #FFF;
        border: medium none;
        color: #929497;
        cursor: pointer;
        display: block;
        line-height: 18px;
        height: 22px;
        right: 0px;
        top: 0px;
        width: 174px;
        margin: 0;
        padding: 0;
        z-index: 50;
        text-align: left;
        border: 1px solid #FFF;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
    }

        header .search button span {
            padding-left: 4px;
        }

    header .search input {
        position: relative;
        width: 170px;
        border: 1px solid #CCC;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
        line-height: 18px;
        height: 18px;
        padding: 1px 1px 1px 1px;
        background-color: transparent;
        background-image: url(../../_img/icon-search.png);
        background-repeat: no-repeat;
        background-position: 157px center;
        z-index: 60;
        text-indent: -999px;
        overflow: hidden;
        -webkit-transition: width 0.2s ease, background-color 0.2s ease;
        -moz-transition: width 0.2s ease, background-color 0.2s ease;
        transition: width 0.2s ease, background-color 0.2s ease;
    }

        header .search input:focus {
            background-color: #FFF;
            text-indent: 0px;
        }

#logo_and_mainnavi {
    max-width: 1200px;
    min-width: 700px;
    margin: 0 auto;
    padding: 0 20px 0 20px;
    position: relative;
    z-index: 5;
}

    #logo_and_mainnavi > .wrapper {
        position: relative;
    }

    #logo_and_mainnavi .logo {
        margin: 50px 0 30px 0;
        display: block;
        width: 289px;
        height: 64px;
    }

    #logo_and_mainnavi a.logo:before {
        content: "";
    }

header .main_navigation {
    height: 1.9em;
    width: 100%;
    border-bottom: 1px #000 solid;
    position: absolute;
}

    header .main_navigation > ul {
        margin-left: -3px;
    }

    header .main_navigation a {
        text-decoration: none;
        display: block;
        padding: 3px 3px;
    }

    header .main_navigation > ul > li {
        float: left;
        position: relative;
        background-image: url(../../_img/spacer.gif);
    }

        header .main_navigation > ul > li + li {
            margin-left: 5%;
        }

        header .main_navigation > ul > li > a {
            font-family: 'GillSans', 'Gill Sans MT', OpenSans, sans-serif;
            text-transform: uppercase;
            color: #4D4C4D;
            margin-bottom: .9em;
        }

        header .main_navigation > ul > li:hover > a,
        header .main_navigation > ul > li.active > a {
            color: #FFF;
            background-color: #4D4C4D;
        }

    header .main_navigation ul ul li a {
        color: #FFF;
        background-color: #4D4C4D;
        font-size: 0.9em;
    }

    header .main_navigation > ul > li > ul {
        display: none;
        background-color: rgba(255,255,255,0.5);
    }

    header .main_navigation > ul > li:hover > ul {
        display: block;
    }

    header .main_navigation ul ul li + li > a {
        margin-top: .3em;
    }

    header .main_navigation ul ul > li:hover > a,
    header .main_navigation ul ul > li.active > a {
        background-color: #BD9F65;
    }

.image_block {
    max-width: 1200px;
    min-width: 700px;
    margin: 0 auto;
    padding: 0px 20px 1.9em 20px;
    position: relative;
    z-index: 1;
}

    .image_block .wrapper {
        overflow: hidden;
        border-bottom-right-radius: 10px;
        border-bottom-left-radius: 10px;
        position: relative;
        height: 200px;
    }

body.home .image_block .wrapper {
    height: 350px;
}

.image_block img {
    display: block;
    position: relative;
    left: 50%;
    margin-left: -50%;
}

.image_block .wrapper .image_centerer {
    width: 1200px;
    position: absolute;
    left: 50%;
    top: 0;
    margin-left: -600px;
}

.image_block.two_columns > .wrapper {
    float: left;
    width: 66%;
}

.image_block.two_columns .wrapper .image_centerer {
    width: 800px;
    margin-left: -400px;
    margin-top: -30px;
}

.image_block.two_columns > .wrapper + .wrapper {
    float: right;
    width: 33.3%;
    background-color: #4D4C4D;
}

.image_block.two_columns .wrapper + .wrapper .image_centerer {
    width: 400px;
    margin-left: -200px;
}

/* header end */

input[type="checkbox"] {
    display: inline-block;
    margin-right: -100px;
    margin-top: 5px;
    vertical-align: top;
}

    input[type="checkbox"] + label {
        display: inline-block;
        margin-left: 100px;
        margin-right: -100px;
        width: 100%;
    }

textarea, input[type="text"] {
    font-family: sans-serif;
    font-size: 0.8em;
}


.button, input[type="submit"] {
    background-color: #4D4C4D;
    color: white;
    border-style: solid;
    border-color: #BD9F65;
    border-width: 1px;
}

.button:hover, input[type="submit"]:hover {
        cursor: pointer;
    }

    input[type="submit"][disabled="disabled"],
    input[type="submit"]:disabled,
    button[disabled="disabled"] {
        color: lightgray;
        background-color: darkgray;
        cursor: default;
    }

/* main start */
main {
    color: #4D4C4D;
    margin: 0 auto;
    max-width: 1200px;
    min-width: 700px;
    /*padding: 0 20px;*/
    line-height: 1.4;
}


.outer > .wrapper {
    max-width: 1200px;
    min-width: 700px;
    padding: 0;
    margin: 0 auto;
}

#mainWrapper {
    padding: 0 20px;
    margin: 0 auto;
}

main > .wrapper {
    border-top: 1px solid black;
    padding-top: 25px;
    padding-bottom: 25px;
    width: auto;
}

main article table {
    margin-top: 1.5em;
}

main article .wrapper {
    padding-right: 20px;
    float: left;
    display: block;
    text-align: left;
}

    main article .wrapper input[type="text"],
    main article .wrapper input[type="password"],
    main article .wrapper select {
        width: 320px;
        padding-left: 0px;
        padding-right: 0px;
        margin-top: 5px;
        margin-bottom: 5px;
    }

    main article .wrapper .wrapper {
        width: 350px;
        min-height: 30px;
    }

main article p {
    margin-top: 0.75em;
}

main article label {
    padding-left: 5px;
    padding-right: 5px;
}

main b,
main strong {
    font-weight: bold;
}

main label, main td label {
    width: 200px;
}

#MainWrapper_Main_Login1 div {
    float: left;
    min-width: 200px;
    width: auto;
    max-width: 280px;
    padding: 2px 0;
}

    #MainWrapper_Main_Login1 div label {
        padding-left: 0;
        width: 200px;
    }

#MainWrapper_Main_Login1 .clear {
    padding: 0;
}


main ul.linkList {
    list-style-type: none;
    text-indent: -1.6em;
    padding-left: .3em;
}

main p.linkList {
    text-indent: -1.6em;
    padding-left: 1.6em;
}

main a {
    text-decoration: none;
    color: #BD9F65;
    font-weight: bold;
}


    main a:link, main a:visited {
        font-weight: bold;
    }

        main a:link:before, main a:visited:before {
            font-family: 'Arial Unicode MS', 'Lucida Sans Unicode';
            content: "\27a4\00a0";
            padding-right: .4em;
        }

    main a.noArrow:before {
        content: "";
        padding-right: 0;
    }

    main a:hover {
        color: #000;
    }

main img {
    width: inherit;
    max-width: 100%;
    height: auto;
}

main h1 {
    font-family: 'GillSans', 'Gill Sans MT', OpenSans, sans-serif;
    font-size: 1.8em;
    font-weight: normal;
    text-transform: uppercase;
    margin-bottom: 1em;
    line-height: 1.2;
    text-align: left;
}

main article h2 {
    font-size: 1.4em;
    margin-top: 1em;
    margin-bottom: .25em;
    line-height: 1.2;
    text-align: left;
}

main article h3 {
    font-size: 1.4em;
    margin-bottom: 1em;
    line-height: 1.2;
    text-align: left;
}

main p {
    margin-top: 1.5em;
}

main ul {
    margin-left: 1.2em;
    margin-top: 0em;
    margin-bottom: 1em;
    list-style: square;
}

.main ol {
    margin: 0.5em 0 1.5em 8px;
    list-style: decimal;
    padding-left: 10px;
}


main .wrapper .small {
    font-size: 0.7em;
}

main time {
    font-size: .8em;
}

main ul.collapse {
    color: #BD9F65;
    list-style: none;
}

    main ul.collapse li div {
        color: #4D4C4D;
    }

.js_enabled main ul.collapse div {
    max-height: 0;
    transition: max-height 0.2s;
    overflow: hidden;
}

.js_enabled main ul.collapse li.show div {
    max-height: 5000px;
}

.js_enabled main ul.collapse li.show h2:before {
    content: "\229F";
    font-weight: normal;
    padding-right: 8px;
    margin-left: -21px;
}

main ul.collapse li h2:before {
    content: "\229E";
    font-weight: normal;
    padding-right: 8px;
    margin-left: -21px;
}

main ul.collapse h2 {
    color: #BD9F65;
    font-size: 1em;
    font-weight: bold;
    margin: 0;
    line-height: 1.4;
}

.js_enabled main ul.collapse h2 {
    cursor: pointer;
}

.Chevron {
    margin: 0;
    padding: 0;
    width: 100%;
}

    .Chevron img {
        height: 20px;
        min-height: 20px;
        max-height: 20px;
    }

.ChevronDelimiter {
    margin: 0;
    padding: 0;
    width: 11px;
    min-width: 11px;
    max-width: 11px;
    height: 20px;
    min-height: 20px;
    max-height: 20px;
}

.ChevronActive {
    background-color: #BD9F65;
    padding-right: 0;
    height: 20px;
    min-height: 20px;
    max-height: 20px;
    font-size: 1pt;
    display: block;
}

.ChevronPassive {
    background-color: #4D4C4D;
    padding-right: 0;
    height: 20px;
    min-height: 20px;
    max-height: 20px;
    font-size: 1pt;
    display: block;
}

.ProgressLight {
    color: #777777;
}

.ProgressMedium {
    color: #aaaaaa;
}

.ProgressStrong {
    color: #ffffff;
}



aside {
    font-size: .9em;
    color: #BD9F65;
    font-weight: normal;
    /*padding-left: 10px;*/
    /*min-width: 200px;
    max-width: 400px;*/
}

    aside h2 {
        margin-top: 1.5em;
        font-weight: bold;
    }

        aside h2:first-of-type {
            margin-top: 0;
        }

    aside a {
        font-weight: bold;
    }

    aside .infobox {
        padding: 10px 20px;
        color: #FFF;
        background-color: #4D4C4D;
        border-bottom-right-radius: 10px;
        border-bottom-left-radius: 10px;
        margin-left: 4px;
        margin-bottom: 20px;
        text-align: left;
    }

    aside .note {
        text-align: left;
        margin-left: 10px;
    }

    aside .infobox h2 {
        font-family: 'GillSans', 'Gill Sans MT', OpenSans, sans-serif;
        font-size: 1.2em;
        color: #BD9F65;
        text-transform: uppercase;
        font-weight: normal;
        margin-bottom: .5em;
    }

    aside .infobox h2 span + span {
            color: #FFF;
            font-weight: normal;
        }

    aside .infobox a:hover {
        color: #FFF;
    }

    .weisungsaenderungText {
        display: block
    }

th {
    font-weight: bold;
    text-align: left;
    padding-right: 20px;
}

td {
    text-align: left;
    padding-right: 20px;
}

/* main end */

.banner {
    max-width: 1200px;
    min-width: 700px;
    margin: 0 auto;
    padding: 0 20px;
}

    .banner > .wrapper {
        position: relative;
    }

    .banner li {
        width: 33.3%;
        float: left;
    }

        .banner li:nth-child(3n) {
            float: right;
        }

        .banner li a {
            display: block;
            color: #FFF;
            background-color: #4D4C4D;
            border-bottom-right-radius: 10px;
            border-bottom-left-radius: 10px;
            text-decoration: none;
            margin-right: 4px;
            padding-bottom: 20px;
        }

            .banner li a:hover {
                background-color: #BD9F65;
                color: #4D4C4D;
            }

        .banner li:nth-child(3n+2) a {
            margin-right: 4px;
            margin-left: 4px;
        }

        .banner li:nth-child(3n) a {
            margin-right: 0;
            margin-left: 4px;
        }

        .banner li span {
            display: block;
        }

            .banner li span.image {
                display: none;
                overflow: hidden;
                height: 160px;
                position: relative;
            }

body.home .banner li span.image {
    display: block;
}

.banner li span.image span {
    width: 396px;
    position: absolute;
    left: 50%;
    top: 0;
    margin-left: -198px;
}

.banner li span.title,
.banner li span.description {
    padding: 0 20px;
}

.banner li span.title {
    font-family: 'GillSans', 'Gill Sans MT', OpenSans, sans-serif;
    padding-top: 10px;
    font-weight: normal;
    color: #BD9F65;
    font-size: 1.2em;
    text-transform: uppercase;
}

.banner li a:hover span.title {
    color: #4D4C4D;
}

.banner li span.description {
    font-size: .9em;
}

/* footer start */
footer {
    background-color: #4D4C4D;
    font-size: .9em;
    color: #FFF;
    text-align: left;
}

    footer > .footer {
        max-width: 1200px;
        min-width: 700px;
        margin: 0 auto;
    }

    footer .navi_block {
        padding-top: 10px;
    }

    footer a {
        color: #FFF;
        text-decoration: none;
    }

        footer a:before, footer .footer a:before {
            content: "";
        }

        footer li.active > a,
        footer a:hover {
            color: #BD9F65;
        }

    footer li a.active {
        font-weight: bold;
    }


    footer .main_navigation a,
    footer .side_navigation a {
        display: block;
        padding-right: 3px;
        padding-bottom: 3px;
    }

        footer .main_navigation a:before,
        footer .side_navigation a:before {
            content: "";
        }

    footer .main_navigation > ul > li {
        float: left;
        position: relative;
        padding-right: 1%;
    }

        footer .main_navigation > ul > li > a,
        footer .main_navigation > ul > li > h2 {
            font-family: 'GillSans', 'Gill Sans MT', OpenSans, sans-serif;
            font-size: 1.1em;
            text-transform: uppercase;
            font-weight: normal;
            text-indent: 3px;
            margin-top: 3px;
            margin-left: -3px;
        }


            footer .main_navigation > ul > li > a:before {
                content: "";
            }

    footer .side_navigation {
        float: left;
        margin-left: 2%;
    }

    footer .partner {
        float: right;
        width: 25%;
    }

    footer .navi_block {
        padding-bottom: 15px;
        margin-bottom: 15px;
        border-bottom: 1px #FFF solid;
    }


    footer address {
        display: inline;
    }

    footer .swiss_made {
        background-image: url(../../_img/flag-swiss.png);
        background-repeat: no-repeat;
        background-position: left center;
        padding: 1em 0 1em 30px;
        margin-bottom: .5em;
    }

.address_block {
    padding-bottom: 20px;
}

.address_block ul {
    display: block;
    float: right;
}

.address_block li {
    float: left;
    height: 14px;
    line-height: 14px;
    padding-right: 4px;
}

    .address_block li:first-child:before {
        content: "";
        padding-right: 4px;
    }

    .address_block li:before {
        content: "|";
        padding-right: 4px;
    }
/* footer end */

/* speaker start */

.speaker_label {
    float: left;
    width: 250px;
}

.speaker_label span,
.speaker_agendaitem label {
    font-size: 18px;
}

.speaker_input {
    float: left;
    width: 320px;
}

.speaker_input input[type] {
    width: 100%;
}

.speaker_agendaitem {
    margin-top: 10px;
    padding-bottom: 10px;
}

.speaker_agendaitem input[type="text"] {
    width: 320px;
}

/* The Modal (background) */
.modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 1; /* Sit on top */
    padding-top: 100px; /* Location of the box */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content */
.modal-content {
    background-color: #fefefe;
    margin: auto;
    padding: 20px;
    border: 1px solid #888;
    max-height: 500px;
    overflow-y: auto;
    width: 80%;
}

.pointer {
    cursor: pointer;
}

/* speaker end*/