/**
	CSS Reset.
**/
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,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-weight: inherit;
    font-style: inherit;
    font-size: 100%;
    font-family: inherit;
    vertical-align: baseline;
}
/* remember to define focus styles! */
:focus {
    outline: 0;
}
body {
    line-height: 1;
    color: black;
    background: white;
}
ol, ul {
    list-style: none;
}

table {
    border-collapse: separate;
    border-spacing: 0;
}
caption, th, td {
    text-align: left;
    font-weight: normal;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: "";
}
blockquote, q {
    quotes: "" "";
}


/*
	Ahoi Content
*/


html, body {
    font-family: Arial, Helvetica, sans-serif;
    margin: 0px;
    padding: 0px;
    height: 100%;
    background-color:#FFF;
}
body {
    min-height:600px;
}

#header {
    cursor:pointer;
    position:absolute;
    top:20px;
    left:36px;
    width:150px;
    background-color:transparent;
}
#header:hover, #overview:hover {
    background-color:transparent;
}

#overview {
    cursor:pointer;
    opacity:.6;
    filter:Alpha(Opacity=60);
    position:absolute;
    top:0px;
    left:350px;
    height:23px;
    display:none;
}

#menu {
    font-family: "Roboto", sans-serif;
    position:absolute;
    top:0px;
    left:80px;
    width:220px;
    height:100%;
    min-height:500px;
    background-color:#F2F2F2;
    border:0px solid black;
    letter-spacing:1px;
    font-size:15px;
    text-transform:lowercase;
    font-variant:small-caps;
    padding-top:140px;
}

.screen_m #menu {
    display: none;
    z-index:2;
    left:0px;
    /*position:fixed;*/
}
.screen_m #menu.open {
    display: block;
}

#menu #menu_spacer {
    height:148px;
}

#menu>div, a.menudirectlink {
    border:0px solid black;
    padding-top:5px;
    padding-bottom:5px;
    padding-left:20px;
    cursor:default;
    background-image:url(./_gfx/menu_arrow_norm.png);
    background-position:7px 10px;
    background-repeat:no-repeat;
}

#menu>div:hover {
    background-image:url(./_gfx/menu_arrow_selected.png);
}
#menu div div {
    display:none;
    background:transparent;
}
#menu div div.selected, .screen_m #menu div div {
    display:block;
}
#menu div div span, #menu .submenu a, a.menudirectlink {
    display:block;
    padding:5px;
    padding-left:36px;
    margin-left:-20px;
    cursor:pointer;
    font-size:13px;
    color: #000000;
    text-decoration: none;
}
a.menudirectlink {
    margin-left:0px;
    padding-left:20px;
}
#menu div div span:hover, #menu div div span.selected, .hoverM, #menu .submenu a:hover, #menu .submenu a.selected, a.menudirectlink:hover {
    background-color:#FFFFFF;
}
#mobilemenu {
    display:none;
}
.screen_m #content {
    padding-top:40px;
}
.screen_m #mobilemenu {
    display:block;
    position:fixed;
    top:0px;
    left:0px;
    z-index:3;
    background-image:url(./_gfx/mmenu.png);
    background-position: top left;
    background-repeat: no-repeat;
    width:40px;
    height:40px;
}

#content {
    position:absolute;
    top:20px;
    left:320px;
    background-color:#fff;
    display:none;
}
.screen_m #content {
    left:20px;
}
#milkglass {
    position:fixed;
    background-color:#fff;
    top:0px;
    left:0px;
    height:100%;
    width:100%;
    display:none;
}
#footer {
    position:fixed;
    display:block;
    bottom:0px;
    width:220px;
    height:16px;
    color:#666666;
    background-color:#FFFFFF;
    opacity:.7;
    filter:Alpha(opacity=70);
    font-size:11px;
    text-align:center;
    padding-top:4px;
}
#footer a:link, #footer a:visited {
    color:#666666;
}
#footer:hover {
    opacity:1;
    filter:Alpha(opacity=100);
}

#tmpSub {
    display:none;
}

br {
    /*clear: left;*/
    letter-spacing:normal;
}

#details {
    margin-top:50px;
    margin-bottom:50px;
}
#details .descr h2, .descr h2 {
    font-family: 'Roboto Condensed';
    font-weight:300;
    font-size:22px;
    padding-bottom:10px;
}
#details .descr, .descr {
    width:450px;
    display:inline-block;
    margin-right:20px;
    vertical-align: top;
    font-family: 'Roboto Slab';
    font-size:14px;
    line-height:22px;
    text-align: justify;
}
span.zitat {
    font-family: 'Roboto Condensed';
    font-weight: 300;
    font-style: italic;
    font-size: 18px;
    color:#8d8d8d;
    display: block;
    padding-bottom: 10px;
    padding-top: 10px;

}


/***
**  INDEX
***/

div.descr.descr_wide {
    max-width:900px;
    width:100%;
}

#contact_form {
    max-width: 435px;
    display: block;
}

#contact_form input, #contact_form textarea {
    margin-top:10px;
    border:1px solid #bebebe;
    width:99%;
    max-width: 425px;
    outline: none;
    padding:10px;
    padding-right:0px;
}

#contact_form textarea {
    height:200px;
}

#contact_form button {
    margin-top:10px;
    border:1px solid #bebebe;
    width:150px;
    outline: none;
    padding:10px;

}
/***
**  vTour
***/
div.vtour {
    height:90%;
    min-height: 530px;
}

#details .project_map {
    width: 350px;
    height: 350px;
    display:inline-block;
}

/***
**  CGI
***/
#cgi_content {
    position:relative;
    width:100%;
}
#cgi_content img {
    width:17%;
    min-width: 140px;
    margin-left:15px;
    margin-bottom:15px;
    display:none;
}
#cgi_content img.contentitem {
    display:inline-block;
    cursor: pointer;
}
