/*
Layers CSS 1.1.2 
Released by Jerry Jäppinen under the MIT license
http://eiskis.net/layers
2014-12-29 12:30 UTC
*/

/*Basics*/
html, body {
    width: 100%;
    height: 100%;
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp, a,
small, strong, sub, sup, var, i, b,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    clear: both;
    outline-width: 0;
    border-width: 0;
    border-style: solid;
    border-color: transparent;
    background: transparent;
    outline-style: solid;
    vertical-align: baseline;
}

html, body, blockquote, pre, table, form {
    margin: 0;
    padding: 0;
}

figure, button, input, select, textarea {
    margin: 0;
}

img, iframe, button, input, select, textarea {
    max-width: 100%;
}

iframe {
    width: 100%;
}

/*HTML5 elements*/
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
    display: block;
}

audio, canvas, video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

audio:not([controls]) {
    display: none;
}

[hidden] {
    display: none;
}

/*Improve scaled image quality in IE7*/
img {
    -ms-interpolation-mode: bicubic;
}

/*Correct overflows in IE9*/
svg:not(:root) {
    overflow: hidden;
}

/*White-space behavior in pre*/
pre {
    white-space: pre-wrap;
    word-wrap: break-word;
}

/*Document elements*/

/*Lists*/
ul {
    list-style: disc;
    padding-left: 2em;
}

ol {
    list-style: decimal;
    padding-left: 2em;
}

nav ul, nav ol {
    list-style: none;
    list-style-image: none;
    padding-left: 0;
}

/*Inline*/
sub, sup {
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

/*Tables*/
table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}

caption, th, td {
    text-align: left;
    vertical-align: top;
}

/*Text*/

/*Fonts*/
html {
    font-size: 100%;
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

h1, h2, h3, h4, h5, h6, strong, dt, mark, th {
    font-weight: bold;
}

/*Interactive*/
a {
    text-decoration: underline;
}

a:hover {
    text-decoration: none;
}

input, select, textarea, button {
    font-family: inherit;
}

input[type=""], input[type="text"], input[type="password"], input[type="email"], input[type="number"], input[type="url"], input[type="search"], input[type="tel"], select, textarea, pre, code, kbd, samp {
    font-size: inherit;
    line-height: inherit;
}

/*Non-compliant browsers require this as separate declaration*/
input:not([type]) {
    font-size: inherit;
    line-height: inherit;
}

button, input, select, textarea, pre, code, kbd, samp {
    font-weight: inherit;
}

button, select {
    text-transform: none;
}

/*Inline markup*/
em, dfn, q, blockquote {
    font-style: italic;
}

del {
    text-decoration: line-through;
}

/*Quotes*/
blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}

/*Forms & interaction*/

/*Use the same box-model and sizing in all browsers*/
button,
input,
textarea {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    display: inline-block;
}

/*Make search fields consistent with text fields on Webkit*/
input[type="search"] {
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/*Get IE on the line with checkboxes*/
input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

/*Make button rendering consistent on Firefox 4+*/
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

/*Style clickable inputs consistently on all webkits*/
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
}

/*Buttons have center-aligned text*/
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    text-align: center;
}

/*Use sensible alignments*/
button, input, select {
    vertical-align: baseline;
    *vertical-align: middle;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

/*Use sensible cursors*/
body {
    cursor: default;
}

abbr[title], dfn[title] {
    text-decoration: underline;
    cursor: help;
}

a,
label,
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
input[type="radio"],
input[type="checkbox"],
select,
option,
input[type='image'],
input[type='file'] {
    cursor: pointer;
}

.disabled button,
.disabled label,
.disabled a,
button.disabled,
label.disabled,
a.disabled,
.disabled input[type="submit"],
.disabled input[type="button"],
.disabled input[type="reset"],
input[type="submit"].disabled,
input[type="button"].disabled,
input[type="reset"].disabled {
    cursor: default;
}

a[disabled],
button[disabled],
input[disabled] {
    cursor: default;
}

/*Consistent outlines*/
a:focus {
    outline-style: dotted;
}

a:active, a:hover {
    outline: 0;
}

/*Form elements*/

/*Dimensions*/
input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type=""] {
    width: 20em;
    max-width: 90%;
}

input:not([type]) {
    width: 20em;
    max-width: 90%;
}

input[type="text"].squeeze,
input[type="password"].squeeze,
input[type="email"].squeeze,
input[type="url"].squeeze,
input[type="search"].squeeze,
input[type="tel"].squeeze,
input[type=""].squeeze {
    width: 14em;
}

input:not([type]).squeeze {
    width: 14em;
}

textarea {
    width: 32em;
    max-width: 90%;
    height: 10.72em;
}

textarea.squeeze {
    width: 20em;
    height: 4.02em;
}

/*Resets*/
button.plain, input.plain, textarea.plain {
    color: inherit;
    border-width: 0;
    border-style: solid;
    background-color: transparent;
    padding: 0;
}

button.plain, input[type="submit"].plain, input[type="button"].plain, input[type="reset"].plain {
    line-height: inherit;
    font-size: inherit;
    font-family: inherit;
}

/*Explicit padding for input elements*/
input.buffer, input.buffer-top, textarea.buffer, textarea.buffer-top {
    padding-top: 0.35em;
}

input.buffer, input.buffer-right, textarea.buffer, textarea.buffer-right {
    padding-right: 0.6em;
}

input.buffer, input.buffer-bottom, textarea.buffer, textarea.buffer-bottom {
    padding-bottom: 0.4em;
}

input.buffer, input.buffer-left, textarea.buffer, textarea.buffer-left {
    padding-left: 0.6em;
}

/*Change box model for grid elements*/
.row, .column {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/*Rows with buffer space*/
.row {
    width: 100%;
    clear: both;
    float: none;
    *zoom: 1;
}

.row-content {
    max-width: 70em;
    margin: 0 auto;
    *zoom: 1;
}

.row:after, .row-content:after {
    content: " ";
    display: table;
    clear: both;
}

.row-content.buffer,
.row-content.buffer-top {
    padding-top: 2%;
}

.row-content.buffer.even,
.row-content.buffer-top.even {
    padding-top: 6%;
}

.row-content.buffer,
.row-content.buffer-right {
    padding-right: 8%;
}

.row-content.buffer,
.row-content.buffer-bottom {
    padding-bottom: 6%;
}

.row-content.buffer,
.row-content.buffer-left {
    padding-left: 8%;
}

/*Column basics (12-based fluid grid)*/
.column.one,
.column.two,
.column.sixth,
.column.fifth,
.column.three,
.column.fourth,
.column.four,
.column.twofifths,
.column.twosixths,
.column.third,
.column.five,
.column.six,
.column.half,
.column.threefifths,
.column.threesixths,
.column.twofourths,
.column.seven,
.column.eight,
.column.fourfifths,
.column.foursixths,
.column.twothirds,
.column.nine,
.column.threefourths,
.column.ten,
.column.fivefifths,
.column.fivesixths,
.column.eleven,
.column.twelve,
.column.full {
    clear: none;
    float: left;
    min-height: 1px;
    margin-left: 0;
    margin-right: 3.8%;
}

.column.right.one,
.column.right.two,
.column.right.fifth,
.column.right.sixth,
.column.right.three,
.column.right.fourth,
.column.right.four,
.column.right.twofifths,
.column.right.twosixths,
.column.right.third,
.column.right.five,
.column.right.six,
.column.right.half,
.column.right.threefifths,
.column.right.threesixths,
.column.right.twofourths,
.column.right.seven,
.column.right.eight,
.column.right.fourfifths,
.column.right.foursixths,
.column.right.twothirds,
.column.right.nine,
.column.right.threefourths,
.column.right.ten,
.column.right.fivefifths,
.column.right.fivesixths,
.column.right.eleven,
.column.right.twelve,
.column.right.full {
    float: right;
    margin-right: 0;
    margin-left: 3.8%;
}

.column.first,
.column.full,
.column.twelve {
    clear: both;
}

.column.reset {
    margin-right: 0;
}

.column.right.reset {
    margin-left: 0;
}

/**
* Column widths
*/

/*Full-width column*/
.column.full,
.column.twelve {
    width: 100%;
}

/*Fifth*/
.column.fifth {
    width: 16.95%; /* 16.96 */
}

.column.twofifths {
    width: 37.70%; /* 33.92 + 3.8 */
}

.column.threefifths {
    width: 58.45%; /* 50.88 + 3.8 + 3.8 */
}

.column.fourfifths {
    width: 79.20%; /* 67.84 + 3.8 + 3.8 + 3.8 */
}

.column.push-fifth {
    margin-left: 20.45%;
}

.column.right.push-fifth {
    margin-right: 20.45%;
}

.column.push-twofifths {
    margin-left: 41.50%;
}

.column.right.push-twofifths {
    margin-right: 41.50%;
}

.column.push-threefifths {
    margin-left: 62.25%;
}

.column.right.push-threefifths {
    margin-right: 62.25%;
}

.column.push-fourfifths {
    margin-left: 83.00%;
}

.column.right.push-fourfifths {
    margin-right: 83.00%;
}

/*Fluid column widths*/
.column.one {
    width: 4.85%;
}

.column.two,
.column.sixth {
    width: 13.45%;
}

.column.three,
.column.fourth {
    width: 22.05%;
}

.column.four,
.column.twosixths,
.column.third {
    width: 30.75%;
}

.column.five {
    width: 39.45%;
}

.column.six,
.column.half,
.column.threesixths,
.column.twofourths {
    width: 48%;
}

.column.seven {
    width: 56.75%;
}

.column.eight,
.column.foursixths,
.column.twothirds {
    width: 65.4%;
}

.column.nine,
.column.threefourths {
    width: 74.05%;
}

.column.ten,
.column.fivesixths {
    width: 82.7%;
}

.column.eleven {
    width: 91.35%;
}

/*Shift guttered columns*/
.column.push-one {
    margin-left: 8.65%;
}

.column.right.push-one {
    margin-right: 8.65%;
}

.column.push-two,
.column.push-sixth {
    margin-left: 17.25%;
}

.column.right.push-two,
.column.right.push-sixth {
    margin-right: 17.25%;
}

.column.push-three,
.column.push-fourth {
    margin-left: 25.85%;
}

.column.right.push-three,
.column.right.push-fourth {
    margin-right: 25.85%;
}

.column.push-four,
.column.push-twosixths,
.column.push-third {
    margin-left: 34.55%;
}

.column.right.push-four,
.column.right.push-twosixths,
.column.right.push-third {
    margin-right: 34.55%;
}

.column.push-five {
    margin-left: 43.25%;
}

.column.right.push-five {
    margin-right: 43.25%;
}

.column.push-six,
.column.push-half,
.column.push-threesixths,
.column.push-twofourths {
    margin-left: 51.8%;
}

.column.right.push-six,
.column.right.push-half,
.column.right.push-threesixths,
.column.right.push-twofourths {
    margin-right: 51.8%;
}

.column.push-seven {
    margin-left: 60.55%;
}

.column.right.push-seven {
    margin-right: 60.55%;
}

.column.push-eight,
.column.push-foursixths,
.column.push-twothirds {
    margin-left: 69.2%;
}

.column.right.push-eight,
.column.right.push-foursixths,
.column.right.push-twothirds {
    margin-right: 69.2%;
}

.column.push-nine,
.column.push-threefourths {
    margin-left: 77.85%;
}

.column.right.push-nine,
.column.right.push-threefourths {
    margin-right: 77.85%;
}

.column.push-ten,
.column.push-fivesixths {
    margin-left: 86.5%;
}

.column.right.push-ten,
.column.right.push-fivesixths {
    margin-right: 86.5%;
}

.column.push-eleven {
    margin-left: 95.15%;
}

.column.right.push-eleven {
    margin-right: 95.15%;
}

/*No gutters*/
.column.one.reset {
    width: 8.3%;
}

.column.two.reset,
.column.sixth.reset {
    width: 16.65%;
}

.column.fifth.reset {
    width: 20%;
}

.column.three.reset,
.column.fourth.reset {
    width: 25%;
}

.column.four.reset,
.column.twosixths.reset,
.column.third.reset {
    width: 33.3%;
}

.column.twofifths.reset {
    width: 40%;
}

.column.five.reset {
    width: 41.65%;
}

.column.six.reset,
.column.half.reset,
.column.threesixths.reset,
.column.twofourths.reset {
    width: 50%;
}

.column.seven.reset {
    width: 58.3%;
}

.column.threefifths.reset {
    width: 60%;
}

.column.eight.reset,
.column.foursixths.reset,
.column.twothirds.reset {
    width: 66.6%;
}

.column.nine.reset,
.column.threefourths.reset {
    width: 75%;
}

.column.fourfifths.reset {
    width: 80%;
}

.column.ten.reset,
.column.fivesixths.reset {
    width: 83.35%;
}

.column.eleven.reset {
    width: 91.7%;
}

/*Shift no-gutter columns*/
.column.reset.push-one {
    margin-left: 8.3%;
}

.column.reset.right.push-one {
    margin-right: 8.3%;
}

.column.reset.push-two,
.column.reset.push-sixth {
    margin-left: 16.65%;
}

.column.reset.right.push-two,
.column.reset.right.push-sixth {
    margin-right: 16.65%;
}

.column.reset.push-fifth {
    margin-left: 20%;
}

.column.reset.right.push-fifth {
    margin-right: 20%;
}

.column.reset.push-three,
.column.reset.push-fourth {
    margin-left: 25%;
}

.column.reset.right.push-three,
.column.reset.right.push-fourth {
    margin-right: 25%;
}

.column.reset.push-four,
.column.reset.push-twosixths,
.column.reset.push-third {
    margin-left: 33.3%;
}

.column.reset.right.push-four,
.column.reset.right.push-twosixths,
.column.reset.right.push-third {
    margin-right: 33.3%;
}

.column.reset.push-twofifths {
    margin-left: 40%;
}

.column.reset.right.push-twofifths {
    margin-right: 40%;
}

.column.reset.push-five {
    margin-left: 41.65%;
}

.column.reset.right.push-five {
    margin-right: 41.65%;
}

.column.reset.push-six,
.column.reset.push-half,
.column.reset.push-threesixths,
.column.reset.push-twofourths {
    margin-left: 50%;
}

.column.reset.right.push-six,
.column.right.reset.push-half,
.column.right.reset.push-threesixths,
.column.right.reset.push-twofourths {
    margin-right: 50%;
}

.column.reset.push-seven {
    margin-left: 58.3%;
}

.column.reset.right.push-seven {
    margin-right: 58.3%;
}

.column.reset.push-threefifths {
    margin-left: 60%;
}

.column.reset.right.push-threefifths {
    margin-right: 60%;
}

.column.reset.push-eight,
.column.reset.push-foursixths,
.column.reset.push-twothirds {
    margin-left: 66.6%;
}

.column.reset.right.push-eight,
.column.reset.right.push-foursixths,
.column.reset.right.push-twothirds {
    margin-right: 66.6%;
}

.column.reset.push-nine,
.column.reset.push-threefourths {
    margin-left: 75%;
}

.column.reset.right.push-nine,
.column.reset.right.push-threefourths {
    margin-right: 75%;
}

.column.reset.push-fourfifths {
    margin-left: 80%;
}

.column.reset.right.push-fourfifths {
    margin-right: 80%;
}

.column.reset.push-ten,
.column.reset.push-fivesixths {
    margin-left: 83.35%;
}

.column.reset.right.push-ten,
.column.reset.right.push-fivesixths {
    margin-right: 83.35%;
}

.column.reset.push-eleven {
    margin-left: 91.7%;
}

.column.reset.right.push-eleven {
    margin-right: 91.7%;
}

/*Last in line*/
.column.last {
    margin-right: 0;
}

.column.right.last {
    margin-left: 0;
}

/*Fixed-width column with another column taking rest of the available space (fixed on the left)*/
.column.fluid {
    clear: none;
    float: left;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.column.fluid > .column-content {
    margin-right: 10em;
}

.column.fixed {
    position: static;
    clear: none;
    float: right;
    margin-right: 0;
    margin-left: -100%;
    width: 10em;
}

/*Reverse stacking*/
.column.fluid.right > .column-content {
    margin-right: 0;
    margin-left: 10em;
}

.column.fixed.right {
    float: left;
}

/*List layouts*/

/*Modified lists*/
ul.plain,
ul.plain ul,
ul.plain ol,
ol.plain,
ol.plain ul,
ol.plain ol,
ul.inline,
ol.inline,
ul.collapse,
ol.collapse {
    padding-left: 0;
    list-style-type: none;
}

/*Child lists*/
ul.plain ul,
ul.plain ol,
ol.plain ul,
ol.plain ol,
ul.inline ul,
ul.inline ol,
ol.inline ul,
ol.inline ol,
ul.collapse ul,
ul.collapse ol,
ol.collapse ul,
ol.collapse ol {
    margin-top: 0;
    margin-bottom: 0;
}

/*Plain definition lists*/
dl.plain dt {
    font-weight: inherit;
}

/*Inline lists*/
ul.inline.right, ol.inline.right, dl.inline.right {
    text-align: right;
}

ul.inline.center, ol.inline.center, dl.inline.center {
    text-align: center;
}

ul.inline > li, ol.inline > li, dl.inline > dt, dl.inline > dd {
    display: inline;
}

/*Horizontal lists with block elements*/
ul.collapse, ol.collapse, dl.collapse {
    float: left;
    clear: none;
}

ul.collapse.right, ol.collapse.right, dl.collapse.right {
    float: right;
}

ul.collapse > li, ol.collapse > li, dl.collapse > dt, dl.collapse > dd {
    float: left;
    clear: none;
}

/*Rhythm*/
body {
    line-height: 1.34;
}

h1, h2, h3, h4, h5, h6 {
    margin-top: 1.34em;
    margin-bottom: 0.67em;
}

p, ul, ol, table, pre, blockquote {
    margin-top: 0.67em;
    margin-bottom: 1.34em;
}

/*Nested lists*/
ul ul, ul ol, ol ol, ol ul {
    margin-top: 0;
    margin-bottom: 0.67em;
}

/*Definition lists*/
dl {
    margin-bottom: 1.34em;
}

dl.plain {
    margin-top: 0.67em;
}

dl.reset, dl.reset-top {
    margin-top: 0;
}

dt {
    margin-top: 0.67em;
    margin-bottom: 0;
}

dl.plain > dt, dl.inline > dt, dl.collapse > dt {
    margin-top: 0;
}

dd {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
}

/*Tables*/
caption {
    margin-bottom: 0.67em;
}

th, td {
    padding: 0.67em;
}

.squeeze th, .squeeze td, th.squeeze, td.squeeze, table table th, table table td {
    padding: 0.335em;
}

table.plain th,
table.plain td,
tr.plain th,
tr.plain td,
tbody.plain th,
tbody.plain td,
thead.plain th,
thead.plain td,
tfoot.plain th,
tfoot.plain td,
th.plain,
td.plain {
    padding: 0;
}

/*Headings*/
h1.squeeze, h2.squeeze, h3.squeeze, h4.squeeze, h5.squeeze, h6.squeeze,
h1.squeeze-top, h2.squeeze-top, h3.squeeze-top, h4.squeeze-top, h5.squeeze-top, h6.squeeze-top {
    margin-top: 0.67em;
}

p.squeeze, ul.squeeze, ol.squeeze, table.squeeze, pre.squeeze, blockquote.squeeze,
p.squeeze-top, ul.squeeze-top, ol.squeeze-top, table.squeeze-top, pre.squeeze-top, blockquote.squeeze-top {
    margin-top: 0.335em;
}

h1.squeeze, h2.squeeze, h3.squeeze, h4.squeeze, h5.squeeze, h6.squeeze,
h1.squeeze-bottom, h2.squeeze-bottom, h3.squeeze-bottom, h4.squeeze-bottom, h5.squeeze-bottom, h6.squeeze-bottom {
    margin-bottom: 0.335em;
}

p.squeeze, ul.squeeze, ol.squeeze, table.squeeze, pre.squeeze, blockquote.squeeze,
p.squeeze-bottom, ul.squeeze-bottom, ol.squeeze-bottom, table.squeeze-bottom, pre.squeeze-bottom, blockquote.squeeze-bottom {
    margin-bottom: 0.67em;
}

/*Spacing*/
.push, .push-top {
    margin-top: 1.34em;
}

.push, .push-right {
    margin-right: 1.34em;
}

.push, .push-bottom {
    margin-bottom: 1.34em;
}

.push, .push-left {
    margin-left: 1.34em;
}

/*No spacing*/
.reset, .reset-top {
    margin-top: 0;
}

.reset, .reset-right {
    margin-right: 0;
}

.reset, .reset-bottom {
    margin-bottom: 0;
}

.reset, .reset-left {
    margin-left: 0;
}

/*Buffers*/
.buffer, .buffer-top {
    padding-top: 1em;
}

.buffer.even, .buffer-top.even {
    padding-top: 2em;
}

.buffer, .buffer-right {
    padding-right: 2em;
}

.buffer, .buffer-bottom {
    padding-bottom: 2em;
}

.buffer, .buffer-left {
    padding-left: 2em;
}

/*No buffers*/
.no-buffer, .no-buffer-top {
    padding-top: 0;
}

.no-buffer, .no-buffer-right {
    padding-right: 0;
}

.no-buffer, .no-buffer-bottom, .buffer.no-buffer-bottom {
    padding-bottom: 0;
}

.no-buffer, .no-buffer-left {
    padding-left: 0;
}

/*Table gravity*/

/*Horizontal*/
th.left, td.left {
    text-align: left;
}

th.right, td.right {
    text-align: right;
}

th.center, td.center {
    text-align: center;
}

/*Vertical*/
th.top, td.top {
    vertical-align: top;
}

th.vertical-center, td.vertical-center, th.middle, td.middle {
    vertical-align: middle;
}

th.bottom, td.bottom {
    vertical-align: bottom;
}

/*Overall rhythm*/
body {
    word-break: keep-all;

    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -epub-hyphens: auto;
    hyphens: auto;
}

input, textarea {
    word-break: normal;
}

/*Font families*/
html {
    font-family: "Segoe UI", "Helvetica Neue", "Helvetica", "Lucida Grande", "Ubuntu", "Roboto", "Arial", sans-serif;
}

blockquote, q {
    font-family: "Droid Serif", "Georgia", serif;
}

pre, code, kbd, samp {
    font-family: "Menlo", "Monaco", "Segoe UI Mono", "Droid Sans Mono", "Consolas", monospace;
    font-size: 0.9em;
}

pre code, pre kbd, pre samp {
    font-size: 1em;
}

/*Sizes*/
h1, h2, h3 {
    text-rendering: optimizeLegibility;
}

/*Force floats*/
.keep-left, .keep-right {
    clear: none;
}

.keep-left {
    float: left;
}

.keep-right {
    float: right;
}

.keep-center {
    margin-right: auto;
    margin-left: auto;
}

/*Positioning*/
.static {
    position: static;
}

.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

.fixed {
    position: fixed;
}

/*Blocks and inline-blocks*/
.block {
    display: block;
}

.inline-block {
    display: inline-block;
}

.inline {
    display: inline;
}

ul.inline, ol.inline, dl.inline {
    display: block;
}

/*Utilities for common CSS-based behavior*/
.hidden {
    display: none;
}

.clear {
    clear: both;
}

.clear-after:after {
    content: " ";
    display: table;
    clear: both;
}

.clear-after {
    *zoom: 1;
}

/*Dry element of its content*/
.dry {
    text-indent: -9999em;
    direction: ltr;
}

/*Include padding and border in dimensions*/
.content-box {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}

.border-box,
button.border-box,
input.border-box,
textarea.border-box {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
