/* General reset */
html, body, div, span, object, iframe, p, blockquote, pre,
abbr, address, cite, code,h1, h2, h3, h4, h5, h6,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
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, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
html, body {
    overflow-x: hidden;
}
body {
    font: 400 18px/30px 'Source Sans Pro', sans-serif;
    height: 100%;
    min-width: 300px;
    color: #444444;
}
article,aside,details,figcaption,figure,
footer,header,menu,nav,section {
    display:block;
}
ol, ul, li {
    list-style:none;
}
a {
    color:#000;
    outline: none;
    text-decoration: none;
    cursor: pointer !important;
}
img {
    border: none;
    vertical-align: top;
    max-width: 100%;
}
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
a[href^="tel:"] {
    color: #000;
    text-decoration: none;
}
.container {
    width: 1170px;
    margin: 0 auto;
}
.main {
    opacity: 0;
    -webkit-transition: opacity 0.3s linear;
    -moz-transition: opacity 0.3s linear;
    transition: opacity 0.3s linear;
}
.header {
    background: #ffffff;
}
.header .container {
    display: flex;
    justify-content: center;
}
.logo {
	width: 230px;
    flex-shrink: 0;
    margin: 13px 0 15px;
}
.header2 .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.header2 img{
    flex-shrink: 0;
}
.header2 .logo {
    margin: 13px 0 6px;
}
.tel_fb {
    font-size: 33px;
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
}
.tel_fb:hover {
    color: #03049c;
    -webkit-animation: swing 1s ease;
    animation: swing 1s ease;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
}
@-webkit-keyframes swing
{
    15%
    {
        -webkit-transform: translateX(5px);
        transform: translateX(5px);
    }
    30%
    {
        -webkit-transform: translateX(-5px);
        transform: translateX(-5px);
    }
    50%
    {
        -webkit-transform: translateX(3px);
        transform: translateX(3px);
    }
    65%
    {
        -webkit-transform: translateX(-3px);
        transform: translateX(-3px);
    }
    80%
    {
        -webkit-transform: translateX(2px);
        transform: translateX(2px);
    }
    100%
    {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@keyframes swing
{
    15%
    {
        -webkit-transform: translateX(5px);
        transform: translateX(5px);
    }
    30%
    {
        -webkit-transform: translateX(-5px);
        transform: translateX(-5px);
    }
    50%
    {
        -webkit-transform: translateX(3px);
        transform: translateX(3px);
    }
    65%
    {
        -webkit-transform: translateX(-3px);
        transform: translateX(-3px);
    }
    80%
    {
        -webkit-transform: translateX(2px);
        transform: translateX(2px);
    }
    100%
    {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
/* Формы */
.wpcf7-form.invalid span.wpcf7-not-valid-tip,
.wpcf7-form.invalid .wpcf7-validation-errors,
.wpcf7-form span.ajax-loader {
    display: none !important;
}
.wpcf7-form.invalid .wpcf7-not-valid {
    border-color: red !important;
    border: 1px solid red !important;
}
div.wpcf7-mail-sent-ng, div.wpcf7-aborted {
    border: 0 !important;
    color: red !important;
}
div.wpcf7-mail-sent-ok {
    display: none !important;
}
.success {
    display: none;
    text-align: center;
    color: #fff;
    font: 700 50px/55px 'Amatic SC', sans-serif;
}
.success img {
    margin-bottom: 5px;
}
@media (max-width: 1190px) {
    body {
        font: 400 16px/28px 'Source Sans Pro', sans-serif;
    }
}
@media (max-width: 1190px) and (min-width: 980px){
    .container {
        width: 960px;
    }
}
@media (max-width: 979px) {
    .tel_fb {
        font-size: 23px;
        margin: 5px;
    }
}
@media (max-width: 979px) and (min-width: 768px){
    .container {
        width: 740px;
    }
}
@media (max-width: 767px) and (min-width: 480px){
    .container {
        width: 450px;
    }
}
@media (max-width: 479px) {
    .container {
        width: 290px;
    }
}