.button {
    display: inline-block;
    border: none;
    padding: 1rem 2rem;
    margin: 0;
    text-decoration: none;
    background: #33a1ff;
    color: #ffffff;
    font-size: 1rem;
    cursor: pointer;
    text-align: center;
    transition: background 250ms ease-in-out, 
                transform 150ms ease;
    -webkit-appearance: none;
    -moz-appearance: none;
    box-shadow: none;
}

.button:hover,
.button:focus {
    background: #0053ba;
    box-shadow: none;
}

.button:focus {
    outline: 1px solid #fff;
    outline-offset: -4px;
}

.button:active {
    transform: scale(0.99);
}

.logo{max-width:150px;}
.logo svg{fill:white;}

#body-inner{width:100%;max-width:800px;margin:0 auto;}
#body-inner h1{text-align: left;line-height: normal;margin:48px 0 48px 0;}
#body-inner pre{background:#eaeaea;}

#chapter #body-inner, 
#chapter #body-inner h1, 
#chapter #body-inner p
{text-align:center;}

.announcement{background:orange;padding:20px;text-decoration:center;}
.announcement a{color:black;font-weight:bold;}


#sidebar ul.topics > li > a i{width:30px;}

.field-group{margin:0 0 32px 0;}

.contact-form input,
.contact-form textarea {
	margin-bottom: .5rem;
	font: inherit;
	width: 95%;
}



.contact-form input:not(:placeholder-shown):valid,
  .contact-form textarea:not(:placeholder-shown):valid {
	background-color: #f4feee;
}

.contact-form input:not(:placeholder-shown):invalid,
  .contact-form textarea:not(:placeholder-shown):invalid {
	background-color: #fff0f0;
}

.contact-form label,
.contact-form button {
	display: block;
}

.js-submitted input:valid,
.js-submitted textarea:valid {
	background-color: #f4feee;
}

.js-submitted input:invalid,
.js-submitted textarea:invalid {
	background-color: #fff0f0;
}

.hidden {
	display: none;
}



