
.overlay-top-right {
  top: 4em;
  right: 1em;
  color: #fff;
  width: 500px;
  z-index: 1000;
  position: fixed;
  font-size: 12px;
  background: rgba(0,0,0,.5)
}
  .overlay-top-right h3 {
    display: none;
  }
  .overlay-top-right table {
    margin-bottom: 0;
  }

.text-large { font-size: 1.2em; }
.text-center { text-align: center; }

.req label { font-weight: 700; }
.req.error label { color: #c33; }

select {
  width: 10em;
  height: 2.2em;
  padding: .5em;
  font-size: 1.4em;
  border: 1px solid #ccc;
}
button, html input[type="button"],
input[type="reset"], input[type="submit"] {
  padding: 5px 10px;
}
input.md, select.md {
  width: 4em;
}
input.lg, select.lg {
  width: 13em;
}

table, th, td {
  border-left: 0 !important;
  border-right: 0 !important;
}
thead th {
  border: 0;
  text-align: center;
  background-color: rgba(0,0,0,.025);
}

@media (min-width: 800px){
  button, html input[type="button"],
  input[type="reset"], input[type="submit"] {
    padding: 10px 20px;
  }
  .form-inline label {
    width: 10em;
    text-align: right;
    margin-right: .5em;
    display: inline-block;
  }
  .form-inline select,
  .form-inline textarea,
  .form-inline input[type="text"] {
    width: 100%;
    max-width: 16em;
  }
  .form-inline textarea {
    height: 6em;
    max-width: 30em;
  }
}

.btn {
  outline: 0;
  overflow: hidden;
}
  .btn:hover { box-shadow: inset 99em 0 0 rgba(255,255,255,.1); }
  .btn:active { box-shadow: inset 99em 0 0 rgba(0,0,0,.2); }
  .btn-primary { background-color: #476399 !important; }
  .btn-confirm { background-color: #479947 !important; }
  .btn-danger { background-color: #994747  !important; }
  .btn-left { float: left; }
  .btn-right { float: right; }
  .btn.size-lg {
    overflow: initial;
    font-size: 1.2em;
  }

.info {
    padding: 1em;
    background: #eee;
    margin: 1em 0;
}
.info p:last-of-type { margin: 0; }
  .info.warning { background: #fffade; }

.js .page .js-job-enquiry fieldset,
.js .home .js-job-enquiry fieldset .info {
  display: none;
}
  .js .page .js-job-enquiry fieldset,
  .js .page .js-job-enquiry fieldset.stepy-step {
    display: block;
  }
    .stepy-step legend,
    .stepy-1 legend {
      display: none;
    }
.stepy-header {
  padding: 0;
  margin: 0 0 1em;
  list-style: none;
}
  .stepy-header li {
    color: #999;
    cursor: pointer;
    margin-right: 3em;
    display: inline-block;
  }
  .stepy-header div {
    color: #ccc;
    line-height: 1;
    font-size: .85em;
  }
  .stepy-header span {
    font-size: 1.2em;
  }
    .stepy-header .stepy-active span {
      color: #222;
    }
.stepy-navigator {
  display: none;
}
.stepy-2 .stepy-navigator {
  z-index: 1000;
  margin-top: -6em;
  position: relative;
}
.stepy-navigator a {
  width: 7em;
  color: #fff;
  padding: .5em;
  background: #222;
  text-align: center;
  display: inline-block;
  border: 0;
  box-shadow: none;
}
.stepy-navigator a:hover {
  color: #fff;
  background: #f60;
}
.stepy-navigator .button-next {
  float: right;
}
.stepy-3 .btns {
  text-align: center;
}

.gokml-enquiry .stepy-1 .info { display: none; }

.job-enquiry { width: 100%; }

.enquiry-address {
  padding: 1em;
  background: #fff;
  position: relative;
  border: 1px solid #aaa;
  border-color: #aaa #bbb #ccc #ddd;
  box-shadow: inset 1px 4px 9px -6px;
}
  .enquiry-address p { margin-bottom: .5em; }
  .enquiry-address input.txt-address,
  .enquiry-address input.txt-address:focus {
    border: 0;
    outline: 0;
    font-size: 1.6em;
    padding: 0 9em 0 .5em;
    width: 100% !important;
  }
    .enquiry-address .txt-address:-webkit-autofill {
      box-shadow: 0 0 0 2em #aaa inset;
    }
  .enquiry-address .btns {
    top: .8em;
    right: .8em;
    position: absolute;
  }
  .enquiry-address .submit {}
  .enquiry-address .address-detect {
    display: none;
  }
    .has-geo .gokml-enquiries .enquiry-address .address-detect {
      display: inline;
    }

#map-canvas {
  left: 0;
  right: 0;
  width: 100%;
  clear: both;
  height: 40em;
  margin: 1em 0;
  position: absolute;
  border-radius: 4px;
  background: #e9e5dc;
  border: 1px solid #aaa;
  transition: .5s;
}
  #map-canvas img { max-width: none; }
  .map-canvas-pad { height: 42em; }

@media (max-width: 799px) {
  #map-canvas {
    margin-right: 2em;
  }
  .enquiry-address .text {
    font-size: 1.2em;
  }
}

@media (min-width: 640px) {
  .btn-draw > div > div {
    margin-right: .5em;
    padding: 1em !important;
  }
  .btn-draw b {
    color: #fff;
    width: 60px;
    bottom: -1em;
    text-align:center;
    position: absolute;
    text-shadow: 0 1px 1px rgba(0,0,0,.5);
  }
  .btn-draw > div > div {
    cursor: pointer;
    border-radius: 4px !important;
    padding: .5em 2em !important;
  }

  div#btn-bar {
    padding: 1em 2em 2.5em;
    background: rgba(0,0,0,.5);
  }

  .btn-draw b {
    bottom: 1.25em;
    font-weight: 400;
    margin-left: 1em !important;
  }
  .btn-draw > div > div {
    margin-left: 1em !important;
    margin-right: 1em !important;
  }

}

.tbl-job-overview input[type="text"] {
  border: 0;
  outline: 0;
  padding: 0;
  background: transparent;
}

.panel-debug {
  color: #fff;
  padding: 2em;
  font-size: .8em;
  margin-top: 5em;
  background: #666;
}
  .panel-debug input[type=text],
  .panel-debug textarea {
    border: 0;
    width: 100%;
    color: #fff;
    outline: none;
    padding: .5em;
    background: #888;
  }
.btn-confirm:disabled,
.js-confirm-hazard:disabled {
  opacity: .2;
  cursor: not-allowed;
}

.eg {
  width: 2em;
  top: -.15em;
  opacity: .5;
  height: 2em;
  cursor: help;
  margin: 0 1em;
  position: relative;
  display: inline-block;
  border: 2px solid #000;
  vertical-align: middle;
  background-color: #ccc;
}

.rate-1 .eg { background-color: #951BC9; }
.rate-2 .eg { background-color: #1B3FC9; }
.rate-3 .eg { background-color: #1BC1C9; }
.haz .eg { background-color: #C9BF1B; }
.exc .eg:after {
  top: .3em ;
  left: .3em;
  width: 1em;
  height: 1em;
  content: "";
  position: relative;
  display: inline-block;
  border: .2em solid #000;
  background-color: #C91B2A;
}
