/**

* Reset some basic elements
*/

body, h1, h2, h3, h4, h5, h6, p, blockquote, pre, hr, dl, dd, ol, ul, figure {

margin: 0;
padding: 0;

}

/**

* Set `margin-bottom` to maintain vertical rhythm
*/

h1, h2, h3, h4, h5, h6, p, blockquote, pre, ul, ol, dl, figure, %vertical-rhythm {

margin-bottom: $spacing-unit / 2;

}

/**

* Images
*/

img {

max-width: 100%;
vertical-align: middle;

}

/**

* Figures
*/

figure {

margin: 0 !important;

}

figure > img {

display: block;

}

figure > img.thumb {

float: left;
margin: 0 1rem 1rem 2rem;

}

figcaption {

font-size: $small-font-size;
margin-top: 1rem;

}

/**

* Lists
*/

ul, ol {

margin-left: $spacing-unit;

}

li {

> ul,
> ol {
     margin-bottom: 0;
}

}

/**

* Headings
*/

h1, h2, h3, h4, h5, h6 {

font-weight: 300;

}

/**

* Links
*/

a {

outline: none;
transition: all .2s ease-in!important;
transition-property: all;
transition-duration: 0.2s;
transition-timing-function: ease-in;
transition-delay: initial;
color: $link-color;
text-decoration: none;

&:visited {
    color: $link-visited-color;
}

&:hover {
    color: $link-hover-color;
}

}

/**

* Blockquotes
*/

blockquote {

color: darken($body-bg, 25%);
border-left: 4px solid lighten($complimentary-color, 35%);
padding-left: $spacing-unit / 2;
font-size: 18px;
letter-spacing: -1px;
font-style: italic;

> :last-child {
    margin-bottom: 0;
}

}

/**

* Code formatting
*/

pre, code {

font-size: 15px;
border: 1px solid darken($complimentary-color, 15%);
border-radius: 3px;
background-color: #eef;

}

code {

padding: 1px 5px;

}

pre {

padding: 8px 12px;
overflow-x: scroll;

> code {
    border: 0;
    padding-right: 0;
    padding-left: 0;
}

}

/**

* Clearfix
*/

%clearfix {

&:after {
    content: "";
    display: table;
    clear: both;
}

}

/**

* Icons
*/

.icon {

> svg {
    display: inline-block;
    width: 16px;
    height: 16px;
    vertical-align: middle;

    path {
        fill: $complimentary-color;
    }
}

}

/**

*  Forms
*/

input {

text-rendering: auto;
color: $body-font-color;
letter-spacing: normal;
word-spacing: normal;
text-transform: none;
text-indent: 0px;
text-shadow: none;
display: inline-block;
text-align: start;
margin: 0em 0em 0em 0em;

}

[type='text'], [type='email'], textarea {

display: block;
box-sizing: border-box;
width: 100%;
height: 2.4375rem;
padding: 0.5rem;
border: 1px solid #cacaca;
margin: 0 0 1rem;
font-size: 1rem;
color: $body-font-color;
background-color: #fefefe;
box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
border-radius: 0;
transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
-webkit-appearance: none;
-moz-appearance: none;

}

textarea {

min-height: 250px!important;

}

input {

min-height: 250px!important;
max-width: 100%;

}

input {

-webkit-appearance: button;
cursor: pointer;

}

/**

*  Buttons
*/

.button {

display: inline-block;
text-align: center;
line-height: 1;
cursor: pointer;
-webkit-appearance: none;
transition: background-color 0.25s ease-out, color 0.25s ease-out;
vertical-align: middle;
border: 1px solid transparent;
border-radius: 0;
padding: 0.85em 1em;
margin: 1rem 0;
font-size: 0.9rem;
background-color: $button-color;
color: $button-text-color;

}

.button:hover, .button:focus, button:hover, button:focus {

background-color: $button-hover;
color: $button-text-color;
text-decoration: none;

}