body {
    background-color: lightgrey;
    margin:0;
    padding:0;
    font-family: calibri, sans-serif;
}

.br {
    clear: both;
}

#svg-measure-wrapper {
    position: fixed;
    z-index: -1;
    opacity: 0;
}

#app-wrapper {
    position:absolute;
    width: 100%;
    height: 100%;
    overflow: auto;

}

a {
    text-decoration: none;
    color: #002D65;
}

.bg-body {
    overflow: hidden;
}

.hidden {
    display: none;
}

g.hidden {
    display: block;
    opacity: 0.15;
}

g.hidden .text {
    display: none;
}

#scroll-wrapper {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: auto;
}

#body-wrapper {
    background-color: white;
    max-width: 900pt;
    margin-left: auto;
    margin-right: auto;
    padding-top: 118px;
}

#body-wrapper.main {
    padding-top: 250px;
}

#cex-content {
    padding: 10px;
}

.cex-red {
    color: #B8422B;
}

.svg-node {
    cursor: default;
}

.svg-node.highlight {
    cursor: pointer;
}

.svg-node:hover .icon {
    stroke: #002D65;
    stroke-width: 1px;
}

svg .selelem {
    display: none;
}

#cex-header {
    position: relative;
    width: 100%;
}

#cex-header .banner {
    position: fixed;
    top: 0%;
    width: 100%;
    max-width: 900pt;
    margin-left: auto;
    margin-right: auto;

    border-bottom: 8pt solid #B8422B;
    height: 80pt;
    background-color: white;
}

#cex-header .banner .logo {
    display: block;
    position: absolute;
    left: 12pt;
    bottom: 6pt;
}

#cex-header .banner .logo img {
    height: 48pt;
    color: none;
    border: none;
}

#cex-header .banner h1 {
    margin: 0;
    padding: 0;
    font-size: 36pt;
    position: absolute;
    bottom: 4pt;
    right: 24pt;
    font-family: palatino;
}

#cex-header .banner h1 a{
    text-decoration: none;
    color: #B8422B;
}

#main-solution-chooser {
    position: fixed;
    top: 88pt;
    width: 100%;
    max-width: 900pt;
    margin-left: auto;
    margin-right: auto;
    height: 135px;
    background-color: lightgrey;
    transition: max-height 0.4s;
    max-height: 120px;
}

.solution-chooser ul {
    display: block;
    margin: 0 auto;
    padding: 0;
    margin-left: 12px;

    overflow: hidden;
    max-height: 75px;
    transition: max-height 0.4s;
}

#main-solution-chooser.minimized {
    max-height: 40px;
}

#main-solution-chooser.minimized ul {
    max-height: 0px;
}

.solution-chooser li {
    display: block;
    background-color: white;
    border-radius: 8px;
    border-color: lightgrey;
    float:left;
    margin: 12px 24px;
    cursor: pointer;
    transition: background-color 0.2s, border-color 0.8s;
}

.solution-chooser .solution div {
    border: 3px solid #002D65;
    border-radius: 5pt;
    background-image: url('Icons_KriseLoesen.png');
    width: 76px;
    height: 45px;
}

.L2 div {
    background-position: 76px 0px;
}

.L3 div {
    background-position: 152px 0px;
}

.L4 div {
    background-position: 227px 0px;
}

.L5 div {
    background-position: 303px 0px;
}

.L6 div {
    background-position: 379px 0px;
}

.L7 div {
    background-position: 455px 0px;
}

.L8 div {
    background-position: 530px 0px;
}

.L9 div {
    background-position: 606px 0px;
}

#solution-text {
    text-align: left;
    background-color: #eee;
    clear: left;
    margin: 0;
    padding: 12px;
    height: 40px;
}

#solution-text .wot-link {
    display: block;
    float: right;
    color: blue;
    font-weight: bold;
    cursor: pointer;
    margin-left: 20pt;
}

#solution-text h1 {
    margin:0;
    margin-right: 20pt;
    float: left;
    font-size: larger;
}

#solution-text p {
    margin: 0;
}

.solution-chooser .selected {
    margin: 9px 21px;
    border: 3px solid #B8422B;
    border-radius: 9px;
}

.solution-chooser .highlighted {
    background-color: lightyellow;
}

.solution-chooser .highlighted.selected {
    background-color: lightblue;
}

#teaser {
    position: fixed;
    bottom: 40px;
    background-color: rgba(255,255,255,0.9);
    color: #002D65;
    text-align: justify;
    max-width: 850pt;
    padding-top: 16pt;
    padding-bottom: 18pt;
    padding-left: 24pt;
    padding-right: 24pt;
}

#teaser > p {
    margin: 0;
    padding: 0;
}

#notification-arrow {
    position: fixed;
}

#cex-page-menu {
    margin: 0;
    padding: 0;
    position: absolute;
    top: 0;
    right: 0;
}

#cex-page-menu li {
    display: block;
    float: left;
}

#cex-page-menu li.link {
    font-weight: bold;
}
#cex-page-menu li.languages {
    margin: 0 10px;
}

#cex-page-menu li.button {
    background-color: #002D65;
    /*padding-bottom: 1pt;*/
}

#cex-page-menu .button a {
    border-left: 2pt solid white;
    font-size: 10pt;
    text-align: center;
    padding-top: 6pt;
    height: 16pt;
    width: 120pt;
    display: block;
    color: white;
    text-decoration: none;
}

#cex-page-menu a.first {
    border-left: none;
}

.panel {
    border: 2.5pt solid #002D65;
    border-radius: 8pt;
    margin: 8pt;
}

.panel.text {
    padding: 12pt;
}

#cex-canvas {
    overflow-y: auto;
    overflow-x: hidden;
}

#cex-canvas > svg {
    width: 100%;
}

#textbox-wrapper {
    z-index: 10;
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.7);
}

#close {
    z-index: 11;
    position: absolute;
    background-image: url(close.png);
    width: 24px;
    height: 24px;
    background-size: 18px;
    background-position: 3px 3px;
    background-repeat: no-repeat;
    background-color: rgba(255,255,255,0.8);
    cursor: pointer;

    border-top: 1px solid #002D65;
    border-right: 1px solid #002D65;
    border-left: 1px solid #002D65;
    border-bottom: 1px solid #002D65;
    border-top-right-radius: 6pt;
    border-bottom-left-radius: 2pt;
    right: 1px;
    top: 1px;

}

#close:hover {
    background-image: url(close-rollover.png);
}

#cex-textbox {
    background-color: rgba(255,255,255,1);
    overflow: visible;
    line-height: 15pt;
    font-size: 12pt;
    text-align: left;
    margin: 0;

    min-width: 520px;
    left: 17%;
    right: 17%;
    position: fixed;
    top: 24px;
    bottom: 24px;
    border: 2px solid #002D65;
}

#cex-textbox-heading {
    font-size: 2em;
    font-weight: bold;
    margin-top:10px;
    padding-top:0;
    text-align: left;
    color: #002D65;
    vertical-align: middle;
    line-height: 60px;
    margin-left: -10px;
}

#cex-icon {
    float: left;
    margin: 0;
    padding: 0;
    margin-right: 18px;
}

#cex-icon li {
    padding: 0;
    margin: 0;
    cursor: default;
}

#cex-effects {
    cursor: pointer;
}

#cex-textbox-content-body .img {
}

#cex-textbox-content-body svg {
    cursor: pointer;
}

.hint-pointer {
    display: inline-block;
    margin-left: 10px;
    width: 16px;
    height: 16px;
    background-image: url("00-Pointer-Hand-icon.png");
}

hr.effect-separator {
    margin-top: 140px;
    clear: both;
}

#cex-textbox .img {
    margin-left: 12pt;
    width: 100%;
    min-width: 450px;
    float: right;
    clear: right;
}

#cex-textbox .img img {
    margin: 0;
    padding: 0;
    width: 100%;
}

#cex-textbox .img p {
    text-align: center;
    font-style: italic;
    padding-left: 20px;
    padding-right: 20px;
}

#cex-textbox-content {
    min-width: 450px;
    position: absolute;
    top: 28px;
    left: 0;
    right: 0;
    bottom: 0;
    padding-left: 24pt;
    padding-right: 18pt;
    padding-bottom: 6pt;
    overflow: auto;
    background-color: white;
    border-radius: 0 0 4pt 4pt;
}

@media (max-device-width: 599px) {

    #cex-textbox {
        min-width:0;
        position: absolute;
        top:0;
        bottom:0;
        left:0;
        right:0;
        border: none;
        border-radius:0;
    }

    #cex-textbox .img {
        max-width: 100%;
        width: 100%;
    }

    #cex-textbox-content {
        top:0;
    }

    #close {
        width: 64px;
        height: 64px;
        background-size: 48px;
        background-position: 8px 8px;
        border-top: none;
        border-right: none;
        border-top-right-radius: 0;
        border-left: 2px solid #002D65;
        border-bottom: 2px solid #002D65;
        border-bottom-left-radius: 8pt;
        right: 0;
        top: 0;
    }

    #cex-icon {
        top: 8px;
        right: 72px;
    }


    #cex-textbox-content {
        padding-left: 8pt;
        padding-right: 8pt;
    }
}

#cex-footer {
    font-size: 10pt;
    height: 28px;
    margin-top: 8pt;
    border-top: 2pt solid lightgrey;
    padding-left: 8pt;
    padding-right: 8pt;
    padding-top: 0;
    padding-bottom: 0;
    overflow: hidden;
}

#cex-textbox a.internal {
    font-weight: normal;
    text-decoration: none;
    color: #B8422B;
}

#cex-footer .share-buttons {
    padding-top: 4px;
}

#cex-footer .share-buttons > * {
    border: none;
    overflow: hidden;
    float: left;
}

#share-tw {
    width: 100px;
}

#share-gplus {
    width: 80px;
    margin-left: 4px;
}

#share-fb {
}

#follow-fb {
    margin-left: -85px;
}

#cex-footer .links {
    margin-top: 4px;
    float: right;
}

#crisis-explained {
    margin: 0;
    margin-right: 10px;
    background-color: white;
    top: 0;
    left: 0;
    z-index: 5;
}

#crisis-explained img {

    margin-left: 6px;
    display: block;
    float: right;
}


#cex-welcome {
    z-index: 10;
    transition: max-height 0.4s;
    overflow: hidden;
    max-height: 150px;
}

#cex-welcome.faded {
    max-height: 0;
}

#cex-welcome > div {
    background-color: lightyellow;
    padding: 12px;
    background-image: url("arrow_up.png");
    background-repeat: no-repeat;
    background-position: right 56px top 5px;
    background-size: 40px;
}

#cex-welcome em {
    font-weight: bold;
}

#cex-welcome h1 {
    font-size: large;
}

.secondary-menu {
    display: inline-block;
    padding: 7px;
    margin: 0;
    background-color: white;
    z-index: 5;
}

#lingua {
    top: 0;
    left: 0;
}

.secondary-menu img {
    margin-left: 4px;
    display: block;
    float: right;
}
