* {
  margin: 0;
  padding: 0;
}

body {
	font-family: Tahoma, Arial, Helvetica, sans-serif;
	font-size: small;
	color: #000;
	background-color: #fff;
	text-decoration: none;
	text-align: center;
	vertical-align: top;
  margin: 0;
  padding: 0;
}

#wrapper {
  position: relative;
  width: 776px;
  margin: 0 auto;
  text-align: left;
  background-color: transparent;
  overflow: hidden;
}

img { border: none; }

h2 {
  margin-bottom: 1em;
}
h3 {
  margin: 1em 0 0.85em 0;
  border-bottom: 2px solid #999;
}
h4 {
  margin: 0.75em;
}
ul {
  margin: 0.75em 3em;
}
ul li {
  margin: 0.5em 0;
}

p {
	font: normal 100%/145% Tahoma, Arial, Helvetica, sans-serif;
	color: #000;
	text-align: left;
	margin-bottom: 0.75em;
}
a,
a:link,
a:visited,
a:active{
	font-weight: normal;
	color: #141462;
	text-decoration: none;
	border-bottom: 1px solid #ccc;
	padding: 0 0.15em;
}
a:hover{
	color: #141462;
	background-color: #e4e2e2;
	text-decoration: none;
	border-bottom: 1px solid #141462;
}

abbr {
	border-bottom: 1px dotted #ccc;
}

.replace {
  position: relative;
  margin: 0;
  padding: 0;
  /* hide overflow:hidden from IE5/Mac \*/
  overflow: hidden;
  /* */
}
.replace span {
  display: block;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 1; /*for Opera 5 and 6*/
}

.hide {
  display: none;
}

/*** Front Page ****************************************************/
#front-content {
  height: 275px;
  text-align: right;
  padding: 120px 410px 0 0;
  margin: 80px 0;
  background: url(../imgs/logo_head_250w.gif) 75% 40% no-repeat transparent;
}
#front-content h1, #front-content h1 span {
  font-size: 90%;
  width: 100%;
  height: 32px;
	background: url(../imgs/brighameckrich.gif) right top no-repeat transparent;
}
#front-content h2, #front-content h2 span {
  font-size: 80%;
  width: 100%;
  height: 18px;
	background: url(../imgs/thiswebsite.gif) right top no-repeat transparent;
}
#front-nav {
  width: 110px;
  list-style: none;
  margin: 0.5em 0 0 auto;
  border-top: 1px solid #999;
  padding-top: 0.3em;
}
#front-nav li {
  display: block;
  margin: 0.2em 0;
}
#front-nav li a,
#front-nav li a:link,
#front-nav li a:visited,
#front-nav li a:active{
	font: normal 100% Tahoma, Arial, Helvetica, sans-serif;
  color: #999;
	background-color: transparent;
	text-decoration: none;
	border-style: none;
	padding: 0 0.2em;
}
#front-nav li a:hover{
	text-decoration: none;
	color: #141462;
	background-color: #e4e2e2;
	border-bottom: 1px solid #141462;
}

#front-footer {
  position: absolute;
  bottom: 0;
  right: 0;
  text-align: right;
}
#front-footer p {
  color: #999;
  margin: 0 0.8em;
}
/*** Front Page ****************************************************/

/*** Site Header & Footer***************************************/
#header {
  width: 640px;
  width: 610px;
  margin-left: 6px;
}
#name {
  position: relative;
  width: 383px;
  height: 32px;
  padding: 40px 0 10px 0;
}
#name div#thiscont {
  position: absolute;
  left: 229px;
  bottom: 3px;
}
#name h1, #name h1 span {
  position: absolute;
  left: 0;
  bottom: 0;
  font-size: 90%;
  width: 223px;
  height: 32px;
	background: url(../imgs/brighameckrich.gif) left top no-repeat transparent;
}
#name div#this, #name div#this span {
  font-size: 80%;
  width: 154px;
  height: 18px;
	background: url(../imgs/thiswebsite.gif) left top no-repeat transparent;
}
#headnav {
  list-style: none;
  margin: 0;
  margin-top: 5px;
	background: url(../imgs/arrow_2_1.gif) left center no-repeat transparent;
	padding-left: 25px;
}
#headnav li {
  display: inline;
  padding-left: 20px;
  margin: 0;
}
#headnav li.first {
  padding-left: 0px;
}
#footnav li a,
#footnav li a:link,
#footnav li a:visited,
#footnav li a:active,
#headnav li a,
#headnav li a:link,
#headnav li a:visited,
#headnav li a:active{
	font: normal 100% Tahoma, Arial, Helvetica, sans-serif;
  color: #999;
	background-color: transparent;
	text-decoration: none;
	border-style: none;
	padding: 0.1em 0.3em;
}
#footnav li a:hover,
#headnav li a:hover{
	text-decoration: none;
	color: #141462;
	background-color: #e4e2e2;
	border-bottom: 1px solid #141462; 
}
#footnav li a.here,
#footnav li a.here:link,
#footnav li a.here:visited,
#footnav li a.here:active,
#headnav li a.here,
#headnav li a.here:link,
#headnav li a.here:visited,
#headnav li a.here:active {
	color: #141462;
	background-color: #e4e2e2;
	border-bottom: 1px solid #e4e2e2;
}
#footnav li a.here:hover,
#headnav li a.here:hover {
	color: #141462;
	background-color: #e4e2e2;
	border-bottom: 1px solid #e4e2e2;
}
#footer {
  clear: both;
  padding-top: 15px;
  width: 610px;
  margin-left: 6px;
}
#footer p {
  color: #999;
}
#footnav {
  list-style: none;
  margin: 0;
  margin-bottom: 5px;
	background: url(../imgs/arrow_2_1.gif) left center no-repeat transparent;
	padding-left: 25px;
}
#footnav li {
  display: inline;
  padding-left: 20px;
  margin: 0;
}
#footnav li.first {
  padding-left: 0px;
}
/*** Site Header & Footer***************************************/

/*** Site Content **************************************************/
#content {
  width: 640px;
  width: 580px;
  margin-top: 35px;
  margin-left: 6px;
}

img.headshot {
  float: right;
  padding: 2px;
  background-color: #ccc;
  margin: 0 0 10px 10px;
  display: none;
}

/*** Portfolio ***/
#port-intro {
  margin-bottom: 25px;
}
ul#port {
  list-style: none;
  margin: 0;
}
ul#port h4 {
  margin: 0 0 0.6em 0;
}
li.port-entry {
  width: 580px;
  clear: both;
  margin: 0;
  margin-bottom: 25px;
}
li.port-entry:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
li.port-entry h3 {
	font: bold 105%/135% Tahoma, Arial, Helvetica, sans-serif;
  color: #000;
	background-color: transparent;
	margin-bottom: 1em;
}

dt img {
  padding: 2px;
  background-color: #ccc;
}
dd em {
  display: block;
  font-style: normal;
  font-weight: bold;
}
dd ul, dd li {
  list-style: none;
  margin: 0;
}
ul.techno {
  margin: 0;
  margin-left: 15px;
}
ul.techno li {
  margin: 4px 0;
}
.column1 {
  width: 180px;
  float: left;
}
.column2, .column3 {
  width: 180px;
  float: left;
  margin-left: 20px;
}
/*** Portfolio ***/

/*** Resume ***/
.hresume {
  width: 99%;
  padding: 15px 10px;
  border: 1px solid #999;
}

.hresume abbr {
	border-bottom: 1px dotted #ccc;
}

.hresume .contact .fn {
  font-size: 120%;
  font-weight: bold;
}

.hresume h2 {
  clear: both;
  font-size: 115%;
  font-weight: bold;
  margin: 20px 0 10px 0;
}
.hresume h3 {
  font-size: 100%;
  font-weight: bold;
  margin: 20px 0 10px 10px;
  border: none;
}

.hresume .street-address/*, .hresume .email*/, .hresume .url {
  display: block;
}
.hresume .webaddr {
  float: right;
  text-align: right;
}

.hresume .summary, .hresume .experience, .hresume .education, .hresume .tags {
  margin: 10px 0 20px 20px;
  padding: 1px;
}
.hresume .skills p {
  margin: 10px 0 0 20px;
  line-height: 135%;
}
.hresume .skills div {
  width: 230px;
  float: left;
  display: inline;
  margin: 0 0px 15px 45px;
}
.hresume .skills div ul{
  margin: 10px 0 0px 25px;
}

.hresume .education .htitle, .hresume .experience .htitle {
  float: left;
}
.hresume .education .htitle span, .hresume .experience .htitle span{
  display: block;
}
.hresume .experience .org {
  font-weight: bold;
}

.hresume .htitle object.include {
  display: none;
  height: 0;
  width: 0;
}

/*.hresume .education .date_duration, .hresume .experience .date_duration {
  float: right;
  margin-right: 20px;
}*/

.hresume .education .date-location, .hresume .experience .date-location {
  float: right;
  margin-right: 20px;
  text-align: right;
  display: inline;
}
.hresume .education .date-location span, .hresume .experience .date-location span {
  display: block;
}
.hresume .education .date-location abbr, .hresume .experience .date-location abbr {
  border: none;
}

.hresume .education .description, .hresume .experience .description {
  clear: both;
  padding-top: 8px;
  margin-right: 20px;
}

.hresume .education .summary {
  margin: 0;
}

.hresume .tags ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.hresume .tags ul li {
  display: inline;
}


* html .contact {
  height: 1%;
}
.hresume .contact:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
* html .vevent {
  height: 1%;
}
.hresume .vevent:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
/*** Resume ***/

/*** Contact ***/
#contactForm fieldset
{
	display: block;
	font-size: 100%;
	text-decoration: none;
	text-align: left;
  border: none;
  margin: 15px 0;
}
#contactForm label
{
	display: block;
	margin-bottom: 1em;
	font-weight: bold;
}
#contactForm label span
{
  font-size: 80%;
	font-weight: normal;
	color: #000;
}
#contactForm legend
{
  display: none;
}
#contactForm input.submit
{
  display: inline;
  width: 60px;
	text-align: center;
  border: 1px solid #000;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
	background-color: #e4e2e2;
	font-weight: bold;
}
#contactForm input.reset
{
  display: inline;
  width: 60px;
	text-align: center;
  border: 1px solid #000;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
	background-color: #e4e2e2;
	font-weight: bold;
}

#contactForm input
{
	font-family: Tahoma, Arial, sans-serif;
	font-weight: normal;
	display: block;
	width: 15em;
  border: 1px solid #000;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
	padding: 0.2em 0.3em;
	margin-top: 0.15em;
}

#contactForm input#contactName, #contactForm input#contactEmail
{
	background-color: #e4e2e2;
}

#contactForm textarea
{
	font-family: Tahoma, Arial, sans-serif;
	font-weight: normal;
	font-size:  1em;
	text-decoration: none;
  display: block;
	width: 90%;
	height: 150px;
  border: 1px solid #000;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
	padding: 0.3em 0.4em;
	margin-top: 0.15em;
}

p.error-msg {
  border: 2px solid red;
  font: normal 110%/130% Arial, Helvetica, sans-serif;
	color: red;
  background-color: white;
  padding: 0.5em;
}
/*** Contact ***/
/*** Site Content **************************************************/


/*** Extras ********************************************************/
.about-extra {
  background-image: url(../imgs/logo_head_150w.gif);
}
.port-extra {
  background-image: url(../imgs/logo_portfolio_150w.gif);
}
.resume-extra {
  background-image: url(../imgs/logo_resume_150w.gif);
}
.contact-extra {
  background-image: url(../imgs/logo_contact_150w.gif);
}
#extra1 {
	/*background: url(../imgs/logo_head_150w.gif) right bottom no-repeat transparent;*/
	background-position: right bottom;
	background-repeat: no-repeat;
	background-color: transparent;
	position: fixed;
	left: 50%;
	bottom: 20px;
	width: 150px;
	height: 185px;
	z-index: 2;
	margin-left: 230px;
	margin-left: 238px;
}
* html #extra1 {
  position: absolute;
	left: 50%;
	top: 20px;
}
/*** Extras ********************************************************/