:root {
  --theme: #507299;
  --alt: #343434;
}

body {
	overflow: auto;
	padding: 12px 0;
	margin: 0;
	font-family: Verdana,Geneva,sans-serif;
	font-size: 16px;
	background: linear-gradient(#f2fcfe, #eaeaea) !important;
        /* background: url(/sm.aspx?guid=57943) 5% 0 no-repeat; */
        /* background: url(/sm.aspx?guid=57923); */
}

@media screen and (max-width: 1200px) {
	body {
		padding: 0;
	}
}

a {
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

.wrapper {
	max-width: 1200px;
	margin: 0 auto;
}

.header {
	padding: 15px;
	background: var(--theme);
	color: #FFFFFF;
	font-size: 16px;
	text-align: center;
	margin: 10px;
}

.widget {
	background-color: #FFFFFF;
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.1);
	overflow: auto;
	margin-bottom: 15px;
}

#masthead {
	background: var(--theme);
        margin-top: 15px;
}

#header {
	background-color: #FFFFFF;
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.1);
	clear: both;
	overflow: auto;
}

@media screen and (max-width: 576px) {
	#header {
		text-align: center;
	}
}

#topnav {
	clear: both;
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.1);
	padding: 10px;
	background-color: #FFFFFF;
	margin-top: 15px;
}

#main {
	display: flex;
	border-bottom: none;
	margin-top: 15px;
}

@media screen and (max-width: 992px) {
	#main {
		display: block;
	}
}

#primary {
	width: calc(100% - 315px);
	overflow: auto;
	margin-bottom: 15px;
}

@media screen and (max-width: 992px) {
	#primary {
		width: 100%;
	}
}

.breadcrumb {
	padding: 15px 25px !important;
	box-shadow: 0 0 1px rgb(30 50 70 / 30%) !important;
	margin: 0 !important;
	background-color: #FFFFFF !important;
	border-radius: 0 !important;
}


#content {
	padding: 20px 25px 25px 25px;
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.1);
	background-color: #FFFFFF;
}

.article-title {
	font-size: 24px;
	margin-bottom: 20px;
	color: var(--theme);
}

#sidebar {
	width: 300px;
	overflow: auto;
	margin-left: 15px;
}

@media screen and (max-width: 992px) {
	#sidebar {
		width: 100%;
		margin-left: 0;
	}
}

#footer {
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.1);
	background: #FFF;
	padding: 15px;
	margin-bottom: 15px;
	overflow: auto;
}

#footer div {
	width: calc(25% - 15px);
	margin-right: 15px;
	float: left;
	overflow: auto;
}

#footer div:last-child {
	margin-right: 0;
	width: 25%;
}

@media screen and (max-width: 794px) {
	#footer div:nth-child(1) {
		width: calc(50% - 15px);
		margin-right: 15px;
	}
	#footer div:nth-child(2) {
		margin-right: 0;
		width: 50%;
	}
	#footer div:nth-child(3) {
		clear:both;
		width: calc(50% - 15px);
		margin-right: 15px;
		margin-top: 10px;
	}
	#footer div:nth-child(4) {
		margin-right: 0;
		width: 50%;
		margin-top: 10px;
	}
}

@media screen and (max-width: 576px) {
	#footer div:nth-child(1), #footer div:nth-child(2), #footer div:nth-child(3), #footer div:nth-child(4) {
		width: 100%;
		clear: both;
		margin: 10px 0 0 0;
	}
}

.download-container {
	display: grid;
	grid-template-columns: 35px 1fr;
	grid-template-rows: auto auto;
	grid-column-gap: 15px;
	grid-row-gap: 5px;
	padding: 10px 0;
}

.download-container .icon {
	grid-column-start: 1;
	grid-column-end: 2;
	grid-row-start: 1;
	grid-row-end: 3;
}

.download-container .icon i {
	width: 35px;
	height: 44.8px;
	content: "";
	display: block;
}

.download-container .icon i.pdf {
	background: no-repeat url("sm.aspx?guid=52573");
	background-size: cover;
}

.download-container .icon i.doc {
	background: no-repeat url("sm.aspx?guid=52583");
	background-size: cover;
}

.download-container .link a {
	font-size: 16px;
}

.download-container .size span {
	font-size: 14px;
	color: #666666;
}

.vertical-menu {
	padding: 0;
	margin: 10px;
}

.vertical-menu li {
	list-style-type: none;
}

.vertical-menu a {
	color: black;
	display: block;
	padding: 3px;
	text-decoration: none;
}

.vertical-menu a:hover {
	background-color: #ccc;
	text-decoration: none;
}

.vertical-menu a.active {
	background-color: #4CAF50;
	color: white;
}

.navbar a {
	color: #FFF !important;
}

.navbar a:hover {
	text-decoration: underline;
}

#navigation {
	float: left;
}

#navigation ul {
	margin: 0;
	padding: 0;
}

#navigation ul li {
	margin: 0;
	padding: 0;
	list-style-type: none;
	float: left;
}

#navigation ul li a {
	display: block;
	padding: 10px 15px;
	color: #fff;
}

#search {
	background: var(--theme);
	color: #fff;
	border-radius: 0;
}

#search:hover {
	background: var(--alt);
}

#banner {
	overflow: hidden;
}

.banners {
	margin-right: -15px;
}

.banners div {
	margin-right: 15px;
}

#bottom {
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.1);
	background: var(--alt);
	color: #FFF;
	padding: 15px;
	margin-top: 15px;
	font-size : 15px;
}

#bottom p {
	margin: 0;
	padding: 0;
}

#bottom a {
	color: #FFF;
}

#info {
	margin-bottom: 0;
}

#info h3 {
	margin: 0 0 5px 0;
}

#info ul {
	margin: 0;
	padding: 0;
}

#info ul li {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#info ul li a {
	color: black;
	padding: 3px;
	display: block;
}

#contact {
	margin-bottom: 0;
}

#contact h3 {
	margin: 0 0 5px 0;
}

#contact ul {
	margin: 0;
	padding: 0;
}

#contact ul li {
	margin: 0;
	list-style-type: none;
	padding: 3px;
}

#services {
	margin-bottom: 0;
}

#services h3 {
	margin: 0 0 5px 0;
}

#services ul {
	margin: 0;
	padding: 0;
}

#services ul li {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#services ul li a {
	color: black;
	padding: 3px;
	display: block;
}

#admin {
	margin-bottom: 0;
}

#admin h3 {
	margin: 0 0 5px 0;
}

#admin ul {
	margin: 0;
	padding: 0;
}

#admin ul li {
	margin: 0;
	list-style-type: none;
	padding: 3px;
}

#adx {
	padding: 0 15px;
}

#adx a {
	display: block;
	width: 100%;
}

#adx a:first-child {
	margin-right: 10px;
}

#adx a img {
	width: 100%;
	margin-bottom: 10px;
}

@media screen and (max-width: 992px) {
	#adx {
		padding: 0 15px;
	}
	#adx a {
		width: calc(50% - 5px);
		float: left;
	}
}

@media screen and (max-width: 576px) {
	#adx a {
		width: 100%;
	}
}

.ya-share2 {
	margin-top: 10px;
}

#calendar {
	width: 300px;
	padding: 0 15px;
	float: right;
        background: #d9e6f3;
}

@media screen and (max-width: 794px) {
	#calendar {
		display: none;
	}
}

#calendar table {
  width: 100%;
  line-height: 1.2em;
  font-size: 15px;
  text-align: center;
  margin-top: 10px;
}

#calendar table thead tr {
	line-height: 2;
}

#calendar table thead tr:last-child {
  font-size: small;
  color: rgb(85, 85, 85);
}

#calendar table thead tr:nth-child(1) td:nth-child(2) {
  color: rgb(50, 50, 50);
}

#calendar table thead tr:nth-child(1) td:nth-child(1):hover, #calendar table thead tr:nth-child(1) td:nth-child(3):hover {
  cursor: pointer;
}

#calendar table tbody td {
  color: rgb(44, 86, 122);
  padding: 2px;
}

#calendar table tbody td:nth-child(n+6), #calendar table .holiday {
  color: rgb(231, 140, 92);
}

#calendar table tbody td.today {
  background: rgb(220, 0, 0);
  color: #fff;
}

.masthead-left {
	width: calc(100% - 3.6em - 300px);
	float: left;
	padding: 25px;
}
@media (max-width: 768px) {
	.masthead-left {
		clear: both;
		padding: .8em;
		width: calc(100% - 1.6em);
	}
}
.masthead-left h1 {
	margin: 0;
	padding: 0;
}

.masthead-left img {
	float:left;
	width:125px;
	margin-right:30px;
	margin-top:10px;
}

@media screen and (max-width: 576px) {
	.masthead-left img {
		float: none;
		margin-right: 0;
	}
}

.masthead-left .mgiro {
	display: inline-block;
	color: #333333; 
	text-decoration: none;
	font-size: 14px;
	margin-top: 12px;
}
.masthead-left .iso {
	display: block;
	color: var(--theme);
	text-decoration: none;
	padding-top: 15px;
	font-size: 24px;
	text-transform: uppercase;
	line-height: 10px;
	margin-bottom: 20px;
}
@media (max-width: 1200px) {
	.masthead-left .iso {
		line-height: 1em;
	}
}

#slogan {
	clear: both;
	line-height: 18px;
	font-size: 14px;
	margin-top: 25px;
}

#slide img {
	width: 100%;
}


.excerpt {clear: both; border-bottom: dotted 2px #A4C8E2; padding: 0.5em 0.5em 1.5em; margin: 0 0 1em; overflow: hidden; }
.excerpt:last-child {border-bottom: none; }

.excerpt_preview {float:left; min-height: 100px;}
   .excerpt_preview img {width: 170px; height: auto; margin-right: 15px; }

.excerpt_content {margin-left: auto; margin-top: 0.5em;}
   .excerpt_content h3 {margin: 0; font-size: 1em; }
   .excerpt_content h2 {margin-bottom: 0.5em; font-size: 1.2em; }

.news .excerpt_content ul {list-style-type: square; padding-left: 2em;}

a.show-hide {display:block; clear: both; margin: 1em 0 1em;}

.show-hide, .read_more {display: block; clear: both; margin: 1em 0 1em; text-decoration: none;   }
.show-hide:hover, .read_more:hover {text-decoration: underline;}

.spoiler {border-top: dotted 1px #bbb; padding: 1em 0 2em;}
   .spoiler .show-hide {float: right;}

.post {margin-bottom: 1em; }

.post ul, .post ol {padding-left: 2em; margin: 0.5em 0 1em; }
h1, .post h1 {font-size: 1.8em; margin: 0 0 1em; }
.post_content {margin-bottom: 2em;}

.post img {max-width: 100%; }

.post h2 {font-size: 1.5em; margin: 0.5em 0 1em; }
.post h3 {font-size: 1.2em; margin: 0.5em 0 1em; }

.news-post h3 {margin: 0; font-size: 1em; margin: 0 0 0.2em; color: #333;}
.news-post h1 {margin: 0 0 0.5em;}

/* Кнопки пед классы */

.ped-class-buttons{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 25px;
}

.ped-class-buttons-columns{
    flex-direction: column;
}

.button-content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
    text-align: center;
    font-family: inherit;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    transition: 0.5s;
    border-radius: 15px;
}

.button-section {
    background-color: #fff;
    border: 2px solid var(--theme);
    flex-basis: 250px;
    min-width: 200px;
    height: 90px;
}

.button-section-height { margin-top: 25px; }

.button-file {
    background-color: var(--theme);
    border: 0;
    height: 70px;
}


.button-content-height { height: 70px;}

@media screen and (max-width: 600px) {
	.button-content-height {
		height: 90px;
	}
        .button-section-height {
                height: 120px;
        }
}

@media screen and (max-width: 450px) {
	.button-content-height {
		height: 130px;
	}
        .button-section-height {
                height: 155px;
        }
}

a.button-section {color: #000; }
a.button-section:hover {color: #000; background-color: #d6e3f1; text-decoration: none;}

a.button-file {color: #fff; }
a.button-file:hover {color: #fff; background-color: #6c95c3; text-decoration: none;}

/* Красивые таблицы в содержании */
.tbl {margin: 0.5em auto; vertical-align: middle; }
.tbl thead {background-color: #E2F3FF; border-bottom: solid 2px #d1ecff; }
.tbl td {border:1px solid #d1ecff; padding: 5px; vertical-align: middle; }
.tbl tr:nth-of-type(odd) {background-color: #E2F3FF;}*/
.tbl tr:hover{background:#F7F1C8;}*/
.tbl caption {margin-bottom: 5px;}

/* Кнопки для разделов на главной */
.content-buttons-main{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 25px;
    margin-bottom: 20px;
}

.button-content-main {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 250px;
    height: 100px;
    text-align: center;
    font-family: inherit;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 16px;
    background-color: #d9e6f3;
    transition: 0.5s;
    border-radius: 5px;
}

a.button-content-main {color: #000; }
a.button-content-main:hover {color: #004E88; background-color: #fff; text-decoration: none; border: 2px solid #d9e6f3;}
a.button-content-main:focus {color: inherit; text-decoration: none;}

/* Всплывающее окно Cookie */
.cookie-alert{
    position: fixed;
    background-color: #507299;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    font-size: 12px;
    transform: translateY(100%);
    transition: all .3s ease-in;
}

.is-show {
    transform: translateY(0);
    transition: all .3s ease-in;
}

.cookie-alert-container{
    max-width: 1200px;
    margin: auto;
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.cookie-alert-left p{
    color: #fff;
    text-align: justify;
    margin: 0;
}

.cookie-alert-left p a{
    color: #99b1d9;
}

@media (max-width: 640px) {
   .cookie-alert-container{
       flex-wrap: wrap;
       gap: 0px;      
   }
}

.button-cookie {
    display: inline-block;
    padding: 5px 10px;
    border: 2px solid #294a70;
    box-sizing: border-box;
    cursor: pointer;
    background-color: #fafafa;
    transition: all .5s;
}

.button-cookie-text {
    font-size: 15px;
    color: #0f233a;
}

.button-cookie-text:hover {
    text-decoration: underline;
}
