* { box-sizing: border-box; }
body { margin: 0 auto; max-width: 760px; padding: 0 24px 40px; font-family: Arial, Helvetica, sans-serif; line-height: 1.6; color: #111; background: #fff; }
header img { display: block; width: min(100%, 560px); height: auto; margin: 0 auto; }
section { padding: 24px 0; border-top: 1px solid #ccc; }
h2 { margin: 0 0 16px; font-size: 24px; }
h3 { margin: 0 0 6px; font-size: 17px; }
p { margin: 0; }
a { color: #111; text-underline-offset: 3px; }
a:focus-visible { outline: 2px solid #111; outline-offset: 4px; }
ol { margin: 0; padding-left: 24px; }
li { padding-left: 6px; margin-bottom: 20px; }
li:last-child { margin-bottom: 0; }

fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
label { display: block; margin: 16px 0 6px; }
input:not([type="hidden"]), textarea { display: block; width: 100%; padding: 10px; border: 1px solid #888; border-radius: 0; font: inherit; color: #111; background: #fff; }
textarea { resize: vertical; }
form p { margin-top: 16px; }
button { margin-top: 16px; padding: 10px 24px; border: 1px solid #111; border-radius: 0; font: inherit; background: #111; color: #fff; cursor: pointer; }
button:disabled { opacity: .5; cursor: default; }
input:focus-visible, textarea:focus-visible, button:focus-visible { outline: 2px solid #111; outline-offset: 3px; }
