@font-face
{
  font-family: 'Roboto';
  src: local('Roboto Regular'), local('Roboto-Regular'),
       url(../fonts/Roboto/Roboto-Regular.woff?timestamp=202111261625) format('woff'),
       url(../fonts/Roboto/Roboto-Regular.ttf?timestamp=202111261625) format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face
{
  font-family: 'Roboto';
  src: local('Roboto Bold'), local('Roboto-Bold'),
       url(../fonts/Roboto/Roboto-Bold.woff?timestamp=202111261625) format('woff'),
       url(../fonts/Roboto/Roboto-Bold.ttf?timestamp=202111261625) format('truetype');
  font-weight: bold;
  font-style: normal;
}

html, body
{
  padding: 0;
  margin: 0;
  border: 0;
  text-align: center;
  font-size: 9pt;
  font-family: "Roboto", verdana, sans-serif;
}
body
{
  display: flex;
  flex-flow: column nowrap;
  color: #727272;
}
.wrapper
{
  display: flex;
  flex-flow: column nowrap;
  min-height: 100vh;
  min-width: 400px;
  background-color: #fff;
}
header
{
  display: flex;
  flex-flow: row nowrap;
  /*background-color: #b6d1ee;*/
}
header:before
{
  flex-grow: 1;
  content: "";
  background: #b6d1ee url(../images/header__background_elem.png?timestamp=202501241130) repeat right -2px top -6px;
}
header:after
{
  flex-grow: 1;
  content: "";
  background: #8ebae7;
}
.header__container
{
  display: flex;
  flex-flow: column nowrap;
  max-width: 1080px;
  flex-basis: 1080px;
  margin: 0 auto;
  background: linear-gradient(45deg, rgb(0 0 0 / 0%) 0%, 
                                           rgb(142 186 231 / 2%) 30%,
                                           rgb(142 186 231 / 20%) 40%,
                                           rgb(142 186 231 / 85%) 50%,
                                           rgb(142 186 231 / 100%) 100%) no-repeat,
                    url(../images/header__background_elem.png?timestamp=202501241130) repeat right -2px top -6px,
                    linear-gradient(90deg, rgb(182 209 238 / 100%) 0%, #97bfe7 50%,  rgb(142 186 231 / 100%) 100%) no-repeat
                    ;
}
.header__inner
{
  position: relative;
}
.gd-wrap-center
{
  display: flex;
  flex-flow: column nowrap;
  box-sizing: border-box;
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 58px;
}
.osu-70-logo-container
{
  align-self: start;
  margin-top: 20px;
}
a.link-osu-70-logo
{
  display: inline-block;
  width: 335px;
  height: 200px;
  margin: 0;
  background-image: url(../images/header__logo.png?timestamp=202501241130);
  background-repeat: no-repeat;
  background-size: 335px;
}

.museum-osu-virt-tour-container
{
  position: absolute;
  top: 40px;
  right: 100px;
}
a.museum-osu-virt-tour-logo
{
  display: inline-block;
  width: 74px;
  height: 64px;
  margin: 0;
  background-image: url(../images/museum-osu-virt-tour__icon.png?timestamp=202501241132);
  background-repeat: no-repeat;
  background-size: contain;
}

/* Menu */
.main-menu__shadow
{
  display: none;
}
.main-menu__container
{
  padding: 4px 0 6px 0;
}
.main-menu__hamburger-button
{
  display: none;
}
.main-menu__inner
{
  display: flex;
  flex-flow: column nowrap;
  box-sizing: border-box;
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 14px;
}
.main-menu
{
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  flex-direction: row;
  margin: 0;
  padding: 0;
}
.main-menu__item
{
  border: 2px solid #004b9c;
  margin-left: 16px;
  margin-right: 16px;
  margin-bottom: 32px;
  transition: all .5s;
  text-wrap: nowrap;
}
.main-menu__item.current,
.main-menu__item:hover
{
  border-color: #fff;
}
.main-menu__item.external :before
{
  display: inline-block;
  content: "";
  width: 10px;
  height: 10px;
  margin-right: 5px;
  vertical-align: middle;
  background: url(../images/arrow-white.png) no-repeat;
}
.main-menu__item.current.external :before,
.main-menu__item.external:hover :before
{
  background: url(../images/arrow-blue.png) no-repeat;
}
.main-menu__item:first-child
{
  margin-left: 0;
}
.main-menu__item:last-child
{
  margin-right: 0;
}
.main-menu__item a
{
  display: block;
  background-color:rgba(255, 255, 255, 0);
  color: #004b9c;
  padding: 8px 15px;
  font-weight: bold;
  transition: all .5s;
}
.main-menu__item.external a
{

}
.main-menu__item.current a
{
  background-color: #fff;
  color: #004b9c;
}
.main-menu__item a:hover,
.main-menu__item:hover a
{
  background-color: #fff;
  color: #004b9c;
}

@media(max-width: 720px)
{
  .main-menu__shadow.main-menu__shadow_set
  {
    display: block;
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: rgba(176, 208, 252, .33);
    z-index: 999;
  }
  .gd-wrap-center
  {
    padding: 0 21px;
  }
  .header__container
  {
    width: 250px;
    height: 233px;
    background: url(../images/header__background_elem.png?timestamp=202501241130) repeat right 23px top 17px,
                linear-gradient(90deg, rgb(182 209 238 / 100%) 0%, #97bfe7 50%,  rgb(142 186 231 / 100%) 100%) no-repeat;
    background-size: 96px, contain;
  }
  .osu-70-logo-container
  {
    margin: 66px 0 25px 0;
  }
  a.link-osu-70-logo
  {
    width: 250px;
    height: 145px;
    background-size: 250px;
  }
  .museum-osu-virt-tour-container
  {
    top: 38px;
    right: 30px;
  }
  .main-menu__container
  {
    position: absolute;
    padding: 0 0 40px 0;
    z-index: 1000;
  }
  .main-menu__container.main-menu__container_checked
  {
    position: fixed;
    width: auto;
    min-width: 300px;
    max-width: calc(100% - 100px);
    height: 100%;
    background-color: #fff;
    z-index: 1001;
    overflow-y: auto;
  }

  .main-menu__hamburger-button
  {
    display: block;
    margin-top: 24px;
    margin-left: 21px;
    background-color: transparent;
    font-size: 16pt;
    font-weight: bold;
    color: #004b9c;
  }
  .main-menu__container:not(.main-menu__container_checked) .main-menu__hamburger-button
  {
    background: transparent url(../images/hamburger_closed.png) no-repeat;
    width: 33px;
    height: 21px;
  }
  .main-menu__container.main-menu__container_checked .main-menu__hamburger-button
  {
    background: transparent url(../images/hamburger_opened.png) no-repeat;
    width: 22px;
    height: 23px;
  }
  .main-menu__container:not(.main-menu__container_checked) .main-menu__inner
  {
    display: none;
  }
  .main-menu__container.main-menu__container_checked .main-menu__inner
  {
    width: auto;
    height: auto;
    padding: 0;
    margin: 65px 21px 0 21px;
    overflow-y: auto;
    z-index: 1002;
  }
  /*.main-menu__container.main-menu__container_checked .main-menu__inner:after
  {
    content: "";
    display: block;
    width: 75px;
    height: 143px;
    background: transparent url(../images/header__logo_mini.png) no-repeat;
    margin: 35px 0 35px 0;
  }*/
  .main-menu
  {
    flex-direction: column;
  }
  .main-menu__item
  {
    width: auto;
    margin: 7px 0;
    border: none;
    border-bottom: 1px solid #004b9c;
  }
  .main-menu__item:first-child
  {
    margin-top: 0;
  }
  .main-menu__item:last-child
  {
    margin-bottom: 0;
  }
  .main-menu__item a
  {
    padding: 5px 0;
    font-size: 20pt;
  }
  .main-menu__item:hover,
  .main-menu__item.current
  {
    border: none;
    border-bottom: 1px solid #004b9c;
    background-color: #e6eff8;
  }
  .main-menu__item.current a
  {
    background-color: transparent;
    color: #004b9c;
  }
  .main-menu__item a:hover,
  .main-menu__item:hover a
  {
    background-color: transparent;
    color: #004b9c;;
  }
}

/* Main */
main
{
}
.page-content
{
  padding: 34px 0 58px;
}
img
{
  border: none;
  margin: 0 10px 2px 10px;
}

/* Footer */
footer
{
  height: 35px;
  background: linear-gradient(90deg, #8fbae7 0%,  #b5cfea 100%);
  padding: 10px 30px;
}
footer p
{
  margin: 0;
  font-size: 8pt;
  color: #004b9c;
  text-align: left;
  line-height: 3.5em;
}
footer a
{
  color: #004b9c;
  text-decoration: underline;
}
#add
{
  float: right;
  margin: 10px 0 0 20px;
  text-align: right;
}
#add ul
{
  list-style: none;
}
#add li
{
  line-height: 1.5;
}
table
{
  border-collapse: collapse;
}
p
{
  margin: 6pt 0 12pt 0;
  text-align: justify;
  font-size: 10.5pt;
  font-weight: normal;
  line-height: 15pt;
}
p.who
{
  text-align: right;
  font-style: italic;
  padding: 15px 0 45px;
  background: url(../images/stars_.gif) 0 90% repeat-x;
}
p.who.no
{
  background: none;
  z-index: 12;
  height: 0;
}
a
{
  text-decoration: none;
  color: #1878A0;
}
h1, h2
{
  margin: 0;
  line-height: 26pt;
  font-size: 20pt;
  font-weight: bold;
  color: #004b9c;
  text-align: left;
}   
h2
{
  font-size: 16pt;
  line-height: 24pt;
  margin: 11px 0;
}
#border td, th, #noborder td
{
  text-align: left;
  padding: 5px;
  font: 9pt verdana;
} 
#border td, th
{
  border: 1px solid #CCCCCC;
}
#border th
{ font-weight: bold; 
  text-align: center;
}
div.photo
{
  display: inline-block;
  text-align: center;
  margin: 7px 0 0 0;
}
div.photo img
{
  width: 100%;
  box-sizing: border-box;
  margin: 0;
}
div.photo p
{
  font-style: italic;
  text-align: center;
  margin: 4.5pt 0 9pt 0;
}
div.photo.width-500px,
div.photo.width-500px img
{
  width: 500px;
}
div.photo.width-400px,
div.photo.width-400px img
{
  width: 400px;
}
div.photo.width-80p,
div.photo.width-80p img
{
  width: 80%;
}
@media(max-width: 720px)
{
  div.photo.width-500px,
  div.photo.width-400px,
  div.photo.width-500px img,
  div.photo.width-400px img
  {
    width: 100%;
  }
  div.photo.width-80p, 
  div.photo.width-80p img
  {
    width: 100%;
  }
}
.photo-block
{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 100%;
  margin: 23px 0 2px 0;
}
.photo-block__list
{
  display: flex;
  justify-content: center;
  position: relative;
  width: fit-content;
}
.photo-block > p
{
  flex-basis: 100%;
  text-align: center;
  font-style: italic;
  margin: 6pt 0 9.5pt 0;
}
.photo-block__item
{
  position: relative;
  box-sizing: border-box;
  margin-left: 20px;
  margin-right: 20px;
}
.photo-block__item:first-child
{
  margin-left: 0;
}
.photo-block__item:last-child
{
  margin-right: 0;
}
.photo-block__item img
{
  max-width: 100%;
  max-height: 100%;
  margin: 0;
}
.photo-block__item p
{
  text-align: center;
  font-style: italic;
  margin: 4.5pt 0 9pt 0;
}
.photo-block__list.height-auto .photo-block__item img
{
  max-height: none;
}
.photo-block__list.height-300px .photo-block__item img
{
  max-height: 300px;
}
.photo-block__list.height-400px .photo-block__item img
{
  max-height: 400px;
}
.photo-block__item.width-100p
{
  flex-basis: 100%;
}
.img-border img
{
  border: 1px solid #dfdfdf;
}
@media(max-width: 720px)
{
  .photo-block__list
  {
    flex-direction: column;
  }
  .photo-block__item
  {
    margin: 20px 0;
  }
  .photo-block__item:first-child
  {
    margin: 0 0 20px 0;
  }
  .photo-block__item:last-child
  {
    margin: 20px 0 0 0;
  }
  /*.photo-block__list.height-300px .photo-block__item img
  {
    max-height: initial;
  }
  .photo-block__list.height-400px .photo-block__item img
  {
    max-height: initial;
  }*/
}
ul
{
  list-style: disc;
  padding-left: 1.5em;
}
ul li
{
  font-size: 10.5pt;
  line-height: 1.5;
  text-align: left;
}

/* Уведомление об использовании метрических программ */
.metric-program-notification__wrapper
{
  display: none;
  width: 100%;
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 1000;
  background-color: rgba(0, 88, 169, .94);
  color: #fff;
}
.metric-program-notification__wrapper_show
{
  display: block;
}
.metric-program-notification__form
{
  display: flex;
  position: relative;
  min-width: 576px;
  width: 60%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 30px;
  box-sizing: border-box;
}
@media screen and (max-width: 1400px)
{
  .metric-program-notification__form
  {
    width: 75%;
  }
}
@media screen and (max-width: 1100px)
{
  .metric-program-notification__form
  {
    width: 100%;
  }
}
@media screen and (max-width: 720px)
{
  .metric-program-notification__form
  {
    min-width: auto;
    flex-direction: column;
  }
  .metric-program-notification__content
  {
    margin-bottom: 23px;
  }
}
.metric-program-notification__content
{
  line-height: 16pt;
  padding-right: 30px;
}
.metric-program-notification__content p
{
  color: #fff;
}
.metric-program-notification__button-close
{
  display: block;
  position: absolute;
  width: 30px;
  height: 30px;
  top: 10px;
  right: 10px;
  padding: 0;
  border: none;
  color: #fff;
  cursor: pointer;
  /*background-color: #136ca9;*/
  background-color: transparent;
  font-size: 30px;
  line-height: 30px;
  transition: background-color .5s ease-out;
  z-index: 1;
}
.metric-program-notification__button-close div
{
  width: 100%;
  height: 100%;
  position: relative;
}
/*.metric-program-notification__button-close div:after
{
  display: inline-block;
  content: "\00d7";
  font-size: 30px;
  line-height: 22px;
  position: absolute;
  left: 3px;
}*/
.metric-program-notification__button-close div
{
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 100%;
}
.metric-program-notification__button-close div:before,
.metric-program-notification__button-close div:after
{
  position: absolute;
  content: ' ';
  height: 25px;
  width: 2px;
  top: 3px;
  background-color: #fff;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)
{
  .metric-program-notification__button-close div
  {
    margin-left: -2px;
  }
}
.metric-program-notification__button-close div:before
{
  transform: rotate(45deg);
}
.metric-program-notification__button-close div:after
{
  transform: rotate(-45deg);
}
.metric-program-notification__button-close:hover
{
  background-color: #2782c1;
}
.metric-program-notification__button-accept
{
  min-width: 135px;
  height: 100%;
  align-self: center;
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff;
  padding: 5px 25px;
  font-size: 105%;
  cursor: pointer;
  background-color: #58b2de;
  transition: background-color .5s ease-out;
}
.metric-program-notification__button-accept:hover
{
  background-color: #2782c1;
}