/* Common styles */
.nobr {
  white-space:nowrap;
}

body {
  width: 100%;
  text-align: center;
}

#container-centered {
  max-width: 1920px;
  text-align: left;
  margin: 0;
  padding: 0;
  position: relative;
}

.sect .colored-bg {
  overflow: auto;
}

.sect .content {
  width: 60%;
  margin-left: 18%;
  margin-top: 150px;
  margin-bottom: 100px;
  padding: 50px 2%;
  background-color: #fff;
}
/* !Common styles */

/* Меню разделов */
#top-menu {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  margin: 0;
  padding: 0;
  width: 100%;
  background-color: rgba(255,255,255,.7);
  overflow: hidden;
  text-align: center;
  list-style-type: circle;
  list-style-position: outside;
  -webkit-box-shadow: 0 2px 4px -2px #424242;
  -moz-box-shadow: 0 2px 4px -2px #424242;
  box-shadow: 0 2px 4px -2px #424242;
}

#top-menu li {
  display: inline-block;
  text-transform: uppercase;
  margin: 0;
  padding: 20px 15px;
  cursor: pointer;
}

#top-menu li,
#top-menu li span {
  -webkit-transition: all .6s ease-out;
  -o-transition: all .6s ease-out;
  -moz-transition: all .6s ease-out;
  -ms-transition: all .6s ease-out;
  -kthtml-transition: all .6s ease-out;
  transition: all .6s ease-out;
}

#top-menu li .marker-part {
  display: inline-block;
  margin: 0;
  padding: 0;
  width: 10px;
  height: 10px;
  background-color: #757575;
  border-radius: 50%;
}

#top-menu li:hover .marker-part {
  background-color: #fff !important;
}

#top-menu li.part.p0:hover {
  background-color: #424242;
  color: #fff;
}

#top-menu li.part.p1:hover,
#top-menu li .marker-part.p1 {
  background-color: rgba(156,39,176,.6);
  color: #fff;
}

#top-menu li.part.p2:hover,
#top-menu li .marker-part.p2,
#top-menu li:hover .marker-part.p2 {
  background-color: rgba(244,67,54,.6);
  color: #fff;
}

#top-menu li.part.p3:hover,
#top-menu li .marker-part.p3,
#top-menu li:hover .marker-part.p3 {
  background-color: rgba(33,150,243,.6);
  color: #fff;
}

#top-menu li.part.p4:hover,
#top-menu li .marker-part.p4,
#top-menu li:hover .marker-part.p4 {
  background-color: rgba(76,175,80,.6);
  color: #fff;
}

#top-menu li.part.p5:hover,
#top-menu li .marker-part.p5,
#top-menu li:hover .marker-part.p5 {
  background-color: rgba(255,143,0,.6);
  color: #fff;
}
/* !Меню разделов */

/* No javascript support message */
#no-js-support {
  background-color: #fff;
  display: block;
  position: fixed;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  z-index: 2147483647;
  font-weight: normal;
}

#no-js-support h1 {
  text-align: center;
  font-style: normal;
  font-size: 2em;
}

#no-js-support p {
  width: 60%;
  margin-left: 20%;
  font-size: 16pt;
}
/* !No javascript support message */

/* no browser support message */
#browser-is-not-supported {
  background-color: #fff;
  display: none;
  position: fixed;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  z-index: 2147483646;
  font-weight: normal;
}

html.no-backgroundsize #browser-is-not-supported,
html.no-csstransitions #browser-is-not-supported,
html.no-backgroundsize #browser-is-not-supported,
html.no-cssanimations #browser-is-not-supported,
html.no-opacity #browser-is-not-supported,
html.no-textshadow #browser-is-not-supported,
html.no-boxshadow #browser-is-not-supported,
html.no-rgba #browser-is-not-supported {
  display: block;
}

#browser-is-not-supported h1 {
  text-align: center;
  font-style: normal;
  font-size: 2em;
}

#browser-is-not-supported p {
  width: 60%;
  margin-left: 20%;
  font-size: 16pt;
}

#browser-is-not-supported .browsers-list {
  text-align: center;
}

#browser-is-not-supported .browsers-list a {
  padding: 0 10px;
}

#browser-is-not-supported .ignore-my-browser {
  text-decoration: underline;
  cursor: pointer;
}
/* !no browser support message */

/* content loader */
#content-loader {
  z-index: 2147483645;
  background-image: -moz-radial-gradient(center, ellipse cover, rgba(200,200,200,1) 0%, rgba(255,255,255,1) 100%);
  background-image: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, rgba(200,200,200,1)), color-stop(100%, rgba(255,255,255,1)));
  background-image: -webkit-radial-gradient(center, ellipse cover, rgba(200,200,200,1) 0%, rgba(255,255,255,1) 100%);
  background-image: -o-radial-gradient(center, ellipse cover, rgba(200,200,200,1) 0%, rgba(255,255,255,1) 100%);
  background-image: -ms-radial-gradient(center, ellipse cover, rgba(200,200,200,1) 0%, rgba(255,255,255,1) 100%);
  background-image: radial-gradient(ellipse at center, rgba(200,200,200,1) 0%, rgba(255,255,255,1) 100%);
  background-size: 200% 200%;
  background-position: center center;
  position: fixed;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  left: 0;
  top: 0;
  -webkit-animation: loaderbg 4s infinite ease;
  -moz-animation: loaderbg 4s infinite ease;
  -o-animation: loaderbg 4s infinite ease;
  animation: loaderbg 4s infinite ease;
}

@-webkit-keyframes loaderbg {
  0% {
    background-size: 200% 200%;
  }
  
  50% {
    background-size: 100% 100%;
  }
  
  100% {
    background-size: 200% 200%;
  }
}

@-moz-keyframes loaderbg {
  0% {
    background-size: 200% 200%;
  }
  
  50% {
    background-size: 100% 100%;
  }
  
  100% {
    background-size: 200% 200%;
  }
}

@-o-keyframes loaderbg {
  0% {
    background-size: 200% 200%;
  }
  
  50% {
    background-size: 100% 100%;
  }
  
  100% {
    background-size: 200% 200%;
  }
}

@keyframes loaderbg {
  0% {
    background-size: 200% 200%;
  }
  
  50% {
    background-size: 100% 100%;
  }
  
  100% {
    background-size: 200% 200%;
  }
}

.loader {
  display: inline-block;
  width: 30px;
  height: 30px;
  position: relative;
  border: 4px solid #333;
  top: 50%;
  left: 50%;
  -webkit-animation: loader 2s infinite ease;
  -moz-animation: loader 2s infinite ease;
  -o-animation: loader 2s infinite ease;
  animation: loader 2s infinite ease;
}

.loader-inner {
  vertical-align: top;
  display: inline-block;
  width: 100%;
  background-color: #333;
  -webkit-animation: loader-inner 2s infinite ease-in;
  -moz-animation: loader-inner 2s infinite ease-in;
  -o-animation: loader-inner 2s infinite ease-in;
  animation: loader-inner 2s infinite ease-in;
}

@-webkit-keyframes loader {
  0% {
    transform: rotate(0deg);
  }
  
  25% {
    transform: rotate(180deg);
  }
  
  50% {
    transform: rotate(180deg);
  }
  
  75% {
    transform: rotate(360deg);
  }
  
  100% {
    transform: rotate(360deg);
  }
}

@-moz-keyframes loader {
  0% {
    transform: rotate(0deg);
  }
  
  25% {
    transform: rotate(180deg);
  }
  
  50% {
    transform: rotate(180deg);
  }
  
  75% {
    transform: rotate(360deg);
  }
  
  100% {
    transform: rotate(360deg);
  }
}

@-o-keyframes loader {
  0% {
    transform: rotate(0deg);
  }
  
  25% {
    transform: rotate(180deg);
  }
  
  50% {
    transform: rotate(180deg);
  }
  
  75% {
    transform: rotate(360deg);
  }
  
  100% {
    transform: rotate(360deg);
  }
}

@keyframes loader {
  0% {
    transform: rotate(0deg);
  }
  
  25% {
    transform: rotate(180deg);
  }
  
  50% {
    transform: rotate(180deg);
  }
  
  75% {
    transform: rotate(360deg);
  }
  
  100% {
    transform: rotate(360deg);
  }
}

@-webkit-keyframes loader-inner {
  0% {
    height: 0%;
  }
  
  25% {
    height: 0%;
  }
  
  50% {
    height: 100%;
  }
  
  75% {
    height: 100%;
  }
  
  100% {
    height: 0%;
  }
}

@-moz-keyframes loader-inner {
  0% {
    height: 0%;
  }
  
  25% {
    height: 0%;
  }
  
  50% {
    height: 100%;
  }
  
  75% {
    height: 100%;
  }
  
  100% {
    height: 0%;
  }
}

@-o-keyframes loader-inner {
  0% {
    height: 0%;
  }
  
  25% {
    height: 0%;
  }
  
  50% {
    height: 100%;
  }
  
  75% {
    height: 100%;
  }
  
  100% {
    height: 0%;
  }
}

@keyframes loader-inner {
  0% {
    height: 0%;
  }
  
  25% {
    height: 0%;
  }
  
  50% {
    height: 100%;
  }
  
  75% {
    height: 100%;
  }
  
  100% {
    height: 0%;
  }
}
/* !content loader */

/* Заглавный экран */
#part0 {
  position: fixed;
  width: 100%;
  height: 100%;
  background-image: url("../img/bg_part0.jpg");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
  -o-background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;

}

#part0 #exhibition-header {
  position: absolute;
  font-weight: normal;
  text-align: center;
  width: 60%;
  left: 20%;
  height: 8%;
  top: 1%;
  color: #fff;
  text-shadow: 2px 2px 5px #000;
}

#parts-block {
  position: relative;
  width: 80%;
  height: 80%;
  left: 10%;
  top: 10%;
}

#parts-block .part {
  position: absolute;
  height: 12%;
  margin: 2% 0;
  background-color: #fff;
  width: 50%;
  left: 25%;
  overflow: hidden;
  border-style: solid;
  border-width: 4px;
  border-color: #fff;
  cursor: pointer;
  background-repeat: repeat;
  background-position: center bottom;
  -webkit-transition: all .4s ease-out 0s;
  -moz-transition: all .4s ease-out 0s;
  -o-transition: all .4s ease-out 0s;
  transition: all .4s ease-out 0s;
}

#parts-block .part .trans-bg {
  position: absolute;
  width: 100%;
  height: 100%;
}

#parts-block .part:hover, #parts-block .part:active {
  background-color: #ececec;
  width: 60%;
  left: 20%;
  top: 0 !important;
  height: 80%;
  z-index: 32767;
  animation: animatedBackground 5s linear .4s infinite alternate;
  -moz-animation: animatedBackground 5s linear .4s infinite alternate;
  -webkit-animation: animatedBackground 5s linear .4s infinite alternate;
  -ms-animation: animatedBackground 5s linear .4s infinite alternate;
  -o-animation: animatedBackground 5s linear .4s infinite alternate;
  box-shadow: 2px 2px 8px -2px #000;
}

@keyframes animatedBackground {
    0% { background-position: center bottom; }
    100% { background-position: center top; }
}
@-moz-keyframes animatedBackground {
    0% { background-position: center bottom; }
    100% { background-position: center top; }
}
@-webkit-keyframes animatedBackground {
    0% { background-position: center bottom; }
    100% { background-position: center top; }
}
@-ms-keyframes animatedBackground {
    0% { background-position: center bottom; }
    100% { background-position: center top; }
}
@-o-keyframes animatedBackground {
    0% { background-position: center bottom; }
    100% { background-position: center top; }
}

#parts-block .part p {
  margin: 0;
  text-align: center;
  font-size: 1.6em;
  padding-top: 3%;
  color: #fff;
  text-shadow: 2px 2px 5px #000;
}

#parts-block .part.p1 {
  top: 0;
  background-image: url("../img/bg_part0_to_part1.jpg");
}

#parts-block .part.p1 .trans-bg,
#part1 .colored-bg {
  background-color: rgba(156,39,176,.3);
}

#parts-block .part.p2 {
  top: 16%;
  background-image: url("../img/bg_part0_to_part2.jpg");
}

#parts-block .part.p2 .trans-bg,
#part2 .colored-bg {
  background-color: rgba(244,67,54,.3);
}

#parts-block .part.p3 {
  background-image: url("../img/bg_part0_to_part3.jpg");
  top: 32%;
}

#parts-block .part.p3 .trans-bg,
#part3 .colored-bg {
  background-color: rgba(33,150,243,.3);
}

#parts-block .part.p4 {
  background-image: url("../img/bg_part0_to_part4.jpg");
  top: 48%;
}

#parts-block .part.p4 .trans-bg,
#part4 .colored-bg {
  background-color: rgba(76,175,80,.3);
}

#parts-block .part.p5 {
  background-image: url("../img/bg_part0_to_part5.jpg");
  top: 64%;
}

#parts-block .part.p5 .trans-bg,
#part5 .colored-bg {
  background-color: rgba(255,143,0,.3);
}

#part0 .desc {
  position: fixed;
  bottom: 0;
  left: 25%;
  font-style: italic;
  width: 50%;
  text-align: center;
  font-size: .8em;
  color: #fff;

}
/* !Заглавный экран */

/* Часть 1 */
#part1 {
  display: none;
  background-image: url("../img/bg_part1.jpg");
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% auto;
}
/* !Часть 1 */

/* Часть 2 */
#part2 {
  display: none;
  background-image: url("../img/bg_part2.jpg");
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% auto;
}
/* !Часть 2 */

/* Часть 3 */
#part3 {
  display: none;
  background-image: url("../img/bg_part3.jpg");
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% auto;
}
/* !Часть 3 */

/* Часть 4 */
#part4 {
  display: none;
  background-image: url("../img/bg_part4.jpg");
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% auto;
}
/* !Часть 4 */

/* Часть 5 */
#part5 {
  display: none;
  background-image: url("../img/bg_part5.jpg");
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% auto;
}
/* !Часть 5 */

/* Контейнер с документами */
.docs-container {
  
}

.docs-container .imgs {
  width: 90%;
  margin-left: 5%;
  padding: 2.2em 0 0 0;
  text-align: center;
}

.docs-container .imgs img {
  display: inline-block;
  box-shadow: 0 0 10px 0 #424242;
  margin-bottom: 10px;
  -webkit-transition: all .8s ease-out;
  -o-transition: all .8s ease-out;
  -moz-transition: all .8s ease-out;
  -ms-transition: all .8s ease-out;
  -kthtml-transition: all .8s ease-out;
  transition: all .8s ease-out;
}

#part1 .docs-container .imgs img:hover {
  box-shadow: 0 0 10px 0 rgba(156,39,176,1);
}

#part2 .docs-container .imgs img:hover {
  box-shadow: 0 0 10px 0 rgba(244,67,54,1);
}

#part3 .docs-container .imgs img:hover {
  box-shadow: 0 0 10px 0 rgba(33,150,243,1);
}

#part4 .docs-container .imgs img:hover {
  box-shadow: 0 0 10px 0 rgba(76,175,80,1);
}

#part5 .docs-container .imgs img:hover {
  box-shadow: 0 0 10px 0 rgba(255,143,0,1);
}

.docs-container.no-shadow .imgs img {
  box-shadow: none !important;
}

.docs-container.far .imgs img {
  margin-left: 5% !important;
  margin-right: 5% !important;
}

.docs-container.closer .imgs img {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.docs-container.single .imgs img {
  max-width: 60%;
}

.docs-container.double .imgs img {
  max-width: 40%;
  margin-left: 2%;
  margin-right: 2%;
}

.docs-container.triple .imgs img {
  max-width: 25%;
  margin-left: 2%;
  margin-right: 2%;
}

.docs-container.four .imgs img {
  max-width: 20%;
  margin-left: 2%;
  margin-right: 2%;
}

.docs-container.five .imgs img {
  max-width: 15%;
  margin-left: 2%;
  margin-right: 2%;
}

.docs-container.six .imgs img {
  max-width: 11%;
  margin-left: 2%;
  margin-right: 2%;
}

.docs-container.seven .imgs img {
  max-width: 9%;
  margin-left: 2%;
  margin-right: 2%;
}

.docs-container .desc {
  width: 70%;
  margin-left: 15%;
  padding: 0 0 3em 0;
}

.docs-container .desc p {
  padding: 0;
  text-align: center;
  font-weight: normal;
  font-style: italic;
  font-size: .8em;
}

.photo-block {
  width: 100%;
  text-align: center;
}

.photo-block .docs-container {
  width: 32%;
  display: inline-block;
  vertical-align: top;
}
/* !Контейнер с документами */

/* Lightbox */
#lightbox {
  font-weight: normal;
}

.lb-caption a {
  color: #eee;
}
/* !Lightbox */

@media only screen and (max-width: 3000px) {
  #part0 #exhibition-header {
    font-size: 2em;
  }

  #parts-block .part p {
    font-size: 1.4em;
  }
}

@media only screen and (max-width: 1300px) {
  #part0 #exhibition-header {
    font-size: 1.4em;
  }

  #parts-block .part p {
    font-size: 1em;
  }
}

@media only screen and (max-width: 700px) {
  #part0 #exhibition-header {
    font-size: 1em;
  }

  #parts-block .part p {
    font-size: .8em;
  }
}