/* reset the css */
a img { border: 0 }
body, ul, li, p, h1, h2 { margin: 0; padding: 0 }
ul, li { list-style: none }

body {
    font-size: 11px;
    font-family: Verdana, Helvetica, Arial, sans-serif;
    background: white;
}

#ajax-indicator,
#ajax-indicator-table {
    width: 200px;
}
div.ajax-indicator { 
    white-space: nowrap;
    text-align: center;
    vertical-align: middle;
    padding: 15px;
    font-size: 16px;
    font-weight: bold;
    color: #000;
}

div.wrap {
    position: relative;
    width: 960px;
    padding: 10px;
    margin: 0 auto;
}
* html div.wrap { 
    left: 50%;
    margin-left: -480px;
}

/* home, sitemap, etc. */
div.topnav {
    position: absolute;
    padding: 6px 0 6px 6px;
    right: 10px;
}
div.topnav a {   
    text-decoration: none;
    padding: 0 6px 0 3px;
    font-size: 12px;
}

/* header */
div.header {
    width: 960px;
    min-height: 96px;
    background-color: #ccc;
}
div.header img {
    display: block;
    border-style: none;
    border-width: 0px;
}

/* main nav */
#home div.nav {
    margin-bottom: 38px;
}
#home h1 {
    display: none;
}
#home .inner-content {
    padding: 0 60px;
}
div.nav {
    width: 960px;
}
div.nav a {
    text-decoration: none;
    padding: 0 12px;
    font-size: 14px;
    display: table-cell;
    vertical-align: middle;
    position: relative;
}
div.nav a span {
    background-position: left center;
    background-repeat: no-repeat;
    display: block;
}
* html div.nav a {
    float: left;
    position: relative;
    display: block;                                                            
}
* + html div.nav a {    
    float: left;
    position: relative;
    display: block;
}
* html div.nav a span {
    position: relative;
    top: expression(((offsetParent.offsetHeight-offsetHeight)/2)+'px');
}
* + html div.nav a span {
    position: relative;
    top: expression(((offsetParent.offsetHeight-offsetHeight)/2)+'px');
}
div.nav {
    position: relative;
    z-index: 2;
}
div.nav ul {
    width: 100%;
    list-style: none;  
}
div.nav li {
    float: left;
    position: relative;
}
div.nav li:hover ul ul, div.nav li:hover ul ul ul, div.nav li.sfhover ul ul, div.nav li.sfhover ul ul ul {
    display: none;
}
div.nav li:hover ul, div.nav li li:hover ul, div.nav li li li:hover ul, div.nav li.sfhover ul, div.nav li li.sfhover ul, div.nav li li li.sfhover ul {
    display: block;
}
div.nav ul ul {
    position: absolute;
    top: 100%;
    left: 0;
    display: none;
    width: 180px;
    z-index: 10000;
}
div.nav ul ul ul {
    top: 0;
    left: 100%;
}
div.nav ul ul ul ul {
    left: 0;
    top: 100%;
}
div.nav ul ul li {
    float: left;
    width: 180px;
    border-bottom: 1px solid white;
}
div.nav ul ul li a {
    width: 156px;
    height: auto !important;
}
div.nav ul ul li a span {
    padding: 0.5em 0;
}

/* bread crumbs */
div.crumbs {
    margin: 1em 0;
    color: black;
    font-size: 12px;
}
div.crumbs a {       
    text-decoration: none; 
}
#home div.crumbs {
    display: none;
}

/* body */
div.body {
    width: 960px;
    overflow: hidden;
    z-index: 1;
}

div.left {
    float: left;
    width: 160px;
}
div.right {
    float: left;
    margin-left: 13px;
    width: 160px;
    border: 1px solid #666666;
    padding: 15px 15px 5px 15px;
}
div.left .block,
div.right .block {
    margin-bottom: 10px;
    width: 100%;
}
div.left .side-nav li {
    width: 100%;
}
div.left .side-nav a {
    display: table-cell;
    vertical-align: middle;
    width: 160px;
    color: black;
    text-decoration: none;
    display: table-cell;
    vertical-align: middle;
    background-position: 12px center;
    background-repeat: no-repeat;
}
div.left .side-nav ul a {
    background-color: #EEEEEE;
}
div.left .side-nav a span {
    display: block;
    padding: 0.5em 0;
}
* html div.left .side-nav a {
    display: block;
    position: relative;
}
* + html div.left .side-nav a {
    display: block;
    position: relative;
}
* html div.left .side-nav a span {
    position: relative;
    top: expression(((offsetParent.offsetHeight-offsetHeight)/2)+'px');
}
* + html div.left .side-nav a span {
    position: relative;
    top: expression(((offsetParent.offsetHeight-offsetHeight)/2)+'px');
}

.block {
    overflow: hidden;
    width: 100%;
}
.block h3 {
    font-size: 18px;
    padding: 4px 4px 4px 0;
    background: #aaa;
    color: white;
    font-weight: normal;
    margin: 0 0 1em 0;
}
.block .more {
    float: right;
    margin-bottom: 10px;
    margin-right: 10px;
    display: block;
    padding: 0.25em;
}

div.content {
    float: left;
    min-height: 400px;
}
* html div.content {
    height: 400px;
}
div.content.narrow {
    margin-left: 15px;
    width: 580px;
}
div.content.wide {
    width: 755px;             
}
div.content.extra-wide {
    width: 960px;
}
h1 {
    background: #ccc;
    padding: 0 11px 11px;
    margin: 0;
}
div.inner-content {
    padding: 11px;
    line-height: 1.5em;
}

div.inner-content p,
div.inner-content ul,
div.inner-content ol {
    margin: 0 0 1em 0;
}

div.inner-content ul,
div.inner-content ul li {
    list-style: disc;
}
div.inner-content ol,
div.inner-content ol li {
    list-style: decimal;
}

div.inner-content ul,
div.inner-content ol {
    padding-left: 3em;
}

div.inner-content h1,
div.inner-content h2,
div.inner-content h3,
div.inner-content h4,
div.inner-content h5 {
    margin: 0 0 12px 0;
    padding: 0;
}

div.footer {
    clear: both;
    width: 960px;
    height: 32px;
    overflow: hidden;
    margin-top: 40px;
}

div.footer p {
    line-height: 32px;
    padding: 0 11px;
}

/* banners */
div.banners h3,
div.footer h3 { display: none }

/* news-specific */
div.news-summary {
    margin-bottom: 18px;
    overflow: hidden;
}
div.news-summary div.end,
div.news-full div.end {
    clear: both;
}
div.news-summary h2,
div.news-full h2 {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 2px;
}
div.news-summary h2 a {
    text-decoration: none;
}
div.news-summary p {
    margin: 0;
}
div.news-summary img {
    float: left;
    margin-right: 12px;
    margin-bottom: 6px;
}
.news-summary .date,
.news-full .date {
    font-size: 12px;
    color: #999;
    margin-bottom: 12px;
}
.news-full .images {
    float: left;
    overflow: hidden;
    margin-right: 6px;
    margin-bottom: 6px;
}
.news-full .images .image {
    float: left;
    margin-right: 33px;
    width: 160px;
    overflow: hidden;
}
.news-full .images .image img {
    display: block;
}
.news-full .images .image span {
    display: block;
    text-align: center;
    padding: 0.5em 0;
    clear: both;
}
.block.news h3 {
    display: table-cell;
    width: 160px;
    padding: 0;
    vertical-align: middle;
}
.block.news ul {
    margin-top: 12px;
    padding: 0 1em 0 0;
}
.block.news ul li {
    list-style: none;
    padding: 0;
    margin: 0 0 6px 0;
    background-position: 28px 0.3em;
    background-repeat: no-repeat;
}
.block.news ul li a {
    text-decoration: none;
    background-position: 12px center;
    background-repeat: no-repeat;
}

/* link-specific */
div.link {
    clear: both;
    overflow: hidden;
}
div.link h2 {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 6px;
}
div.link h2 a {
    text-decoration: underline;
}
div.link img {
    float: left;
    margin: 0 6px 0 0;
}
div.link p {
    margin-bottom: 0;
}
.block.links h3 {
    width: 160px;
    display: table-cell;
    vertical-align: middle;
    padding: 0;
}
.block.links ul {
    margin-top: 12px;
    padding: 0 1em 0 0;
}
.block.links li {
    list-style: none;
    padding: 0 0 6px 0;
    margin: 0;
    background-position: 28px 0.3em;
    background-repeat: no-repeat;
}
.block.links li a {
    text-decoration: none;
}


* html .block h3 {
    position: relative;
}
* + html .block h3 {
    position: relative;
}
* html .block h3 span {
    position: relative;
    top: expression(((offsetParent.offsetHeight-offsetHeight)/2)+'px');
}
* + html .block h3 span {
    position: relative;
    top: expression(((offsetParent.offsetHeight-offsetHeight)/2)+'px');
}

/* Products section panels */

div.product-listing {
    margin-top: 13px;
    clear: both;
    color: #000;
}
div.category-selection {
    overflow: hidden;
    width: 100%;
}

div.panels-container {
    width: 100%;
    height: 230px;
    font-size: 11px;
    line-height: 13px;
    padding: 11px 0 11px 11px
}

.browsing-panel { 
    float: left;
    margin-right: 11px;
}
.browsing-panel .panel-header {
    font-weight: bold;
    display: block; 
}
.browsing-panel .panel-header {
    font-weight: bold;
    display: block; 
    margin-bottom: 6px;
    float: left;
    width: 100%;
}
.browsing-panel div {
    clear: both;
}
.browsing-panel #letter {
    text-align: center;
    background: #DEDEDE;
    clear: both; 
    width: 237px;
}
.browsing-panel #letter a {
    color: #1E518C;
}

.browsing-panel #letter ul li {
    display: inline;
}

.browsing-panel #letter ul li a {
    line-height: 1.5em;
    text-decoration: none;
}
.browsing-panel #letter ul li a:hover  {
    text-decoration: underline;
}

.browsing-panel .catlist {
    width: 237px;
    height: 200px;
    overflow: auto;
}
.browsing-panel #sub-category {
    width: 474px;
}
.browsing-panel .catlist li a {
    display: block;
    text-decoration: none;
    color: #1E518C;
}
.browsing-panel .catlist li a:focus {
    outline: none;
}
.browsing-panel #letter ul li a:hover,
.browsing-panel .catlist ul li.selected a,
.browsing-panel .catlist ul li a:hover {
    background-color: #1E518C;
    color: white;
}


/* Popup box */
table.popup {
    /*width: 100%;  
    width: 200px;*/
    width: 300px;
    color: #000;
}
table.popup table,
table.popup table td,
table.popup table thead td,
table.popup table tbody td,
table.popup table tfoot td {
    border: 0;
    padding: 0;
    margin: 0;
}
div.popup table.popup thead td,
table.popup thead td,
table.reg-popup thead td {
    background: url('../img/en/title_bg.gif') repeat-x;
    color: #333;
    width: 150px;
    height: 23px;
}

table.popup {
    border-collapse: collapse;
    z-index: 100;
    background-color: white;
    border-top: 1px outset #aaa;
    border-left: 1px outset #aaa;    
    border-bottom: 3px outset #aaa;
    border-right: 3px outset #aaa; 
}

table.reg-popup {
    border-collapse: collapse;
    z-index: 100;
    background-color: white;
}

table.popup tbody td.content {
    padding: 5px;
}

table.popup .footer,
table.reg-popup .footer {
    text-align: right; 
    padding: 5px;
}

table.popup .footer img {
    float: right;
}

table.popup td,
table.reg-popup td {
    padding: 0;
}
div.popup table.popup thead td.title,
table.popup thead td.title,
table.reg-popup thead td.title {
    color: black;
    text-transform: none;
    padding: 10px 0 0 10px;
    font-size: 18px;
    font-weight: bold;
    cursor: move;
    border: 0 none;
    width: 100%;
    white-space: nowrap;
}
div.popup table.popup thead td.close,
table.popup thead td.close,
table.reg-popup thead td.close {
    padding: 10px;
    text-align: right;
    cursor: pointer;
}
div.popup table.popup thead td.img,
table.popup thead td.close img,
table.reg-popup thead td.close img {
    float: right;
}
table.popup td.content,
table.reg-popup td.content {
    padding: 10px;
    padding-top: 0;
}
table.popup td.content img.icon,
table.reg-popup td.content img.icon {
    /*float: left;*/
    margin-left: auto;
    margin-right: auto;
}

table.popup td.icon {
    padding: 10px;
}


table.popup .field {
    white-space: normal;
}

/* fixed width for certain popups */
table.popup .popup-product-details {
    /*width: 300px;*/
    width: 100%;
}
    table.popup .popup-product-details tbody td.label {
        white-space: nowrap;
    }

div.popup #popup-folder-add-table {
    width: 275px;
}
div.popup #popup-folder-add-table .label {
    width: 50px;
    padding-left: 2px;
}
div.popup #popup-folder-add-table .field {
    text-align: right;
    padding-right: 2px;    
}
div.popup #popup-folder-add-table .field input {
    width: 180px;
}


/* [END] Popup box */

.popup-details {
    padding-top: 3px;
    padding-left: 0px;/*20px;*/
    padding-right: 20px;
    padding-bottom: 4px;
}

.details .label {
    font-weight: bold;
}


ul.legend-horizontal {
    /*float: left;*/
}

.legend-horizontal li {
    display: inline;    
}

.legend-horizontal li img {
    display: inline;
    margin: 0 5px 10px 10px;
}

div.legend-horizontal-title{
    font-weight: bold;
    padding-left: 10px;
}

div.legend-horizontal-container {
    width: 100%;
}

table.legend-horizontal{
    margin-top: 7px;
    width: 100%;
}
    table.legend-horizontal td.legend-horizontal {
        border-top: 1px solid #000000;
    }
        table.legend-horizontal td.legend-horizontal ul {
            white-space: nowrap;
        }
    
    table.legend-horizontal td.legend-horizontal-clickable {
        width: 100%;
    }
    
    table.legend-horizontal ul{
        margin-top: 16px;
    }
/*** */

/** products **/
.products .code { font-weight: bold; text-align: center; }
products .code div { text-align: center; display: inline; float: none }
.popup .label { color: #365583; text-align: right; white-space: nowrap; vertical-align: top }


.error_message {
    font-weight: bold;
    color: red;
}

table.form tr td.label,
table.form tr td.field {
    vertical-align: top;
    
}

form#vote-form table.form tr td.label {
    width: 150px;
}



table.application-form{
    width: 100%;
}

    table.application-form td.underlined,
    table.form td.underlined {
        padding-bottom: 10px;
        padding-top: 10px;
        font-weight: bold;
        border-bottom: 1px solid #999999;
    }
    
    table.application-form span.required{
        color: #d00;
    }
    
    table.application-form td.padded-top{
        padding-top: 52px;
    }
    
    table.application-form td.label, table.application-form td.field{
        padding-bottom: 6px;
        padding-top: 9px;
    }

    table.application-form td.intro, table.application-form td.required{
        padding-bottom: 12px;
        padding-top: 10px;
    }

    table.application-form td.label{
        width: 150px;
    }
    
    table.application-form td.field{
        padding-left: 10px;
        width: 485px;
    }
    
    table.application-form td.wide{
        padding-left: 0px;
    }
    
        table.application-form td.field td.checkbox{
            padding-bottom: 4px;
        }
    
        table.application-form td.field td.radio{
            padding-top: 0px;
        }
    
        table.application-form td.field td.radio-answer{
            padding-top: 4px;
            padding-bottom: 10px;
            white-space: normal;            
        }
    
        table.application-form td.field td.radio{
            line-height: 10px;
        }
    
        table.application-form td.field input.inputForm{
            width: 390px;
            border: 1px solid #666;
            padding: 2px;
            height: 13px;
            margin: 0;
        }
        
        table.application-form td.number input.inputForm{
            width: 70px;
        }
    
        table.application-form td.field select.selectForm{
            width: 230px;
            border: 1px solid #666;
            padding: 0;
            margin: 0;
            font-size: 8pt;
        }
    
        table.application-form td.field textarea.textareaForm{
            width: 550px;
            height: 88px;
            border: 1px solid #666;
            padding: 0;
            margin: 0;
        }
    
    table.application-form td.ecommerce{
        padding-left: 35px;
        padding-right: 0px;
    }
    
    table.application-form td.submit{
        padding-top: 45px;
        text-align: right;
    }

