div#content form {
  margin: 0 auto;
  padding: 0;
  background: transparent url('../images/formbg.png') repeat-y left top;
  width: 786px;
}

div#content div.error,
div#content div.jsreqd {
  background: transparent url('../images/mainerrorbg.png') no-repeat left top;
  width: 748px;
  height: 20px;
  margin: 0 auto;
  padding: 14px 19px 9px;
  font-size: .9em;
  color: #dd0000;
}

div#content div.error p,
div#content div.jsreqd p {
  margin: 0;
}


div#content form fieldset {
  background: transparent url('../images/fieldsetbg.png') no-repeat left top;
  border: none;
  margin: 0 auto;
  padding: 70px 19px 10px;
  width: 748px;
  position: relative;
  display: block;
}

div#content form fieldset:first-child {
  background: transparent url('../images/firstfieldsetbg.png') no-repeat left top;
  padding-top: 49px;
}

div#content form fieldset legend {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 70px;
  left: 19px;
  width: 100%;
  color: #000000;
}

div#content form fieldset:first-child legend {
  top: 49px;
}

/* FIREFOX HACK - TO FIX PROBLEM IN 3.6 */

@-moz-document url-prefix() {
  div#content form fieldset legend,
  div#content form fieldset:first-child legend {
    top: 0;
    left: 0;
  }
}

/* END FIREFOX HACK */

div#content form fieldset legend span {
  font-size: 1.3em;
  font-weight: bold;
  position: absolute;
  display: block;
  top: -30px;
  left: 0;
}

div#content form fieldset.buttons {
  background: #d5eff6 url('../images/lastfieldsetbg.png') no-repeat left top;
  padding: 19px 19px 0;
}

div#content form fieldset label {
  width: 260px;
  text-align: right;
  float: left;
  display: block;
  margin: 8px 10px 1em 0;
  font-weight: bold;
  clear: left;
}

div#content form fieldset label.notrequired {
  font-weight: normal;
}

div#content form fieldset.fullwidth-textarea legend {
  top: -25px;
}

div#content form fieldset.fullwidth-textarea label {
  width: auto;
  text-align: left;
  float: none;
  display: inline;
  margin: 0;
  clear: none;
}

div#content form fieldset input[type="text"],
div#content form fieldset input[type="password"],
div#content form fieldset select {
  float: left;
  width: 273px;
  margin: 8px 0 1em 0;
  border: 1px solid #000000;
}

div#content form fieldset input[type="checkbox"],
div#content form fieldset input[type="radio"] {
  margin: 10px 0 1em 0;
  float: left;
}

div#content form fieldset input[type="text"].error,
div#content form fieldset input[type="password"].error,
div#content form fieldset.fullwidth-textarea textarea.error {
  border: 1px solid #ff0000;
}

div#content form fieldset.fullwidth-textarea textarea {
  width: 90%;
  margin: 0 auto;
  display: block;
  font-family: Verdana, Arial, sans-serif;
  font-size: .9em;
  border: 1px solid #000000;
  height: 150px;
}

div#content form fieldset img {
  border: none;
}

div#content form fieldset img.captcha {
  margin-left: 270px;
  display: block;
}

div#content form fieldset div.error {
  float: right;
  clear: left;
  width: 140px;
  background: transparent url('../images/errorbg.png') no-repeat left top;
  height: 17px;
  font-size: .9em;
  color: #dd0000;
  padding: 12px 16px 10px 40px;
}

div#content form fieldset div.error p {
  margin: 0;
  text-align: right;
}

div#content form fieldset.fullwidth-textarea div.error {
  margin-top: -39px;
}

div#content form fieldset input[type="submit"] {
  background: transparent url('../images/buttonbg.png') no-repeat left top;
  border: none;
  display: block;
  width: 168px;
  height: 48px;
  font-weight: bold;
  cursor: pointer;
  margin: 0 auto;
}

div#content form fieldset input[type="submit"]:hover {
  background-position: 0 -48px;
}

div#content form fieldset p {
  clear: left;
}

div.fileinput {
  height: 40px;
  float: left;
  width: 273px;
  position: relative;
  margin-top: -4px;
  background: url('../images/filebuttonbg.png') no-repeat right top;
}

div.fileinput input[type="file"] {
  position: absolute;
  right: 6px;
  top: 8px;
  z-index: 1;

  -moz-opacity: 0;
  filter: alpha(opacity: 0);
  opacity: 0;
}

div.fileinput:hover {
  background-position: right bottom;
}

div#content form fieldset div.fileinput input.fileuploadreplacement {
  position: absolute;
  top: 2px;
  left: 0;
  width: 170px;
}

/* HACK FOR WEBKIT BROWSERS */

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  div.fileinput input[type="file"] {
    left: 0;
  }
}

/* END WEBKIT HACK */

div#content form fieldset fieldset {
  margin: 0;
  padding: 4px 0 0 0;
  background: none;
  clear: both;
}

div#content form fieldset fieldset p.label {
  clear: left;
  display: block;
  float: left;
  font-weight: bold;
  margin: 8px 10px 1em 0;
  text-align: right;
  width: 260px;
}

div#content form fieldset fieldset label {
  font-weight: normal;
  clear: none;
  width: auto;
  margin: 8px 25px 1em 5px;
}