@charset "UTF-8";
@media all {


 
  
    /* Ungeordnete Listen ohne Listenpunkt */

    ul.liste {list-style-type: none;}
    ul.liste li {margin: 0 0 0.25em 0;}
  
    dl {
        margin: 0;
    }

    dl dd {
        margin: 1em 0;
    }

    dl dt {
        margin: 1.5em 0 1em 0;
    }

    dl ol {
        margin: 1em 0;
    }

    th, td {
        line-height: 1.5em;
        vertical-align: top;
        padding: 0.25em 0.5em;
    }

    th *:first-child,
    td *:first-child {
        margin-top: 0;
    }

    tbody th {
        text-align: left;
        border-top: none;
        text-align: left;
    }

    tbody td {
        text-align: left;
        border-top: none;
    }



    .alert {
        color: rgb(200, 0, 50)
    }

    .only_mobile {
        display: none
    }
    .trenner {margin:0 5px 0 0}
    
    /* Uhrzeit Formatierung */
    abbr.dtstart {
        margin-right: 3px;
        border: none;
    }

    abbr.dtend {
        margin-left: 3px;
        border: none;
    }



    /* ############################################################################################### */
    /* ### Inhaltsbereich  ########################################################################### */
    /* ############################################################################################### */


    /* ### Bildpositionierung ############################################################################ */
    img.float_left
    {
        float: left;
        margin-right: 1.5em;
        margin-bottom: 0.25em;
        border: 0;
}

    img.float_right
    {
        float: right;
        margin-left: 0.5em;
        margin-bottom: 0.15em;
        border: 0;
    }

    img.center
    {
        text-align: center;
        background: #fff;
        padding: 4px;
        border: 1px #ddd solid;
    }

    div.framed img
    {
    float: left;
    margin: 5px 20px 10px 0;
    border: 1px solid #ccc;
    width: 100px!important;
    height: auto!important;
}
    img.speaker
    {
    float: left;
    margin: 5px 20px 10px 0;
    width: 120px!important;
    height: auto!important;
}
    div.contact_photo img
    {
        float: none;
    }


    img.certpic
    {
        margin: 4px 10px 0.15em 0;
        border: 1px #ddd solid;
        padding: 8px;
    }

    div.framed_right
    {
        margin: 4px 0 0.15em 10px;
        border: 2px solid #a4a4a9;
        background: #fff;
        float: right;
        padding: 5px 5px 0 5px;
    }

    img.noframe
    {
        padding: 0 !important;
        margin: 0 !important;
        border: none !important;
        background: none !important;
    }

    body.presse div.castnews {
        wborder-top: 5px solid #8dc33f;
        background:url(/images/icons/icon-cast.svg)no-repeat;
        background-size: 24px;
        padding-top: 25px;
    }
body.presse div.castnews:before {
	content:"";
	width: calc(100% - 80px);
	height: 3px;
	background: #8dc33f;
	position:absolute;
	left: 50px;
    margin-top: -15px;
}
    body.presse div.castnews.home,
    div.ym-cbox > h1 + div.castnews {
    border-top: none;
    margin-top: 20px;
}
    body.presse div.castnews.home:first-of-type {background:none;margin-top: 0px; padding-top: 0px}
    body.presse div.castnews.home:first-of-type:before {background:none;}



    /* ### Anfahrtsplaene ############################################################################ */
    #map1,
    #map2, #map1b, #map1c
    {
        border: 1px solid #bbb;


        padding: 10px;
        margin: 10px 25px 15px 0px;
        width: 340px;
        height: 240px;
        float: left;
        position: relative;
    }

    #map1 img, #map2 img, #map1b img, #map1c img {
        display: none;
    }

    #map1 {
        background: url(/images/content/map-darmstadt.png) no-repeat 99% 5%;
    }

    #map1b {
        background: url(/images/content/map-darmstadt2.png) no-repeat 99% 5%;
    }

    #map1c {
        background: url(/images/content/map-darmstadt3.png) no-repeat 99% 5%;
    }

    #map2 {
        background: url(/images/content/karte_ffm-darmstadt.png) no-repeat 70% 80%;
    }

    img.cap
    {
        position: absolute;
        padding: 2px;
        background: #fff;
        right: -3px;
        top: -3px;
        display: block !important;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        box-shadow: rgba(0, 0, 0, 0.8) 0px 1px 8px;
    }

    /* ### Formulare & Tabellen ############################################################## */

    table
    {
        border-spacing: 0;
        width: 100%;
        margin-bottom: 0.5em;
    }

    td, th
    {
        vertical-align: top;
        text-align: left;
        padding: 0.2em 1.5em 0.2em 0;
    }

    th
    {
        font-weight: 700;
        padding: 0.2em 1.5em 0.5em 0;
    }

    form {
        overflow: hidden;
    }

    input, textarea
    {
        width: auto;
        border: 1px #ccc solid;
        background: #fafafa;
        padding: 3px;
        color: #777;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
    }

    input[type=checkbox],
    input[type=radio] {width: auto!important;}
    input[type=text]:focus, textarea:focus
    {
        background: #f0f0f0;
        color: #333;
        border-color: #666;
    }
    .fp-anmeldung textarea,
    .fp-anmeldung input,
    .fp-anmeldung select {width: 100%}
    
    #main .ym-col3 #login a {
        margin: 0 20px 0 0px!important;
        padding: 2px 4px 0 18px!important;
        background: url('/images/icons/press_link.png') no-repeat 0px 3px!important;
        font-weight: bold!important;
        color: rgb(140, 190, 40)!important;
}


    #smsform label {
        display:inline-block;
        width: 100%;
    }

    #smsform input {
        margin: 0;
    }
  
  /* Profil Seite */
     #profilform {
         line-height: 25px;
         }
     #profilform input {
        max-width: 400px;
    }
     #profilform label {
        display:block;
        line-height: 20px;
        padding: 5px 0;
    }
    .totp div.checkbox {
        display:inline-block;
        padding: 5px;
        background: #93c100;
        line-height: 100%;
        margin-top: -5px;
    }
    .totp div.checkbox input#logincookie {
        position:relative;
        margin: 0;
    }
    .totp .open,
    .totp .close {
        background-repeat: no-repeat;
        background-size: 16px;
        background-position: left center;
        padding-left: 24px;
        font-family: 'PTSansBold', Helvetica, Arial, sans-serif;
        cursor: pointer;
    }
  	.totp .open {
        background-image: url(/images/icons/icon-right.svg);
        }
    .totp .close {
        background-image: url(/images/icons/icon-down.svg);
        float: none;
        font-size: inherit;
        opacity: 1;
        color: inherit;
        line-height: inherit;
        text-shadow: none;
        folter: none;
        }
    .totp #qr-code {margin-top: 10px;}
    form#newslettermain {margin-bottom: 20px;max-width: 400px;margin: 10px auto 20px auto;}
@media(min-width:1024px){    form#newslettermain {margin-bottom: 20px;max-width: 400px;margin: 5px auto 20px auto;}}
    form#newslettermain input.btn {width: 50%;margin:0;display:block;float:left}

    form#searchform td
    {
        padding-right:0;
    }

    form#searchform input {
       width: 100%;
       padding: 5px 10px;
       line-height: 20px
    }
    @media(min-width:500px){
        form#searchform input[type=submit] {
       width: 50%;
    }
    }
    

    form#searchform input.radio {
        margin: 4px 10px 0px 0px;
        width: auto;
        float:left;
        clear:both;
    }
   

    table#searchresults
    {
       margin-top: 20px
    }

    table#searchresults tr.workshop td
    {
       font-size: 105%;
       border:none!important;
       background: #e6e6e6;
       padding: 5px;
       border-top: 1px solid #ccc!important;
       border-bottom: 1px solid #ccc!important;
    }

    table#searchresults tr.program td
    {
       border:none!important;
       padding: 5px;
       vertical-align: top;
    }

    table#searchresults a.textlink {
        background: none;
        padding-left: 20px;
        background: url(/images/icons/icon-right.svg) no-repeat 0 50%;
        background-size: 14px
    }
    table#searchresults tr.program td a.textlink {
       font-weight:normal;
       font-size:95%
    }

    /* sidebar newsletter - alex */
    div.box_cast form#newsletter {
        overflow: hidden;
    }

    div.box_cast form#newsletter input
    {
        font-size: 11px;
        line-height: 14px;
        width: 140px;
        float: left;
    }


    div.box_cast form#newsletter input
    {
        margin: 1px 0 1px 0;
    }

    div.box_cast form#newsletter input.submit
    {
        padding: 2px 3px 3px 3px;
        width: 20px !important;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        height: 23px;
        float: right;
        margin: 0;
    }

    /* ### Tabellen ########################################## */
    table.workshops,
    table#workshop, table#seminar, table#whycast, table#memberlist, div#mitgliedschaft table,
    table#pricing, form#regform table#fee, table#gewinner
    {
        border-collapse: separate;
        /* border: 1px solid rgb(200, 200, 200); */
        /*border-radius: 6px;
                                -webkit-border-radius: 6px;
                                -moz-border-radius: 6px;*/
        /* background: #fff; */
        width: 100%;
    }

    table#workshop tr td {
        border: none;
        padding: 5px 10px 5px 5px;
    }
    table#workshop td.location a.btn {
        padding: 3px 3px 2px 3px;
        margin-left: 2px;
        font-size: 12px;
        background: none;
        color: #666!important;
        display:none
    }
    table#workshop td.location a.btn:hover {
        background:#88c532;
        color: #fff!important
    }
    table.workshops {
        margin: 0 0 1em 0;
        display: block;
    }

    table.workshops td.title {
        padding: 0.75em 5px;
        width: 90%;
        background: none !important;
    }


    table.workshops td.date {
        padding: 0.75em 10px;
        text-align: right;
        white-space: nowrap;
        font-weight: bold;
    }

    table#gewinner
    {
        margin: 0.5em 0 2em 0;
    }

    table#gewinner th {
        padding-right: 20px !important;
    }

    table#gewinner th.headline
    {
        background: rgb(204, 240, 168);
        padding: 3px 5px;
    }

    table#gewinner tr:first-child th.headline
    {
        border-radius: 4px 4px 0 0;
    }

    table#gewinner th,
    table#gewinner td
    {
        padding: 5px;
    }

    table#workshop, table#seminar
    {

        margin: 0 0 0.8em 0;
    }

    table#workshop tr td, table#seminar tr td
    {
        padding: 5px 10px 10px 0;
        font-weight: 700;
        color: #223;
    }

    table#workshop tr:first-child td, table#seminar tr:first-child td
    {
        padding: 10px 10px 10px 0;
    }

    div#mitgliedschaft table
    {
        margin: 0;
        padding: 0;
    }

    div#mitgliedschaft table th
    {
        list-style-type: none;
        margin: 0;
        padding: 0.5em 1em;
        background: rgb(136, 197, 50);
        color:#fff;
    }

    div#mitgliedschaft table th:first-child
    {
        width: 20%
    }

    div#mitgliedschaft table td
    {
        list-style-type: none;
        margin: 0;
        padding: 0.5em 1em;
        border-bottom: 1px solid #ddd;
        background:#fff
    }

    table#memberlist
    {
        margin-bottom: 2em;
    }

    table#memberlist td
    {
        padding: 5px;
        border-top: 1px solid #ccc;
    }

    table#memberlist tr:first-child td
    {
        border-top: none;
    }

    table#memberlist td img
    {
        margin: 2px 20px 2px 0;
        padding: 0;
        border: none;
        background: none;
    }

    table#memberlist a.textlink {
        background-image: none;
        padding-left: 0;
    }

    table#memberevents th,table#memberevents td
    {
        border-bottom: 1px solid rgb(80, 100, 140);
        padding: 10px 10px 10px 0;
    }
    table#memberevents th:last-child
    {
        white-space:nowrap;
    }
    table#memberevents td:last-child
    {
        padding: 10px 0 10px 0;
    }
    table#memberevents td:first-child,table#memberevents span.summary {font-weight:600}
    table#memberevents td a
    {
        color: #32468C
    }



    /* ### Listenelemente #################################### */


    dl#presslist,
    dl#presslist_ws
    {
        margin: 0 0 1.5em 0;
        padding: 0;
        border-top: 1px solid #ccc;
    }
    dl#presslist dt,
    dl#presslist_ws dt
    {
        margin: 0;
        padding: 5px 5px 0 5px;

    }
    dl#presslist dd,
    dl#presslist_ws dd
    {
        margin: 0 0 2px 0;
        padding: 0 5px 5px 5px;
        border-bottom:1px solid #ccc
    }
    dl#presslist dd span.newspaper,
    dl#presslist_ws dd span.newspaper
    {
        position: absolute;
        right: 25px;
    }
    dl#presslist dd span.newspaper a,
    dl#presslist_ws dd span.newspaper a
    {
        padding-left: 24px;
        background-image: url('/images/icons/icon-right.svg');
        background-repeat: no-repeat;
        background-position: left middle;
        font-weight: 700;
        background-size: 16px
    }
    dl#presslist dd span.newspaper a:hover,
    dl#presslist_ws dd span.newspaper a:hover {
        text-decoration: none;
    }

    div#download h2
    {
        margin: 0.5em 0 0.5em 0;
        font-size: 1.2em;
    }

    div#download ul
    {
        list-style-type: none;
        margin: 0 0 2em 0;
        ;
        padding: 0.5em 0.5em 0 0;
    }

    div#download ul li {
        margin: 0 0 0.5em 0em;
    }

    div#mitgliedschaft ul
    {
        list-style-type: none;
        margin: 0;
        padding: 0.5em 0.5em 0 0;
    }

    ul.linklist
    {
        list-style-type: none;
        margin: 0 0 20px 0;
        padding: 0 0 1em 0;
    }

    ul.linklist li
    {
        margin: 0 0 0.5em 0em!important;
    }

    div#mitgliedschaft ul.block
    {
        background: #fff;
        border: 1px solid rgb(200, 200, 200);
        padding: 5px 10px;


        margin-bottom: 1em;
    }

    div#mitgliedschaft ul.block li
    {
        margin: 0;
        list-style-type: none;
        background: #fff;
        padding: 10px 0;
        font-weight: normal;
        text-align: left;
        color: #000;
        border-top: 1px solid #ccc;
    }

    div#mitgliedschaft ul.block li:first-child {
        border-top: none;
    }

    ul#kommitee
    {
        list-style-type: none;
        margin: 0;
        padding: 0.5em 0.5em 0 0;
    }

    ul#kommitee li
    {
        margin: 0 0 0.5em 0em;
        width: 20em;
        float: left;
    }

    ul#years, ul#membercategory, ul#contentnav
    {
        list-style-type: none;
        margin: 20px 0 2em -4px;
        padding: 0;
        position: relative;
        z-index: 11;
    }
    ul#contentnav {margin-top: 30px}
    ul#years li, ul#membercategory li, ul#contentnav li
    {
        margin: 0 5px 8px 0;
        display: inline-block;

    }

    ul#years li a, ul#membercategory li a, ul#contentnav li a
    {
        padding: 0px 10px;
        margin: 0;
        color: #333 !important;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        background-image: none;
        white-space: nowrap;
        display: inline-block;
        line-height: 26px;
    }

    ul#years li.current a,ul#years li a:hover, ul#years li a.active, ul#membercategory li a:hover,
    ul#membercategory li a.active, ul#contentnav li a:hover, ul#contentnav li a.active
    {
        background: rgb(141, 195, 63);
        color: #fff !important;
    }

    ul#datenschutz
    {
        list-style-type: none;
        margin: 0.5em 0 1.5em 0;
        width: 21em;
        border: 1px solid #bbb;
        padding: 5px 0 5px 5px;
        background: #fff;
        margin: 4px 1em 1em 0;
    }

    ul#datenschutz li
    {
        margin: 0 0 -1px 0;
        padding: 0.2em 0em 0.3em 0.5em;
    }

    div#map_canvas {
        border: 2px solid #a4a4a9;
        border-radius: 6px;
        -webkit-border-radius: 6px;
        -moz-border-radius: 6px;
    }

    div#map_canvas > div {
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        background: none !important;
    }

    div#map_canvas div.gmnoprint a {
        background: none;
    }

    div#map_canvas a {
        background: none;
        margin: 0;
        padding: 0;
    }

/* Mapbox */
    div#map {
        border: 1px solid #a4a4a9;
        width: 100%;
        height: 300px;
        margin-bottom: 3em;
    }

@media(min-width:768px){
    div#map { height: 500px;}
}

    div#map a {
        background: none!important;
        margin: 0!important;
        padding: 0!important;
    }

  	.mapboxgl-popup-content {
  	    text-align: center;
   		padding:10px 15px 0 10px;
   		pointer-events: auto;
    	max-width: 200px;
	}
	.mapboxgl-popup-content img {
	    margin-bottom: 5px;
    	max-width: 190px;
	}
	.mapboxgl-popup-close-button {
   		right: 5px;
	}
	
    /* Foerderpreis History */

    div.history-nav {
        font-family: 'PTSansBold', Helvetica, Arial, sans-serif;
        margin: 20px 0;
    }
    div.history-nav span {
        font-family: 'PTSansBold', Helvetica, Arial, sans-serif;
        background-size: 16px;
        color: #555;
        padding-left: 24px;
        line-height: 18px;
        background-repeat:no-repeat;
        display: inline-block;
        cursor: pointer;
        }
    div.history-nav span.close {
        background-image: url(/images/icons/icon-up.svg);
        float: none;
        font-size: inherit;
        font-weight: inherit;
        opacity: 1;
        color: #555;
        }
    div.history-nav span.open {
        background-image: url(/images/icons/icon-down.svg);
        }

    ul.history>li {
    position: relative;
    background:  url(/images/dot.svg);
    background-size: 8px;
    background-repeat: repeat-y;
    background-position: left 154px top 0px;
    padding: 10px 0 10px 206px;
    min-height: 60px;
    }
    ul.history>li ul.winner {margin: 0 0 -4px 0;display: none;}
    ul.history>li:first-child ul.winner {display: block;}
    .history a {
        font-family: 'PTSansBold', Helvetica, Arial, sans-serif;
        background-size: 16px;
        color: #555;
        padding-left: 24px;
        line-height: 18px;
        background-repeat:no-repeat
        }
    .history a.pressemitteilung,
    .history a.agenda {
        position: absolute;
        left: -2px;
        top: 5px;
        background-image: url(/images/icons/icon-right.svg);
        color: #666;
        }
     .history a.agenda {margin-top: 2em;}

ul.history div.year {
    position: absolute;
    z-index: 10;
    color: #fff;
    left: 124px;
    top: 0px;
    line-height: 0px;
    width:70px;
    padding:30px 20px;
    cursor: pointer;
    background: url(/images/cast-circle.svg);
    background-size: 56px;
    background-repeat: no-repeat;
    background-position: left 5px top 0px;
    }
    ul.history div.year>div.tooltip {
        position: absolute;
        top: 0;
        line-height: 22px;
        margin: 0px 0 0 33px;
        background: rgb(127, 202, 0);
        /* background-image: repeating-linear-gradient(135deg,hsla(0,0%,100%,.2), hsla(0,0%,100%,.2) 4px,transparent 0, transparent 8px); */
        padding: 4px 8px;
        white-space: nowrap;
        /* border-radius: 3px 3px 3px 0; */
        letter-spacing: 0.05em;
        /* text-shadow: 0 0.04em 0.04em #000; */
        }
/*    ul.history div.year:hover>div.tooltip {
        display:block!important;
    }
    */

    div.year:not(:hover) > .tooltip:not(:hover) {
	transform: scale(0);
	transition: .25s transform;
	opacity:0;
}

.tooltip {
	transition: .5s cubic-bezier(.25,.1,.3,1.5) transform;
	transform-origin: 1.4em -.4em;
	opacity: 1;
	display:block!important
}
ul.history {margin: 0 0 20px 0;padding:0;}
ul.history li {list-style-type:none;margin-left: 0;font-size: 13px;line-height: 1.2em;margin-bottom: 9px;}
ul.history h3 {margin: 0 0 6px 0;font-size: 14px;line-height: 1.4em;font-weight: normal;}


