html {
	box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: $color__background-body; /* Fallback for when there is no custom background color defined. */
}

hr {
	background-color: $color__background-hr;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul, ol {
    margin: 0 0 1.5em 3em;
}

ul {
    list-style: disc;
}

ol {
    list-style: decimal;
}

li > ul,
li > ol {
    margin-bottom: 0;
    margin-left: 1.5em;
}

dt {
    font-weight: bold;
}

dd {
    margin: 0 1.5em 1.5em;
}


img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
    vertical-align: middle;
}

figure {
	margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */
}

table {
    margin: 0 0 1.5em;
    width: 100%;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    background: $color__link;
    color: #fff;
    border: none;
    text-transform: uppercase;
    font-weight: 700;
    cursor: pointer;
    padding: 15px;
    font-size: 13px;
    border-radius: 3px;
    &:hover {
        background: #000;
    }

    &:active,
    &:focus {
        background: #000;
    }
}


input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
    color: $color__text-input;
    border: 1px solid $color__border-input;
    border-radius: 3px;
    padding: 5px;
    width: 100%;
    &:focus {
        color: $color__text-input-focus;
    }
}

select {
    border: 1px solid $color__border-input;
}

textarea {
    width: 100%;
    resize: vertical;
}
