/**
 *  Stylesheet for Velopa Citystyle
 *  ===============================================================
 *  $Revision: 1.58.8.48 $
 *  ===============================================================
 *
 *  global styleguide:
 *
 *  colors {
 *    white : #fff;
 *    black : #000;
 *    red   : #9f1d38;
 *    blue  : #8f95a4;
 *    gray  : #a6aab6;
 *    green : #4c555e;
 *  }
 *
 *  fonts {
 *    headers : Frutiger;
 *    text    : Arial, Helvetica, sans-serif;
 *  }
 */


/**
 * GLOBAL HTML ELEMENTS
 *
 * default html elements, such as html, body, img, p, a.
 */

/* links */
a { padding: 0 0 1px 0; color: white; font-weight: bold; text-decoration: none; }
a:visited { }
a:hover { color: #9f1d38; }
a:active { color: #9f1d38; }
a:focus, a:hover, a:active { outline: none; }

/* headers */
h1, h2, h3, h4, h5, h6 { margin: 0 0 1em 0; font-family: Arial, Helvetica, sans-serif; color: white; }
h1 { font-size: 1.2em; }
h2 { font-size: 1.1em; }
h3 { font-size: 1em; }

/* images */
img, a img { border: 0; }

/* paragraphs */
p { }

/* lists and definition lists */
ul { }
    ul li {}

dl {}
    dl dt {}
    dl dd {}

/* tables */
table { font-size: 1em; vertical-align: top; border-collapse: collapse; }
    table thead { }
    table tbody { }

    table td, table th { font-size: 1em; line-height: 1.6em; text-align: left; }

/* form elements, labels & fieldsets */
form { margin: 0; }

input, select, textarea { border: 1px solid #4c555e; padding: .2em 0; font: normal 1em Arial, Helvetica, sans-serif; background-color: #e2e3e7; }
    input:focus, textarea:focus { border-style: inset; }
    input.disabled { cursor: pointer; }

fieldset { border: 0; padding: 0; }
    fieldset legend { margin: 0; padding: 0; color: black; }
    fieldset form { margin-left: 0 !important; }

label { cursor: pointer; }
    label:hover { color: #4c555e; }

iframe { min-height: 35em; border: 0px; }

object, object:focus { outline: none; }

ins { text-decoration: none; }

/**
 * BASIC PAGE LAYOUT
 *
 * describes the default page layout
 */

html, body { height: 100%; margin: 0; padding: 0; border: 0; background-color: #bdbfc7; }
body { font: normal .7em/1.6em Arial, Helvetica, sans-serif; color: black; }

#body { min-width: 796px; height: 100%; text-align: center; background: url(/images/background.gif) top left repeat-x #bdbfc7; }
.home { background-image: url(/images/b_home.gif) !important; }

    #container { position: relative; width: 796px; min-height: 100%; margin: 0 auto; padding: 0; text-align: center; background-position: center top; background-repeat: no-repeat; }

        #nav { position: absolute; top: 0; left: 0; width: 100%; height: 83px; border-bottom: 1px solid white; opacity: .70; background-color: #8f95a4; }
            #mainnav { position: absolute; top: 57px; right: 0; width: 796px; margin: 0 auto; text-align: right; }
                #mainnav ul { float: right; list-style-type: none; margin: 0; padding: 0; }
                    #mainnav li { position: relative; float: left; margin: 0 0 0 1.3em; padding-bottom: 3px; height: 23px; }
                        #mainnav li:hover, #mainnav li.active { background-color: #bdbfc7; }
                        #mainnav li a { display: block; height: 100%; border: 0; padding: 0 1em; background-color: transparent; background-position: center 5px; background-repeat: no-repeat; }
                            #mainnav li a:hover { }
                            #mainnav li a span { display: none; }
                        #mainnav li ul { display: none; position: absolute; right: 0; top: 100%; padding: .5em 0; opacity: .90; background-color: white; }
                            #mainnav li:hover ul { display: block; }
                            #mainnav li ul li { float: none; height: auto; }
                                #mainnav li ul li:hover { background-color: white; }
                                #mainnav li ul li a { width: 150px; padding: 0 1em; text-align: left; font-weight: normal; color: black; background: none transparent !important; }
                                    #mainnav li ul li a:hover { color: #9f1d38; background: url(/images/a_bul011_cs.gif) 3px 6px no-repeat transparent; }

            #globalnav { position: absolute; top: 0; right: 0; border-bottom: 1px solid #e2e3e7; padding: .1em 1em; opacity: .90; background-color: #bdbfc7; }
                #globalnav ul { list-style: none; margin: 0; padding: 0; }
                    #globalnav ul li { display: inline; margin: 0 .5em; }
                        #globalnav ul li a { padding-left: 10px; color: black; font-size: .9em; background: url(/images/a_bul_cs.gif) left center no-repeat transparent; }
                            #globalnav ul li a:hover { color: #9f1d38; background-image: url(/images/a_bul011_cs.gif); }

        #breadcrumbs { position: absolute; top: 84px; left: 0; right: 0; width: 100%; margin: 0; padding: 0; background-color: #a6aab6; }
            #breadcrumbs ul { list-style: none; margin: 0; padding: 0 0 0 10px; height: 23px; background: url(/images/a_bul_cs.gif) 0 7px no-repeat transparent; }
                #breadcrumbs ul li { float: left; border-left: 1px solid #8f95a4; padding: 2px 0 0 0; height: 21px; text-indent: .6em; color: black; }
                #breadcrumbs ul li#firstcrumb { border-left: 0px; }
                    #breadcrumbs ul li a { display: block; height: 100%; padding: 0 .6em; color: #383838; font-weight: normal; text-indent: 0; }
                        #breadcrumbs ul li a:hover { color: #9f1d38; background-color: #bdbfc7; }
                    #breadcrumbs ul li#firstcrumb a { padding-left: 0; }

        #mainnav h2, #globalnav h2, #breadcrumbs h2 { display: none; }

        #header { position: absolute; top: 0px; left: 0; width: 150px; height: 83px; text-indent: -9000px; margin: 0 auto; padding: 0; background: url(/images/logo_cs.gif) 30px center no-repeat transparent; }
            #header a { display: block; width: 100%; height: 100%; }

        #content { position: relative; top: 120px; width: 796px; min-height: 218px; margin: 0 auto; text-align: left; }
        .home #content { top: 95px; }
            #content h1 {  border-bottom: 1px solid white; margin-bottom: 0; padding-bottom: .6em; background-position: 10px center; background-repeat: no-repeat; }
                #content h1 span { visibility: hidden; }

        #footer { }

/**
 * PAGE-SPECIFIC ELEMENTS
 *
 * Style specially for pages
 */

/* quicknav is special navigation on the homepage/subsite */
#quicknav { width: 150px; }
    #quicknav ul { list-style-type: none; margin: 0; padding: 0; }
        #quicknav ul li { margin-bottom: .9em; height: 20px; }
            #quicknav ul li a { display: block; width: 100%; height: 100%; }
                #quicknav ul li a:hover { background-color: #cadcec; }
                #quicknav ul li a span { visibility: hidden; }

/* pagevisual is a specially generated visual, linkbox is positioned the same way */
#contentcolumn { position: absolute; left: 125px; width: 248px; }
#pagevisual { position: relative; float: left; left: 0; width: 248px; height: 248px; padding-bottom: 0em; text-align: right; }
    #pagevisual p a {float:right; clear:both;}
    #pagevisual img { display: block; }
.linkbox_default, .linkbox_video { padding-bottom: 0em; }
    .left { left: 0 !important; }

/* page title */
#pagetitle { margin: 0 1em 0 372px; height: 40px; background-position: left top; background-repeat: no-repeat; }
   #pagetitle span { visibility: hidden; }

/* contenttext is positioned right from pagevisual */
#contenttext { margin: 1em 1em 0 392px; text-align: justify; }
#contenttext_wider { margin: 1em 1em 0 125px; text-align: justify; }
.vacancy p { margin: 0 0 .5em 0; padding: 0; }

.subheader { color: #383838; margin-bottom: 0; padding: 0; }

#banners { position: absolute; top: 225px; left: 3px; }
    #banners div { float: left; width: 150px; height: 58px; margin: 0 3px; }
    #banners a { display: block; color: white; font-weight: normal; margin: 0 auto; width: 150px; }
        #banners a:hover { color: #9f1d38; }
        #banners a span.more { margin-left: 0; padding-left: 10px; background: url(/images/a_bul010_cs.gif) left center no-repeat transparent; }
            #banners a:hover span.more { background-image: url(/images/a_bul011_cs.gif); }

/* inline sections: images on subsites */
#inline-sections { clear: both; }
    .inline-sections dt { display: block; padding-bottom: 1.5em; font-size: 1.2em; font-weight: bold; background-color: #e2e3e7; }
        .inline-sections dt a { float: left; }
    .inline-sections dd { clear: both; margin: 1em 0 0 0; }
        .inline-sections dd h2 { margin: 0; padding: .2em 1em 0 0; }
            .inline-sections dd h2 a { font-size: .95em; }
        .inline-sections dd p { margin: .5em 0; }

/* block: (news)blocks on the homepage */
.block { clear: both; margin-bottom: 2em; }
    .block h2 { margin: 0; padding: .2em 1em .1em .3em; font-size: 1.2em; }
        .block h2 a { display: block; text-decoration: none; border: 0; }
    .block img { float: left; margin: 0 1em 1em .3em; }
    .block p { margin: 0 .5em .5em .3em; }

/* default and rich menu */
.menu_default { margin: 0; padding: .5em 0; list-style-type: none; }
    .menu_default li { margin-bottom: .5em; }
        .menu_default li a { padding-left: 10px; background: url(/images/a_bul010_cs.gif) left center no-repeat; }
            .menu_default li a:hover { background-image: url(/images/a_bul011_cs.gif); }

/* Default and rich lists */
ul.default, ul.rich, dl.group_rich ul { clear: both; margin: 0; padding: 0; list-style-type: none; }
    ul.default li { margin-bottom: 1.5em; }
        ul.default li a { padding-left: 10px; background: url(/images/a_bul010_cs.gif) left center no-repeat; }
            ul.default li a:hover { background-image: url(/images/a_bul011_cs.gif); }
        ul.default p { padding-left: 10px; margin-top: .3em; margin-bottom: 0; }
        ul.default li .more { font-weight: normal; margin-left: 10px; }

    ul.rich li, dl.group_rich ul li { min-height: 250px; border-top: 1px solid white; margin-bottom: 1em; }
    dl.group_rich, dl.group_rich dt, dl.group_rich dd { margin: 0; padding: 0; }
    dl.group_rich dt { height: 30px; background-position: left top; background-repeat: no-repeat; }
        dl.group_rich dt a { display: block; width: 248px; height: 100%; }
            dl.group_rich dt a span { visibility: hidden; }

    .rich-list-title { margin: 0 1em 0 372px; height: 40px; background-position: left top; background-repeat: no-repeat; }
        .rich-list-title a { display: block; height: 100%; }
        .rich-list-title span { visibility: hidden; }
    .rich-list-visual { position: relative; float: left; left: 125px; width: 248px; }
    .rich-list-content { margin: 0 1em 0 390px; text-align: justify; }

    li.vacancy-item .date { font-weight: bold; margin-bottom: -1.6em; }
    li.vacancy-item p { margin: 0 0 .1em 10px; padding: 0; }
    li.vacancy-item p.more { font-weight: bold; margin-left: 10px; }
        li.vacancy-item p.more a { padding: 0; background: none; }

/* default and rich group */
dl.group { clear: both; }
    dl.group dt { margin: 0; }
    dl.group dd { margin-left: 1em; }
        dl.group a { font-weight: bold; padding-left: 10px; background: url(/images/a_bul010_cs.gif) left center no-repeat; }
            dl.group a:hover { background-image: url(/images/a_bul011_cs.gif); }

/* linkbox */
.linkbox_default, .linkbox_video { clear: both; margin: 1em 0; padding: 0; list-style-type: none; }
    .linkbox_default li, .linkbox_video li { margin: 0; padding: 0 0 0 10px; background: url(/images/a_bul010_cs.gif) left 7px no-repeat; }
        .linkbox_default li a, .linkbox_video li a { border: 0; }

    .linkbox_video li { clear: both; min-height: 60px; }
        .linkbox_video li a { background-position: left 95%; }
            .linkbox_default li:hover, .linkbox_video li:hover { background-image: url(/images/a_bul011_cs.gif); }
        .linkbox_video li a span { display: block; }

/* semicolumn, for providing a 2-column layout, to be used in conjunction with float-left/float-right */
.semicolumn { width: 49%; padding: 0; margin: 0 0 1em 0; }

/* imgbox, for displaying an image with description in a box */
.imgbox { float: left; width: 100px; margin: 0 1em 1em 0; }
    .imgbox img { float: none; display: block; margin: 0; border: 0; }
    .imgbox p { margin: 0; padding: .3em; font: bold .8em/1.2em Arial, Helvetica, sans-serif; background-color: #e2e3e7; }

/* basicform styles form elements, marked up in a definition list */
.basicform { float: left; width: 100%; }
.basicform dl input, .basicform dl textarea, .basicform dl select { width: 100%; color: #383838; }

    /* IE displays border around radio buttons and checkboxes, which is ugly */
    .radio, .radio:hover, .checkbox, .checkbox:hover { width: auto !important; border: 0 !important; background-color: transparent; }

    .basicform dl dt { clear: both; width: 40%; float: left; color: #383838; line-height: 1.3em; }
    .basicform dl dd { width: 60%; float: left; margin: 0 0 .2em 0; color: #383838; }
        .basicform dl dd .button { float: right; }
    .errors { font-style: italic; color: #9f1d38; padding: 0; margin: 0 0 1em 1.3em; }
    dt.header { margin: .5em 0; font-weight: bold; width: 100% !important; }
    dd.header { margin: 0; line-height: 0; }
    .static label:hover { color: #383838; }

    /* style for double column checkbox/radio */
    .basicform dl dt.group-columns { clear: both; margin-top: .3em; border-bottom: 1px solid black; background-color: #e2e3e7; }
    .basicform dl dd.group-columns { margin-bottom: .3em; width: 100% !important; background-color: #e2e3e7; }
        .basicform dl .column { float: left; width: 49%; }

.extra_note { color: #383838; margin: 0; padding: 0; }

/* addresses */
.address { float: left; margin-bottom: 1em; width: 100%; }
.address dt, .address dd { float: left; padding: 0 0 .1em 0; color: black; }
.address dt { clear: both; width: 25%; font-weight: bold; }
.address dd { width: 70%; margin: 0; }

/* search styles: form, info and results */
#searchengine { margin: 1em 1em 0 145px; }

#resultsinfo { margin: 0; padding: 0; }
    #resultsinfo h2 { font-size: 1em; }
    #resultsinfo p { margin: 0; }
    #resultsinfo h2, #resultsinfo p { margin: 0; padding: .2em 1em .1em .3em; color: #383838; }

#searchform { margin: 1em 0; padding-bottom: 1em; }
    #searchform label { font-weight: bold; }
    #searchform p { margin: 0; padding: 0; }

#searchresults { margin: 0; padding: 0; }
    #searchresults dt { color: #4c555e; font-weight: bold; margin: 2em 0 0 0; }
        #searchresults dt a { color: #4c555e; }
            #searchresults dt a:hover { color: #9f1d38; }
    #searchresults dd { margin: 0 0 0 1.4em; }
        #searchresults dd a { color: white; }
            #searchresults dd a:hover { color: #9f1d38; }

/* highlighting for search terms */
.highlight { font-weight: bold; color: #4c555e; }
    a:hover .highlight { color: #9f1d38; }

/* forum and poll styles */
.forum, .topic, .pollarchive { width: 97%; margin: 0 0 2em 0; border: 1px solid #e2e3e7; }
    .forum thead th, .topic thead th, .pollarchive thead th { margin-bottom: .2em; color: #383838; background-color: #e2e3e7; }
    .forum tbody th, .forum tbody td, .pollarchive tbody th, .pollarchive tbody td { border-right: 1px solid #e2e3e7; }
    .forum tr, .topic tr, .pollarchive tr { border-bottom: 1px solid #e2e3e7; }
    .forum td, .forum th, .topic td, .topic th, .pollarchive td, .pollarchive th { vertical-align: top; padding: .3em; }
    .forum img, .topic img { vertical-align: top; }
    .forum p, .pollarchive p { margin-top: 0; }
    .forum a, .pollarchive a { font-weight: bold; color: #f60; border-color: #f60; }

.post { }
    .post th { border-right: 1px solid #e2e3e7; }
.author { }

.postform { }
    .postform .basicform dt, .postform .basicform dd { float: none; width: auto; }
    .postform .basicform dt { font-weight: bold; margin-top: .5em; padding: .1em .3em; }
    .postform .basicform dd { margin: 0 0 1em 0; padding: 0; }
    .postform .basicform textarea  { width: 100%; }
    .postform .basicform input.submit { width: auto; }

/* odd, even and first for row coloring (zebra tables and distinctive first post) */
.odd { background-color: #fff; }
.even { background-color: #e2e3e7; }
.first { background-color: #e2e3e7; border: solid #e2e3e7; border-width: 0 1px; }
    .first .date { color: #aaa; }

/* special icons for announcements, sticky topics and locked topics */
td.announcement, td.sticky, td.locked, td.default { padding-left: 20px; background-position: 0 5px; background-repeat: no-repeat; }
    td.announcement { background-image: url(/images/i_announce.gif); }
    td.sticky { background-image: url(/images/i_sticky.gif); }
    td.locked { background-image: url(/images/i_locked.gif); }

.announcement { font-weight: bold; }
.locked, .locked a { color: #afafaf; border-color: #afafaf; background-color: #e2e3e7; }

/* search styles: form, info and results */
.pollresults { width: 100%; }
    .pollresults tr { }
    .pollresults td { text-align: right; }
        .pollresults td span { float: left; }

    .pollresults dt, .pollresults dd { margin: .3em 0 0 0; padding: 0; float: left; }
    .pollresults dt { clear: both; width: 20%; }
    .pollresults dd { width: 20%; }
    .pollresult { width: 55% !important; background-color: #e2e3e7; }
        .pollresult div { border: 2px solid #383838; background-color: #e2e3e7; }

.pollresults, #pollform { margin-bottom: 2em; }

/* sitemap */
ul.sitemap { margin: 1em 1em 1em 0; padding: 1em 0; }
    ul.sitemap ul { margin: .3em 1em .5em 1.5em; padding: 0; }
    ul.sitemap, ul.sitemap ul { list-style-type: none; }
    ul.sitemap li { }
        ul.sitemap li:hover { }
        ul.sitemap li a { color: white; padding-left: 10px; background: url(/images/a_bul010_cs.gif) left 5px no-repeat; }
            ul.sitemap li a:hover { color: #9f1d38; background-image: url(/images/a_bul011_cs.gif); }

/* chapters in documents */
#chapters { margin: 1em 0; padding: .5em 0; list-style-type: none; }
    #chapters li { padding: .3em; }
        #chapters li a { padding-left: 10px; background: url(/images/a_bul010_cs.gif) left center no-repeat; }
            #chapters li a:hover { background-image: url(/images/a_bul011_cs.gif); }

.chapter { margin: 1em 0 0 0; color: black; }

/* navbox, for displaying next/previous/index links */
.navbox { margin-top: 2em; padding: .3em .2em; text-align: center; }
    .navbox a { border: 0; }
        .navbox span a:hover { background-color: #e2e3e7; }

    /* previous, next, index and page links in navbox */
    .prev { float: left; }
    .next { float: right; }
    .index { }
    .page { margin: 0 .2em; }
        .page a { padding: 2px 6px; }

/* more: paragraph with a "read more" link */
.more { margin: 1em .5em; }
    .more a { padding: 0 0 0 15px; background: url(/images/a_bul010_cs.gif) left center no-repeat transparent; }
        .more a:hover { background-image: url(/images/a_bul011_cs.gif); }

.more-download { margin: 0 0 1em 0; }

/* date: date in messages */
.date { display: block; text-align: right; margin: 0 0 1em 0; color: #383838; }

/* button: transforms a normal button to a styled button */
input.button, button.button { width: auto !important; border: 1px solid #4c555e; cursor: pointer; padding: 2px 15px 1px; font: bold .95em Arial, Helvetica, sans-serif; color: #383838; background-color: #e2e3e7; }
    .button:active { border-style: inset; }
    .submit { /*margin: .3em 0;*/ }
a.button { border: 1px solid #4c555e; padding: 3px 15px 2px; font: bold .95em Arial, Helvetica, sans-serif; color: #383838; background-color: #e2e3e7; }

/* exceptions to normal button-style */
#articlesbutton { padding: 3px 30px 2px; }

/* .feed: RSS-feed button placement */
.feed { position: absolute; top: 44px; right: 1em; border: 0 !important; margin-left: 1em; }
    .feed img { border: 0; vertical-align: text-top; }


/**
 * GLOBAL CLASSES
 *
 * global classes are used for very common styles, such as floating, coloring or clearing. Often used in combination, such as: <a href="link.html" class="align-right no-border">link to the right without border</a>.
 */

/* positioning and visibility */
.clear-both     { clear: both; }
.clear-none     { clear: none !important; }
.float-left     { float: left; }
.float-right    { float: right; }
.inline         { display: inline; }
.block          { display: block; }
.nodisplay      { display: none; }
.show           { visibility: visible; }
.hide           { visibility: hidden; }
.align-left     { text-align: left; }
.align-right    { text-align: right; }
.fullwidth        { width: 100%; }

/* coloring and text decoration/transformation */
.no-border      { text-decoration: none; border: 0 !important; }
.no-spacing     { margin: 0; padding: 0; }
.back           { }
.red            { color: #9f1d38; }
.req            { color: black; }
.err            { color: #9f1d38; font-weight: bold; }
.notice         { background-color: #ffa; color: #f60; }
.white          { color: white; }
.chosen         { color: #f60; font-weight: bold; }
.strong         { font-weight: bold; }
.normal         { font-weight: normal; }