/******************************
 *                            *
 * Overall layout of the page *
 *                            *
 ******************************/

body {
    font-size: 90%;
    font-family: sans-serif;
    margin: 0;
    padding: 0;
    text-align: justify;
    background-image: none;
}

div {
    margin: 0;
    padding: 0;
    border: 0;
    overflow: hidden;
}

/******************************
 *                            *
 * Mobile proportionality fix *
 *                            *
 ******************************/

body {
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

/*************************
 *                       *
 * Layout of the top bar *
 *                       *
 *************************/

div.topbar {
    border-bottom-width: 2px;
    border-bottom-style: solid;
}

div.top {
    font-size: 1.11em;
    padding: 0.5em 0.65em 0.25em;
    border-bottom-width: 3px;
    border-bottom-style: solid;
}

div.top h1 {
    font-family: serif;
    font-weight: normal;
    margin: 0;
    padding: 0;
    letter-spacing: 0.10em;
    text-align: left;
}

/*******************************************
 *                                         *
 * General layout of the main content area *
 *                                         *
 *******************************************/

div.mainbar {
    float: right;
    width: 75%;
    background: transparent;
}

div.main {
    margin: 1em;
    padding: 1em 1.5em 0;
    line-height: 1.33em;
    border-width: 1px;
    border-style: solid;
}

div.main h2 {
    font-size: 1.2em;
    margin: 0 0 1em;
    font-weight: bold;
    text-align: center;
}

div.main h3, div.main h4, div.main h5, div.main h6 {
    font-size: 1.1em;
    font-weight: bold;
    margin: 0 0 1em;
    text-align: left;
}

div.main p {
    margin: 0 0 1em;
    padding: 0;
}

/**********************************
 *                                *
 * Lists in the main content area *
 *                                *
 **********************************/

div.main ul, div.main ol {
    margin: 0 0 1em;
    padding: 0 0 0 2.5em;
}

div.main ul li, div.main ol li {
    margin: 0 0 0.75em;
}

div.main ul li {
    list-style-type: disc;
}

div.main ol li {
    list-style-type: decimal;
}

div.main ul li ul {
    margin: 0;
    padding: 0 0 0 2.6em;
}

div.main ul li ul li {
    font-size: 0.85em;
    margin: 0;
    padding: 0.1em 0 0;
    list-style-type: disc;
}

div.main ul.degreelist {
    padding: 0 1em;
}

div.main ul.degreelist li {
    margin: 0 0 0.25em;
}

/***********************************
 *                                 *
 * Tables in the main content area *
 *                                 *
 ***********************************/

div.main table {
    margin: 0 0 1em;
    width: 100%;
    border-width: 1px;
    border-style: solid;
}

div.main td, div.main th {
    padding: 5px;
    border-width: 1px;
    border-style: solid;
}

div.main td {
    text-align: left;
}

div.main th {
    text-align: center;
}

/***********************************
 *                                 *
 * Images in the main content area *
 *                                 *
 ***********************************/

div.image {
    font-size: 0.8em;
    font-style: italic;
    margin: 0.2em;
    text-align: center;
    line-height: 1em;
}

div.caption {
    padding: 0 0 1em;
}

div.image img {
    border: 0;
}

/************************************
 *                                  *
 * General layout of the side boxes *
 *                                  *
 ************************************/

div.sidebar {
    width: 25%;
    background: transparent;
}

div.sidebar div {
    margin: 1em 0 1em 1em;
    border-width: 1px;
    border-style: solid;
}

div.sidebar h2 {
    font-size: 1.22em;
    margin: 0;
    padding: 0.2em;
    font-weight: normal;
    text-align: left;
    letter-spacing: 0.05em;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

div.sidebar p {
    font-size: 0.9em;
    margin: 0;
    padding: 0.66em;
    line-height: 1.33em;
}

/**********************************
 *                                *
 * Navigation-bar specific layout *
 *                                *
 **********************************/

div.navigation ul {
    padding: 0;
    margin: 0;
    width: 100%;
    list-style-type: none;
}

div.navigation ul li {
    font-weight: 600;
    margin: 0;
    padding: 0;
    letter-spacing: 1px;
    text-align: right;
    border-top-width: 1px;
    border-top-style: solid;
}

div.navigation ul > li:first-child {
    border-top: 0;
}

div.navigation span.currentpage, div.navigation a {
    margin: 0;
    padding: 0.45em 0.33em;
    border: 0;
    background: transparent;
    text-decoration: none;
    display: block;
}