@media (max-width: 1200px) {

.logo__icon { 
  margin: 0 10px 0 0;
  width: 80px;
  }

.logo__text span { 
  font-size: 10px;
  }

.logo__text strong { 
  font-size: 10px;
  }

.logo__text small { 
  font-size: 10px;
  }

.header__links { 
  margin: 0 15px 0 0;
  }

.header__links li { 
  font-size: 10px;
  }

.header__address-wrap { 
  margin: 0 10px 0 0;
  padding: 0 10px 0 20px;
  }

.header__address-wrap:before { 
  width: 16px;
  height: 16px;
  }

.header__address { 
  font-size: 12px;
  line-height: 18px;
  }

.header__link { 
  font-size: 10px;
  }

.header__phone span { 
  font-size: 10px;
  }

.header__phone { 
  font-size: 12px;
  line-height: 18px;
  }

.header__time { 
  padding: 0 0 0 20px;
  }

.header__time:before { 
  width: 16px;
  height: 16px;
  }

.header__time span { 
  font-size: 10px;
  }

.header__time small { 
  font-size: 10px;
  }

.main-navi > ul > li { 
  padding: 12px 0;
  font-size: 10px;
  }

.main-navi > ul > .main-navi_down-arrow { 
  padding-right: 14px;
  }

.main-navi_down-arrow:after { 
  margin: -4px 0 0;
  width: 8px;
  height: 8px;
  }

.main-navi ul ul { 
  top: 44px;
  }

.main-navi ul ul li { 
  padding: 8px 10px;
  font-size: 10px;
  line-height: 16px;
  }

.info-col { 
  display: flex;
  flex-direction: column;
  gap: 25px 0;
  }

.events { 
  grid-template-columns: repeat(2, 1fr);
  }

.events_small-col .events-item:last-child { 
  display: none;
  }

.contacts-col { 
  display: block;
  }

.contacts-col__description { 
  margin: 0 0 30px;
  }

.contacts-col__description dl { 
  display: block;
  }

.contacts-col__description dt { 
  margin: 0 0 30px;
  }

.map iframe { 
  height: 400px;
  }

.social-list a { 
  padding: 0 25px;
  min-width: auto;
  font-size: 12px;
  line-height: 50px;
  }

.gallery { 
  grid-template-columns: repeat(2, 1fr);
  }

.table th { 
  padding: 15px;
  font-size: 14px;
  }

.table td { 
  padding: 15px;
  font-size: 12px;
  }

.shrines { 
  gap: 15px;
  }

.shrines-item { 
  padding: 15px;
  }

.shrines-item__photo { 
  margin: 0 0 15px;
  }

.shrines-item__title { 
  font-size: 16px;
  line-height: 22px;
  }

.team { 
  grid-template-columns: repeat(2, 1fr);
  }

.gallery__item { 
  height: 250px;
  }

.library_three-col { 
  grid-template-columns: repeat(1, 1fr);
  }

.footer__title { 
  font-size: 16px;
  line-height: normal;
  }

.footer__navi li { 
  font-size: 12px;
  }

.footer__info li { 
  font-size: 12px;
  }

.social li { 
  margin: 0 10px 0 0;
  padding: 0 11px 0 0;
  }

.copy { 
  font-size: 10px;
  }

.footer__links li { 
  margin: 0 10px 0 0;
  padding: 0 10px 0 0;
  font-size: 10px;
  }

}

@media (max-width: 767px) {

.header { 
  position: revert;
  border-bottom: 1px solid #e5ecdd;
  z-index: 30;
  }

.header__right-col { 
  display: none;
  }

.header__mob-btn { 
  display: block;
  }

.header__bottom-panel { 
  position: absolute;
  display: none;
  width: 100%;
  height: 360px;
  top: 99px;
  left: 0;
  z-index: 29;
  overflow-y: scroll;
  }

.header__bottom-panel.open {  
  display: block;
  }

.main-navi > ul { 
  display: block; 
  }

.main-navi > ul > li { 
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  }

.main-navi > ul > li:first-child { 
  border-top: 0;
  }

.main-navi > ul > .main-navi_down-arrow { 
  padding-right: 0;
  }

.main-navi > ul a { 
  position: relative;
  display: block;
  z-index: 5;
  }

.main-navi_down-arrow:after { 
  margin: 0;
  top: 18px;
  }

.main-navi > ul > .main-navi_down-arrow:hover:after { 
  transform: rotate(0deg);
  }

.main-navi > ul > .main-navi_down-arrow.open:after { 
  transform: rotate(-180deg);
  }

.main-navi ul ul { 
  position: static;
  display: none;
  margin: 10px 0 0;
  width: 100%;
  opacity: 1;
  visibility: visible;
  }

.main-navi ul .main-navi_down-arrow.open ul { 
  display: block;
  }

.title { 
  font-size: 30px;
  }

.gallery { 
  gap: 15px;
  }

.gallery__item a:after { 
  width: 20px;
  height: 20px;
  }

.small-title { 
  font-size: 20px;
  line-height: 26px;
  }

.shrines { 
  grid-template-columns: repeat(2, 1fr);
  }

.team-info { 
  display: block;
  }

.team-info__photo {
  margin: 0 auto 30px;
  max-width: 360px; 
  width: 100%;
  }

.team-info__title { 
  font-size: 22px;
  line-height: 30px;
  }

.team-info p { 
  margin: 0 0 10px;
  }

.footer__top-panel { 
  padding: 40px 0;
  }

.footer__col { 
  display: grid;
  gap: 25px;
  grid-template-columns: repeat(2, 1fr);
  }

.footer__in { 
  flex-direction: column;
  justify-content: center;
  gap: 15px;
  padding: 20px 0;
  }

}

@media (max-width: 680px) {

.section { 
  padding: 50px 0;
  }

.section_indent_sm { 
  padding-top: 30px;
  }

.news-item__panel span { 
  font-size: 10px;
  }

.news-item__content { 
  padding: 15px;
  }

.schedule p { 
  margin: 0 0 20px;
  }

.info { 
  grid-template-columns: repeat(1, 1fr);
  }

.services { 
  margin: 0 0 50px;
  }

.info__title { 
  font-size: 20px;
  }

.phones { 
  grid-template-columns: repeat(1, 1fr);
  margin: 0 0 50px;
  }

.info_indent-bt { 
  margin: 0 0 50px;
  }

.events { 
  gap: 15px;
  }

.events-item { 
  padding: 15px;
  }

.events-item__panel { 
  gap: 0 10px;
  }

.events-item__date { 
  padding: 0 10px;
  font-size: 10px;
  line-height: 30px;
  }

.events-item__name { 
  font-size: 10px;
  }

.events-item__title { 
  font-size: 18px;
  line-height: 22px;
  }
 
.events-item p { 
  font-size: 12px;
  line-height: 20px;
  }

.btn { 
  padding: 0 20px;
  font-size: 12px;
  line-height: 44px;
  }

.info-col { 
  margin: 0 0 50px;
  }

.tabs__nav li { 
  padding: 15px;
  font-size: 16px;
  }

.subtitle { 
  font-size: 16px;
  }

.services { 
  gap: 15px;
  margin: 0 0 30px;
  padding: 0;
  }

.services__title { 
  padding: 20px;
  font-size: 20px;
  }

.library { 
  gap: 15px;
  }

.library a { 
  padding: 20px;
  font-size: 16px;
  }

.photo { 
  margin: 0 0 30px;
  }

.list { 
  margin: 0 0 30px;
  }

.shrines-item__photo a:after { 
  width: 20px;
  height: 20px;
  }

.team { 
  gap: 15px;
  }

.team-item { 
  padding: 15px 15px 20px;
  }

.team__description span { 
  font-size: 20px;
  }

.team__description small { 
  font-size: 14px;
  }

.mov { 
  margin: 0 0 30px;
  }

.mov iframe { 
  height: 300px;
  }

#comp-k87dtudr { 
  width: 100%;
  overflow-x: scroll;
  }

.nKphmK { 
  width: 679px;
  height: 996px;
  }

.gallery__item { 
  height: 200px;
  }

.gallery_three-col .gallery__item { 
  height: 200px;
  }

}

@media (max-width: 600px) {

.title { 
  padding: 0 0 20px;
  font-size: 26px;
  line-height: 32px;
  }

.info-item { 
  padding: 20px;
  }

.contacts-col { 
  margin: 0 0 50px;
  padding: 0;
  }

.error-404__name { 
  margin: 0 0 30px;
  font-size: 100px;
  line-height: 100px;
  }

.gallery__title { 
  padding: 15px;
  font-size: 18px;
  line-height: 22px;
  }

.table-wrap { 
  overflow-x: scroll;
  }

.table th { 
  padding: 10px;
  font-size: 12px;
  }

.table td { 
  padding: 10px;
  font-size: 10px;
  line-height: 16px;
  }

.phones__item { 
  padding: 20px;
  }

.phones__title { 
  font-size: 18px;
  }

.phones__number { 
  font-size: 18px;
  }

}

@media (max-width: 480px) {

.info-item__description p { 
  font-size: 14px;
  }

.events { 
  grid-template-columns: repeat(1, 1fr);
  }

.events_small-col .events-item:last-child {
  display: block;
  }

.gallery {
  margin: 0 0 30px;
  }

.gallery_bt-none { 
  margin: 0;
  }

.library a { 
  font-size: 14px;
  }

.links-list a { 
  padding: 15px;
  font-size: 14px;
  }

.shrines-item__title { 
  font-size: 14px;
  }

.team__description span { 
  font-size: 16px;
  }

.team__description small { 
  font-size: 12px;
  }

}

@media (max-width: 410px) {

.section__top-panel { 
  display: block;
  }

.news-slider-wrap .section__top-panel { 
  display: flex;
  }

.date { 
  margin: 20px 0 0;
  }

.section__top-panel .btn { 
  display: none;
  }

.mob-btn-panel { 
  display: flex;
  }

.events{ 
  margin: 0 0 30px;
  }

.events_indent-none { 
  margin: 0;
  }

.news-slider-wrap { 
  padding: 20px;
  }

.schedule { 
  padding: 20px;
  }

.library { 
  grid-template-columns: repeat(1, 1fr);
  }

.small-title { 
  font-size: 18px;
  line-height: 24px;
  }

.footer__top-panel { 
  padding: 30px 0;
  }

.footer__navi li { 
  font-size: 11px;
  line-height: 18px;
  }

.footer__info li { 
  font-size: 11px;
  line-height: 18px;
  }

}

@media (max-width: 380px) {

.logo__icon { 
  margin: 0 5px 0 0;
  width: 50px;
  }

.logo__text strong { 
  font-size: 8px;
  }

.header__bottom-panel { 
  top: 77px;
  }

.services__title { 
  padding: 15px;
  font-size: 18px;
  }

.title { 
  font-size: 24px;
  line-height: 30px;
  }

.info-item__icon { 
  margin: 0 20px 0 0;
  }

.info-item__description p { 
  font-size: 12px;
  line-height: 20px;
  }

.team {
  grid-template-columns: repeat(1, 1fr);
  }

.phones__icon { 
  margin: 0 20px 0 0;
  }

.phones__title { 
  font-size: 16px;
  line-height: 18px;
  }

.phones__number { 
  font-size: 16px;
  }

.footer__col { 
  grid-template-columns: repeat(1, 1fr);
  }

.footer__info li { 
  font-size: 12px;
  line-height: 20px;
  }

.footer__links li { 
  margin: 0 7px 0 0;
  padding: 0 7px 0 0;
  font-size: 8px;
  }

}