/* Reset and basic layout omitted for brevity (keep your previous reset) */

body {
   line-height: 1;
   width: 960px;
   margin: 0 auto;
   font-family: Verdana, Geneva, sans-serif;
}

header {
   background: #5472B2;
   color: #fff;
   font-size: 48px;
   text-align: center;
   line-height: 1.5em;
   padding: 10px 0;
}

#main-container {
   position: relative;
   width: 960px;
   height: 660px;
}

/* Aside / TOC */
aside {
   width: 300px;
   height: 100%;
   position: absolute;
   top: 0;
   left: 0;
   background: #FFDB70;
   overflow: auto;
   padding: 10px;
}

aside h2 {
   text-align: center;
   font-size: 24px;
   margin-bottom: 10px;
}

aside ul#toc {
   line-height: 1.5;
   font-size: 0.9em;
}

aside ul#toc a {
   text-decoration: none;
   color: #4B4B4B;
}

aside ul#toc a:hover {
   text-decoration: underline;
}

/* Source document */
article#source_doc {
   width: 620px;
   height: 620px;
   position: absolute;
   top: 0;
   left: 320px;
   padding: 15px;
   overflow: auto;
   background: papayawhip;
   font-family: Baskerville, "Palatino Linotype", Palatino, "Times New Roman", serif;
}

article#source_doc h1 {
   font-size: 1.8em;
   font-weight: bold;
   margin-bottom: 20px;
}

article#source_doc h2 {
   font-size: 1.3em;
   font-weight: bold;
   margin-top: 15px;
   margin-bottom: 10px;
}

article#source_doc p {
   line-height: 1.4;
   margin-bottom: 10px;
}
