html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
    background: none repeat scroll 0 0 transparent;
    border: 0 none;
    font-family: inherit;
    font-size: 100%;
    font-style: inherit;
    font-weight: inherit;
    margin: 0;
    outline: 0 none;
    padding: 0;
    vertical-align: baseline;
    box-sizing: border-box;
}
html {
    text-rendering: optimizeLegibility;
}
ol, ul {
    list-style: none outside none;
}
blockquote, q {
    quotes: none;
}
:focus, a:hover, a:active {
    outline: 0 none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
    display: block;
}


/* ALLGEMEINES */
body {
    background-color: #fff;
    -webkit-text-size-adjust: none;
    text-size-adjust: none;
    font-family: "Open Sans", sans-serif;
    font-size: 0.825em;
    line-height: 1.75em;
    color: #ddd;
}

#bg_container {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
}

/* #countdown { z-index: 200; position: absolute; top: 0; left: 0; width: 100%; text-align: center; padding-top: 2em; } */
#intro { z-index: 200; position: absolute; width: 100%; padding: 6% 26% 0 26%; }
#intro div.shadow { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; height: auto; 
box-shadow: 0px 0px 25px 8px rgba(0,0,0,0.75);
}
#intro div iframe, #intro div object, #intro div embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%;
}
#countdown { font-weight: 300; font-size: 1.375em; text-shadow: 0px 0px 20px rgba(0,0,0,0.25), 3px 3px 8px rgba(0,0,0,0.25), 1px 1px 1px rgba(0,0,0,0.5); text-align: center; font-family: "Open Sans Condensed", sans-serif; line-height: 1.125em; padding-top: 0.5em; }
#countdown span.big { font-weight: 700; font-size: 6em; line-height: 1em; }
#countdown span.mid { font-weight: 700; display: block; font-size: 2.5em; line-height: 1.5em; }

#credits { position: absolute; bottom: 0.5em; z-index: 200; width: 100%; text-align: center; padding: 0 28% 0 28%; }
#credits img { width: 100%; height: auto; }

#content { position: relative; z-index: 200; width: 66%; margin: 0 auto; 
    background-color: #000;
    background-color: rgba(0,0,0,0.55);
    text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
    -moz-border-radius: 8px; -webkit-border-radius: 8px; -khtml-border-radius: 8px; border-radius: 8px;
    padding: 2.5em;
    margin-bottom: 5em;
    max-width: 1000px;
    box-sizing: border-box;
}

#menu { position: fixed; z-index: 300; top: 1em; right: 1em; 
    text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
    -moz-border-radius: 8px; -webkit-border-radius: 8px; -khtml-border-radius: 8px; border-radius: 8px;
    background-color: #6a121d;
    background-color: rgba(106,18,29,0.8);
    cursor: pointer;
}
#menu p {
    padding: 0.5em;
    -moz-border-radius: 8px; -webkit-border-radius: 8px; -khtml-border-radius: 8px; border-radius: 8px;
    background: url('../bilder/rl_sprite.png') -290px 5px no-repeat; background-size: 390px 400px;
    color: #fff;
    text-transform: uppercase; font-weight: 700; padding-left: 35px;
}
#menu ul { padding: 0 0 0.5em 0; text-align: right; }
#menu li a { padding: 0.25em 1em 0.25em 0; text-decoration: none; color: #eee; display: block; }
#menu li a:hover { background-color: rgba(0,0,0,0.2); }
#menu li a.aktiv { font-weight: bold; color: #fff; }

header { box-sizing: border-box; padding-left: 2.5em; }
h1 { font-size: 2.5em; font-weight: bold; color: #ee1f41; text-transform: uppercase; padding-bottom: 0.5em; line-height: 1.25em; }
h2 { font-size: 1.75em; font-weight: bold; padding: 1.5em 0 1em 0; line-height: 1.25em; }
/* article p, #links p { font-size: 1.5em; line-height: 1.875em; padding-bottom: 1.25em; } */
article.first { padding-top: 3.5em; }
article p, #links p, dl { font-size: 1.375em; line-height: 1.75em; padding-bottom: 1.25em; }
/*article p { font-size: 13px; line-height: 16px; padding-bottom: 1.25em; }*/
article p.cent, article h2.cent { text-align: center; }
article p.cent strong { font-weight: 700; }
article p.cent span { display: inline-block; padding-left: 1em; }
article p.noabs { padding: 0; }
article p.klein { font-size: 0.75em; }
article label { font-size: 1.375em; line-height: 1.75em; padding-bottom: 0.25em; display: block; }
article input[type=text] { color: #6a121d; font-family: "Open Sans", sans-serif; font-size: 1.375em; margin-bottom: 2em; width: 100%; box-sizing: border-box; padding: 0.125em; }

article div.submit {
    display: inline-block;
    background-color: #6a121d;
    padding: 0.25em 0.75em 0.25em 0.75em;
    -moz-border-radius: 8px; -webkit-border-radius: 8px; -khtml-border-radius: 8px; border-radius: 8px;
    cursor: pointer;
}
article input[type=submit] {
    color: #fff;
    font-size: 1.375em; line-height: 1.75em;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
    background-color: #6a121d;
    border: 0;
    cursor: pointer;
}
article div.submit input[type=submit]:hover { background-color: #fff; color: #6a121d; text-shadow: none; }
article div.submit:hover input[type=submit] { background-color: #fff; color: #6a121d; text-shadow: none; }
article div.submit:hover { background-color: #fff; }




img.sup1 { width: 450px; height: auto; }
img.sup2 { width: 400px; height: auto; }
img.sup3 { width: 400px; height: auto; }
img.sup4 { width: 400px; height: auto; }

h1 { position: relative; z-index: 200; font-size: 9em; line-height: 0.975em; width: 66%; margin: 0 auto; margin-top: 33vh; color: #fff; color: rgba(255,255,255,0.75); font-weight: 700; font-family: "Open Sans Condensed", sans-serif; padding-bottom: 0.125em; }
h2 { font-family: "Open Sans Condensed", sans-serif; text-transform: uppercase; font-size: 2em; padding-top: 0; font-weight: 700; }
h3 { font-family: "Open Sans Condensed", sans-serif; text-transform: uppercase; font-size: 1.25em; padding-top: 0; font-weight: 700; }
h3.gr { font-size: 1.5em; line-height: 2em; }
h3.gr span { text-transform: none; font-size: 0.75em; }
h1 span, h2 span { display: block; }
h2 span.sub { font-size: 0.625em; line-height: 1em; text-transform: none; }
#content { margin-top: 1.5em; }

article { padding-bottom: 4em; clear: both; }
img.full { width: 100%; height: auto; margin: 1.5em 0 2.5em 0;
box-shadow: 0px 0px 25px 8px rgba(0,0,0,0.33);
}
img.eng { margin: 1.5em 0 0 0; }
img.square { float: right; width: 25%; height: auto; margin: 0.5em 0 2.5em 2em;
box-shadow: 0px 0px 25px 8px rgba(0,0,0,0.4);
}
article .grid_li { width: 48%; float: left; }
article .grid_re { width: 48%; float: right; }
.clear { clear: both; }
.clear_abs { clear: both; height: 2em; }
.galerie, .galerie2 { cursor: pointer; }
article p a { color: #ddd; }
/*
article p a { color: #ddd;
    text-decoration: none;
    background: linear-gradient(to bottom, transparent 49%, #ddd 50%) repeat-x;
    background-size: 1px 1px;
    @media (-webkit-max-device-pixel-ratio: 1.49), (max-resolution: 143dpi) {
        background-size: 1px 2px;
    }
    background-position: 0 95%;
    text-shadow: 2px 0 rgba(0,0,0,50), 1px 0 rgba(0,0,0,50), -1px 0 rgba(0,0,0,50), -2px 0 rgba(0,0,0,50);
}
*/

dt { float: left; width: 49%; text-align: right; clear: left; }
dd { padding-left: 51%; }
dd.abs { padding-bottom: 2em; }

table { border-collapse: collapse; font-size: 1.3em; line-height: 1.75em; }
table th { padding: 0 0.75em 0.5em 0; }
table td { padding: 0 0 0.5em 0; }

.video-container {
    margin: 0.5em 0 2em 0;
    position: relative;
    padding-bottom: 56.25%;
    height: 0; overflow: hidden;
    box-shadow: 0px 0px 15px 8px rgba(0,0,0,0.4);
}

.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.c3c1, .c3c2, .c3c3 { float: left; width: 33%; padding-top: 0em; }
.c3c1 p, .c3c2 p, .c3c3 p { padding-right: 0%; margin-top: 0; text-align: center; }

#links { text-align: center; }
#links p { 
    display: inline-block;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
}
#links p a { display: block; color: #fff; text-decoration: none; font-weight: bold;
    background-color: #6a121d;
    padding: 0.25em 0.75em 0.25em 0.75em;
    -moz-border-radius: 8px; -webkit-border-radius: 8px; -khtml-border-radius: 8px; border-radius: 8px;
}
#links p a:hover { background-color: #fff; color: #6a121d; text-shadow: none; }


#logo { z-index: 300; position: fixed; top: 1em; left: 1em; width: 193px; height: 79px; background: url('../bilder/rl_sprite.png') 0px 0px no-repeat; background-size: 260px 267px; cursor: pointer; }
#berlinale { z-index: 300; position: fixed; top: 9em; left: 1em; width: 192px; height: 80px; background: url('../bilder/rl_sprite.png') 0px -125px no-repeat; background-size: 260px 267px; cursor: pointer; }
#diagonale { z-index: 300; position: fixed; top: 16em; left: 1em; width: 192px; height: 80px; background: url('../bilder/rl_sprite.png') 0px -207px no-repeat; background-size: 260px 267px; cursor: pointer; }
#starttermin { z-index: 300; width: 100%; text-align: center; }
#starttermin p { display: inline-block; margin: 3em auto; padding: 0.5em; font-size: 1.5em; line-height: 1.5em; font-weight: 700;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
    -moz-border-radius: 8px; -webkit-border-radius: 8px; -khtml-border-radius: 8px; border-radius: 8px;
    background-color: #6a121d;
    background-color: rgba(106,18,29,0.8);
}

#legal { z-index: 300; position: fixed; bottom: 0; right: 0; width: 100%; }
#legal .fr { float: right; text-align: right; color: #fff; font-size: 0.75em; line-height: 1.5em; padding: 6.5em 1.5em 1em 1.5em; text-shadow: 1px 1px 1px rgba(0,0,0,0.5); }
#legal .fr a { text-decoration: none; color: #fff; display: block; padding: 0 0.25em 0 0.25em; }
#legal .fr span { display: none; }
#legal .fr a:hover { background-color: #000; background-color: rgba(0,0,0,0.5); text-decoration: none; }

#legal .fl { float: left; font-size: 1em; line-height: 1.5em; padding: 1em 1.5em 1em 1.5em; text-shadow: 1px 1px 1px rgba(0,0,0,0.5); }
#legal .fl li { display: block; xheight: 46px; margin-top: 0.5em; }
#legal .fl a { color: #fff; display: block; padding: 0.125em 0.5em 0.25em 28px; text-decoration: none; }
#icon_fb a { background: url('../bilder/rl_sprite.png') -290px -94px no-repeat; background-size: 390px 400px; xbackground-color: #f00; }
#icon_tw a { background: url('../bilder/rl_sprite.png') -290px -66px no-repeat; background-size: 390px 400px; xbackground-color: #0f0; }
#icon_sc a { background: url('../bilder/rl_sprite.png') -290px -122px no-repeat; background-size: 390px 400px; xbackground-color: #0f0; }
#icon_fb a span, #icon_tw a span, #icon_sc a span { display: none; }

#schnecke { z-index: 300; width: 80px; height: 80px; display: block; background: url('../bilder/rl_sprite.png') -290px -176px no-repeat; background-size: 390px 400px; position: fixed; bottom: 1em; left: 3.5em; }

#phome #bg_container {
    background: url('../bilder/rl_bg_1.jpg') no-repeat center center fixed; 
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../bilder/rl_bg_1.jpg', sizingMethod='scale');
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../bilder/rl_bg_1.jpg', sizingMethod='scale')";
    background-attachment: scroll;
}

#pstory #bg_container {
    background: url('../bilder/rl_bg_2.jpg') no-repeat center center fixed; 
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../bilder/rl_bg_2.jpg', sizingMethod='scale');
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../bilder/rl_bg_2.jpg', sizingMethod='scale')";
    background-attachment: scroll;
}

#pvideos #bg_container {
    background: url('../bilder/rl_bg_3.jpg') no-repeat center center fixed; 
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../bilder/rl_bg_3.jpg', sizingMethod='scale');
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../bilder/rl_bg_3.jpg', sizingMethod='scale')";
    background-attachment: scroll;
}

#pgalerie #bg_container {
    background: url('../bilder/rl_bg_4.jpg') no-repeat center center fixed; 
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../bilder/rl_bg_4.jpg', sizingMethod='scale');
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../bilder/rl_bg_4.jpg', sizingMethod='scale')";
    background-attachment: scroll;
}

#pcast #bg_container {
    background: url('../bilder/rl_bg_5.jpg') no-repeat center center fixed; 
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../bilder/rl_bg_5.jpg', sizingMethod='scale');
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../bilder/rl_bg_5.jpg', sizingMethod='scale')";
    background-attachment: scroll;
}





@media only screen and (max-width : 1280px) {
    #countdown { font-size: 1.125em; }
}

@media only screen and (max-width : 1150px) {
    #content, h1 { width: 60%; }
}

@media only screen and (max-width : 950px) {
    #content, h1 { width: 55%; }

    #countdown { font-size: 0.75em; }

    img.square { width: 40%; height: auto; }

    #legal { xbackground-color: rgba(0,255,0,0.2); }
    #legal .fr { padding-right: 1em; }
    #legal .fl { padding-left: 1em; }
}

/*
h1 { position: relative; z-index: 200; font-size: 9em; line-height: 0.975em; width: 66%; margin: 0 auto; margin-top: 33vh; color: #fff; color: rgba(255,255,255,0.75); font-weight: bold; font-family: "Open Sans Condensed", sans-serif; padding-bottom: 0.125em; }
*/

@media only screen and (max-width : 760px) {
    #logo { top: 1em; left: 1em; width: 97px; height: 40px; background: url('../bilder/rl_sprite.png') 0px -80px no-repeat; background-size: 260px 267px; }
    #content { width: 90%; margin-bottom: 1em; }
    h1 { width: 80%; font-size: 7em; }
    #legal { position: relative; }
    #legal .fl { margin: 0 auto; width: auto; text-align: center; float: none; display: block; padding: 0; margin-top: 0.5em; }
    #legal .fl li { display: inline-block; margin-right: 0.5em; }
    #legal .fr { display: block; float: none; text-align: center; padding: 1em 0 1em 0; }
    #legal .fr a { display: inline-block; margin-left: 0.5em; }
    #intro { position: relative; width: 100%; padding: 15% 20% 0 20%; }
    #berlinale { z-index: 300; position: relative; top: auto; left: auto; width: 192px; height: 80px; margin: 0 auto; background: url('../bilder/rl_sprite.png') 0px -125px no-repeat; background-size: 260px 267px; cursor: pointer; }
    #diagonale { z-index: 300; position: relative; top: auto; left: auto; width: 192px; height: 80px; margin: 0 auto; background: url('../bilder/rl_sprite.png') 0px -207px no-repeat; background-size: 260px 267px; cursor: pointer; }
    #credits { position: relative; bottom: auto; padding: 3% 3% 0 3%; }
    #schnecke { position: relative; display: block; bottom: auto; left: auto; margin: 0 auto; width: 40px; height: 40px; background: url('../bilder/rl_sprite.png') -145px -88px no-repeat; background-size: 195px 200px;}
}

@media only screen and (max-width : 650px) {
    .c3c1, .c3c2, .c3c3 { float: none; width: 100%; }
    #countdown { font-size: 1em; }
    #countdown span.big { font-size: 4em; line-height: 1em; }
    #countdown span.mid { font-size: 1.5em; line-height: 1.5em; }
}

@media only screen and (max-width : 500px) {
    h1 { font-size: 5em; }
    article .grid_li { width: 100%; float: none; }
    article .grid_re { width: 100%; float: none; }
    .clear_abs { height: 0; }
    dt { float: none; width: 100%; text-align: center; font-weight: 700; }
    dd { padding: 0 0 1em 0; text-align: center; }
    dd.abs { padding-bottom: 5em; }
    #intro { padding: 30% 5% 0 5%; }
    img.sup1, img.sup2, img.sup3, img.sup4 { width: 300px; height: auto; }
}

@media only screen and (max-width : 400px) {
    body { font-size: 0.75em; }
    header { padding-left: 1.25em; }
    h1 { width: auto; font-size: 5em; }
    #content { width: 100%; padding: 1.5em; -webkit-hyphens: auto; -moz-hyphens: auto; -ms-hyphens: auto; hyphens: auto;
    margin-top: 0.5em;
    xmargin-top: 66vh;
    }
    img.square { width: 50%; height: auto; margin: 1.5em 0; display: block; float: none; }
    footer .fr { float: none; display: block; width: 100%; text-align: center; }
    footer .fr a, footer .fr span { display: inline-block; }
    img.sup1, img.sup2, img.sup3, img.sup4 { width: 280px; height: auto; }
    #countdown span.big { font-size: 3em; line-height: 1em; }
}

