/* 0.0 Сброс настроек
 *
 * --------------------------------------------------------------------------- */

html, body,
div, span, img,
h1, h2, h3, h4, h5, h6, 
p, blockquote, acronym, address, del, em, 
q, s, small, strong, sub, sup, b, u, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label,
table, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, footer, header, hgroup,
menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;                         /* обнуляем отступы и убираем бордюры */
    vertical-align: baseline;           /* приводим все к одной базовой линии */
    background: transparent;            /* чтобы не проскакивали левые фоны, установленные по умолчанию */
    font-size: 100%;                    /* размер шрифта всем одинаковый */
}

a {                                     /* ссылка не в общем списке чтобы не сбрасывать outline по умолчанию */
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

table {                                 /* устраняем отступы между ячейками таблицы */
    border-collapse: collapse; 
    border-spacing: 0;
}

td, td img {
    vertical-align: top;                /* возвращаем привычное вертикальное выравнивание */
} 

input, select, button, textarea {
    margin: 0;                          /* убираем отступы по умолчанию для элементов форм (в частности для checkbox и radio) */
    font-size: 100%;                    /* делаем размер шрифтов везде одинаковым */
}

input[type="text"], 
input[type="password"], 
textarea {
    padding: 0;                         /* убираем внутренние отступы для текстовых полей */
}

input[type="checkbox"] {                /* вертикальное выравнивание чекбоксов и радиобатонов относительно меток */
    vertical-align: bottom;
}

input[type="radio"] {
    vertical-align: text-bottom;
}

sub {
    vertical-align: sub;
    font-size: smaller;
}

sup {
    vertical-align: super;
    font-size: smaller;
}

del {
    text-decoration: line-through; 
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display:block;
}

nav ul {
    list-style:none;
}

/* 0.0 Базовые настройки
 *
 * --------------------------------------------------------------------------- */
html, body {
    height: 100%;
    width: 100%;
}

label, 
input[type="button"], 
input[type="submit"], 
button {
    cursor: pointer;
}

blockquote, q {
    quotes: none; 
}

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

p {
    color: #444;
    font-size: 18px;
    line-height: 30px;
    margin: 0 0 30px;
}

.invisible {
    visibility: hidden;
}

.hidden {
    display: none;
}

hr.clear {
    clear: both;
    font-size: 0;
    height: 0;
    line-height: 0;
    visibility: hidden;
}