* {
  box-sizing: border-box;
}

body {
  font-size: 16px;
  overflow-x: hidden;
}

input, textarea, th, td {
  font-size: 16px;
}

#outer {
  padding-top: 0;
}

#top-shadow {
  display: none;
}

#tree {
  display: none;
}

#outer2 {
  background: none;
}

#wrapper {
  width: 100%;
  border-top: none;
}

#top {
  display: none;
}

#news-block {
  margin: 0;
  padding-top: 1rem;
}

.news-column,
.events-column,
#sidemenu {
  float: none;
  width: 100%;
  margin-left: 0;
  padding: 0 15px 2rem;
}

#news-block h3 {
  font-size: 18px;
}

#news-block .newsitem,
#news-block .event {
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid #ccc;
}

#news-block .newsitem:last-of-type,
#news-block .event:last-of-type {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}

#news-block .newsitem .image,
#news-block .event .image,
#news-block .event p {
  display: block;
}

#news-block a {
  font-size: 16px;
}

#news-block dt {
  font-size: 14px;
}

#news-block dd {
  font-size: 16px;
  margin-bottom: 1rem;
}

#news-block img {
  display: block;
  margin: 0 auto 1rem;
}

#news-wrapper {
  width: 100%;
  height: auto;
  margin-top: 0;
}

#news-block {
  width: 100%;
  background: none;
  display: flex;
  flex-direction: column-reverse;
}

#news-block li {
  float: none;
  position: static;
  width: 100%;
  padding-left: 15px;
  padding-right: 15px;
  margin-left: 0;
  height: auto;
}

.newsimage-block {
  position: relative;
  left: 0;
  top: 0;
  margin-left: auto;
  margin-right: auto;
}

.news-date {
  font-size: 14px;
  line-height: 1.4;
}

#sidemenu {
  text-align: center;
}

#sidemenu a {
  margin-left: auto;
  margin-right: auto;
}

#nova ul {
  padding: 0 15px;
}

#nova li {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  float: none;
  margin: 0;
  width: 100%;
}

#nova a {
  font-size: 18px;
}

.nova-book {
  float: none;
  margin-right: 2rem;
}

.nova-info {
  float: none;
  width: auto;
  margin: 0;
}

.nova-anno {
  font-size: 16px;
  margin: 1rem 0 0;
}

#info-block {
  height: auto;
}

#tour {
  float: none;
  margin: 0 auto;
  padding: 10px 0 0;
}

#tour h3 {
  font-size: 18px;
}

#calendar {
  float: none;
  width: 100%;
  margin: 0;
  padding: 0 15px 2rem;
}

#calendar h3 {
  font-size: 18px;
}

#calendar h3 a {
  font-size: 16px;
}

#calendar li {
  float: none;
  width: 260px;
  margin: 0 auto 1rem;
}

#calendar ul {
  height: auto;
}

#calendar h4 {
  font-size: 18px;
}

#calendar p {
  font-size: 16px;
}

#banners img {
  max-width: 45%;
}

#footer {
  position: static;
  height: auto;
}

#copyrights {
  position: static;
  font-size: 16px;
  width: 100%;
  padding: 1rem 15px;
  background-color: white;
}

#bottom-menu {
  position: static;
  font-size: 16px;
  width: 100%;
  padding: 0 15px;
  background-color: white;
  line-height: 1.4;
}

#developers {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
  position: static;
  font-size: 16px;
  width: 100%;
  padding: 1rem 15px;
  background-color: white;
}

#counters {
  margin-top: 0;
}

#footer .social {
  position: static;
  width: 100%;
  text-align: center;
  padding-bottom: 1rem;
  background-color: white;
}


.mobile-head {
  display: block;
  position: relative;
  height: 50px;
  background-color: white;
  border-bottom: 3px solid #ff0000;
}

.mobile-head .logo {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 50px;
  line-height: 50px;
  font-size: 18px;
  padding-left: 8px;
  text-decoration: none;
}

.mobile-head .logo .biblio {
  color: #ff834c;
}

.mobile-head .logo .sosna {
  color: #ff130e;
}

.mobile-head .icon {
  display: block;
  position: absolute;
  top: 0;
  width: 50px;
  height: 50px;
  background-position: center;
  background-repeat: no-repeat;
}

.mobile-head .hamburger {
  right: 0;
  background-image: url(../svgs/menu.svg);
}

.mobile-head .ordering {
  right: 50px;
  background-image: url(../svgs/cart-arrow-down.svg);
  background-size: auto 24px;
}

.mobile-head .ordering span {
  display: block;
  position: absolute;
  left: 13px;
  top: 13px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 1px solid rgba(255, 19, 14, 0.5);
  background-color: rgba(255, 255, 255, 0.75);
  line-height: 24px;
  text-align: center;
  color: #ff130e;
}

.mobile-head .ordering.empty span {
  display: none;
}

.mobile-head .catalog {
  right: 100px;
  background-image: url(../svgs/book.svg);
  background-size: auto 24px;
}

.mobile-menu {
  display: block;
  position: absolute;
  background-color: white;
  left: 100%;
  top: 51px;
  margin: 0;
  padding: 0;
  width: 264px;
  list-style: none;
  z-index: 6000;
  transition: transform 0.5s;
}

.mobile-on .mobile-menu {
  transform: translateX(-270px);
}

.mobile-menu li {
  margin-top: -1px;
  border: 1px solid #0573b9;
  overflow: hidden;
  z-index: 6001;
}

.mobile-menu li a,
.mobile-menu li b {
  display: block;
  padding: 20px 6px;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  font-weight: 700;
  z-index: 6002;
}

.mobile-menu li a {
  color: #0573b9;
}

.mobile-menu li.special a {
  background: url(../images/eye.png) no-repeat 20px center;
  padding-left: 60px;
}

.mobile-menu li a span,
.mobile-menu li b span {
  display: inline-block;
  line-height: 20px;
  z-index: 6003;
}

.mobile-menu li.sub {
  display: none;
  background-color: rgba(255, 131, 76, 0.1);
  border-color: #ff834c;
}

.mobile-menu li.sub a {
  color: #ff834c;
}

.mobile-news-on .mobile-news-item,
.mobile-events-on .mobile-events-item,
.mobile-about-on .mobile-about-item,
.mobile-services-on .mobile-services-item,
.mobile-resources-on .mobile-resources-item,
.mobile-rayon-on .mobile-rayon-item,
.mobile-competition-on .mobile-competition-item {
  display: block !important;
}

#sidebar-menu {
  display: none;
}

#breadcrumbs {
  display: none;
}

#content {
  float: none;
  width: 100%;
  margin: 0;
  padding: 1rem 15px;
}

/*
.mobile-about-on #content {
  min-height: 1160px;
}

.mobile-services-on #content {
  min-height: 1060px;
}

.mobile-resources-on #content {
  min-height: 1280px;
}

.mobile-rayon-on #content {
  min-height: 2000px;
}
*/

#content h1,
#content h2 {
  font-size: 22px;
  padding-bottom: 1rem;
}

.competition-block {
  display: flex;
  flex-direction: column-reverse;
  border-bottom: 1px solid #ccc;
  margin-bottom: 1.5rem;
}

.competition-info {
  float: none;
  width: auto;
}

.competition-info h3 {
  font-size: 18px;
}

.competition-date {
  font-size: 14px;
}

.competition-image {
  float: none;
  width: auto;
  margin-left: 0;
  margin-right: 0;
}

.article {
  font-size: 16px;
  line-height: 1.4;
  margin: 0;
}

.article ul {
  padding-left: 1rem;
}

.article img {
  width: 100%;
  max-width: 100%;
  height: auto !important;
}

.article ymaps,
.article table {
  max-width: 100%;
}

.article iframe {
  width: 100%;
  height: 49.4vw;
}
.article iframe.full-height {
  height: 100vh;
}

#employees dt {
  margin: 0 0 1rem;
}

#employees dd {
  font-size: 16px;
}

.contact-list {
  font-size: 16px;
}

#document-list {
  padding-left: 1rem;
  font-size: 16px;
}

#document-list li {
  margin: 0 0 1rem;
}

.competition-awards li {
  width: 100%;
  margin-right: 0;
  margin-bottom: 1rem;
}

.award-image {
  width: 100%;
  text-align: center;
}

#press-list dt {
  font-size: 18px;
  margin: 0 0 1rem;
}

#press-list dd {
  margin: 0 0 1rem;
  border-bottom: 1px solid #ccc;
  font-size: 16px;
}

#press-list ul {
  list-style: none;
  padding-left: 0;
}

#feedbacks {
  display: flex;
  flex-direction: column;
}

#feedback-list {
  float: none;
  width: 100%;
  margin: 0;
  padding: 1rem 15px;
}

#catalog-search {
  position: static;
  height: auto;
  width: 100%;
  margin: 0;
}

#catalog-search h1 {
  position: static;
  width: 100%;
  height: auto;
  padding: 1rem 15px;
  background-color: white;
}

#catalog-filter {
  position: static;
  width: 100%;
  height: auto;
  padding: 0;
  background: none;
}

#catalog-filter-right {
  padding: 0;
  height: auto;
  background: none;
}

#catalog-filter-content {
  height: auto;
  background: none;
}

#catalog-filter form {
  width: 100%;
  height: auto;
  border: none;
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 1rem;
  background-color: #f3f3f3;
}

#catalog-filter ul {
  margin-top: 0;
}

#catalog-filter li {
  height: auto;
  margin-bottom: 14px;
}

.filter-data {
  height: auto;
}

.filter-data label {
  float: none;
  height: 29px !important;
  line-height: 29px !important;
  margin: 0;
  text-align: left;
}

.filter-data label br {
  display: none;
}

.filter-data input {
  float: none;
  height: 40px;
  line-height: 40px;
  margin: 0 0 14px;
  padding-left: 20px;
  padding-right: 20px;
}

#id_author,
#id_title,
#id_year {
  width: 100%;
}

.filter-submit {
  position: static;
}

.filter-submit p {
  position: static;
  width: 100%;
  height: auto;
  line-height: 1.4;
  margin-bottom: 1rem;
}

.filter-submit input {
  position: static;
  height: 40px;
  width: 50%;
  background-color: #fe4b4b;
}

#catalog-table {
  display: none;
}

.catalog-list {
  display: block;
}

.catalog-list .catalog-item {
  padding: 1rem 15px;
  background-color: #f3f3f3;
}

.catalog-list .catalog-item.alt {
  background-color: #fff;
}

.catalog-list .author {
  font-size: 18px;
  margin-bottom: 1rem;
}

.catalog-list a {
  color: #0573b9;
}

.book-additional {
  display: block;
  font-size: 16px;
  margin-top: 1rem;
}

.catalog-list .year {
  margin-top: 1rem;
}

.catalog-list .link {
  margin-top: 1rem;
}

.catalog-list .link a {
  color: #fe4b4b;
}

#filter-paginator {
  margin-left: 0;
  margin-right: 0;
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 1.5rem;
  padding-top: 2rem;
}

.paginator {
  display: flex;
  justify-content: space-between;
  position: static;
  margin: 0;
  height: auto;
}

.paginator p,
.paginator label,
.paginator .page-number,
.paginator .page-submit {
  position: static;
}

.paginator p,
.paginator label,
.paginator .page-submit {
  height: auto;
}

#tour-list {
  display: none;
}

.mobi-tour-list {
  display: block;
}

.mobi-tour-list .photo {
  margin-bottom: 1rem;
}

.mobi-tour-list img {
  max-width: 100%;
}

.mobi-tour-list h3 {
  padding: 0;
  margin: 24px 0;
  font: normal 19px/24px Georgia, 'Times New Roman', Times, serif;
  color: #000;
}

.mobi-tour-list h3 a {
  color: #0066cc;
  font-size: 16px;
}

ul.resource-list {
  padding-left: 1rem;
}

ul.resource-list li {
  margin-bottom: 1rem;
}

ul.resource-list a {
  color: #0066cc;
}

.publisher {
  display: flex;
  flex-direction: column-reverse;
}

.publisher .image {
  float: none;
  width: 100%;
  height: auto;
  text-align: center;
}

.publisher .info {
  float: none;
  width: 100%;
}

.publisher h3 {
  font-size: 18px;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

#clubs {
  margin: 0;
  padding: 1rem 15px;
}

#clubs h1 {
  margin: 0 0 1rem;
}

#clubs li {
  float: none;
  padding: 0 0 1rem;
  margin: 0 0 1rem;
  width: 100%;
  border-right: none;
  border-bottom: 1px solid #ccc;
}

.mobi-club-block {
  display: flex;
  flex-direction: column-reverse;
}

.club-info {
  float: none;
}

#clubs .club-info {
  width: 100%;
}

.club-info p {
  font-size: 16px;
}

.club-banner {
  float: none;
  width: 100%;
  margin-bottom: 1rem;
}

#clubs .club-desc {
  float: none;
  width: 100%;
}

.month-block {
  float: none;
  margin: 0 auto;
}

#club-details .club-info {
  width: 100%;
}

#guestbook-list {
  float: none;
  width: 100%;
  margin: 0;
  padding: 1rem 15px;
}

#form-block {
  float: none;
  width: 100%;
  margin: 0;
}

#form-wrapper {
  width: 100%;
}

#form-left {
  padding-left: 0;
}

#form-right {
  padding-right: 0;
}

#form-block form {
  padding: 1rem 15px;
  background: white;
}

#form-bottom {
  height: 0;
}

.input-row label {
  float: none;
  width: 100%;
  text-align: left;
}

.input-row input {
  margin-left: 0;
  height: 40px;
  line-height: 40px;
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
}

.textarea-row textarea,
.textarea-row label {
  left: 0;
  width: 100%;
  height: 100%;
}

.captcha-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  position: static;
  height: auto;
}

.captcha-row img {
  position: static;
  width: auto;
  height: auto;
}

.captcha-row .captcha {
  position: static;
  width: 50%;
  height: 40px;
  line-height: 40px;
  padding-left: 20px;
  padding-right: 20px;
}

.captcha-row .submit {
  position: static;
  width: 50%;
  height: 40px;
  line-height: 40px;
  background-color: #fe4b4b;
  margin-top: 0.75rem;
}

#prolong-form,
#order-form {
  display: none;
}

.mobi-form {
  display: block;
  margin: 1.5rem 0;
}

.mobi-form .form-row {
  margin-bottom: 14px;
}

.mobi-form .label {
  line-height: 29px;
}

.mobi-form .label label {
  color: #666666;
}

.mobi-form .address {
  display: none;
}

.mobi-form em {
  color: #993333;
  font-size: 24px;
  vertical-align: middle;
}

.mobi-form input {
  margin-left: 0;
  height: 40px;
  line-height: 40px;
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
  border: 1px solid #ccc;
}

.mobi-form textarea {
  width: 100%;
}

.mobi-form .hint {
  margin-bottom: 14px;
}

.mobi-form button {
  height: 40px;
  width: 50%;
  font-size: 16px;
  text-align: center;
  color: #fff;
  background: #fe4b4b url(../images/submit.png) repeat-x;
  border: none;
}

.notificator {
  top: 0;
  right: 0;
  width: 100%;
}

#catalog-menu {
  display: none;
}

#book-list {
  margin: 0;
  padding: 1rem 15px;
}

#book-list li {
  float: none;
  width: 100%;
  margin-right: 0;
  display: flex;
  flex-direction: row-reverse;
}

.book-info {
  float: none;
  width: auto;
}

.book-info a {
  font-size: 18px;
}

.book-author,
.book-anno {
  font-size: 16px;
}

.book-author {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.book-book {
  float: none;
  margin-right: 30px;
}

.structure-desktop {
  display: none;
}

.structure-mobile {
  display: block;
}

.structure-mobile a {
	display: block;
	height: 54px;
	line-height: 54px;
	border: 1px solid #666666;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
  padding: 0 6px;
  margin-bottom: 1rem;
}

.structure-mobile a.centcell {
	background: #03af4d;
}

.structure-mobile a.deptcell {
	background: #01b0f1;
}

.structure-mobile a.ruralcell {
	background: #91d250;
}

.structure-mobile span {
	display: inline-block;
	line-height: 1;
	text-align: center;
	vertical-align: middle;
	width: 100%;
	color: #fff;
}

.department {
  height: auto;
}

.department-image {
  float: none;
  width: 100%;
  margin-bottom: 1rem;
}

.department-image img {
  border: none;
}

.department-info {
  float: none;
  width: 100%;
  margin-left: 0;
}

.department-info p {
  font-size: 16px;
}

/*
 * suppress-cookie
 */

.suppress-cookie .w {
  width: auto;
  padding-left: 15px;
  padding-right: 15px;
  flex-direction: column;
  align-items: center;
}

.suppress-cookie .close {
  margin-left: 0;
}
