html,
body {
    background-color: #fafafa;
    font-size: 1em;
    color: #333333;
    font-family: Arial, sans-serif;
    height: 100%;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

ul,
ol {
    padding-left: 30px;
}

.btn-group-sm>.btn, .btn-sm {
    font-size: .875em;
}

form {
    margin: 0;
    justify-content: center;
}

.navblock {
    margin-bottom: 0;
}

.navprev,
.navnext {
    display: inline-block;
}

.navnext {
    float: right;
}

.navprev a,
.navnext a {
    color: #888;
}

a {
    outline: none !important;
}

a:hover,
a:focus,
a:active {
    text-decoration: none;
}

img {
    max-width: 100%;
    height: auto;
}

img.alignleft {
    float: left;
    margin-right: 20px;
    margin-bottom: 10px;
}

img.alignright {
    float: right;
    margin-left: 20px;
    margin-bottom: 20px;
}

img.aligncenter {
    display: block;
    margin: 0 auto 20px auto;
}

img.signature {
    margin: 0 4px 0 0 !important;
    position: relative;
    top: -5px;
}

#wrapper-content {
    flex: 1;
    background: #fafafa;
    padding-top: 6px;
}

#calendar_wrap td {
    padding: 6px;
}

#calendar_wrap tfoot {
    display: none;
}

#calendar_wrap caption {
    border-bottom: 1px solid #ddd;
    padding: 10px 0;
    margin-bottom: 10px;
}

.slb_group_status {
    display: none !important;
}

.attachment-thumbnail {
    margin: 0 auto;
}

/***Заголовки***/

.h2, h2 {
    font-size: 1.2em;
}
.h5, h5 {
    font-size: 1.1em;
}

/***Кнопки***/

.more-link {
    display: block;
    border-top: 1px solid #e5e5e5;
    margin-top: 20px;
    padding-top: 10px;
    clear: both
}

.blogbottom span {
    margin-right: 5px;
    color: #fff;
    border: 1px solid #fff;
    font-size: 12px;
    padding: 2px 8px;
    display: inline-block;
    margin-bottom: 5px;
}

.blogbottom span a {
    color: #fff;
}

.blogbottom .fa {
    margin-right: 4px;
}

.blogbottom-single > div,
.blogbottom-single > ul > li {
    margin-bottom: 5px
}

.blogbottom-single div {
    background: #0094dd;
    color: #fff;
    font-size: 0.8em;
    margin-right: 5px;
    padding: 2px 10px;
    border-radius: 4px;
    display: inline-block
}

.blogbottom-single div a:hover {
    color: #fff
}

.blogbottom-single .tags-blog {
    list-style: none;
    display: inline-block;
    margin: 0;
    padding: 0
}

.blogbottom-single .tags-blog li {
    background: #ff5422;
    display: inline-block;
    font-size: 0.8em;
    margin-right: 5px;
    padding: 2px 10px;
    border-radius: 4px;
}

.blogbottom-single .tags-blog li a:hover {
    color: #fff
}

.blogbottom-single .tags-blog li::before {
    font-family: 'Font Awesome 5 Free', 'Font Awesome 5 Brands';
    content: "\f02c";
    font-weight: 900;
    font-size: 12px;
    color: #fff;
    margin-right: 6px
}

.rubric-blog > a::before {
    font-family: 'Font Awesome 5 Free', 'Font Awesome 5 Brands';
    content: "\f07b";
    font-weight: 900;
    font-size: 12px;
    color: #fff;
    margin-right: 6px
}

.blogbottom-single a {
    color: #fff
}

.blogbottom-single i {
    margin-right: 5px
}

.img-news-single {
    float: left;
    margin-right: 20px;
    margin-bottom: 10px;
    padding-top: 5px
}

.img-news-archive-thumbnail {
    width: 100px;
    height: 100px;
    object-fit: cover;
}

.post-archive {
    border: 1px solid #ccc
}

.archive-page,
h2.table-title, .homepage-title {
    background: #01a0e2;
    color: #fff;
    padding: 10px;
    margin: 0;
}

.text-center.homepage-title{
    margin-left: -7px;
    margin-right: -7px;
    margin-top: 0;
    margin-bottom: 7px;
}

.icon-color {
    color: #01a0e2;
}

/***CUSTOMMENU***/
.icon-menu.custom {
    justify-content: center;
    padding: 0;
    margin-bottom: 0
}

.icon-menu.custom > li {
    padding: 10px;
    text-align: center;
    background-color: #01a0e2;
    list-style: none;
    border: 5px solid #fafafa;
    border-radius: 10px
}

.icon-menu.custom > li > a:after {
    display: block;
    content: "";
    margin: 10px auto;
    background-color: #fff;
    width: 20%;
    height: 3px;
    transition-duration: .4s
}

.icon-menu.custom > li > a:hover:after {
    width: 80%;
    transition-duration: .4s
}

.icon-menu.custom .current-menu-item,
.icon-menu.custom li:hover {
    background-color: #0286bc;
}

.icon-menu.custom .current-menu-item i,
.icon-menu.custom li:hover i {}

.icon-menu.custom .current-menu-item:after {
    width: 80%;
}

.icon-menu.custom li a {
    color: #fff
}

.icon-menu-section {
    background: #fafafa;
    padding-top: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #ccc
}

#BottomBanners .custom.row > li::before {
    display: block;
    text-align: center;
    font-family: 'Font Awesome 5 Free', 'Font Awesome 5 Brands';
    font-weight: 900;
    margin: 10px auto 20px auto;
    width: 80px;
    height: 80px;
    border: 4px solid #fff;
    border-radius: 50%;
    line-height: 70px;
    color: #fff;
    font-size: 30px;
}

#BottomBanners .custom.row > li a {
    display: block;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    text-transform: uppercase;
    font-weight: 700;
    line-height: 1.3;
    font-size: 0.875rem
}

.icon-menu.custom > li ul {
    display: none !important
}

/***LOGO***/

.custom-logo {
    float: left;
    margin-right: 30px;
}

.titleheader {
    overflow: hidden;
    display: flex;
    align-items: center;
    text-align: center !important;
    justify-content: center !important
}

.titleheader h1 {
    line-height: 30px;
    font-size: 22px;
    color: #545454;
    text-transform: uppercase;
}

.titleheader p {
    color: #c94c08;
    font-size: 18px;
    margin-top: 10px;
}

.titleheader table {
    vertical-align: middle;
}

.titlename,
.adress {
    margin-top: 2px;
}

.adress ul {
    list-style: none;
    text-decoration: none;
}

.adress li {
    margin-bottom: 4px;
}

.title {
    margin: 30px 0;
}

#CecutientBtn .fa,
.userBtn .fa {
    position: relative;
    top: 2px;
    font-size: 22px;
    margin-right: 10px;
}

#CecutientBtn span,
.userBtn span {
    font-size: 0.75em;
}

/***Header***/

.content {
    margin-top: 30px;
}

/***Post***/

.img-news {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.post-wrapper {
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

.clear {
    clear: both
}

.wp-pagenavi {
    text-align: center;
}

.post {
    border: 1px solid #eee;
    border-radius: 0 0 4px 4px;
    background: #fff;
    position: relative;
    padding: 10px;
    margin-bottom: 15px;
    height: 100%;
}

.post-main {
    position: relative
}

.title-block {
    background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
    padding: 10px;
    position: absolute;
    width: 100%;
    bottom: 0
}

.post_title {
    margin-bottom: 10px
}

.post_title h2 {
    line-height: 1.6rem
}

.post_title .single_title {
    line-height: 1.2;
    hyphens: auto;
}

.post_title h2 a {
    color: #fff;
    font-size: 1.125rem;
    text-transform: uppercase;
}

.post_title h2 a:after {
    content: "";
    display: block;
    height: 1px;
    width: 0;
    background: #fff;
    transition: 0.5s;
}

.post_title h2 a:hover:after {
    width: 100%;
}

.post.post-one {
    height: auto;
}

.navblock {
    margin-bottom: 20px
}

.post h2 span {
    font-size: 14px;
    font-weight: 400;
    margin-left: 20px;
}

/***PostTitle***/

.post_title_block {
    overflow: hidden;
    margin-bottom: 10px;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.blogdata {
    border-radius: 5px;
    text-align: center;
    color: #fff;
    margin-right: 20px;
}

.post_title_page {
    color: #fff;
    background-color: #01a0e2;
    padding: 10px 10px 5px 10px;
    margin: 0;
    border-radius: 4px 4px 0 0;
    display: flex;
    align-items: baseline;
    place-content: space-between;
}

.post .post_title_page .fa {
    font-size: 24px;
    margin-right: 10px;
}

.blogbottom {
    margin-bottom: 5px;
}

/***Pagination***/

.pagination-link {
    margin: 20px auto;
    text-align: center;
}

.pagination-link span,
.pagination-link a {
    display: inline-block;
    background: #1585b5;
    padding: 6px 12px;
    margin: 0;
    color: #fff;
    text-decoration: none;
}

.pagination-link span.current {
    background: #555;
}

.pagination-link a:hover {
    background: #555;
    color: #fff;
}

/***LINEBOTTOM***/

.linebottom {
    display: block;
    visibility: hidden;
    height: 1px;
    background-color: #ddd;
    clear: both;
    margin: 10px 0;
}

.linetop {
    display: block;
    height: 1px;
    background-color: #60a6c3;
    clear: both;
    margin: 10px 0;
}

/***MENU***/
#top-menu-size{
    top: 0;
    width: 100%;
    z-index: 10;
}

.menu-fixed{
    position: sticky;
    z-index: 999
}

.menu-nofixed{
    position: inherit
}

.TopMenuBtn {
    background-color: #1b7b98;
    padding: 0 0 10px 10px;
    margin-top: -10px;
    color: #fff;
    margin-bottom: 1px;
    display: none;
}

.TopMenuBtn .fa {
    cursor: pointer;
    margin-right: 20px;
}

.TopMenuBtn span {
    font-size: 30px;
    display: none;
}

.TopMenu .header-menu {
    text-align: center !important;
    color: #fff;
    position: relative;
}

.TopMenu .header-menu a:hover {
    cursor: pointer
}

.TopMenu ul {
    list-style: none;
    margin: 0;
    padding: 0
}

.TopMenu ul li {
    display: inline-block;
}

.TopMenu .header-menu > li > a {
    display: block;
    color: #fff;
    padding: 10px 20px 10px;
    text-transform: uppercase;
    font-weight: 700;
    transition: 0.5s;
    font-size: 15px;
}

ul.header-menu li a,
ul.header-menu li {
    position: relative
}

ul.header-menu > li ul {
    display: none
}

.header-menu > li > ul {
    position: absolute;
    top: 100%;
    right: 0;
    background: #4a4a4a;
    z-index: 999;
    width: 100%;
    min-width: 200px;
    text-align: left
}

.header-menu > li > ul li {
    text-align: left;
    width: 100%
}

.header-menu > li > ul a {
    color: #fff;
    display: block;
    padding: 8px 15px;
    border-bottom: 1px solid #6a6a6a;
}

.header-menu li:last-child > a {
    border-bottom: none !important
}

.header-menu > li > ul > li ul {
    position: absolute;
    width: 100%;
    left: 100%;
    right: 100%;
    top: 0;
    background: #616161;
}

.header-menu > li:last-child > ul{
    left: auto;
    right: 0
}

.header-menu > li:last-child > ul > li ul {
    left: -100%;
}

.TopMenu ul > .menu-item-has-children > a {
    padding-right: 40px
}

.TopMenu ul > .menu-item-has-children > a:after {
    content: "";
    position: absolute;
    right: 8px;
    top: 48%;
    border-left: 5px solid transparent;
    border-top: 5px solid #fff;
    border-right: 5px solid transparent;
    z-index: 10;
}

.header-menu > li > ul > li > ul > li ul {
    background: #767676;
    left: 0;
    right: 0;
    top: 100%
}

.header-menu li:last-child {
    border-bottom: none !important
}

/*    Menu hover  */
.TopMenu.hover-menu>div> ul > li.menu-item-has-children >.sub-menu > li > .sub-menu{
    display: none
}

.TopMenu.hover-menu>div> ul > li.menu-item-has-children:hover  .sub-menu,
.TopMenu.hover-menu>div> ul > li.menu-item-has-children >.sub-menu > li:hover .sub-menu{
    display: block
}

/*        Стили для модальных окон          */

.Window {
    position: fixed;
    font-family: Arial, Helvetica, sans-serif;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 99999;
    transition: opacity 400ms ease-in;
    display: none;
    pointer-events: none;
}

.Window:target {
    display: block;
    pointer-events: auto;
}

.Window > div {
    width: 500px;
    position: relative;
    margin: 10% auto;
    padding: 30px 10px 20px 30px;
    border-radius: 4px;
    background: #fff;
    box-shadow: 0px 0px 20px 2px;
}

.close-modal {
    background: #dd3333;
    color: #FFFFFF;
    line-height: 25px;
    position: absolute;
    right: -12px;
    text-align: center;
    top: -10px;
    width: 24px;
    text-decoration: none;
    font-weight: bold;
    border-radius: 12px;
    box-shadow: 1px 1px 3px #000;
    opacity: 1;
}

.close-modal:hover {
    background: #dd3333;
    opacity: 1;
    color: #FFFFFF;
    text-decoration: none;
}

#toTop {
    text-align: center;
    position: fixed;
    bottom: 10px;
    width: 50px;
    height: 50px;
    border: 2px solid #555;
    background: #555;
    border-radius: 8px;
    right: 20px;
    cursor: pointer;
    display: none;
    color: #fff;
    z-index: 1060;
}

#toTop .fas.fa-angle-up{
    font-size: 45px
}

/***Search***/

.userSearch {
    display: none;
    position: absolute;
    top: 58px;
    right: 0;
    background: #1b7b98;
    padding: 15px 25px;
    border: 1px solid #fff;
    border-radius: 4px;
    z-index: 999;
    min-width: 370px
}

.userSearch #searchsubmit {
    border: none;
}

.userSearch .screen-reader-text {
    display: none;
}

.toppanel {
    position: relative;
}

.userSerchBtn {
    display: inline-block;
}

.userBrandBtn {
    width: 30px;
    height: 30px;
    text-align: center;
    display: inline-block;
    border: 2px solid #fff;
    line-height: 26px;
    margin: 5px;
    cursor: pointer;
    transition: 0.5s;
    border-radius: 50%;
}

a.userBrandBtn {
    color: #fff;
}
.userBrandBtn:hover {
    background-color: #fff;
    color: #000;
    border: 2px solid #555555;
}

.userSerchBtn:hover {
    color: #000;
}

.no-search {
    text-align: center;
}

.no-search img {
    margin: 0 auto;
}

/***Footer***/

#footer {
    flex-shrink: 0;
    margin-top: auto;
    background-color: #333;
    color: #ececec;
    padding-top: 20px
}

#footer .footerblock > h3,
#footer .title-hit {
    background: rgba(255, 255, 255, .1);
}

.footerblock {
    margin-bottom: 20px;
    padding: 0
}

#footer .footerblock > h3,
#footer .title-hit {
    display: block;
    margin: 0 0 20px 0;
    padding: .4em;
    color: #fff;
    text-transform: uppercase;
    border-radius: 4px;
    font-size: 1rem;
    font-weight: 700;
    margin-left: -5px;
    margin-right: -5px;
}

#footer a {
    color: #fff;
    padding: 0;
    transition: 0.4s;
}

#footer .tag-cloud-link {
    display: inline-block;
    background: #1585b5;
    color: #eee;
    padding: 4px 15px;
    border-radius: 0
}

#footer .tag-cloud-link:hover {
    background: #105d7d
}

#footer caption {
    color: #fff
}

#footer a:hover,
#footer a:active,
#footer a:focus {
    color: #ccc;
}

#footer ul {
    list-style: none !important;
    margin-left: 0;
    padding: 0;
}

#footer ul li {
    padding: 4px 0 4px 0
}

#footer ul ul {
    font-size: 0.8rem;
    list-style: inside;
    margin-left: 5px
}

.footerblock {
    margin-bottom: 20px;
}

#footer .hit-items ul {
    list-style: none !important;
}

#debug {
    background-color: #283347;
    color: #ececec;
    text-align: center;
    padding: 16px 0px 16px 0px;
    font-size: 12px;
}

.menuBottom ul {
    list-style: none;
}

.menuBottom a {
    color: #fff;
}

#footer .menuBottom a:hover {
    background: none;
    color: #888;
}

.menuBottom ul li ul {
    display: none;
}

.menuBottom .maps:before {
    font: normal normal normal 20px/1 FontAwesome;
    display: inline-block;
    content: "\f0e8";
    margin-right: 7px;
}

/***SocialButton***/

.socTop {
    display: block;
    float: right;
    margin-right: 50px;
}

.socBottom {
    text-align: center;
}

.socBtnTop,
.socBtnBottom {
    color: #fff;
    display: inline-block;
    border: 2px solid #fff;
    border-radius: 50%;
    margin: 5px;
    text-align: center;
    transition: 0.5s;
}

.socBtnBottom {
    width: 42px;
    height: 42px;
}

.socBtnTop {
    width: 34px;
    height: 34px;
}

.socBtnTop:hover,
.socBtnBottom:hover {
    background-color: #fff;
    color: #000;
}

.socBtnTop .fa {
    font-size: 20px;
    line-height: 32px;
}

.socBtnBottom .fa {
    font-size: 24px;
    line-height: 39px;
}

/***Widget***/

.widget {
    margin-bottom: 30px;
}

#gallery-1 img {
    margin: 0 auto;
}

/***Comments***/

#comments {
    display: none;
}

#reply-title {
    font-size: 18px;
}

.commentlist {
    list-style: none;
}

.comment-reply-title {}

.comment-author.vcard,
.comment-meta.commentmetadata {
    display: inline-block;
}

.commentlist .children {
    list-style: none;
    padding: 10px;
    margin-bottom: 10px;
}

.avatar {
    border-radius: 50%;
    border: 2px solid #999;
}

.comment-body {
    border: 1px solid #ddd;
    padding: 10px;
    margin-bottom: 10px;
    border-radius: 4px;
}

.navigation {
    margin-bottom: 15px;
}

/***Slider***/

.populargb {
    text-align: center;
}

.popularimg {
    border: 1px solid #fff;
    height: 160px !important;
    max-width: 350px !important;
    background-size: cover !important;
    margin: 0 auto;
}

.populyar {
    margin-top: 20px;
    box-shadow: 0px 0px 5px 0px #b0b0b0;
}

.populyar,
.bannerblock {
    background-color: #fafafa;
    border-top: 1px solid #ccc;
    padding: 20px 0;
}

.banner-edu {
    margin-bottom: 15px;
}

.banner-edu img {
    transition: .6s;
    border: 1px solid #eee;
    border-radius: 4px;
}

.banner-edu:hover img {
    opacity: 0.6;
    border: 1px solid #333;
}

.popularentry {
    text-align: center;
    color: #1b7b98;
    margin-bottom: 15px;
}

.populartitle {
    display: block;
    margin: 15px;
}

.popularentry.container-fluid {
    background: #ddd
}

.breadcrumbs {
    background-color: #fafafa;
    padding: 10px 0;
}

/***Category***/

.category_list > li a {
    font-size: 22px;
    display: block;
    padding: 8px 0;
    line-height: 30px;
}

.table-data {
    font-size: 14px;
}

.politiclink {
    margin-left: 32px;
    font-size: 15px;
}

.carousel {
    margin-bottom: 0;
}

.headerslider {
    overflow: hidden;
}

.headerslider .metaslider .caption {
    font-size: 22px;
    text-align: center;
    padding: 10px 20px;
}

.bannerlink {
    display: block;
    margin: -10px;
    transition: 0.5s;
}

.bannerlink:hover {
    opacity: 0.8;
}

.bannerlink img {
    display: block;
    margin: 0 auto;
}

.ruk {
    border: 1px solid #ddd;
    overflow: hidden;
    padding: 10px;
}

.ruk img {
    border: 1px solid #ddd;
    padding: 5px;
}

.moduletable .ruk h3 {
    color: #60a6c3;
    font-size: 28px;
    background: transparent;
    padding: 15px;
    text-align: center;
}

.sitemap-page ul {
    list-style: url(../images/ul.png);
}

h2.content-code {
    padding: 10px;
    margin: 20px 0;
}

.tag-cloud-link {
    display: inline-block;
    background: #ff5422;
    padding: 4px 10px;
    color: #fff;
    margin-bottom: 4px
}

.tag-cloud-link:hover,
.tag-cloud-link:focus,
.tag-cloud-link:active {
    color: #fff
}

/****Blog***/
.post-time {
    background: #ddd display: inline-block;
    text-align: center;
    width: 70px;
    height: 80px;
    border-radius: 0px;
    padding: 8px;
    line-height: 27px;
    padding-top: 13px;
    color: #dcdcdc;
    font-weight: 700;
    position: absolute;
    z-index: 10;
    top: -10px;
    right: 19px;
}

.post-time::before {
    content: "";
    width: 0;
    height: 0;
    right: 0;
    top: 80px;
    position: absolute;
    border: 35px solid transparent;
    border-top: 25px solid rgb(180, 195, 231);
}

.img-news-blog-full {
    object-fit: cover;
}

/* Настройка изображения на главной блока Объявления */
img.img-news-blog-full.img-fluid.wp-post-image {
    object-fit: scale-down;
    height: 250px;
    margin-bottom: 10px;
}

.blog-cols.col-md-12 .img-news-blog-full {
    margin-bottom: 10px;
}

.blog-cols.col-md-6 .img-news-blog-full {
    margin-bottom: 10px;
    height: 250px;
    object-fit: cover;
}

.blog-cols.col-md-6 .post {
    height: 100%
}

.blog-cols.col-md-6 .post .col-lg-auto,
.blog-cols.col-md-4 .post .col-lg-auto,
.blog-cols.col-md-3 .post .col-lg-auto {
    width: 100%
}

.blog-cols.col-md-4 .post {
    height: 100%
}

.blog-cols.col-md-3 .post {
    height: 100%
}

.blog-cols.col-md-4 .img-news-blog-full {
    max-width: 100%;
    margin-bottom: 20px;
    height: 200px;
    object-fit: cover;
}

.blog-cols.col-md-3 .img-news-blog-full {
    max-width: 100%;
    margin-bottom: 20px;
    height: 150px;
    object-fit: cover;
}

h2.title-news-blog {
    font-size: 1.05rem;
    color: #333;
    padding: 0;
    hyphens: auto;
    text-transform: uppercase;
    font-weight: 500;
    line-height: 1.4;
}

.readmore-block {
    text-align: right
}

/***Button***/

.readmore-btn {
    display: inline-block;
    background-color: #1585b5;
    color: #fff;
    padding: 4px 10px;
    transition: 0.5s;
    border-radius: 4px
}

.readmore-btn:hover,
.readmore-btn:active,
.readmore-btn:focus {
    color: #fff;
    background-color: #555
}

.info-blog-data {
    background: #e8357c;
    display: inline-block;
    color: #fff;
    padding: 2px 10px;
}

.info-blog-cat {
    display: inline-block
}

.info-blog-cat a {
    color: #fff;
}

.info-blog-views i {
    margin-right: 4px
}

.info-blog-tags a {
    color: #fff;
}

.row.no-gutters.info-blog {
    font-size: 12px
}

.adress-school #adress-top::before,
.adress-school #mainfon::before,
.adress-school #email::before {
    font-family: 'Font Awesome 5 Free', 'Font Awesome 5 Brands';
    font-weight: 900;
    position: absolute;
    font-size: 16px;
    left: -24px;
    top: 3px
}

.adress-school #adress-top::before {
    content: "\f3c5"
}

.adress-school #mainfon::before {
    content: "\f879"
}

.adress-school #email::before {
    content: "\f0e0";
}

.adress-school {
    margin-right: auto;
    margin-left: auto;
}

.ov-h {
    overflow: hidden
}

.mh-300 {
    min-height: 300px
}

/***Table***/

.table-responsive {
    overflow: auto;
}

.wp-block-table table,
.table-bordered {
    border: 1px solid #c2c2c2;
    border-left: 0;
    border-radius: 0;
}

.wp-block-table table th,
.wp-block-table table td,
table-bordered td,
.table-bordered td {
    border-left: 1px solid #c2c2c2;
    border-top: 1px solid #c2c2c2;
    padding: 8px;
}

#first-screen,
#first-screen .row {
    height: 100%;
}

#first-screen .row > div {
    display: flex;
}

#first-screen,
#first-screen .row > div {
    align-items: center
}

.first-screen-title {
    background-color: rgba(255, 255, 255, .8);
    padding: 20px;
    width: 100%;
}

.col-md-6.offset-md-3 .first-screen-title {
    text-align: center
}

.first-screen-title-text {
    font-size: 20px;
    line-height: 30px;
}

.top_sidebar .col-md.p-2 {
    align-content: stretch;
    display: flex;
    flex-direction: column;
}

.moduletable.moduletable-top {
    height: 100%;
    max-height: 100%
}

/*Vidget*/

.moduletable {
    border: 1px solid #eee;
    margin-bottom: 20px;
    padding: 10px;
    background: #fff;
    border-radius: 4px;
}

.moduletable h3.moduletable-title {
    background: #555;
    font-size: 0.9em;
    line-height: 25px;
    text-transform: uppercase;
    color: #fff;
    margin: -11px -11px 10px -11px;
    padding: 10px 15px
}

.moduletable > ul {
    list-style: none;
    margin: 0;
    padding: 0
}

.moduletable ul > li {
    border-bottom: 1px solid #ccc;
}

.moduletable ul > li:last-child,
.moduletable ul ul li {
    border: none
}

.moduletable ul ul {
    padding-left: 15px;
}

.moduletable-title-top {
    font-size: 1.25rem;
    color: #007bff;
    padding-bottom: 10px;
    text-transform: uppercase;
    font-weight: 600;
    border-bottom: 1px solid #ccc;
}

.moduletable > ul > li a {
    padding: 10px 0;
    display: inline-block
}

/*** Menu ***/
.moduletable .menu {
    background: #01a0e2;
    margin: -10px -11px -11px -11px;
    list-style: none;
    padding: 0 0 5px 0;
    color: #fff
}

.moduletable .menu > li:hover {
    background: #0398d6
}

.moduletable .menu a {
    display: block;
    color: #fff;
    position: relative;
    cursor: pointer !important;
    padding: 10px 15px;
    cursor: pointer !important;
}

.moduletable .menu > li {
    border-bottom: none;
    position: relative;
    padding: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1)
}

.moduletable .menu > li > ul > li {
    border-bottom: 1px solid #6c6c6c;
    font-size: 14px
}

.moduletable .menu > li > ul > li > ul > li {
    border-bottom: 1px solid #5c5c5c;
}

.moduletable .menu li:last-child {
    border-bottom: none !important
}

.moduletable .menu > li ul li {
    position: relative
}

.moduletable .menu > li > ul {
    list-style: none;
    padding: 0;
    margin: 0;
    background: #555;
    display: none
}

.moduletable .menu > li > ul > li > ul {
    background: #424242;
    list-style: none;
    padding: 0;
    display: none
}

.moduletable .menu > li > ul > li > ul > li > ul {
    list-style: none;
    background: #383838;
    padding-left: 0;
    padding-right: 0;
    display: none
}

.moduletable .menu .menu-item-has-children > a::after {
    content: '';
    display: block;
    height: 8px;
    width: 8px;
    border: 2px solid;
    border-top-width: 2px;
    border-right-width: 2px;
    border-right-width: 0;
    border-top-width: 0;
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    right: 15px;
    top: 18px;
}

.moduletable .menu ul .menu-item-has-children::after {
    right: 0
}

.post_count {
    right: 0px;
    top: 8px;
    color: #fff;
    background: #1585b5;
    padding: 0 10px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 4px;
}

.post-date {
    font-size: 14px;
    font-weight: 600;
    display: block
}

#footer .post-date{
    color: #26b6f4;
}

/**  GalleryStyle **/
.gallery.gallery-columns-2,
.gallery.gallery-columns-3,
.gallery.gallery-columns-4,
.gallery.gallery-columns-5,
.gallery.gallery-columns-6,
.gallery.gallery-columns-7,
.gallery.gallery-columns-8,
.gallery.gallery-columns-9 {
    margin-left: 0;
    margin-right: 0;
    display: flex;
    flex-wrap: wrap;
    box-sizing: content-box;
}

.gallery.gallery-columns-2 .gallery-item {
    flex: 0 0 50%;
    max-width: 50%;
}

.gallery.gallery-columns-3 .gallery-item {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
}

.gallery.gallery-columns-4 .gallery-item {
    flex: 0 0 25%;
    max-width: 25%;
}

.gallery.gallery-columns-5 .gallery-item {
    flex: 0 0 20%;
    max-width: 20%;
}

.gallery.gallery-columns-6 .gallery-item {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
}

.gallery.gallery-columns-7 .gallery-item {
    flex: 0 0 14.2857142857%;
    max-width: 14.2857142857%;
}

.gallery.gallery-columns-8 .gallery-item {
    flex: 0 0 12.5%;
    max-width: 12.5%;
}

.gallery.gallery-columns-9 .gallery-item {
    flex: 0 0 11.1111111111%;
    max-width: 11.1111111111%;
}

.gallery-item {
    padding: 5px
}

.gallery-icon {
    height: 200px;
    border: 1px solid #ccc;
    padding: 4px;
    background: #fafafa;
}

.gallery-item img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    border-radius: 1px;
}

.wp-caption-text.gallery-caption {
    border: 1px solid #ccc;
    background: #fafafa;
    padding: 10px 15px;
    border-top: none
}

/**  EndGalleryStyle **/

.announce-page {
    padding: 20px;
    background: #fafafa;
    border: 1px solid #ccc;
    border-left: 15px solid #01a0e2;
    height: 100%
}

.freesidebar-title {
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
}

p.form-submit #submit.submit {
    border: none;
    transition: .4s;
    background: #1585b5;
    padding: 10px 20px;
    color: #fff;
}

p.form-submit #submit.submit:hover {
    background: #555
}

.thumbnail-hit img {
    width: 100px;
    height: 100px;
    object-fit: cover;
    border-radius: 4px;
}

.wp-block-code {
    background: #fee;
    border: 1px solid #ffb1b1;
    padding: 10px;
}

/*** Comments ***/
.comment-form-author #author,
.comment-form-email #email,
.comment-form-url #url {
    border: 1px solid #ccc;
    display: block;
    width: 100%;
    padding: 7px;
}

.wp-block-pullquote.is-style-default {
    border-bottom: 2px solid #555;
    border-top: 2px solid #555;
}

.wp-block-quote {
    border-left: 2px solid #555;
    padding-left: 20px
}

.wp-block-quote cite {
    font-size: 14px;
}

.post-page-numbers {
    background: #717171;
    color: #fff;
    padding: 5px 10px;
}

.post-page-numbers:hover,
.post-page-numbers:active,
.post-page-numbers:focus {
    background: #484848;
    color: #fff
}

span.post-page-numbers.current {
    background: #484848;
    color: #fff
}

.post-nav-links {
    display: block;
    margin: 30px 0;
}

thead th {
    color: #fff;
    background-color: #373a3c;
    vertical-align: bottom;
}

#header-top .container,
#header-top .row {
    height: 100%
}

.adress-school ul {
    list-style: none;
    margin: 0;
    padding-left: 20px
}

.adress-school ul li {
    line-height: 20px;
    margin-bottom: 5px;
    font-size: 16px;
    font-weight: 500;
    position: relative
}

.adress-fl {
    display: flex;
    align-items: center
}

.titleheader,
.logo-header {
    overflow: hidden;
    display: flex;
    align-items: center;
}

.blog-cols.col-md-6 .col-md-auto {
    width: 100%
}

.img-news-blog-full:hover {
    opacity: 0.9
}

.img-thumbnail {
    padding: 0;
    border: 0;
    border-radius: 0;
    height: auto;
}

.blockquote.news-blog-blockquote {
    font-size: 1rem
}

.footer-blog-blockquote a {
    text-decoration: underline;
    color: red
}

.footer-blog-blockquote a:hover {
    text-decoration: none
}

/** Media **/

@media (max-width: 1199.98px) {
    .TopMenu .header-menu > li > a {
        padding: 20px
    }

    .TopMenu ul > .menu-item-has-children > a {
        padding-right: 30px
    }
}

@media (max-width: 991.98px) {
    .gallery.gallery-columns-4 .gallery-item {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .TopMenu .header-menu > li > a {
        padding: 15px 8px;
    }

    .TopMenu ul > .menu-item-has-children > a {
        padding-right: 20px
    }

    .blog-cols.col-md-12 .img-news-blog-full {
        max-width: 100%
    }
}

@media (max-width: 767.98px) {
    .gallery.gallery-columns-3 .gallery-item,
    .gallery.gallery-columns-4 .gallery-item {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .hidden-smart {
        display: none !important
    }

    .userSearch {
        width: 100%;
    }

    .TopMenuBtn {
        display: block
    }
    
    .TopMenu.hover-menu  ul.header-menu > li ul, .TopMenu.hover-menu > div > ul > li.menu-item-has-children > .sub-menu > li > .sub-menu {
        display: block;
    }
    
    .menu-fixed {
        position: inherit;
    }
    
    #top-menu > .container{
        padding-left: 0;
        padding-right: 0
    }
    
    #top-menu.TopMenu .header-menu > li > a {
        padding: 15px;
    }

    #top-menu {
        display: none
    }

    .TopMenu .header-menu {
        text-align: left!important
    }

    .TopMenu .header-menu li {
        display: block
    }

    .TopMenu .header-menu ul {
        position: inherit !important;
        left: 0!important;
        right: 0!important
    }

    #BottomBanners .custom.row > li::before {
        display: none
    }
    
    /* Скрываем левое меню на экранах менее 1023px */
    .col-lg-3.col-md-12.order-lg-1.order-sm-3.p-2 {
        display: none !important;
    }
    
    /* Кнопка "Вверх" */
    #toTop .fas.fa-angle-up {
        padding-top: 4px;
        font-size: 1.875em;
    }
    
    #toTop {
        width: 40px;
        height: 40px;
    }
    
    /* Мобильное меню */
    .fa-2x {
        font-size: 1.4em !important;
    }
    
    /* Баннеры */
    .bannerblock .row > div {
        flex: 0 0 50%;
        max-width: 50%;
        padding: 0 8px;
    }
    
    /* Фикс для отступов raigl-gallery-slider*/
    .raigl-gallery-slider .slick-slide {
        padding: 0 0 5px 0 !important;
    }
}

@media (max-width: 575.98px) {
    .gallery.gallery-columns-2 .gallery-item,
    .gallery.gallery-columns-3 .gallery-item,
    .gallery.gallery-columns-4 .gallery-item,
    .gallery.gallery-columns-5 .gallery-item,
    .gallery.gallery-columns-6 .gallery-item {
        flex: 0 0 100%;
        max-width: 100%;
    }

    #searchsubmit {
        width: 100%;
        margin-top: 10px
    }

    .Window > div {
        width: 350px
    }    
}

/* ===== ОБЩИЕ СТИЛИ КАРТОЧЕК ===== */
.card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid #eee;
    border-radius: 4px;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}

.card-img-top {
    width: 100%;
    height: 250px;
    object-fit: cover;
    object-position: center;
}

.no-thumbnail {
    width: 100%;
    height: 200px;
    background-color: #f5f5f5;
    display: block;
}

.card-body {
    padding: 1.25em;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.card-title {
    margin-bottom: 0.75em;
    font-size: 1.2em;
}

.card-title a {
    color: #333;
    text-decoration: none;
}

.card-title a:hover {
    color: #0066cc;
}

.card-meta {
    margin-bottom: 5px;
    font-size: 0.85em;
    color: #666;
}

.card-meta .date {
    margin-right: 10px;
    color: #fff;
    background: #555555;
    padding: 2px 10px;
    border-radius: 4px;
}

.card-meta .category a {
    color: #fff;
    text-decoration: none;
    background: #555555;
    padding: 2px 10px;
    border-radius: 4px;
}

.card-meta .category a:hover {
    text-decoration: underline;
}

.excerpt {
    margin: 10px 0;
    color: #666;
    font-size: 1em;
    flex-grow: 1;
}

.btn-outline-primary {
    align-self: flex-start;
    margin-top: auto;
    padding: 6px 10px;
    color: #fff;
    transition: 0.5s;
    border-radius: 4px;
    border: none;
    background-color: #0398d6;
}

.btn-outline-primary:hover {
    background-color: #555555;
    border: none;
    border-color: none;
}

/* ===== СТИЛИ СЕТОК ===== */
.news-grid,
.announce-grid {
    display: flex;
    flex-wrap: wrap;
    margin: -15px;
}

.news-grid > [class*="col-"],
.announce-grid > [class*="col-"] {
    padding: 15px 15px 0 15px;
}

/* ===== ВИДЖЕТ НОВОСТИ ===== */
.news-widget .news-thumbnail {
    width: 100%;
    height: 250px;
    object-fit: cover;
    object-position: center;
}

.news-widget .no-thumbnail {
    width: 100%;
    height: 200px;
    background-color: #f5f5f5;
    display: block;
}

/* Мета-данные новостей */
.news-widget .blogbottom-single {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    font-size: 0.85em;
    color: #666;
}

.news-widget .blogbottom-single > div {
    display: flex;
    align-items: center;
}

/* ===== ВИДЖЕТ ОБЪЯВЛЕНИЯ ===== */
.announcements-widget .announce-thumbnail {
    width: 100%;
    height: 250px;
    object-fit: cover;
    object-position: center;
}

.announcements-widget .no-thumbnail {
    width: 100%;
    height: 200px;
    background-color: #f5f5f5;
    display: block;
}

/* Мета-данные объявлений */
.announcements-widget .blogbottom-single {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    font-size: 0.85em;
    color: #666;
}

.announcements-widget .blogbottom-single > div {
    display: flex;
    align-items: center;
}

/* ===== АДАПТИВНОСТЬ ===== */
@media (max-width: 991px) {
    .news-widget .news-thumbnail,
    .announcements-widget .announce-thumbnail,
    .news-widget .no-thumbnail,
    .announcements-widget .no-thumbnail {
        height: 200px;
    }
}

@media (max-width: 767px) {
    .news-grid > [class*="col-"],
    .announce-grid > [class*="col-"] {
        flex: 0 0 100%;
        max-width: 100%;
    }
    
    .news-widget .news-thumbnail,
    .announcements-widget .announce-thumbnail,
    .news-widget .no-thumbnail,
    .announcements-widget .no-thumbnail {
        height: 180px;
    }
    
    .news-widget .blogbottom-single,
    .announcements-widget .blogbottom-single {
        gap: 8px;
    }
}

/* ==================== */
/* COOKIE-УВЕДОМЛЕНИЕ */
/* ==================== */
.cookie-notice {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(255, 255, 255, 0.95);
    color: #333;
    padding: 15px;
    z-index: 9999;
    display: flex;
    justify-content: center;
    box-shadow: 0 -2px 15px rgba(0,0,0,0.1);
}

.cookie-notice-container {
    max-width: 1200px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cookie-notice p {
    margin: 0;
    padding-right: 33px;
    font-size: 14px;
    line-height: 1.4;
    text-align: justify;
}

.cookie-notice a {
    color: #0073aa;
    text-decoration: underline;
}

#cookie-accept {
    background: #0073aa;
    color: white;
    border: none;
    margin-right: 10px;
    padding: 8px 20px;
    border-radius: 4px;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.2s;
}

#cookie-accept:hover {
    background: #005a87;
}

.cookie-close-btn {
    position: absolute;
    top: 0;
    right: 0;
    width: 18px;
    height: 18px;
    background: #f5f5f5;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    cursor: pointer;
    color: #666;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.cookie-close-btn:hover {
    background: #eaeaea;
}

/* Адаптация под мобильные */
@media (max-width: 767px) {
    .cookie-notice {
        flex-wrap: wrap;
        padding: 15px 15px 60px;
    }
    
    .cookie-notice-container {
        flex-direction: column;
        text-align: center;
    }
    
    .cookie-notice p {
        padding: 10px 0 0;
        margin-bottom: 15px;
    }
    
    #cookie-accept {
        width: 100%;
        position: fixed;
        bottom: 0;
        left: 0;
        border-radius: 0;
        padding: 15px;
    }

    .cookie-close-btn {
        width: 24px;
        height: 24px;
        font-size: 16px;
    }
}

/* Десктопная версия */
@media (min-width: 768px) {
    .cookie-notice {
        left: 50%;
        transform: translateX(-50%);
        width: calc(100% - 40px);
        max-width: 600px;
        border-radius: 8px;
        bottom: 20px;
    }
}

/* ==================== */
/* БЛОК ОБРАТНОЙ СВЯЗИ */
/* ==================== */
.content-wrapper {
    display: flex;
    justify-content: center;
}

.address-block {
    min-width: 45%;
}

.form-block {
    width: 50%;
}

.address-block h2,
.form-block h2 {
    font-size: 1.25em;
    color: #333;
    margin: 0 0 15px 0;
    position: relative;
    padding-bottom: 8px;
}

.address-block h2::after,
.form-block h2::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50px;
    height: 3px;
    background: #0398d6;
}

.address-block a {
    color: #333;
    vertical-align: middle;
}

.wpcf7-form p {
    margin: 0 !important;
    padding: 0 !important;
}

.wpcf7-form {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.wpcf7-form-control {
    box-sizing: border-box;
    width: 100%;
    font-size: 1em;
    margin-bottom: 5px;
}

.wpcf7-submit {
    background: #0398d6;
    color: white;
    padding: 10px 25px !important;
    border: none !important;
    border-radius: 4px !important;
    transition: background 0.3s;
    width: fit-content !important;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.consent-form {
    margin: 20px 0;
    line-height: 1.4;
    font-size: 0.9em !important;
    text-align: justify;
}

.consent-form a {
    color: #0066cc;
    text-decoration: none;
}

.wpcf7-list-item {
    margin-left: 0;
    padding: 0.1em 0.3125em 0.1em 0.3125em;
    border: 1px solid #ddd;
    border-radius: 4px;
}

textarea.wpcf7-textarea {
    display: flex;
    resize: auto;
    min-height: 100px;
}

.captcha-wrapper {
    display: flex;
    gap: 10px;
    align-items: center;
}

.captcha-image img {
    width: 160px;
    height: 50px;
    object-fit: contain;
}

.captcha-input input {
    width: 160px;
    height: 50px;
    padding: 8px;
    box-sizing: border-box;
}

@media (max-width: 768px) {
    .content-wrapper {
        flex-direction: column;
    }
    
    .address-block,
    .form-block {
        width: 100%;
    }
    
    .wpcf7-submit {
        width: 50%;
    }
}

/* ==================== */
/* АККОРДЕОН */
/* ==================== */
.accordion {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    margin: 15px 0;
    background: #fff;
    overflow: hidden;
}

.accordion-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    background: #fafafa;
    cursor: pointer;
    border-bottom: 1px solid #e0e0e0;
    transition: background-color 0.2s;
}

.accordion-header:hover {
    background-color: #f8f9fa;
}

.accordion-header i {
    transition: transform 0.3s ease;
    color: #666;
}

.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 0 15px;
    background: #fff;
}

.accordion.active .accordion-content {
    max-height: 1000px;
}

.accordion.active .accordion-header {
    border-bottom-color: transparent;
}

.accordion.active .accordion-header i {
    transform: rotate(180deg);
}

/* ==================== */
/* РАБОТА С PDF */
/* ==================== */
.doc-header {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 10px;
}

.doc-header a {
    display: flex;
    align-items: center;
    gap: 8px;
}

.doc-header i.fa-file-pdf {
    font-size: 2.5em;
    color: #ff4444;
    margin-right: 8px;
}

.doc-header i.fa-file-video {
    font-size: 2.5em;
    color: #0398d6;
    margin-right: 8px;
}

.fa-file-pdf:before {
    color: #ff4444;
}

.doc-links {
    display: flex;
    gap: 20px;
}

.download-btn,
.preview-btn {
    background: #555555;
    color: white;
    padding: 2px 10px;
    border-radius: 4px;
    font-size: small;
    transition: background-color 0.3s, color 0.3s;
    box-sizing: border-box;
    border: 1px solid transparent;
}

.download-btn {
    margin: 0 10px 0 50px;
}

.download-btn:hover,
.preview-btn:hover {
    background-color: white;
    color: black;
    border: 1px solid #555555;
}

.doc-header-divider {
    border-bottom: 1px solid #ddd;
    margin: 10px 0;
}

@media (max-width: 768px) {
    .doc-links {
        gap: 12px;
        flex-wrap: wrap;
    }
    
    .download-btn,
    .preview-btn {
        padding: 6px 12px;
        font-size: 0.875em;
    }
}

@media (max-width: 480px) {
    .download-btn,
    .preview-btn {
        padding: 5px 10px;
        font-size: 0.75em;
    }
    
    .doc-links {
        gap: 10px;
    }
}

.pdfViewer .page {
    border: 2px solid #333 !important;
}

/* ==================== */
/* НАСТРОЙКИ БЛОГА */
/* ==================== */
.panel-body {
    padding-top: 5px;
}

.custom-media {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    padding-top: 10px;
}

.custom-attachments,
.embed-responsive {
    aspect-ratio: 4/3;
}

.custom-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 4px;
}

.embed-responsive {
    background: #000;
}

.embed-responsive-item {
    width: 100%;
    height: 100%;
    border: 0;
}

.img-thumbnail {
    background-color: #fafafa;
}

@media (max-width: 768px) {
    .custom-media {
        grid-template-columns: 1fr;
    }
}

/* ==================== */
/* ГЛАВНАЯ СТРАНИЦА */
/* ==================== */
.post.post-one .p {
    margin-top: -20px !important;
}

.p-2 {
    padding:0 .5rem .5rem .5rem !important;
}

.mb-3,.my-3 {
    margin-bottom: 0 !important;
}

.blogbottom-single.mb-3.mt-3 {
    margin-top: 5px !important;
}

.col-12 {
    padding-left: 9px;
    padding-right: 9px;
    margin-bottom: -10px;
}

.news-header-block {
    display: flex;
    align-items: baseline;
    place-content: space-between;
    background: #fff;
    margin: 0 -7px 0 -7px;
    border: 1px solid #eee;
    border-bottom: none;
    border-radius: 4px 4px 0 0;
    padding-top: 10px;
    font-size: inherit;
}

/* Виджет Заголовок + Ссылка */
.title-link-header {
    display: flex;
    align-items: baseline;
    place-content: space-between;
    background: #fafafa;
    margin: 0 -7px -7px;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: none;
    font-size: inherit;
    padding: 10px;
}

@media (max-width: 767.98px) {
    .title-link-header {
        margin-top: 5px;
    }
}

a.title-link-url {
    color: #fff;
}

/* ==================== */
/* ГАЛЕРЕЯ И МЕДИА */
/* ==================== */

/* Плагин Album Gallery */
.raigl-breadcrumb-wrp {
    padding-left: 10px;
}

/* ==================== */
/* ШАПКА САЙТА */
/* ==================== */

/* Кнопка для слабовидящих */
#CecutientBtn, .userBtn, #StandartBtn {
    padding: 1px 10px !important;
}

/* Базовые стили шапки */
#header-top {
    padding: 10px 0 15px 0 !important;
}

#header-top img {
    height: 150px;
}

#header-top .titlename h1 {
    line-height: 1.4 !important;
}

#header-top .titlename h1,
#header-top .titlename p {
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.7);
}

/* Стили для десктопа */
@media (min-width: 768px) {
    #header-top img {
        padding-left: 40px;
    }
}

/* Стили для мобильной версии */
@media (max-width: 767px) {
    /* Позиционирование логотипа как фона */
    .row {
        position: relative;
    }
    
    .logo-header {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 0;
        opacity: 0.3;
        pointer-events: none;
    }
    
    .col-md-auto.logo-header {
        padding: 0;
    }
    
    /* Стили для текста поверх логотипа */
    .titleheader, .titlename {
        position: relative;
        z-index: 1;
    }
    
    
    /* Размеры элементов */
    #header-top img {
        height: 140px;
    }
    
    /* Отступы */
    .titlename, .adress {
        margin: 11px 0;
    }
    
    .titleheader h1 {
        margin-top: -10px;
    }
    
    .pb-3, .py-3 {
        padding-bottom: 0 !important;
    }
    
    .pt-3, .py-3 {
        padding-top: 4px !important;
    }
}

/* ==================== */
/* МОБИЛЬНАЯ ВЕРСИЯ */
/* ==================== */

/* Основные стили для обоих меню */
.menu-wrapper {
    display: flex;
    align-items: center;
    width: 100%;
    position: relative;
}

.main-nav {
    flex: 1;
}

.header-menu > li.hidden-item {
    opacity: 0;
    position: absolute;
    pointer-events: none;
    visibility: hidden;
}

/* Стили для основного меню и top-bar меню */
#top-menu .header-menu,
#top-bar-menu .header-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    width: 100%;
    justify-content: center;
}

#top-menu .menu-wrapper,
#top-bar-menu .menu-wrapper {
    padding-right: 30px;
}

#top-bar-more-menu-button {
    position: absolute;
    right: 0;
    top: 0;
}

#more-menu-button {
    position: absolute;
    right: 0;
    top: 0;
}

/* Пункты меню */
#top-menu .header-menu > li,
#top-bar-menu .header-menu > li {
    position: relative;
    z-index: 1000;
}

#top-menu .header-menu > li > a,
#top-bar-menu .header-menu > li > a {
    color: white;
    padding: 7px 27px 7px 7px;
    margin-left: 15px;
    display: block;
    text-decoration: none;
    font-size: 0.9375em;
    line-height: 1.4;
    transition: background 0.2s;
    white-space: nowrap;
}

/* Подменю (1 уровень) */
#top-menu .header-menu > li > ul.sub-menu,
#top-bar-menu .header-menu > li > ul.sub-menu {
    display: none;
    position: absolute;
    z-index: 1001;
    top: 100%;
    right: 0;
    min-width: 180px;
    padding: 0;
    margin: 0;
    list-style: none;
    background: #4a4a4a;
    box-shadow: 0 3px 5px rgba(0,0,0,0.2);
    animation: fadeIn 0.3s ease-out;
    text-align: left;
    white-space: normal;
    overflow-wrap: break-word;
}

#top-menu .header-menu > li:hover > ul.sub-menu,
#top-menu .header-menu > li:focus-within > ul.sub-menu,
#top-bar-menu .header-menu > li:hover > ul.sub-menu,
#top-bar-menu .header-menu > li:focus-within > ul.sub-menu {
    display: block;
}

/* Пункты подменю */
#top-menu .header-menu > li > ul.sub-menu a,
#top-bar-menu .header-menu > li > ul.sub-menu a {
    color: #fff;
    display: block;
    padding: 8px 15px;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    text-decoration: none;
    transition: background 0.2s;
}

#top-menu .header-menu > li > ul.sub-menu li:last-child a,
#top-bar-menu .header-menu > li > ul.sub-menu li:last-child a {
    border-bottom: none;
}

#top-menu .header-menu > li > ul.sub-menu a:hover,
#top-bar-menu .header-menu > li > ul.sub-menu a:hover {
    background: rgba(0,0,0,0.1);
}

/* Подменю (2+ уровни) */
#top-menu .header-menu > li > ul.sub-menu ul.sub-menu,
#top-bar-menu .header-menu > li > ul.sub-menu ul.sub-menu {
    left: 100%;
    top: 0;
}

/* Menu Button - общие стили для кнопок */
.nav-button {
    background: transparent;
    border: none;
    outline: none;
    color: white;
}

.nav-button:hover,
.nav-button:active,
.nav-button:focus {
    background: #0286bc;
    border: none;
    outline: none;
    cursor: pointer;
}

/* Обводка кнопки Еще */
i.fa.fa-ellipsis-h {
    padding: 8px 10px;
}

/* More Dropdown - стили для выпадающих меню */
#more-menu-dropdown,
#top-bar-more-menu-dropdown {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    background: #4a4a4a;
    z-index: 1002;
    min-width: 200px;
    text-align: left;
    white-space: normal;
    overflow-wrap: break-word;
    box-shadow: 0 3px 10px rgba(0,0,0,0.2);
}

#more-menu-dropdown.active,
#top-bar-more-menu-dropdown.active {
    display: block;
}

/* Стили для списка и пунктов выпадающего меню */
#more-menu-dropdown a,
#top-bar-more-menu-dropdown a {
    color: #ffffff;
}

#more-menu-dropdown .dropdown-menu-list,
#top-bar-more-menu-dropdown .dropdown-menu-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: block;
}

#more-menu-dropdown .dropdown-menu-list > li,
#top-bar-more-menu-dropdown .dropdown-menu-list > li {
    display: block;
    padding: 8px 15px;
    white-space: nowrap;
    position: relative;
    border-bottom: 1px solid #6a6a6a;
}

/* Стили для подменю в выпадающем меню */
#more-menu-dropdown .sub-menu,
#top-bar-more-menu-dropdown .sub-menu {
    display: none;
    position: absolute;
    right: 100%;
    top: 0;
    background: #4a4a4a;
    min-width: 250px;
    z-index: 1000;
    white-space: normal;
    overflow-wrap: break-word;
    padding: 0;
}

#more-menu-dropdown .sub-menu li,
#top-bar-more-menu-dropdown .sub-menu li {
    display: block;
    padding: 8px 15px;
    border-bottom: 1px solid #6a6a6a;
}

/* hover-эффекты для пунктов выпадающего меню */
#more-menu-dropdown .dropdown-menu-list > li:hover,
#more-menu-dropdown .sub-menu li:hover,
#top-bar-more-menu-dropdown .dropdown-menu-list > li:hover,
#top-bar-more-menu-dropdown .sub-menu li:hover {
    background: #5a5a5a;
    cursor: pointer;
}

/* Стили для стрелочек в пунктах меню */
#top-menu .header-menu > .menu-item-has-children > a:after {
    content: "";
    position: absolute;
    right: 15px;
    top: 40%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid #fff;
    transition: transform 0.3s ease;
}

#top-bar-menu .header-menu > .menu-item-has-children > a:after {
    content: "";
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid #fff;
    transition: transform 0.3s ease;
}

/* Анимация стрелочки при открытии */
#top-menu .header-menu > .menu-item-has-children:hover > a:after,
#top-menu .header-menu > .menu-item-has-children.open > a:after,
#top-bar-menu .header-menu > .menu-item-has-children:hover > a:after,
#top-bar-menu .header-menu > .menu-item-has-children.open > a:after {
    transform: translateY(-50%) rotate(180deg);
}

/* Для подменю (чтобы стрелочки смотрели вправо) */
#top-menu .header-menu > li > ul.sub-menu > .menu-item-has-children > a,
#top-bar-menu .header-menu > li > ul.sub-menu > .menu-item-has-children > a {
    position: relative;
    padding-right: 30px !important;
}

#top-menu .header-menu > li > ul.sub-menu > .menu-item-has-children > a:after,
#top-bar-menu .header-menu > li > ul.sub-menu > .menu-item-has-children > a:after {
    content: "";
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 5px solid #fff;
    border-right: none;
}

/* Hidden Items */
.header-menu > li.hidden-item {
    display: none;
}

/* ================== */
/* FULLMENU STYLES */
/* ================== */
.fullmenu {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 9999;
    overflow: auto;
}

.fullmenu.active {
    display: block;
}

.fullmenu-content {
    position: relative;
    background: #fff;
    padding: 40px;
    width: 90%;
    max-width: 1200px;
    margin: 40px auto;
    border-radius: 8px;
    box-shadow: 0 5px 30px rgba(0, 0, 0, 0.3);
}

/* Обводка кнопки fullmenu */
i.fa.fa-ellipsis-v {
    padding: 7px;
}

/* Сетка колонок */
.fullmenu-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    align-items: start;
}

/* Колонка */
.fullmenu-column {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

/* Группа (заголовок + подменю) */
.menu-group {
    break-inside: avoid-column;
    page-break-inside: avoid;
}

/* Заголовки */
.menu-title a {
    font-size: 17px;
    font-weight: 700;
    color: #222;
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    padding-bottom: 5px;
}

/* Подменю */
.menu-sublist {
    list-style: none;
    padding: 0;
    margin: 0;
}

.menu-sublist li {
    margin-bottom: 8px;
}

.menu-sublist a {
    font-size: 15px;
    font-weight: 400;
    color: #555;
    text-decoration: none;
    transition: color 0.2s;
    display: block;
    padding: 3px 0;
}

.menu-sublist a:hover {
    color: #0056b3;
}

/* Кнопка закрытия */
.fullmenu-close {
    position: absolute;
    top: 1px;
    right: 1px;
    font-size: 30px;
    background: none;
    border: none;
    outline: none;
    cursor: pointer;
    color: #555;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 0.3s;
}

.fullmenu-close:hover {
    color: #000;
    background: #f5f5f5;
}

/* Адаптация fullmenu */
@media (max-width: 1200px) {
    .fullmenu-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 900px) {
    .fullmenu-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Исправления для правильного расчета ширины */
#top-bar-menu .container {
    width: 100%;
    max-width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

#top-bar-menu .menu-wrapper {
    position: relative;
    display: flex;
    flex-wrap: nowrap;
}

#top-bar-menu .main-nav {
    flex: 1 1 auto;
    min-width: 0;
}

#top-bar-menu .header-menu {
    flex-wrap: nowrap;
    overflow: visible;
    min-width: 0;
    justify-content: center;
}

#top-bar-menu .header-menu > li {
    flex-shrink: 0;
    white-space: nowrap;
}

/* Кнопка "Ещё" */
#top-bar-menu .more-menu-wrapper {
    flex-shrink: 0;
}

/* Анимации */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Responsive adjustments */
@media (max-width: 767.98px) {
    /* Скрываем кнопки и выпадающие меню на мобильных */
    .nav-button,
    #more-menu-button,
    #top-bar-more-menu-button,
    #fullmenu-button {
        display: none !important;
    }
    
    /* Адаптация меню для мобильных */
    #top-menu .header-menu,
    #top-bar-menu .header-menu {
        flex-direction: column;
        padding: 0;
    }
    
    #top-menu .header-menu > li,
    #top-bar-menu .header-menu > li {
        width: 100%;
    }
    
    #top-menu .header-menu > li > a,
    #top-bar-menu .header-menu > li > a {
        margin-left: 0;
        padding: 10px 15px;
    }
    
    /* Подменю для мобильных */
    #top-menu .header-menu > li > ul.sub-menu,
    #top-bar-menu .header-menu > li > ul.sub-menu {
        position: static;
        display: none;
        width: 100%;
        box-shadow: none;
    }
    
    #top-menu .header-menu > li:hover > ul.sub-menu,
    #top-bar-menu .header-menu > li:hover > ul.sub-menu {
        display: none;
    }
    
    /* Стрелочки для мобильных */
    #top-menu .header-menu > .menu-item-has-children > a:after,
    #top-bar-menu .header-menu > .menu-item-has-children > a:after {
        right: 15px;
    }
    
    /* Адаптация top-bar-menu для мобильных */
    #top-bar-menu .menu-wrapper {
        flex-direction: column;
        overflow: visible;
    }
    
    #top-bar-menu .header-menu {
        flex-direction: column;
    }
    
    #top-bar-menu .header-menu > li {
        width: 100%;
    }
}

@media (min-width: 768px) {
    /* Показываем меню на десктопе */
    #top-menu, #top-bar-menu-wrapper {
        display: block !important;
    }
}

/* ==================== */
/* MOBILE MENU OVERLAY */
/* ==================== */
.mobile-menu-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.7);
    z-index: 9999; /* Должен быть ниже чем у sidebar */
}

/* ==================== */
/* MAIN MENU CONTAINERS */
/* ==================== */
.mobile-menu-sidebar,
.sub-menu-panel {
    position: fixed;
    top: 0;
    left: 0;
    width: 85%;
    max-width: 300px;
    height: 100%;
    background: #fff;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
    overflow-y: auto;
}

.mobile-menu-sidebar {
    z-index: 10000; /* Выше чем у overlay */
}

.sub-menu-panel {
    z-index: 10001; /* Выше чем у основного меню */
    display: none; /* Скрыт по умолчанию */
}

/* Active states */
.mobile-menu-sidebar.active,
.sub-menu-panel.active {
    transform: translateX(0);
    display: block;
}

/* =============== */
/* MENU STRUCTURE */
/* =============== */
.mobile-menu-content,
.sub-menu-content {
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* Menu headers */
.mobile-menu-header,
.sub-menu-header {
    display: flex;
    align-items: center;
    padding: 15px;
    background: #01a0e2;
    color: white;
    position: sticky;
    top: 0;
    z-index: 1;
}

.sub-menu-header {
    justify-content: flex-start; /* Для кнопки "назад" */
}

/* Menu lists */
.mobile-menu-list,
.sub-menu-content {
    list-style: none;
    padding: 0;
    margin: 0;
    flex-grow: 1;
    overflow-y: auto;
}

/* Menu items */
.mobile-menu-list > li,
.sub-menu-content > li {
    border-bottom: 1px solid #eee;
}

/* Menu links */
.mobile-menu-list > li > a,
.sub-menu-content > li > a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px;
    color: #333;
    text-decoration: none;
}

/* Submenu toggle icon */
.submenu-toggle {
    margin-left: 10px;
    color: #666;
}

/* Title menu */
.mobile-menu-title {
    margin: 0;
}

/* ============= */
/* INTERACTIONS */
/* ============= */
/* Кнопки закрытия/назад */
.mobile-menu-close,
.sub-menu-back {
    background: none;
    border: none;
    outline: none;
    color: white;
    cursor: pointer;
    padding: 0;
}

.mobile-menu-close {
    position: absolute;
    top: 11px;
    right: 0;
    font-size: 1.8em;
    background: none;
    border: none;
    outline: none;
    cursor: pointer;
    color: #555;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.mobile-menu-close:hover {
    color: #000;
    background: #f5f5f5;
}

.sub-menu-back {
    font-size: 1.5em;
    margin-right: 30px;
}

/* Пункты с подменю */
.mobile-menu-list > li.menu-item-has-children > a {
    pointer-events: auto;
    cursor: pointer;
}

/* ================== */
/* SCROLLING SECTION */
/* ================== */
.sub-menu-scroll {
    height: calc(100% - 60px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

/* ============== */
/* BODY LOCKING */
/* ============== */
body.menu-open {
    overflow: hidden;
}

/* ================ */
/* SUBMENU HEADING */
/* ================ */
.sub-menu-header h3 {
    margin: 0;
    font-size: 1.33em;
    flex-grow: 1;
    text-align: left;
}

/* Заголовок объявления */
.announcement-item h2.title-news-blog {
    color: #333;
    font-size: 1.05rem;
    padding: 0;
    hyphens: auto;
}

/* Настройки блока Фотографии на главной */
.raigl-gallery-slider .slick-slide {
    border: solid 2px #eee;
    border-top: none;    
    padding: 0 !important;
}

.raigl-design-1 .raigl-img-caption {
    border-radius: 0 0 4px 4px;
}

.raigl-gallery-wrp .raigl-img, .raigl-gallery-album-wrp .raigl-img {
    border-radius: 4px !important;
}

/* Стили виджета подменю */
/* Основные стили контейнера виджета */
.widget-odd.widget-last.widget-first.widget-1.moduletable {
    padding: 0 10px;
}

/* Стили навигационного меню */
.widget-1.moduletable .submenu-navigation {
    list-style: none;
    margin: 0;
    padding: 0;
}

.widget-1.moduletable .submenu-navigation .menu-item {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #eee;
}

.widget-1.moduletable .submenu-navigation .menu-item a {
    display: block;
    color: #111;
    text-decoration: none;
    padding: 8px 0;
    transition: all 0.2s ease;
}

.widget-1.moduletable .submenu-navigation .current-menu-item a,
.widget-1.moduletable .submenu-navigation .active a {
    font-weight: 700;
    color: #007bff;
}

.widget-1.moduletable .submenu-navigation .menu-item a:hover {
    background-color: #f0f0f0;
    transform: translateY(-1px);
    border-radius: 4px;
}

.widget-1.moduletable .submenu-navigation .menu-item:last-child {
    border-bottom: none;
}

/* ===== ОБРАМЛЕННЫЕ ССЫЛКИ ===== */
.framed-link {
    display: inline-block;
    font-size: inherit;
    padding: 2px 10px;
    border: 1px solid #01a0e2;
    background-color: #01a0e2;
    color: white;
    text-decoration: none;
    border-radius: 4px;
    transition: background-color 0.3s, color 0.3s;
}

.framed-link:hover {
    background-color: #ffffff;
    color: black;
    border: 1px solid #555555;
}

/* ===== ВИДЖЕТЫ ===== */
.widget-odd.widget-last.widget-first.widget-1.headerslider {
    margin-bottom: 20px;
    border: 1px solid #eee;
}


