/*

fritzhorstman.com
Design, XHTML, CSS, and Javascript copyright 2007 Chris Boone, Hypsometry (info@hypsometry.com).
All other content copyright 2007 Fritz Horstman.

*/


/* Reset all elements' default styles. Following Eric Meyer. */

html, body, div, span,
applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dd, dl, dt, li, ol, ul,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td
{
	margin: 0;
	padding: 0;
	
	border: 0;
	
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	line-height: 1.1;
	font-family: inherit;
	text-align: left;
	vertical-align: baseline;
}

a img, :link img, :visited img
{
	border: 0;
}

table
{
	border-collapse: collapse;
	border-spacing: 0;
}

ol, ul
{
	list-style: none;
}

q:before, q:after,
blockquote:before, blockquote:after
{
	content: "";
}


/* Everything */

body
{
  color: #793b00;
  background: #f3fdfd;
  
  font-family: 'Gill Sans', 'Verdana', 'Helvetica', sans-serif;
  font-size: small;
  line-height: 1;
}


/* Generic styles */

.clear
{
  display: block;
  
  clear: both;
}


/* Links */

a
{
  color: #801500;
  
  border-bottom: 1px solid #eee;
  
  text-decoration: none;
}

a.image,
#lightbox a
{
  border: 0;
}

a:focus,
a:hover
{
  color: #0f5887;
  border-color: #0f5887;
}

#content a:focus img,
#content a:hover img
{
  border-color: #0f5887;
}


/* Headings */

h2
{
  margin-bottom: 0.25em;
  
  color: #6f3d13;
  border-bottom: 1px solid #cdd27d;
  
  font-family: 'Optima', 'Gill Sans', 'Verdana', 'Helvetica', sans-serif;
  font-size: 2em;
  line-height: 0.65;
  font-weight: normal;
  letter-spacing: 0.2em;
  text-transform: lowercase;
}


/* Lightbox */

#overlay {
  background-color: #f3fdfd;
}

#imageDataContainer {
  font-family: inherit;
}

#imageData #imageDetails {
  width: 100%;
}

#imageData #caption {
  font-size: 1.6em;
  line-height: 1.3125;
  font-weight: normal;
}

#imageData #caption em {
  display: block;
  
  padding-bottom: 1em;
  
  font-style: italic;
}

#imageData #numberDisplay {
  padding: 1em 0 0;
  
  font-size: 1.6em;
  line-height: 1.3125;
  font-style: italic;
}

#imageData #bottomNavClose {
  width: 26px;
}


/* Structure */

#everything
{
  width: 700px;
  margin: 0 auto;
  padding: 3em;
}


/* Header */

#header
{
  background: #fff;
}

#header h1
{
  margin-bottom: 0.6em;
}

#header a
{
  border: 0;
}


/* Menu */

#menu
{
  width: 46em;
  max-width: 100%;
  margin: 0 auto;
  
  background: #fffff3;
  border: solid #cdd27d;
  border-width: 1px 0;
  
  text-align: center;
}

#menu a
{
  margin-right: 1px;
  padding: 0.25em 1em;
  
  color: #805f40;
  
  font-size: 1.2em;
  line-height: 1.6;
  text-transform: lowercase;
}

#menu a:focus,
#menu a:hover,
body.home #menu .home,
body.news #menu .news,
body.projects #menu .projects,
body.project #menu .projects,
body.statement #menu .statement,
body.contact #menu .contact
{
  color: #fff;
  background: #83979f;
}


/* Content */

#content
{
  width: 540px;
  padding: 2em 80px 2.5em;
  
  color: #333;
  background: #fff;
}

#content img
{
  padding: 3px;
  
  background: #fff;
  border: 1px solid #ccc;
}

body #everything #content .right
{
  float: right;
}

body #everything #content .left
{
  float: left;
}


/* Footer */

#footer
{
  padding: 1em 0;
  
  background: #f3fdfd;
  border-top: 1px solid #cdd27d;
}

#footer p
{
  color: #995b20;
  
  font-size: 0.9em;
  line-height: 1.2;
  text-align: center;
}


/* Page specific */

/* Project list */

body.projects #content p
{
  float: left;
  
  width: 168px;
  margin: 0 6px 1.5em;
  
  text-align: center;
}

body.projects #content img
{
  width: 160px;
  margin-bottom: 4px;
}

body.projects #content a span
{
  border-bottom: 1px solid #eee;
}

body.projects #content a:focus span,
body.projects #content a:hover span
{
  border-color: #0f5887;
}


/* Individual project */

body.project #content
{
  width: 552px;
  padding-left: 68px;
}

body.project #content .info
{
  float: left;
  
  width: 264px;
  padding-bottom: 2em;
  margin-left: 12px;
}

body.project #content .info h2
{
  padding: 0 3px;
}

body.project #content p
{
  padding: 0 3px 0.25em;
  
  color: #555;
  
  font-size: 1.1em;
}

body.project #content .image
{
  float: right;
  
  width: 264px;
  margin: 0 0 1em 12px;
}

body.project #content .image img
{
  width: 258px;
}


/* Statement */

body.statement #content p
{
  padding-bottom: 0.7em;
  
  font-size: 1.2em;
  line-height: 1.4;
}

body.statement #content p.citation
{
  color: #999;
  
  line-height: 1.2;
  text-align: right;
}

body.statement #content p.citation span
{
  font-size: 0.83em;
}


/* News */

body.news #content h3
{
  margin-bottom: 1em;
  
  color: #6f3d13;
  border-bottom: 1px solid #cdd27d;
  
  font-family: 'Optima', 'Gill Sans', 'Verdana', 'Helvetica', sans-serif;
  font-size: 1.6em;
  line-height: 0.65;
  font-weight: normal;
  letter-spacing: 0.1em;
  text-transform: lowercase;
  text-align: right;
}

body.news #content h2
{
  border-bottom: none;
}

body.news #content h2 a
{
  display: block;
  
  border-bottom: 1px solid #cdd27d;
}

body.news #content h2 a:focus,
body.news #content h2 a:hover
{
  color: #0f5887;
  border-color: #0f5887;
}

body.news #content p
{
  padding-bottom: 0.7em;
  
  font-size: 1.2em;
  line-height: 1.4;
}

body.news #content p.citation
{
  color: #999;
  
  line-height: 1.2;
  text-align: right;
}

body.news #content p.citation a
{
  color: inherit;
  border-bottom-color: #fff;
  
  font-size: 0.83em;
}

body.news #content p.citation a:focus,
body.news #content p.citation a:hover
{
  color: #0f5887;
  border-color: #0f5887;
}

body.news #news_footer
{
  width: 100%;
  padding-bottom: 2.5em;
  
  color: #333;
  background: #fff;
}

body.news #archive_menu
{
  width: 540px;
  margin: 0 40px;
  padding: 0.5em 40px 0.6em;
    
  background: #fffff3;
  border: solid #cdd27d;
  border-width: 1px 0;
  
  font-size: 1em;
  line-height: 1.2;
  text-align: center;
}

body.news #archive_menu span
{
  float: left;
  
  margin: 0.25em 0.5em 0.25em 0;
  
  color: #999;
}

body.news #archive_menu span.year
{
  clear: left;
}

body.news #archive_menu a
{
  float: left;
  
  margin: 0.25em 0.25em 0.25em 0;
  padding: 0 0.25em;
  
  color: #805f40;
}

body.news #archive_menu a:focus,
body.news #archive_menu a:hover
{
  color: #fff;
  background: #83979f;
  border-color: #83979f;
}


/* Home page */

body.home #content
{
  text-align: center;
}


/* Contact */

body.contact #content
{
  width: 440px;
  padding: 3em 130px 3.5em;
}

body.contact #content h2
{
  margin-bottom: 0.9em;
}

body.contact #content p
{
  clear: both;
  
  width: 280px;
  margin: 0 auto;
  padding-bottom: 1.25em;
  
  font-size: 1.2em;
  text-align: right;
}

body.contact #content p span
{
  float: left;
  
  padding-left: 0.1em;
  
  color: #555;
  
  font-size: 0.92em;
  line-height: 1.2;
  font-style: italic;
}
