/* the methods on this page are largely the hard work (freely given) of many people from the css-discuss list [http://www.css-discuss.org], including (but not limited to) Big John, Holly Bergevin, Douglas Livingstone, Scott Sauyet, Victor Caston, Mike Papageorge, and me, Alex Robinson [css-stuff@alex.cloudband.com] */

/* ====================================================================
GENERAL STYLING
-------------------------------------------------------------------- */
/* border:nones are for NN4 */
html { 
min-width: 600px;
margin: 0px; 
padding: 0px; 
}

body {
margin: 5px 10px 10px 10px;
padding: 0px;
color: #000;
background: #fff;
font: .8em/1.35em verdana, helvetica, arial, sans-serif;
}

a:link {
color: #003cff;
background: transparent;
text-decoration: underline;
}

a:visited {
color: #003cff;
background: transparent;
text-decoration: none;
}

a:hover {
color: #000;
background: transparent;
text-decoration: none;
}

h1, h2, h3 {
margin: 0;
padding: 0 0 .25em 0;
color: #666;
background: transparent;
}

h1 {
font-size: 1.25em;
font-weight: lighter;
margin: 0;
padding: 0 0 .125em 0;
}

h2 {
font-size: 1.15em;
text-transform: uppercase;
}

h3 {
font-size: 1.0em;
}

p {
margin: 0;
padding: 0 0 1.0em 0; 
}

img {
border: 0;
}

table {
width: 100%;
}

th {
margin: 0;
padding: .25em;
vertical-align: bottom;
}

td {
margin: 0;
padding: .25em;
vertical-align: top;
}

sup {
font-size: .8em;
vertical-align: 25%;
}

sub {
font-size: .8em;
vertical-align: -15%;
}

.broken {
color: #000;
background: orange;
font-weight: bold;
}

.clear {
clear: both;
}

.clear-l {
clear: left;
}

.clear-r {
clear: right;
}

/* IE-Win hack to keep list background images from disappearing */
ul, ul.bullets, ol, dl {
position: relative; 
}

/* Opera hack: to keep the list item prior to the li.current from inheriting the font-weight of bold. */
html > body ul, html > body ol, html > body dl {
position: inherit; 
}


/* ====================================================================
WRAPPERS
-------------------------------------------------------------------- */

div { 
margin: 0px; 
padding: 0px; 
}

.divclear { 
clear: both;
} /* CSS HACK: only for NN4, so now use Caio hack to cleanse palette */

/*/*/ .divclear { display: none; } /* */

/* box-wrap is only needed if you want to set a background color for the columns, put a border round the content block or fix the content width */

.box-wrap {
margin: 0 auto;
padding: 10px;
color : #000;
background: #fff;
width: 835px;
border-top: 1px solid #b2b2b2; /*** Sets the external top side border. ***/
border-right: 2px outset #b2b2b2; /*** Sets the external right side border. ***/
border-bottom: 2px outset #b2b2b2; /*** Sets the external bottom border. ***/
border-left: 1px solid #b2b2b2; /*** Sets the external left side border. ***/
}

.box-inner-wrap {
border: 0;
margin: 0;
padding: 0;
color: #000;
background: #dcdcdc;
}

/* ====================================================================
CRUMBTRAIL
-------------------------------------------------------------------- */

.box-crumbtrail {
width: 835px;
color: #000;
background: #fff;
margin: 0 auto;
padding: 0;
font-size: .8em;
}

.box-crumbtrail a {
text-decoration: none;
}

.units {
float: right;
width: 225px;
margin: 0 0 0 10px;
padding: 0;
text-align: right;
}

/* ====================================================================
COLUMNS LAYOUT
-------------------------------------------------------------------- */

.main-wrap {
float: left;
width: 100%;
margin: 0 0 5px 0;
padding: 0;
color: #000;
background: transparent url(../images/lower-header-bg.jpg) 0 0 repeat-x;
}

.main-wrap-noleft {
float: left;
width: 100%;
margin: 0;
padding: 0;
color: #000;
background: #fff;
}

.main {
float: right;
width: 655px;
margin: 0;
padding: 0 0 5px 0;
}

.main-home {
float: left;
width: 658px;
margin: 0;
padding: 0;
border-left: none;
border-right: 1px solid #b2b2b2;
}

.left-nav {
float: left;
width: 175px;
margin: 0 0 5px 0;
padding: 30px 3px 0 0;
color: #000;
background: #dcdcdc url(../images/lower-nav-bg.jpg) 0 0 repeat-x;
}

.right-col {
float: right;
width: 167px;
margin: 0;
padding: 0;
color: #000;
background: #fff;
}

/* CSS HACK: position:relative needed by IE6 otherwise the header and col 2 don't show up on initial rendering - they're there but you have to minimise the window or switch to another app and back to see the full effect. But IE5(pc) doesn't like it. And nor does NN4.
NB. the use of pos:rel has to go way beyond skin-deep - any nested element that needs a background colour appears to require to be be relatively positioned */ 

/*/*/
.main-wrap, .main-wrap-noleft, .main, .main-home, .right-col { 
p\osition: relative; 
}
/* */


/* ====================================================================
HEADER and HEADER-HOME
-------------------------------------------------------------------- */

.header {
width: 655px;
margin: 0;
padding: 0;
}

.header-home {
width: 100%;
height: 300px;
margin: 0;
padding: 0;
color: #000;
background: transparent url(../images/home-header-bg.jpg) 0 0 repeat-x;
}

.header-home a:link, .left-nav-content a:link {
color: #940f0f;
background: transparent;
text-decoration: none;
}

.header-home a:visited, .left-nav-content a:visited {
color: #940f0f;
background: transparent;
text-decoration: none;
}

.header-home a:hover, .left-nav-content a:hover {
color: #000;
background: transparent;
text-decoration: none;
}

.header-home img, .left-nav-content img {
margin: 10px 0 10px 10px;
padding: 0;
}

.header-home .float-r {
float: right;
width: 543px;
margin: 0;
padding: 0;
}

.header .l265 {
float: left;
width: 265px;
margin: 10px 0 0 -170px;
padding: 0;
}

.header .r333 {
float: right;
width: 333px;
margin: 0;
padding: 0;
}

.header .r655 {
float: right;
width: 655px;
margin: 0;
padding: 0;
color: #fff;
background: #666;
}

.header .r655 img {
float: right;
width: 557px;
}

.header h1, .header-home h1 {
margin: 0;
padding: 0 0 .5em 0;
font-size: 1.35em;
font-weight: lighter;
}

.header-home h1, .header h1 {
display: none;
}

.header h2, .header-home h2 {
margin: 7px 0 0 7px;
padding: 7px 0 5px 0;
color: #940f0f;
background: transparent;
font-size: 0.9em;
text-transform: none;
}

/* ====================================================================
NAVIGATION - HOME PAGE only
-------------------------------------------------------------------- */

.header-home ul {
list-style-type: none;
margin: 5px 0 15px 10px;
padding: 0;
font: .8em/1.5em verdana, helvetica, arial, sans-serif;
text-transform: uppercase;
}

.header-home ul.expanding-nav {
list-style-type: none;
margin: 0 0 10px 10px;
padding: 0;
text-transform: none;
font: .8em/1.25em verdana, helvetica, arial, sans-serif;
}

.header-home ul.expanding-nav li {
margin: 0;
padding: 0 0 1.0em 0;
}

.header-home a.current {
color: #000;
background: transparent;
}

/* ====================================================================
NAVIGATION - ALL OTHER PAGES 
-------------------------------------------------------------------- */

.left-nav-content ul {
list-style-type: none;
margin: 6px 0 7px 10px;
padding: 0;
font: .8em/1.3em verdana, helvetica, arial, sans-serif;
text-transform: uppercase;
}

.left-nav-content ul.static {
list-style-type: none;
margin: 6px 0 7px 10px;
padding: 0;
font: .8em/1.3em verdana, helvetica, arial, sans-serif;
text-transform: uppercase;
}

.left-nav-content a.current {
color: #000;
background: #dcdcdc;
}

/*Control DIV for expand all and collapse all links*/
#p7TMctrl {
margin: 0 0 0 10px;
padding: .1em .0;
font-size: 0.8em;
display: none;
/*/*/display: block; /* Hide from NN4*/
}

#p7TMctrl p {
margin: 0;
padding: 0;
}

#p7TMctrl a:link, #p7TMctrl a:visited {
color: #940f0f;
background: #dcdcdc;
text-decoration: none;
}

#p7TMctrl a:hover {
color: #000;
background: #dcdcdc;
text-decoration: none;
}

/* DIV for all links*/

#sondraRocksNav {
margin: 0;
padding-top: 2px;
font: .8em/1.25em verdana, helvetica, arial, sans-serif;
}

#sondraRocksNav div {
margin: 0 0 0 10px;
padding: 5px 0 2px 0;
font-weight: bold;
letter-spacing: 0.05em;
}

#sondraRocksNav div.non-topic {
font-weight: normal;
}

#sondraRocksNav div a {
display: block;
margin: 0;
padding: 1px 0;
color: #940f0f;
background: #dcdcdc;
text-decoration: none;
line-height: 1.25em;
}

#sondraRocksNav div a:hover {
color: #000;
}

#sondraRocksNav div div {
margin: 0 0 0 10px;
padding: 0;
font-weight: normal;
line-height: 1.25;
}

#sondraRocksNav div div a {
display: block;
margin: 0;
padding: 5px 0 5px 9px;
border: 0;
color: #000;
background: url(../images/lower-nav-square.gif) 0 9px no-repeat;
}

#sondraRocksNav div div div, #sondraRocksNav div div div div {
margin: 0 0 0 8px;
padding: 0;
color: #000;
}

#sondraRocksNav div div div a {
display: block;
margin: 0;
padding: 2px 0 3px 8px;
color: #000;
background: url(../images/lower-nav-bullet.png) 0 8px no-repeat;
line-height: 1.25em;
}

#sondraRocksNav div div div div a {
display: block;
margin: 0;
padding: 2px 0 3px 8px;
color: #000;
background: url(../images/lower-nav-dash.png) 0 8px no-repeat;
line-height: 1.25em;
}

#sondraRocksNav div div a:link, #sondraRocksNav div div a:visited,
#sondraRocksNav div div div a:link, #sondraRocksNav div div div a:visited,
#sondraRocksNav div div div div a:link, #sondraRocksNav div div div div a:visited {
color: #940f0f;
}

#sondraRocksNav div div a:hover, 
#sondraRocksNav div div div a:hover, 
#sondraRocksNav div div div div a:hover {
color: #000;
}

/* ====================================================================
MAIN CONTENT TOP PAGE
-------------------------------------------------------------------- */
.main-content { 
margin: 0;
padding: 5px 0 50px 7px;
color: #000;
background: #fff;
}

.icons {
z-index: 1000;
float: right;
width: 100px;
margin: -29px 5px 0 5px;
padding: 0;
text-align: right;
font-size: .8em;
}

.main-content blockquote {
margin: 5px 20px 10px 20px;
padding: 0;
}

.main-content ul {
margin: 0 0 .5em 3.0em;
padding: 0;
}

.main-content ul li {
line-height: 1.5em;
}

.main-content dl {
margin: 0;
padding: 0;
}

.main-content dl dt {
font-weight: bold;
}

.main-content dl dd {
padding-bottom: .5em;
line-height: 1.5em;
}

.main-content .center {
margin: 0 auto;
padding: 0;
width: 90%;
text-align: center;
}

.main-content .center .float-l {
float: left;
width: 45%;
margin-bottom: 4em;
}

.main-content .center .float-r {
float: right;
width: 45%;
margin-bottom: 10px;
}

.main-content .left {
text-align: left;
}

.main-content p.placeholder {
margin: 0 0 5em 0;
padding: 0;
}

.footnote, .top {
margin: 0;
padding: 0 0 .5em 0;
font-size: .8em;
}

/* ====================================================================
												Home page formatting
-------------------------------------------------------------------- */

table.reviews {
margin: 0;
padding: 0;
width: 99%;
}

table.reviews td {
margin: 0;
padding: .5em .5em 0 .5em ;
}

table.reviews td.detailed, table.reviews td.detailed h3 {
color: #015353;
background: #faf2dc;
}

table.reviews td.brief {
color: #5a3d1c;
background: #e6faff;
width: 37%;
}

table.reviews td.brief h3 {
color: #5a3d1c;
background: #e6faff;
}

/* ====================================================================
													Image formatting
-------------------------------------------------------------------- */
.img-caption {
position: relative;
margin: 0;
padding: 0 1.0em .5em 0;
text-align: center;
}

.img-caption p {
margin: 0;
padding: .5em 2.0em;
font-size: .9em;
line-height: 1.5em;
text-align: left;
}

p.equation img {
margin: 0;
padding: 0 10px 0 0;
vertical-align: bottom;
}


.l45, .l75, .l100, .l110, .l125, .l130, .l150, .l175, 
.l200, .l215, .l220, .l225, .r235, .l250, .l255, .l275, 
.l300, .l325, .l330, .l350, .l375, 
.l400, .l425, .l450,
.l500, .l525, .l555, .l575, 
.l600, .l625 {
margin: 0 15px 5px 0;
padding: 0;
}

.r45, .r75, .r100, .r110, .r125, .r130, .r150, .r175, 
.r200, .r215, .r220, .r225, .r235, .r250, .r255, .r275, 
.r300, .r325, .r350, .r375, 
.r400, .r425, .r450,
.r500, .r525, .r575,
.r600, .r625 {
margin: 0 0 5px 5px;
padding: 0;
}

.r45 {
float: right;
width: 45px;
}

.l130 {
float: left;
width: 130px;
}

.r130 {
float: right;
width: 130px;
}

.l150 {
float: left;
width: 150px;
}

.r150 {
float: right;
width: 150px;
}

.l175 {
float: left;
width: 175px;
}

.r175 {
float: right;
width: 175px;
}

.l200 {
float: left;
width: 200px;
}

.r200 {
float: right;
width: 200px;
}

.l215 {
float: left;
width: 215px;
}

.r215 {
float: right;
width: 215px;
}

.l225 {
float: left;
width: 225px;
}

.r225 {
float: right;
width: 225px;
}

.l250 {
float: left;
width: 250px;
}

.r250 {
float: right;
width: 250px;
}

.l255 {
float: left;
width: 255px;
}

.r255 {
float: right;
width: 255px;
}

.l275 {
float: left;
width: 275px;
}

.r275 {
float: right;
width: 275px;
}

.l300 {
float: left;
width: 300px;
}

.r300 {
float: right;
width: 300px;
}

.r400 {
float: right;
width: 400px;
}

.c400 {
margin: 15px auto;
padding: 0;
text-align: center;
}



/* ====================================================================
													Table formatting
-------------------------------------------------------------------- */

.table-caption p {
margin: 0;
padding: .5em 0;
font-size: .9em;
line-height: 1.5em;
text-align: left;
}

.content table {
position: relative;
margin-bottom: 1.0em;
padding: 0;
width: 100%;
line-height: 1.2em;
}

.content table td {
margin: 0;
padding: .25em;
vertical-align: top;
}

.numeric {
text-align: center;
}

.align-left {
text-align: left;
}

.downloads tr td {
margin: 0;
padding: 3px 0;
text-align: left;
border-bottom: 1px solid #666;
}

.border td, .border th {
border-top: 1px solid #000;
border-left: 1px solid #000;
}

.border td.last-col, .border th.last-col {
border-right: 1px solid #000;
}

.border tr.last-row td {
border-bottom: 1px solid #000;
}

.border td.last-row {
border-bottom: 1px solid #000;
}

.border tr.no-top-border td {
border-top: none;
}

.w13 {
width: 13%;
}

.w15 {
width: 15%;
}

/* ====================================================================
RIGHT COLUMN
-------------------------------------------------------------------- */
.right-col img {
margin: 10px 0 10px 0;
padding: 0;
}

/* ====================================================================
FOOTER
-------------------------------------------------------------------- */

/* Needed to keep .main-wrap-no-left and .right-col within .box-inner-wrap */

.wrapper-clear {
margin: 0;
padding: 0;
font: .6em/.6em verdana, helvetica, arial, sans-serif;
color: #000;
background: #fff;
}

/* Actual footer */

.footer {
margin: 0 auto;
padding: 10px 0 0 0;
width: 835px;
font: .8em/1.5em verdana, helvetica, arial, sans-serif;
color: #000;
background: #fff;
text-align: left;
}

.footer p.comment {
margin: 0;
padding: 0 0 0 22px;
color: #000;
background: #fff url(../images/comment-icon.gif) 0 0 no-repeat;
}

.footer .highlight {
color: #666;
background: transparent;
text-transform: uppercase;
}

.footer .footer-right {
float: right;
width: 300px;
margin: 0;
padding: 0;
text-align: center;
}

.footer ul.print {
display: none;
}


