html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  background-color: #fff; /* body changes to #000 for dimming effect */
  text-align: center;
  font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
  color: #000;
  font-size: 12px;
}

img {
  border: none;
}
img.roundimg {
  -webkit-border-radius: 50%;
     -moz-border-radius: 50%;
       -o-border-radius: 50%;
          border-radius: 50%;
}
img.imgborder{
  border: 1px solid #515557;
}

.bold {
  font-weight: bold;
}

h4 {
  color: #515557;
  font-size: 1.20em;
  font-weight: bold;
  text-transform: uppercase;
  margin: 1em auto;
}

a {
  text-decoration: none;
  color: #515557;
}
a:hover {
  color: #7c8284;
}

.frt {
  float: right;
}
.flf {
  float: left;
}
.cf {
  clear: both;
}

.bumperleft {
  margin-left: 1em;
}
.bumperright {
  margin-right: 1em;
}
.bumpertop {
  margin-top: 1em;
}
.bumperbottom {
  margin-bottom: 1em;
}

.aright {
  text-align: right;
}
.aleft {
  text-align: left;
}
.acenter {
  text-align: center;
}

.fullwd {
  width: 100%;
}

p {
  font-size: 0.95em;
}

span.roundletter {
  display: inline-block;
  width: 1.25em;
  text-align: center;
  margin-right: 1px;
  background-color: #515557;
  border: 2px solid #515557;
  color: #fff;
  -webkit-border-radius: 50%;
     -moz-border-radius: 50%;
       -o-border-radius: 50%;
          border-radius: 50%;
}
/* ---------------------------------------------------------- */

#content {
  width: 1000px;
  margin: auto;
}

#sidemenu {
}
#sidemenu a.menuoption {
  display: block;
  margin: 32px 2px;
  font-size: 1.25em;
  font-weight: bold;
  text-transform: uppercase;
}
#sidemenu a.menuoption:hover span.roundletter {
  background-color: #7c8284;
  border: 2px solid #7c8284;
}
#sidemenu a.menuoption span.menuindent{
  display: inline-block;
  width: 1.5em;
}
#sidemenu a.indexed {
  color: #000;
  cursor: default;
}
#sidemenu a.indexed span.roundletter, #sidemenu a.indexed:hover span.roundletter  {
  background-color: #000;
  border: 2px solid #000;
}

#central {
  margin: auto 12em;
  padding: 0.5em;
  font-size: 1.2em;
  text-align: left;
}

#footer {}
#footer a.menuoption {
  margin: auto 8px;
  font-weight: bold;
  text-transform: uppercase;
}
#footer span.menuspacer{
  display: inline-block;
  width: 0px;
  border-left: 2px solid #7c8284;
}
#footer div#copyright {
  margin: 8px;
  font-size: 0.85em;
}

/* ---------------------------------------------------------- */

#portfolio_thumbs {
  margin: 3em auto;
}

#portfolio_thumbs a.thumbnail {
  display: inline-block;
  margin: auto 1em 1.5em;
}
#portfolio_thumbs a.thumbnail img {
  /*width: 160px;
  height: 160px;*/
}
#portfolio_thumbs a.thumbnail:hover  img{
    border: 1px solid #7c8284;
}

#portfolio_numbers {
  margin: 2em;
}
/*
#portfolio_numbers a.pnumber {
  font-family: Arial, Helvetica, sans-serif;
  font-weight: bold;
  margin: auto 0.5em;
  display: inline-block;
  width: 1.25em;
  text-align: center;
  background-color: transparent;
  border: 1px solid #fff;
  color: #515557;
  -webkit-border-radius: 50%;
     -moz-border-radius: 50%;
       -o-border-radius: 50%;
          border-radius: 50%;
}
#portfolio_numbers a.pnumber:hover {
  border: 1px solid #7c8284;
  color: #7c8284;
}
#portfolio_numbers a.indexed, #portfolio_numbers a.indexed:hover {
  background-color: #515557;
  border: 1px solid #515557;
  color: #fff;
  cursor: default;
}
*/

#portfolio_numbers a.thumbnav {
  font-family: Arial, Helvetica, sans-serif;
  font-weight: bold;
  margin: auto 1px;
  display: inline-block;
  text-align: center;
  background-color: transparent;
  border: 1px solid #fff;
  color: #515557;
  overflow: hidden;
  -webkit-border-radius: 50%;
     -moz-border-radius: 50%;
       -o-border-radius: 50%;
          border-radius: 50%;  
}
#portfolio_numbers a.thumbnav:hover {
  border: 1px solid #7c8284;
  color: #7c8284;
}
#portfolio_numbers a.indexed, #portfolio_numbers a.indexed:hover {
  background-color: #515557;
  border: 1px solid #515557;
  color: #fff;
  cursor: default;
}
/* ---------------------------------------------------------- */

#contactForm {
  margin: 1em auto 0;
  text-align: left;
  font-size: 0.95em;
}

#contactForm label {
  display: inline-block;
  margin: 0;
  width: 5em;
  font-weight: bold;
}

#contactForm input {
  width: 20em;
  margin: 0.25em 0;
  padding: 0.25em;
  border: 1px solid #7c8284;
  font-family: inherit;
  font-size: inherit;
  line-height: 125%;
  color: #000;
}

#contactForm textarea {
  width: 25.25em;
  height: 10em;
  margin: 0.5em 0;
  padding: 0.25em;
  border: 1px solid #7c8284;
  font-family: inherit;
  font-size: inherit;
  line-height: 125%;
  color: #000;
}

#contactForm input.subButton {
  display: block;
  width: 5em;
  height: 5em;
  text-align: center;
  margin: 0;
  padding: 0;
  background-color: #515557;
  border: 1px solid #515557;
  color: #fff;
  font-family: inherit;
  font-size: inherit;
  font-weight: bold;
  text-transform: uppercase;
  cursor: pointer;
  -webkit-border-radius: 50%;
     -moz-border-radius: 50%;
       -o-border-radius: 50%;
          border-radius: 50%;
}
#contactForm input.subButton:hover {
  background-color: #7c8284;
  border: 1px solid #7c8284;
}

#zoomUnderlay {
  width: 1px;
  height: 1px;
  position: absolute;
  top: 0px;
  left: 0px;
  visibility: hidden;
  cursor: pointer;
}

#zoomWaiter {
  width: 64px;
  height: 64px;
  position: absolute;
  top: 0px;
  left: 0px;
  visibility: hidden;
}

#zoomPic {
  width: 1px;
  height: 1px;
  position: absolute;
  top: 0px;
  left: 0px;
  visibility: hidden;
  cursor: pointer;
}
