html, body {margin: 0; padding: 0; border: 0;}

body {
background: url(../img/back-green.gif);
color: #222;
font-family: "Trebuchet MS", georgia, "times new roman", sans-serif;
font-size: 90%;
text-align: center;
margin: 30px 0;
}

p  {margin: 6px 0; padding: 0 6px;}

h2 {font-size: 1.4em; text-align: center; padding: 10px 0; margin: 0; background: #f8f8f8;}

h3 {font-size: 1.2em; margin: 20px 10px 5px;}

h4 { font-size: 1em; margin: 10px 10px 5px; }

.clear { clear: both; }

a {text-decoration: underline; color: #000;}

.alignright {margin-top: 0; text-align: right; clear: both;}

.small {font-size: .9em;}

.wide {
width: 100%;
}

.wide p {margin: 0; padding: 5px; position: relative;}

.top {height: 250px;
background: white url(../img/flash.jpg) 0 6px no-repeat;
}

zz.top a {position: absolute; right: 20px; text-align: right; font-weight: bold; font-size: .7em; color: #fff;}

.bottom {border-top: 1px solid #ccc; position: relative; background-color: #fff;}

.testfloat {width: 50px; border: 2px solid #f90; background: #ffd; font-size: .7em;}

.to-right {float: right;}

.to-left {float: left;}

.ap-test {
position: absolute;
top: -102px;
font-size: .6em;
width: 150px;
height: 100px;
border-top: 1px solid #000;
background: #5b5;
color: yellow;
}

/* \*/
* html .ap-test {
top: -101px;
t\op: -102px;
}
/* */

.ap-left {left: 0;}

.ap-right {right: 0;}


/*XXXXXXXXXXXXXXXXX Primary layout rules XXXXXXXXXXXXXXXX*/

/********************************************************************************
To adjust the side col widths, or the vertical col dividers, a certain set of values must be changed
all at the same time and by exact amounts or problems will result. Each of these group's member values
have been marked off with comments that start with "Critical...". For example, if the left col width needs
to be changed then all the values marked "Critical left col dimension value" MUST have their pixel values
altered by the same amount. Certain of these left col width values are marked "(moves inversly)", and
these get changed by the same pixel amount but inversly to the other values. So if margin-left on .outer
is increased by 10px, then the width of .outer must decrease by 10px, and so on.

To change the width of the entire layout, .wrapper, .outer, .float-wrap, and .center all get changed together,
and only after that is it safe to change col or divider widths. Remember, even one small mistake will degrade or
even break the layout, so be very careful! it's possible to "loosen" the layout so small errors aren't so messy,
but then it becomes hard to finely control text spacing.

For spacing within the cols, it's best to apply margins on content elements inserted into the cols,
because padding directly on those col elements will change their widths, breaking the layout. 

Certain hiding hacks have been used extensively in this layout, so here is a quick explaination of them.

The Tan hack:

* html .anyelement {rules read only by IE/Win and IE/Mac}

The Mac-hack:  (first the active comment you are reading now must be closed...) */

/* \*/

/* */

/*...Back in comment mode now. Anything between those two comment lines will be hidden from
IE/Mac. Don't use any comments within this hack or it will close prematurely and IE/Mac will begin
reading before it should.

The above two hacks are combined so as to feed rules only to IE/Win. Proper use of backslash escape
characters inside property names used in the Holly hack can further segregate rules to be read by only
IE6 from rules for IE5.x/Win.

These hiding hacks, along with several other fixes, make possible this formerly impossible layout.
It is highly unlikely that new browsers will have any problem with these valid hiding hacks, and
Microsoft does not plan any browser changes soon that would alter the proper operation of the layout.
********************************************************************************/


.wrapper {
margin: 0 auto;
width: 780px;
text-align: left;
background-color: white;
background: white url(../img/borders.png) top left repeat-y;
padding:0 10px;

}

.wrapper-topborder {
 margin: 0 auto;
 width: 800px;
 background: transparent url(../img/border-top.png) top left no-repeat;
 padding-top: 8px;
}

.wrapper-bottomborder {
 margin: 0 auto;
 width: 800px;
 background: transparent url(../img/border-bottom.png) bottom left no-repeat;
 padding-bottom: 4px;
}



* html .wrapper {   /*** IE5.x/win box model fix ***/
width: 800px;
wid\th: 780px;
}

.outer {
position: relative; /*** IE needs this or the contents won't show outside the parent container. ***/
margin-left: 150px;    /*** Critical left col dimension value ***/
width: 478px;   /*** Critical left and right col/divider dimension value (moves inversly) ***/
background: #fff;  /*** Sets background of center col***/
border-left: 1px dotted #ccc;   /*** Critical left divider dimension value ***/
border-right: 1px dotted #ccc;   /*** Critical right divider dimension value ***/
}

* html .outer {   /*** IE5.x/win box model fix ***/
width: 480px;   /*** Critical left and right col/divider dimension value (moves inversly) ***/
wid\th: 478px;   /*** Critical left and right col/divider dimension value (moves inversly) ***/
}

.float-wrap {
float: left;
width: 478px;   /*** Critical left and right col/divider dimension value (moves inversly) ***/
margin-right: -1px;   /*** Static fix ***/
}

.center {
float: right;
padding-bottom: 15px;
width: 478px;   /*** Critical left and right col/divider dimension value (moves inversly) ***/
margin-bottom: -1px;   /*** Fixes a variance in IE/win for the green AP bottom boxes ***/
/* \*/
margin-left: -1px;
/* Hidden from IE-mac */
}

.left {
float:left;
position: relative; /*** IE needs this or the contents won't show outside the parent container. ***/
width: 152px;    /*** Critical left col/divider dimension value ***/
margin-left: -151px;    /*** Critical left col/divider dimension value ***/
}

*>html .left {width:151px;}   /*** Fix only for IE/Mac ***/

.container-left {
width: 150px;    /*** Critical left col dimension value ***/
/*padding-bottom: 110px;   *//*** To keep content from going underneath the AP bottom boxes ***/
}

.right {
float: left;
position: relative; /*** IE needs this or the contents won't show outside the parent container. ***/
width: 152px;    /*** Critical right col/divider dimension value ***/
margin-right: -150px;    /*** Critical right col/divider dimension value ***/
margin-left: -1px;   /*** Static fix ***/
}

/* \*/
* html .right {
margin-left: 0px;
margin-right: -500px;
mar\gin-right: -152px;
}
/* */

/*** These commented-out rules below are there to explain the "Critical" info
	for the rules above, because comments must not appear within the Mac-hack.
	The "rules" below are not active, they are just for teaching purposes. ***/

/*
* html .right {
margin-left: 0px;    *** Critical right divider dimension value ***
margin-right: -500px;    *** IE5.x/win fix, must be above a critical number, but very high values appear okay ***
mar\gin-right: -152px;    *** Critical right col/divider dimension value ***
}
*/


.container-right {
/* \*/width: 150px;/* Hidden from IE-Mac */   /*** Critical right col dimension value ***/
margin-left: 3px;    /*** Critical right divider dimension value ***/
padding-bottom: 30px;   /*** To keep content from going underneath the AP bottom boxes ***/
}

/* \*/
* html .container-right {
fl\oat: right;
margin-left: 2px;
mar\gin-left: 0px;
}
/*** Static fixes ***/

/*** Below is the Holly hack, and if IE/Win shows bugs it's a good idea to apply this hack to
	different elements and see if that fixes the problem. Sometimes it may be necessary
	to use "position: relative;" on certain elements, but it's hard to tell in advance which
	elements will need such fixes. Here it prevents IE5/Win from clipping the left ends
	of the headings. ***/
/* \*/
* html h2 {height: 1%;}
/* */


/*** This is a fix for IE5/Win at the largest text size setting. ***/
/* \*/
* html .left {margin-right: -3px;}
/* */


.italics-test, .italics-test-side {
font-style: italic;
text-align: justify;
background: #ccd;
border: 1px solid red;
}

/*** All the IE fixes that are inside seperate "Mac-hacks" may be grouped 	within
	just one Mac-hack for convenience if desired. However, each fix must come
	later than the rule it is fixing or the fix itself will be overridden. ***/


.top h1 {
    text-align: right;
    margin: 0;
    padding: 0 10px 0 0;
    font-size: 1.6em;
    font-weight: bold;
}


#navcontainer
{
/* old rules- when #navcontainer was below div class "wide top"
    margin-bottom: -25px;
    top: -25px;
*/

margin-left: 2px;
padding: 0;
height: 25px;
position: relative;
border-left: 1px solid #ccc;
top: 225px;
}

#navcontainer ul
{
border: 0;
margin: 0;
padding: 0;
list-style-type: none;
text-align: center;
}

#navcontainer ul li
{
display: block;
float: left;
text-align: center;
padding: 0;
margin: 0;
}

#navcontainer ul li a
{
width: 154px;
height: 23px;
border-top: 1px solid #9AD194;
border-bottom: 1px solid #9AD194;
border-right: 1px solid #9AD194;
padding: 0;
color: #A8E4A1;
text-decoration: none;
display: block;
text-align: center;
font: bold 12px/18px "Lucida Grande", "Lucida Sans Unicode", verdana, lucida, sans-serif;
}

* html #navcontainer ul li a { /* tan hack */
    height: 25px;
    width: 155px;
    he\ight: 23px;
    w\idth: 154px;

}

#navcontainer ul li a:hover
{
background-image:url(../img/backNavHover.png);
background-repeat: repeat;
background-color: transparent;
color: #000;
}

#navcontainer a:active
{
color: #fff;
background-color: #476144;
}

#navcontainer li a#active
{
background-color: #476144;
color: #fff;
}

#navleft
{
margin-top: 10px;
font-family: "Trebuchet MS", Verdana, Lucida, Geneva, Helvetica, Arial, sans-serif;
font-size: 11px;
font-weight: normal;
color: #333;
}

#navleft h1 {
    margin: 10px 0 5px;
    padding-left: 10px;
    font-size: 11px;
    font-weight: bold;
    color:#2A5379;
}
#navleft ul
{
list-style: none;
margin: 0;
padding: 0;
border: none;
}

#navleft li
{
margin: 0;
padding: 0;
list-style: none;
}

#navleft li a
{
display: block;
padding: 3px 0 3px 25px;
color: #333;
text-decoration: none;
font-weight: normal;
width: 125px;
margin: 0;
}

* html #navleft li a {   /*** IE5.x/win box model fix ***/
width: 150px;
wid\th: 125px;
}


html>body #navleft li a { width: auto; }

#navleft li a:hover
{
border-left: 20px solid #2A5379;
padding: 3px 0 3px 5px;
background-color: #CFE6F1;
}

#navleft li .active {
    font-weight: bold;
    border-left: 20px solid #CFE6F1;
    padding: 3px 0 3px 5px;
}


.project_image {
text-align: center;
margin-bottom: 20px;
}

.project_image a {
    display: block;
    width: 130px;
    border: 1px solid #fff;
    margin: 0 auto;
}

.project_image img {
 display: block;
 margin: 0 auto;
}

img {
    border:none;
}

.project_image a:hover {
    border: 1px solid #ccc;
}


.project_image span {
   font-size: 10px;
}

.project_info {
    margin: 5px 0 5px 5px;
    font-size: 11px;
}

.project_info a {
    font-weight: normal;
    text-decoration: none;
}

.project_info a:hover {
    text-decoration: underline;
}

.project_info h3 {
    display: block;
    font-weight: normal;
    font-size:11px;
    padding: 0;
    margin: 0 0 5px 1em;
    color: #666;
}

#gallery_placeholder {
text-align: center;
padding: 10px 0;
margin-top: 10px;
border-top: 1px dotted #ccc;
border-bottom: 1px dotted #ccc;
display: none;
}

#gallery_placeholder p {
    font-size: 12px;
    font-weight: bold;
}
.project_description {
    padding: 0 5px;
    margin-bottom: 15px;
}

.project_description p {
    padding-left: 0;
}

.bottom img {
    display: block;
    float: right;
    margin: 4px 10px;
}

.bottom span {
    font-size: 10px;
}

a {
    color: #3B6A99;
    text-decoration:none;
}

a:hover {
    text-decoration: underline;
}


.portfolio_intro .project_image {
float: right;
width: 132px;
text-align: right;
margin-right: 10px;
margin-bottom: 0;
}

.portfolio_intro h3 { clear: right;}

abbr {
  cursor: help;
}

.my_description dl {
}
.my_description dt {
    font-weight: bold;
    padding-left: 5px;
}

.my_description dl.float dt {
    float: left;
    clear: left;
    width: 30%;
}

.my_description dl.float dd {
    width: 60%;
    margin-bottom: 3px;
}

.my_description dd {
    padding-bottom: 15px;
    width: 90%;
}

.bookmarks {
    font-size: 11px;
}
.bookmarks ul {
    list-style-type: none;
    margin: 0;
    padding: 0 0 10px 13px;
}

.bookmarks li {
    border-left: 1px solid #ccc;
    padding-left: 5px;
}

.bookmarks h3 {
    margin-top: 0;
    margin-bottom: 0;
    padding-bottom: 3px;
    font-size:14px;
}

.bookmarks hr {
    width: 30%;
    color: #ccc;
    background-color: #ccc;
    border: none;
    margin-left: 0;

}

a.new_bookmark {
    font-weight: bold;
}

form#searchForm fieldset {
    border: solid 0;
    border-color:  transparent;
}

form#searchForm img {
    margin-left: 5px;
}


form#searchForm label {
    font-size: 11px;
    font-weight: bold;
    display: block;

}

.illustration {
    display: block;
    margin: 8px auto;
    text-align: center;
    font-weight: bold;
}

.illustration span {
    display: block;
    margin: 10px 0;
}

ul.newest_links {
    padding: 0;
    margin: 0;
    list-style-type:none;
}

ul.newest_links li {
    padding: 0 0 5px 5px;
    color: #666;
}

.project_download {
    font-size: 11px;
    margin: 5px 0 5px 5px;
}

.project_download div {
    margin-bottom: 5px;
}

.project_download img {
   vertical-align: middle;
}

pre {
    width: 455px;
    overflow: auto;
    padding: 5px;
    background-color: #EFF5F7;
    font-size: 11px;
}

* html pre { /* tan hack */
    width: 465px;
    w\idth: 455px;
}

small {
font-size: 75%;
}

