html {
    scroll-behavior: smooth;
}
html, body, div, td, p, ul, li, span, placeholder, input, select, textarea, table, td, button {
    font-family: "Inter", sans-serif !important;
    box-sizing: border-box;
}
::after, ::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
body {
    font-size: 100%;
    color: var(--default-color)
}
table {
    border-collapse: collapse;
    border-spacing: 0
}
.full {
    width: 100%
}
*, img, ul {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    border: 0

}
main ul {
    list-style: none !important;
    padding: 0;
    margin: 20px 0;
}

main ul li {
    list-style-type: none !important;
    position: relative;
    padding-left: 25px;
    margin-bottom: 8px;
    line-height: 1.4;
    font-size: 16px;
    color: #333;
}

main ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px; /* Выравнивание точки по высоте первой строки */
    width: 8px; /* Размер точки */
    height: 8px;
    background-color: var(--red);
    border-radius: 50%;
}

h1, h2, .rh2  {
    margin: 0 0 20px;
    font-family: "Inter", sans-serif !important;
    text-transform: none;
}
.textpage .main-content h1, h1.onindex {
    font-weight: 500;
    font-size: 32px;
    line-height: 1.4;
}
h3, h4, h5, h6, .h3 {
    margin: 0 0 10px;
    font-family: "Inter", sans-serif !important;
    text-transform: none;
}
.seo-mp h5 {
    font-weight: 500;
    font-size: 30px;
    line-height: 1.4;
    padding-bottom: 10px;
}
.mainpage.seo-mp {
    margin-top: 120px;
}
main {
    min-height: 600px;
    font-weight: 400;
}
a {
    color: var(--default-color);
}
a:hover {
    color: #000000;
}
.main-content a {
    text-decoration: underline;
}
.main-content a:hover {
    text-decoration: none;
}
b, strong {
    color: var(--default-text-color);
}
.sect_descrip b {
	line-height: 1.7;
}
p {
    font-size: 18px;
    color: var(--default-text-color);
    font-weight: 400;
    line-height: 1.7
}


p ul, section ul {
    margin-left: 30px;
}
section .preview-text ul {
    margin-left: 0;
}
p ul li, section ul li {
    line-height: 1.7;
    list-style: disc;
}
.animated {
    opacity: 0;
    transform: translateY(30px);
}


.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
    opacity: 0.35 !important;      
    pointer-events: none !important;
    cursor: default !important;
    filter: alpha(opacity=35);      
}
.socs.s_pad {
display: flex;
max-height: 40px;
  gap: 6px;
}


.agree {
    margin: 20px 0;
    color: var(--grey-dark);
    font-size: 13px;
    line-height: 1.2;
}
.agree a {
    text-decoration: underline;
    color: var(--grey-extra-dark);
}
.smart,
.smart a {
    color: #ccc;
    font-size: 11px;
}
.container.textpage .main-content {
    font-size: 18px;
    line-height: 1.7;
    color: var(--default-text-color);
    font-family: "Inter", sans-serif !important;
}
body.no-scroll {
    overflow: hidden;
    height: 100vh;
}
.scroll-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 48px;
    height: 48px;
    background-color: var(--red);
    color: #fff;
    border-radius: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 1000;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}
.scroll-top.is-visible {
    opacity: 1;
    visibility: visible;
}
.scroll-top:hover {
    transform: translateY(-5px);
    background-color: var(--grey-dark);
}
.arrow-up {
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 12px solid #fff;
    margin-bottom: 4px;
}
.btn-primary, .authorize-submit-cell input {
    display: inline-block !important;
    background: var(--btn-bg);
    text-align: center;
    padding: 7px 32px 6px 32px !important;
    color: #fff !important;
    cursor: pointer;
    border: 1px solid var(--btn-bg);
    outline: 0 !important;
    margin: 0;
    font-weight: 400 !important;
    font-size: 16px !important;
    line-height: 1.5;
    text-decoration: none !important;
    transition: background-color 0.3s ease, color 0.3s ease, opacity 0.3s ease;
}
.btn-primary-xl {
    display: inline-block;
    background: var(--btn-bg);
    text-align: center;
    padding: 19px 30px;
    color: #fff !important;
    cursor: pointer;
    border: 1px solid var(--btn-bg);
    outline: 0;
    margin: 0;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.4;
    text-decoration: none !important;
    transition: background-color 0.3s ease, color 0.3s ease, opacity 0.3s ease;
}
.btn-primary-xl:hover {
    background: #fff;
    transition: transform 0.3s ease;
    color: var(--btn-hover) !important;
    text-decoration: none !important;
    border: 1px solid var(--btn-hover);
}
.btn-primary:hover {
    background: #fff !important;
    transition: transform 0.3s ease;
    color: var(--btn-hover) !important;
    text-decoration: none !important;
    border: 1px solid var(--btn-hover);
}
.btn-outline {
    background: var(--btn-light-bg);
    display: inline-block !important;
    text-align: center;
    padding: 10px 32px 8px 32px !important;
    color: #000 !important;
    cursor: pointer;
    border: 1px solid var(--red);
    outline: 0 !important;
    margin: 0;
    font-weight: 400 !important;
    font-size: 16px !important;
    line-height: 1.5;
    text-decoration: none !important;
    transition: background-color 0.3s ease, color 0.3s ease, opacity 0.3s ease;
}
.btn-outline:hover {
    background: var(--btn-bg);
    color: white !important;
    text-decoration: none !important;
}
.btn-outline-xl {
    display: inline-block;
    padding: 19px 30px;
    border: 1px solid #000;
    cursor: pointer;
    outline: 0;
    margin: 0;
    font-weight: 400;
    font-size: 16px;
    text-decoration: none !important;
    line-height: 1.4;
    text-align: center;
    color: black !important;
    transition: background-color 0.3s ease, color 0.3s ease, opacity 0.3s ease;
}
.btn-outline-xl:hover {
    background: var(--btn-bg);
    color: #fff !important;;
    border: 1px solid var(--btn-bg);
    transition: transform 0.3s ease;
    text-decoration: none !important;
}
.swiper-pagination-bullet-active {
    background: var(--red);
}
.logos_mp {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    background: #f8f8f8;
    box-sizing: border-box;
    margin-top: 120px;
    padding-bottom: 20px !important;
}
.logos_mp .b-wrap-fix {
    position: relative;
    margin-bottom: 20px;
    margin-top: 25px;
}

.logos_mp .h1 {
    font-weight: 700;
    font-size: 44px;
    line-height: 1.2;
    margin: auto;
    padding-top: 10px;
    padding-bottom: 20px;
}
.search_city ul li::before {
    display: none;

}
.search_city ul {
    margin: 0;
}
.clients_slider_mp .swiper-slide {
    display: inline-flex;
    background: white;
    text-align: center;
    height: 106px;
    align-items: center;
    justify-content: center;
}
.swiper-pagination-1 {
    margin: auto;
    text-align: center;
}

/*gallery*/
.photo-preview-grid,
.video-gallery-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 15px;
}

.preview-item {
    display: block;
    width: 220px;
    height: 150px;
    overflow: hidden;
    transition: opacity 0.3s;
}
.preview-a-video {
    width: 460px;
    height: 300px;
    display: block;
    overflow: hidden;
    transition: opacity 0.3s;
}

.preview-item:hover {
    opacity: 0.8;
}

.preview-item img,
.preview-a-video img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

@media screen and (max-width: 500px) {
    .preview-item, .preview-a-video {
        width: calc(50% - 10px); /* По 2 в ряд на маленьких экранах */
        height: 120px;
    }

    .play-btn {
        width: 50px !important;
        height: 50px !important;
    }
}
/*===*/
@media (max-width: 1199px) {
    .swiper-button-prev.clients_slider_prev_mp, .swiper-button-next.clients_slider_next_mp {
        display: none;
    }
}
.swiper-button-prev.clients_slider_prev_mp:hover svg, .swiper-button-next.clients_slider_next_mp:hover svg {
    transform: scale(1.1);
    color: var(--red);
}
.swiper-button-prev.clients_slider_prev_mp svg, .swiper-button-next.clients_slider_next_mp svg {
    transition: transform 0.3s ease;
    color: var(--red);
}
.seminar-name .goto {
    transition: all 0.3s ease;
}
.seminar-name .link:hover .goto {
    background: #fff !important;
    scale: 1.1;
    color: var(--btn-hover) !important;
    text-decoration: none !important;
    border: 1px solid var(--btn-hover);
}
.load_more_wrapper {
    text-align: center;
    margin: 0 0 20px 0;
}
.print-only {
    display: none;
}
@media print {
    body * {
        visibility: hidden;
    }

    hr {
        border-top: 1px solid #000;
    }

    .printable, .printable * {
        visibility: visible;
    }

    .printable {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        font-size: 12px
    }

    .print-link, .read_more, .btn-overflow, .microphone {
        display: none !important;
    }

    .prepods-item, .prepods-wrap {
        background: none;
        display: block;
    }

    header, footer, input, iframe, .flex-block, #scrollTop, .desktop_hidden, .sidebar, .side_form, .read_more, .no-print, .bx-breadcrumb, .btn-primary, .btn-outline, .btn-primary-xl, .btn-outline-xl, .b-panel-top, .bitpan {
        display: none !important;
    }

    .print-info p {
        padding: 0 !important;
        margin: 0 !important;
    }

    .print-only {
        display: block !important;
        margin-bottom: 20px;
        font-size: 12px !important;
    }

    h1 {
        font-size: 22px !important;
        font-weight: bold !important;
    }

    h2, .rh2 {
        font-size: 20px !important;
        font-weight: bold !important;
    }

    h3, .h3 {
        font-size: 18px !important;
        font-weight: bold !important;
    }

    .programm {
        max-height: none !important;
        font-size: 1.2em !important;
    }

    .programm::after {
        display: none !important;
    }

    .print-header-wrapper {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        margin-bottom: 15px;
    }

    .print-logo img {
        width: 180px;
        height: auto;
        display: block;
    }

    .print-info {
        text-align: right;
        font-size: 12px !important;
    }
}

.btn-outline.mobile-sections-btn {
    display: none !important;
}

@media screen and (max-width: 768px) {
    .btn-outline.mobile-sections-btn{
        display: block !important;
  margin: 20px 0;
    }
}

section {
    display: block;
    padding: 50px 0;
}
.mainpage {
    margin: 0;
    padding: 0;
}
.mt_10 {
    margin-top: 10px;
}
.m_80 {
    margin: 80px 0;
}
.mt_0 {
    margin-top: 0;
}
.bx-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 2px 10px;
}
.pan-right {
    display: flex;
    gap: 20px;
    align-items: center;
}
.top_heart {
    position: relative;
    display: flex;
    align-items: center;
}
.favorite_active {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: var(--grey) !important;
}
.favorite_active .count {
    position: absolute;
    top: 45%;
    left: 50%;
    transform: translate(-40%, -40%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    color: #fff;
    pointer-events: none;
}
.favorite_active .count:empty {
    display: none;
}
.favorite_active .count[data-count="0"] {
    display: none !important;
}
.js-favorite {
    display: inline-block;
    transition: all 0.3s ease;
}
.js-favorite .icon, .js-favorite.fa-heart-o .icon {
    width: 22px;
    height: 22px;
    color: var(--grey);
}
.top_heart .icon, .top_heart #awelite_favorites_equation.favorite_active .icon {
    width: 30px;
    height: 30px;
    fill: var(--grey);
}
.js-favorite:hover, .favorite_active:hover, .js-favorite:not(.btn-ico):hover .icon {
    color: var(--red);
}
.js-favorite:not(.btn-ico):hover, .favorite_active:hover, .js-favorite:not(.btn-ico):hover .icon {
    /* scale: 1.05;*/
}
.js-favorite.active, .js-favorite.fa-heart, .favorite_active.is-active,
.js-favorite.active .icon, .js-favorite.fa-heart .icon, .favorite_active.is-active .icon {
    color: var(--red) !important;
}
header .bx-breadcrumb .bx-breadcrumb-item {
    float: none;
    display: inline-flex !important;
    white-space: normal;
    margin: 0;
    padding: 0;
    align-items: center;
}
header .bx-breadcrumb .bx-breadcrumb-item span.active {
    font-size: 16px;
    line-height: 16px;
    white-space: normal;
    color: #A4A2A2;
    padding-top: 3px;
}
.b-bread {
    display: none !important;
}
.menu_state_open .menu__links::-webkit-scrollbar {
    width: 4px;
}
.menu_state_open .menu__links::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 2px;
}
/*content*/
.container {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    max-width: var(--content);
    margin: 0 auto;
}
.main-content {
    flex: 1 1 var(--sidebar);
    min-width: 0;
}
.sidebar {
    flex: 0 0 440px;
    max-width: 440px;
}
/*===*/
.parent-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
    align-items: center;
    justify-content: space-between;
}
.desktop_hidden {
    display: none;
}
.mob_hidden {
    display: block;
}
section.events {
    padding-top: 0;
}
section.events table tr {
    display: block;
    padding: 20px;
    margin-bottom: 20px;
}
section.events table tr.seminar-row {
    background: var(--grey-extra-light);
}
section.events table tr.seminar-row td {
    vertical-align: top;
}
section.events table td.date {
    width: 220px;
}
section.events table td.seminar-name, section.events table td.seminar-name a {
    font-weight: 400;
    font-size: 20px;
    line-height: 1.5;
    color: black;
    text-decoration: none;
}
section.events table td.seminar-name a:hover {
    text-decoration: underline;
}
.sub_ {
    margin-bottom: 10px;
}
.type {
    position: relative;
    margin-bottom: 15px;
    justify-content: space-between;
    align-items: baseline;
    display: flex;
}
.type span {
    padding: 4px 8px 3px 8px;
    border-radius: 2px;
    margin-right: 10px;
    background: var(--grey-light);
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    color: var(--text);
}
.seminar-row a {
    display: block;
}

img.colored {
    filter: grayscale(0%);
    opacity: 1;
}
@media screen and (min-width: 1500px) {
    .type {
        min-width: 680px;
    }
}
@media screen and (min-width: 768px) {
    .desktop_hidden {
        display: none !important;
    }
}
@media (min-width: 768px) and (max-width: 980px) {
    .phone-box {
        flex-direction: unset !important;
        align-items: center !important;
        gap: 30px !important;
    }

    .top_menu.menu__links .icon_p {
        margin-right: 5px;
    }

}
@media (min-width: 980px) and (max-width: 1350px) {
    .fixed-menu .parent-container {
        gap: 0 !important;
    }

    .top_menu li {
        padding: 23px 0 15px 10px !important;
    }

    .js_link.login_link, .exit div:first-child {
        display: none !important;
    }

    .pers_menu {
        left: unset !important;
    }
}
.icon.mob_ico {
    width: 20px;
    height: 20px;
}
#js-search-close {
    display: none;
}
.icon_seach.mob_ico {
    cursor: pointer;
}
.menu {
    cursor: pointer;
}
.top_section_seminars img {
    width: 100%;
    height: auto;
}
.top_section_seminars h1 {
	margin-bottom: 0;
}
.top_section_seminars .child-right {
    max-width: 782px;
    border-left: 5px solid var(--red);
}
.top_section_seminars .child-left {
    padding: 30px;
    flex: 1;
}
.side_form .h {
    font-weight: 500;
    font-size: 24px;
    line-height: 130%;
    color: black;
    margin-bottom: 15px;
}
.side_form .txt {
    font-weight: 400;
    font-size: 18px;
    line-height: 1.5;
    color: black;
}
.top_section_seminars {
    overflow: hidden;
    background: var(--grey-extra-light);
    margin-bottom: 40px;
}

/*==*/
.fancybox__slide.has-iframe .f-html {
    padding: 15px !important;
    background: none !important;
    max-width: var(--content);
    max-height: 800px;
}
.has-html5video .f-html,
.has-youtube .f-html,
.has-vimeo .f-html {
    max-width: var(--content);
    max-height: 800px;
}
@media screen and (max-width: 768px) {
    .fancybox__slide.has-iframe #raichuVideoPoster {
        height: auto !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }

    .butse, .search-wrap td {
        display: block !important;

    }

}


/*
.flex-block
*/
.flex-block {
    display: flex;
    flex-direction: row; 
    width: 100%;
    align-items: stretch; 
    overflow: hidden;
}

.flex-block--reverse {
    flex-direction: row-reverse;
}

.flex-block__item {
    display: flex;
    flex-direction: column; 
    box-sizing: border-box;
}

.flex-block__item.item-text {
    flex: 1; 
    font-weight: 400;
    font-size: 18px;
    line-height: 1.7;
}

.flex-block__item.item-video {
    flex: 0 1 800px; 
    aspect-ratio: 16 / 9;
    background: var(--grey);
}

.flex-block.picture .flex-block__item.item-img {
    flex: 0 1 700px; 
    aspect-ratio: 16 / 9;
    justify-content: center;
    background: var(--grey);
}

.video-preview.item-one-video {
    aspect-ratio: 16 / 9;
}


.flex-block.picture .item-text {
    padding: 40px;
    background: var(--grey-extra-light);
    justify-content: center;
}

.flex-block.video.flex-block--reverse .item-text {
    padding-left: 40px;
}

.flex-block.video:not(.flex-block--reverse) .item-text {
    padding-right: 40px;
}

.preview-text {
    padding-bottom: 40px;
}

.a-video {
    display: flex;
    width: 100%;
    position: relative;
}

.flex-block__item.item-video .a-video,
.flex-block__item.item-video .video-preview {
    height: 100%;
}

.video-preview {
    display: grid;
    grid-template-areas: "overlay";
    width: 100%;
    overflow: hidden;
    background: var(--grey);
}

.video-preview img,
.play-btn {
    grid-area: overlay;
}

.video-preview img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    z-index: 1;
}

.play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 105px;
    height: 105px;
    background: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease, background 0.3s ease;
    pointer-events: none;
    z-index: 2;
}

.play-btn svg {
    width: 100%;
    height: 100%;
}

.video-preview:hover .play-btn {
    background: var(--red);
    transform: translate(-50%, -50%) scale(1.1);
}

.flex-block__item.item-img img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.video-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

/*
flex-blocks
*/

.top_section_seminars .child-right img {
    width: 782px;
    height: 325px;
}
.recommend-block {
    display: flex;
    gap: 20px;
}
.recommend-item {
    background: var(--grey-extra-light);
    padding: 20px;
    display: flex;
    align-items: flex-start;
    gap: 20px;
    flex: 1;
}
.rec-image {
    flex: 0 0 110px;
    max-width: 110px;
    max-height: 90px;
}
.rec-image img {
    width: 110%;
    height: auto;
    display: block;
    border-radius: 6px;
}
.rec_newsm {
    flex: 1;
}
.rec-meta span {
    display: block;
}
.print_date {
    font-weight: 600;
    font-size: 18px;
    line-height: 1.4;
}
.it_towns {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    padding: 3px 0 15px 0;
    color: var(--grey-extra-dark);
}
.it_namerec {
    color: var(--grey-extra-dark);
    display: block;
    text-decoration: none;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
}
.it_namerec:hover {
    text-decoration: underline;
}
.no_seminar {
    font-size: 20px;
    color: var(--red);
    margin: 10px 0;
}
.exit a, .auth-link {
    display: flex;
    align-items: center;
    gap: 7px;
}
.exit div.ico {
    height: 32px;
    width: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--red);
    border-radius: 2px;
}
.auth-link div {
    height: 32px;
    width: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 2px;
    background: var(--red);
}
.actualnost .act, .actualnost .for {
    background: var(--grey-extra-light);
    color: var(--grey-extra-dark);
    font-weight: 400;
    font-size: 18px;
    line-height: 1.5;
    padding: 20px;
    margin: 20px 0;
}
.actualnost .act {
    margin-top: 40px;
}
.actualnost .for {
    margin-bottom: 40px;
}
.actualnost h3, .actualnost .h3  {
    font-weight: 500;
    font-size: 28px;
    line-height: 1.4;
}
h2.programm-title {
    font-size: 44px;
    line-height: 1.4;
}
.programm {
    color: var(--default-text-color);
    font-weight: 400;
    font-size: 18px;
    line-height: 1.7;
    margin: 30px 0;
}
.add_sem_data {
    padding: 40px 0 0 0;
    font-size: 18px;
    line-height: 1.7;
    color: var(--default-text-color);
}
.add_sem_data section {
    padding: 0;
}
#city_price {
    font-weight: 700;
}
.bottom_line {
    border-bottom: 1px solid var(--grey-extra-dark);
    padding-bottom: 40px;
    margin-bottom: 40px;
}
.add_sem_data .detail-actions {
    display: flex;
    gap: 10px;
    margin-top: 25px;
    align-items: center;
}
.sidebar .detail-actions {
    margin-top: 20px;
}
.sidebar .detail-actions a {
    margin: 5px 0;
    width: 100%;
}
.btn-ico .icon {
    width: 18px !important;
    height: 18px !important;
    color: var(--plshldr-color);
    transition: transform 0.3s ease;
}
.btn-ico:hover .icon {
    color: white;
}
.event-detail a {
    color: black;
    text-decoration: underline;
}
.event-detail a:hover {
    color: black;
    text-decoration: none;
}
.logos {
    margin: 20px 0;
}
.type_s {
    background: var(--red);
    display: inline-block;
    color: #fff;
    border-radius: 2px;
    padding: 6px 8px 4px 8px;
}
.city, .city span {
    font-size: 20px;
    line-height: 1;
    color: var(--grey-medium);
}
.city {
    padding: 15px 0 30px 0;
}
.detail-cal .b {
    font-weight: 400;
    font-size: 16px;

    .
}
.detail-cal .b .item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 16px;
}
.b .title {
    padding-top: 35px;
}
.to_reg a {
    width: 100%;
}
.r2 .daty {
    display: flex;
    align-items: center;
    gap: 6px;
}
.r2 .date_s {
    display: flex;
    align-items: center;
}
.r2 .num {
    text-align: center;
    min-width: 75px;
}
.r2 .d {
    font-weight: 700;
    font-size: 70px;
    margin-bottom: 4px;
}
.r2 .month {
    font-size: 16px;
    color: var(--plshldr-color);
    text-transform: uppercase;
}
.r2 .dash {
    width: 24px;
    height: 8px;
    margin: -30px 10px 0 10px;
    font-size: 28px;
    font-weight: bold;
    color: #000;
    background: black;
}
.cost {
    display: flex;
    align-items: baseline;
    margin: 20px 0;
    gap: 10px;
}
.price {
    font-weight: 700;
    font-size: 24px;
}
.price.price-old {
    font-weight: 400;
    font-size: 16px;
    text-decoration: line-through;
    color: var(--plshldr-color);
}
.price-discount {
    font-weight: 700;
    font-size: 16px;
    color: var(--red);
}
.btn-ico.js-favorite.fa-heart-o {
    height: unset;
}
.btn-ico.js-favorite.fa.fa-heart {
    border-color: var(--red);
}
.btn-ico.js-favorite.fa-heart:hover {
    background: white !important;
}
.btn-ico.js-favorite.fa-heart .icon {
    color: var(--red);
    fill: var(--red);
}
.pb_0 {
    padding-bottom: 0 !important;
}
.seo {
    line-height: 1.5;
}


/*1100*/
@media (max-width: 1100px) {
    .flex-block .flex-block__item.item-video, .flex-block.picture .flex-block__item.item-img {
        flex: 0 0 50%;
    }

    .flex-block.picture .flex-block__item.item-img, .flex-block .flex-block__item.item-video {
        min-height: unset;
    }

    .top_section_seminars .parent-container {
        align-items: stretch;
    }

    .top_section_seminars .parent-container .child-left, .top_section_seminars .parent-container .child-right {
        display: flex;
        align-items: center;
        flex: 1;
    }

    .top_section_seminars .parent-container .child-right img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
        object-position: center;
    }

    .copyright .child-left {
        order: 2; /* Уходит вниз */
        flex: 1 1 100% !important;
        text-align: center !important;
    }

    .copyright .child-right {
        order: 1; /* Встает наверх */
        flex: 1 1 100% !important;
        text-align: center !important;
        max-width: 100% !important;
    }

    .parent-container.copyright .child-right {
        text-align: center !important;
        max-width: 100%;
    }

    .b-profile, .notauth, .exit {
        font-size: 16px !important;
    }

    .b-wrap-fix {
        padding: var(--content-padding-mob) !important;
    }
}
@media (max-width: 810px) {
.top_section_seminars .parent-container {
	flex-direction: column;
	gap: 0;
}

    .top_section_seminars .child-right {
        width: 100%;
        border-left: 0 none;
        border-bottom: 5px solid var(--red);
        order: 1;
        flex-direction: column;
        flex: 1;
    }

    .top_section_seminars .child-left {
        order: 2;
    }
}
@media (max-width: 980px) {
    .top_menu li {
        padding: 5px !important;
        font-size: 16px !important;
    }

    .container {
        flex-direction: column;
    }

    .main-content, .sidebar {
        flex: 1 1 100%;
        max-width: 100%;
    }

    .wrap-seo {
        width: 90% !important;
        padding: 15px !important;
    }

    .b-panel-top .parent-container {
        align-items: flex-start;
    }

    .b-panel-top .parent-container .child-right {
        padding-top: 0;
        background: var(--grey-extra-light);
        padding-bottom: 10px;
        margin: 0 -20px;
        padding-left: 20px;
        padding-right: 20px;
    }

    #head-center {
        display: none;
    }

    td.left-cont, td.right-cont {
        min-width: 100%;
        display: block;
    }

    .menu__icon {
        display: none;
        width: 45px;
        height: 45px;
        position: relative;
        cursor: pointer;
        background: var(--btn-bg);
        border-radius: 4px;
    }

    .menu__icon span {
        display: block;
        position: absolute;
        height: 2px;
        width: 31px;
        background: #fff;
        opacity: 1;
        left: 7px;
        right: 7px;
        transform: rotate(0deg);
        transition: .25s ease-in-out;
    }

    .menu__icon span:nth-child(1) {
        top: 14px
    }

    .menu__icon span:nth-child(2), .menu__icon span:nth-child(3) {
        top: 21px;
    }

    .menu__icon span:nth-child(4) {
        top: 28px;
    }

    .menu__links-item {
        display: block !important;
        text-align: left;
    }

    .menu__links-item:hover {
        text-decoration: underline;
    }

    ul.menu__links li:last-child {
        padding-bottom: 20px;
    }

    .menu.menu_state_open .menu__icon span:nth-child(1) {
        top: 18px;
        width: 0%;
        left: 50%;
    }

    .menu.menu_state_open .menu__icon span:nth-child(2) {
        transform: rotate(45deg);
    }

    .menu.menu_state_open .menu__icon span:nth-child(3) {
        transform: rotate(-45deg);
    }

    .menu.menu_state_open .menu__icon span:nth-child(4) {
        top: 18px;
        width: 0%;
        left: 50%;
    }

    .menu.menu_state_open .menu__links {
        display: block;
        width: 100%;
        background: none;
    }

    .menu.menu_state_open .menu__links li {
        display: flex !important;
        align-items: center;
    }

    .menu.menu_state_open .menu__links li.cont_info {
        display: block !important;
    }

    .menu__icon {
        display: inline-block;
        margin: 7px 0;
    }

    .menu__links {
        display: none;
        top: 0;
        right: 0;
        left: 0;
        z-index: 1000;
        overflow: auto;
    }

    .top_menu.menu__links .icon_p {
        width: 15px;
        height: 15px;
        opacity: 0.6;
        margin-bottom: 3px;
    }

    .menu__links-item {
        padding: 7px 0;
        width: 100%;
    }

    .socs.s_pad.s_mob .icon {
        width: 40px;
        height: 40px;
    }

    .desktop_hidden.conts .icon {
        width: 16px;
        height: 16px;
    }

    .state_open .top_menu.menu__links {
        overflow-x: auto;
    }

    .title {
        padding: 10px 0;
    }

    .socs.s_pad.s_mob {
        padding: 10px 0;
        display: flex;
    }
}
@media screen and (max-width: 768px) {
    .textpage .it_towns {
        padding-bottom: 0 !important;
    }

    .sidebar {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    .calendar-head {
        font-size: 14px !important;
    }

    .textpage .main-content h1, h1.onindex {
        font-size: 22px;
    }

    .footer {
        margin-top: 60px !important;
    }

    .mainpage .video-grid a:last-child {
        display: none;
    }

    main section.mainpage:first-child {
        display: none;
    }

    .text-mp .preview-text li {
        font-size: 14px !important;
    }

    .video-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 10px;
    }

    .seminars-grid-double {
        gap: 10px;
    }

    .seminars-grid-bottom .seminars-grid-more .btn-primary {
        padding: 12px !important;
        max-width: 130px;
    }

    .mainpage.sections-mp {
        padding-top: 0 !important;
    }

    .sections-grid {
        gap: 5px;
    }

    .sections-grid .item {
        padding: 14px;
    }

    .sections-grid .item_icon {
        width: 26px;
        height: 26px;
    }

    .form-fields, .form-fields input[type="text"], .form-fields input[type="tel"], .form-fields input[type="email"], .form-fields textarea {
        padding: 16px 20px 12px 20px !important;
    }

    .mainpage.sections-mp h1.name, section.mainpage .h1, section.logos_mp .h1 {
        font-size: 30px !important;
    }

    .mainpage.seo-mp h5 {
        font-size: 20px !important;
    }

    section.seo-mp,
    section.mainpage {
        padding-top: 60px !important;
        margin-top: 0 !important;
    }

    img#raichuVideoPoster {
        object-fit: contain !important;
    }

    .event-detail section:first-child {
        padding-top: 0;
    }

    .textcomment, .firm {
        font-size: 14px;
        font-style: normal;
    }

    .author {
        font-size: 16px;
        padding-bottom: 5px;
    }

    .condition_note {
        font-size: 16px;
        line-height: 1.5;
        padding-top: 20px;
    }

    .register_to_seminar .link_to_reg, .register_to_seminar .tel {
        font-size: 16px;
        line-height: 1.5;
        padding-top: 20px;
    }

    .bron_txt {
        font-size: 16px;
        line-height: 1.5;
    }

    .add_sem_data .detail-actions {
        display: block;
    }

    .add_sem_data .detail-actions div {
        margin-bottom: 10px;
    }

    .event-detail h2 {
        font-weight: 500;
        font-size: 24px !important;
        line-height: 1.5;
    }

    .prepods-item {
        margin-top: 10px;
    }

    .prep_name {
        display: flex;
        gap: 16px;
    }

    .prep_name div:last-child {
        display: grid;
        grid-template-columns: min-content;
        text-align: left;
        font-size: 18px;
        line-height: 130%;
    }

    h2.programm-title {
        font-size: 32px !important;
        font-weight: 700;
        margin: 15px 0;
    }

    .programm {
        margin-top: 0;
    }

    .open_same.btn-outline-xl {
        position: relative;
        margin-top: 10px;
        padding: 22px 40px 20px 20px;
        text-align: unset;
        display: inline-flex;
        align-items: center;
    }

    .open_same::after {
        content: '';
        position: absolute;
        right: 20px;
        top: 50%;
        width: 12px;
        height: 12px;
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: translateY(-70%) rotate(45deg);
        transition: transform 0.3s ease;
    }

    .open_same.is-open {
        border-bottom: 0;
    }

    .rec-wrap.side.is-visible {
        display: block !important;
    }

    .rec-wrap.side {
        display: none;
        background: none;
        margin-top: 0;
        border-right: 1px solid #000;
        border-left: 1px solid #000;
        border-bottom: 1px solid #000;
        transition: transform 0.3s ease;
    }

    .open_same.is-open::after {
        transform: translateY(-20%) rotate(-135deg) !important;
    }

    .prepods-wrap {
        display: block;
    }

    .btn-outline-xl:not(.btn-big),
    .btn-primary-xl:not(.btn-big),
    .btn-primary:not(.btn-big) {
        padding: 13px 30px !important;
    }

    .sidebar:not(.texts) {
        order: 1;
        margin-top: 0;
    }

    .main-content:not(.texts) {
        order: 2;
    }

    .actualnost .act {
        margin-top: 0;
    }

    .actualnost {
        margin: 0 -20px;
    }

.actualnost h3, .actualnost .h3  {
        font-size: 24px;
    }

    .sp-profile .icon_p {
        height: 25px !important;
        width: 19px !important;
    }

    .sp-profile .icon_ch {
        color: var(--grey);
    }

    .sp-profile.js_link_open {
        cursor: pointer;
        border: 1px dashed var(--grey);
        border-radius: 2px;
        margin-right: 10px;
        padding-left: 5px;
    }

    .sp-profile.js_link_open.active-profile,
    .sp-profile.js_link_open:hover {
        border: 1px dashed var(--red);
    }

    section {
        display: block;
        padding: 25px 0;
    }

    .top_heart .icon, .top_heart #awelite_favorites_equation.favorite_active .icon {
        width: 22px;
        height: 22px;
    }

    .notauth .icon, .exit .icon {
        width: 20px;
        height: 20px;
    }

    .auth-link div {
        height: 24px;
        width: 24px;
    }

    .top_heart .icon {
        width: 24px;
        height: 24px;
    }

    p, b, strong {
        font-size: 16px;
        line-height: 1.5;
    }

    .recommend-block {
        flex-direction: column;
        gap: 15px;
    }

    .recommend-item {
        flex-direction: column;
        gap: 15px;
    }

    .flex-block__item.item-text {
        font-size: 16px;
        line-height: 1.5;
    }

    .flex-block, .flex-block--reverse {
        flex-direction: column;
    }

    .flex-block.video:not(.flex-block--reverse) .item-text {
        padding-right: 0;
        padding-bottom: 30px;
    }

    .flex-block.video.flex-block--reverse .item-text {
        padding-left: 0;
        padding-top: 30px;
    }

    .item-video, .item-img {
        width: 100% !important;
        height: auto !important;
    }

    section.events table tr.seminar-row td {
        display: block;
    }

    .parent-container.poisk .child-left {
        display: none;
    }

    header .bx-breadcrumb .bx-breadcrumb-item span, header .bx-breadcrumb i, header .bx-breadcrumb, header .bx-breadcrumb a {
        font-size: 12px !important;
    }

    .page h1 {
        padding: 0 !important;
        margin: 0;
        font-size: 22px !important;
        line-height: 1.4;
    }

    header .left-menu1 li {
        text-align: center;
    }

    header .left-menu1 li a {
        font-size: 15px !important;
        font-weight: 600 !important;
    }

    header .left-menu1 li {
        line-height: 16px;
    }

    .top-icons.desktop_hidden {
        gap: 15px;
        display: flex !important;
    }

    .desktop_hidden {
        display: block !important;
    }

    .mob_hidden {
        display: none !important;
    }

    #title_search {
        position: fixed;
        top: -110px;
        left: 0;
        width: 100%;
        height: 110px;
        background: #fff;
        z-index: 2000;
        transition: transform 0.3s ease;
        display: flex;
        align-items: center;
        padding: 0 15px;
    }

    #title-search {
        width: 86%;
        margin: 0 0 0 30px;
    }

    #title_search.active {
        transform: translateY(110px); /* Выезжает вниз */
    }

    .search-close {
        display: block !important;
        position: absolute;
        left: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 32px;
        cursor: pointer;
        padding: 0 15px 0 0;
    }

    .aside.aside_top {
        margin: 0 -15px;
    }

    .aside.aside_top .child-right {
        /*display: none;*/
    }

    .aside_top .child-left {
        padding: 0 15px !important;
    }

    .pers_menu {
        left: auto !important;
        right: 0 !important;
    }

    .mob_hidden {
        display: none !important;
    }

    .menu_state_open .menu__links {
        display: block;
        max-height: calc(100vh - 110px);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .b-panel-top.b-panel-top--active {
        bottom: 0;
    }

    .b-panel-top.b-panel-top--active .child-left {
        order: 2;
        width: 100%;
        position: relative;
    }

    .desktop_hidden.pers.grey {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .grey {
        background: var(--grey-extra-light);
    }

    .header {
        display: none;
    }

    .left-menu1 {
        text-align: left;
    }

    #head-logo-mob img {
        height: 45px;
    }

    .b-panel-top .parent-container {
        gap: 5px;
    }

    .b-panel-top .child-left {
        order: 2;
        flex: 1 1 100%;
        display: flex;
        justify-content: space-between;
    }

    .b-panel-top .child-right {
        order: 1;
        flex: 1 1 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    #head-logo-mob {
        padding-top: 7px;
    }

    .login_link {
        display: none;
    }

    .top_menu.menu__links {
        position: absolute;
        top: 60px;
        padding-bottom: 160px;
    }



    .top_menu.menu__links li {
        border-bottom: 1px solid #ccc;
    }

    .desktop_hidden.conts {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .f_menu .child-left, .f_menu .child-right {
        flex: 1 1 100%
    }

    .copyright .child-left, .copyright .child-right {
        font-size: 14px;
    }

    .copyright .child-left, .copyright .child-right {
        font-size: 14px;
    }

    .f_socs {
        margin: 25px 0 15px 0 !important;
    }

    ul.left-menu2 {
        text-align: center !important;
        padding: 0 0 15px 0 !important;
    }

    ul.left-menu2 li a {
        text-align: center;
        font-size: 14px !important;
    }

    ul.left-menu2 li {
        padding: 0 0 15px 0 !important;
    }

    .footer div {
        text-align: center !important;
    }

    .parent-container.copyright .child-right {
        font-size: 14px;
    }

    h1 {
        font-size: 30px !important;
    }

    h2, .rh2  {
        font-size: 22px !important;
    }

    section.events .sidebar {
        display: none;
    }

    .top_section_seminars .child-left {
        padding: 15px !important;
    }

    .page {
        margin-top: 110px !important;
    }
}
.page {
    margin-top: 60px;
}
.top_menu.menu__links {
    padding-left: 0;
}
.b-panel-top a, .notauth a:hover {
    text-decoration: none
}
.fixed-menu {
    position: fixed;
    top: 0;
    width: 100%;
    background: white;
    transition: box-shadow 0.3s ease;
    z-index: 954;
}
/*
.b-wrap-fix {
    transition: box-shadow 0.3s ease;
}
.b-wrap-fix.has-shadow {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}*/
.fixed-menu--scrolled {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
.b-panel-top.fixed-menu.b-panel-top--active {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
#head-center, .areawrap, .areawrap textarea, .aside, .datepick, .slidem img {
    overflow: hidden
}
.aside .pan-right, .break2, .city-c, .showbig-c, .tire {
    text-align: center
}
.profile-div p, ul {
    list-style: none
}
.clear, .clr {
    clear: both
}
.lang-menu li {
    font-size: 12px;
    display: inline-block;
    zoom: 1
}
.top_menu li {
    display: inline-block;
    zoom: 1;
    padding: 23px 10px;
    font-weight: 400;
    font-size: 18px;
    line-height: 1;
}
.top_menu li.selected {
    background-color: #fff;
    position: relative;
    height: 28px;
    border-bottom: 15px
}
.top_menu li.selected a {
    position: relative;
}

.b-panel-top {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
}
.b-panel-top a {
    color: #343434;
    -webkit-transition: .2s linear;
    -moz-transition: .2s linear;
    -o-transition: .2s linear;
    transition: .2s linear
}
td.right-cont {
    max-width: 331px;
}
.lang-menu a:hover, .lang-menu li.selected a, .top_menu a:hover {
    color: var(--red)
}
.b-panel-top td {
    vertical-align: top
}
.b-wrap-fix {
    max-width: var(--content-w);
    margin: 0 auto;
    padding: var(--content-padding);
}
.lang-menu {
    margin-top: 7px
}
.lang-menu li {
    padding-top: 6px;
    padding-left: 4px;
    height: 20px;
    width: 20px
}
.lang-menu li.selected {
    background-image: url(/img/lang.png);
    background-repeat: no-repeat;
    background-position: center;
    padding-left: 6px
}
.divcenter {
    margin: 0 auto
}
.b-profile, .notauth {
    font-weight: 400;
    font-size: 18px;
}
.b-profile, .pers_menu {
    z-index: 999
}
.break {
    width: 0;
    height: 40px;
    border-left: 1px solid #e1e3e4;
    border-right: 1px solid #fff
}
.b-profile a:hover, .notauth a:hover {
    color: var(--red);
    border: 0
}
.break-td {
    width: 2px
}
.aside_top .child-left {
    background: var(--grey-extra-light);
    padding: 0 30px;
}
.aside_top .child-left, .aside_top .child-right {
    flex: 1 1 calc(50% - 15px);
    box-sizing: border-box;
}
.aside_top .parent-container {
    gap: 0;
}
header .pan-right {
    text-align: right;
}
.b-profile {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: right;
}
.pers_menu {
    display: none;
    position: absolute;
    padding: 15px;
    top: 32px;
    left: 0;
    white-space: nowrap;
    background: var(--grey-extra-light);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    width: 220px;
    text-align: left;
}
.ang, .ang-white, .angl, .angup {
    display: inline-block;
    background-repeat: no-repeat
}
.pers_menu ul {
    padding: 0;
}
.pers_menu li a {
    display: block;
    padding: 7px 0;
    opacity: 1
}
.pers_menu li:hover {
    color: var(--red);
}
.notauth a.js_link {
    text-decoration: none !important
}
.notauth a {
    text-decoration: underline;
    font-size: 18px;
}
.notauth .icon {
    width: 22px;
    height: 22px;
}
.exit {
    margin-left: 5px;
    font-weight: 400;
    font-size: 18px;
}
.icon:hover {
    color: var(--red);
}
.exit .icon {
    height: 25px;
    width: 22px;
    padding-bottom: 2px;
}
.sp-profile.js_link_open {
    display: flex;
    align-items: center;
    transition: transform 0.3s ease;
}
.sp-profile .icon_p {
    height: 35px;
    width: 25px;
    fill: var(--grey);
    color: var(--grey);
    transition: transform 0.3s ease;
}
.sp-profile .icon_ch {
    transition: transform 0.3s ease;
    height: 30px;
    width: 30px;
}
.sp-profile:hover .login_link,
.sp-profile:hover .icon,
.active-profile .icon,
.active-profile .login_link {
    fill: var(--red) !important;
    color: var(--red) !important;
}
.sp-profile:hover .login_link,
.active-profile .login_link {
    border-bottom: 1px dashed white !important;
}
.sp-profile:hover .icon_ch,
.active-profile .icon_ch {
    transform: rotate(180deg);
}
.dashed {
    padding: 5px 0 1px 7px;
    margin-right: -5px;
}
.sp-profile span {
    display: flex;
    align-items: center;
    gap: 10px;
}
.sp-profile.js_link_open,
.sp-profile .icon {
    cursor: pointer;
}
.ang, .ang-white {
    zoom: 1;
    background-position: 0 4px;
    height: 16px;
    width: 15px
}
.angl, .angup {
    padding-right: 15px;
    background-position: right center;
    cursor: pointer
}
.banner, .city-l {
    background-position: 0 0
}
.ang, .angl {
    background-image: url(/img/ang.png)
}
.ang-white {
    background-image: url(/img/angwh.png)
}
.angup {
    background-image: url(/img/ang_up.png)
}
.js_link:not(.btn-outline-xl) {
    text-decoration: none;
    border-bottom: 1px dashed
}
.header {
    width: 100%;
    max-width: 100%;
    margin: 15px auto;
    padding: 0;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 110px;
}
header .icon, footer .icon {
    width: 40px;
    height: 40px;
}
.f_socs a, .socs a {
    margin-right: 10px;
}
.f_socs a:last-child, .socs a:last-child {
    margin-right: 0;
}
/* Логотип — слева */
#head-logo {
    flex: 0 0 auto;
}
#head-logo img {
    display: block;
    height: 76px;
    width: auto;
    max-width: 220px;
}
/* Центральный блок (баннер/реклама) */
#head-center {
    flex: 1 1 auto;
    text-align: center;
    min-width: 200px;
}
#head-center img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
    max-height: 110px;
}
/* Блок с телефонами и соцсетями — справа */
#head-phone {
    flex: 0 0 auto;
    text-align: right;
}
.inner-phone {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
}
.s_pad {
    padding: 3px 0;
}
.phone-box .code, .phone-box .number {
    font-size: 1.2em;
    font-weight: 700;
    text-align: right;
}
.phone-box {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
    font-size: 1.3em;
}
.phone-box .code {
    color: var(--plshldr-color);
}
.phone-box .number a {
    color: var(--default-color);
    text-decoration: none;
    font-weight: bold;
}
.phone-box .number a:hover {
    text-decoration: underline;
    color: #0066cc;
}
.soc-box {
    margin-top: 6px;
    font-size: 0.95em;
    color: #555;
}
.soc-box img {
    width: 32px;
    height: 32px;
    margin-left: 10px;
    vertical-align: middle;
}
.artg-box, .show-box {
    display: inline-block !important
}
.banner {
    width: 517px;
    height: 102px;
    background-image: url(/img/train2.png);
    background-repeat: no-repeat
}
.inner-phone {
    position: relative;
    z-index: 100
}
.city-box {
    position: relative;
    background-image: url(/img/townc.png);
    background-repeat: repeat-x;
    height: 32px;
    width: 170px
}
.city-l, .city-r {
    position: absolute;
    top: 0;
    background-image: url(/img/town.png);
    background-repeat: no-repeat;
    width: 4px;
    height: 32px;
    background-color: #fff
}
.city-box a {
    color: #fff;
    font-weight: 700;
    font-size: 14px
}
.city-box a:hover {
    color: #000
}
.city-c {
    padding: 4px 10px 4px 15px
}
.city-l {
    left: 0
}
.city-r {
    right: 0;
    background-position: -4px 0
}
.artg-box {
    zoom: 1;
    position: relative !important;
    background-image: url(/img/artg-c.png) !important;
    background-repeat: repeat-x !important;
    height: 20px !important
}
.artg-l, .artg-r {
    top: 0;
    background-repeat: no-repeat !important;
    background-position: 0 0 !important;
    height: 20px !important;
    background-color: #fff !important
}
.artg-box a, .artg-box a:hover {
    color: #fff !important;
    font-size: 11px !important;
    text-decoration: none !important;
    font-weight: 400 !important;
    line-height: 14px !important;
    padding: 0 !important;
    margin: 0 !important
}
.artg-box:hover .artg-l {
    background-image: url(/img/artg-l-h.png) !important
}
.artg-box:hover {
    background-image: url(/img/artg-c-h.png) !important
}
.artg-box:hover .artg-r {
    background-image: url(/img/artg-r-h.png) !important
}
.artg-c {
    padding: 3px 13px 4px 9px !important;
    height: 20px !important
}
.artg-l {
    position: absolute;
    left: 0;
    background-image: url(/img/artg-l.png) !important;
    width: 2px !important
}
.artg-r {
    position: absolute !important;
    right: 0;
    background-image: url(/img/artg-r.png) !important;
    width: 7px !important
}
.show-box, .show-c {
    height: 30px;
    line-height: 30px
}
.grey-arr {
    background-color: #f0f0f0 !important
}
.text-red {
    color: var(--red);
}
.show-box {
    vertical-align: middle;
    zoom: 1;
    position: relative !important;
    background-image: url(/img/show-c.png) !important;
    background-repeat: repeat-x !important;
    font-size: 15px;
    font-weight: 700;
    padding: 0 !important
}
.block_cat, .content .full td, .footer td, .icons, .main-news .full td, .precontent .full td, .rubr_ul, .ul_cat td {
    vertical-align: top
}
.break3 {
    display: inline-block;
    zoom: 1
}
.show-box a, .show-box a:hover {
    color: #fff !important;
    font-size: 12px !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    padding: 0 !important;
    margin: 0 !important
}
.aside a {
    text-decoration: none
}
.show-c {
    padding: 0 10px;
    width: 55px;
    font-size: 0
}
.show-l, .show-r {
    top: 0;
    background-repeat: no-repeat !important;
    width: 2px !important;
    height: 30px !important;
    background-color: #fff !important
}
.show-l {
    position: absolute;
    left: 0;
    background-image: url(/img/show-l.png) !important
}
.show-r {
    position: absolute !important;
    right: 0;
    background-image: url(/img/show-r.png) !important
}
.RSS-link, .break3, .c-slide-left, .c-slide-right, .cal-ico, .cur_ico,  .pan-right .first-word, .spis-ico, .subscribe, .tag-ico, .with_menu, .wrap-seo {
    background-repeat: no-repeat
}
.precontent {
    background-color: #f0f0f0
}
.show-box:hover {
    background-image: url(/img/show-c-h.png) !important
}
.show-box:hover .show-l {
    background-image: url(/img/show-l-h.png) !important
}
.show-box:hover .show-r {
    background-image: url(/img/show-r-h.png) !important
}
.phone-box span.number a.call2, .phone-box span.number a.call2:hover {
    color: #000 !important;
    text-deccoration: none !important;
}
.telefon {
    color: #8b959b;
    font-size: 8px;
    padding-left: 63px;
    padding-bottom: 3px;
    letter-spacing: 1px
}
.auth-link, .reg-link {
    border-bottom: none !important;
}
.aside a {
    color: #000;
    -webkit-transition: .2s linear;
    -moz-transition: .2s linear;
    -o-transition: .2s linear;
    transition: .2s linear
}
.aside a:hover {
    color: var(--red);
}
.aside table td {
    padding: 12px 0;
    font-size: .7em
}
.first-word {
    font-size: 1.2em
}
.break2 {
    width: 55px;
    color: #afafaf
}
.aside .pan-right {
    width: 218px
}
.break3 {
    background-image: url(/img/break3.png);
    width: 6px;
    height: 9px
}
.pan-right .first-word {
    background-image: url(/img/search.png);
    background-position: 0 3px;
    width: 14px;
    height: 14px;
    padding-left: 25px
}
.precontent {
    padding: 12px 0 12px 12px
}
.precontent table {
    background-color: #fff
}
.icons {
    padding-top: 2px
}
.precontent .pan-right {
    background-color: #f0f0f0
}
.c-num {
    font-size: 2.3em;
    font-weight: 700;
    line-height: 1em
}
.c-month {
    line-height: .8em;
    font-weight: 700;
    font-size: .6em;
    text-transform: uppercase
}
.c-town {
    color: #929da3;
    font-size: .75em
}
.inl-cal-dat {
    height: 45px;
    width: 45px;
    float: left
}
.tire {
    width: 23px !important;
    padding-right: 3px
}
.c-cats {
    margin-top: 7px;
    color: #929da3
}
.c-cats a {
    font-size: .6em;
    color: #929da3;
    text-decoration: none
}
.c-slide-left, .c-slide-right {
    position: absolute;
    width: 13px;
    height: 20px;
    background-image: url(/img/slide.png);
    top: 50px;
    cursor: pointer
}
.c-slide-right {
    right: -12px;
    background-position: -13px 0
}
.c-slide-left {
    background-position: 0 0;
    left: -12px
}

.cal-ico, .spis-ico, .tag-ico {
    width: 24px;
    height: 24px
}
.spis-ico {
    background-image: url(/img/cal-icon.png)
}
.tag-ico {
    background-image: url(/img/cal2-icon.png)
}
.cal-ico {
    background-image: url(/img/cal3-icon.png)
}
.cur_ico {
    width: 30px;
    height: 19px;
    margin-left: 12px;
    margin-top: 8px;
    padding: 10px 8px
}
.cur_ico:hover {
    background-image: url(/img/cur_icon.png)
}
.cur_ico:hover .spis-ico {
    background-image: url(/img/cal-icon-h.png)
}
.cur_ico:hover .tag-ico {
    background-image: url(/img/cal2-icon-new.png)
}
.cur_ico:hover .cal-ico {
    background-image: url(/img/cal3-icon-new.png)
}
.sub_menu a, .tags .full a {
    display: block;
    font-size: .7em;
    text-decoration: none;
    color: #267cb3;
    padding: 3px 0
}
.cloud, .tags {
    padding-left: 15px
}
.kurs a:hover, .tags .full a:hover {
    color: #000;
    text-decoration: underline
}
.tags {
    padding-top: 7px
}
.cloud {
    padding-top: 14px
}
.rubr_ul {
    width: 47%;
    display: block;
    float: left;
    border-bottom: 1px solid #f0f0f0;
    margin-right: 17px;
    padding-bottom: 6px;
    padding-top: 3px;
    font-size: .7em
}
.nobord {
    border-bottom: 0 !important
}
.rubr_ul li a {
    text-decoration: none;
    color: #267cb3;
    line-height: 18px
}
.rubr_ul li a:hover {
    color: #000;
    text-decoration: underline
}
.content {
    padding: 30px 0;
}
.mainpage-layout.fullmainpage {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin: 0 auto;
    max-width: 100%;
}
.right-cont {
    flex: 0 1 440px;
    max-width: 440px;
    min-width: 320px;
}
.left-cont {
    flex: 1 1 0;
    min-width: 0;
}
.left-wrap .events {
    display: block;
    padding: 15px;
    margin: 15px 0;
    background: var(--grey-extra-light);
}
.left-wrap .dates {
    width: 24%;
}
.right-wrap {
    padding: 30px;
}
@media (max-width: 1200px) {

    .sidebar {
        flex: 0 0 340px;
        max-width: 340px;
    }

    .side_form, .swipe_side {
        padding: 15px !important;
    }

    .calendar-head {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    .mainpage-layout.fullmainpage {
        flex-direction: column;
    }

    .calend-slide {
        font-size: 16px !important;
    }

    .city, .city span, .r2 .month {
        font-size: 14px !important;
    }

    .right-cont {
        order: -1;
        width: 100%;
        flex: 0 0 auto;
        max-width: none;
        min-width: 0;
    }

    .left-cont {
        order: 0;
    }

    .right-wrap, .left-wrap {}
}
@media (max-width: 576px) {
    .mainpage.sections-mp h1.name, section.mainpage .h1, section.logos_mp .h1 {
        font-size: 25px !important;
    }
    .f_socs a {
        margin-right: 0px;
    }

    .news_all {
        display: none;
    }

    .icon_type {
        height: 26px;
        width: 33px;
    }

    .item-title {
        font-size: 22px;
        line-height: 1.2;
    }

    .type-grid {
        gap: 0;
    }

    .goto_row_b {
        position: unset;
    }

    .grid-item.item-tall {
        display: flex;
        justify-content: space-between;
    }

    .type-grid .left-side {
        display: block;
    }

    .type-grid .grid-item {
        min-height: 170px;
        margin-bottom: 5px;
    }

    .flex-block.picture .item-text {
        padding: 20px;
    }

    section.events table td.seminar-name, section.events table td.seminar-name a {
        font-weight: 400;
        font-size: 16px;
    }

    .btn-primary, .btn-primary-xl, .btn-outline, .btn-outline-xl {
        width: 100%;
    }

    .mainpage-layout.fullmainpage {}
}
.content .h2, .content h2, .main-news .h2, .main-news h2 {
    color: var(--red);
    font-weight: 700;
}
table.full  .cont-month {
  min-width: 120px;
  display: block;
}
.cont-date, .cont-month {
    font-weight: 600;
    font-size: 18px;
    line-height: 1.4;
    white-space: nowrap;
    text-transform: lowercase
}
.cont-town {
    color: var(--grey-extra-dark);
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
}
.big {
    font-size: 2.1em !important;
    line-height: .9em !important
}
.blizh-item .cont-date {
    display: inline
}
.blizh-item {
    line-height: 1.5em
}
.blizh-wrap .h2, .blizh-wrap h2 {
    font-size: 12px;
    padding-top: 1px;
    font-weight: 700
}
.but_text a {
    font-size: 12px;
    font-family: "Inter", sans-serif;
    padding: 0 !important;
    text-decoration: none;
    margin-top: 3px;
    display: block
}
.sub, .sub a {
    color: #8b959b !important;
    font-size: 11px
}
.blizh-wrap a:hover, .sub a {
    text-decoration: underline
}
.k-links, .sub {
    margin-top: 10px
}
.sub a {
    font-family: "Inter", sans-serif;
    font-weight: 400
}
.youget {
    margin-top: 30px;
    margin-bottom: 18px
}
.youget .h4 {
    font-weight: 700;
    color: var(--red);
    font-size: .8em
}
.button {
    margin-top: 10px;
    position: relative
}
.but_text {
    background-color: #929da3;
    margin-right: 6px;
    padding: 0 8px
}
.but_text a {
    color: #fff
}
.but_text a:hover {
    color: #fff;
    text-decoration: none
}
.but_left {
    position: absolute;
    width: 6px;
    height: 20px;
    top: 0;
    right: 0;
    background-image: url(/img/arr.png);
    background-repeat: no-repeat
}
.button:hover .but_text {
    background-color: #bac8d0
}
.button:hover .but_left {
    background-image: url(/img/arr2.png)
}
.kurs ul {
    margin-top: 5px
}
.kurs li {
    color: #929da3;
    font-size: .7em;
    margin: 10px 0;
    line-height: 1em
}
.grey-break, .redbreak {
    font-size: 0;
    width: 100%
}
.redbreak {
    margin-bottom: 18px;
    margin-top: 20px;
    height: 3px;
    background-color: var(--btn-bg)
}
.grey-break {
    margin: 20px 0;
    height: 1px;
    background-color: #d3d7d8
}
.categor, .clients-slide, .sub_menu {
    background-color: #f0f0f0
}
.footer {
    background-color: var(--grey-extra-light);
}
.break-auth {
    margin-bottom: 0 !important
}
.subscribe {
    padding-left: 85px;
    background-image: url(/img/subscr.png);
    background-position: 22px 3px
}
.seo-part {
    background: #F7F7F7;
}
.seo-part .h2, .seo-part h2, .subscribe .h2, .subscribe h2 {
    font-family: "Inter", sans-serif;
    color: #000;
    font-weight: 700;
    font-size: 14px
}
.left-cont {
    min-width: 100%;
}
.semurl .sema {
    color: #000;
    font-weight: 700;
    font-size: 1.1em;
    text-decoration: none;
}
.kurs {
    padding: 10px 10px 22px 14px;
    background-color: #f0f0f0;
    margin: 0 25px;
}
.bann {
    text-align: center;
    margin-top: 25px;
}
.blizh-wrap a {
    color: #000;
    text-decoration: none;
}
.recnewsm a {
    color: #000;
}
.subscribe p {
    font-size: .7em;
    margin-top: 3px;
    margin-bottom: 10px
}
.subscribe input.sbscr {
    color: #757575;
    font-size: 12px
}
.RSS {
    padding-left: 15px
}
.RSS span {
    color: #8b959b;
    font-size: 12px
}
.RSS a {
    color: #8b959b;
    font-size: 14px;
    font-weight: 700
}
.RSS-link {
    float: right;
    font-weight: 400 !important;
    color: #8b959b !important;
    font-size: 11px !important;
    text-decoration: underline !important;
    padding-top: 2px;
    padding-right: 17px !important;
    background-image: url(/img/RSSb.png);
    background-position: right center
}
.reload_block .r1, .swipe_side .r1 {
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.r1 .js-favorite .icon, .r1 .js-favorite.fa-heart-o {
    width: 40px;
    height: 40px;
    transition: 0.3s;
}
 .text_ban, .town_tabs {
    float: right
}
.clients-slide {
    margin-top: 22px;
    font-size: .9em;
    padding: 14px
}
.clients-slide .h2, .clients-slide h2, .subscr-text .h2, .subscr-text h2 {
    font-family: "Inter", sans-serif;
    font-size: 14px;
    color: #000;
    font-weight: 700
}
.clients-slide .c-slide-window {
    margin: 10px 0 0;
    padding: 10px;
    height: 40px;
    border: 0
}
.menu_name, .with_menu {
    height: 16px;
    display: inline-block;
    zoom: 1
}
.main-news {
    font-size: .8em;
    margin-bottom: 40px
}
.main-news .button {
    margin-top: 0
}
.news-table {
    margin-top: 25px
}
.news-item td.news-info {
    padding-left: 20px;
    padding-right: 10px
}
.news-item a {
    color: #4b4b4b;
    text-decoration: none
}
.det-tags a, .news-item a:hover {
    text-decoration: underline
}
.news-date {
    color: #8b959b;
    font-size: 11px;
    margin-top: 7px
}
.seo-part {
    padding-top: 40px;
    font-size: .9em;
    border-bottom: 2px solid #fff;
    padding-bottom: 25px
}
.wrap-seo {
    margin: 0 auto;
    width: 715px;
    padding-left: 118px;
    background-image: url(/img/logo-sm.png);
    padding-right: 100px
}
.newseo {
    background-image: url(/img/newseo.png) !important;
    padding-left: 45px !important;
    width: 765px
}
.wrap-seo p {
    font-size: 11px;
    padding-top: 18px;
    line-height: 1.7em;
    color: #4b4b4b
}
.seo-inf {
    padding-top: 7px !important
}
.footer {
    margin-top: 120px;
    padding: 35px 0 30px 0;
}
a.calltophone {
    color: #6e6e6e !important;
    text-decoration: none;
}
a.calltophone:hover {
    text-decoration: none;
}
.footer b, .footer h3 {
    color: #000;
    font-size: 12px
}
.b-bread, .b-bread a, .det-tags a, a.sm-gr, header .bx-breadcrumb, header .bx-breadcrumb a {
    color: var(--grey-dark);
    font-family: Inter;
    font-size: 16px;
    font-weight: 400;
}
header .bx-breadcrumb .bx-breadcrumb-item span {
    font-size: 16px;
    white-space: normal;
}
header .bx-breadcrumb i {
    color: var(--grey-dark);
    line-height: 16px;
    font-size: 16px;
    vertical-align: middle;
    margin-right: 10px;
    font-weight: bold !important;
}
header .bx-breadcrumb .bx-breadcrumb-item {
    line-height: 16px;
    font-size: 16px;
    font-weight: 400;
}
.footer form {
    margin: 5px 0
}
.b-bread, .bx-breadcrumb {
    padding: 25px 0;
    position: relative;
    margin: 0 !important;
}
.bord_menu {
    padding: 2px 5px 2px 12px;
    border: 1px solid #d6d6d6;
    width: 222px;
    display: inline-block;
    zoom: 1
}
 .text_ban {
    border: 1px solid #f0f0f0
}
.with_menu {
    width: 12px;
    background-image: url(/img/arrd.png);
    background-position: 5px 6px;
    text-decoration: none !important
}
.menu_name {
    text-decoration: underline !important
}
a.sm-gr {
    text-decoration: underline
}
h1 {
    font-family: Inter;
    font-weight: 500;
    font-size: 44px;
    line-height: 1.2;
    color: black;
}
h2, .rh2 {
    font-family: Inter;
    font-weight: 500;
    font-size: 32px;
    line-height: 1.4;
    color: black;
}
.event-detail h1 {
    font-size: 32px;
    line-height: 1.4;
}
.programm {
    max-height: 500px;
    overflow: hidden;
    position: relative;
    transition: max-height 0.5s ease;
}
.programm.is-full {
    max-height: 100%;
}
.programm::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
    transition: opacity 0.3s;
}
.programm.is-full::after {
    opacity: 0;
    pointer-events: none;
}
.read_more {
    margin-top: 15px;
}
.btn-overflow {
    cursor: pointer;
    display: inline-block;
    padding: 20px 30px !important;
}
.sub_menu a, .text_page {
    font-size: .8em
}
.sem_detail h1 {
    text-transform: none !important
}
.categor, .sub_menu {
    padding: 12px
}
.sub_menu ul {
    background-color: #fff;
    padding: 0 20px 10px;
    margin: 0
}
.cal-text, .subscr-text {
    background-color: #f0f0f0
}
.sub_menu li {
    display: inline-block;
    zoom: 1;
    margin-top: 10px;
    padding-right: 21px
}
.sub_menu li.selected a {
    color: #8b959b
}
.menu_br, .sub_menu li.selected span {
    color: #8b959b;
    font-size: .8em
}
.text_page {
    padding-top: 22px
}
.text_page p {
    padding: 10px 0;
    line-height: 1.4em
}
.subscr-text {
    padding: 13px 35px 17px 18px
}
.subscr-text p {
    padding: 13px 0;
    font-size: .7em
}
.both_marged {
    margin: 20px 0
}
.both_margedsub {
    margin: 20px 0;
    padding: 13px 35px 17px 19px !important
}

.text_ban {
    display: inline-block;
    zoom: 1;
    padding: 15px;
    width: 120px;
    height: 180px;
    margin-left: 30px
}
#block_1 {
    width: 303px
}
#block_2 {
    width: 304px
}
#block_3 {
    width: 295px
}
.block_cat {
    display: inline-block;
    zoom: 1
}
.ul_cat td {
    padding-bottom: 10px
}
.ul_cat p {
    padding: 1px 0
}
.ul_cat label {
    font-size: 11px;
    display: inline-block;
    zoom: 1;
    vertical-align: bottom;
    color: #267cb3;
    padding-left: 7px;
    width: 90%
}
.categor_inner td, .ul_cat input {
    vertical-align: top
}
.ch_sp {
    color: #8b959b;
    font-size: 14px;
    font-weight: 700;
    padding-left: 10px
}
* html #block_1 {
    display: inline !important
}
.town_tabs li {
    display: inline-block;
    zoom: 1
}
.categor_inner {
    background-color: #fff;
    padding: 10px 20px
}
.categor_inner .link-kol {
    color: #8B959B;
    font-size: 12px
}
.categor_inner p {
    padding: 4px 25px 4px 0;
    margin: 0
}
.categor_inner td {
    padding-right: 10px
}
.categor_inner a {
    text-decoration: none;
    color: #267cb3;
    padding: 3px 0;
    font-size: 12px
}
.categor_inner a:hover, .sub_menu a:hover, .vert_menu a:hover {
    text-decoration: underline;
    color: #000
}

.town_tabs a {
    color: #000;
    text-transform: uppercase;
    text-decoration: underline
}
.cur-town a, .town_tabs a:hover, .vert_menu a {
    text-decoration: none
}
.town_tabs a:hover {
    color: #000
}
.town_tabs li {
    padding: 12px 11px;
    font-size: .7em
}
.erase, .vert_menu li {
    font-size: 0
}
.town_tabs li.cur-town {
    background-color: #f0f0f0;
    text-decoration: none;
    color: #000;
    text-transform: uppercase
}
.erase, .vert_menu {
    background-color: #fff;
    position: absolute
}
.vert_menu {
    border: 1px solid #d6d6d6;
    width: 290px;
    top: 31px;
    left: 64px;
    z-index: 8000;
    display: none
}
@-moz-document url-prefix() {
    .vert_menu {
        left: 63px
    }
}
.erase {
    z-index: 50000;
    height: 2px;
    width: 167px;
    left: 0;
    top: -2px
}
.vert_menu ul {
    padding: 10px 12px
}
.vert_menu a {
    color: #267cb3;
    padding: 2px 0;
    display: block
}
.datepick, .search-param a, .search-res-span, .slash {
    color: #939ea4
}
.search-param {
    padding: 12px;
    background-color: #f0f0f0;
    font-size: .8em;
    position: relative
}
.search_theme td {
    background-color: #fff;
    padding: 12px
}
.calend-s td, .search_city td, .search_date td {
    background-color: #f0f0f0
}
.search_date td {
    padding: 12px 12px 0
}
.search_city td {
    padding: 12px 12px 0;
}
.calend-s td {
    font-size: 1.1em;
    padding: 3px 12px
}
.param_name {
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 10px;
    line-height: 1.2;
}

.butse .form-field {
    display: block;
    width: 100%;
    height: 39px;
    border: 1px solid var(--grey);
    padding: 0 15px;
    transition: border-color 0.2s ease-in-out;
}


.butse .form-field:hover {
    border-color: #000;
}

.parent-container.copyright {
    font-weight: 400;
    font-size: 16px;
    color: var(--grey-extra-dark);
}
.parent-container.copyright .child-right {
    text-align: right;
    max-width: 580px;
    line-height: 24px;
}
.f_socs {
    margin: 15px 0 10px 0;
}
a.f_tel {
    font-weight: 700;
    font-size: 26px;
    padding: 5px 0;
    color: var(--red);
}
a.f_email {
    font-weight: 400;
    font-size: 18px;
    text-decoration: underline;
    color: var(--text);
    padding-top: 10px;
}
.f_conts a {
    display: block;
}
.footer .parent-container.f_menu {
    align-items: flex-start;
    padding-top: 15px;
}
.slash {
    padding: 0 7px
}
.todel {
    font-size: 12px;
    padding-top: 3px;
    padding-bottom: 3px
}

.modif {
    padding: 8px 10px 10px 55px;
    background-position: 7px center
}
.datepick {
    vertical-align: middle;
    background-color: #fff;
    height: 30px;
    line-height: 30px;
    padding: 0;
    font-weight: 700;
    font-size: 16px;
    display: inline-block;
    zoom: 1;
    background-image: url(/img/newarr.png);
    background-repeat: no-repeat;
    background-position: 129px 14px;
    cursor: pointer
}
.datepick span {
    color: var(--red);
    font-size: 16px;
}
.double {
    min-width: 200px !important;
    background-position: 247px 14px;
    white-space: nowrap;
    overflow: visible;
}
.all-s {
    font-size: 1.2em !important;
    color: #939ea4 !important;
    text-decoration: underline !important;
    font-weight: 400 !important
}
.search-res-td {
    padding-top: 20px !important
}
.other {
    font-size: 11px
}
.theme_choise { background-color: var(--grey); display: none; padding: 1px; position: absolute;
    top: 100px;}
.choise-wrap { background-color: #fff; padding: 12px }
.sem_detail h1 {
    font-weight: 400;
    font-size: 24px;
    font-family: "Inter", sans-serif;
    line-height: 1.2
}
.detail {
    padding-top: 0
}
.det-tags, .detail-actions li, .ordhotel, .svidetelstvo {
    background-repeat: no-repeat
}
.detail_param {
    color: #8b959b;
    font-size: 10px;
    padding-bottom: 7px
}
.detail_link {
    color: #4495c9;
    font-size: 11px;
    text-decoration: none;
    border-bottom: 1px dashed #4495c9;
    line-height: 25px
}
.detail_link:hover {
    color: #000;
    border-bottom: 1px dashed #000
}
.det-town {
    font-size: 14px;
    padding-bottom: 10px;
    display: block
}
.det-br {
    margin: 14px 0 !important
}
.toreg {
    padding: 0 16px;
    height: 30px;
    line-height: 30px;
    font-size: 0
}
.detail-cal .show-box {
    margin-top: 5px
}
.detail .inl-cal-dat .c-num {
    line-height: .85
}
.detail .inl-cal-dat .c-month {
    line-height: 1.1;
    text-transform: uppercase
}
.rules-wrap a {
    color: #4495c9;
    font-size: 12px
}
.rules-wrap a:hover {
    color: #000
}
.question {
    background-position: 0 -28px
}
.hotel {
    background-position: 0 -56px
}
.pap {
    background-image: url(/img/pap.png) !important;
    background-position: 0 3px
}
.det-tags {
    padding-left: 20px;
    background-image: url(/img/tags.png);
    background-position: left center;
    color: #8b959b
}
.actual h3 {
    padding-top: 0 !important
}
.actual p {
    color: #4B4B4B;
    font-size: 12px;
    padding-top: 10px;
    padding-right: 20px
}
.sem_detail h2 {
    font-size: 14px
}
.progr ul {
    padding-bottom: 5px;
    padding-left: 20px
}
.progr li {
    list-style-type: disc;
    font-size: 12px;
    padding-top: 5px
}
.svidetelstvo {
    color: #4b4b4b;
    font-size: 14px;
    padding-left: 47px;
    padding-right: 20px;
    margin-left: 33px;
    background-position: 0 2px;
    line-height: 1.25
}
.showbig-box, .showbig-c {
    height: 45px;
    line-height: 45px
}
.svidetelstvo {
    background-image: url(/img/svid.png)
}
.ordhotel {
    background-image: url(/img/ordh.png)
}
.ordhotel h3 {
    padding-top: 0
}
.comditions p {
    font-size: 12px;
    padding-top: 15px
}
.nopad, .showbig-box {
    padding: 0 !important
}
.propis {
    font-style: italic;
    color: #8b959b
}
.sem-reg-but li {
    margin-bottom: 7px !important
}
.showbig-box {
    vertical-align: middle;
    display: inline-block !important;
    zoom: 1;
    position: relative !important;
    background-image: url(/img/showbig-c.png) !important;
    background-repeat: repeat-x !important;
    font-size: 15px;
    font-weight: 700
}
.showbig-box a, .showbig-box a:hover {
    color: #fff !important;
    font-size: 18px !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    padding: 0 !important;
    margin: 0 !important
}
.showbig-c {
    padding: 0 45px;
    font-size: 0
}
.showbig-l, .showbig-r {
    background-repeat: no-repeat !important;
    width: 2px !important;
    height: 45px !important;
    background-color: #fff !important;
    top: 0
}
.showbig-l {
    position: absolute;
    left: 0;
    background-image: url(/img/showbig-l.png) !important
}
.showbig-r {
    position: absolute !important;
    right: 0;
    background-image: url(/img/showbig-r.png) !important
}
.showbig-box:hover {
    background-image: url(/img/showbig-c-h.png) !important
}
.showbig-box:hover .showbig-l {
    background-image: url(/img/showbig-l-h.png) !important
}
.showbig-box:hover .showbig-r {
    background-image: url(/img/showbig-r-h.png) !important
}

.dtinp, .litinp, .phinp, .sminp {
    text-align: left !important;
    display: inline-block;
    zoom: 1
}

.authhead, .close, .errtext, .perv, p.inform {
    background-repeat: no-repeat
}
.slidem img, .store {
    vertical-align: middle
}


.error {
    border: 1px solid var(--red) !important
}

.review-btn-container {
    display: flex;
    justify-content: flex-end;
    padding: 0 0 20px 0;
}

p.inform {
    padding-left: 40px;
    background-image: url(/img/inf.png);
    background-position: 0 76%;
    color: #000;
    font-size: 11px
}
.inform_ok {
    color: green;
    font-size: 18px;
    display: block;
    padding: 20px 0;
}
.authform, .overlay, .townlist {
    display: none;
    position: absolute
}
.informnew {
    color: #4b4b4b !important;
    font-size: 12px !important
}
p.black {
    color: #000
}
.overlay {
    width: 100%;
    height: 1000px;
    background-color: #000;
    opacity: .5;
    z-index: 8002;
    top: 0;
    left: 0
}
.authform {
    width: 550px;
    min-height: 200px;
    background-color: #fff;
    z-index: 8003;
    padding: 20px
}
.authhead {
    width: 100%;
    height: 26px;
    background-image: url(/img/prof.png);
    background-position: center 0
}
.close {
    background-image: url(/img/close.png);
    width: 20px;
    height: 20px;
    position: absolute;
    top: -20px;
    right: -20px
}
.close:hover {
    background-image: url(/img/close-h.png);
    cursor: pointer
}
.authname {
    font-size: 14px;
    color: #000
}
.forgot {
    font-size: 12px;
    color: #606060;
    margin-left: 65px
}
.store {
    font-size: 12px;
    color: #000
}
.townlist {
    padding: 10px 10px 3px;
    background-color: #88949a;
    width: 150px;
    opacity: .8
}
.townlist li {
    margin-bottom: 10px;
    padding-left: 5px;
    display: block;
    font-size: 14px
}
.buf, .buf2, .buf3 {
    display: inline-block;
    zoom: 1
}
.townlist li a {
    color: #fff
}
.townlist li a:hover {
    color: #000
}
.break6 {
    padding-right: 27px !important
}
.break5 {
    padding: 0 !important;
    width: 30px
}
.testdiv {
    width: 100%;
    text-align: justify
}
.buf {
    width: 100%;
    height: 1px;
    font-size: 0;
    line-height: 0
}
.buf3 {
    color: #AFAFAF
}
.auth_inp {
    margin-top: 2px
}
.auth_bord, .auth_str, .reg_f {
    margin-top: 17px
}
.auth_bord {
    border-right: 1px solid #d3d7d8;
    width: 236px;
    padding-right: 24px
}
.reg_f {
    background-color: #f0f0f0;
    padding: 27px 23px 18px;
    margin-left: 24px
}
.perv {
    background-image: url(/img/vperv.png);
    width: 172px;
    height: 17px;
    margin: 0 auto
}
.ifauth {
    font-size: 12px;
    color: #6e6e6e;
    line-height: 16px;
    text-align: center;
    padding-top: 15px
}
.slidem {
    width: 2890px;
    height: 40px
}
.slidem div {
    vertical-align: top;
    float: left;
    width: 279px;
    padding-right: 10px;
    text-align: center
}
div.mf-text {
    line-height: 1.3;
    padding: 5px 0
}
.reg_change {
    margin: 15px 0
}
.reg_change .fast {
    float: left
}
.reg_change .det {
    float: right;
    margin-right: 50px
}
.reg_change .item {
    font-weight: 700
}
.reg_change .item input {
    margin-right: 7px
}
.thanks_page {
    margin: 20px 0 50px
}
.thanks_page h1 {
    margin-bottom: 20px
}
.thanks_page p {
    margin: 10px 0
}
.thanks_page .red {
    color: red
}
.thanks_page a:link, .thanks_page a:visited {
    color: #8b959b
}
.thanks_page a:active, .thanks_page a:hover {
    color: #267cb3
}
.thanks_page .pay a {
    background: url(/images/card.png) 15px 8px no-repeat #de2204;
    display: inline-block;
    padding: 10px 15px 10px 60px;
    font-weight: 700
}
.thanks_page .pay a:active, .thanks_page .pay a:hover, .thanks_page .pay a:link, .thanks_page .pay a:visited {
    color: #fff;
    text-decoration: none
}
.profile-block-shown .profile-table {
    border-collapse: collapse;
    color: #686461;
    background: #f0f0f0
}
.profile-block-shown .profile-table th {
    border-bottom: 3px solid #B9B29F;
    padding: 10px;
    text-align: left
}
.profile-block-shown .profile-table tr {
    background: #f0f0f0
}
.profile-block-shown .profile-table td {
    padding: 10px
}
.profile-block-shown .profile-table td input, .profile-block-shown .profile-table td select, .profile-block-shown .profile-table td textarea {
    width: 100%;
    font-size: 14px;
    padding: 10px;
    position: relative;
    border: none;
    outline: 0 !important;
    box-sizing: border-box
}
input.save, input[type=reset] {
    font-size: 16px;
    color: #fff;
    outline: 0 !important;
    cursor: pointer
}
.profile-table td {
    vertical-align: middle !important
}
input.save {
    padding: 11px 40px;
    background: var(--red);
    border: none;
    border-radius: 3px;
    margin-left: 140px
}
input[type=reset] {
    padding: 11px 25px;
    background: #c2c9cc;
    border: none;
    border-radius: 3px;
    line-height: -1em
}
input.save:hover {
    background: #8c1803
}
.bx-auth-profile input[type=reset]:hover {
    background: #797E80
}
.pagediv {
    padding-top: 18px
}
.pagediv > div, .pagediv > input {
    display: none
}
.pagediv label {
    padding: 10px;
    line-height: 28px;
    cursor: pointer;
    position: relative;
    bottom: 4px;
    background: #fff;
    border-top: 3px solid #fff;
    border-left: 3px solid #fff;
    border-right: 3px solid #fff
}
.profile-div label {
    padding: 0;
    border: none;
    line-height: 1.4;
    cursor: pointer;
    bottom: 0;
    background: 0 0;
    width: 250px;
    display: inline-block;
    vertical-align: top;
    float: left
}
.pagediv input[type=radio]:checked + label {
    border-top: 3px solid #f0f0f0;
    border-left: 3px solid #f0f0f0;
    border-right: 3px solid #f0f0f0;
    bottom: 1px
}
.pagediv > input:nth-of-type(1):checked ~ div:nth-of-type(1), .pagediv > input:nth-of-type(2):checked ~ div:nth-of-type(2), .pagediv > input:nth-of-type(3):checked ~ div:nth-of-type(3) {
    display: block;
    padding: 20px;
    border: 3px solid #f0f0f0
}
.pagediv_item {
    color: #4b4b4b;
    font-size: 14px
}
.pagediv_item table {
    border-collapse: collapse;
    width: 100%
}
.pagediv_item table tr td label {
    padding: 0;
    border: none;
    line-height: 1.4;
    cursor: pointer;
    position: relative;
    bottom: 0;
    background: 0 0
}
.pagediv_item table tr td {
    vertical-align: middle;
    padding: 5px 15px 5px 0
}
.pagediv input[type=text], .pagediv input[type=password], .pagediv textarea {
    width: 100%;
    padding: 5px 10px;
    outline: 0 !important;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    border: 1px solid #bababa;
    font-size: 14px;
    moz-transition: border-color 400 ease-out .5s;
    -o-transition: border-color 400 ease-out .5s;
    -webkit-transition: border-color 400 ease-out .5s;
    transition: border-color 400 ease-out .5s
}
.pagediv input[type=text]:hover, .pagediv input[type=password]:hover, .pagediv textarea:hover {
    border-color: #000
}
.pagediv input[type=text]:focus, .pagediv input[type=password]:focus, .pagediv textarea:focus {
    border-color: #000;
    box-shadow: 0 0 10px rgba(97, 181, 207, .2)
}

.pagediv select {
    width: auto;
    padding: 5px 10px;
    outline: 0 !important;
    font-size: 13px
}
.pagediv textarea {
    padding: 10px;
    height: 180px
}
.pagediv input.error {
    border-color: red !important
}
.pagediv label.error {
    border: none !important;
    color: var(--red);
    font-size: 12px;
    display: block;
    padding: 3px
}
.inp_clnd input {
    width: 120px !important
}
.ob {
    color: var(--red);
    white-space: nowrap;
    width: 7px;
    display: inline-block;
    margin: 0 0 0 2px
}
.form .td1 {
    color: #000;
    text-align: right
}
.but1 input[type=submit] {
    font-size: 16px;
    padding: 11px 40px;
    color: #fff;
    background: var(--red);
    cursor: pointer;
    border: none;
    outline: 0 !important;
    margin-top: 15px;
    border-radius: 3px;
    margin-left: 170px
}
.but1 input[type=submit]:hover {
    background: #a20404
}
:focus::-webkit-input-placeholder {
    color: transparent
}
:focus::-moz-placeholder {
    color: transparent
}
:focus:-moz-placeholder {
    color: transparent
}
:focus:-ms-input-placeholder {
    color: transparent
}
.starrequired {
    color: var(--red);
}
.form_error {
    color: var(--red);
    font-size: 14px;
    width: auto;
    text-align: center;
    padding: 20px;
}
.error-message {
    display: block;
    font-size: 12px;
    padding: 7px 0 10px 0;
}
.text_feedbackForm_page {
    font-size: 16px !important;
    text-align: center;
    margin: 30px 0
}
.uk-form-row.captcha {
    margin-top: 20px;
}
.side_form {
    border: 2px solid #000;
    padding: 38px;
}
.bx-captcha {
    display: inline-block;
    width: 180px;
    height: 40px;
    margin: 0 5px 5px 0;
    vertical-align: middle;
    overflow: hidden;
}
.form-fields,
.form-fields input[type="text"],
.form-fields input[type="tel"],
.form-fields input[type="email"],
.form-fields textarea,
.bx-auth input[type="text"],
.bx-auth input[type="password"] {
    width: 100%;
    box-sizing: border-box;
    margin: 5px 0;
    padding: 22px 20px 18px 20px;
    border: 1px solid var(--grey-dark);
    font-size: 16px;
    line-height: 22px;
    transition: all 0.3s;
}
.form-fields:hover, .bx-auth input:hover {
    border-color: var(--text);
}
.form-fields:focus, .bx-auth input:focus {
    outline: 0;
    border-color: #000;
    box-shadow: 0 1px 2px -1px rgba(0, 0, 0, .2) inset, 0 0 10px rgba(97, 181, 207, .2);
}
.bx-auth input[type="text"],
.bx-auth input[type="password"] {
    margin: 5px 10px;

}
.form-input-agree {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 0 20px 0;
}
.consent {
    display: block;
    padding-top: 3px;
}
.form-input-agree input[type="checkbox"] {
    position: absolute;
    opacity: 0;
}
.form-input-agree label::after {
    content: "";
    position: absolute;
    -webkit-transition: .2s;
    transition: .2s;
    left: 3px;
    top: 4px;
    width: 12px;
    height: 8px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.form-input-agree input:not(:checked) + label::after {
    opacity: 0;
}
.form-input-agree label::before {
    content: "";
    width: 17px;
    height: 17px;
    background: 0 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 20px;
    background: white;
}
.form-input-agree a {
    color: var(--grey-extra-dark);
    text-decoration: underline;
}
.form-input-agree {
    color: var(--grey-dark);
    font-size: 13px;
    line-height: 1.2;
}
.form-input-agree label {
    position: relative;
    cursor: pointer;
    color: var(--red);
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 2px solid var(--red);
    vertical-align: middle;
    background: #fff;
    padding: 0;
}
.form-input-agree input[type="checkbox"]:checked + label {
    background-color: var(--red);
}
.form-input-agree input[type="checkbox"]:checked + label::after {
    content: '';
    position: absolute;
    left: 5px;
    top: 1px;
    width: 6px;
    height: 12px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
.feedback-form [type=submit]:hover {
    background: var(--btn-hover);
}
.form_button, .feedback-form [type=submit] {
    display: block;
    background: var(--btn-bg);
    text-align: center;
    padding: 20px;
    color: #fff;
    cursor: pointer;
    border: none;
    outline: 0 !important;
    margin: 0;
    font-size: 16px;
    margin: 10px 0;
    width: 100%;
    box-sizing: border-box;
    line-height: 22px;
    transition: background-color 0.3s ease, color 0.3s ease, opacity 0.3s ease;
}
.load_more_wrapper a {
    width: 180px;
}
.goto {
    margin-top: 15px;
}
.seminar-row .price {
    color: black;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.5;
}
.seminar-row .price.price-old {
    font-size: 16px;
    position: relative;
    text-decoration: line-through;
    color: var(--plshldr-color);
    text-decoration-color: var(--plshldr-color);
    text-underline-offset: -0.5em;
    text-decoration-thickness: 2px;
}
.seminar-row .price:not(.price-old) {
    margin-bottom: 15px;
}
.data-table tr td {
    vertical-align: middle !important
}
.bx-auth {
    padding: 20px 0
}
.bx-auth-note, .bx-auth-title {
    font-size: 1.1em;
    margin-bottom: 10px;
    text-transform: uppercase
}
.bx-auth input {
    padding: 5px;
    margin: 10px
}
.bx-auth label {
    font-size: 12px
}

.bx-auth p {
    font-size: 12px;
    padding-top: 10px
}
.popup-search-block {
    position: absolute;
    right: 0;
    top: 43px;
    width: 276px;
    background-color: #fff;
    z-index: 3001;
    display: none;
    -moz-box-shadow: 0 4px 4px 0 rgba(74, 80, 94, .06), 0 8px 18px 2px rgba(51, 41, 48, .08);
    -webkit-box-shadow: 0 4px 4px 0 rgba(74, 80, 94, .06), 0 8px 18px 2px rgba(51, 41, 48, .08);
    box-shadow: 0 4px 4px 0 rgba(74, 80, 94, .06), 0 8px 18px 2px rgba(51, 41, 48, .08)
}
.popup-search-block > div {
    border-top: 1px solid #fff;
    padding: 12px 18px;
    display: none
}
.popup-search-block > .wrap-found-form {
    background-color: #f0f0f0;
    display: block
}
.popup-search-block > .wrap-found-result-link {
    text-align: right
}
.popup-search-block form input[type=text] {
    width: 153px;
    height: 28px;
    padding: 0 5px;
    border: 1px solid #afafaf;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px
}
.popup-search-block form button {
    color: #fff;
    font: 14px Arial, sans-serif;
    background-color: #e71713;
    border: none;
    padding: 6px 12px;
    border-radius: 3px;
    cursor: pointer
}
.popup-search-block form button:hover {
    background: #a20404
}
.popup-search-block .advanced-search, .popup-search-block .found-results {
    display: inline-block;
    text-decoration: underline
}
.popup-search-block .advanced-search {
    color: #8b959b;
    font-size: 12px;
    margin-top: 5px
}
.popup-search-block .found-results {
    color: #000;
    font-size: 14px
}
.wrap-found-result li {
    margin-bottom: 20px
}
.wrap-found-result li:last-child {
    margin-bottom: 0
}
.wrap-found-result a {
    color: #3e6e8d;
    font-size: 12px
}
.wrap-found-result em, tr.search_city li a {
    color: #000;
    font-size: 12px
}
.wrap-found-result a:hover {
    text-decoration: underline
}
.a-button, .a-button:hover, tr.search_city li a:hover {
    text-decoration: none
}
.wrap-found-result em {
    display: block;
    font-style: normal;
    margin-top: 3px
}
tr.search_city li {
    display: inline-block;
    padding: 7px
}
tr.search_city li.curr-city {
    background-color: #fff
}
tr.search_city li.curr-city a {
    color: var(--red);
    text-decoration: none
}
.butse {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
.div-open {
    display: none
}
.a-button {
    margin: 20px 0;
    border-bottom: 1px dashed;
    font-size: 1.4em
}
.a-button:hover {
    bcolor: #000
}
.open-pass {
    padding: 20px;
    background-color: #f0f0f0;
    border-radius: 3px;
    margin-top: 10px
}
.api-mf-antibot {
    border: 0 !important;
    font-size: 0 !important;
    height: 0 !important;
    line-height: 0 !important;
    padding: 0 !important;
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
    width: 0 !important
}
.iblock_d {
    margin: 40px 0 20px;
    font-size: .8em
}
.conttitle {
    display: block;
    font-size: 16px;
    font-weight: 700;
    margin: 50px 0 20px
}
.contaddr {
    margin: 0 0 30px
}
.tpmain h2, .tpmain p {
    font-size: 18px;
    margin: 0 !important;
    padding: 0 !important
}
.tpmain p.contPhone {
    font-size: 36px;
    font-weight: 700;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 50px
}
.breadcrumb-navigation li, .breadul li {
    float: left;
    display: inline-block;
    margin: 0
}
.bx-breadcrumb-item {
    display: inline-flex;
    align-items: center;
}
.breadcrumb-separator {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-top: 2px solid var(--grey-dark); /* Цвет стрелки */
    border-right: 2px solid var(--grey-dark);
    transform: rotate(45deg) skew(12deg, 12deg);
    margin: 0 10px 0 -5px;
    flex-shrink: 0;
}
.bx-breadcrumb-item:hover .breadcrumb-separator {
    border-color: var(--grey-dark);
}
p.contnote {
    font-size: 16px
}
.breadul li {
    padding: 0
}
.breadcrumb-navigation li {
    padding: 0
}
.eventdiv {
    color: #8b959b;
    font-size: 11px;
    margin-top: 14px
}
.footertd {
    margin-bottom: 40px;
}
.footertd td { /*width:50%*/
}
.bl {
    color: #444
}
.footertd td:first-child {
    width: 585px;
}
/*/articles/menegment/article1/*/
.redz {
    color: var(--red)
}
.uldots {
    margin-left: 20px;
}
.uldots, .uldots li {
    list-style-type: disc
}
.tpart {
    width: auto;
    border: #ccc 1px solid;
    border-collapse: collapse
}
.tpart td {
    width: 200px;
    border: #ccc 1px solid;
    padding: 5px 10px
}
.sect_descrip {
    font-size: 18px;
}


.edu-card-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 40px;
}

.edu-card {
    flex: 1 1 calc(50% - 10px);
    box-sizing: border-box;
}

.edu-card.edu-card-full {
    flex: 1 1 100%; margin: 15px 0;
}

.edu-label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
}

.edu-value {
    margin: 0;
}

.edu-codes {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.edu-codes span {
    padding: 5px 12px;
    border: 1px solid #e0e0e0;
}

.edu-section-title {
    margin-top: 0;
    margin-bottom: 20px;
    border-bottom: 2px dashed var(--grey);
    padding-bottom: 8px;
}

.edu-docs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 15px;
}

.edu-doc-link {
    display: flex;
    align-items: center;
    padding: 15px;
    border: 1px solid #e0e0e0;
    text-decoration: none !important;
    font-weight: 600;
    line-height: 1.2;
    transition: background 0.2s, border-color 0.2s;
}

.edu-doc-link:hover {
    border-color: var(--red, #d9534f);
}

.edu-doc-link::before {
    content: "📄";
    margin-right: 10px;
}

@media (max-width: 768px) {
    .edu-card {
        flex: 1 1 100%;
    }

    .edu-codes {
        flex-direction: column;
        gap: 10px;
    }
}