* {margin: 0; padding: 0; box-sizing: border-box;}
body, button, input, textarea, select {font-family: fonts-light, Roboto, Helvetica, Arial, sans-serif; color: #000; background: #fff; font-size: 18px; line-height: 1.5em;}
body {overflow-y: scroll; display: flex; flex-direction: column; min-height: 100vh;}
.width {width: 85%; position: relative; margin: 0 auto;}
.home .width {width: 91%;}
.mainbody {flex-grow: 1;}

a {transition: all 0.2s linear; color: #1e3ba1; outline: none;}
a:hover {color: #d61a00; text-decoration: none;}

hr{ height: 1px; width: 100%; color: #bcbfc5; border: none; border-top: 1px solid #bcbfc5; overflow: hidden; clear: both; margin: 10px 0;}


@font-face {
    font-family: 'fonts';
    src: url('/fonts/robotocondensed-regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'fonts-light';
    src: url('/fonts/robotocondensed-light.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'fonts-bold';
    src: url('/fonts/robotocondensed-bold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
}


.content {font-size: 1.1rem; padding: 3rem 0; box-sizing: border-box; position: relative; margin: 0 auto;}
.content img {max-width: 100%;}
.content .wrapper-block {margin-right: -1.5rem;}


h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0;  font-weight: normal;}
h1, h1 a:link, h1 a:visited {line-height: 1.2em; color: #293744; font-size: 40px; font-weight: normal;} 
h2, h2 a:link, h2 a:visited { color: #1e3ba1; font-size: 32px;}
h2 { line-height: 1.2em; background: url("/im/arr_red_cat.png") no-repeat 0 0px; padding: 12px 0 0 25px;}
h2, h3 { margin: 1rem 0;}
h3, h3 a:link, h3 a:visited { color: #2f7fe2; font-size: 24px;}
h4, h4 a:link, h4 a:visited { color: #1e3ba1; font-size: 24px; text-transform:uppercase; line-height: 160%;}
h5, h5 a:link, h5 a:visited { color: #d61a00; font-size: 20px;}
h6, h6 a:link, h6 a:visited { color: #d61a00; font-size: 18px;}

big, .big {font-size: 1.3rem;}
small, .small {font-size: 0.8rem;}

.gray, .gray a:link, .gray a:visited {color: #46546b;}
.red, .red a:link, .red a:visited {color: #d61a00;}
.blue, .blue a:link, .blue a:visited {color: #1e3ba1;}
.bluelight, .bluelight a:link, .bluelight a:visited {color: #509aff;}
.blue a:hover, .gray a:hover {color: #d61a00;}
.red a:hover {color: #d61a00;}

.content p {padding: 0.6em 0;}
.content blockquote p {padding: 0;}
blockquote {position: relative; background-image: linear-gradient(to top right, rgba(237,239,239,1), rgba(237,239,239,0), rgba(237,239,239,1)); padding: 30px; margin: 20px 0;}
blockquote:before {content: ""; position: absolute; top: 0; left: 0; width: 45%; height: 2px;  background-image: linear-gradient(to right, #1e3ba1, rgba(47,127,226,1), rgba(47,127,226,0)); border-left: 25px solid #ff2e2d;}
blockquote:after {content: ""; position: absolute; bottom: 0; right: 0; width: 20%; height: 1px;  background-image: linear-gradient(to left, #1e3ba1, rgba(47,127,226,1), rgba(47,127,226,0));}


table, table th, table td  {border-collapse: collapse; border: none;} 
table th, table td {padding: 10px 20px; border-bottom: 1px solid #cbd2dd; margin: 2px; color: #46546b;}
table th {background: #ebeff2; font-weight: normal;}

.noborder, .noborder td, .noborder th {border: none;}

.tth .noborder { margin: -40px auto -70px auto; width: 97%; background: url("/im/tth_.png") 0 90% no-repeat #fff;}
.tth .noborder td { padding: 0 30px;}
.tth .noborder table {margin-top: 10px; width: 100%;}
.tth .noborder table td {padding: 12px 0 0 0; border-bottom: 1px solid #dde4ef;}

.blockblueborder {border: 2px solid #1e3ba1; padding: 20px 30px;}
.blockblue {background: #1e3ba1; padding: 30px;}
.blockbluelight {background: #2a5af3; padding: 30px;}
.blockgray {background: #b8c0d1; padding: 30px;}
.blockgraylight {background: #ebeff2; padding: 30px;}
.blockblue, .blockblue p, .blockblue li, .blockgray, .blockgray p, .blockgray li, .blockbluelight, .blockbluelight p, .blockbluelight li { color: #fff;}

.blockblue ul {padding: 0; margin: 0;}
.blockblue ul li, .blockbluelight ul li, .blockgray ul li {list-style-image: url("/im/li_w.png") !important; padding: 5px 0; margin-left: 10px;}


.content ul, .content ol {padding: 0.5rem 0 1rem 0;}
.content ul li {list-style-type: none; margin: 0 0 1em 0; padding-left: 30px; position: relative;}
.content ul li:before {color: #ff2e2d; width: 30px; content: '\2192'; display: block; position: absolute; top: 0; left: 0;}
.content .ul1 li:before {color: #ff2e2d;}
.content ol {margin-left: 3rem;}
.content ol li {margin: 0 0 0.8em 0;}



/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/

.home {background: url("/im/bg_catalog.jpg") 100% 0 no-repeat; background-size: cover; position: relative;}
.home .grid {width: 100%; height: 100%; z-index: 0; position: absolute; background: url("/im/bg_grid.png") 50% 0 repeat-y; opacity: 0.5;}


.mid {padding: 45px 0 50px 0;} 

.centercolumn {float: left; width: 73%; }
.rightcolumn {float: right; width: 23%; position: relative; padding: 0 0 3rem 2rem; border-left: 1px dashed #b3c0d0;}
.rightcolumn .title {color: #1e3ba1; font-family: 'fonts'; display: block !important; letter-spacing: 1px; text-transform: uppercase;
    overflow: hidden;
    text-align: left;
    margin: 0px 0 2rem 0;
}
.rightcolumn .title span { margin: 0 8px 0 0;
    display: inline-block;
    vertical-align: top;
}
.rightcolumn .title:after {
    content: "";
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 1px;
    background-color: #1e3ba1;
    position: relative;
    margin-right: -100%;
    margin-top: 13px;
}

.clear {clear: both; height:0px;}


.content iframe {border-radius_: 5px;}
.content iframe, .content table {max-width: 100%;}
/*
.page-bg .content img {max-width: 100%; height: auto !important; border-radius: 5px;}
.content img {max-width: 100%; height: auto !important; border-radius_: 5px;}          
*/
.content .media_embed, .content iframe {background_: #cecece; background: #dee6f6;}
.content .media_embed iframe {display: block; margin: 0 auto;}

/*.content td img {max-width: none !important;}*/

.content-page {background: #fff; box-shadow: 0 0 20px rgba(5,25,65,0.2); padding: 2rem; box-sizing: border-box; width: 100%;}

.spoiler-trigger {clear: both; font-size: 1.3rem; color: #0051bb; position: relative; cursor: pointer; margin-bottom: 0.5rem;}
.spoiler-trigger ul {margin_: 0; padding-bottom: 0;}
.spoiler-trigger:hover {color: #d61a00;}

.spoiler-text { padding: 0 0 0 1rem; clear: both; height: 0; overflow: hidden; transition: all 0.5s; width: 100%; padding_: 0 1rem; box-sizing: border-box; margin-bottom: 1rem; position: relative;}
.spoiler-text.active {display: block; height: auto; padding: 0.5rem 0 0.5rem 1rem;}

h2.spoiler-trigger {display: inline-block; letter-spacing: 1px; background: #1e3ba1; color: #fff; max-width: 100%; margin: 1rem 1rem 0.5rem 0; cursor: pointer; position: relative; transition: all 0.2s linear; padding: 0.6em 1.8em 0.6em 1.5em;}
h2.spoiler-trigger:hover {background: #2f7fe2; color: #fff;}
h2.spoiler-trigger:after,
h2.spoiler-trigger:before {width: 1.2rem; height: 1.2rem; margin: 0.5em 0.6rem 0.4rem 0.6rem; display: block; float_: left; content: "\2193"; position: absolute; top: 0;}
h2.spoiler-trigger:before {float_: left; left: 0.2rem;}
h2.spoiler-trigger:after {float_: right; right: 0.2rem;}


a.link-red {border-radius: 5px; padding: 0.8rem 0.8rem 1rem 0.4rem; border: 1px dotted #ca2027; display: inline-block; text-decoration: none;}
a.link-red img {float: left; margin: 0 10px 0 5px !important;}
a.link-red:hover {background: #ca2027; color: #fff;}
a.link-red:hover img {filter: brightness(500%);}

a.link-cyan {color: #009fe4; padding: 0.8rem 0.8rem 0.8rem 0.4rem; border: 1px solid #009fe4; display: inline-block; text-decoration: none;}
a.link-cyan img {float: left; margin: 0 10px 0 5px !important;}
a.link-cyan:hover {background: #1e3ba1; border: 1px solid #1e3ba1; color_: #fff;}

a.link-blue {border-radius: 5px; padding: 0.8rem 0.8rem 1rem 0.4rem; border: 1px dotted #0051bb; display: inline-block; text-decoration: none;}
a.link-blue img {float: left; margin: 0 10px 0 5px !important;}
a.link-blue:hover {background: #0051bb; color: #fff;}



.popup-icon {display: inline-block; float: left; margin-right: 1rem;}
.popup-icon img {border: 5px solid #fe8a2c;}
.popup-icon a {display: inline-block; position: relative;}
.popup-icon a:after { border-radius: 5px; color: #fff; content:"\271A"; background: #fe8a2c; margin: 3px; width: 1.5rem; height: 1.5rem; line-height: 1.3rem; text-align: center; position: absolute; top: 0; left: 0; z-index: 2; box-sizing: border-box;}



/* Header
-----------------------------------------------------------------------------*/

.header {width: 100%; background: #fff; position: relative; overflow: hidden;}

.header .logo {display: block; float: left; margin: 1.2rem 0;}
.header .logo, .header .logo img {width: 241px; height: auto;}
.header .logo-rc {display: block; float: left; margin: 1.2rem 1rem 1.2rem 0;}
.header .logo-rc, .header .logo-rc img {width: 53px; height: auto;}

.header .name {color: #a4abba; border-left: 1px solid #b8c0d1; padding-left: 25px; margin-left: 25px; margin-top: 1rem; display: inline-block; text-transform: uppercase; font-size: 0.8rem;}
.header .name span {letter-spacing: 1px; display: block; color: #203471; font-family: fonts; font-size: 1.3rem;}

.header .lang {display: flex; border-radius: 40px; float: right; margin: 1rem 0; line-height: 37px;}
.header .lang span, .header .lang a {width: 50%; height: 100%;}
.header .lang span {color: #b8c0d1; padding: 0 18px 0 12px; text-align: left; border: 1px solid #b8c0d1; border-top-right-radius: 40px; border-bottom-right-radius: 40px;}
.header .lang a {background: #b8c0d1; border: 1px solid #b8c0d1; color: #fff; padding: 0 12px 0 18px; text-align: right; text-decoration: none; border-top-left-radius: 40px; border-bottom-left-radius: 40px;}
.header .lang a:hover {background: #2350a9; border-color: #2350a9;}


.header .toplink {display: inline-block; float: right; margin: 1rem;}

.header .toplink a {color: #b8c0d1; display: inline-block; padding: 0 20px 0 45px; height: 38px; line-height: 37px; margin-left: 10px; text-decoration: none; text-align: center; background: #fff; border-radius: 40px; border: 1px solid #b8c0d1; position: relative;}
.header .toplink a:before {content: ""; position: absolute; top: 0; left: 15px; width: 18px; height: 100%; background: url("/im/reg-form-arr.svg") 0 50% no-repeat transparent; background-size: contain;}
.header .toplink a:hover {color: #fff; background: #2350a9; border-color: #2350a9;}
.header .toplink a:hover:before {filter: brightness(1000%);}

/*.header .toplink a.js-buy:before {background-image: url("/im/reg-form-arr.svg") !important;}*/

@media screen and (max-width: 1750px) {
.header .name {margin-left: 0; margin-top: 0; clear: both; margin-bottom: 1rem; float: left;}
}

@media screen and (max-width: 1280px) {
.header .toplink a {padding: 0 20px;}
.header .toplink a:before {display: none;}
.tm .li1 > a {padding: 0 10px;}
}

/* Footer
-----------------------------------------------------------------------------*/
.footer {background: #081134; color: #b9b9b9; padding: 2rem 0; line-height: 35px; /*position: fixed; bottom: 0; left: 0; width: 100%;*/}
.footer strong {color: #fff; font-size: 0.9rem; margin-right: 1rem; display: inline-block; height: 35px; position: relative;}
.footer .copy {float: left; max-width: 350px; margin-right: 3rem;}
.footer .contact, .footer .phone, .footer .feedback {float: right; margin-left: 3rem; margin-bottom: 1.5rem;}
.footer .phone, .footer .feedback {border-left: 1px solid #838383; padding-left: 2rem;}
.footer .feedback a {
color: #b9b9b9;
display: inline-block;
padding: 0 20px 0 45px;
height: 38px;
margin-left: 10px;
text-decoration: none;
text-align: center;
border-radius: 40px;
border: 1px dashed #2f7fe2;
position: relative;
}
.footer .feedback a:hover {border: 1px solid #2f7fe2; background: #2f7fe2; color: #fff;}
.footer .feedback a:before {content: ""; position: absolute;  top: 0; left: 15px; width: 18px; height: 100%; background: url("/im/contact.svg") 0 50% no-repeat transparent; background-size: contain; display: block;}
.footer .feedback a:hover:before {filter: brightness(1000%);}
.footer .phone strong, .footer .contact strong {padding-right: 2rem;}
.footer .phone strong:after {content: ""; width: 23px; height: 100%; background: url("/im/phone.svg") 0 50% no-repeat transparent; background-size: contain; display: inline-block; position: absolute; top: 0; right: -0.5rem;}
.footer .contact strong a {color: #fff; text-decoration: none;}
.footer .contact strong a:after {content: ""; width: 23px; height: 100%; background: url("/im/contact.svg") 0 50% no-repeat transparent; background-size: contain; display: inline-block; position: absolute; top: 0; right: -0.5rem;}
.footer .contact a:hover:after {filter: brightness(1000%);}
.ray {text-align: right;}
.ray a {color: #838383; opacity: 0.7; font-size: 0.7rem; letter-spacing: 1px;}
.ray a:hover {color: #fff; opacity: 1;}



/*---Slider----*/

.slider {max-width: 100%; margin: 0 auto; position: relative;}
.slider .slick-slider {width: 100%; height: auto;} 
.slider .slide, 
.slider .slick-list,
.slider .slick-track {width: 100%; height: 100%;}

.slider .slide {display: inline-block;}

.slick-arrow {
    border: none;
    outline: none !important;
    cursor: pointer;
    position: absolute; top: 45%;
    z-index: 1002;
    color: transparent;
    width: 26px;
    height: 87px;
    display: inline-block; opacity: 0.5;
}
.slick-next {
    right: 1%;
    background: url(/im/arrow-next.png) 50% 50% no-repeat; background-size: cover;
}
.slick-prev {
    left: 1%;
    background: url(/im/arrow-prev.png) 50% 50%  no-repeat; background-size: cover;
}

.slider .slick-dots li {
   display: inline-block; border-radius: 50%; position: relative;
   width: 46px;
   height: 46px;
   margin: 0 12px;
   cursor: pointer;
}

.slider .slick-dots li button {display: none; color: #fff; opacity: 0.3; font-size: 0.8rem; position: relative; top: -10px;  text-align: center; border: none; background: none;}
.slider .slick-dots li button:active,
.slider .slick-dots li button:focus {outline: none;}
.slider .slick-dots li button:-moz-focus-inner { border: 0;}

.slider .slick-dots li:after {transition: all 0.3s ease; width: 8px; height: 8px; background: #fff; margin: -4px; position: absolute; top: 50%; left: 50%; content: ""; border-radius: 50%;}
.slider .slick-dots li.slick-active:after {background: #d93c95; /*transform: scale(1.5);*/}



/*---NewsHome----*/

.newshome {padding: 5rem 0 3rem 0;}

.newshome .newslink {text-align: center; margin: 3rem 0 4rem 0; max-width: 100%; overflow: hidden;}
.newshome .newslink a {border-radius: 25px; text-decoration: none; display: inline-block; line-height: 40px; padding: 0 20px; color: #2f7fe2; border: 1px dashed #2f7fe2; transition: all 0.2s linear; margin: 0 10px;}
.newshome .newslink a:hover {color: #fff; background: #2f7fe2; border: 1px solid #2f7fe2;}
.newshome .newslink:before { 
    content: "";
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 1px;
    background-color: #2f7fe2;
    position: relative;
    margin-left: -100%;    
    margin-top: 1.3em;
}
.newshome .newslink:after {
    content: "";
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 1px;
    background-color: #2f7fe2;
    position: relative;
    margin-right: -100%;
    margin-top: 1.3em;
}

.newshome .slick-list {
position: relative;
display: block;
overflow: hidden;
margin: 0;
padding: 0;
}
.newshome .slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.newshome .slick-arrow {width: 15px; height: 44px; top: 60%;}
.newshome .slick-prev {left: 0%; margin-left: -25px;}
.newshome .slick-next {right: 0%; margin-right: -25px;}

.newshome .block { margin: 25px; /*margin: 30px 60px 30px 0px;*/ display: inline-block; position: relative; overflow: hidden; vertical-align: top;}

@keyframes move-up {
    from {transform:translateY(30px);}
    to   {transform:translateY(0);}
}

.newshome .block a.link {position: relative; z-index: 2; display: block; width: 100%; height: 100%; text-decoration: none;}

.newshome .block .text {width: 100%; box-sizing: border-box; pointer-events: none; display: block; color: #000;}
.newshome .block .name {display: block; font-size: 1.1em; padding: 0.7em 0 1em 0; line-height: 1.2em; height: 5.6em; overflow: hidden;}
.newshome .block .name:after {width: 14px; height: 14px; margin-left: 0.5em; display: inline-block; content: ""; background: url("/im/arrow_right_red.svg") no-repeat 50% 50%; background-size: contain;}
.newshome .block .date {color: #000; font-size: 0.8em; display: block;}
.newshome .block .pict {transition: all 0.2s linear; overflow: hidden; display: block; background: #75c9f3; position: relative;}
.newshome .block .pict:after, 
.newshome .block .pict:before {transition: all 0.4s linear; position: absolute; left: 0; height: 1px; width: 100%; content:"";}
.newshome .block .pict:before {background-image: linear-gradient(to right, #2f7fe2, rgba(47,127,226,0)); top: -2px;}
.newshome .block .pict:after {background-image: linear-gradient(to left, #2f7fe2, rgba(47,127,226,0)); bottom: -2px;}
.newshome .block img {transition: all 0.3s linear; min-width: 100%; max-width: 100%; height: auto; display: block;}
.newshome .block .link:hover .name {color: #e30016;}
/*.newshome .block .link:hover .pict {outline: 1px solid rgba(255,255,255,0.7); outline-offset: -15px;}*/
.newshome .block .link:hover .pict img {transform: scale(1.1);}


/*---NewsHome-END---*/


/* NewsList
-----------------------------------------------------------------------------*/
.newslist {margin: 0 0 2.5rem 0; position: relative; width: 100%; min-height: 150px;}
.newslist .link {padding: 0px 15px 15px 0px; display: block; text-decoration: none; position: relative; box-sizing: border-box; width: 100%;}
.newslist .link .pict {transition: all 0.2s linear; overflow: hidden; background: #75c9f3; position: absolute; display: inline-block; top: 0; left: 0;}
.newslist .link .pict img {transition: all 0.2s linear; display: block; width: 200px; height: auto;}
.newslist .link .name {transition: all 0.3s linear; color: #000; display: block; font-size: 1.4rem;}
.newslist .link .name:after {
  color: #e30016;
  font-size: 1.2em;
  margin-left: 0.3em;
  display: inline-block;
  content: "\2192";
}
.newslist .link:hover .name {color: #e30016;}
/*.newslist .link:hover .pict {outline: 1px solid rgba(255,255,255,0.7); outline-offset: -15px;}*/
.newslist .link:hover .pict img {transform: scale(1.1);}
.newslist .link .date {color: #a1a8b3; font-size: 0.9rem; padding: 0.5em 0; display: block;}
.newslist .anons {font-size: 0.9em; display: block; line-height: 1.3em;}
.newslist .text {margin-left: 220px; padding-left: 20px; min-height: 110px; display: block; position: relative;}

.newslist .tags {font-size: 0.8em; line-height: 1.5em; margin-top: -5px; display: block;}                                                                                                        
.newslist .tags a {display: inline-block; margin-right: 1rem;}

.newsitem {position: relative;}
.newsitem .date {color: #a1a8b3; margin: 1em 0;}
.newsitem .titlepage {margin: 0 0 1.5em 0;}
.newsitem em.tags {margin: 1em 0; font-size: 0.9rem;}
.newsitem em a {/*color: #64bfff;*/ text-decoration: none; display: inline-block; padding: 0.3em 1em; margin: 0 1rem 1rem 0; outline: 1px solid #cba174; border-radius: 5px;}
.newsitem em a:hover {color: #fff; background: #cba174; }
.newsitem .signnews {color: #a1a8b3; padding: 1em 0; font-style: italic;}
.newsitem .codevideo {margin-bottom: 2rem;}

.newslast .date {color: #2f7fe2; margin: 2rem 0 0.5rem -2.1rem; border-left: 3px solid #2f7fe2; padding-left: 1.9rem;}
.newslast .name {margin: 0rem 0 2.5rem 0; display: block; color: #000; line-height: 1.3em; text-decoration: none;}
.newslast .name::after {
  color: #e30016;
  font-size: 1.2em;
  margin-left: 0.3em;
  display: inline-block;
  content: "\2192";
}
.newslast .name:hover {color: #e30016;}


.newsarchive .year {margin: 2rem 0 1rem -2.1rem; border-left: 3px solid #2f7fe2; padding: 0.3rem 1.9rem; font-size: 1.5rem;}
.newsarchive a {transition: all 0.1s linear; display: inline-block; padding: 0.2em 0.9em; line-height: 1.5em; background: none; color: #2f7fe2; border-radius: 20px; border: 1px solid #2f7fe2; margin: 0px 1em 1em 0; text-decoration: none; font-size: 0.9rem;}
.newsarchive a:hover {color: #fff; background: #2f7fe2;}



 /* Search
-----------------------------------------------------------------------------*/

.content .search {position: relative;}
.content .search input {font-size: 1.5em; line-height: 35px; width: 100%; margin: 0 0 20px 0; border: 1px solid #a1a8b3; padding: 10px; border-radius: 3px; box-sizing: border-box; outline: 0;}
.content .search a {display: block; width: 25px; height: 25px; margin: 15px; position: absolute; top: 0; right: 0; text-decoration: none; background: url("/im/search.svg") 0 0 no-repeat; background-size: cover;}
.content .search input:focus {box-shadow: inset 0 0 10px rgba(0,0,0,0.1);}

.search-num {margin: 0 0 20px 0; font-style: italic; font-size: 0.8rem; color: #a1a8b3;}


.search-result {margin-bottom: 20px;}
.search-result span, .search-result a {display: block; line-height: 1.5rem;}
.search-result .num {float: left; font-size: 0.7em; color: #a1a8b3; margin-top: 3px;}
.search-result .date {float: left; width: 80px; margin: 0 20px 0px 10px; font-size: 0.8em; padding: 3px 10px; box-sizing: border-box;}
.search-result .title {font-family: 'fonts'; font-size: 1.1em;}
.search-result .gray {font-size: 0.8em;}




/* Menu
-----------------------------------------------------------------------------*/

#menu-checkbox {display: none;}
.page-bg .tm img {display: none;}

.tm *, .menu * { margin: 0; padding: 0; }
.tm li, .menu li {list-style: none;}
.tm {min-height: 65px; text-align: center; background: #1a2855;}
.tm a, .tm a:link, .tm a:visited {text-decoration: none; color: #fff;}

.tm .ul1 {position: relative; display: inline-block;}
.tm .li1 {display: inline-block; height: 65px; position: relative; text-align: left; font-weight_: 600;}
.tm .li1 > a {display: block; line-height: 65px; text-transform: uppercase; padding: 0 20px;}
.tm .li1 > a:hover, .tm .li2 > a:hover {color: #2f7fe2;}
.tm .active > a {background: #203471;}
.tm a .text em {font-style: normal;}
.tm .li1.active > a {background: #203471; color: #fff;}


.home .tm {text-align: center; height: auto; list-style: none; background: none; position: relative; z-index: 1;}
.home .tm ul {margin: 3.5rem 0; padding: 0; vertical-align: top; width: 100%;}

.home .tm ul li {width: 43%; height: 275px; position: relative; display: inline-block; margin: 0.5rem; overflow: hidden; padding: 0; list-style: none;}

.home .tm .li1 > a {padding-left: 0;}
.home .tm a {position: relative; display: block; width: 100%; height: 100%; font-size: 24px; color: #fff; text-decoration: none; text-transform: uppercase; line-height: 140%;}
.home .tm a:hover {color: #fff;}

.home .tm a img {/*opacity: 0.8;*/ position: absolute; top: 0; left: 0; z-index: 1; transition: all 0.3s ease-in-out;}
.home .tm a:hover img {transform: scale(1.1); /*opacity: 1;*/}

.home .tm a .text {width: 100%; height: 100%; position: absolute; z-index: 2; transition: all 0.2s linear; display: block; background: linear-gradient(to top, rgba(0,0,0,0.5), rgba(0,0,0,0));}
/*.home .tm a:hover .text {background: rgba(0,10,30,0.5);}*/
.home .tm a .text span {display: inline-block; margin_: 90px 30px 0 30px; position: absolute; left: 1rem; bottom: 2rem;}
.home .tm a .text em {background: url("/im/arr_red_cat.png") no-repeat 0 0px; padding: 12px 0 0 25px;}




.path {font-size: 0.8rem; line-height: 18px;}
.path span {margin: 0 5px;}
.path, .path a, .path a:link, .path a:visited {color: #fff; opacity: 0.6;}
.path .home, .path .home:link, .path .home:visited, .path a:hover {opacity: 1;}


.titlepage {position: relative; padding-top: 2rem; max-width: 100%; overflow: hidden;}
.titlepage h1 {color: #fff; text-shadow: 5px 0 40px #1a2855;}
/*.titlepage h1 span {display: inline-block; vertical-align: top; padding-right: 20px;}*/
.titlepage h1:after {content: "";
  display: inline-block;
  vertical-align: top;
  width: 100%;
  height: 1px;
  background-color: #fff;
  position: relative;
  margin-right: -100%;
  margin-top: 0.9em;
  margin-left: 0.5em;
}

.page-bg .topbg {background: url("/im/bg_top.jpg") no-repeat 100% 50% #0e0a0b; padding: 4rem 0 2rem 0; /*background: #1e3ba1;*/}
.page-bg.ka .topbg {background-image: url("/im/bg_ka.jpg");}
.page-bg.rn .topbg {background-image: url("/im/bg_rn.jpg");}
.page-bg.rb .topbg {background-image: url("/im/bg_rb.jpg");}
.page-bg.pk .topbg {background-image: url("/im/bg_pk.jpg");}
.page-bg.ni .topbg {background-image: url("/im/bg_ni.jpg");}
.page-bg.pp .topbg {background-image: url("/im/bg_pp.jpg");}


.album {margin-top: 2rem;}
.album a {display: inline-block; vertical-align: top; width: 320px; min-height: 180px; position: relative; text-decoration: none; margin: 0 2rem 2rem 0;} 
.album a i {display: block; position: relative; border-radius: 5px; overflow: hidden;}
.album a i .sign {font-size: 0.7em; color: #fff; padding: 0.2em 0.5em; background: linear-gradient(to right, rgba(0,0,0,0), rgba(0,0,0,0.3), rgba(0,0,0,0.3), rgba(0,0,0,0.3)); /*background: rgba(0,0,0,0.3);*/ position: absolute; bottom: 0; right: 0; display: inline-block;}
.album a i img {width:320px; height: 180px; border-radius: 5px; display: block;}
.album a .name {padding-top: 8px; display: block; color: #a1a8b3; font-size: 0.8em; position: relative; line-height: normal;}
.centercolumn .album a {margin: 0 1.5rem 1.5rem 0;}


.homepage .toTop {display: none !important;}
.toTop {
width: 60px;
height: 60px; 
background: url("/im/arrow_up_w.svg") no-repeat 50% 50% #ff2e2d; margin: 2em;
position: fixed; z-index: 998;
bottom: 0;
right: 0px;
cursor: pointer;
display: none;
color: #fff;
}


/* List -----------------------------------------------------------------------------*/

.listlinks {text-transform: uppercase; padding-bottom: 3em;}
.listlinks a {font-weight: 600; letter-spacing: 1px; display: inline-block; padding-right: 20px; position: relative; text-decoration: none; margin: 0 2em 1em 0;}
.listlinks a:after {
  color: #e30016;
  font-size: 1.2em;
  margin-left: 0.3em;
  display: inline-block;
  content: "\2192";
}

.list.size1, .list.catalog {margin-right: -3rem;}
.list .size1 {position: relative; width: 33%; display: inline-block; float: left; overflow: hidden;}
.list.size1 .size1 {height: 14vw;}
.list .size1 .link {display: block; text-decoration: none; position: relative; box-sizing: border-box; width: calc(100% - 2rem); height: calc(100% - 2rem); margin: 2rem 2rem 0 0;}
.list .size1 .link:hover {}
.list .size1 .link .upp {position: absolute; bottom: 0; right: 0; z-index: 2; display: block; width: 90%; height: 100%; background: linear-gradient(-45deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.0));}
.list .size1 .link .pict {width: 45%; height: 100%; text-align: right; overflow: hidden; display: block; position: absolute; top: 0; right: 0; z-index: 1;}
.list .size1 .link .pict img {transition: all 0.6s; object-fit: cover; min-height: 100%;}
.list .size1 .link .name {transition: all 0.4s linear; display: block; width: 55%; height: 100%; position: absolute; bottom: 0; left: 0; z-index: 3; color: #fff; font-size: 1.4rem; background: linear-gradient(to right, #2350a9, #2f7fe2); box-sizing: border-box;}
.list .size1 .link .name:after {transition: all 0.3s linear; width: 0%; height: 100%; position: absolute; bottom: 0; left: 0; z-index: -1; background: #ff2e2d; box-sizing: border-box; content:""; display: block;}
.list .size1 .link .name span {margin: 10% 1em 1em 1.5em; display: inline-block; position: relative;}
/*.list .size1 .link .name span:before {width: 29px; height: 30px; background: url(/im/arr_red_cat.png); background-size: cover; position: absolute; top: -15px; left: -30px; display: block; content:"";}*/
.list .size1 .link:hover .name:after {width: 100%;}
.list .size1 .link:hover .pict img {transform: scale(1.05);}

.list.catalog .size1 {height: 150px;}
.list.catalog .size1 .link .name {width: 75%;}
.list.catalog .size1 .link .name span {transition: all 0.4s linear; background: url("/im/arr_red_cat.png") no-repeat 0 0px; padding: 12px 0 0 25px; margin: 1em;}
.list.catalog .size1 .link:hover .name span {background-image: url("/im/arr_white_cat.png");}
.list.catalog .size1 .link .pict img {max-height: 160px; min-width: 200px;}

.list.size2 {margin-right: -1.2rem;}
.list .size2 {position: relative; width: 32%; height: 175px; margin: 1.2rem 1rem 0 0; display: inline-block; float: left; overflow: hidden; overflow: hidden;}
.list .size2 .link {display: block; text-decoration: none; position: relative; box-sizing: border-box; width: 100%; height: 100%; margin_: 2rem 2rem 0 0;}
.list .size2 .link .pict {width: 100%; height_: 100%; overflow: hidden; display: block;}
.list .size2 .link .pict img {transition: all 0.6s; width: 100%; height: auto;}
.list .size2 .link:hover .pict img {transform: scale(1.05);}


/* Catalog
-----------------------------------------------------------------------------*/
.feedback-link {position: absolute; top: -3rem; right: 0; background:#ff2e2d;}
.feedback-link button { outline: 0; border: 0; cursor: pointer; font-weight: 600;
color: #fff;
text-transform: uppercase;
background: linear-gradient(to right, #e30016, #ff4200);
padding: 1rem 4rem 1rem 1.7rem;
text-decoration: none;
display: block; 
position: relative;
}
.feedback-link button:after {
  background: url(/im/arrow_right_white.svg) 50% 50% no-repeat;
  background-size: contain;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  margin-top: -8px;
  right: 1.5rem;
  display: block;
  content: "";
}
.feedback-link button:hover:after {right: 1.3rem;}

.cat1 {float: left; padding-left: 3rem; width: 80%;}
.cat1 .blue {font-family: fonts;}
.cat1 h2 {margin-top: 0; margin-right: 250px;}
.cat2 { margin-top: 3rem;}
.cat2 table {width: 100%;}
.cat2 table th {text-align: center; font-family: fonts; background: none;}
.cat2 table th {background: #d6dde4;}
.cat2 table td:nth-child(1) {background: #b8c0d1; color: #fff;}
.cat3 {margin-top: 3rem;}
.cat_pict {width: 20%; float: left; position: relative;}
.cat_pict a {color: #fff; background: linear-gradient(to right, #2350a9, #2f7fe2); padding: 1em; display: block; width: 100%; height: 100%; text-decoration: none; position: relative;}
.cat_pict a:after {display: block; content:"view photo gallery \2192"; z-index: 2; position: relative;}
.cat_pict a img {width: 100%; height: auto; transition: all 0.6s; position: relative; z-index: 2;}
.cat_pict a:before { transition: all 0.4s; background:#ff2e2d;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 0;
  height: 100%;
  content:"";
}
.cat_pict a:hover:before {width: 100%;}

/*
.cat_pict .popup img {width: 100%; height: auto; padding-bottom: 35px; background: url("/im/icon_zoom.png") no-repeat 100% 100%;}
*/

.legal {font-size: 0.8rem; color: #b8c0d1; line-height: 0.9em; max-width: 100%; overflow: hidden; margin-top: 3rem;}
.legal em {padding: 0.4em 0; display: block; font-style: normal; text-transform: uppercase;}
.legal em:after {
  content: "";
  display: inline-block;
  vertical-align: top;
  width: 100%;
  height: 1px;
  background-color: #b8c0d1;
  position: relative;
  margin-right: -100%;
  margin-top: 0.6em;
  margin-left: 0.5em;
}
.legal p {padding: 0.4em 0;}


/*
.content table ul.tab-list {padding: 0.5rem 0;}
.content table ul.tab-list li {margin: 0 0 0.2rem 0;}
.content table ul.tab-list li:before {background: none; content:"-"; left: 0;}
*/

/* Feedback
-----------------------------------------------------------------------------*/
.popup-form, .popup-form-reg {opacity: 0; transform: scale(0); transition: transform 0.3s ease-in-out, opacity 0.3s linear; position: relative;}
.popup-form.visible {transform: scale(1); opacity: 1;}
.popup-form.invisible {transform: scale(0); opacity: 0;}
.trans-delay {transition-delay: .8s;}

.popup-form {background: rgba(0,0,0,0.6); z-index: 998; position: fixed; width: 100%; height: 100%; top: 0; left: 0;}
.popup-form .wrapper {padding: 2rem; position: fixed; z-index: 1500; top: 5rem; left: 50%; width: 600px; margin-left: -300px; box-shadow: 0px 0px 100px rgba(0,0,0,0.8); background: #ebeff2;}
.popup-form form {width: 100%; height: 100%;}
.popup-form h2 {text-align: center; margin: 0; padding: 30px 0 10px 0; text-transform: uppercase; font-size: 130%;}
.popup-form .userinfo div {padding: 0px 0px 20px 0;}
.popup-form textarea, .popup-form .userinfo div input {width: 100%;}
.popup-form textarea {height: 100px;}
/*.popup-form .message {color: #06945e !important; width: 170px !important; bottom: 30px;}*/
.popup-form button {margin-top: 1rem; width: 100%;}

.popup-form div {position: relative; box-sizing: border-box;}

.popup-form .userinfo div input {background: #fff; position: relative; height: 35px; padding-left: 45px;}
.popup-form .userinfo div:before {content:""; display: block; width: 35px; height: 35px; background-color: #2f7fe2; position: absolute; z-index: 2; top: 0px; left: 0px; background-position: 50% 50%; background-repeat: no-repeat;}
.popup-form .userinfo div.name:before {background-image: url("/im/ic_send_user.svg");}
.popup-form .userinfo div.email:before {background-image: url("/im/ic_send_email.svg");}
.popup-form .userinfo div.phone:before {background-image: url("/im/ic_send_phone.svg");}
.popup-form .userinfo div.company:before {background-image: url("/im/ic_send_name.svg");}
.popup-form .userinfo div.country:before {content: "\2690"; color: #fff; font-size: 1.4em; text-align: center; line-height: 35px; /*background-image: url("/im/ic_send_home.svg");*/}
.popup-form .userinfo div.company {clear: both;}
.popup-form .userinfo div.email, .popup-form .userinfo div.phone {width: 50%; float: left;}

.popup-form input, .popup-form textarea {color: #004a98; border: none; font-size: 90%; font-family: "fonts"; padding: 5px; box-sizing: border-box;}
.popup-form input:focus, .popup-form textarea:focus {outline: none; box-shadow: 0 0 5px #004a98; background: #fff;}

.popup-form .title span {color: #004a98; display: block; margin-top: 5px; font-size: 150%;}




.popup-form-animate {transform: scale(0); animation: formscale ease-out 0.3s forwards 1;}
@keyframes formscale {
   0 {transform: scale(0);}
   100% {transform: scale(1);}
}


/* SCREEN
-----------------------------------------------------------------*/

@media screen and (max-width: 1600px) {
.centercolumn {float: none; width: 100%; margin-bottom: 5rem;}
.rightcolumn {float: none; width: 100%;}
.rightcolumn .newsarchive {margin-top: 5rem;}
.tm .li1 > a { padding: 0 10px;}
}

@media screen and (max-width: 1366px) {
.tm .ul1 {padding: 10px 0;}
.tm .li1 {height: auto;}
.tm .li1 > a {display: inline-block; line-height: normal; padding: 10px;}

}

@media screen and (min-width: 1281px) and (max-width: 1600px) {
.list .size2 {width: 25%; margin_: 1.0rem 0.0rem 0 0;}
.list .size1 .link .name {width: 65%;}
}


@media screen and (min-width: 1281px) and (max-width: 1540px) {
/*.tm {font-size: 0.9em;}*/
.tm .li1 > a span {line-height: 105%;}
}

@media screen and (max-width: 1280px) {
/*.tm {width_: 88vw; font-size: 0.8em;}*/
/*.tm .li1 > a img {margin: 12% auto 7% auto;}*/
.tm .li1 > a span {line-height: 105%;}

/*.content {width: 85vw;}*/
.titlepage {font-size: 1.5rem;}

.list .size1 {width: 50%;}
.list.size1 .size1 {height: 25vw;}
.list .size1 .link .name {width: 75%; font-size_: 1.2rem;}
/*.list .size1 .link .name span {margin: 17% 1em 2em 2.5em;}*/
.list .size1 .link .pict img {margin-right: -20px; transform_: translateX(20px);}

.list .size2 {width: 47%;}

.cat1 h2 {margin-top: 1em; margin-right: 0;}

}

@media screen and (orientation:landscape) {
.home .tm .li1 > a {color: #fff; background: none; margin: 0; width: 100%; height: 100%;}
}

@media screen and (orientation:portrait) {
}

@media screen and (max-width: 1280px) and (orientation:portrait) {
.logo {margin-left: 90px !important;}
/*
#main-menu {transition: all 0.3s linear; position: fixed; top: 80px; left: 0; width: 47vh; height: 92vh; padding: 0.5vh 0.5vh 0 0.5vh; background: rgba(254,143,40,1); transform: translateX(-100vw); box-sizing: border-box;}
#main-menu .li1 {width: 23vh; height: 20vh; margin_: 0.5vw; font-size: 1.2rem;}
#main-menu .li1 > a img {margin: 12% auto 7% auto;}
.toggle-button {z-index: 1000;
    position: fixed;
    top: 0;
    left: 0;
    text-align: center;
    width: 80px; height: 80px;
    display: inline-block;
    cursor: pointer;
    background: #fe8f28;
    color: #fff;
}
.toggle-button:after {content: attr(data-open); display: block; line-height: 80px; text-align: center; font-size: 1.8rem;}
#menu-checkbox:checked + nav .toggle-button:after {content: attr(data-close); color: #fff;}
#menu-checkbox:checked + nav #main-menu {display_: block; transform: translateX(0);}

*/

}


@media screen and (max-width: 1024px) {
/*.list .size1 .link .name {width_: 60%; font-size: 0.9em;}
.list .size1 .link .name span {margin: 20% 1em 2em 2.5em;}*/
.list .size2 {height: 150px;}
.cat1 {padding-left: 0; width: 100%;}
.cat_pict {width: 40%; position: relative;}
}

@media screen and (max-width: 960px) and (orientation:landscape) {
}

@media screen and (min-device-aspect-ratio: 16/9) and (max-width: 1768px) and (orientation:landscape) {
}

@media screen and (max-width: 1023px) and (orientation:portrait) {
.home {background-attachment: fixed;}
.home .leftdraw, .home .rightdraw {top: 10%;}
.nav-newshome {display: none;}
.home .maintext {top: 2rem; position: relative;}
.newshome {position: relative; top: 4rem !important;}
.newshome .window,
.newshome .wrapper { height: auto !important;}
.newshome .sblock0,
.newshome .sblock1 {position: relative;}
.newshome .window.active-0 .sblock1 { opacity: 1;}
.newshome .block {width: 80vw; height: 50vw; margin: 0.5rem 0;}
.newshome .block .upp {background: linear-gradient(to top, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.1));}
.newshome .block .date {font-size: 1.2rem;}
.news-link {margin-left: 10vw;}
.news-link a {background: #5e8fff; padding: 0.8rem 1.5rem 0.5rem 1rem; margin: 0 1.5rem 2rem 0; border-radius: 5px; font-size: 1.5rem;}

.list .size1 {width: 100%; height: 25vw;}
.list .size1 .link .name {width_: 85%; font-size: 1.4em;}
.list .size1 .link .name span {margin-top: 7%;}
.list .size1 .link .pict img {margin-right: 0px; /*width: 25vw; height: 25vw;*/}

.home .tm ul li {width: 80%; height: 235px;}
.footer .phone {clear: both;}
}


@media screen and (max-width: 1023px) and (orientation:landscape) {
.home {background-attachment: fixed;}
.nav-newshome {display: none;}
.home .maintext {top: 2rem; position: relative;}
.newshome {position: relative; top: 4rem !important;}
.newshome .window,
.newshome .wrapper { height: auto !important;}
.newshome .sblock0,
.newshome .sblock1 {position: relative;}
.newshome .window.active-0 .sblock1 { opacity: 1;}
.newshome .block {width: 42vw; height: 26vw; margin: 0.7rem; font-size: 1.5rem;}
.newshome .block .upp {background: linear-gradient(to top, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.1));}
.newshome .block .date {font-size: 0.9rem;}
.news-link {margin-left: 6vw;}
.news-link a {background: #5e8fff; padding: 0.8rem 1.5rem 0.5rem 1rem; margin: 0 1.5rem 2rem 0; border-radius: 5px; font-size: 1.5rem;}

/*.list .size1 {width: 50%;}*/
.list .size1 .link .name span {margin-top: 10%;}
}
