/* BODY ELEMENTS */

body{
background-image: url(../images/background.jpg);
font-family: Helvetica, Arial, sans-serif;
}

#main-container{
position: relative;
width: 891px;
margin: 50px auto 0;
}

/* HEADERS */

h1, h3{
position: relative;
font-size: 30px;
color: #FFFFFF;
font-weight: bold;
float: left;
}

.gray{
position: relative;
color: #9d9d9d;
}

.yellow{
position: relative;
color: #ffd800;
}

.header{
position: relative;
float: left;
width: 891px;
margin-bottom: 50px;
padding-bottom: 12px;
border-bottom: 10px solid #333236;
}

.header-two{
margin-top: 30px;
}

.header a{
position: relative;
float: right;
color: #9d9d9d;
font-size: 14px;
font-weight: bold;
margin-top: 12px;
}

.header a:hover{
color: #FFFFFF;
}


#subheader{
position: relative;
text-align: left;
float: left;
width: 891px;
margin-bottom: 10px;
border-bottom: 5px solid #333236;
padding-bottom: 10px;
}

h2{
position: relative;
font-size: 20px;
font-weight: bold;
color: #FFFFFF;
}

/* SHOWCASE */

.showcase-row{
position: relative;
float: left;
width: 891px;
margin-bottom: 40px;
}

.showcase-row li{
position: relative;
display: block;
float: left;
}

.portfolio-item{
position: relative;
width: 283px;
}

.portfolio-link{
position: relative;
font-weight: bold;
font-size: 14px;
color: white;
}

.portfolio-link:hover{
position: relative;
text-decoration: underline;
}

.portfolio-thumb{
position: relative;
float: left;
padding: 10px 0;
border-top: 1px solid #333236;
border-bottom: 1px solid #333236;
margin-bottom: 7px;
-moz-opacity:.8;
opacity:.80;
filter:alpha(opacity=80);
}

.portfolio-thumb:hover{
-moz-opacity:1;
opacity:1;
filter:alpha(opacity=100);
}

.gutter{
position: relative;
width: 21px;
height: 1px;
}

.arrow{
position: relative;
float: left;
margin-right: 10px;
margin-top: 1px;
}

.invisible{
position: absolute;
margin-left: -9999px;
}

/* ABOUT ME & CONTACT */

#about-me{
position: relative;
width: 587px;
float: left;
margin-right: 21px;
}

h4{
position: relative;
float: left;
font-size: 20px;
font-weight: bold;
color: #FFFFFF;
border-bottom: 5px solid #333236;
padding-bottom: 10px;
margin-bottom: 10px;
}

h4.two-thirds{
width: 587px;
}

h4.one-third{
width: 283px;
}

#contact{
position: relative;
float: left;
width: 283px;
}

#contact p, #about-me p{
position: relative;
font-size: 12px;
color: #FFFFFF;
line-height: 19px;
margin-bottom: 18px;
}

#contact-paragraph{
border-bottom: 1px solid #333236;
padding-bottom: 10px;
}

.about-me-link{
color: #FFD800;
}

.about-me-link:hover{
text-decoration: underline;
}

.portrait{
position: relative;
float: right;
margin-top: 4px;
margin: 4px 0 0 40px;
}

#resume{
position: relative;
color: #2da8ee;
font-size: 14px;
font-weight: bold;
}

#resume:hover{
text-decoration: underline;
}

/* FOOTER */

#footer{
position: relative;
width: 891px;
float: left;
clear: both;
margin-top: 50px;
border-top: 1px solid #333236;
padding: 10px 0 20px;
}

#footer p{
position: relative;
font-size: 9px;
color: gray;
}

#footer img{
position: relative;
margin-left: 10px;
margin-right: 4px;
}

#footer a{
position: relative;
text-decoration: underline;
color: gray;
}

/* SLIMBOX */

#lbOverlay {
position: fixed;
z-index: 1;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-color: #000;
cursor: pointer;
}

#lbCenter, #lbBottomContainer {
position: absolute;
z-index: 1;
overflow: hidden;
background-color: #fff;
}

.lbLoading {
background: #fff url(../images/loading.gif) no-repeat center;
}

#lbImage {
position: absolute;
left: 0;
top: 0;
border: 10px solid #fff;
background-repeat: no-repeat;
}

#lbPrevLink, #lbNextLink {
display: block;
position: absolute;
top: 0;
width: 50%;
z-index: 2;
}

#lbPrevLink {
left: 0;
background: transparent url(../images/prevlabel.gif) no-repeat 0 50%;
z-index: 2;
}

#lbNextLink {
right: 0;
background: transparent url(../images/nextlabel.gif) no-repeat 100% 50%;
z-index: 2;
}

#lbBottom {
color: #000;
border: 10px solid white;
border-top-style: none;
padding-bottom: 2px
}

#lbCloseLink {
display: block;
float: right;
margin-top: 4px;
width: 27px;
height: 27px;
background: transparent url(../images/close.gif) no-repeat center;
}

#lbCaption, #lbNumber {
margin-right: 71px;
}

#lbCaption{
font-size: 11px;
line-height: 17px;
font-weight: bold;
}

#lbCaption a{
position: relative;
text-decoration: underline;
color: black;
}


#lbNumber {
font-family: Georgia, Times, serif;
font-style: italic;
font-size: 11px;
color: #666;
}

/* FORM */

#form-div p.success, #form-div p.error, #form-div p.center { 
color : #ffd800;
text-align : left;
font-size: 11px;
margin-bottom: 15px;
line-height: 14px;
}

#form-div p.error a, #form-div p.success a {
color : #ffffff;
}

#form-div p.center {
text-align : center;
background-color : #edbaba;
color : #000;
}

#form-div p.error a:hover, #form-div p.error a:focus, #form-div p.error a:active, 
#form-div p.success a:hover, #form-div p.success a:focus, #form-div p.success a:active {
color : #eee;
background-color : #bb0000; 
}

#form-div p.success a:hover, #form-div p.success a:focus, #form-div p.success a:active {
background-color : #669900; 
}

fieldset.main-set,
fieldset.req-set,
fieldset.opt-set { 
position: relative;
margin: 0px;
padding: 0px;
}

#form-div legend { 
font-weight : bold;
}

legend.main-legend { 
color : #777;
font-size: 12px;
}

legend.req-legend,
legend.opt-legend { 
color : #777;
}

legend.req-legend, legend.opt-legend {
margin-left : -2px;
}

label.req-label, label.opt-label, label.opt-label.main-label, label.opt-label.main-label span.req, label span.req {
color : #FFFFFF;
font-size: 14px;
font-weight: bold;
}

label.req-label.explain {
color : #9d9d9d;
font-size: 11px;
line-height: 14px;
}

input.text-long.address, input.text-long.address:hover, input.text-long.address:focus,
input.text-long.address.hover, input.text-long.address.focus {
padding-bottom : 2px;
}

input.text-long.address2, input.text-long.address2:hover, input.text-long.address2:focus,
input.text-long.address2.hover, input.text-long.address2.focus {
margin-top : 0;
padding-top : 2px;
}

input.text-short, 
input.text-med, 
input.text-long,
textarea.textarea,input.text-short:focus, input.text-short.focus, 
input.text-med:focus, input.text-med.focus,
input.text-long:focus, input.text-long.focus,
textarea.textarea:focus, textarea.textarea.focus,input.select.focus {
font-size: 13px;
font-weight: bold;
font-family: Helvetica, Arial, sans-serif;
background-color : #626262;
cursor : text;
border: 0px;
padding : 6px 5px 5px 5px;
margin-top: 3px;
color: black;
width: 273px;
}

input.text-short, input.text-med, select.select, input.text-long {
width : 273px;
margin-bottom: 15px;
}

textarea.textarea {
width : 273px;
height : 150px;
margin-bottom: 15px;
font-family: Helvetica, Arial, sans-serif;
font-size: 13px;
font-weight: bold;
color: black;
}

select.select{
cursor : pointer;
width: 273px;
margin-top: 3px;
font-size: 13px;
font-weight: bold;
font-family: Helvetica, Arial, sans-serif;
}

input.button { 
position: relative;
border: 0px solid #000000;
font-family: Helvetica, Arial, sans-serif;
font-weight : bold;
font-size: 12px;
margin-top : 3px;
padding : 6px 5px 5px 5px;
cursor : pointer;
float : left;
clear : both;
color: white;
background-image: url(../images/buttonback.jpg);
width: 73px;
height: 30px;
}

input.button:hover, input.button.hover,
input.button:focus, input.button.focus {
text-decoration: underline;
}

/* because IE6 sucks - if you have a conditionally served IE6 style sheet add this to it */
* html input.button {
  border : 1px solid #666;
}