/* Modify this rule if anchors should be underlined. */
a {
    text-decoration: none;
}

/* No border on images within anchors. */
a img {
    border-style: none;
}

/* Normalise lists across all browsers and make scalable. */
ul, ol {
    margin: 1em 0px 1em 2.5em;
    padding: 0;
    -moz-padding-start: 0;
}

/* Prevent increased line-height when using super-scripts. */
sup {
  vertical-align: baseline;
  position: relative;
  top: -0.5em;
}

/* Prevent increased line-height when using sub-scripts. */
sub {
  vertical-align: baseline;
  position: relative;
  top: 0.2em;
}

/* Treat forms as simple containers with no visible impact. */
form {
    margin: 0;
    padding: 0;
}

/* Normalize input controls across all browsers. */
input {
    font-size: 100%;
    font-family: inherit;
}

/*
 * Set default horitontal padding for input.button elements.
 * Default browser font-size is 16px, but often reduced to 75%, hence 12px.
 * 0.5em * 12px/em = 6px
 */
input.button {
    padding-left: 0.5em;
    padding-right: 0.5em;
}

/*
 * Shift button content across when activated.
 * Default browser font-size is 16px, but often reduced to 75%, hence 12px.
 * 0.583em * 12px/em = 7px
 * 0.417em * 12px/em = 5px
 */
input.button:active:hover {
    padding-left: 0.583em;
    padding-right: 0.417em;
}

/*
 * Normalize default space surrounding checkbox and radio controls.
 * Default browser font-size is 16px, but often reduced to 75%, hence 12px.
 * 1.083em * 12px/em = 13px
 * 0.25em  * 12px/em = 3px
 * 0.333em * 12px/em = 4px
 */
input.checkbox, input.radio {
    width: 1.083em;
    height: 1.083em;
    margin: 0px 0.25em 0px 0.333em;
    vertical-align: middle;
}
