* {margin: 0; padding: 0; box-sizing: border-box; border: 0;}
.footer * { max-height: 1000000px;}
body, button, input, textarea, select {font-family: "Segoe UI", "Trebuchet MS", sans-serif; color: #242424; background: #fff; font-size: 18px; line-height: 1.5em;}
button, input, textarea, select {box-sizing: border-box;}
body {padding-bottom: 0 !important; width: 100%;}

/*body, html, .header, .footer, .home .cataloglinks, .home .proizvodstvo, .home .about, .home .mainslider, .mid {min-width: 1280px;}*/


a {transition: all 0.3s linear; color: #264c9e; outline: none;}
a:hover {color: #8dc100; text-decoration: none;}

@font-face {
    font-family: 'fonts';
    src: url('/fonts/Raleway-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'fonts-light';
    src: url('/fonts/Raleway-Light.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'fonts-bold';
    src: url('/fonts/Raleway-Bold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
}


@font-face {
    font-family: 'fonts-semibold';
    src: url('/fonts/Raleway-SemiBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
}

::selection {color: #fff; background: #8dc100;}
h1::selection {color: #fff; background-image: none; background-color: #8dc100; -webkit-text-fill-color: #fff; background-clip: border-box;}

.clear {clear: both;}

h1, h2, h3, h4, h5, h6,
.content h1, .content h2, .content h3, .content h4, .content h5, .content h6 {line-height: normal; font-weight: normal;}
.content h1, .content h2 { font-family: 'fonts-bold'; padding-bottom: 0.6em;}
.content h3, .content h4, .content h5, .content h6 {font-family: 'fonts-semibold'; padding-bottom: 0.6em;}
h1 {font-size: 3rem; background: linear-gradient(to right, #0040a1 3%, #66b5ff); -webkit-background-clip: text; -webkit-text-fill-color: transparent;}
h2 {color: #8dc100; font-size: 2rem;}
h3 {color: #0040a1; font-size: 1.5rem;}
h4 {color: #66b5ff; font-size: 1.5rem;}


.titlepage h1 {font-size: 4rem; position: relative;}
.titlepage h1:before {width: 10px; height: 10px; background: #8dc100; position: absolute; top: 0.5rem; left: -2rem; display: block; content: "";}

blockquote {
   font-style: italic;
   color: #ababab;
   margin: 20px 0 20px 45px;
   border-left: 3px solid #e6e6e6;
   padding-left: 30px;
   line-height: 1.4em;
   position: relative;
}

blockquote p {
   margin: 0;
}

blockquote:before {font-family: fonts-bold;
   content: "\2033";
   position: absolute;
   left: -45px;
   top: 10px;
   color: #e6e6e6;
   font-size: 3rem;
}


hr{ height: 1px; width: 100%; color: #cbcfd7; border: none; border-top: 1px solid #cbcfd7; overflow: hidden; clear: both; margin: 2rem 0;}

.content p {padding: 0.6em 0;}
.content .copy {position: relative; color: #a1a8b3; font-style: italic; display: block; margin-top: -0.7em;}
.content .copy:before {content: "\00A9"; padding-right: 0.5em;}

.blue, .content .blue a:link, .content .blue a:visited {color: #0040a1;}
.red, .content .red a:link, .content .red a:visited {color: #8dc100;}
.black, .content .black a:link, .content .black a:visited {color: #000;}
.gray, .content .gray a:link, .gray a:visited {color: #ababab;}

.blockdark {background: #264c9e; color: #fff; padding: 1.5em 2em; border-radius: 3px;}
.blocklight {background: #66b5ff; color: #fff; padding: 1.5em 2em; border-radius: 3px;}
.blockred {background: #8dc100; color: #fff; padding: 1.5em 2em; border-radius: 3px;}

.blockdark a, .blocklight a, .blockred a,
.blockdark a:hover, .blocklight a:hover, .blockred a:hover {color: #fff;}

/*.page-wrap {max-width: 1920px; min-width: 1240px; margin: 0 auto; overflow: hidden; position: relative;}*/
.width {width: 85%; margin: 0 auto; position: relative;}
.header .width {width: 95%;}
.content {padding: 0 0 3rem 0; min-height: 250px;} 
.home .header {position: absolute; top: 0; width: 100%; z-index: 1100; background: none;}
.home .header:after {display: none;}
/*
.header:after {
  background: #ea1011;
  height: 5px;
  width: 100%;
  position: absolute;
  bottom: -8px;
  left: 0;
  display: block;
  content: "";
}
*/
.header {position: relative; background: #264c9e; padding-bottom: 35px;}
.header .top {width: 500px; font-family: 'fonts-bold'; font-size: 0.9rem; position: absolute; top: 62px; right: 0;}
.header .top ul {display: grid; grid-template-columns: repeat(4, 1fr);}
.header .top ul li {display: flex; justify-content: center; align-items: center;}
.header .top i {transition: all 0.3s linear; background-color: rgba(203,203,203,0.38); border-radius: 3px; width: 57px; height: 57px; display: flex; justify-content: center; align-items: center; margin: 0.8rem auto 0 auto;}
.header .top a {color: #fff; text-decoration: none; display: block;  width: 100%;  text-align: center;}
.header .top a:hover i {background-color: rgba(102,181,255,1);}

.header .logo {color: #fff; white-space: nowrap; height: 60px; margin: 35px 0; display: inline-block; position: relative; text-decoration: none;}
.header .logo i {width: 60px; height: auto; max-width: 100%; display: block; float: left; margin-right: 30px;}
.header .logo img {width: 60px; height: auto; max-width: 100%; }
.header .logo big {font-family: 'fonts-bold'; display: block; font-size: 24px;}
.header .logo small {display: block; font-size: 16px; text-transform: uppercase;}

.header .text {color: #fff; border-top: 1px dashed rgba(255,255,255,0.5); padding-top: 2.3rem;}
.header .text big {font-size: 1.5rem; display: block; font-family: 'fonts-bold';}
.header .text small {font-size: 1.25rem; padding-top: 1em; display: block; font-family: 'fonts-semibold';}


.mid {position: relative;}
.clear {clear: both; height:0px;}
.centercolumn {float: left; width: 73%;}
.rightcolumn {float: right; width: 23%; position: relative; padding: 0 0 3rem 2rem; border-left: 1px dashed #b4b4b4;}
.rightcolumn .title {color: #0040a1; display: block !important; letter-spacing: 1px;  font-size: 1.5rem; font-weight: 700; text-transform: uppercase;
    overflow: hidden;
    text-align: left;
    margin: 0px 0 2rem 0;
}
.rightcolumn .title span { margin: 0 15px 0 0;
    display: inline-block;
    vertical-align: top;
}

@media screen and (max-width: 1023px) {
.centercolumn {float: none; width: 100%;}
.rightcolumn {float: none; width: 100%;}
.rightcolumn .title::after {margin: 0px 0 3em 0;}
}



/* Menu --------------------------------------*/
#menu-checkbox {display: none;}
.tm {z-index: 1100; width: calc(100% - 300px); position: absolute; top: 62px; right: 0; text-align: right;}
.home .tm {z-index: 1005;}
.tm nav { display: inline-block;}
.tm li {list-style: none;}
.tm a {text-decoration: none; color: #fff;}

.tm .ul1 {position: relative; display: block; text-align: left;}
.tm .li1 {transition: all 0.3s linear; display: inline-block; text-align: left; position: relative; border-radius: 3px;}
.tm .li1 > a { font-size: 0.9em; display: block; line-height: 38px; position: relative; padding: 0 20px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase;}
.tm .li1:hover, .tm .li1:focus {background: #042b62;}
.tm .li1:hover > a {color: #fff;}


.tm .ul2 {min-width: 350px; overflow: hidden; transition: all 0.3s linear; display: none; background: #042b62; position: absolute; top: 35px; left: 0; right: 0; text-align: left; z-index: 1000; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
.tm .li1:hover .ul2 {display: block;}
.tm .li2 > a {overflow: hidden; padding: 12px 30px 12px 20px; display: block; line-height: normal; position: relative;}
.tm .li2 a:before {transition: all 0.3s linear;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 50%; margin-top: -11px;
  left: -17px;
  display: block;
  content: '\2192';
}

.tm .li2 > a:hover {padding: 12px 20px 12px 30px; color: #fff; background: rgba(0,0,0,0.2);}
.tm .li2 > a:hover:before {left: 7px;}
/*
.tm .li1:nth-child(5) .ul2 { min-width: 250px;}
*/


@media screen and (max-width: 1280px) {
.tm {width: calc(100% - 400px); font-size: 1.2rem; position: fixed;}
#main-menu .li1 {display: block;}

#main-menu {transition: all 0.3s linear; width: 98%; position: fixed; top: 125px; right: 0; z-index: 1001; padding: 30px; background: #042b62; transform: translateX(100vw); border-top-left-radius: 3px; border-bottom-left-radius: 3px; box-shadow: 0 0 20px 0px rgba(0,0,0,0.3);}
#main-menu .li1 {display: block;}
.tm .li1 {padding-bottom: 1em; page-break-inside: avoid; }
.tm .li1:before {background: none;}
.tm .li1 > a {padding: 0; display: inline-block; font-size: 1.1em;}
.tm .li1 a {border-radius: 3px;}

.tm .ul2 {background: none; font-size: 1.2rem;
  position: relative;
  display: block;
  top: 0;
}
.tm .li2 {display: inline-block; position: relative;}

.toggle-button {z-index: 1111;
    position: fixed;
    top: 50px;
    right: 0;
    text-align: center;
    width: 80px; height: 80px;
    display: inline-block;
    cursor: pointer;
    color: #fff;
border-top-left-radius: 3px;
border-bottom-left-radius: 3px;
}
.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; background: #042b62; border-radius: 3px;}
#menu-checkbox:checked + nav #main-menu {transform: translateX(0);}
}
@media screen and (max-height: 500px) {
#main-menu {display: grid; grid-template-columns: 1fr 1fr;}
.tm .ul2 {display: none;}
}

@media screen and (max-width: 1023px) and (orientation:portrait) {
/*#main-menu {width: 95vw;}*/
}

.footer {color: #fff; font-size: 0.9rem; padding: 5rem 0 3rem 0; background: #021c3f;}
.footer .width {display: grid; grid-template-columns: 450px auto auto auto;}
.footer .left {/*width: 30%; float: left;*/ max-width: 400px; padding: 0 8rem 3rem 0; position: relative;}
.footer .logo {color: #fff; white-space: nowrap; height: 60px; margin: 35px 0; display: inline-block; position: relative; text-decoration: none;}
.footer .logo i {width: 60px; height: auto; max-width: 100%; display: block; float: left; margin-right: 30px;}
.footer .logo img {width: 60px; height: auto; max-width: 100%; }
.footer .logo big {font-family: 'fonts-bold'; display: block; font-size: 24px;}
.footer .logo small {display: block; font-size: 16px; text-transform: uppercase;}

.footer .address, .footer .phone {/*width: 24%; float: left;*/ font-family: 'fonts-semibold'; font-size: 1.25rem;}
.footer .address big {font-size: 1.5rem; font-family: 'fonts';}
.footer .mail a {color: #fff; text-decoration: none;}
.footer .mail a:hover,
.footer .link {margin-top: 1em;}
.footer .link a:hover {color: #66b5ff;}
.footer .link a {color: #fff; background: #233958; border-radius: 3px; padding: 1em 1.5em; text-decoration: none; font-size: 0.85rem;}
/*.footer .link a:hover {background: #66b5ff;}*/
.footer .gray {color: #7d7d7d; font-size: 0.85rem;}
.footer .square {position: relative;}
.footer .square:before {margin-top: 5rem; margin-bottom: 10px; width: 10px; height: 10px; background: #66b5ff; display: block; content: "";}

.footer .ul1 {/*width: 20%; float: left;*/ font-size: 0.9rem; padding-bottom: 2em; padding-right: 3rem;}
.footer .ul1 li {list-style: none;}
.footer .li1 {transition: all 0.3s linear; position: relative;}
.footer .li1 a {color: #fff; display: inline-block; position: relative; padding: 5px 20px 5px 25px; text-transform: uppercase; text-decoration: none; position: relative;}
.footer .li1 a:hover:before { transform: scale(3); background: #8dc100;}

.footer .li1 a:before {transition: all 0.3s linear; transform: scale(1); background: #fff;
  width: 4px;
  height: 4px;
  position: absolute;
  top: 50%; margin-top: -2px;
  left: 0px;
  display: block;
  content: "";
}

.footer .ul2 {display: none;}

.footer .bot {border-top: 1px dashed rgba(255,255,255,0.27); padding: 3rem 0 5rem 0;}
.footer .bot .width {display: block;}
.footer .copy {float: left; color: #e3e3e3; font-size: 0.9rem; display: inline-block;}
.footer .copy:before {content: "\00A9"; padding-right: 0.5em;}

.footer .ray {text-align: right; font-size: 0.85em; float: right;}
.footer .ray a {color: #888; opacity: 0.6; letter-spacing: 1px; border-bottom: 1px dashed #888; text-decoration: none;}
.footer .ray a:hover {color: #fff; opacity: 1; border-bottom: none;}

@media screen and (max-width: 1600px) {
.footer .ul1 {display: none;}
}


.content .videolink a {margin-left: -1rem; color: #fff; text-transform: uppercase; font-family: fonts; font-size: 0.9rem; letter-spacing: 2px; background: #cba174; padding: 1rem 3.5rem 1rem 3.2rem; border-radius: 1.1rem; text-decoration: none; display: inline-block; position: relative;}
.content .videolink a:hover {background: #006e78;}
.content .videolink a:before {
  background: url(/im/arrow_play.png) 50% 50% no-repeat;
  background-size: cover;
  width: 15px;
  height: 15px;
  position: absolute;
  top: 50%; margin-top: -7px;
  left: 1.2rem;
  display: block; content: "";
  }
.content .videolink a:after {
  background: url(/im/arrow_white.svg) 50% 50% no-repeat;
  background-size: cover;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 50%; margin-top: -5px;
  right: 1.5em;
  display: block; content: "";
  }
/*.content p {line-height: 1.5em;}*/
.content img {max-width: 100%; height: auto !important;}

.content table {margin: 1.5em 0; max-width: 100%;}
.content table, table th, table td {border-spacing: 1px; border-collapse: separate; border: none;} 
.content table td {padding: 0.7em 0.7em 0.4em 0.7em; position: relative;}
.content table td:after {border-top: 1px dotted #1d84a2; content: ""; width: 100%; height: 1px; position: absolute; bottom: 0; left: 0;}
.content table th { border-radius: 3px; position: relative; color: #fff; background: linear-gradient(15deg, #1d84a2, #11bdd1); padding: 0.8em 1em 0.6em 1em; font-weight: 400; font-size: 0.9em;}
.content table.noborder, .content table.noborder td, .content table.noborder th, .content table.noborder td:after {border: none;}
.content td p, .content th p {padding: 0;  line-height: normal;}
.content td p img {margin: 0;}
.content table ul {padding-bottom: 0.5em;}


.path {font-size: 0.9rem; padding: 13px 0 2rem 0; margin-left: -0.5em;}
.path, .path a {color: #a1a8b3; text-decoration: none;}
.path a, .path span {padding: 0 0.5em; display: inline-block; vertical-align: top;}
.path a:hover {color: #0040a1;}

.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: #66b5ff; width: 30px; content: '\2192'; display: block; position: absolute; top: 0; left: 0;}
.content .ul1 li:before {color: #66b5ff;}
.content ol {margin-left: 3rem;}
.content ol li {margin: 0 0 0.8em 0;}

.codevideo {width: 100%; position: relative; padding-bottom: 56.25%; /* ratio 16/9 */}
.codevideo iframe {border: none; position: absolute; width: 100%; height: 100%; top: 0; left: 0;}
.codevideo video,
.codevideo img {max-width: 100%; height: auto;}

.list {margin-left: 0px !important; vertical-align: top;}
.list a {margin: 1.5em 3em 1em 0; text-align: left; display: inline-block; vertical-align: top; position: relative; width: 28%; text-decoration: none;}
.list a .pict {transition: all 0.2s linear; outline: 1px solid rgba(255,255,255,1); outline-offset: 3px; display: block; position: absolute; z-index: 2; top: 0; left: 0px; width: 110px; height: 110px; overflow: hidden; border-radius: 3px;}
.list a .pict img {width: 100%; height: 100%; border-radius: 5px;}
.list a .pict .nopic {display: block; width: 100%; height: 100%;}
.list a .text {/*color: #006e78;*/ display: block;}
.list .anons {display: block; color: #000; line-height: 1.5em; font-size: 0.9em;}
.list .name {font-size: 1.5rem; position: relative; padding-bottom: 15px; margin-bottom: 10px; display: block; min-height: 110px;}

.list a:hover .name:before {height: 100%;}
.list a:hover .name:after {top: 0; margin-top: 0px;}
.list a:hover .pict {outline: 1px solid rgba(255,255,255,0.7); outline-offset: -10px;}


.list.size1 a .text,
.list.size2 a .text {margin: 0 0px 0 125px;}
.list.size1 a .pict .nopic,
.list.size2 a .pict .nopic {background: url(/im/nopic_list.jpg); background-size: cover;}

.list.size2 {display: grid; gap: 5em; grid-template-columns: 1fr 1fr; grid-template-rows: auto;}
.list.size2 a {width: 100%;}

.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: #8dc100;
  font-size: 1.2em;
  margin-left: 0.3em;
  display: inline-block;
  content: "\2192";
}
/*.listlinks a:hover {color: #aeaeae;}*/

@media screen and (max-width: 1279px) {
.list.size2  {display: block;}
.list.size2 a { padding-bottom: 3em;}
.list a {width: 47%;}
.list a:nth-child(2n) {margin-right: 0;}
}

@media screen and (max-width: 1279px) and (orientation:portrait) {
.list a {width: 100%;}
}

.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;}

/*
.album i:before {transition: all 0.3s linear; background: #ff4444; width: 0; height: 1px; z-index: 2; position: absolute; bottom: -1px; left: 0; display: block; content:"";}
.album a i:after {transition: all 0.3s linear; background: url(/im/arr_right.svg) 0 0 no-repeat; background-size: cover; width: 15px; height: 15px; position: absolute; bottom: -8px; left: 0; display: block; content:"";}
.album a:hover i:before {width: 100%;}
.album a:hover i:after {left: 96%;}
*/

.toTop {
width: 60px;
height: 60px; 
background: url("/im/arrow_up_w.svg") no-repeat 50% 50% #0040a1; border-radius: 3px; margin: 1rem;
position: fixed; z-index: 998;
bottom: 0;
right: 0px;
cursor: pointer;
display: none;
color: #fff;
}
.toTop:hover {background-color: #66b5ff;}

 /* Search
-----------------------------------------------------------------------------*/
.header .search {display: none; /*display: block;*/ width: 140px; height: 50px; line-height: 50px; position: absolute; top: -50px; right: 0;}
.header .search a {display: block; width: 14px; height: 14px; margin: 18px 0; position: absolute; top: 0; right: 0; text-decoration: none; background: url("/im/search.svg") 0 0 no-repeat; background-size: cover;}
/*
.header .search input { width: 120px; height: 20px; color: #000; background: none; line-height: 20px; padding: 0 0 5px 0; outline: 0; border: none;}
.header .search input::placeholder {color: #cba174; font-size: 0.8em;}
.header .search input:focus {border: 1px solid #cba174; padding: 10px 5px; margin: -10px -5px; border-radius: 5px;}
.header .search a:after {color: #cba174; font-size: 1rem; content:"\2192"; position: relative; z-index: 1; right: 0; display: inline-block; line-height: 20px; width: 100%; height: 100%; text-align: center;}
*/

.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;}




/*------Animate-Scroll--------*/
@keyframes move-up {
    from {transform:translateY(50px); opacity: 0;}
    to   {transform:translateY(0); opacity: 1;}
}
@keyframes move-down {
    from {transform:translateY(-50px); opacity: 0;}
    to   {transform:translateY(0); opacity: 1;}
}
@keyframes move-right {
    from {transform:translateX(-50px); opacity: 0;}
    to   {transform:translateX(0); opacity: 1;}
}
@keyframes move-left {
    from {transform:translateX(50px); opacity: 0;}
    to   {transform:translateX(0); opacity: 1;}
}
@keyframes opacity {
    from {opacity: 0;}
    to   {opacity: 1;}
}
@keyframes scalew {
    from {width: 0%;}
    to   {width: 100%;}
}


/* HOME
-----------------------------------------------------------------*/
/*
.titleblock { width: 100%; font-size: 1.2em; letter-spacing: 3px; position: relative; text-transform: uppercase; margin-bottom: 2rem; text-align: left;}
.titleblock:after { background: #a0a0a0; height: 1px; width: 0%; margin-top: 1em; display: block; content:'';}
.homeblock-dark .titleblock p {background: linear-gradient(to right, #d3ddde, #fff, #fff, #94acae); -webkit-background-clip: text; -webkit-text-fill-color: transparent; display: inline-block; padding: 0; margin: 0;}
.homeblock-dark .titleblock:after {background: linear-gradient(to right, #94acae, #fff, #94acae, #94acae);}

.active .titleblock:after {animation: scalew linear 1.3s forwards; animation-delay: 0.3s;}
*/

.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; transform: scale(1); width: 8px; height: 8px; background: #fff; margin: -4px; position: absolute; top: 50%; left: 50%; content: "";}
.slider .slick-dots li.slick-active:after {background: #8dc100; transform: scale(2);}


.biglink {display: inline-block; margin-top: -49px; position: absolute; top: 0; right: 0; z-index: 1001; text-transform: uppercase; border-radius: 3px;}
.biglink a {display: inline-block; float: right; text-decoration: none;  height: 98px; padding: 30px; font-weight: 600; margin-left: 30px; position: relative; border-radius: 3px;}
.biglink .linkpr {background: #fff; color: #000; line-height: 19px; padding-right: 100px;}
.biglink .linkpr:after {background: url("/im/arrow_right_black.svg") no-repeat 50% 50%; background-size: contain; position: absolute; top: 50%; right: 30px;
  width: 21px;
  height: 21px;
  margin-top: -10px;
  display: inline-block;
  content: "";
}
.biglink .linkcat { background: linear-gradient(to right, #8dc100, #ff4200); color: #fff; line-height: 38px;}
.biglink .linkcat:after {
  width: 38px;
  height: 38px;
  background: url(/im/download-white.svg) 50% 50% no-repeat;
  margin-left: 1em;
  margin-top: 3px;
  display: inline-block;
  float: right;
  content: "";
}
.home h2, .footer h2 {font-family: fonts-bold; font-size: 4rem; font-weight: 600; line-height: 1.1em; margin-bottom: 55px; display: inline-block;
   background: linear-gradient(to right, #9dc4e8 3%, #fff);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.mainslider {max-width: 100%; overflow: hidden; background: #1c4682; position: relative; line-height: 0;}
.mainslider .text {line-height: normal; position: absolute; top: 45%; left: 10%; width: 90%; z-index: 1004;}
.mainslider h3 {color :#fff; font-family: fonts-bold; font-size: 5rem; line-height: 1.1em; margin-bottom: 2rem;}
.mainslider .text .link {display: inline-block; border: 1px solid #fff; padding: 0 1em 0.3em 1em; color: #fff; font-weight: 600; text-decoration: none; margin-top: 2em; line-height: 2em; border-radius: 3px;}
.mainslider .text .link:after {width: 12px; height: 12px; background: url("/im/arrow_right_white.svg") no-repeat 50% 50%; background-size: contain;
  margin-left: 0.7em;
  display: inline-block;
  content: "";
}
.mainslider .text .link:hover {border: 1px solid #66b5ff; background: #66b5ff; padding: 0 1em 0.3em 1.5em;}
.mainslider .slick-slide img {width: 100%; height: auto; display: block;}
/*.mainslider .slick-arrow {filter: brightness(100); opacity: 0.3;}*/
.mainslider .slick-dots {height: 110px; display: grid; grid-template-columns: 1fr 1fr 1fr 1fr;
  width: 90%;
  border-top: 1px dashed rgba(255,255,255,0.5);
   position: absolute; z-index: 1001;
   right: 0; 
   list-style: none;
   text-align: center;
   bottom: 0;
}
.mainslider .slick-dots li {width: 100%; height: 100%;}
.mainslider .slick-dots li:before {transition: all 0.5s ease-out; width: 0%; height: 2px; background: #66b5ff; margin: -1px; position: absolute; top: 0; left: 0; content: "";}
.mainslider .slick-dots li:after {/*background: #8dc100;*/ top: 0; left: 0; width: 10px; height: 10px; margin: -5px;}
.mainslider .slick-dots li button {display: block !important; font-size: 3rem; opacity: 0.4; margin: 1rem 0 0 -0.7rem; transition: all 0.3s linear;}
.mainslider .slick-dots li.slick-active:before {width: 80%;}
.mainslider .slick-dots li.slick-active:after {background: #66b5ff; transform: scale(1.5);}
.mainslider .slick-dots li.slick-active button {color: #66b5ff; opacity: 1;}


/*---NewsHome----*/

.home .newsblock {padding: 5rem 0 3rem 0; background: linear-gradient(to bottom, #1c4782, #618fbe, #deeaf4);}

.newsblock .newslink {float: right; line-height: 4rem;}
.newsblock .newslink a {color: #fff; font-family: 'fonts-semibold'; display: inline-block; position: relative; text-decoration: none;}
.newsblock .newslink a:after {margin-left: 1em; margin-top: 3px; width: 17px;
  height: 15px;
  background: url("/im/arrow_white.svg") no-repeat 50% 50%;
  background-size: contain;
  display: inline-block;
  content: "";}

.newsblock ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 11px;
}

.newsblock ul li { 
  border-radius: 3px;
  display: flex;
  justify-content: left;
  align-items: center;
  font-size: 1.25rem;
  position: relative;
}
.home .newsblock ul li {aspect-ratio: 1 / 1;}
.newsblock ul li a {color: #242424; width: 100%; height: 100%; didplay: block; background: #e3eaf1; border-radius: 3px; text-decoration: none; overflow: hidden;}
.newsblock ul li a span {display: block;}
.newsblock ul li a .date {color: #0040a1; font-size: 0.95rem; line-height: 16px; padding: 1rem 2rem; font-family: 'fonts-bold'; border-bottom: 1px dashed #b4b4b4; position: relative;}
.newsblock ul li a .date .day {font-size: 2.25rem; line-height: 32px;}
.newsblock ul li a .date:after {position: absolute; top: 2rem; right: 2rem;
  width: 17px;
  height: 15px;
  background: url("/im/arrow_blue.svg") no-repeat 50% 50%;
  background-size: contain;
  display: inline-block;
  content: "";
}
.newsblock ul li a .name { padding: 2rem; font-family: 'fonts-semibold';}
.newsblock ul li a .pict {width: 100%;}
.newsblock ul li a .pict img {width: 100%; min-width: 100%; max-width: 100%; height: auto;}
.newsblock ul li a:hover {background: #fff;}
.newsblock ul li a:hover .date:after {background-image: url("/im/arrow_green.svg");}

.home .newsblock ul li {opacity: 0; transform:translateY(70px);}
.home .newsblock.active ul li  {animation: move-up ease-in-out 0.5s forwards;}
.home .newsblock ul li:nth-child(2) {animation-delay: 0.4s;}
.home .newsblock ul li:nth-child(3) {animation-delay: 0.8s;}
.home .newsblock ul li:nth-child(4) {animation-delay: 1.2s;}


.content .newsblock ul li {aspect-ratio: 3 / 4;}
.content .newsblock ul li:before {display: none;}
.content .newsblock ul, .content .newsblock ul li {padding: 0; margin: 0;}
.content .newsblock ul li a { border: 1px solid #e3eaf1;}
.content .newsblock ul li a .date {padding: 1rem 1rem 1rem 2rem;}
.content .newsblock ul li a .name {font-size: 1rem; padding: 1rem 1rem 1rem 2rem;}
.content .newsblock ul li a .pict {}

@media screen and (max-width: 1800px) {
.content .newsblock ul {grid-template-columns: repeat(2, 1fr);}

}


/*---NewsHome-END---*/


/* NewsList
-----------------------------------------------------------------------------*/
.newsitem {position: relative;}
.newsitem .date {color: #ababab; margin: 1em 0;}
.newsitem .titlepage {margin: 0 0 1.5em 0;}
.newsitem .codevideo {margin-bottom: 2rem;}

.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; border-radius: 3px; border-bottom: 3px solid #8dc100; overflow: hidden; background: #75c9f3; outline: 1px solid rgba(255,255,255,1); outline-offset: 3px; position: absolute; display: inline-block; top: 0; left: 0;}
.newslist .link .pict img {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: #8dc100;
  font-size: 1.2em;
  margin-left: 0.3em;
  display: inline-block;
  content: "\2192";
}
.newslist .link:hover .name {color: #8dc100;}
.newslist .link:hover .pict {outline: 1px solid rgba(255,255,255,0.7); outline-offset: -15px;}
.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;}

.newslast .date {color: #ababab; margin: 2rem 0 0.5rem -2.1rem; padding-left: 1.9rem; position: relative;}
.newslast .name {margin: 0rem 0 2.5rem 0; display: block; color: #000; line-height: 1.3em; text-decoration: none; font-family: 'fonts-semibold';}
.newslast .name:after { margin-left: 0.5em;
width: 10px;
  height: 10px;
  background: url("/im/arrow_green.svg") no-repeat 50% 50%;
  background-size: contain;
  display: inline-block;
  content: "";
/*
  color: #8dc100;
  font-size: 1.2em;
  display: inline-block;
  content: "\2192";
*/
}
.newslast .name:hover {color: #0040a1;}
.newslast .name:hover:after {background-image: url("/im/arrow_blue.svg");}

.newsarchive h4 {position: relative; margin-left: -2.1rem; padding-left: 1.9rem; padding-bottom: 0;}
.newsarchive h4:before {width: 10px; height: 10px; background: #8dc100; position: absolute; top: 20%; left: -4px; display: block; content: "";}
.newsarchive .year {margin: 2rem 0 1rem -2.1rem; padding: 0 0 0.3rem 1.9rem; font-size: 1.5rem; position: relative;}
.newsarchive .year:before,
.newslast .date:before {width: 10px; height: 10px; background: #66b5ff; position: absolute; top: 20%; left: -4px; display: block; content: "";}
.newsarchive a {transition: all 0.1s linear; display: inline-block; padding: 0.2em 0.9em; line-height: 1.5em; background: none; color: #66b5ff; border-radius: 3px; border: 1px solid #66b5ff; margin: 0px 1em 1em 0; text-decoration: none; font-size: 0.9rem;}
.newsarchive a:hover {color: #fff; background: #0040a1; border-color: #0040a1;}

.signnews {color: #ababab; font-style: italic;}


/* Video
-----------------------------------------------------------------------------*/
.popup-video {position: fixed; top: 0; left: 0; z-index: 1500; width: 100%; height: 100%;}
.popup-video.visible {display: block;}
.popup-video.invisible {display: none;}
.popup-video .wrapper {position: fixed; top: 0; left: 0; z-index: 2002; width: 100%; height: 100%; overflow: hidden;}
.popup-video .wrapper .container {animation: height 0.5s 1 forwards; transform: translate(-50%,-50%); height: 0%; width: 100%; background: rgba(0,0,0,0.9); position: absolute; top: 50%; left: 50%; display: block;}
@keyframes height {
  0% {height: 0%;}
  100% {height: 100%;}
}
/*.popup-video .wrapper.active .container {height: 100%;}*/
.popup-video .wrapper .wrapper2 {
    display: block;
    position: absolute;
    margin: 0;
    padding: 0;
    text-align: center;
    top: 50%;
    left: 50%;
    width: 75%;
    height: auto; transform: translate(-50%,-50%);
}
.popup-video.visible .wrapper .codevideo,
.popup-video.visible .close {animation: opacity 0.3s 0.5s 1 forwards; opacity: 0;}
@keyframes opacity {
  0% {opacity: 0;}
  100% {opacity: 1;}
}
.popup-video .close {display: block; width: 70px; height: 70px; background: url(/im/plus.svg) 50% 50% no-repeat #cba174; transform: rotate(45deg); background-size: 26px 26px; margin: 2.5em; position: absolute; top: 0; right: 0; border-radius: 50%; cursor: pointer;}



/* HomeBlocks
-----------------------------------------------------------------------------*/
.home .titleblock {margin-bottom: 3rem; font-size: 1.3rem; letter-spacing: 1px; color: #8dc100; text-transform: uppercase; font-weight: 700;}
.newsblock .titleblock {float: left;}
.partners .titleblock:before {
  width: 35px;
  height: 5px;
  background: #264c9e;
  margin: 25px 0;
  display: block;
  content: "";
}


@media screen and (max-width: 1800px) {
}
@media screen and (max-width: 1400px) {
.header .logo {max-width: calc(100% - 100px);}
.width { width: 90%;}
}
@media screen and (min-width: 1025px) and (max-width: 1599px) {
}
@media screen and (max-width: 1024px) {
.header .text {padding-top: 0.5rem;}
.header .text small {padding-top: 0;}
.mainslider .text {top: 53%; width: 80%;}
.mainslider h3 {font-size: 2.5rem; margin-bottom: 1rem;}
.mainslider .text .link {
  padding: 0 0.5em 0.3em 0.5em;
  margin-top: 0;
  line-height: 1.5em;}
.mainslider .slick-dots {height: 65px;}
.mainslider .slick-dots li button {font-size: 2rem; margin-top: 0.5rem;}
.home h2 {font-size: 2.5rem !important;}
}

@media screen and (max-width: 1023px) {
}
@media screen and (max-width: 767px) {
}