html, body {margin:0;padding:0;border:0;background:#fff;color:#222;font-family:Open Sans,sans-serif;}
header {padding:1.25em 20px;text-align:right;}
section {padding:0 20px;margin:0 0 1.875em;}
footer {margin:0 20px;text-align:right;border-top:4px solid #222;}
footer nav {float:left;}
footer nav ol {margin:1.25em 0;padding:0;list-style:none;}
footer nav li {display:inline-block;}
footer nav li:not(:first-child):before {content:"-";margin:0 .3em 0 0;}
footer p {padding:1.25em 0;margin:0;}
footer p.legal {border:0;padding:0;font-size:.625em;}
h1 {margin:0 0 .9375em;font-weight:600;font-size:2em;line-height:1.25;}
h2 {margin:0 0 1em;font-weight:600;font-size:1.25em;line-height:1.5;}
h3 {margin:1.25em 0;font-weight:600;font-size:1em;line-height:1.25em;}
em {font-weight:600;font-style:normal;}
a {color:#6aa7fe;}
a:hover {color:#2079f5;}
a:visited {color:#0a3979;}
a:active {color:#ffa40c;}
pre {max-width:100%;overflow-x:scroll;}

.link-less {display:none;}
#more {display:none;}
#more:target {display:block;}
#more:target + .link-more {display:none;}
#more:target ~ .link-less {display:inline-block;}

.form__errors {margin:0 0 1.5em;border:solid crimson;border-width:4px 0;padding:1em 0;}
.form__errors h2 {font-size:1em;margin:0 0 .5em;padding:0;}
.form__errors ul {list-style:disc;margin:0 0 0 1.8em;padding:0;}
.form__errors li {margin:0 0 .25em;}
.form__fieldset {margin:0;padding:0;border:0;min-width:0;}

.form__fieldlist {list-style:none;margin:0;padding:0;}
.form__fieldlist label {font-size:.75em;font-weight:600;text-transform:uppercase;}
.form__fieldlist li {margin:0 0 .75em;}
.form__fieldlist li > label {display:block;width:auto;}
.form__fieldlist li input {box-sizing:border-box;padding:.25em;font-size:1em;width:12em;outline:none;border:1px solid #ccc;background:#fff;color:#222;border-radius:1px;max-width:100%;}
.form__fieldlist li select {padding:.25em;font-size:1em;outline:none;border:1px solid #ccc;background:#fff;color:#222;border-radius:1px;max-width:100%;}
.form__fieldlist li input[type="checkbox"] {width:auto;}

.form__field__errors, .form__field__note, .form__field__sidenote {font-size:.75em;}
.form__field__errors {display:block;font-size:.75em;margin:.5em 0;list-style:none;padding:0;color:crimson;}
.form__field__note {display:block;margin:.5em 0;}
li.form__fieldlist__submit {margin-left:0;}
li.form__fieldlist__submit input[type="submit"] {width:auto;background:#222;border:1px solid red;color:#fff;font-size:1em;font-weight:bold;padding:.5em 1em;border:0;border-radius:100px;cursor:pointer;-webkit-appearance: none;-moz-appearance: none;}
li.form__fieldlist__submit input.secondary[type="submit"] {background:transparent;color:#222;border:1px solid #222;}

#form__authenticate__code {font-size:2em;font-family:monospace;text-transform:uppercase;}
#form__authenticate__submit[disabled], #form__authenticate__submit.disabled {background:#ccc;}

#form__authenticate, #form__authenticate__code, .keys, .end {text-align:center;}

.keys {list-style:none;margin:0;padding:0;}
.keys__key {list-style:none;}
.keys__key:not(:last-child) {border-bottom:2px solid #222;}
.keys__key h2 {margin:1em 0 .5em;}
.keys__key p {margin:.625em 0;}
.keys__key .form__keyaction {margin:.9375em 0 1.25em;}
.keys__key .keys__key__invalid {margin:.625em 0 1.25em;}
.keys .form__fieldlist__submit, .keys .form__field__errors {margin-left:0;}
.keys .form__keyaction__submit {margin:0 1em;}
.keys .form__field__note {margin-left:0;}

.end {border-top:2px solid #222;}
#form__delete .form__fieldlist__submit {margin-left:0;}

@media screen and (min-width:40em) {
	header {padding:40px;}
	section {padding:0 40px;}
	footer {margin:0 40px;}
	.form__fieldlist label {font-size:1em;font-weight:400;text-transform:none;}
	.form__fieldlist li > label {width:11em;display:inline-block;}
	li.form__fieldlist__submit {margin-left:11.3em;}
	.form__field__errors, .form__field__note {margin-left:15em;}
	#form__authenticate, #form__authenticate__code, .keys, .end {text-align:left;}
	.keys .form__keyaction__submit {margin:0 1em 0 0;}
}

@media screen and (max-width:375px) {
	h1 {font-size:1.75em;margin:0 0 1.07142857em;line-height:1.428571;}
}