@charset "UTF-8";
/*! =====================================================================
 *  Driving & Vehicle Standards Agency
 *  ===================================================================== 
 *
 * If you are viewing this in the screen.css file, then DO NOT EDIT this file.
 * Please edit the SCSS files and compile to CSS using Compass.
 * 
 * Please keep the style sheets tidy :)
 */
body {
  width: 100%;
  *zoom: 1; }
  body:before, body:after {
    content: "";
    display: table; }
  body:after {
    clear: both; }

/*@mixin gradient($image, $gradient-start, $gradient-end) {
  background: #ccc;
  background-image: $image, -webkit-gradient(linear, 0 0, 0 100%, from($gradient-start), color-stop(25%, $gradient-start), to($gradient-end));
  background-image: $image, -webkit-linear-gradient(top, $gradient-start, $gradient-start 25%, $gradient-end);
  background-image: $image, -moz-linear-gradient(top, $gradient-start, $gradient-start 25%, $gradient-end);
  background-image: $image, -ms-linear-gradient($gradient-start, $gradient-start 25%, $gradient-end);
  background-image: $image, -o-linear-gradient($gradient-start, $gradient-start 25%, $gradient-end);
  background-image: $image, linear-gradient(top, $gradient-start, $gradient-start 25%, $gradient-end);
  background-repeat: no-repeat;
  background-position: 100% 50%;
}*/
a, abbr, acronym, address, blockquote, body, caption, dd, dfn, div, dl, dt, em, fieldset,
form, h1, h2, h3, h4, h5, h6, html, iframe, img, input, label, legend, li, ol, p, pre, q,
select, small, span, strong, sub, sup, table, tbody, td, textarea, tfoot, th, thead, tr, ul {
  font-family: inherit;
  outline: 0;
  margin: 0;
  border: none;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent; }

hr {
  display: none; }

acronym, abbr {
  border-bottom: none;
  cursor: help; }

a acronym:hover, a abbr:hover {
  cursor: pointer; }

li {
  list-style: none; }

dfn {
  font-style: normal;
  cursor: help; }

em, i {
  font-style: normal; }

/* HTML5 */
article, aside, dialog, figure, footer, header, hgroup, nav, section {
  display: block; }

mark {
  font-style: italic;
  font-weight: bold;
  color: black;
  background: #ff9; }

a:link,
a:visited {
  color: #2E3191; }

a:hover {
  color: #2E8ACA; }

a:focus {
  outline: 3px solid #fc0; }

a:active {
  color: #c11;
  outline: none; }

html body #page .clear {
  display: block;
  clear: both; }

html body .hidden {
  display: none !important;
  visibility: hidden !important; }

html body .accessibility,
html body .visuallyhidden,
html body #page .visuallyhidden {
  display: none; }

html body .hiddencell {
  text-indent: -1000em; }

html body .invisible {
  visibility: hidden; }

html body .invisiblepartial {
  visibility: hidden;
  text-indent: -1000em; }

.google-map-link {
  padding-left: 0.2em; }

html.touch .google-map-link {
  padding-left: 0em; }

.wrapper {
  position: relative; }

html.touch #page .desktop {
  display: none; }

html.no-touch #page .touch {
  display: none; }

@media (min-width: 1024px) {
  .mobile {
    display: none; } }
@media (max-width: 1023px) {
  .mobilehidden {
    display: none; } }
input,
textarea,
button,
select,
label,
a {
  -webkit-tap-highlight-color: transparent; }

/* =Vertical Rhythm
--------------------------------------------------------------------- */
body {
  font-family: "NTA", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 100%;
  line-height: 1.125em; }

html > body {
  font-size: 16px; }

@media (max-width: 480px) {
  body {
    font-family: "NTA", "Helvetica Neue", Arial, Helvetica, sans-serif;
    font-size: 75%;
    line-height: 1.16667em; }

  html > body {
    font-size: 12px; } }
.upper-text {
  text-transform: uppercase; }

.larger-text {
  font-size: larger; }

.smaller-text {
  font-size: smaller; }

/* =Form Placeholders
--------------------------------------------------------------------- */
#page ::-webkit-input-placeholder {
  font-family: "NTA", "Helvetica Neue", Arial, Helvetica, sans-serif;
  text-transform: none;
  color: #aaa; }

#page input:-moz-placeholder {
  font-family: "NTA", "Helvetica Neue", Arial, Helvetica, sans-serif;
  text-transform: none;
  color: #aaa; }

#page .placeholder {
  font-family: "NTA", "Helvetica Neue", Arial, Helvetica, sans-serif;
  text-transform: none;
  color: #aaa; }

/* =Headings
--------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6 {
  font-weight: bold; }

#main section h1 {
  font-size: 2em;
  line-height: 1.16667em; }

#main section h2 {
  font-size: 1.5em;
  line-height: 1.55556em; }

#main section h3 {
  font-size: 1.33333em;
  line-height: 1.75em; }

#main section h4 {
  font-size: 1.25em;
  line-height: 1.86667em; }

#main section h5 {
  font-size: 1.16667em;
  line-height: 2em; }

#main section h6 {
  font-size: 1.08333em;
  line-height: 2.15385em; }

#main section header h1 {
  font-size: 1.5em;
  line-height: 1.55556em; }

#main > header h1 {
  font-size: 1.5em;
  line-height: 1.55556em; }

#main > header h2 {
  font-size: 1.33333em;
  line-height: 1.75em; }

#main > div.page-header h1 {
  font-size: 1.5em;
  line-height: 1.55556em; }

#main > div.page-header h2 {
  font-size: 1.33333em;
  line-height: 1.75em; }

@media (max-width: 480px) {
  #main section h1 {
    font-size: 1.33333em;
    line-height: 1.75em; }

  #main section h2 {
    font-size: 1.16667em;
    line-height: 2em; }

  #main section h3,
  #main section h4,
  #main section h5,
  #main section h6 {
    font-size: 1em;
    line-height: 2.33333em; }

  #main section header h1 {
    font-size: 1.16667em;
    line-height: 2em; }

  #main > header h1 {
    font-size: 1.16667em;
    line-height: 2em; }

  #main > header h2 {
    font-size: 1em;
    line-height: 2.33333em; } }
/* =Paragraphs
--------------------------------------------------------------------- */
.formatting p,
.formatting li,
.formatting dt,
.formatting dd {
  margin: 0.58333em 0;
  word-break: hyphenate;
  hyphenate: auto;
  hyphenate-before: 4;
  hyphenate-lines: 3;
  word-break: break-word; }

.formatting dd {
  display: block;
  float: left;
  margin-left: 5px; }

.formatting dt {
  display: block;
  float: left;
  clear: left;
  width: 10em; }

.formatting p:first-of-type {
  margin-top: 1.16667em; }

.formatting p:last-of-type {
  margin-bottom: 1.16667em; }

div.help div.formatting p {
  color: #666; }

div.onscreen-help p:first-of-type {
  margin-top: .563em; }

div.onscreen-help p:last-of-type {
  margin-bottom: .563em; }

div.email-summary p:first-of-type {
  margin-top: .563em; }

div.email-summary p:last-of-type {
  margin-bottom: .563em; }

.formatting p:only-of-type {
  margin: 0.58333em 0; }

.formatting ul,
.formatting ol {
  margin-left: 1.25em; }

.formatting ol li {
  list-style: decimal; }

.formatting ul li {
  list-style: square; }

.formatting dt {
  font-weight: bold; }

.formatting abbr.caps {
  padding: 0 2px;
  font: bold small-caps 1.2em/1% Arial, sans-serif;
  letter-spacing: 1px;
  text-transform: lowercase; }

/* ---------------------------------------------------------------------
§:Quotations
--------------------------------------------------------------------- */
blockquote, q {
  quotes: none; }

/* Safari doesn't support the quotes attribute, so we do this instead. */
blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none; }

/* =Standard Quotes
--------------------------------------------------------------------- */
q {
  quotes: '\201C' '\201D' '\2018' '\2019'; }

q:before {
  content: open-quote; }

q:after {
  content: close-quote; }

/* Safari support */
q:before {
  content: '\201C'; }

q:after {
  content: '\201D'; }

q q:before {
  content: '\2018'; }

q q:after {
  content: '\2019'; }

/* =Blockquotes
--------------------------------------------------------------------- */
blockquote * {
  quotes: none; }

blockquote > * {
  position: relative; }

blockquote > *:before {
  position: absolute;
  right: 100%;
  content: '\201C'; }

blockquote > *:after {
  content: '\201D'; }

blockquote q:before {
  content: '\2018'; }

blockquote q:after {
  content: '\2019'; }

#main {
  max-width: 960px;
  position: relative;
  margin: 0;
  background: white; }
  #main:after {
    display: block;
    clear: both;
    height: 0;
    content: "\2003"; }
  @media (min-width: 768px) {
    #main {
      margin: 1em auto 0;
      border-top: 2px solid #2DA096;
      background: #fff; } }

#main > section {
  position: relative;
  padding: 0;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  @media (min-width: 1025px) {
    #main > section {
      display: inline;
      float: left;
      width: 81.37105%;
      margin: 0 0.98114%;
      margin-left: 9.31448%; } }
@media (min-width: 769px) and (max-width: 1024px) {
  #main > section {
    display: inline;
    float: left;
    width: 64.70438%;
    margin: 0 0.98114%;
    margin-left: 17.64781%;
    margin-right: 17.64781%; } }

@media (min-width: 481px) and (max-width: 768px) {
  #main > section {
    display: inline;
    float: left;
    width: 81.37105%;
    margin: 0 0.98114%;
    margin-left: 9.31448%;
    margin-right: 9.31448%; } }

  @media (max-width: 480px) {
    #main > section {
      padding: 0 1em; } }

@media (min-width: 1025px) {
  #page-choose-test-type #main > section,
  #page-driving-licence-number #main > section,
  #page-change-special-needs #main > section,
  #page-your-details #main > section,
  #page-login #main > section,
  #page-confirm-cancellation #main > section {
    display: inline;
    float: left;
    width: 48.03772%;
    margin: 0 0.98114%;
    margin-left: 9.31448%; } }

#page-choose-test-type #main > section,
#page-ibs-summary #main > section {
  margin-top: 1.16667em; }

#main > section {
  margin-bottom: 2.33333em; }

#page-choose-test-type #main > section,
#page-driving-licence-number #main > section,
#page-change-special-needs #main > section,
#page-login #main > section,
#page-confirm-cancellation #main > section {
  margin-bottom: 2.33333em; }

#page-alternative-centres #main > section,
#page-test-centre-search #main > section,
#page-test-centre-search-results #main > section,
#page-available-time #main > section,
#page-confirm-booking #main > section,
#page-confirmation #main > section,
#page-ibs-summary #main > section,
#page-refund-fail #main > section,
#page-confirm-changes #main > section,
#page-instructor-unavailable #main > section,
#page-more-info-dob #main > section,
#page-choose-test-type #main > section,
#page-test-preferences #main > section,
#page-your-details #main > section,
#main section.secure {
  margin-bottom: 1.16667em; }

#page-short-notice-slots-search #main > section {
  padding-bottom: 1.16667em; }

#page-short-notice-slots-search #main #short-notice-slots-search #short-notice-slots-search-postcode {
  margin-bottom: 1.16667em; }
  @media (min-width: 1025px) {
    #page-short-notice-slots-search #main #short-notice-slots-search #short-notice-slots-search-postcode {
      display: inline;
      float: left;
      width: 39.70438%;
      margin: 0 0.98114%; } }
@media (min-width: 769px) and (max-width: 1024px) {
  #page-short-notice-slots-search #main #short-notice-slots-search #short-notice-slots-search-postcode {
    display: inline;
    float: left;
    width: 48.03772%;
    margin: 0 0.98114%; } }

#page-short-notice-slots-search #main #short-notice-slots-search #short-notice-slots-search-distance {
  margin-bottom: 1.16667em; }
  @media (min-width: 1025px) {
    #page-short-notice-slots-search #main #short-notice-slots-search #short-notice-slots-search-distance {
      display: inline;
      float: left;
      width: 27.20438%;
      margin: 0 0.98114%; } }
@media (min-width: 769px) and (max-width: 1024px) {
  #page-short-notice-slots-search #main #short-notice-slots-search #short-notice-slots-search-distance {
    display: inline;
    float: left;
    width: 39.70438%;
    margin: 0 0.98114%;
    margin-left: 9.31448%;
    margin-bottom: 1.16667em; } }

#page-short-notice-slots-search #main #short-notice-slots-search #short-notice-slots-search-submit {
  display: inline;
  float: left;
  width: 98.03772%;
  margin: 0 0.98114%; }
#page-short-notice-slots-search #main #short-notice-slots-search #short-notice-slots-search-return {
  display: inline;
  float: left;
  width: 98.03772%;
  margin: 0 0.98114%; }

@media (min-width: 1024px) {
  html body .fl {
    float: left;
    clear: none;
    margin-right: 2.5em;
    width: auto; }

  html body .fr {
    float: right;
    clear: none;
    margin-left: 2.5em;
    width: auto; }

  body#page-choose-test-type #main {
    min-height: 610px; } }
@media (min-width: 481px) and (max-width: 1023px) {
  body#page-choose-test-type #main {
    min-height: 610px; } }
#header-button-container {
  margin-left: auto;
  margin-right: 0;
  white-space: nowrap; }

#page-confirmation #header-title, #page-cannot-continue #header-title {
  display: inline;
  float: left;
  width: 56.37105%;
  margin: 0 0.98114%; }
#page-confirmation #header-buttons, #page-cannot-continue #header-buttons {
  display: inline;
  float: left;
  width: 39.70438%;
  margin: 0 0.98114%; }
  @media (max-width: 639px) {
    #page-confirmation #header-buttons, #page-cannot-continue #header-buttons {
      margin-top: 0.5em; } }
#page-confirmation #header-button-container, #page-cannot-continue #header-button-container {
  width: 10em; }

#page-ibs-summary #main header.booking-change-complete #header-title {
  display: inline;
  float: left;
  width: 48.03772%;
  margin: 0 0.98114%; }
#page-ibs-summary #main header.booking-change-complete #header-buttons {
  display: inline;
  float: left;
  width: 48.03772%;
  margin: 0 0.98114%; }
#page-ibs-summary #main header.booking-change-complete #header-button-container {
  width: 17em; }
  @media (max-width: 480px) {
    #page-ibs-summary #main header.booking-change-complete #header-button-container {
      width: 13em; } }
  #page-ibs-summary #main header.booking-change-complete #header-button-container a.button {
    margin-left: 0.5em;
    letter-spacing: 0.5px; }
    @media (max-width: 639px) {
      #page-ibs-summary #main header.booking-change-complete #header-button-container a.button {
        margin: 0 0;
        margin-left: 0.2em;
        margin-top: 0.5em; } }
#page-ibs-summary #main header.booking-change-incomplete #header-title {
  display: inline;
  float: left;
  width: 56.37105%;
  margin: 0 0.98114%; }
#page-ibs-summary #main header.booking-change-incomplete #header-buttons {
  display: inline;
  float: left;
  width: 39.70438%;
  margin: 0 0.98114%; }
  @media (max-width: 639px) {
    #page-ibs-summary #main header.booking-change-incomplete #header-buttons {
      margin-top: 0.5em; } }
#page-ibs-summary #main header.booking-change-incomplete #header-button-container {
  width: 10em; }
  @media (max-width: 639px) {
    #page-ibs-summary #main header.booking-change-incomplete #header-button-container a.button {
      margin-left: 5em; } }

ul.button-board li {
  margin-bottom: .5em; }

ul.button-board input.button {
  text-align: left; }

input[type="submit"] {
  -webkit-appearance: none; }

button,
input.button,
a.button,
ul.button-board > li > a {
  position: relative;
  top: -2px;
  display: inline-block;
  border: 1px solid #ccc;
  border-bottom-color: #bbb;
  -moz-border-radius: 4px 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px 4px;
  padding: .5em;
  width: 100%;
  -moz-box-shadow: 0 2px #c3c3c3;
  -webkit-box-shadow: 0 2px #c3c3c3;
  box-shadow: 0 2px #c3c3c3;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-family: inherit;
  font-size: 80%;
  font-weight: bold;
  letter-spacing: 1px;
  text-decoration: none;
  color: #444;
  background: #fafafa;
  background-image: url(../img/test-type.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
  background-image: url(../img/test-type.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  cursor: pointer; }
  button:active,
  input.button:active,
  a.button:active,
  ul.button-board > li > a:active {
    -moz-box-shadow: 0 0 #1C7F73;
    -webkit-box-shadow: 0 0 #1C7F73;
    box-shadow: 0 0 #1C7F73; }
  button:focus,
  input.button:focus,
  a.button:focus,
  ul.button-board > li > a:focus {
    outline: 3px solid #fc0; }
  @media (max-width: 480px) {
    button,
    input.button,
    a.button,
    ul.button-board > li > a {
      top: 0;
      padding: .25em .5em; } }

button {
  width: auto; }

button.cta-floatright,
input.cta-floatright,
a.cta-floatright,
span.button-floatright {
  float: right; }

button.cta,
input.cta,
a.cta,
span.button {
  display: inline-block;
  border: none;
  -moz-border-radius: 3px 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px 3px;
  padding: 0.45em 2.5em 0.45em 0.5em;
  -moz-box-shadow: 0 3px 0 #000;
  -webkit-box-shadow: 0 3px 0 #000;
  box-shadow: 0 3px 0 #000;
  width: auto;
  font: 400 2.4rem/0.66667;
  text-decoration: none;
  color: white;
  background: #008270 url(../img/button-next.png) no-repeat 100% 50%;
  background-size: 30px 19px;
  -moz-background-size: 30px 19px;
  cursor: pointer; }
  button.cta:active,
  input.cta:active,
  a.cta:active,
  span.button:active {
    -moz-transform: translate(0, 2px);
    -ms-transform: translate(0, 2px);
    -webkit-transform: translate(0, 2px);
    transform: translate(0, 2px); }
  button.cta:focus,
  input.cta:focus,
  a.cta:focus,
  span.button:focus {
    outline: 3px solid #fc0; }

button.cta-lookdisabled,
input.cta-lookdisabled,
a.cta-lookdisabled,
span.button-lookdisabled {
  background: #707070 no-repeat 100% 50%; }

.parent-input-submit {
  position: relative; }

.child-separate-image {
  position: absolute;
  top: 7px;
  left: 93px; }

html.touch button.cta,
html.touch input.cta,
html.touch a.cta,
html.touch button.dialog-cancel {
  padding: 1.5em 3.5em 1.5em .75em;
  width: 100%;
  margin-bottom: 1.5em; }
html.touch input.button:not(.cta) {
  padding: 1.2em 1em 1em;
  background: #fafafa;
  background-image: url(../img/test-type.png), -webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), color-stop(25%, #f5f5f5), to(#e3e3e3));
  background-image: url(../img/test-type.png), -webkit-linear-gradient(#f5f5f5, #f5f5f5 25%, #e3e3e3);
  background-image: url(../img/test-type.png), -moz-linear-gradient(top, #f5f5f5, #f5f5f5 25%, #e3e3e3);
  background-image: url(../img/test-type.png), -ms-linear-gradient(#f5f5f5, #f5f5f5 25%, #e3e3e3);
  background-image: url(../img/test-type.png), -o-linear-gradient(#f5f5f5, #f5f5f5 25%, #e3e3e3);
  background-image: url(../img/test-type.png), linear-gradient(#f5f5f5, #f5f5f5 25%, #e3e3e3);
  background-repeat: no-repeat;
  background-position: 100% 50%; }

ul.button-board input,
ul.button-board > li > a {
  padding: 1.25em;
  font-size: 100%; }
  @media (max-width: 480px) {
    ul.button-board input,
    ul.button-board > li > a {
      padding: .75em 1.25em; } }

ul.button-board > li > a {
  background: #fafafa;
  background-image: url(../img/button-board-arrow.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
  background-image: url(../img/button-board-arrow.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/button-board-arrow.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/button-board-arrow.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/button-board-arrow.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/button-board-arrow.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-repeat: no-repeat;
  background-position: 100% 50%; }

ul.button-board a.warn {
  border: none;
  -moz-box-shadow: 0 3px #B4892D;
  -webkit-box-shadow: 0 3px #B4892D;
  box-shadow: 0 3px #B4892D;
  color: black;
  background: #FFC10E url(../img/button-board-arrow-warn.png) no-repeat 100% 50%; }
  ul.button-board a.warn:active {
    -moz-box-shadow: 0 0 #B4892D;
    -webkit-box-shadow: 0 0 #B4892D;
    box-shadow: 0 0 #B4892D; }

ul.button-board > li > a strong {
  display: block;
  font-size: .7rem; }

#main > div.page-header a.button {
  width: auto; }

#main > header a.button,
footer a.button {
  width: auto; }

@media (min-width: 481px) {
  ul.button-board > li {
    margin-bottom: 1em; }

  button,
  input.button,
  a.button,
  ul.button-board > li > input,
  ul.button-board > li > a {
    font-size: 100%; } }
/* Specific ID targetting */
#test-type-car, #test-type-car-short {
  font-family: inherit;
  position: relative;
  padding: 2em 1em;
  background: #fafafa;
  background-image: url(../img/test-type-car.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
  background-image: url(../img/test-type-car.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-car.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-car.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-car.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-car.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-repeat: no-repeat;
  background-position: 100% 50%; }

#test-type-car-short {
  display: none; }

@media (max-width: 479px) {
  #test-type-car {
    display: none; }

  #test-type-car-short {
    display: block; } }
#test-type-car-trailer {
  font-family: inherit;
  position: relative;
  background: #fafafa;
  background-image: url(../img/test-type-car-trailer.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
  background-image: url(../img/test-type-car-trailer.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-car-trailer.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-car-trailer.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-car-trailer.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-car-trailer.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-repeat: no-repeat;
  background-position: 100% 50%; }

#test-type-bike,
#main label[for="test-type-bike"] {
  font-family: inherit;
  font-weight: bold;
  background: #fafafa;
  background-image: url(../img/test-type-bike.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
  background-image: url(../img/test-type-bike.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-bike.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-bike.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-bike.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-bike.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  overflow: visible; }

#test-type-lorry,
#main label[for="test-type-lorry"] {
  font-family: inherit;
  font-weight: bold;
  background: #fafafa;
  background-image: url(../img/test-type-lorry.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
  background-image: url(../img/test-type-lorry.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-lorry.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-lorry.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-lorry.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-lorry.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  overflow: visible; }

#test-type-bus,
#main label[for="test-type-bus"] {
  font-family: inherit;
  font-weight: bold;
  background: #fafafa;
  background-image: url(../img/test-type-bus.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
  background-image: url(../img/test-type-bus.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-bus.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-bus.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-bus.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-bus.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  overflow: visible; }

#test-type-other,
#main label[for="test-type-other"] {
  font-family: inherit;
  font-weight: bold;
  background: #fafafa;
  background-image: url(../img/test-type-other.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
  background-image: url(../img/test-type-other.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-other.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-other.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-other.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/test-type-other.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  overflow: visible; }

#earlier-availability,
#later-availability {
  display: block;
  overflow: hidden;
  text-align: left;
  text-indent: -999em;
  background-repeat: no-repeat;
  direction: ltr;
  float: right;
  width: 32px; }

#date-chosen,
#earlier-availability {
  float: left; }

#earlier-availability {
  background: #fafafa;
  background-image: url(../img/arrow-left.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
  background-image: url(../img/arrow-left.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/arrow-left.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/arrow-left.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/arrow-left.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/arrow-left.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-position: 50% 50%; }

#later-availability {
  background: #fafafa;
  background-image: url(../img/arrow-right.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
  background-image: url(../img/arrow-right.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/arrow-right.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/arrow-right.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/arrow-right.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-image: url(../img/arrow-right.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  margin-left: .5em;
  background-position: 50% 50%; }

#change-calendar-date {
  width: auto; }

@media (max-width: 480px) {
  #change-test-centre {
    margin-top: 2px; } }

#test-availability nav a.button {
  padding: 1em .5em; }
  @media (max-width: 480px) {
    #test-availability nav a.button {
      padding: .25em .5em; } }

#load-availability.button {
  background: #fafafa;
  background-image: url(../img/cta.png), -webkit-gradient(linear, 0 0, 0 100%, from(#e4e4e4), color-stop(25%, #e4e4e4), to(#f5f5f5));
  background-image: url(../img/cta.png), -webkit-linear-gradient(#e4e4e4, #e4e4e4 25%, #f5f5f5);
  background-image: url(../img/cta.png), -moz-linear-gradient(top, #e4e4e4, #e4e4e4 25%, #f5f5f5);
  background-image: url(../img/cta.png), -ms-linear-gradient(#e4e4e4, #e4e4e4 25%, #f5f5f5);
  background-image: url(../img/cta.png), -o-linear-gradient(#e4e4e4, #e4e4e4 25%, #f5f5f5);
  background-image: url(../img/cta.png), linear-gradient(#e4e4e4, #e4e4e4 25%, #f5f5f5);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  margin-bottom: .5em;
  padding: 1em 0;
  text-align: center; }

#load-availability.button em {
  display: inline-block;
  padding: 2px 38px 2px 0;
  font-style: normal;
  background: url(../img/load-more.png) no-repeat 100% 50%; }

#contextual-help a.button {
  padding: 1em 1.25em;
  text-align: center; }

@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) {
  #test-type-car, #test-type-car-short {
    font-family: inherit;
    background: #fafafa;
    background-image: url(../img/retina/test-type-car.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
    background-image: url(../img/retina/test-type-car.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-car.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-car.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-car.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-car.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-size: 129px 40px, 100% 100%; }

  #test-type-car-trailer {
    font-family: inherit;
    background: #fafafa;
    background-image: url(../img/retina/test-type-car-trailer.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
    background-image: url(../img/retina/test-type-car-trailer.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-car-trailer.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-car-trailer.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-car-trailer.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-car-trailer.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-size: 129px 40px, 100% 100%; }

  #test-type-bike {
    font-family: inherit;
    background: #fafafa;
    background-image: url(../img/retina/test-type-bike.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
    background-image: url(../img/retina/test-type-bike.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-bike.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-bike.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-bike.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-bike.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-size: 119px 40px, 100% 100%; }

  #test-type-lorry,
  #main label[for="test-type-lorry"] {
    font-family: inherit;
    background: #fafafa;
    background-image: url(../img/test-type-lorry.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
    background-image: url(../img/test-type-lorry.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-lorry.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-lorry.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-lorry.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-lorry.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-size: 119px 40px, 100% 100%; }

  #test-type-bus,
  #main label[for="test-type-bus"] {
    font-family: inherit;
    background: #fafafa;
    background-image: url(../img/test-type-bus.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
    background-image: url(../img/test-type-bus.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-bus.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-bus.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-bus.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-bus.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-size: 119px 40px, 100% 100%; }

  #test-type-other {
    font-family: inherit;
    background: #fafafa;
    background-image: url(../img/retina/test-type-other.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
    background-image: url(../img/retina/test-type-other.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-other.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-other.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-other.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/retina/test-type-other.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-size: 184px 40px, 100% 100%; } }
@media (max-width: 480px) {
  #test-type-bike,
  #main label[for="test-type-bike"] {
    font-family: inherit;
    background: #fafafa;
    background-image: url(../img/test-type-bike.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
    background-image: url(../img/test-type-bike.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-bike.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-bike.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-bike.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-bike.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    -webkit-transition: background 1s; } }
  @media (max-width: 480px) and (-webkit-min-device-pixel-ratio: 1.5), (max-width: 480px) and (min-resolution: 144dpi) {
    #test-type-bike,
    #main label[for="test-type-bike"] {
      background: #fafafa;
      background-image: url(../img/retina/test-type-bike.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
      background-image: url(../img/retina/test-type-bike.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-bike.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-bike.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-bike.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-bike.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-repeat: no-repeat;
      background-position: 100% 50%;
      background-size: 119px 40px, 100% 100%; } }
@media (max-width: 480px) {
    #test-type-bike:focus,
    #main label[for="test-type-bike"]:focus {
      background-position: 100%, 200%, 0; }

  #test-type-lorry,
  #main label[for="test-type-lorry"] {
    font-family: inherit;
    background: #fafafa;
    background-image: url(../img/test-type-lorry.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
    background-image: url(../img/test-type-lorry.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-lorry.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-lorry.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-lorry.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-lorry.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    -webkit-transition: background 1s; } }
  @media (max-width: 480px) and (-webkit-min-device-pixel-ratio: 1.5), (max-width: 480px) and (min-resolution: 144dpi) {
    #test-type-lorry,
    #main label[for="test-type-lorry"] {
      background: #fafafa;
      background-image: url(../img/retina/test-type-lorry.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
      background-image: url(../img/retina/test-type-lorry.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-lorry.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-lorry.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-lorry.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-lorry.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-repeat: no-repeat;
      background-position: 100% 50%;
      background-size: 119px 40px, 100% 100%; } }
@media (max-width: 480px) {
    #test-type-lorry:focus,
    #main label[for="test-type-lorry"]:focus {
      background-position: 100%, 200%, 0; }

  #test-type-bus,
  #main label[for="test-type-bus"] {
    font-family: inherit;
    background: #fafafa;
    background-image: url(../img/test-type-bus.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
    background-image: url(../img/test-type-bus.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-bus.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-bus.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-bus.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-bus.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    -webkit-transition: background 1s; } }
  @media (max-width: 480px) and (-webkit-min-device-pixel-ratio: 1.5), (max-width: 480px) and (min-resolution: 144dpi) {
    #test-type-bus,
    #main label[for="test-type-bus"] {
      background: #fafafa;
      background-image: url(../img/retina/test-type-bus.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
      background-image: url(../img/retina/test-type-bus.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-bus.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-bus.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-bus.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-bus.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-repeat: no-repeat;
      background-position: 100% 50%;
      background-size: 119px 40px, 100% 100%; } }
@media (max-width: 480px) {
    #test-type-bus:focus,
    #main label[for="test-type-bus"]:focus {
      background-position: 100%, 200%, 0; }

  #test-type-other,
  #main label[for="test-type-other"] {
    font-family: inherit;
    background: #fafafa;
    background-image: url(../img/test-type-other.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
    background-image: url(../img/test-type-other.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-other.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-other.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-other.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type-other.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    -webkit-transition: background 1s; } }
  @media (max-width: 480px) and (-webkit-min-device-pixel-ratio: 1.5), (max-width: 480px) and (min-resolution: 144dpi) {
    #test-type-other,
    #main label[for="test-type-other"] {
      background: #fafafa;
      background-image: url(../img/retina/test-type-other.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
      background-image: url(../img/retina/test-type-other.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-other.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-other.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-other.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-image: url(../img/retina/test-type-other.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
      background-repeat: no-repeat;
      background-position: 100% 50%;
      background-size: 184px 40px, 100% 100%; } }
@media (max-width: 480px) {
    #test-type-other:focus,
    #main label[for="test-type-other"]:focus {
      background-position: 100%, 200%, 0; } }
@media (min-width: 481px) {
  #test-availability nav a.button {
    padding: .5em 1em; } }
legend {
  padding-bottom: .5em;
  font-weight: bold; }

legend em {
  font-style: normal;
  font-weight: normal; }

fieldset {
  margin: 1em 0 2em;
  position: relative; }

label.form-block,
div.form-block {
  display: block;
  clear: both;
  margin: 1em 0; }
  label.form-block:after,
  div.form-block:after {
    display: block;
    clear: both;
    height: 0;
    content: "\2003"; }

label.form-block.hidden,
div.form-block.hidden {
  display: none !important;
  visibility: hidden !important; }

span.label {
  display: inline-block;
  margin-bottom: .5em;
  font-weight: bold; }

.calendar span.label {
  display: block; }

span.label a,
legend a {
  display: inline-block;
  margin: .5em 0 0 2em;
  font-weight: normal; }

html.no-js span.label.visuallyhidden {
  position: static; }

span.label em {
  font-style: normal;
  font-weight: normal; }

.radio-group > label span.label,
.radio-group div.expanded-options > label span.label,
.checkbox-singular span.label,
.checkbox-singular div.expanded-options > label span.label,
.checkbox-group > label span.label,
.checkbox-group div.expanded-options > label span.label {
  display: inline;
  margin: 0 0 0 .5em;
  font-weight: normal; }

body#page-choose-test-type fieldset.radio-group.toggle {
  margin-bottom: .5em; }

body#page-choose-test-type div.form-block:first-of-type {
  margin-top: 0; }

@media (max-width: 480px) {
  label.form-block,
  div.form-block {
    margin: 0 0 .5em; } }
.or {
  float: left;
  margin: 1.5em 2.5em 0 0;
  text-transform: uppercase; }

#engine-cc,
#engine-power {
  display: inline; }

#postcode-lookup div.form-block label {
  display: inline-block;
  padding-right: 0; }

div.search label {
  margin-bottom: 1em; }

fieldset.error {
  border: 1px solid #C65F5A;
  padding: 1em; }

fieldset.error label.error span.label {
  font-weight: bold;
  color: #8F1812; }

div.contextual-help label {
  position: relative;
  display: table-cell;
  padding-right: .5em;
  margin-bottom: .1em;
  width: 27em; }

.contextual-help p {
  clear: both; }

.contextual-help a {
  padding: .1em 0 .1em 0; }
  .contextual-help a.more {
    display: block;
    padding-left: 2em;
    background: url(../img/show-more-arrow.png) no-repeat; }
    @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5) {
      .contextual-help a.more {
        background-image: url(../img/retina/show-more-arrow.png);
        background-size: 20px 20px; } }
    @media (max-width: 480px) {
      .contextual-help a.more {
        padding-bottom: .5em; } }

.contextual-help a.active {
  background-image: url(../img/show-more-arrow-down.png); }
  @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5) {
    .contextual-help a.active {
      background-image: url(../img/retina/show-more-arrow-down.png);
      background-size: 20px 20px; } }

div.example label {
  display: block;
  float: left;
  padding-right: 0;
  width: 88%; }

#security-code-help label {
  width: auto; }

div.textarea div.help {
  vertical-align: top; }

small.example {
  display: block;
  clear: both;
  margin-top: .5em; }

div.onscreen-help {
  border: 1px solid #93A1A1;
  padding: 1.5em 1em 0.75em 3.5em;
  margin-bottom: 2em;
  min-height: 1.75em;
  background: url(../img/onscreen-help.png) 0.5em 1em no-repeat; }
  @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5) {
    div.onscreen-help {
      background-image: url(../img/retina/info-icon.png) 0.5em 1.5em no-repeat;
      background-size: 32px 32px; } }

div.email-summary {
  border: 1px solid #93A1A1;
  padding: 1em 1em 0.75em 3.8em;
  margin-bottom: 2em;
  min-height: 1.75em;
  background: url(../img/mail-icon.png) 0.5em 1em no-repeat; }
  @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5) {
    div.email-summary {
      background-image: url(../img/retina/mail-icon.png);
      background-size: 24px 24px; } }

@media (min-width: 481px) {
  fieldset.contextual-help legend {
    width: auto;
    margin-right: -50px;
    white-space: pre-wrap; }

  div.example label {
    width: 100%; }

  a.more {
    display: block;
    margin: .5em 0;
    width: 100%; } }
fieldset.radio-group div.expanded-options:after {
  display: block;
  clear: both;
  height: 0;
  content: "\2003"; }

fieldset.radio-group div.expanded-options.checked {
  display: block;
  float: left; }

@media (min-width: 481px) {
  fieldset.radio-group > label {
    display: block;
    clear: both;
    padding: .25em 0; }
    fieldset.radio-group > label input:focus {
      outline: 3px solid #fc0; } }
@media (max-width: 1024px) {
  fieldset.radio-group > legend {
    width: 100%; }

  html.touch fieldset.radio-group > legend {
    width: 89.5%; }
  html.touch fieldset.radio-group > label,
  html.touch fieldset.radio-group div.expanded-options > label {
    display: block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
  html.touch fieldset.radio-group div.expanded-options {
    border: 1px solid #ccc;
    border-bottom: none; }
  html.touch fieldset.radio-group label:last-child,
  html.touch fieldset.radio-group div.expanded-options:last-child {
    border-bottom: 1px solid #ccc; }
  html.touch fieldset.radio-group.toggle label {
    float: left;
    clear: none;
    width: 50%;
    background: #fafafa;
    background-image: url(../img/test-type.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
    background-image: url(../img/test-type.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/test-type.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    font-size: .85rem;
    color: #999; }
  html.touch fieldset.radio-group label:first-of-type {
    -moz-border-radius-topleft: 4px;
    -webkit-border-top-left-radius: 4px;
    border-top-left-radius: 4px;
    -moz-border-radius-topright: 4px;
    -webkit-border-top-right-radius: 4px;
    border-top-right-radius: 4px; }
  html.touch fieldset.radio-group label:last-child,
  html.touch fieldset.radio-group div.expanded-options:last-child {
    -moz-border-radius-bottomleft: 4px;
    -webkit-border-bottom-left-radius: 4px;
    border-bottom-left-radius: 4px;
    -moz-border-radius-bottomright: 4px;
    -webkit-border-bottom-right-radius: 4px;
    border-bottom-right-radius: 4px; }
  html.touch fieldset.radio-group div.expanded-options:last-child label {
    border: none;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    -moz-border-radius-topright: 0;
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
    -moz-border-radius-topleft: 0;
    -webkit-border-top-left-radius: 0;
    border-top-left-radius: 0; }
  html.touch fieldset.radio-group.toggle label:first-of-type {
    border-right: none;
    -moz-border-radius-topright: 0;
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
    -moz-border-radius-bottomleft: 4px;
    -webkit-border-bottom-left-radius: 4px;
    border-bottom-left-radius: 4px; }
  html.touch fieldset.radio-group.toggle label:last-child {
    -moz-border-radius-bottomleft: 0;
    -webkit-border-bottom-left-radius: 0;
    border-bottom-left-radius: 0;
    -moz-border-radius-topright: 4px;
    -webkit-border-top-right-radius: 4px;
    border-top-right-radius: 4px; }
  html.touch fieldset.radio-group > label, html.touch fieldset.radio-group div.expanded-options > label {
    padding: .75em 1em .75em 2.5em;
    border: 1px solid #ccc;
    border-bottom: none; }
  html.touch fieldset.radio-group:not(.toggle) label {
    background: url(../img/radio-button.png) no-repeat 8px 50%; }
  html.touch body fieldset.radio-group label.checked {
    background: #fafafa;
    background-image: url(../img/tick.png), -webkit-gradient(linear, 0 0, 0 100%, from(#28a197), color-stop(25%, #28a197), to(#28a197));
    background-image: url(../img/tick.png), -webkit-linear-gradient(#28a197, #28a197 25%, #28a197);
    background-image: url(../img/tick.png), -moz-linear-gradient(top, #28a197, #28a197 25%, #28a197);
    background-image: url(../img/tick.png), -ms-linear-gradient(#28a197, #28a197 25%, #28a197);
    background-image: url(../img/tick.png), -o-linear-gradient(#28a197, #28a197 25%, #28a197);
    background-image: url(../img/tick.png), linear-gradient(#28a197, #28a197 25%, #28a197);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-position: 0 50%;
    color: white; }
  html.touch body fieldset.radio-group label.unchecked {
    background: url(../img/radio-button.png) no-repeat 8px 50%; }
  html.touch fieldset.radio-group label.checked.error {
    background: #fafafa;
    background-image: url(../img/tick.png), -webkit-gradient(linear, 0 0, 0 100%, from(#C65F5A), color-stop(25%, #C65F5A), to(#8F1812));
    background-image: url(../img/tick.png), -webkit-linear-gradient(#C65F5A, #C65F5A 25%, #8F1812);
    background-image: url(../img/tick.png), -moz-linear-gradient(top, #C65F5A, #C65F5A 25%, #8F1812);
    background-image: url(../img/tick.png), -ms-linear-gradient(#C65F5A, #C65F5A 25%, #8F1812);
    background-image: url(../img/tick.png), -o-linear-gradient(#C65F5A, #C65F5A 25%, #8F1812);
    background-image: url(../img/tick.png), linear-gradient(#c65f5a, #c65f5a 25%, #8f1812);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-position: 0 50%;
    color: white; }
  html.touch fieldset.radio-group label.unchecked.error {
    background: url(../img/radio-button.png) no-repeat 8px 50%; }
  html.touch fieldset.error label.checked.error span.label {
    font-weight: bold;
    color: white; }
  html.touch fieldset.radio-group.toggle label {
    background-position: 100% 50%;
    border-bottom: 1px solid #bbb;
    padding: .5em 1em .75em 2em; }
  html.touch fieldset.radio-group.toggle label #radio-gb,
  html.touch fieldset.radio-group.toggle label #radio-ni {
    padding-left: 15px; }
  html.touch fieldset.radio-group div.expanded-options.checked label {
    color: black;
    background: none; }
  html.touch fieldset.radio-group div.expanded-options.checked {
    background: #ccc;
    background-image: url(../img/tick.png), -webkit-gradient(linear, 0 0, 0 100%, from(#28a197), color-stop(15%, #28a197), color-stop(15%, #f5f5f5), to(#f5f5f5));
    background-image: url(../img/tick.png), -webkit-linear-gradient(top, #28a197, #28a197 15%, #f5f5f5 15%, #f5f5f5);
    background-image: url(../img/tick.png), -moz-linear-gradient(top, #28a197, #28a197 15%, #f5f5f5 15%, #f5f5f5);
    background-image: url(../img/tick.png), -ms-linear-gradient(#28a197, #28a197 15%, #f5f5f5 15%, #f5f5f5);
    background-image: url(../img/tick.png), -o-linear-gradient(#28a197, #28a197 15%, #f5f5f5 15%, #f5f5f5);
    background-image: url(../img/tick.png), linear-gradient(to bottom, #28a197, #28a197 15%, #f5f5f5 15%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 0 .75em, 0 0, 0 0; }
  html.touch fieldset.radio-group div.expanded-options.unchecked {
    background: url(../img/radio-button.png) no-repeat 8px 50%; }
  html.touch #page-test-preferences fieldset.radio-group div.expanded-options.checked {
    background: #ccc;
    background-image: url(../img/tick.png), -webkit-gradient(linear, 0 0, 0 100%, from(#28a197), color-stop(40%, #28a197), color-stop(40%, #f5f5f5), to(#f5f5f5));
    background-image: url(../img/tick.png), -webkit-linear-gradient(top, #28a197, #28a197 40%, #f5f5f5 40%, #f5f5f5);
    background-image: url(../img/tick.png), -moz-linear-gradient(top, #28a197, #28a197 40%, #f5f5f5 40%, #f5f5f5);
    background-image: url(../img/tick.png), -ms-linear-gradient(#28a197, #28a197 40%, #f5f5f5 40%, #f5f5f5);
    background-image: url(../img/tick.png), -o-linear-gradient(#28a197, #28a197 40%, #f5f5f5 40%, #f5f5f5);
    background-image: url(../img/tick.png), linear-gradient(to bottom, #28a197, #28a197 40%, #f5f5f5 40%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 0 .75em, 0 0, 0 0;
    padding-bottom: 1em; }
  html.touch #page-test-preferences fieldset.radio-group div.expanded-options.unchecked {
    background: url(../img/radio-button.png) no-repeat 8px 50%; }
  html.touch #special-needs-radio-array div.expanded-options.checked {
    background: #ccc;
    background-image: url(../img/tick.png), -webkit-gradient(linear, 0 0, 0 100%, from(#28a197), color-stop(5.5%, #28a197), color-stop(5.5%, #f5f5f5), to(#f5f5f5));
    background-image: url(../img/tick.png), -webkit-linear-gradient(top, #28a197, #28a197 5.5%, #f5f5f5 5.5%, #f5f5f5);
    background-image: url(../img/tick.png), -moz-linear-gradient(top, #28a197, #28a197 5.5%, #f5f5f5 5.5%, #f5f5f5);
    background-image: url(../img/tick.png), -ms-linear-gradient(#28a197, #28a197 5.5%, #f5f5f5 5.5%, #f5f5f5);
    background-image: url(../img/tick.png), -o-linear-gradient(#28a197, #28a197 5.5%, #f5f5f5 5.5%, #f5f5f5);
    background-image: url(../img/tick.png), linear-gradient(to bottom, #28a197, #28a197 5.5%, #f5f5f5 5.5%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 0 .75em, 0 0, 0 0; }
  html.touch #special-needs-radio-array div.expanded-options.unchecked {
    background: url(../img/radio-button.png) no-repeat 8px 50%; }
  html.touch fieldset.radio-group div.expanded-options.checked > label {
    color: white; }
  html.touch fieldset.radio-group.toggle label.checked {
    background-position: 100% 50%; }
  html.touch fieldset.radio-group div.expanded-options div.further-options {
    padding: 1em; }

  html.no-touch fieldset.radio-group div.expanded-options > label {
    padding: .5em 1em .75em 0; }
  html.no-touch html.no-touch fieldset.radio-group > label, html.no-touch fieldset.radio-group div.expanded-options > label {
    border: none; }
  html.no-touch html.no-touch fieldset.radio-group div.expanded-options {
    border: none; } }
fieldset.checkbox-group label {
  display: flex;
  margin-bottom: .5em; }

fieldset.checkbox-group input {
  align-self: flex-start;
  margin-top: .25em;
  margin-right: 1.5em; }

fieldset.checkbox-group span.label {
  display: block;
  margin-left: 1.5em; }

@media (max-width: 1024px) {
  #main fieldset.checkbox-group label,
  label.checkbox-singular {
    display: flex;
    margin-bottom: .5em;
    border: 1px solid #ccc;
    border-bottom-color: #bbb;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    padding: .75em 1em;
    background: #fafafa;
    background-image: url(../img/cta.png), -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#f5f5f5));
    background-image: url(../img/cta.png), -webkit-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/cta.png), -moz-linear-gradient(top, #ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/cta.png), -ms-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/cta.png), -o-linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-image: url(../img/cta.png), linear-gradient(#ffffff, #ffffff 25%, #f5f5f5);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-image: url(../img/gradients/button.svg); }

  #main fieldset.checkbox-group label.checked,
  label.checkbox-singular.checked {
    background: #fafafa;
    background-image: url(../img/cta.png), -webkit-gradient(linear, 0 0, 0 100%, from(#cccccc), color-stop(25%, #cccccc), to(#b1b1b1));
    background-image: url(../img/cta.png), -webkit-linear-gradient(#cccccc, #cccccc 25%, #b1b1b1);
    background-image: url(../img/cta.png), -moz-linear-gradient(top, #cccccc, #cccccc 25%, #b1b1b1);
    background-image: url(../img/cta.png), -ms-linear-gradient(#cccccc, #cccccc 25%, #b1b1b1);
    background-image: url(../img/cta.png), -o-linear-gradient(#cccccc, #cccccc 25%, #b1b1b1);
    background-image: url(../img/cta.png), linear-gradient(#cccccc, #cccccc 25%, #b1b1b1);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-image: url(../img/gradients/checked.svg); }

  #main fieldset.checkbox-group span.label {
    margin-left: 2.5em; }

  fieldset.checkbox-group input {
    margin-top: 0;
    margin-right: 2.5em; } }
label[for*="test-type"],
label[for="relationships"],
label.select {
  position: relative;
  overflow: hidden;
  display: block;
  border: 1px solid #ccc;
  border-bottom-color: #bbb;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  width: 100%;
  min-height: 2.5em;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #fafafa;
  background-image: url(../img/select.png), -webkit-gradient(linear, 0 0, 0 100%, from(#e4e4e4), color-stop(25%, #e4e4e4), to(#f5f5f5));
  background-image: url(../img/select.png), -webkit-linear-gradient(#e4e4e4, #e4e4e4 25%, #f5f5f5);
  background-image: url(../img/select.png), -moz-linear-gradient(top, #e4e4e4, #e4e4e4 25%, #f5f5f5);
  background-image: url(../img/select.png), -ms-linear-gradient(#e4e4e4, #e4e4e4 25%, #f5f5f5);
  background-image: url(../img/select.png), -o-linear-gradient(#e4e4e4, #e4e4e4 25%, #f5f5f5);
  background-image: url(../img/select.png), linear-gradient(#e4e4e4, #e4e4e4 25%, #f5f5f5);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  -moz-box-shadow: rgba(255, 255, 255, 0.2) 0 1px 0 inset, rgba(0, 0, 0, 0.05) 0 1px 2px;
  -webkit-box-shadow: rgba(255, 255, 255, 0.2) 0 1px 0 inset, rgba(0, 0, 0, 0.05) 0 1px 2px;
  box-shadow: rgba(255, 255, 255, 0.2) 0 1px 0 inset, rgba(0, 0, 0, 0.05) 0 1px 2px;
  cursor: pointer; }

label.select {
  overflow: visible;
  margin-top: 2em; }

span.overflow {
  position: relative;
  overflow: hidden;
  display: block;
  width: 100%;
  height: 2.5em; }

span.focusable-select {
  overflow: visible; }

label.select.short {
  width: 9em; }

label.select.month {
  width: 12em; }

select {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: .3em 0 0 1.25em;
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 1em;
  letter-spacing: 1px;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
  color: #444;
  cursor: pointer;
  appearance: normal;
  -webkit-appearance: none;
  -moz-appearance: radio-container; }
  select:focus {
    outline: 3px solid #fc0; }

label.select.short select {
  padding: .3em 0 0 0.3em; }

input:focus {
  outline: 3px solid #fc0; }

@-moz-document url-prefix() {
  select {
    width: 110%; } }
select::-ms-expand {
  display: none; }

label.select.short select {
  width: 8.8em; }

label.select.month select {
  width: 11.8em; }

.short input,
.medium input {
  display: block;
  margin-bottom: .5em; }

.short select, .medium select {
  display: block; }

.inline input,
.inline select {
  display: inline-block; }

label.select span.label {
  position: absolute;
  bottom: 100%; }

input[type="text"],
input[type="search"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="number"],
input[type="tel"],
textarea {
  clear: both;
  border: 1px solid #ccc;
  border-bottom-color: #bbb;
  padding: .75em 1em;
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 1em;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
  color: #444;
  background: white; }
  @media (max-width: 480px) {
    input[type="text"],
    input[type="search"],
    input[type="password"],
    input[type="email"],
    input[type="url"],
    input[type="date"],
    input[type="datetime"],
    input[type="datetime-local"],
    input[type="month"],
    input[type="week"],
    input[type="time"],
    input[type="number"],
    input[type="tel"],
    textarea {
      padding: .35em 1em; } }

textarea {
  width: 114%;
  min-height: 9.5em;
  resize: vertical; }
  @media (max-width: 480px) {
    textarea {
      width: 100%; } }

input[disabled],
textarea[disabled] {
  border-color: #eee; }

/* Hide the HTML5 number input's spin box */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0; }

.short input,
.calendar input,
.short select {
  width: 7.5em; }

.short + input.button,
.calendar + input.button {
  width: auto; }

.calendar input {
  float: left; }

.medium input,
.medium select {
  width: 70%; }

#driving-licence {
  font-family: inherit;
  text-transform: uppercase; }

div.contextual-help.short input {
  width: 7.5em; }

@media (max-width: 1024px) {
  html.touch fieldset.radio-group input[type="radio"] {
    -webkit-appearance: none;
    -moz-appearance: none; }
  html.touch fieldset.radio-group.toggle input[type="radio"] {
    margin-left: -20px; } }
@media (min-width: 481px) {
  input[type="text"],
  input[type="search"],
  input[type="password"],
  input[type="email"],
  input[type="url"],
  input[type="date"],
  input[type="datetime"],
  input[type="datetime-local"],
  input[type="month"],
  input[type="week"],
  input[type="time"],
  input[type="number"],
  input[type="tel"] {
    padding: .5em; }

  textarea {
    width: 109%; }

  div.search input {
    width: 15.35em; }

  div.search input.cta {
    top: -1px;
    width: auto; }
    div.search input.cta:active {
      top: 1px; }
    div.search input.cta .medium input,
    div.search input.cta .medium select {
      margin-bottom: 0;
      width: 15em; }

  .short input,
  .calendar input {
    width: 7.5em; }

  #driving-licence {
    height: auto;
    font-size: 1.1em; }

  #page-test-centre-search-results #test-centres-submit {
    margin: 1em 0 1em .5em; } }
a.calendar {
  width: 32px;
  height: 32px;
  background: url(../img/icons.png) -64px 0;
  display: block;
  overflow: hidden;
  text-align: left;
  text-indent: -999em;
  background-repeat: no-repeat;
  direction: ltr;
  float: left;
  margin-left: .65em; }
  a.calendar:hover {
    background-position: -64px -32px; }

#payment-cards:after {
  display: block;
  clear: both;
  height: 0;
  content: "\2003"; }

#payment-cards li {
  display: block;
  float: left;
  margin-left: .9em;
  width: 51px;
  height: 32px;
  background-repeat: no-repeat;
  display: block;
  overflow: hidden;
  text-align: left;
  text-indent: -999em;
  background-repeat: no-repeat;
  direction: ltr; }
  #payment-cards li:first-child {
    margin-left: 0; }

#visa-card {
  background: url(../img/payment-cards/visa-32px.png); }

#mastercard-card {
  background: url(../img/payment-cards/mastercard-32px.png); }

#visa-electron-card {
  background: url(../img/payment-cards/visa-electron-32px.png); }

@media (min-width: 481px) {
  a.calendar {
    margin-top: .2em; } }
@media (max-width: 480px) {
  a.calendar {
    margin-top: -.3em; } }
@media (min-width: 481px) {
  #payment-cards li {
    width: 102px;
    height: 64px; }

  #visa-card {
    background: url(../img/payment-cards/visa-64px.png); }

  #mastercard-card {
    background: url(../img/payment-cards/mastercard-64px.png); }

  #visa-electron-card {
    background: url(../img/payment-cards/visa-electron-64px.png); } }
section.error-summary {
  border-style: solid;
  border-width: 0.25em;
  padding: 0.91667em 1.60417em;
  margin-bottom: 1.16667em;
  border-color: #c65f5a;
  color: #8f1812;
  background: #f3e4e4; }
  section.error-summary header {
    padding: 0;
    background: none; }
  section.error-summary a:link {
    color: #8f1812; }
  section.error-summary a:visited {
    color: #8f1812; }
  section.error-summary a:hover {
    color: #bc2018; }

.warning-summary {
  border-style: solid;
  border-width: 0.08333em;
  padding: 1.08333em 1.89583em;
  margin-bottom: 1.16667em;
  border-color: #f3f3f3;
  padding-left: 3.641em;
  background: #f9f9f9 url(../img/warning-icon.png) no-repeat 0.5em 1em; }
  @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5) {
    .warning-summary {
      background-image: url(../img/retina/warning-icon.png);
      background-size: 24px 24px; } }
  @media (max-width: 480px) {
    .warning-summary {
      padding-top: .5em;
      padding-bottom: .5em; } }
  .warning-summary h1 {
    font-size: 1.16667em;
    line-height: 2em; }
    @media (min-width: 481px) {
      .warning-summary h1 {
        font-size: 1.5em;
        line-height: 1.55556em; } }

section.warning-summary header {
  padding: 0;
  background: none; }

#main section.error-summary h1,
#main section.warning-summary h1 {
  font-size: 2em;
  line-height: 1.16667em; }
  @media (min-width: 481px) {
    #main section.error-summary h1,
    #main section.warning-summary h1 {
      font-size: 1.5em;
      line-height: 1.55556em; } }

#main section.error-summary h2,
#main section.warning-summary h2 {
  font-size: 1em;
  line-height: 2.33333em; }
  @media screen and (min-device-width: 481px) {
    #main section.error-summary h2,
    #main section.warning-summary h2 {
      font-size: 1.33333em;
      line-height: 1.75em; } }

section.error-summary a {
  color: black; }

label.error input[type="text"],
label.error input[type="number"],
label.error input[type="email"],
label.error input[type="tel"],
label.error textarea,
label.error select,
label.select.error {
  border-color: #c65f5a;
  color: #8f1812; }

#main .warning-summary,
#main .info-summary {
  border-style: solid;
  border-width: 0.08333em;
  padding: 1.08333em 1.89583em;
  margin-bottom: 1.16667em;
  border-color: #f3f3f3;
  padding-left: 4.5em;
  background: #f9f9f9 url(../img/warning-icon.png) no-repeat 0.75em 1em; }
  @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5) {
    #main .warning-summary,
    #main .info-summary {
      background-image: url(../img/retina/warning-icon.png);
      background-size: 24px 24px; } }
  #main .warning-summary h1,
  #main .info-summary h1 {
    line-height: 1.167em; }
  #main .warning-summary ul,
  #main .info-summary ul {
    margin-left: 1em; }
  @media (min-width: 481px) {
    #main .warning-summary,
    #main .info-summary {
      padding-left: 3.641em; } }

#main .info-summary {
  background: #f9f9f9 url(../img/info-icon.png) no-repeat 0.75em 1em; }
  @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5) {
    #main .info-summary {
      background-image: url(../img/retina/info-icon.png);
      background-size: 32px 32px; } }

section.warning-summary header {
  padding: 0;
  background: none; }

@media (max-width: 768px) {
  #page-available-time .warning-summary {
    position: relative;
    top: 180px; } }
#main .important-summary {
  margin-bottom: 1.16667em;
  display: inline-block;
  padding-left: 3em;
  background: url(../img/icon-important.png) no-repeat;
  font-weight: bold;
  height: 35px;
  background-size: 35px 35px; }
  @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5) {
    #main .important-summary {
      background-image: url(../img/retina/icon-important.png);
      background-size: 35px 35px; } }
  @media (min-width: 481px) {
    #main .important-summary {
      padding-left: 3em; } }
  @media (max-width: 480px) {
    #main .important-summary {
      height: 25px;
      background-size: 25px 25px; } }

/** Header styles from GDS */
header {
  margin: 0;
  padding: 0;
  vertical-align: baseline; }

#global-header .header-wrapper:after, #global-header .header-wrapper .header-global:after, #global-header .header-wrapper .header-global .header-logo:after, #global-header .header-proposition #proposition-links:after {
  content: "";
  display: block;
  clear: both; }

#global-header input:focus {
  outline: 3px solid #ffbf47; }

#global-header h1 a:focus {
  background-color: transparent;
  outline: none; }

#global-header a:focus {
  color: #0b0c0c; }

#global-header .header-wrapper:after, #global-header .header-wrapper .header-global:after, #global-header .header-wrapper .header-global .header-logo:after, #global-header .header-proposition #proposition-links:after {
  content: "";
  display: block;
  clear: both; }

#global-header {
  background-color: #0b0c0c;
  width: 100%; }

#global-header .header-wrapper {
  max-width: 990px;
  margin: 0 auto;
  padding: 0.5em 15px; }

@media (max-width: 640px) {
  #global-header .header-wrapper {
    padding: 0.5em 0; } }
#global-header .header-wrapper .header-global .header-logo {
  width: 49%;
  float: left; }

@media (min-width: 768px) {
  #global-header .header-wrapper .header-global .header-logo {
    width: 33.33%; } }
@media screen and (max-width: 378px) {
  #global-header .header-wrapper .header-global .header-logo {
    width: auto;
    float: none; } }
#global-header .header-wrapper .header-global .header-logo .content {
  margin: 0 15px; }

#global-header .header-wrapper .header-global .header-logo {
  margin: 5px 0 2px; }

@media (min-width: 768px) {
  #global-header.with-proposition .header-wrapper .header-global {
    float: left;
    width: 33.33%; }

  #global-header.with-proposition .header-wrapper .header-global .header-logo, #global-header.with-proposition .header-wrapper .header-global .site-search {
    width: 100%; } }
@media (min-width: 768px) {
  #global-header.with-proposition .header-wrapper .header-proposition {
    width: 66.66%;
    float: left; } }
#global-header.with-proposition .header-wrapper .header-proposition .content {
  margin: 0 15px; }

#global-header #logo {
  float: left;
  position: relative;
  top: 1px;
  height: 30px;
  overflow: visible;
  vertical-align: baseline;
  color: white;
  font-weight: bold;
  font-size: 30px;
  line-height: 1em;
  text-decoration: none;
  text-rendering: optimizeLegibility;
  margin-bottom: -1px;
  padding-bottom: 1px; }

#global-header #logo img {
  position: relative;
  top: -2px;
  width: 35px;
  height: 31px;
  padding-right: 6px;
  float: left;
  display: inline;
  line-height: inherit;
  border: none; }

#global-header #logo:hover, #global-header #logo:focus {
  text-decoration: none;
  border-bottom: 1px solid;
  padding-bottom: 0; }

#global-header #logo:active {
  color: #2b8cc4; }

#global-header .header-proposition {
  padding-top: 10px; }

@media (min-width: 768px) {
  #global-header .header-proposition {
    padding-top: 0; } }
#global-header .header-proposition #proposition-name, #proposition-name-short {
  font-family: "nta", Arial, sans-serif;
  font-size: 24px;
  line-height: 1.25;
  font-weight: 400;
  text-transform: none;
  font-weight: bold;
  color: white;
  text-decoration: none; }

@media (max-width: 640px) {
  #global-header .header-proposition #proposition-name, #proposition-name-short {
    font-size: 20px;
    line-height: 1.2; } }
@media (max-width: 767px) {
  #global-header .header-proposition #proposition-name {
    display: none; }

  #global-header .header-proposition #proposition-name-short {
    display: inherit; } }
@media (min-width: 768px) {
  #global-header .header-proposition #proposition-name {
    display: inherit; }

  #global-header .header-proposition #proposition-name-short {
    display: none; } }
#global-header .header-proposition a.menu {
  font-family: "nta", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.25;
  font-weight: 300;
  text-transform: none;
  color: white;
  display: block;
  float: right;
  text-decoration: none;
  padding-top: 6px; }

@media (max-width: 640px) {
  #global-header .header-proposition a.menu {
    font-size: 14px;
    line-height: 1.14286; } }
@media (min-width: 768px) {
  #global-header .header-proposition a.menu {
    display: none; } }
#global-header .header-proposition a.menu:hover {
  text-decoration: underline; }

#global-header .header-proposition a.menu:after {
  display: inline-block;
  font-size: 8px;
  height: 8px;
  padding-left: 5px;
  vertical-align: middle;
  content: " \25BC"; }

#global-header .header-proposition a.menu.js-hidden:after {
  content: " \25B2"; }

#global-header .header-proposition #proposition-menu {
  margin-top: 5px; }

#global-header .header-proposition #proposition-links {
  clear: both;
  margin: 2px 0 0 0;
  padding: 0; }

.js-enabled #global-header .header-proposition #proposition-links {
  display: none; }

@media (min-width: 768px) {
  .js-enabled #global-header .header-proposition #proposition-links {
    display: block; } }
.js-enabled #global-header .header-proposition #proposition-links.js-visible {
  display: block; }

#global-header .header-proposition #proposition-links li {
  float: left;
  width: 50%;
  padding: 3px 0;
  border-bottom: 1px solid #2e3133; }

@media (min-width: 768px) {
  #global-header .header-proposition #proposition-links li {
    display: block;
    width: auto;
    padding: 0 15px 0 0;
    border-bottom: 0; }

  #global-header .header-proposition #proposition-links li.clear-child {
    clear: left; } }
#global-header .header-proposition #proposition-links li a {
  color: white;
  text-decoration: none;
  font-family: "nta", Arial, sans-serif;
  font-size: 14px;
  line-height: 1.42857;
  font-weight: 400;
  text-transform: none;
  font-weight: 700; }

@media (max-width: 640px) {
  #global-header .header-proposition #proposition-links li a {
    font-size: 12px;
    line-height: 1.25; } }
@media (min-width: 768px) {
  #global-header .header-proposition #proposition-links li a {
    font-family: "nta", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 300;
    text-transform: none;
    font-weight: 700;
    line-height: 23px; } }
@media (min-width: 768px) and (max-width: 640px) {
  #global-header .header-proposition #proposition-links li a {
    font-size: 14px;
    line-height: 1.14286; } }
#global-header .header-proposition #proposition-links li a:hover {
  text-decoration: underline; }

#global-header .header-proposition #proposition-links li a.active {
  color: #28a197; }

/** Cookie message styles from GDS */
/* Global cookie message */
.js-enabled #global-cookie-message, .js-enabled #global-browser-prompt, .js-enabled #unsupported-browser-prompt {
  display: none;
  /* shown with JS, always on for non-JS */ }

#global-cookie-message, #global-browser-prompt, #unsupported-browser-prompt {
  padding: 0.5em 2em;
  background-color: #d5e8f3; }

#global-cookie-message p, #global-browser-prompt p, #unsupported-browser-prompt p {
  font-family: "nta", Arial, sans-serif;
  font-size: 19px;
  line-height: 1.31579;
  font-weight: 400;
  text-transform: none;
  margin: 0 auto;
  max-width: 960px; }

@media (max-width: 640px) {
  #global-cookie-message p, #global-browser-prompt p, #unsupported-browser-prompt p {
    font-size: 16px;
    line-height: 1.25; } }
@media (max-width: 640px) {
  #global-cookie-message, #global-browser-prompt, #unsupported-browser-prompt {
    padding: 0.5em 1em; } }
#global-browser-prompt .dismiss {
  background-image: url(../img/close.png);
  background-color: transparent;
  text-indent: -9999px;
  width: 10px;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: right center;
  height: 22px;
  text-decoration: none;
  float: right; }

#main > div.page-header {
  margin-bottom: 1.16667em;
  padding: 1.16667em 1.641em;
  background: #f5f5f5; }
  #main > div.page-header:after {
    display: block;
    clear: both;
    height: 0;
    content: "\2003"; }
  #main > div.page-header h1, #main > div.page-header h2 {
    float: left; }
  #main > div.page-header dl {
    clear: both; }
  #main > div.page-header dt, #main > div.page-header dd {
    display: inline-block; }
  #main > div.page-header a.button {
    float: left;
    margin-left: 1em; }
  #main > div.page-header #logout-button {
    float: right; }

#main > header,
#main > hgroup {
  margin-bottom: 1.16667em;
  padding: 1.16667em 1.641em;
  background: #f5f5f5; }
  #main > header:after,
  #main > hgroup:after {
    display: block;
    clear: both;
    height: 0;
    content: "\2003"; }
  #main > header h1, #main > header h2,
  #main > hgroup h1,
  #main > hgroup h2 {
    float: left; }
  #main > header dl,
  #main > hgroup dl {
    clear: both; }
  #main > header dt, #main > header dd,
  #main > hgroup dt,
  #main > hgroup dd {
    display: inline-block; }
  #main > header a.button,
  #main > hgroup a.button {
    float: left;
    margin-left: 1em; }
  #main > header #logout-button,
  #main > hgroup #logout-button {
    float: right; }

@media (max-width: 480px) {
  #main > div.page-header {
    padding: 0 .5em; }
    #main > div.page-header h1 {
      width: 80%; }

  #main > header,
  #main > hgroup {
    padding: 0 .5em; }
    #main > header h1,
    #main > hgroup h1 {
      width: 80%; } }
/** Footer styles from GDS */
footer {
  margin: 0;
  padding: 0;
  vertical-align: baseline; }

#footer {
  background-color: #dee0e2;
  border-top: 1px solid #a1acb2; }

#footer .footer-wrapper {
  max-width: 60em;
  margin: 0 auto;
  padding: 60px 1em 0 1em; }

@media (max-width: 640px) {
  #footer .footer-wrapper {
    padding-top: 20px; } }
#footer a {
  color: #454a4c; }

#footer a:hover {
  color: #171819; }

#footer h2 {
  font-family: "nta", Arial, sans-serif;
  font-size: 24px;
  line-height: 1.25;
  font-weight: 400;
  text-transform: none;
  font-weight: bold;
  color: #171819;
  margin: 0; }

@media (max-width: 640px) {
  #footer h2 {
    font-size: 20px;
    line-height: 1.2; } }
#footer h2 a {
  color: inherit; }

#footer .footer-meta {
  clear: both;
  font-size: 0;
  color: #454a4c;
  padding-bottom: 60px; }

@media (max-width: 640px) {
  #footer .footer-meta {
    margin: 0; } }
#footer .footer-meta .footer-meta-inner {
  display: inline-block;
  vertical-align: bottom;
  width: 75%; }

@media (max-width: 640px) {
  #footer .footer-meta .footer-meta-inner {
    display: block;
    width: 100%; } }
#footer .footer-meta .footer-meta-inner ul {
  font-family: "nta", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 300;
  text-transform: none;
  display: inline-block;
  list-style: none;
  margin: 0 0 1em;
  padding: 0; }

@media (max-width: 640px) {
  #footer .footer-meta .footer-meta-inner ul {
    font-size: 14px;
    line-height: 1.5; } }
#footer .footer-meta .footer-meta-inner ul li {
  display: inline-block;
  margin: 0 15px 0 0; }

@media (max-width: 640px) {
  #footer .footer-meta .footer-meta-inner ul {
    width: auto;
    margin: 0 0 1.5em 0; } }
#footer .footer-meta .footer-meta-inner .open-government-licence {
  clear: left;
  position: relative;
  padding-left: 53px; }

@media (max-width: 640px) {
  #footer .footer-meta .footer-meta-inner .open-government-licence {
    padding-left: 0; } }
#footer .footer-meta .footer-meta-inner .open-government-licence h2 {
  position: absolute;
  left: 0;
  top: 0;
  width: 41px;
  height: 100%; }

@media (max-width: 640px) {
  #footer .footer-meta .footer-meta-inner .open-government-licence h2 {
    position: static;
    width: auto;
    margin-bottom: 1em; } }
#footer .footer-meta .footer-meta-inner .open-government-licence h2 a, #footer .footer-meta .footer-meta-inner .open-government-licence h2 img {
  display: block;
  width: 43px;
  height: 17px; }

#footer .footer-meta .footer-meta-inner .open-government-licence p {
  font-family: "nta", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.25;
  font-weight: 300;
  text-transform: none;
  margin: 0;
  padding-top: 0.1em; }

@media (max-width: 640px) {
  #footer .footer-meta .footer-meta-inner .open-government-licence p {
    font-size: 14px;
    line-height: 1.14286; } }
#footer .footer-meta .footer-meta-inner .open-government-licence p a {
  font-family: "nta", Arial, sans-serif;
  font-size: 14px;
  line-height: 1.42857;
  font-weight: 400;
  text-transform: none; }

@media (max-width: 640px) {
  #footer .footer-meta .footer-meta-inner .open-government-licence p a {
    font-size: 12px;
    line-height: 1.25; } }
@media (max-width: 640px) {
  #footer .footer-meta .footer-meta-inner .open-government-licence p a {
    font-size: 1em; } }
#footer .footer-meta .copyright {
  font-family: "nta", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.25;
  font-weight: 300;
  text-transform: none;
  display: inline-block;
  float: none;
  text-align: inherit;
  width: 25%;
  padding-top: 15px; }

@media (max-width: 640px) {
  #footer .footer-meta .copyright {
    font-size: 14px;
    line-height: 1.14286; } }
#footer .footer-meta .copyright a {
  display: block;
  padding: 115px 0 0 0;
  background: transparent url(../img/branding/govuk-crest.svg) no-repeat 100% 0;
  text-align: right;
  text-decoration: none; }

@media (max-width: 640px) {
  #footer .footer-meta .copyright {
    width: 100%;
    display: block;
    padding: 0;
    margin: 30px 0 0 0; }

  #footer .footer-meta .copyright a {
    text-align: center;
    background-position: 50% 0%; } }
@media (max-width: 1023px) {
  #progress-bar {
    position: relative;
    z-index: 4;
    border-top: 2px solid white;
    padding: .25em 1em .5em;
    background: white; }
    #progress-bar strong.mobile {
      font-variant: small-caps;
      text-transform: lowercase; }
      #progress-bar strong.mobile span.button {
        padding: .25em 1em;
        width: auto;
        font-size: .9rem;
        font-variant: normal;
        text-transform: none;
        background-image: none; }
      #progress-bar strong.mobile #progress-close {
        font-variant: small-caps;
        text-transform: lowercase;
        text-shadow: none;
        color: white;
        background: #28a197; }
    #progress-bar ol {
      position: absolute;
      top: 2.6em;
      right: .5em;
      left: .5em;
      z-index: 999;
      border: 1px solid #999;
      -moz-border-radius: 4px 4px;
      -webkit-border-radius: 4px;
      border-radius: 4px 4px;
      -moz-box-shadow: 0 0 1em rgba(30, 30, 30, 0.5);
      -webkit-box-shadow: 0 0 1em rgba(30, 30, 30, 0.5);
      box-shadow: 0 0 1em rgba(30, 30, 30, 0.5);
      background: white; }
      #progress-bar ol:before {
        position: absolute;
        bottom: 100%;
        left: 3.75em;
        display: block;
        width: 36px;
        height: 12px;
        background: url(../img/retina/pop-pointer.png) no-repeat;
        background-size: 36px 12px;
        content: ""; }
      #progress-bar ol li {
        border-top: 1px solid #e3e3e3;
        padding: .5em .5em;
        counter-increment: list-order;
        background-size: 20px 14px; }
        #progress-bar ol li:before {
          content: counter(list-order) ". "; }
        #progress-bar ol li:first-child {
          border-top: none; }
        #progress-bar ol li#status {
          background: #757575 url(../img/retina/current-step.png) no-repeat 98% 50%;
          color: white; }
          #progress-bar ol li#status:after {
            float: right;
            margin-right: 8em;
            font-size: 60%;
            content: "Current step"; }
      #progress-bar ol li.complete {
        background: url(../img/progress-bar-tick.png) no-repeat 98% 50%; } }
      @media (max-width: 1023px) and (-webkit-min-device-pixel-ratio: 1.5), (max-width: 1023px) and (min-device-pixel-ratio: 1.5) {
        #progress-bar ol li.complete {
          background-image: url(../img/retina/progress-bar-tick.png);
          background-size: 20px 14px; } }
@media (max-width: 1023px) {
      #progress-bar ol li#status.complete {
        background: #538a64 url(../img/progress-bar-end-tick.png) no-repeat 98% 50%; } }
      @media (max-width: 1023px) and (-webkit-min-device-pixel-ratio: 1.5), (max-width: 1023px) and (min-device-pixel-ratio: 1.5) {
        #progress-bar ol li#status.complete {
          background-image: url(../img/retina/progress-bar-end-tick.png);
          background-size: 20px 14px; } }

@media (max-width: 1023px) {
  #page-choose-test-type #progress-bar ol:before {
    background-image: url(../img/retina/pop-pointer-first.png); } }
@media (min-width: 1024px) {
  #progress-bar-wrapper {
    min-height: 64px;
    height: auto !important;
    height: 64px; }

  #progress-bar {
    z-index: 999;
    padding: 1em 1em 0 1.70em;
    width: 100%;
    max-width: 960px;
    min-height: 1.5em;
    background: white;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    #progress-bar:after {
      display: block;
      clear: both;
      height: 0;
      content: "\2003"; }
    #progress-bar.fixed {
      position: fixed;
      top: 0;
      padding-bottom: 1em;
      min-height: 2em;
      background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(80%, #ffffff), color-stop(100%, rgba(255, 255, 255, 0)));
      background: -moz-linear-gradient(top, #ffffff 80%, rgba(255, 255, 255, 0));
      background: -webkit-linear-gradient(top, #ffffff 80%, rgba(255, 255, 255, 0));
      background: linear-gradient(to bottom, #ffffff 80%, rgba(255, 255, 255, 0)); }
    #progress-bar li {
      position: relative;
      z-index: 2;
      display: block;
      float: left;
      margin-bottom: 1em;
      margin-left: 1px;
      padding: .5em 1.4em .5em 2em;
      font-size: 12px;
      counter-increment: list-order;
      color: #6f6f6f;
      background: #f3f3f3 url(../img/progress-bar-mid.png) no-repeat 100% 50%; }
      #progress-bar li:first-child {
        margin-left: 0; }
      #progress-bar li::before {
        position: absolute;
        right: 100%;
        bottom: 50%;
        z-index: -1;
        margin: 0 -2.75em -20px 0;
        -moz-border-radius: 20em;
        -webkit-border-radius: 20em;
        border-radius: 20em;
        width: 40px;
        height: 40px;
        text-align: center;
        line-height: 3.35;
        background: #f3f3f3;
        content: counter(list-order); }
      #progress-bar li#status {
        background: #757575;
        color: white; }
        #progress-bar li#status::before {
          background: #757575; }
    #progress-bar li.conditional {
      color: #afafaf;
      background-color: #f6f6f6; }
      #progress-bar li.conditional::before {
        background: #f8f8f8; }
    #progress-bar li.end-point {
      -moz-border-radius-topright: 20em;
      -webkit-border-top-right-radius: 20em;
      border-top-right-radius: 20em;
      -moz-border-radius-bottomright: 20em;
      -webkit-border-bottom-right-radius: 20em;
      border-bottom-right-radius: 20em;
      background-image: none; }
    #progress-bar li.complete::before {
      background: #f3f3f3 url(../img/progress-bar-tick.png) no-repeat 50% 50%;
      -moz-background-size: 20px 14px;
      content: ""; }
    #progress-bar li#status.complete {
      background: #538a64; }
      #progress-bar li#status.complete::before {
        background: #538a64 url(../img/progress-bar-end-tick.png) no-repeat 50% 50%;
        content: ""; } }
.underlay-wrapper {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  display: none;
  background: rgba(20, 20, 20, 0.8); }
  @media (max-width: 480px) {
    .underlay-wrapper {
      position: fixed;
      width: 100%;
      height: 100%; } }
@media (min-width: 481px) and (max-width: 768px) {
  .underlay-wrapper {
    position: fixed;
    width: 100%;
    height: 100%; } }

.underlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1001;
  height: 100%; }
  @media (max-width: 768px) {
    .underlay {
      width: 100%; } }

.underlay .underlayer,
.underlayer-recaptcha {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.underlay-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1; }

.underlay-wrapper noscript iframe {
  position: relative; }

.dialog,
.dialog-recaptcha {
  position: fixed;
  top: 40%;
  left: 50%;
  z-index: 1002;
  overflow: hidden;
  margin-top: -13em;
  margin-left: -25em;
  width: 50em; }
  @media (max-width: 768px) {
    .dialog,
    .dialog-recaptcha {
      position: static;
      margin: 0;
      width: 100%;
      margin-top: 20px; } }
@media screen and (max-width: 1023px) and (max-device-height: 700px) {
  .dialog,
  .dialog-recaptcha {
    max-height: 100%;
    overflow-y: scroll; } }

.dialog-close {
  cursor: pointer; }

#size-change,
.status {
  position: absolute;
  top: auto;
  left: -9999px;
  overflow: hidden;
  display: block;
  width: 1em;
  height: 1em; }

.loader {
  position: relative;
  width: 100%;
  height: 72px;
  background: url(../img/loader.gif) no-repeat center center; }

.loader h3 {
  position: absolute;
  bottom: 0;
  margin-bottom: 0;
  width: 100%;
  text-align: center; }

.dialog {
  font: 14px/1 "NTA", "Helvetica Neue", Arial, Helvetica, sans-serif; }

.dialog-wrapper-outer {
  position: relative;
  zoom: 1;
  margin: 10px;
  background: white; }
  .dialog-wrapper-outer:after {
    display: block;
    clear: both;
    height: 0;
    content: "\2003"; }
  @media (max-width: 480px) {
    .dialog-wrapper-outer {
      margin: 0;
      font-size: .8em;
      line-height: 12px; }
      .dialog-wrapper-outer ul {
        width: 80%;
        margin-bottom: 10px;
        margin-left: 12px; } }

.dialog-recaptcha .dialog-wrapper-outer {
  top: 40%;
  overflow-y: scroll;
  height: 500px; }

.js .dialog-recaptcha .dialog-wrapper-outer {
  top: 40%;
  overflow: hidden;
  height: auto; }

.dialog-wrapper-inner {
  overflow: hidden;
  margin-top: 1.16667em;
  margin-bottom: 1.16667em;
  margin-left: 9.31448%;
  margin-right: 9.31448%; }
  @media (max-width: 480px) {
    .dialog-wrapper-inner {
      margin-left: 1em;
      margin-right: 1em; } }

.dialog-title {
  border-top: 2px solid white;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: .5em inherit;
  padding-left: 9.31448%;
  padding-right: 9.31448%;
  width: 100%;
  color: #353b3b;
  background: #D5ECEA; }
  @media (max-width: 480px) {
    .dialog-title {
      font-size: .9em;
      padding: .5em !important; } }

.dialog-title * {
  font: 1.25em/1.0 Arial, Helvetica, sans-serif;
  padding: .5em; }

.dialog-close {
  position: absolute;
  top: 5px;
  right: 5px;
  z-index: 1003;
  border: none;
  overflow: hidden;
  display: block;
  width: 24px;
  height: 24px;
  background: #FFF url(../img/close-icon.png) no-repeat; }
  @media (max-width: 480px) {
    .dialog-close {
      top: 4px; } }

.hover-active, .focus-active {
  background: url(../img/close-icon.png) no-repeat left bottom; }

.mozilla .focus-active {
  outline: 1px dotted #000; }

.dialog-close span {
  position: absolute;
  top: 0;
  left: -9999px;
  overflow: hidden;
  width: 1px;
  height: 1px; }

.dialog-buttons {
  clear: both;
  margin: 2em 0 0;
  border-top: 1px solid #999;
  padding-top: 1em; }
  @media (max-width: 480px) {
    .dialog-buttons {
      margin: 0;
      border-top: none; }
      .dialog-buttons a {
        margin-bottom: 10px; } }

.dialog-cancel {
  width: auto; }

.submit {
  float: left;
  border: none;
  height: 22px;
  background: #ccc;
  cursor: pointer; }

.message {
  float: left; }

.semantic {
  position: absolute;
  top: 0;
  left: -9999px;
  overflow: hidden;
  width: 1px;
  height: 1px; }

/* recaptcha overides */
@media (max-width: 480px) {
  .dialog-recaptcha h1 {
    font-size: 1em !important; }
  .dialog-recaptcha section.error-summary {
    padding: .5em !important;
    margin: 0; }
    .dialog-recaptcha section.error-summary ul {
      margin: .2em !important; }
    .dialog-recaptcha section.error-summary li {
      padding: 0 !important;
      margin: 0; } }

@media (max-width: 480px) {
  #recaptcha_response_field {
    width: 100% !important; } }

@media (max-width: 480px) {
  form#recaptcha-security li:last-child {
    display: none; } }

@media (max-width: 480px) {
  #recaptcha_switch_audio_btn {
    display: none; } }

@media (max-width: 480px) {
  td.recaptcha_image_cell {
    width: 100% !important; } }

@media (max-width: 480px) {
  #recaptcha_image {
    width: 100% !important; } }

@media (max-width: 480px) {
  .recaptchatable {
    width: 100% !important; }
    .recaptchatable img {
      width: 90% !important; }
    .recaptchatable a img {
      width: 25px !important;
      padding-right: 5px; } }

@media (max-width: 480px) {
  #recaptcha_logo, #recaptcha_tagline {
    display: none; } }

ul.test-centre-results > li {
  margin-bottom: 2em;
  box-shadow: 3px 3px 1px rgba(235, 235, 235, 0.5); }

div.test-centre-content {
  border: solid #ccc;
  border-width: 0 1px 1px 0;
  padding: 1em 1.75em 1em 0; }

ul.test-centre-results address {
  margin-bottom: 1em;
  font-size: .9rem;
  font-style: normal;
  font-weight: normal; }

div.test-centre-details {
  padding-top: .5em;
  padding-right: 2.5em;
  padding-bottom: .5em;
  padding-left: .75em;
  color: white;
  background: #1c7f73 url(../img/button-next.png) no-repeat 100% 50%; }
  @media (max-width: 480px) {
    div.test-centre-details {
      padding-right: 3em; } }
  div.test-centre-details h2, div.test-centre-details h4, div.test-centre-details h5 {
    text-transform: none;
    display: inline; }

a.test-centre-details-link {
  display: block;
  color: #fff; }
  a.test-centre-details-link:focus {
    outline: 3px solid #fc0; }
  a.test-centre-details-link:link, a.test-centre-details-link:visited {
    text-decoration: none; }
  a.test-centre-details-link:hover, a.test-centre-details-link:active {
    text-decoration: none; }

span.underline:hover, span.underline:active {
  border-bottom: 2px solid white; }

span.more {
  display: inline-block;
  margin: .5em 0 0 1em;
  border-left: 1px solid transparent;
  padding-left: 2em;
  padding-top: .2em;
  background: url(../img/show-more-arrow.png) no-repeat;
  color: #2E3191;
  cursor: pointer;
  height: 20px; }

span.more.active {
  background-image: url(../img/show-more-arrow-down.png); }

.hidey {
  height: 0;
  line-height: 0;
  opacity: 0; }

.hidey * {
  position: absolute;
  left: -1000em; }

.accordion-header {
  position: relative;
  z-index: 50;
  font-size: 0.8em;
  text-transform: uppercase;
  background-color: #e3e3e3;
  transition: all 1s ease-in-out; }

.accordion-item {
  position: relative;
  clear: both;
  padding-bottom: 2px;
  background-color: white; }

.complete .accordion-header {
  padding: 0.5em 2em;
  background: #d5ecea no-repeat 50px 50%;
  transition: all 1s ease-in-out; }

.current .accordion-header {
  padding: 0.5em 2em;
  font-weight: bold;
  color: white;
  background: #1c7f73 none no-repeat 50px 50%;
  transition: all 1s ease-in-out; }

.accordion-content,
.accordion-confirm {
  padding: 2em 1.6em;
  background-color: white; }

.accordion-content {
  position: relative; }
  .accordion-content h4 {
    margin: 1em 0 -1.75em 0em; }

.accordion-content button {
  margin-bottom: 1em; }

@media (min-width: 769px) {
  .accordion-header {
    padding: 0.5em 2em 0.5em 6em; }

  .accordion-content,
  .accordion-confirm {
    padding: 1em 5em 1em 5em;
    max-width: 50%; } }
.system-busy {
  position: absolute;
  top: 0;
  left: 0; }

.system-busy-underlayer {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  height: 100%;
  background: rgba(200, 200, 200, 0.4); }

.system-busy-inner {
  position: fixed;
  top: 45%;
  left: 50%;
  width: 80%;
  max-width: 800px;
  z-index: 999;
  overflow: hidden;
  border: 1px solid #999;
  padding: 2em;
  background: white url(../img/busy.gif) no-repeat 50% 1em;
  /*transform: translate(-50%, -50%); */
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }
  @media (max-width: 480px) {
    .system-busy-inner {
      padding: 2.3em; } }

.BookingCalendar-mask {
  position: relative;
  overflow: hidden;
  height: 279px;
  border-bottom: 1px solid #dee0e2; }

table.BookingCalendar-dates {
  width: 100%;
  font-size: 1em;
  line-height: 2.33333em;
  border-width: 0 1px;
  border-style: solid;
  border-color: #dee0e2;
  border-collapse: collapse;
  background: #dee0e2 url("../img/slotpicker/unavailable_tile.png"); }
  table.BookingCalendar-dates th,
  table.BookingCalendar-dates td {
    width: 14.28571%; }
  table.BookingCalendar-dates thead th {
    padding: 3px 0 0;
    font-weight: bold;
    line-height: normal;
    text-align: center;
    text-transform: uppercase;
    background: #f8f8f8;
    border-bottom: 2px solid #bfc1c3; }
  table.BookingCalendar-dates tbody td {
    padding: 0;
    border-color: #dee0e2;
    border-style: solid;
    border-width: 0 0 1px 1px; }
  table.BookingCalendar-dates tbody tr:last-child td {
    border-bottom: none; }

a.BookingCalendar-dateLink,
a.BookingCalendar-dateLink:visited {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  color: #0b0c0c;
  text-decoration: none; }
  a.BookingCalendar-dateLink.is-chosen,
  a.BookingCalendar-dateLink:visited.is-chosen {
    overflow: hidden; }
    a.BookingCalendar-dateLink.is-chosen:after,
    a.BookingCalendar-dateLink:visited.is-chosen:after {
      position: absolute;
      content: "";
      top: 0;
      right: 0;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 0 10px 10px 0;
      border-color: transparent #fc0 transparent transparent; }
      @media (max-width: 768px) {
        a.BookingCalendar-dateLink.is-chosen:after,
        a.BookingCalendar-dateLink:visited.is-chosen:after {
          border-width: 0 15px 15px 0; } }
  a.BookingCalendar-dateLink .BookingCalendar-day,
  a.BookingCalendar-dateLink:visited .BookingCalendar-day {
    padding-left: 3px; }

.no-touch .BookingCalendar-date--bookable:not(.is-active) a.BookingCalendar-dateLink:hover,
.no-touch .BookingCalendar-date--bookable:not(.is-active) a.BookingCalendar-dateLink:visited:hover,
.no-touch .BookingCalendar-date--unavailable a.BookingCalendar-dateLink:hover,
.no-touch .BookingCalendar-date--unavailable a.BookingCalendar-dateLink:visited:hover {
  color: #0b0c0c;
  text-decoration: underline;
  background: #96e5de; }

/*
.no-touch {
  .BookingCalendar-date--bookable .is-active {
    a.BookingCalendar-dateLink,
    a.BookingCalendar-dateLink:visited {
      &:hover {
        background: $dvsa-dark-cyan;
      }
    }
  }
}
*/
.BookingCalendar-date--bookable {
  background: #fff; }
  .BookingCalendar-date--bookable.is-active {
    background: #1c7f73;
    font-weight: bold; }
    .BookingCalendar-date--bookable.is-active a {
      color: #fff; }

.BookingCalendar-content {
  position: relative;
  min-height: 55px; }

.BookingCalendar-tag {
  font-weight: normal;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 0;
  color: #fff;
  line-height: normal;
  text-align: center;
  background: #6f777b; }

.BookingCalendar-tag--today {
  background: #1e7871; }

ul.BookingCalendar-legend {
  padding: 0;
  list-style: none;
  margin-top: .75em;
  margin-bottom: 1.5em; }
  ul.BookingCalendar-legend > li {
    display: table-cell;
    font-size: 1em;
    line-height: 2.33333em; }
    ul.BookingCalendar-legend > li:last-child .BookingCalendar-legendDesc {
      margin-right: 0; }

.BookingCalendar-legendBox {
  float: left;
  width: 29px;
  height: 29px;
  margin: 0 5px 0 0;
  background: #fff;
  border: 1px solid #dee0e2; }
  @media (max-width: 640px) {
    .BookingCalendar-legendBox {
      border-width: 2px;
      border-color: #999; } }

.BookingCalendar-legendDesc {
  float: left;
  margin-right: 1em;
  margin-top: 1em;
  font-size: 1em;
  line-height: 2.33333em;
  line-height: 0; }

.BookingCalendar-legendBox--unavailable {
  background: #dee0e2 url("../img/slotpicker/unavailable_tile.png"); }

.BookingCalendar-header {
  position: relative;
  border: 1px solid #dee0e2;
  background: #fff; }

.BookingCalendar-currentMonth {
  display: block;
  font-size: 1.16667em;
  line-height: 2em;
  font-weight: bold;
  margin: 0;
  padding: 0.5em 0;
  text-align: center; }

.BookingCalendar-currentYear {
  display: none;
  font-size: 1em;
  line-height: 2.33333em;
  font-weight: normal;
  margin: 0;
  padding: 0.5em 0;
  text-align: center; }

a.BookingCalendar-nav {
  display: none; }
  a.BookingCalendar-nav.is-active {
    display: block; }

a.BookingCalendar-nav--next,
a.BookingCalendar-nav--prev {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.632em;
  font-size: 1.16667em;
  line-height: 2em;
  color: #0b0c0c;
  line-height: 30px;
  text-decoration: none;
  background: no-repeat 0 -80px; }
  a.BookingCalendar-nav--next:hover,
  a.BookingCalendar-nav--prev:hover {
    text-decoration: underline; }

a.BookingCalendar-nav--prev {
  margin-left: 10px;
  padding-left: 40px;
  background-image: url("../img/slotpicker/prev.png"); }
  @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    a.BookingCalendar-nav--prev {
      background-position: 0 10px;
      background-size: 30px; } }
  @media (-webkit-min-device-pixel-ratio: 2) and (max-width: 480px), (min-resolution: 192dpi) and (max-width: 480px) {
    a.BookingCalendar-nav--prev {
      background-position: 0 7px; } }

a.BookingCalendar-nav--next {
  left: auto;
  right: 0;
  margin-right: 10px;
  padding-right: 40px;
  background-image: url("../img/slotpicker/next.png");
  background-position: 100% -80px; }
  @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    a.BookingCalendar-nav--next {
      background-position: 100% 10px;
      background-size: 30px; } }
  @media (-webkit-min-device-pixel-ratio: 2) and (max-width: 480px), (min-resolution: 192dpi) and (max-width: 480px) {
    a.BookingCalendar-nav--next {
      background-position: 100% 7px; } }

.BookingCalendar-navFull {
  display: none; }
  @media (min-width: 1024px) {
    .BookingCalendar-navFull {
      display: inline; } }

.BookingCalendar-next-prev-nav {
  display: none;
  padding-top: .75em;
  padding-bottom: 1.75em;
  border-color: #dee0e2;
  border-style: solid;
  border-width: 0 1px 1px 1px;
  border-radius: 0 0 5px 5px; }
  .BookingCalendar-next-prev-nav.is-active {
    display: block; }

a.BookingCalendar-nav--next-avail,
a.BookingCalendar-nav--prev-avail {
  background-size: 32px;
  background-repeat: no-repeat;
  color: #0b0c0c; }
  a.BookingCalendar-nav--next-avail:hover,
  a.BookingCalendar-nav--prev-avail:hover {
    text-decoration: underline; }

a.BookingCalendar-nav--next-avail {
  background-image: url("../img/arrow-right.png");
  background-position: 105% -8px;
  float: right;
  padding-right: 25px; }
  @media (max-width: 480px) {
    a.BookingCalendar-nav--next-avail {
      background-position: 109% -10px;
      padding-right: 20px; } }

a.BookingCalendar-nav--prev-avail {
  background-image: url("../img/arrow-left.png");
  background-position: -5% -8px;
  float: left;
  padding-left: 25px; }
  @media (max-width: 480px) {
    a.BookingCalendar-nav--prev-avail {
      background-position: -9% -10px;
      padding-left: 20px; } }

@media (max-width: 640px) {
  .SlotPicker-time {
    padding-right: 0.5em;
    vertical-align: middle; } }

.SlotPicker-timeSlots {
  display: none; }
  .SlotPicker-timeSlots.is-active {
    display: block; }

html.touch .SlotPicker-timeSlots fieldset.radio-group label:first-of-type, html.no-touch .SlotPicker-timeSlots fieldset.radio-group label:first-of-type {
  -moz-border-radius-topleft: 0px;
  -webkit-border-top-left-radius: 0px;
  border-top-left-radius: 0px;
  -moz-border-radius-topright: 0px;
  -webkit-border-top-right-radius: 0px;
  border-top-right-radius: 0px; }
html.touch .SlotPicker-timeSlots fieldset.radio-group label:last-child,
html.touch .SlotPicker-timeSlots fieldset.radio-group div.expanded-options:last-child, html.no-touch .SlotPicker-timeSlots fieldset.radio-group label:last-child,
html.no-touch .SlotPicker-timeSlots fieldset.radio-group div.expanded-options:last-child {
  -moz-border-radius-bottomleft: 0px;
  -webkit-border-bottom-left-radius: 0px;
  border-bottom-left-radius: 0px;
  -moz-border-radius-bottomright: 0px;
  -webkit-border-bottom-right-radius: 0px;
  border-bottom-right-radius: 0px; }
html.touch .SlotPicker-timeSlots fieldset.radio-group label.unchecked, html.no-touch .SlotPicker-timeSlots fieldset.radio-group label.unchecked {
  background: url(../img/radio-button.png) no-repeat 8px 50% white !important;
  border: 2px solid #bfc1c3; }
html.touch .SlotPicker-timeSlots fieldset.radio-group label.checked, html.no-touch .SlotPicker-timeSlots fieldset.radio-group label.checked {
  background: url(../img/tick.png) no-repeat 0 50% #28a197;
  background-position: 0 50%;
  color: #fff;
  border: 2px solid #1e7871; }
html.touch .SlotPicker-timeSlots fieldset.radio-group input[type="radio"], html.no-touch .SlotPicker-timeSlots fieldset.radio-group input[type="radio"] {
  appearance: none; }

.SlotPicker-days {
  overflow: hidden;
  padding: 0; }
  @media (max-width: 768px) {
    .SlotPicker-days {
      margin-bottom: 0; } }

.SlotPicker-day {
  position: relative;
  display: none;
  overflow: hidden;
  padding: 0.5em 0.3em 0.5em 0.7em;
  list-style: none;
  background: #dee0e2; }
  @media (max-width: 640px) {
    .SlotPicker-day {
      padding: 0.5em 0.7em 0.5em 0.7em;
      border-width: 1px 0; } }
  .SlotPicker-day.is-active {
    display: block; }
  .SlotPicker-day #short-notice-message {
    font-weight: normal;
    margin-bottom: 1em;
    height: initial; }

.SlotPicker-dayTitle {
  font-size: 1.16667em;
  line-height: 2em;
  font-weight: bold;
  margin: 0; }

.SlotPicker-dayOneSlot {
  margin: 0; }

.SlotPicker-slot-label {
  cursor: pointer;
  position: relative;
  overflow: hidden;
  float: left;
  box-sizing: border-box;
  min-width: 119px;
  margin-right: 0.5em;
  margin-bottom: 0.5em;
  padding: 0.5em 15px 0.4em 36px;
  font-size: 1em;
  line-height: 2.33333em;
  line-height: 1.2em; }
  @media (min-width: 641px) {
    .SlotPicker-slot-label.no-price {
      padding-top: 1.2em;
      padding-bottom: 1.2em; } }
  @media (max-width: 640px) {
    .SlotPicker-slot-label {
      width: 100%;
      padding-top: 10px;
      padding-bottom: 10px;
      background-position: 7px 3px; } }
  .SlotPicker-slot-label.is-disabled {
    color: #bfc1c3; }
  .SlotPicker-slot-label:last-child {
    margin-right: 0; }

@media (min-width: 641px) {
  .SlotPicker-slot {
    position: absolute;
    top: 1.6em;
    left: 0.8em; } }
.SlotPicker-slot:focus {
  outline: none; }

.SlotPicker-price {
  display: block;
  padding-top: 0.3em; }
  @media (max-width: 640px) {
    .SlotPicker-price {
      display: inline;
      padding-top: 0;
      vertical-align: middle; } }

.SlotPicker-choices {
  zoom: 1;
  margin: 0;
  list-style-type: none; }
  @media (min-width: 1024px) {
    .SlotPicker-choices {
      min-height: 236px; } }

.SlotPicker-choice {
  padding: 10px;
  background: #dee0e2; }
  .SlotPicker-choice + .SlotPicker-choice {
    padding-top: 0; }
  .SlotPicker-choice .SlotPicker-choiceInner {
    cursor: pointer;
    overflow: hidden;
    position: relative;
    min-height: 60px;
    padding: 10px;
    background: #fff;
    border: 1px solid #bfc1c3; }
  .SlotPicker-choice .SlotPicker-prompt {
    display: none;
    margin-left: 55px;
    padding: 5px 18%;
    text-align: center;
    color: #6f777b; }
    @media (max-width: 640px) {
      .SlotPicker-choice .SlotPicker-prompt {
        margin-left: 45px;
        padding-left: 10%;
        padding-right: 10%; } }
  .SlotPicker-choice.is-clicked .SlotPicker-prompt {
    display: block; }
  .SlotPicker-choice.is-chosen .SlotPicker-choiceInner {
    padding-left: 65px;
    padding-right: 80px; }
    @media (max-width: 640px) {
      .SlotPicker-choice.is-chosen .SlotPicker-choiceInner {
        padding-left: 55px; } }
    .SlotPicker-choice.is-chosen .SlotPicker-choiceInner p {
      font-size: 1.16667em;
      line-height: 2em; }
    .SlotPicker-choice.is-chosen .SlotPicker-choiceInner .SlotPicker-prompt {
      display: none; }
    .SlotPicker-choice.is-chosen .SlotPicker-choiceInner .SlotPicker-icon--remove,
    .SlotPicker-choice.is-chosen .SlotPicker-choiceInner .SlotPicker-icon--promote {
      display: block; }
    .SlotPicker-choice.is-chosen .SlotPicker-choiceInner .SlotPicker-date {
      font-weight: bold; }
    .SlotPicker-choice.is-chosen .SlotPicker-choiceInner .SlotPicker-position {
      background-color: #6f777b; }
  .SlotPicker-choice.is-active .SlotPicker-position {
    background-color: #2b8cc4; }
  .SlotPicker-choice p {
    margin: 0; }

.SlotPicker-choiceContent {
  position: relative;
  top: 0;
  -webkit-transition: top 0.3s ease-out;
  transition: top 0.3s ease-out; }

.SlotPicker-promoteHelp {
  display: none; }
  .SlotPicker-promoteHelp.is-chosen {
    display: block; }

.SlotPicker-position {
  position: absolute;
  top: 10px;
  left: 10px;
  height: 100%;
  background: #bfc1c3;
  color: #fff;
  width: 55px;
  font-size: 1.16667em;
  line-height: 2em;
  font-weight: bold;
  margin: -10px 0 0 -10px; }
  @media (max-width: 640px) {
    .SlotPicker-position {
      width: 45px; } }
  .SlotPicker-position span {
    position: absolute;
    top: 50%;
    width: 100%;
    margin-top: -0.6em;
    text-align: center; }

.SlotPicker-icon {
  display: none;
  position: absolute;
  top: 50%;
  right: 10px;
  width: 30px;
  height: 30px;
  margin-top: -15px;
  overflow: hidden;
  text-indent: 999px;
  background: no-repeat 0 -90px; }
  @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .SlotPicker-icon {
      background-position: 0 0;
      background-size: 100%; } }

.SlotPicker-icon--remove {
  background-image: url("../img/slotpicker/remove.png"); }

.SlotPicker-icon--promote {
  right: 50px;
  background-image: url("../img/slotpicker/promote.png"); }

.SlotPicker-input {
  display: none; }

div.panel {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  clear: both;
  border-left-style: solid;
  border-color: #bfc1c3;
  padding: .75em;
  margin-bottom: .75em; }
  div.panel :first-child {
    margin-top: 0; }
  div.panel :only-child,
  div.panel :last-child {
    margin-bottom: 0; }

.panel-border-wide {
  border-left-width: 10px; }

.panel-border-narrow {
  border-left-width: 5px; }

.form-group .panel-border-narrow {
  float: left;
  width: 100%;
  padding-bottom: 0; }

.form-group .panel-border-narrow:first-child {
  margin-top: 10px; }

.form-group .panel-border-narrow:last-child {
  margin-top: 10px;
  margin-bottom: 0; }

.inline .panel-border-narrow {
  margin-top: 10px;
  margin-bottom: 0; }

#test-availability nav {
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(96%, #ffffff), color-stop(100%, rgba(255, 255, 255, 0)));
  background: -moz-linear-gradient(top, #ffffff 96%, rgba(255, 255, 255, 0));
  background: -webkit-linear-gradient(top, #ffffff 96%, rgba(255, 255, 255, 0));
  background: linear-gradient(to bottom, #ffffff 96%, rgba(255, 255, 255, 0)); }
  #test-availability nav:after {
    display: block;
    clear: both;
    height: 0;
    content: "\2003"; }
  @media (max-width: 480px) {
    #test-availability nav {
      margin-top: -11px; } }

#date-chosen {
  padding: .25em 0;
  width: 100%;
  text-align: center; }
  @media (max-width: 480px) {
    #date-chosen {
      font-size: 75%; } }
  @media (max-width: 768px) {
    #date-chosen {
      font-size: 75%; } }

@media (max-width: 480px) {
  header#chosen-test-centre {
    padding: 0.5em 0.5em;
    /*margin-top: -6px;*/ } }

#load-earlier-availability-image {
  background: url(../img/arrow-up.png) no-repeat center;
  padding-top: 1.5em;
  display: block;
  width: 30%;
  margin-left: auto;
  margin-right: auto; }
  @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5) {
    #load-earlier-availability-image {
      background-image: url(../img/retina/arrow-up.png);
      background-size: 32px 32px; } }

#load-earlier-availability-link {
  padding-bottom: 0.5em;
  padding-top: 0em;
  text-align: center; }
  @media (max-width: 480px) {
    #load-earlier-availability-link {
      padding-bottom: 0.5em;
      padding-top: 0em; } }

#load-later-availability-image {
  background: url(../img/arrow-down.png) no-repeat center;
  padding-bottom: 1.5em;
  display: block;
  width: 30%;
  margin-left: auto;
  margin-right: auto; }
  @media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5) {
    #load-later-availability-image {
      background-image: url(../img/retina/arrow-down.png);
      background-size: 32px 32px; } }

#load-later-availability-link {
  padding-top: 0em;
  padding-bottom: 0em;
  text-align: center; }
  @media (max-width: 480px) {
    #load-later-availability-link {
      padding-top: 0.5em;
      padding-bottom: 0em; } }

#availability-results li:first-child {
  margin-top: .5em; }

#test-availability #contextual-help {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  border-top: 3px solid #e4e4e4;
  padding: 1em .5em .5em;
  background: white; }

#return-original-booking {
  padding-left: 3em; }

#slot-warning-continue {
  margin-right: 0.5em; }

#page-available-time .slot-price {
  float: right;
  padding-right: 5em; }
  @media (max-width: 479px) {
    #page-available-time .slot-price {
      float: none;
      display: block;
      padding-right: 0em;
      padding-top: 0.5em; } }
#page-available-time .slot-price-short-notice {
  float: right;
  padding-right: 5em;
  margin-top: -1.5em; }
  @media (max-width: 479px) {
    #page-available-time .slot-price-short-notice {
      float: none;
      padding-right: 0em;
      margin-top: 0em;
      padding-top: 0.5em; } }
@media (min-width: 481px) {
  #page-available-time #availability-results {
    margin-top: .5em; } }

@media (max-width: 480px) {
  #page-available-time #global-header,
  #page-available-time #chosen-test-centre,
  #test-availability nav,
  #page-available-time #progress-bar {
    position: fixed;
    right: 0;
    left: 0;
    z-index: 1; }

  #page-available-time #global-header {
    top: 0; }

  #page-available-time #progress-bar {
    top: 88px;
    z-index: 5; }
    #page-available-time #progress-bar ol {
      position: fixed;
      top: 128px; }

  #page-available-time #chosen-test-centre {
    top: 119px; }

  #test-availability nav {
    top: 167px;
    padding: 5px; }

  #availability-results {
    padding: 185px 0 30px; } }
@media (min-width: 481px) {
  #availability-results {
    overflow: visible;
    padding-bottom: 0;
    height: auto; }

  #test-availability #contextual-help {
    position: static;
    padding: 1em 0 .5em; } }
#current-slot-msg-mobile {
  display: none; }

#current-slot-msg {
  display: block;
  width: inherit;
  moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 0em; }

@media screen and (max-device-width: 480px) {
  #current-slot-msg-mobile {
    margin-top: 1.1em;
    margin-bottom: 0em;
    display: block; }

  #current-slot-msg {
    display: none; } }
#current-slot-msg.fixed {
  position: fixed;
  top: 0px;
  background-color: white;
  z-index: 4; }

#keep-current-slot, #keep-current-slot-mobile {
  padding-top: 1em; }

#keep-current-link, #keep-current-link-mobile {
  width: auto; }

#current-slot-msg-wrapper {
  width: inherit;
  margin-bottom: 2em; }

@media screen and (max-device-width: 480px) {
  #current-slot-msg-wrapper {
    margin-bottom: 0em; } }
#no-earlier-slots-warn, #no-further-slots-warn {
  display: none; }

#page-test-centre-search-results section + section:last-of-type {
  margin-top: 1em;
  padding-bottom: 1em;
  background: #D5ECEA; }

#page-test-centre-search-results section header {
  margin: 0 -.5em 2em -.5em;
  padding: .5em;
  background: #96D0CB; }

#page-test-centre-search-results section + section:first-of-type header {
  margin: 0 -.5em 2em -.5em;
  padding: .5em;
  background: #FFF; }

#page-test-centre-search-results section header h1 {
  margin-bottom: .5em;
  line-height: 1.0; }

#page-test-centre-search-results section + section:last-of-type fieldset {
  margin: 0; }

#search-results {
  margin-top: 2em;
  border-top: 1px solid #999;
  padding-top: 1em; }
  #search-results .test-centre-closing {
    font-weight: bold; }

@media (min-width: 481px) {
  #page-test-centre-search-results section + section:last-of-type header {
    margin: 0 0 .5em 0; }

  #page-test-centre-search-results section + section:last-of-type {
    border: 1px solid #e3e3e3;
    padding-bottom: 0;
    background: white; }

  #page-test-centre-search-results section + section:last-of-type form {
    padding: 1em 1em 0; }

  #page-test-centre-search-results section + section:last-of-type header {
    padding: 1em; } }
#confirm-booking-details section {
  margin-bottom: .5em; }
  #confirm-booking-details section header {
    display: table;
    border-width: 1px 0;
    padding: .5em .75em;
    width: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: white;
    background: #1c7f73; }
    #confirm-booking-details section header h2 {
      display: inline-block;
      margin: 0 2em 0 0;
      padding: .75em 0;
      line-height: 1.0;
      width: 10em;
      font-size: 95%; }
    #confirm-booking-details section header a.button {
      display: inline-block;
      padding: .25em .5em;
      width: auto;
      font-size: 90%; }
  #confirm-booking-details section div.contents {
    border: solid #999;
    border-width: 0 1px 1px;
    padding: .5em;
    background: #f5f5f5; }
    #confirm-booking-details section div.contents:after {
      display: block;
      clear: both;
      height: 0;
      content: "\2003"; }
  #confirm-booking-details section div.vehicle-details {
    clear: both;
    border: solid #aeaeae;
    border-width: 1px 0; }
    #confirm-booking-details section div.vehicle-details:after {
      display: block;
      clear: both;
      height: 0;
      content: "\2003"; }
    #confirm-booking-details section div.vehicle-details h2 {
      font-size: 1em;
      line-height: 2.33333em; }
  #confirm-booking-details section:last-of-type {
    margin-bottom: 1em; }
  #confirm-booking-details section .more {
    margin-left: 0; }
  #confirm-booking-details section a.cancel-test {
    margin-bottom: 0.75em; }

section.confirmation-summary:after {
  display: block;
  clear: both;
  height: 0;
  content: "\2003"; }
section.confirmation-summary dt {
  display: block;
  float: left;
  clear: both;
  margin: .563em 0;
  width: 145px; }
section.confirmation-summary dd {
  display: block;
  float: left;
  margin-left: 0; }

section.confirmation-summary .update {
  border: 1px solid #c93;
  padding: .25em .5em;
  background: #ffc; }
  section.confirmation-summary .update:after {
    display: block;
    clear: both;
    height: 0;
    content: "\2003"; }
  section.confirmation-summary .update dt {
    width: 100%; }
    @media (min-width: 481px) {
      section.confirmation-summary .update dt {
        width: 13.5em; } }
  section.confirmation-summary .update dd {
    font-weight: normal; }

#abandon {
  margin-left: 3em; }

@media (max-width: 320px) {
  #main #confirm-booking-details + div {
    position: fixed;
    bottom: 0;
    right: 0;
    left: 0;
    border-top: 1px solid #e4e4e4;
    width: auto;
    height: 58px;
    background: #f5f5f5; }
    #main #confirm-booking-details + div a.cta {
      position: relative;
      top: .5em;
      right: .5em;
      bottom: .5em;
      left: .5em;
      width: 96.5%; } }
@media (max-width: 480px) {
  #main #confirm-booking-details + div {
    position: static; } }
@media (min-width: 481px) {
  #confirm-booking-details > section {
    margin-bottom: 1em; }

  section.confirmation-summary dt {
    width: 12em; }

  section.confirmation-summary dd {
    width: 33em; } }
#test-info-detail #final-important {
  margin-bottom: 2em; }
#test-info-detail #test-other-info-message {
  margin-bottom: 1em; }
#test-info-detail #test-other-info-supervised-test-title {
  margin-bottom: 1em; }
#test-info-detail #final-important-supervised-test {
  margin-bottom: 2em; }
#test-info-detail #test-other-info-noviolence-subheading {
  margin-bottom: 1em; }
#test-info-detail #final-important-no-violence {
  margin-bottom: 2em; }

#page-confirmation #main > section {
  position: static; }

#page-confirmation #main .govuk-box-highlight {
  margin: 1em 0 2em;
  padding: 2em 1em 1em;
  color: #fff;
  background: #1c7f73;
  text-align: center; }
  #page-confirmation #main .govuk-box-highlight p {
    font-size: 1.25em;
    line-height: 1.86667em;
    margin-top: 1em;
    margin-bottom: .5em; }
    #page-confirmation #main .govuk-box-highlight p a.view-receipt {
      padding-bottom: .75em;
      padding-top: .5em;
      color: #fff;
      background: url("../img/icon-file-download-white.png") no-repeat 0 0.5em;
      padding-left: 28px;
      line-height: 20px; }
      @media (max-width: 480px) {
        #page-confirmation #main .govuk-box-highlight p a.view-receipt {
          background: url("../img/icon-file-download-white.png") no-repeat 0 0.3em; } }
#page-confirmation #main #booking-details-confirmation .summary:after, #page-confirmation #main #test-info-detail:after {
  display: block;
  clear: both;
  height: 0;
  content: "\2003"; }
#page-confirmation #main #booking-details-confirmation #booking-ref-msg {
  margin-bottom: 1.5em; }
#page-confirmation #main #booking-details-confirmation #email-conf-msg {
  margin-bottom: 0em; }
#page-confirmation #main #booking-details-confirmation #email-conf-junk-msg {
  margin-top: 0em;
  font-size: smaller; }
#page-confirmation #main #test-detail-rows {
  margin-bottom: 2.5em; }
#page-confirmation #main #test-info-detail {
  margin-bottom: 2em; }
  #page-confirmation #main #test-info-detail #further-info-title {
    margin-bottom: 1.5em; }
  #page-confirmation #main #test-info-detail #further-info {
    padding-bottom: 1.5em; }
#page-confirmation #main .row-wrapper {
  overflow: hidden;
  border-bottom: 1px black solid; }
#page-confirmation #main .row-wrapper div {
  padding: 10px;
  margin-top: 10px; }
#page-confirmation #main .row-label {
  display: table-cell;
  font-weight: bold;
  width: 100%; }
#page-confirmation #main .row-value {
  overflow: hidden;
  display: table-cell;
  min-width: 14em; }
@media (max-width: 1023px) {
  #page-confirmation #main .row-wrapper {
    margin-left: 0px;
    margin-right: 0px; } }
@media (max-width: 767px) {
  #page-confirmation #main .row-wrapper div {
    padding: 5px;
    margin-top: 0px; }
  #page-confirmation #main .row-label {
    display: block;
    margin-right: 0;
    width: auto;
    margin-top: 5px;
    max-width: 100%; }
  #page-confirmation #main .row-value {
    display: block;
    width: auto;
    margin-left: 5px; } }
#page-confirmation #main #receipt-button-container {
  float: right; }

#main section.secure {
  border: 1px solid #eaeaea;
  padding: 1em;
  background: #f6f6f6; }
  #main section.secure header h2 {
    padding: 0 0 24px 60px;
    background: url(../img/secure.png) no-repeat; }

.cardmessage {
  line-height: 1.25em; }

.cardmessage-fee {
  font-weight: bold;
  padding-bottom: 1em; }

.payment-adjustment-help {
  padding-left: 1.641em; }

#special-needs-radio-array legend {
  padding-bottom: 0em; }

@media (max-width: 480px) {
  #gb-licence-help img {
    display: none; }

  #gb-licence-help span.retina {
    display: block;
    width: 300px;
    height: 205px;
    background: url(../img/retina/driving-licence-sample.jpg) no-repeat;
    background-size: 300px 205px; } }
#page-vehicle-information fieldset {
  margin: 0em; }

#main > section #mc-test-info {
  margin-bottom: 0em;
  margin-top: 0em; }

#page-vehicle-information #meeting-place {
  width: 70%; }

@media (min-width: 1025px) {
  #test-choice-calendar-options {
    padding-top: .75em; } }

#ten-digit-contactnumber-continue {
  margin-right: 0.5em; }

.contact-details-legend {
  font-size: 1.3em; }

#cancel-or-keep-test span.label {
  display: block; }

#page-ibs-summary .google-map-link {
  padding-left: 0em;
  padding-right: 1em; }
#page-ibs-summary #short-notice-slots-view {
  margin-left: .75em; }
#page-ibs-summary #edit-test-date-buttons {
  display: inline-block; }

#page-confirm-booking .google-map-link {
  padding-left: 0em;
  padding-right: 1em; }

#page-service-c #unavailability-notice {
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.5em;
  margin-bottom: 1.5em;
  padding: 1em;
  width: 70%;
  background: #2da096;
  color: #fff;
  text-align: center;
  font-size: 2em;
  line-height: 1em; }
#page-service-c #unavailability-notice-title {
  font-weight: normal; }
#page-service-c #unavailability-notice-datetime {
  font-weight: bold;
  display: block;
  font-size: 1.5em; }

#page-short-notice-slots-search #main #short-notice-slots-search .medium select {
  width: 100%; }
#page-short-notice-slots-search #main #short-notice-slots-search label.select {
  margin-top: 1.5em; }
@media (min-width: 481px) and (max-width: 768px) {
  #page-short-notice-slots-search #main #short-notice-slots-search #short-notice-slots-search-distance > label {
    width: 15.35em; } }

#page-short-notice-slots-search #main #short-notice-slots-search #short-notice-slots-search-submit {
  margin-top: .5em; }
  @media (max-width: 768px) {
    #page-short-notice-slots-search #main #short-notice-slots-search #short-notice-slots-search-submit {
      margin-left: 0; } }
#page-short-notice-slots-search #main ul.test-centre-results > li {
  margin-bottom: 1.5em; }
#page-short-notice-slots-search #main .show-slots {
  cursor: pointer; }
  #page-short-notice-slots-search #main .show-slots div.test-centre-details.active {
    background: #1c7f73 url(../img/button-down.png) no-repeat 100% 50%; }
#page-short-notice-slots-search #main .ShortNoticeSlots-legend {
  font-size: 1.2em; }
#page-short-notice-slots-search #main .ShortNoticeSlots-slotCount {
  float: right;
  padding-right: 1em; }
  @media (max-width: 1023px) {
    #page-short-notice-slots-search #main .ShortNoticeSlots-slotCount {
      display: block;
      float: none; } }
#page-short-notice-slots-search #main .ShortNoticeSlots-timeSlots {
  position: relative;
  overflow: hidden;
  margin-top: 1em;
  padding: 0.3em 0.7em 0.3em 0.7em;
  list-style: none;
  background: #dee0e2; }
  @media (max-width: 640px) {
    #page-short-notice-slots-search #main .ShortNoticeSlots-timeSlots {
      padding: 0.5em 0.7em 0.5em 0.7em;
      border-width: 1px 0; } }
  #page-short-notice-slots-search #main .ShortNoticeSlots-timeSlots:first-child {
    padding-top: 0.6em; }
  #page-short-notice-slots-search #main .ShortNoticeSlots-timeSlots:last-child {
    padding-bottom: 0.6em; }
#page-short-notice-slots-search #main .ShortNoticeSlots-title {
  font-size: 1.16667em;
  line-height: 2em;
  font-weight: bold;
  margin: 0; }
#page-short-notice-slots-search #main .ShortNoticeSlots-slot {
  cursor: pointer;
  position: relative;
  overflow: hidden;
  float: left;
  box-sizing: border-box;
  width: 100%;
  margin-top: 0.3em;
  margin-bottom: 0.3em;
  padding: 0.6em 15px 0.6em 1em;
  font-size: 1em;
  line-height: 2.33333em;
  line-height: 1.2em;
  border: 2px solid #bfc1c3;
  background: #fff; }
  @media (max-width: 640px) {
    #page-short-notice-slots-search #main .ShortNoticeSlots-slot {
      width: 100%;
      padding-top: 10px;
      padding-bottom: 10px;
      background-position: 7px 3px; } }
  #page-short-notice-slots-search #main .ShortNoticeSlots-slot:last-child {
    margin-right: 0; }
  #page-short-notice-slots-search #main .ShortNoticeSlots-slot:link, #page-short-notice-slots-search #main .ShortNoticeSlots-slot:visited {
    color: #000;
    font-weight: bold;
    text-decoration: none; }
  #page-short-notice-slots-search #main .ShortNoticeSlots-slot:hover {
    color: #fff;
    border: 2px solid #1e7871;
    background-color: #28a197;
    text-decoration: underline; }

body {
  font-family: "NTA", "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 75%;
  background: #dee0e2; }

@media (min-width: 1024px) {
  #page {
    background: #f2f2f2; }

  body {
    font-size: 100%; } }
@media (min-width: 481px) and (max-width: 1023px) {
  .fixed {
    /*position: static !important;*/ } }
@media (max-width: 480px) {
  #abandon {
    margin-left: 0; } }

/*# sourceMappingURL=screen.css.map */
