@font-face {
    font-family: 'zur-blk';
    src: url('../fonts/zurich-black-extended-bt.eot');
    src: url('../fonts/zurich-black-extended-btd41d.eot?#iefix') format('embedded-opentype'),
         url('../fonts/zurich-black-extended-bt.woff') format('woff'),
         url('../fonts/zurich-black-extended-bt.ttf') format('truetype'),
         url('../fonts/zurich-black-extended-bt.svg#zur-blk') format('svg');
    font-weight: normal;
    font-style: normal;
}
/*
@font-face {
  font-family: 'zur-blk';
  src: url('../fonts/zurich-black-extended-bt.woff') format('woff'), 
       url('../fonts/zurich-black-extended-bt.ttf') format('truetype');
}*/

* {
    margin: 0;
    padding: 0;
    border: 0;
}
h1, h2, h3, h4, h5, h6 {
    /*font-weight: normal;*/
    font-size: 1em;
}
body {
    font-size: 14px;
    font-family: 'zur-blk', helvetica, arial, sans-serif;
    /*letter-spacing: -0.05em;*/
}

/* LINES AND COUNTRIES begin */
.no-js svg#map {
    background-color: white;
}
svg#map {
    background-position: center center;
    background-size: cover;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    position: fixed;
    width: 100%;
    height: 100%;
}
#map line {
    stroke: rgba(255,255,255,0.7);
    stroke-width:1;
}
#countries div {
    position: fixed;
    color: rgba(255,255,255,1);
    font-style: italic;
    font-size: 0.65em;
    letter-spacing: 1px;
    padding: 2px;
    cursor: default;
    font-family: times, serif;
}
/* LINES AND COUNTRIES end */

/* HEADER begin */
#header {
    position: absolute;
    top: 25px;
    left: 20px;
}
#header h1 a {
    font-size: 1.2em;
    border-bottom: 1px solid black;
    padding-bottom: 5px;
}
#header ul {
    list-style: none;
}
#header ul#main {
    width: 660px;
    padding: 5px 0;
}
#header ul#main li {
    display: inline;
    margin-right: 30px;
}
#header a {
    color: black;
    text-decoration: none;
    display: inline-block;
    padding: 1px 0;
    background-color: rgba(255,0,0,0);
    font-weight: bolder;
}
#header ul#contact a {
    border-top: 1px solid black;
    font-size: 0.9em;
    padding: 5px 0;
}

.w #header h1 a, .w #header ul#contact a {
    border-color: white;
}
.w #header a {
    color: white;
}
/* HEADER end */

/* SUBMENU/SUBSUBMENU begin */
#sub li {
    margin-bottom: 0.2em;
    list-style: none;
}
#sub ul li {
    margin-bottom: 0;
}
#sub a {
    font-size: 1.05em;
    font-weight: bolder;
    text-decoration: none;
    color: black;
}
#sub a:hover, #sub a:active,  #sub a.active {
    text-decoration: underline;
}
/*#sub ul a:visited {
    text-decoration: line-through;
}*/
#sub ul a {
    font-size: 0.8em;
}
#sub ul {
    display: none;
    margin: 0.5em 0 1.5em 0;
    -webkit-transition: all 2s;
    -moz-transition: all 2s;
    transition: all 2s;
}
#sub .active ul {
    display: block;
}

/* nur während der Entwicklungszeit 
a.contains_submenu:after {
    content: ' •';
    color: #888;
}
*/
/* SUBMENU/SUBSUBMENU end */

/* CONTENT begin */
#content {
    padding: 10px 20px 50px 50px;
    width: 600px;
    position: absolute;
    -webkit-overflow-scrolling: touch;
    top: 10%;
    bottom: 10%;
    overflow: auto;
    left: 50%;
    margin-left: -295px;
    background-color: rgba(255,255,255,0.9);
}
#content div {
  max-width: 550px;
}
#closebutton.closebutton {
    text-align: right;
    position: fixed;
    top: 10%;
    left: 50%;
    margin-top: 25px;
    width: 350px;
    z-index: 5;
}
#closebutton.closebutton svg {
    width: 30px;
    height: 24px;
}
#closebutton.closebutton line {
    stroke: rgba(0,0,0,0.3);
    stroke-width:1;
}

#content h1 {
    margin-top: 10px;
    margin-left: 60px;
    margin-bottom: 40px;
    font-size: 0.85em;
}
#content h2 {
    font-size: 1.05em;
}
#content h4 {
    font-size: 0.8em;
    text-indent: 20px;
}
#content h2, #content h3 {
    margin: 2em 0 1em 0;
}
#content h4 {
    margin: 1em 0 1em 0;
}
#content h2:first-element {
    margin: 0 0 1em 0;
}

#content p {
  font-size: 0.8em;
  margin-bottom: 1.5em;
  /*letter-spacing: -1px;*/
  line-height: 1.5em;
}
#uid76 #content p {
  text-indent: 20px;
  margin-bottom: 0;
}

#content .csc-textpic-center {
  text-align: center;
}
#content .csc-textpic-right {
  text-align: right;
}

#content .csc-default ul {
  list-style: none;
  font-size: 0.8em;
  margin-bottom: 1em;
  letter-spacing: 0;
}

#content .csc-textpic-border img {
  box-shadow: 5px 5px 10px rgba(0,0,0,0.2);
}
  
.csc-textpic-caption {
  font-size: 0.7em;
  letter-spacing: 0;
}

.csc-textpic-caption-c {
  text-align: center;
}
#content a {
  color: black;
  text-decoration: none;
}
#content a:hover {
  text-decoration: underline;
}
  
/* CONTENT end */


/* IMAGE-SITE begin */
body.level3 {
    background-color: black;
    margin: 40px 20px;
    color: white;
}

.no-js .level3 img {
    max-width: 90%;
    max-height: 90%;
    width: auto;
    height: auto;
}

.level3 figcaption {
    margin-bottom: 2em;
}
.level3 #closebutton {
    position: fixed;
    top: 20px;
    right: 20px;
}
.level3 #closebutton svg {
    width: 30px;
    height: 24px;
}
.level3 #closebutton line {
    stroke: rgba(255,255,255,1);
    stroke: #888;
    stroke-width:1;
}
.level3 #closebutton:hover line {
    stroke: rgba(255,255,255,1);
}

.js .level3 .csc-textpic-image {
    display: none;
    position: absolute;
}
.js .level3 figcaption {
    margin-bottom: 0;
    color: #666;
    text-align: center;
    font-size: 0.75em;
}

.level3 {
    text-align: center;
}
.level3 .cur img {
    cursor: pointer;
}

/*.js .level3 .csc-textpic-image:last-of-type {
    display: block;
}*/

/* IMAGE-SITE end */

/* ERROR PAGE begin */
body.error #closebutton svg, body.error #header a, body.error #countries div {
    animation: rotate 5s;
    -webkit-animation: rotate 5s;
}
@keyframes rotate {
  to { transform: rotate(3600deg); }
}
@-webkit-keyframes rotate {
  to { -webkit-transform: rotate(3600deg); }
}
/* ERROR PAGE end */

#countries div.current {
    color: #e04244;
}

input#menu, label[for="menu"] {
    display: none;
}

/*@media (max-device-width: 500px) {*/
@media only screen and (max-width:750px){
    body {
        font-size: 18px;
    }
    #countries > div {
        visibility: hidden;
        margin: -10px -5px !important;
    }
    #countries > div:before {
        content: '•';
        font-size: 15px;
        visibility: visible;
    }
 
    #header {
        font-size: 5.4vw;
        top: 10px;
        left: 10px;
        z-index: 99;
    }

    #header label[for="menu"] {
        position: fixed;
        top: 0px;
        right: 0px;
        font-size: 30px;
        display: block;
        line-height: 1;
        padding: 10px 10px;
        font-weight: bold;
        z-index: 999;
    }

    body.w #header label[for="menu"] {
        color: white;
    }
    #header nav {
        display: none;
        background: rgba(255,255,255,1);
        position: absolute;
        top: -5px;
        left: -5px;
        width: calc(100vw - 20px);
        padding: 60px 5px 10px 5px;
        z-index: -1;
    }
    /*body.w #header nav {
        background: rgba(0,0,0,0.95);
    }*/
    body:not(#uid73) #header nav {
        border-bottom: 1px solid black;
    }
    #header input#menu:checked ~ nav {
        display: block;
    }

    body.w #header input#menu:checked ~ h1 a, body.w:not(#uid73) #header h1 a {
        color: black !important;
        border-color: black !important;
    }

    body.w #header input#menu:checked ~ label[for="menu"], body.w:not(#uid73) #header label[for="menu"] {
        color: black;
    }


    #header ul {
        padding: 0 !important;
        width: calc(100vw - 20px) !important;
    }
    /*#header ul#main {
        width: calc(100vw - 20px);
    }*/
    #header ul li {
        display: block !important;
        margin-right: 0px !important;
    }
    #header ul li a {
        padding: 5px 0 !important;
        color: black !important;
        font-size: 1em !important;
        border: none !important;
    }


    #content {
        padding: 60px 5px 10px 5px;
        width: calc(100vw - 20px);
        height: calc(100vh - 70px);
        position: absolute;
        -webkit-overflow-scrolling: touch;
        top: 5px;
        overflow: auto;
        left: 5px;
        margin-left: 0;
        background-color: rgba(255,255,255,1);
    }
    #content h1 {
        margin-top: 10px;
        margin-left: 0px; 
        margin-bottom: 40px;
        font-size: 0.85em;
    }
    #closebutton.closebutton {
        display: none;
        /*text-align: right;
        position: fixed;
        top: 10%;
        left: unset;
        right: 20px;
        margin-top: 25px;
        margin: 0;
        width: unset;
        z-index: 5;*/
    }

    #sub li {
        margin-bottom: 0.5em !important;
    }



    /*body.level3 img {
        width: calc(100vw - 10px) !important;
        height: auto !important;
        max-height: calc(100vh - 50px) !important;
    }
    body.level3 figure {
        left: 5px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }
    body.level3 figcaption {
        margin: 10px !important;
    }*/
    body.level3 #closebutton {
        z-index: 999;
    }

    body.level3 figure {
        left: 5px !important;
        top: 5px !important;
        height: calc(100vh - 10px);
        width: calc(100vw - 10px);
        /*transform: translateY(-50%) !important;*/
    }

    body.level3 figcaption {
        height: 40px;
        margin: 0 !important;
        line-height: 40px;
    }

    body.level3 img {
        width: 100% !important;
        height: calc(100vh - 50px) !important;
        object-fit: contain !important;
        overflow: hidden !important;
    }

}

@media only screen and (max-width:750px) and (orientation:landscape) {
    body.level3 img {
        width: calc(100% - 100px) !important;
        height: calc(100vh - 50px) !important;
        object-fit: contain !important;
        overflow: hidden !important;
    }
}

