/* Подключение шрифта Google */
@import url("http://fonts.googleapis.com/css?family=Open+Sans:400,600,700&subset=latin,cyrillic");

/* Базовые стили демо-страницы */
body {
    font: 1em/1.0 'Open Sans', Arial, Sans-serif;
    margin: 0;
    background: #CCCCCC;
    overflow-y: scroll; /* Add the ability to scroll */
}

.progress-bar {
    position: fixed;
    left: 0;
    top: 0;
    z-index:999;
    height: 4px; // Высота линии, можно менять/подбирать
    width: 0%;
    background: #1e90ff; // Цвет линии, можете заменить на HEX.
}

#upbutton {
    background: url("up.png") no-repeat top left;
    height: 60px;
    width: 60px;
    bottom: 30px;
    right: 30px;
    cursor: pointer;
    display: none;
    position: fixed;
    z-index: 999;
  }

.volume-shadow{
  color: #FFFFFF;
  text-shadow: 0px 3px 2px rgba(0,0,0,0.3),
               0px 6px 8px rgba(0,0,0,0.3),
               0px 12px 24px rgba(0,0,0,0.3);
}

.circle {
    border-radius: 50%;  /* Скругление углов изображения */
    border: 5px solid #fff; /* Цвет и ширину рамки */
    box-shadow: 4px 2px 10px #999999; /* Цвет и размер тени */
}

.invert-grey-image {
    filter: invert(1) grayscale(1); /* Инвертирование изображения */ /* Черно-белый фильтр для изображения */
    transition: 1s; /* Время изменения цвета изображения */
}
.invert-grey-image:hover {
    filter: invert(0) grayscale(0); /* Цветное изображение при наведении */
}

.grey-image {
    filter: grayscale(1); /* Черно-белый фильтр для изображения */
    transition: 1s; /* Время изменения цвета изображения */
}
.grey-image:hover {
    filter: grayscale(0); /* Цветное изображение при наведении */
}

.transparent75 {
    filter: alpha(Opacity=75); /* Полупрозрачность для IE */
    opacity: 0.75; /* Полупрозрачность для других браузеров */ 
   }
.transparent50 {
    filter: alpha(Opacity=50);
    opacity: 0.5; 
   }
.transparent25 {
    filter: alpha(Opacity=25);
    opacity: 0.25; 
   }
.transparent100 {
    filter: alpha(Opacity=100);
    opacity: 1.00; 
   }

h1{
    font: 1.6em/0.3 'Open Sans', Arial, Sans-serif;
    text-align: left;
    font-weight: 400;
}
h2{
    font: 1.0em/1.0 'Open Sans', Arial, Sans-serif;
    text-align: left;
    font-weight: 500;
}

h3{
    font: 1.3em/0.8 'Open Sans', Arial, Sans-serif;
    text-align: center;
    font-weight: 300;
    line-height: 1.5;
}

h4{
    font: 1.3em/0.8 'Open Sans', Arial, Sans-serif;
text-align: center;
  background-color:#f1f1f1;
  color:black;
font-weight: bold;
    line-height: 1.5;
}

a { color: black; /* Цвет обычной ссылки */
text-decoration: none; /* Убираем подчёркивание у ссылок */
}
a:visited { color: black; /* Цвет посещённой ссылки */
}
a:hover { color: #1e90ff; /* Цвет ссылки при наведении на неё курсора мыши */
text-decoration: none; /* Убираем подчёркивание у ссылок */
}

p {
text-indent: 25px; /* Отступ первой строки в пикселах */
}

/* Общий контейнер */
.wrapper {
    width: 100%;
    margin: 0 auto;
}



/* Шапка */
.header {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 888;
  overflow: hidden;
  background-color: #f1f1f1;
  padding: 0px 30px;
  box-shadow: 5px 5px 100px 0 #999999; /* Внешняя тень */
  border-radius: 0px 0px 0px 0px;
}

/* Стиль ссылок шапки */
.header a {
  float: left;
  color: black;
  text-align: center;
  padding: 12px;
  text-decoration: none;
  font-size: 18px;
  line-height: 10px;
  border-radius: 5px;
  border-color: #f1f1f1; /* Цвет границы */ 
  border-style: solid; /* Стиль границы */
}

.header a:hover {
  float: left;
  color: black;
  text-align: center;
  padding: 12px;
  text-decoration: none;
  font-size: 18px;
  line-height: 10px;
  border-radius: 5px;
  border-color: dodgerblue; /* Цвет границы */ 
  border-style: solid; /* Стиль границы */
}

/* Стиль активной/текущей ссылки шапки */
.header a.active {
  background-color: dodgerblue;
  color: white;
  border-color: dodgerblue; /* Цвет границы */ 
  border-style: solid; /* Стиль границы */
}

/* Сдвигаем секцию влево */
.header-left {
  float: left;
  float: top;
}

/* Сдвигаем секцию со ссылками вправо */
.header-right {
  float: right;
  float: bottom;
}

/* Медиа-запрос для адаптивности – когда ширина
  экрана 650px или меньше, ссылки будут друг над другом */
@media screen and (max-width: 650px) {
  .header a {
    float: none;
    display: block;
    text-align: left;
  }
  .header-right {
    float: none;
  }
  .header-left {
    float: none;
  }
}

/* ------------- Контейнер с адаптивными блоками------------- */
.masonry {
    
    column-gap: 1.0em; /* Общее расстояние между колонками */
    font: 0.85em/1.4 'Open Sans', Arial, Sans-serif;
    -moz-column-gap: 1.0em; /* Расстояние между колонками для Firefox */
    -webkit-column-gap: 1.0em; /* Расстояние между колонками  для Safari, Chrome и iOS */
}

/* Элементы в виде плиток с содержанием */
.item {
    display: inline-block;
    background: #fff;
    padding: 1em;
    margin: 0 0 1.5em;
    width: 100%;
    text-align: justify;
    box-sizing: border-box; /* Изменения алгоритма расчета ширины и высоты элемента.*/
    -moz-box-sizing: border-box; /* Для Firefox */ 
    -webkit-box-sizing: border-box; /* Для Safari, Chrome, iOS иAndroid */ 
    box-shadow: 5px 5px 10px 0 #999999; /* Внешняя тень плиток */
}

/* Стили картинок, видое и фреймов внутри адаптивных плиток */
img, iframe {
max-width: 100%;
height: auto;
display: block;
}

/* demo контейнер */
.demo {
    margin: 0% 0%;
    font: 1.0em/1.0 'Open Sans', Arial, Sans-serif;
    text-align: left;
    font-weight: 400;
}

/* Медиа-запросы для различных размеров адаптивного макета */
@media only screen and (min-width: 400px) {
    .masonry {
        -moz-column-count: 1;
        -webkit-column-count: 1;
        column-count: 1;
    }
}

@media only screen and (min-width: 700px) {
    .masonry {
        -moz-column-count: 1;
        -webkit-column-count: 1;
        column-count: 1;
    }
}

@media only screen and (min-width: 900px) {
    .masonry {
        -moz-column-count: 1;
        -webkit-column-count: 1;
        column-count: 1;
    }
}

@media only screen and (min-width: 1100px) {
    .masonry {
        -moz-column-count: 1;
        -webkit-column-count: 1;
        column-count: 1;
    }
}

@media only screen and (min-width: 1280px) {
    .wrapper {
        width: 1260px;
    }
}

/* Текст сверху картинки */
.tsk {
    position: relative;
    margin: 0 0 1.5em;
    width: 100%;
    box-sizing: border-box; /* Изменения алгоритма расчета ширины и высоты элемента.*/
    -moz-box-sizing: border-box; /* Для Firefox */
    -webkit-box-sizing: border-box; /* Для Safari, Chrome, iOS иAndroid */
    box-shadow: 5px 5px 10px 0 #999999; /* Внешняя тень плиток */
}

.tsk_txt {
    position: absolute;
    bottom: 15px;
    left: 15px;
    background-color: #0a0a0a;
    opacity: .6;
    color: white;
    text-shadow: 0 1px 0 #151515;
    padding-left: 18px;
    padding-right: 18px;
   
}

.tsk img {
    width: 100%;
}



.app {
  display: grid;
  grid-gap: 15px;
  grid-template-columns: repeat(auto-fit, minmax(600px, 1fr));
  grid-auto-flow: dense;
}

