@import url('https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,500,500i,700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed:300,400,700&display=swap');


:root {
    --color1: #379CC8; /*Главный цвет заливки*/
    --color1-hover: #4482ae;  /*Главный цвет заливки кнопки hover*/
    --color2: #379CC8;
    
    --text-color: #363336; /*Цет текста*/
    --a-hover-color: #379CC8; /*Цет ссылки hover*/
   
   
    --footer_height: 320px;
    --footer-color: #363336;
    --footer-color-hover: #379CC8;
    
    --popup-background: linear-gradient(135deg, #2b97d5 0%, #0069b5 100%);
    
    --mobile-button-color: #379CC8;
  
}


html {height: 100%;}
body
{
    font-size: 1.1rem;
    line-height: 1.1;
    margin: 0;
    padding: 0;
    text-align: left;
    height: auto !important;
    height: 100%;
    min-height: 100%;
    position: relative;
    background-color: #FFF;
    color: var(--text-color);

    font-family: 'Roboto Condensed', Tahoma, sans-serif !important;
}

a, a:visited {color:var(--text-color); outline: none; transition: all 0.1s ease-out 0s; text-decoration-skip-ink: none;}
a:hover {var(--a-hover-color); text-decoration: none;}
a img {border: none;}

h1 {font-weight: bold; font-size: 2.2rem; margin: 1rem 0;}
h2 {font-weight: bold; font-size: 2rem; margin: 0.5rem 0 0.5rem;}
h3 {font-weight: bold; font-size: 1.5rem; margin: 0.5rem 0 0.5rem;}
h4 {font-weight: bold; font-size: 1.4rem; margin: 0.25rem 0 0.25rem;}


/*h1.styled, h2.styled {position: relative; margin-bottom: 40px;}
h1.styled::after, h2.styled::after {
    content: '';
    display: inline-block;
    height: 4px;
    width: 50px;
    background-color: #0067e3;
    bottom: -15px;
    left: 0;
    position: absolute;
}*/




.red {color: #dc2126;}

p {padding: 10px 0px;}
.overlay {width: 100%; height: 100%; display: block; z-index: 10;position: absolute; background-color: rgba(204, 204, 204, 0);}
table th {vertical-align: top;}
table td {vertical-align: top;}

.hr {border-top: 1px solid #D8D8D8; height: 1px; margin: 20px 0; clear: both;}
.hr hr {display:none;}
* html .hr {overflow: hidden;}

.lazy-hidden:not(.lazy-no-preloader) {background-image: url("data:image/svg+xml,%3Csvg fill='%23379CC8FF' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,20a9,9,0,1,1,9-9A9,9,0,0,1,12,21Z' transform='translate(12, 12) scale(0)'%3E%3CanimateTransform id='spinner_g88x' begin='0;spinner_yOmw.begin+0.6s' attributeName='transform' calcMode='spline' type='translate' dur='1.2s' values='12 12;0 0' keySplines='.52,.6,.25,.99'/%3E%3CanimateTransform begin='0;spinner_yOmw.begin+0.6s' attributeName='transform' calcMode='spline' additive='sum' type='scale' dur='1.2s' values='0;1' keySplines='.52,.6,.25,.99'/%3E%3Canimate begin='0;spinner_yOmw.begin+0.6s' attributeName='opacity' calcMode='spline' dur='1.2s' values='1;0' keySplines='.52,.6,.25,.99'/%3E%3C/path%3E%3Cpath d='M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,20a9,9,0,1,1,9-9A9,9,0,0,1,12,21Z' transform='translate(12, 12) scale(0)'%3E%3CanimateTransform id='spinner_yOmw' begin='spinner_g88x.begin+0.6s' attributeName='transform' calcMode='spline' type='translate' dur='1.2s' values='12 12;0 0' keySplines='.52,.6,.25,.99'/%3E%3CanimateTransform begin='spinner_g88x.begin+0.6s' attributeName='transform' calcMode='spline' additive='sum' type='scale' dur='1.2s' values='0;1' keySplines='.52,.6,.25,.99'/%3E%3Canimate begin='spinner_g88x.begin+0.6s' attributeName='opacity' calcMode='spline' dur='1.2s' values='1;0' keySplines='.52,.6,.25,.99'/%3E%3C/path%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center;background-size: 60px!important;}

/*Контейнеры*/
.content_container {max-width: 1200px; margin: 0px auto; position: relative; }
.container_page {padding-bottom: var(--footer_height);}
.bg_main {background: url(/pics/bg_main.png) no-repeat; background-size: cover;}
 

/*Хидер*/
header {
    width: 100%; position: relative; 
    display: table; 
    background-color: #FFFFFF;
    width: 100%; 
    z-index: 999; 
    color: var(--text-color);
}
header a {color: var(--color1);}
header label {font-weight: 300; margin-bottom: 5px; display: block; font-size: 0.95rem;}
header .logo {height: 100%; text-align: left; display: inline-block;}
header .logo a {
    text-transform: uppercase; 
    color: #FFFFFF!important; 
    font-weight: bold; 
    font-size: 2.2rem;
    text-decoration: none;
}
header .logo img {padding: 25px 10px;}
header .slogan {font-size: 0.95rem}
header .contacts {text-align: right;}
header .phone {color: var(--color1)}
header .phone a.tel {text-decoration: none; font-size: 1.3rem; font-weight: 400; padding: 2px 0; display: inline-block;}
header .address {font-size: 1.1rem; font-weight: 300; margin-bottom: 5px;}
header .email a {color: var(--color1);}
header .call_order {padding: 20px;}
header .contacts {padding: 20px 0 10px 0;}

header .right_col {padding-left: 100px;}


 
/*Футер*/
footer {
    background-color: #F1F1F1;
    //background: url(/pics/bg_footer.png) no-repeat;
    background-size: cover;
    
    height: var(--footer_height);
    padding-top: 35px;
    position: absolute; 
    bottom: 0; 
    width: 100%;
    color: var(--footer-color);
    left: 0;
    right: 0;
    -webkit-box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.3);
    -moz-box-shadow:    0px 0px 5px 0px rgba(50, 50, 50, 0.3);
    box-shadow:         0px 0px 5px 0px rgba(50, 50, 50, 0.3);
}
footer a {color: var(--footer-color); text-decoration: none;}
footer a:hover {color: var(--footer-color-hover)!important;  text-decoration: none!important;}
footer h3 {line-height: 1.1; font-size: 1.1rem; font-weight: 600; margin-bottom: 10px; padding: 0; }
footer .phone {margin: 3px 0; font-size: 1.3rem;}
footer .logo img {max-width: 100%;}

ul.footer_menu {list-style: none;margin:10px 0; line-height: 1.7;padding: 0;}
ul.footer_menu a {font-size: 1rem; color: var(--footer-color); font-size: 1.1rem; text-decoration: none;}
ul.footer_menu a.active {color: var(--footer-color-hover); text-decoration: none;}
ul.footer_menu li {padding: 0; margin: 0; padding: 0 20px; position: relative; display: block; width: 100%;}


footer .footer_contacts {text-align: left; line-height: 1.7;}
footer .footer_contacts .callback {color: #FFFFFF!important; text-transform: uppercase; text-decoration: underline; font-size: 0.8rem; margin-top: 10px; display: inline-block;}
footer .footer_contacts .callback:hover {text-decoration: none;} 
footer .label {font-weight: bold;}
footer .logo {color: #fff; font-size: 2rem; font-weight: 600;  padding: 0; text-align: left;}
footer .email a {text-decoration: underline;}

/*footer .phone {padding-left: 14px; background: url('/pics/phone_footer.png') 0 9px no-repeat;}
footer .address {padding-left: 14px; background: url('/pics/map_footer.png') 0 9px no-repeat;}
footer .time {padding-left: 20px; background: url('/pics/time_footer.png') 0 5px no-repeat;}*/


.dev {overflow: hidden; z-index: 1; display: inline-block; position: relative; margin-top: 40px;}
.dev .dev_text {position: absolute; top: 0px; right: 0px; color: var(--footer-color)!important; }
.dev .dev_text a {white-space:nowrap; color: var(--footer-color)!important; text-decoration: none;}
.dev .dev_text a, .dev .dev_text {font-family: Tahoma!important; font-weight: normal!important; font-size: 13px!important; line-height: 16px!important; font-weight: normal!important;}


/*Кнопка*/
.btn, a.btn {
    background-color: var(--color1); 
    //background: linear-gradient(0, #034a9f 0%, #0069e6 100%); 
    //background-color: #15487c; 
    outline: none;
    border: 0px;
    color: #FFFFFF!important;
    cursor: pointer;
    font-size: 0.95rem;
    text-align: center;
    text-decoration: none;
    line-height: 1.1rem;
    display: inline-block;
    padding: 12px 19px 13px;
    transition: all 0.2s ease 0s;
    width: auto;
     -moz-user-select: none;
    -o-user-select:none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
     user-select: none;
    
    border-radius: 30px;
   
}
.btn:hover, .btn.active {
    background: var(--color1-hover); 
    //background: linear-gradient(0, #034a9f 0%, #034a9f 100%);  
    color: #FFFFFF!important; text-decoration: none;
}
.btn.small {padding: 8px 16px 10px;}
.btn.big {padding: 20px 40px; font-size: 1rem; text-transform: uppercase;}
.btn.verybig {padding: 20px 50px; font-size: 22px;}
.btn.w100 {width: 100%;}
.btn.active {background-color: #cd0e4e;}

.btn.red {background-color: #dc2126;border-bottom: 3px solid #97171b;}
.btn.red:hover {background-color: #cd0e4e;}
.btn.color2 {background-color: #ffcc00; color: #000000!important;}
.btn.color2:hover {background-color: #2b639b!important; color: #FFFFFF!important; text-decoration: none;}



/*Главное меню*/
.main_menu {
    width: 100%;
    font-weight: 400;
    border-top: 1px solid #f0f0f0;
    border-bottom: 1px solid #f0f0f0;
    background-color: #F1F1F1;
}
.main_menu {margin: 20px 0 0 0;}
.main_menu a {color: var(--text-color);}
.main_menu li:hover > a, .main_menu li a.active { text-decoration: underline; color: var(--color1)}
.main_menu .root-item-selected {text-decoration: underline;}
.main_menu .content_container {overflow: visible; }
.main_menu .content_container > ul  {
    width: 100%;
    font-size: 1rem;
    font-weight: 500;
    text-align: center;
    padding: 0;
    margin: 0;
}
.main_menu li 
{
    //display: table-cell;
    float: left;
    box-sizing: border-box;
    transition: all 0.2s ease 0s;
    list-style: none;
    height: 100%;
    position: relative;
    padding: 0 20px;
    height: 70px;
    
}
.main_menu li:last-child:after  {display: none;}
/*.main_menu ul:first-child > li:after
{
    content: '';
    width: 1px;
    height: 100%;
    background: linear-gradient(0, #326cb1 0%, #3084ea 100%); 
    position: absolute;
    right: 0;
    top: 0;
}*/
.main_menu li > a {
    text-decoration: none;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    display: block;
    padding: 0;
    position: relative;
    overflow: hidden;
    font-weight: 400;
    padding: 10px 10px 15px 10px;
    line-height: 50px;
    
}
.main_menu li:first-child {padding: 0 20px 0 0;}
.main_menu li:first-child a {padding: 10px 0 15px 0;}


.main_menu li:hover a {text-decoration: none;}

.main_menu li a:after {
    position: absolute; 
    transition: .6s cubic-bezier(0.165,0.84,0.44,1);
    width: 100%; 
    //left: -100%; 
    content: "";  
    display: block; height: 2px; background-color: var(--color1);  top: 0;
    transform: scaleX(0) translate(0,0);
}
.main_menu li:hover a:after {left: 0; transform: scaleX(1) translate(0,0);}



.main_menu .dropdown > a::after {
    display: block;
    content: "\f107";
    font-family: "FontAwesome";
    position: absolute;
    right: 15px;
    top: 0;
    color: #FFFFFF!important;
    
    -webkit-transition: -webkit-transform .2s ease-in-out;
    -ms-transition: -ms-transform .2s ease-in-out;
    transition: transform .2s ease-in-out;  
}
.main_menu li.dropdown:hover > a::after
{
    -ms-transform:rotate(180deg);     /* Internet Explorer 9 */
    -webkit-transform:rotate(180deg); /* Chrome, Safari, Opera */
    transform:rotate(180deg);         /* Standard syntax */
   
   color: #000000;
}
.main_menu li ul, .main_menu li ul li ul {
    position: absolute;
    display: none;
    z-index: 500;
    height: auto;
    border-left: 1px solid #eaebec;
}
.main_menu li ul {top: auto; min-width: 100%; 
    background-color: #FFFFFF;
    padding: 0;
}
.main_menu li ul a {color: #000000!important; text-decoration: none;}

.main_menu .all_sub 
{
    background-color: #fff2f6;
    width: 1200px;
    position: absolute;
    top: 100%;
    z-index: 9999;
    left: 0;
    padding: 40px;
    color: #212121;
    text-align: left;
    text-transform: none;
    
    height: 350px;
    
    font-size: 0.95rem;
    
    -webkit-flex-direction: column;
    flex-direction: column;  
    
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
}
.main_menu .all_sub a, .main_menu .all_sub h3 {color: #212121;}
.main_menu .all_sub h3 {font-size: 1.1rem;}
.main_menu .all_sub a {line-height: 1.4;}
.all_sub > div {margin: 10px 0;}

.main_menu li ul li ul {left: 100%; top: 0;}
.main_menu li ul li {width: 100%; white-space: nowrap;}
.main_menu li ul li a {text-align: left; background-color: #f9f9f9; color: #000000; border-bottom: 1px solid #eaebec;}
.main_menu li ul li a:hover {color: #FFFFFF}
//.main_menu > ul > li:first-child a {border-top-left-radius: 2px; border-bottom-left-radius: 2px;}
//.main_menu > ul > li:last-child, .main_menu ul > li :last-child {border-top-right-radius: 2px; border-bottom-right-radius: 2px;}
.main_menu li:hover > ul, .main_menu li ul li:hover ul {    
    display: flex;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    flex-direction: column;

}
.main_menu a.parent::after {position: absolute; top: 23px; right: 3px; content: ""; display: block !important; width: 10px; height: 7px; background: url('../images/menu/arrow.gif') 0px 0px no-repeat;}



.main_menu li.basket {width: 20%; border-left: 1px solid #2a54a6;}
.main_menu li.basket a.basket_name img {display: inline-block; vertical-align: middle; margin-top: -5px; padding-right: 5px;}
.main_menu li.basket .kol {
    color: #4a312a;
    margin: 0 0 0 7px;
    font-weight: 600;
    background-color: #FFFFFF;
    border-bottom: 2px solid #CCCCCC;
    font-size: 0.9rem; padding:3px 9px; border-radius: 30px;
    min-width: 2rem;
}
.main_menu li.basket:hover .kol {
    background-color: #FFFFFF;
    border-bottom: 2px solid #CCCCCC;
}

/*top_menu*/
.top_menu {
    display: none;
    position: fixed; top:0; width: 100%; z-index: 999; 
    opacity: 0.95; height: 60px; box-shadow: 0 1px 5px rgba(0,0,0,.136); 
    transition: opacity ease 10ms; background: #fff;
}
.top_menu .menu_content {padding: 0 10%;}
.top_menu .logo {margin: 10px 0;}
.top_menu .btn {margin: 7px 0;}

.top_menu ul {
    display: flex;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    
    justify-content: space-between;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    
    padding: 0;
    margin: 0;
    
    height: 100%;
}
.top_menu ul li {float: left; list-style: none; text-align: center;}
.top_menu ul li a {line-height: 50px; display: block; width: 100%; height: 100%; font-size: 1rem; font-weight: bold; text-decoration: none;}
.top_menu ul li .root-item-selected {border-bottom: 2px solid #E31E24;}
.top_menu .callback a {color: #E31E24; text-transform: lowercase; font-size: 1rem; display: block; float: right; padding-top: 16px;}


/*Форма ajax*/
.ajax_form.popup {width: 500px; display: none;}
.ajax_form.popup.color {
    background: var(--popup-background);
    padding: 7px;
    transform: translateY(-80px);
    transition: all .5s;    
}
.ajax_form.popup .place {width: 100%; margin: 5px auto;}
.ajax_form.popup .place label {font-size: 0.85rem; color: #999999;}
.ajax_form.popup .fancybox-close-small {height: 60px; width: 60px;}

.ajax_form.popup.color {padding: 7px;}

.ajax_form.popup.color .content {
    background: #FFF url(/pics/circles.png) no-repeat -20% 0;
    position: relative; width: 100%;
}
.popup_content {padding: 50px 30px;}
.popup_content h3 {text-transform: uppercase; text-align: center; font-weight: bold; font-size: 1.8rem; margin: 0;}


.message .ok {color: #232323;}
.message .error {color: #ff0000; font-size: 1rem;}
.message > div {border: 3px solid #232323;padding: 15px 30px; line-height: 1.1; margin-bottom: 15px; text-transform: none;} 

.fancybox-close-small:hover {color: var(--color1)}

/*Чек бокс*/
.checkbox_style1 input[type=checkbox] {display: none;}
.checkbox_style1 label {
    display: inline-block;
    cursor: pointer;
    position: relative;
    padding-left: 20px;
    margin-right: 15px;
    font-size: 13px;
}
.checkbox_style1 label::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    margin-right: 10px;
    position: absolute;
    left: 0;
    top: 2px;
    background-color: var(--color1);
}
.checkbox_style1 input[type=checkbox]:checked + label:after {
    font-family: "FontAwesome";
    content: "\f00c";
    font-size: 9px;
    color: #FFFFFF;
    text-align: center;
    line-height: 15px;
    position: absolute;
    left: 2px;
    top: 0;
}
.checkbox_style1.alert label {color: #ff5d29!important}

/*Хлебные крошки*/
.mininav {padding: 15px 0 10px 0; height: 30px; color: var(--text-color); line-height: 1; font-size: 1rem; width: 100%; display: table;}
.mininav a {display: block; float: left; color: var(--color1);}
.mininav a:hover {text-decoration: underline;}
.mininav .dm {padding: 2px 10px 0 10px; font-size: 0.8rem; display: inline-block;}
.mininav IMG {display: block; float: left; margin-top: -4px; padding: 2px 6px 0 8px;}
.mininav DIV {float: left; padding-top: 1px;}

/*Пейджинг*/
.paging {padding: 10px 0; margin: 10px 5px; text-align: left; font-size: 1rem;}
.paging > a, .paging span {display: inline-block; border-radius: 2px; color: #232323; padding: 10px 16px; margin: 0 5px 5px 0; text-decoration: none;}
.paging > a {display: inline-block; background-color: #e6e6e6;}
.paging > a:hover, .paging span { background-color: var(--color1); color: #FFFFFF;}


/*Инпуты*/
input[type="text"],input[type="password"], textarea, select {
    background: #FFFFFFF;
    border: 1px solid #d5d5d5;
    box-shadow: 1px 1px 3px 1px rgba(200, 200, 200, 0.2) inset;
    color: var(--text-color);
    font-size: 1.05rem;
    outline: medium none;
    padding: 10px 15px;
    transition: all 100ms cubic-bezier(0.42, 0, 0.58, 1) 0s;
    width: 100%;
    margin: 5px 0;
    font-family: inherit;
}
input[type="text"]:focus,input[type="password"]:focus,textarea:focus {
    border: 1px solid #333333;
    box-shadow: 0 0 0 0 rgba(52, 152, 219, 1);
    transition: all 100ms cubic-bezier(0.42, 0, 0.58, 1) 0s;
}
input:-moz-placeholder, input:-ms-input-placeholder,input::-moz-placeholder, input::-webkit-input-placeholder {font-family: inherit; color:#999999; opacity: 1; font-size: 0.95rem;}
textarea:-moz-placeholder, textarea::-moz-placeholder, textarea::-webkit-input-placeholder, textarea:-ms-input-placeholder {font-family: inherit; color:#999999;opacity: 1; font-size: 0.95rem;}

input[type="text"].alert {border: 1px solid #ff5d29;}


/*Вверх*/
#scrollTop {
    width: 55px;
    height: 55px;
    border-radius: 50%;
    right: 35px;
    cursor: pointer;
    position: fixed;
    text-align: center;
    bottom: 55px;
    background: var(--color1);
    display: none;
    z-index: 999;
    opacity: 0.8;
}
#scrollTop svg {
    top: 50%; position: absolute;
    left:0; right: 0;
    margin: -15px auto 0 auto;
}
#scrollTop:hover {opacity: 1;}


/*Поиск*/
.search .error {color: #cc3333}
.search .item .title {font-size: 1.5rem;}

/*loader*/
.loader {display:none; z-index: 1; position: absolute; width: 100%; height: 100%; left: 0; top: 0; background: rgba(0,0,0, 0.1);}
.loader:after { 
    content: '';
    width: 150px;
    height: 150px;
    background: url(/pics/loader_form.gif);
        background-size: auto;
    background-size: cover;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -75px;
    margin-left: -75px;
}

/*Загрузчик сайта*/
.site_loader {position: fixed; width: 100%; height: 100%; top: 0; background-color: #FFFFFF; z-index: 9999999999;}
.site_loader > div {top: 50%; position: absolute; left: 0; right: 0; margin: -150px auto 0 auto; text-align: center;}
.site_loader img {max-width: 90%;}


/*404*/
.error404 {text-align: center;}
.error404 .content_container > img {max-width: 90%; width: 800px;}
.error404 .logo {padding-left: 15%;}
.error404 .logo img {max-height: 10; max-width:40%;}
.error404 h2 {font-weight: bold; font-size: 1.8rem; text-transform: uppercase; margin: 20px 0;}
.error404 p {font-size: 1.3rem;}