/* General rules */
:root {
    --color-black: #000;
    --color-white: #fff;
    --background-white-transparent: #ffffffb5;
    --color-text: #2E3332;
    --color-grey: #888888;
    --color-teal: #60dfcd; 
    --color-blue: #2E86EF;
    --color-gradient-blue-teal: linear-gradient(315deg, #60dfcd 0%, #2E86EF 100%);
    --color-accent:  var(--color-white);
    --btn-border-radius: 30px;
    --border-radius: 10px;
    --font-family-base: 'Heebo', sans-serif;
    --transition: all .3s;
}

*::-webkit-scrollbar {
    width: 15px;
}

*::-webkit-scrollbar-track {
    background: #f4f4f4;
}

*::-webkit-scrollbar-thumb {
    background:  var(--color-teal);
    border: 3px solid #f4f4f4;
    border-radius: 20px;
    box-shadow: 4px 4px 8px 0px #f4f4f433;
}

html, body {
    height: 100vh;
}

body {
    min-width: 320px;
    font-family: var(--font-family-base);
    font-weight: normal;
    color: var(--color-text);
    font-size: clamp(12px, 2.12vw, 16px);
}

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

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

a, .nav-link, .nav-link:focus {
    text-decoration: none;
    color: var(--color-text);
    transition: var(--transition);
}

a:hover,
a.active,
li.parent_active>a,
a:active,
.nav-link:hover,
.nav-link.active,
.nav-link:active {
    color: var(--color-accent);
}

a::before {
    transition: var(--transition);
}

main {
    flex: 1 1 auto;
}

main>.container-fluid {
    background-color: var(--color-white);
    border-inline: 1px solid var(--color-grey);
}

tbody, td, tfoot, th, thead, tr {
    border-style: inherit;
    border-width: inherit;
}

.btn-info {
    background-color: var(--color-teal);
    border: 0;
    border-radius: var(--btn-border-radius);
    transition: var(--transition);
    font-weight: bold;
    font-size: clamp(12px, 2.12vw, 16px);
}

.btn.btn-info:hover, .btn.btn-info:active {
    color: var(--color-accent);
}

.card {
    background-color: var(--background-white-transparent);
}

#top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    opacity: .5;
    width: 70px;
    height: 70px;
    font-size: 25px;
    transition: all .5s;
    z-index: 10;
    display: none;
    font-size: 30px;
}

#top:hover {
    opacity: 1;
}
/* General rules */

/* Garland */
.garland-container {
  position: sticky;
  top: 54px;
  width: 100%;
  z-index: 10;
  overflow: hidden;
  margin-bottom: -100px;
}

.christmas-branch {
  width: 100%;
  height: 104px;
  display: flex;
}

.christmas-branch:before {
  content: '';
  display: block;
  position: absolute;
  top: -115px;
  left: 0;
  z-index: 3;
  height: 115px;
  width: 100%;
  box-shadow: 0 15px 30px rgb(0 0 0 / 75%);
}

.balls-part {
  display: flex;
  position: relative;
}

.bell {
  z-index: 2;
}

.bell-b {
  width: 56px;
  height: 67px;
}

.bell-r {
  width: 49px;
  height: 57px;
}

.bell-rl {
  width: 49px;
  height: 66px;
}

.bell-w {
  width: 54px;
  height: 70px;
}

.tree-container {
  width: 100%;
  height: 100%;
  position: absolute;
}

.balls-part:nth-child(1) > div:nth-child(8) {
  margin-left: 20px;
}

.tree-branch {
  position: absolute;
}

.tree-branch1 {
  width: 25px;
  height: 71px;
  top: 0;
  left: 0;
}

.tree-branch2 {
  left: 25px;
  width: 61px;
  height: 27px;
}

.tree-branch3 {
  width: 29px;
  height: 31px;
  left: 170px;
}

.tree-branch4 {
  width: 51px;
  height: 50px;
  left: 200px;
}

.tree-branch5 {
  width: 78px;
  height: 28px;
  right: 6px;
}

.tree-branch6 {
  width: 6px;
  height: 69px;
  right: 0;
}

.swing {
  transform-origin: top center;
  animation: swing 2s ease normal;
}

@keyframes swing {
  20% {
    transform: rotate(15deg);
  }
  40% {
    transform: rotate(-10deg);
  }
  60% {
    transform: rotate(5deg);
  }
  80% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
/* Garland */

/* Header */
.header-top, .header-bottom {
    background-color: transparent;
    background-image: var(--color-gradient-blue-teal);
    box-shadow: inset 2px 2px 2px 0px rgba(255, 255, 255, .5), 7px 7px 20px 0px rgba(0, 0, 0, .1), 4px 4px 5px 0px rgba(0, 0, 0, .1);
}

.header-top-col a, .header-top-date time, .header-top-col span {
    display: flex;
    gap: 5px;
    justify-content: start;
    align-items: center;
    cursor: pointer;
}

.header-top-col span:hover {
    color: var(--color-accent);
    transition: var(--transition);
}

.header-top a:not(.header-top-lang>a)::before, .header-top-lang span::before {
    content: '';
    width: 20px;
    height: 20px;
}

.header-middle .row>div {
    display: flex;
    justify-content: center;
    align-items: center;
}

.header-middle .container-header-middle {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
}

.header-middle-logo img {
    max-width: clamp(150px, 15.63vw, 300px);
}

.header-middle-title-box .header-middle-h2, .header-middle-title-box .header-middle-h2 a {
    color: var(--color-text);
    font-size: clamp(18px, 1.67vw, 32px);
    font-weight: 500;
    margin-bottom: 0px;
    line-height: 1.4;
}

.header-middle-title-box .header-middle-h2 a:hover {
    color: var(--color-teal);
}

.header-middle-title-box h1, .header-middle-title-box h2 {
    font-size: clamp(24px, 2.08vw, 40px);
    font-weight: bold;
}

.header-middle-badge img {
    max-width: clamp(75px, 7.81vw, 150px);
    margin: 3px;
}

.header-middle-buttons a {
    margin-block: 3px;
}

.header-bottom.header-nav-fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 20;
    width: 100%;
}

.header-bottom .navbar {
    background-color: var(--color-gradient-blue-teal);
}

.header-bottom .navbar .nav-link {
    padding: 0;
}

.header-bottom .navbar .nav-link>img {
    max-width: initial;
}

.header-bottom .navbar .level_1 a:hover, 
.header-bottom .navbar .level_1 li.parent_active>a,
.header-bottom .navbar .dropdown-item.active, 
.header-bottom .navbar .dropdown-item:active {
    background-color: var(--color-teal);
    color: var(--color-text);
}

.header-bottom .dropdown>a {
    display: inline-block;
    padding-right: 5px;
}

.header-bottom .dropdown .dropdown-toggle {
    display: none;
}

.header-bottom  .dropdown:hover .dropdown-menu {
    display: block;
}

.header-bottom .level_0 {
    gap: 0.5rem;
}

.header-bottom .navbar-nav .dropdown-item {
    white-space: normal;
    width: 100%;
    min-width: 350px;
    font-size: clamp(12px, 2.12vw, 16px);
}

.ya-site-form__search-input-layout-r, #ya-site-form0 .ya-site-form__search-input {
    padding: 0 !important;
}

.header-bottom #ya-site-form0 .ya-site-form__wrap, .header-bottom #ya-site-form0 .ya-site-form__search {
    width: initial;
}

.header-bottom #ya-site-form0 .ya-site-form__input-text {
    display: block;
    padding: .375rem .75rem !important;
    font-weight: 400;
    line-height: 1.5;
    color: var(--bs-body-color) !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: var(--bs-body-bg);
    background-clip: padding-box;
    border: var(--bs-border-width) solid var(--bs-border-color) !important;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    border-radius: var(--bs-border-radius);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 0 !important;
}

.header-bottom #ya-site-form0 .ya-site-form__submit {
    --bs-btn-padding-x: 0.75rem;
    --bs-btn-padding-y: 0.375rem;
    --bs-btn-font-size: 1rem;
    --bs-btn-font-weight: 400;
    --bs-btn-line-height: 1.5;
    --bs-btn-bg: transparent;
    --bs-btn-border-width: var(--bs-border-width);
    --bs-btn-border-color: transparent;
    --bs-btn-border-radius: var(--bs-border-radius);
    --bs-btn-hover-border-color: transparent;
    --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
    --bs-btn-disabled-opacity: 0.65;
    --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
    display: inline-block;
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    font-family: var(--bs-btn-font-family);
    font-weight: var(--bs-btn-font-weight);
    line-height: var(--bs-btn-line-height);
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
    border-radius: var(--bs-btn-border-radius);
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    background-color: var(--color-white);
    border-color: var(--bs-border-color);
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-left: 0;
    text-indent: -999999px;
}


.header-bottom #ya-site-form0 .ya-site-form__input-text, .header-bottom #ya-site-form0 .ya-site-form__submit {
    font-size: clamp(12px, 2.12vw, 16px) !important;
    margin: 0;
}
/* Header */


/* Main */
/* **** */
.section-title, .aside-title {
    color: var(--color-text);
    font-weight: bold;
    text-align: center;
    font-size: clamp(16px, 2.06vw, 28px);
    margin-bottom: 20px;
    padding-bottom: 5px;
    border-bottom: 2px solid var(--color-teal);
}


/* Slider*/
.slider {
    border: 2px solid var(--color-teal);
    border-radius: var(--border-radius);
    overflow: hidden;
    position: relative;
}

.slider .carousel {
    height: 600px;
}

.slider .carousel-item, .slider .carousel-indicators {
    margin-bottom: 0;
}

.slider .carousel-control-next-icon, .slider .carousel-control-prev-icon {
    width: 3rem;
    height: 3rem;
}

.slider .carousel-control-next:hover .carousel-control-next-icon, .slider .carousel-control-prev:hover .carousel-control-prev-icon {
    background-color: #000000a4;
    transition: var(--transition);
}

.slider .carousel-inner, .slider .carousel-item {
    height: inherit;
}

.slider .carousel-item img{
    object-fit:cover;
    min-height: 600px;
}

.slider .carousel-indicators [data-bs-target] {
    width: clamp(20px, 2.62vw, 30px);
}

.slider .carousel-caption {
    padding-bottom: 0;
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 100%;
    background: #0000006e;
    color: #fff;
    font-weight: 700;
    padding: 12px;
}

.slider .carousel-caption p {
    margin-bottom: 0.5rem;
}

/* Slider*/

/* Popular*/
.section-popular .btn.btn-info {
    font-size: clamp(12px, 1.33vw, 16px);
}

.popular-links .list-inline {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.popular-links .list-inline .list-inline-item {
    width: 47%;
}

.popular-links .list-inline .list-inline-item:not(:last-child) {
    margin: 0;
}

.popular-links .list-inline .list-inline-item a {
    width: 100%;
    height: 100%;
}

.popular-links .list-inline a, .btn-archive {
    border-radius: var(--border-radius);
}

.popular-banners a:hover {
    color: var(--color-teal);
}

.popular-banners b {
    display: block;
    margin-top: 5px;
}
/* Popular*/

/* Announcement, News*/
.section-tabs .tab-content {
    border: 2px solid var(--color-teal);
    border-bottom-left-radius: var(--border-radius);
    border-bottom-right-radius: var(--border-radius);
    border-top: 0;
    color: var(--color-text);
    overflow-x: auto;
}

.section-tabs .nav-tabs, .content-box .nav-tabs {
    border-bottom: 2px solid var(--color-teal);
}

.section-tabs .nav-tabs .nav-link, .content-box .nav-tabs .nav-link {
    color: var(--color-text);
    font-weight: bold;
    border: 0;
    background-color: var(--background-white-transparent);
}

.section-tabs .nav-tabs .nav-link:hover, .content-box .nav-tabs .nav-link:hover {
    color: var(--color-accent);
    border-color: var(--color-teal);
    border-bottom: 0;
    background-color: var(--color-teal);
}

.section-tabs .nav-tabs .nav-link.active, .content-box .nav-tabs .nav-link.active {
    border-color: var(--color-teal);
    border-bottom: 0;
    background-color: var(--color-teal);
    color: var(--color-text);
}

.section-tabs .card {
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);
}

.section-tabs .tab-content .card>a {
    height: 250px;
    overflow: hidden;
}

.section-tabs .tab-content .card>a img {
    height: 100%;
}

.section-tabs .card .card-title {
    line-height: 1;
}

.section-tabs .card .card-title a, .card-archive .card-title a {
    color: var(--color-text);
    font-size: 24px;
    font-weight: bold;
    height: 122px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    text-decoration: none;
}

.card-archive .card-title a {
    font-size: 20px;
}

.section-tabs .card .card-text, .card-archive .card-text {
    font-size: 16px;
    height: 120px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    text-decoration: none;
}

.section-tabs .card time, .article  time {
    color: var(--color-grey);
    display: flex;
    gap: 2px;
    font-size: clamp(10px, 1.27vw, 14px);
    margin-bottom: 5px;
}

.section-tabs .card time::before, .article  time::before  {
    content: '';
    width: 15px;
    height: 15px;
}

.section-tabs .card .btn-info {
    font-size: clamp(12px, 1.27vw, 16px);
}

.section-tabs .card .card-title a:hover {
    color: var(--color-teal);
}
/* Announcement, News*/

/* Poll */
.section-poll .card {
    margin-bottom: 10px;
}

.section-poll .card .card-title {
    font-weight: bold;
    font-size: clamp(12px, 2.06vw, 16px);
}

.section-poll .card-body>.btn.btn-info, .section-poll a.btn-archive {
    font-size: clamp(12px, 1.14vw, 16px);
}

.poll-text {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.poll-result .pos {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    margin-right: 0.5em;
    border-radius: 1.5em;
}

.post.poll-result .poll-result-stats, .poll-list {
    list-style-type: none;
}

/* Hide the browser's default radio button */
.poll-text input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

/* Create a custom radio button */
.poll-checkbox,
.poll-radio {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    border-radius: 4px;
    background-color: #ccc;
}

.poll-radio {
    background-color: #eee;
    border-radius: 50%;
}

/* On mouse-over, add background color */
.poll-text:hover input~.poll-checkbox,
.poll-text:hover input~.poll-radio {
    background-color: var(--color-teal);
}

/* When the checkmark is checked, add background */
.poll-text input:checked~.poll-checkbox,
.poll-text input:checked~.poll-radio {
    background-color: transparent;
    background-image: var(--color-gradient-blue-teal);
}

/* Create the checkmark/indicator (hidden when not checked) */
.poll-checkbox:after,
.poll-radio:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the checkmark when checked */
.poll-text input:checked~.poll-checkbox:after,
.poll-text input:checked~.poll-radio:after {
    display: block;
}

/* Style the checkmark/indicator */
.poll-text .poll-checkbox:after {
    left: 30%;
    top: 50%;
    width: 6px;
    height: 12px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg) translate(-50%, -50%);
}

/* Style the checkmark/indicator */
.poll-text .poll-radio:after {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #fff;
}
/* Poll */

/* **** */
/* Main */

/* Footer */
.footer {
    background-image: var(--color-gradient-blue-teal);
}

.footer-title {
    font-weight: bold;
    font-size: clamp(16px, 2vw, 24px);
}

.footer-main p, .footer-main .nav-link, .footer-copyright p {
    font-size: clamp(12px, 1.33vw, 16px);
    padding: 0;
    margin-bottom: 5px;
}

.footer-main .footer-about a, .footer-copyright a {
    font-weight: 700;
}

.footer-quotes blockquote {
    font-style: italic;
    font-weight: 500;
}

.banners-official img {
    height: clamp(50px, 7.56vw, 75px);
}

.banners img {
    height: clamp(75px, 7.56vw, 100px);
}

.footer-copyright p {
    margin-bottom: 0;
}

.footer-socials a:hover svg path {
    transition: var(--transition);
    fill: var(--color-accent);
}

.footer-sch-map {
    width: 100%;
    position: relative;
    cursor: help;
    overflow: hidden;
    line-height: 0;
}

.footer-sch-map iframe {
    width: 100%;
    border: 0;
    height: 400px;
}

.sch-map-title {
    position: absolute;
    z-index: 1000;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 5px;
    display: none;
    padding: 5px 20px;
    border-radius: 5px;
    background: rgb(255, 255, 255);
    border: 2px solid rgb(204, 204, 204);
    line-height: 1;
    color: var(--color-text);
}
/* Footer */

/* Page */
.section-page {
    padding: 19px 15px;
    border: 3px solid var(--color-blue);
    height: fit-content;
    border-radius: 5px;
    overflow-x: auto;
    position: relative;
    z-index: 1;
}

/* Breadcrumb */
.section-page .breadcrumb {
    padding-bottom: 5px;
    border-bottom: 2px dotted var(--color-blue);
}

.section-page .breadcrumb a {
    color: var(--color-text);
    font-weight: bold;
}

.section-page .breadcrumb a:hover, .section-page .breadcrumb li.active {
    color: var(--color-blue);
    font-weight: bold;
}
/* Breadcrumb */

.article .article-title {
    color: var(--color-text);
    font-weight: bold;
    font-size: clamp(20px, 2.06vw, 28px);
}

.content-box h3 {
    font-size: clamp(18px, 1.56vw, 24px);
    font-weight: bold;
}

.content-box h4 {
    font-size: clamp(14px, 1.36vw, 20px);
    font-weight: bold;
}

.section-page .content-box {
    color: var(--color-text);
}

.section-page a,
.section-page a.active,
.section-page a:active {
    color: var(--color-blue);
}

.section-page a:hover {
    text-decoration: underline;
}

.nav-page {
    background-image: var(--color-gradient-blue-teal);
    border-radius: var(--border-radius);
    padding: 0;
    margin-block: 0.5rem;
}

.nav-page .navbar-nav {
    flex: 1 1 auto;
}

.nav-page .parent_active a {
    color: var(--color-text);
}

.nav-page .parent_active .level_2 a {
    display: block;
}

.nav-page .level_2 a:hover, .nav-page .level_2 a.active {
    background-color: var(--color-teal);
}

.nav-page .level_0>li.parent_active>a, .nav-page .level_0>li.active>a {
    color: var(--color-white);
}

.nav-page .navbar-nav .dropdown-item {
    white-space: normal;
}

.nav-page .navbar-nav .dropdown-item.active, .nav-page .navbar-nav .dropdown-item:hover {
    background-color: var(--color-teal);
    color: var(--color-text);
}

.nav-page .navbar-nav a {
    display: inline-block;
    padding-inline: 5px;
    font-size: clamp(12px, 2.12vw, 16px);
}

.nav-page .navbar-nav .dropdown-toggle {
    padding: 0;
}

.nav-page .navbar-nav .level_1 a+a {
    display: none;
}

.nav-page .navbar-nav .nav-link.active, .nav-page .navbar-nav .nav-link.show {
    color: var(--color-accent);
}

.content-news h3 {
    display: flex;
    align-items: center;
    text-align: center;
    color: var(--color-teal);
    font-weight: bold;
}

.content-news h3::before, .content-news h3::after {
    content: "";
    flex-grow: 1;
    height: 2px;
    background: var(--color-gradient-blue-teal);
    min-width: 40px;
 
}
.content-news h3::after {
    transform: rotate(180deg);
}

.content-employee .card-img {
    height: 300px;
    overflow: hidden;
    text-align: center;
}

.content-employee img {
    object-fit: cover;
    min-height: 300px;
}

.content-map-site li.parent_active>a {
    color: var(--color-text);
}

.content-map-site li.parent_active>a:hover {
    color: var(--color-teal);
}

.content-map-site li.active {
    color: var(--color-teal);
    font-weight: bold;
}

.content-spoiler {
    border-radius: 43px;
    border-bottom: 2px solid var(--color-teal);
}

.content-spoiler .collapse {
    border-top: 2px solid var(--color-teal);
}

.content-spoiler img {
    min-width: 0;
    max-width: 200px;
}

.content-spoiler p img {
    max-width: 100%;
}

.content-progress .content-progress-item {
    border-bottom: 2px dashed var(--color-grey);
    margin-bottom: 10px;
}

.content-progress h3 {
    color: var(--color-teal);
}

.content-progress .progress-bar {
    font-weight: bold;
}

.content-box .content-link  {
    display: block;
    font-weight: bold;
    border: 2px solid #ddd;
    padding: 7px;
    border-top: 0;
    transition: var(--transition);
}

.content-box .content-link:first-of-type {
    border-top: 2px solid #ddd;
}

.content-box a.content-link:hover {
    color: var(--color-teal);
    background: #00043c69;
}

.content-box .content-link p {
    margin: 0;
    display: flex;
    gap: 5px;
}

.content-box .content-link span {
    color: var(--color-white);
    padding: .1rem .4rem .1rem;
    text-align: center;
    white-space: nowrap;
    border-radius: 5px;
    font-size: 0.65rem;
    background-color: var(--color-blue);
    margin-right: 5px;
}

.content-link p::before {
    content: '';
    width: 24px;
    height: 24px;
    margin-bottom: 5px;
}

.share-buttons-description {
    margin: 18px 0 6px;
    color: var(--color-text);
}

.content-box .MapYear, .content-box .MapMonth {
    background-image: var(--color-gradient-blue-teal);
    margin-bottom: 20px;
    overflow-x: auto;
    border-radius: 30px;
}

.content-box .MapYear, .content-box  .MapMonth span {
    display: flex;
    height: 2rem;
    gap: 10px;
    font-weight: bold;
}

.content-box .MapYear span.sel, .content-box .MapMonth b {
    cursor: default;
    background: var(--color-teal);
    font-weight: bold;
    border-radius: 30px;
}

.MapMonth a:hover, .MapYear span:hover {
    background: #31d2f2;
    color: var(--color-white);
    border-radius: 30px;
}

.content-box .MapYear span, .content-box .MapMonth b, .content-box .MapMonth a {
    display: inline-block;
    padding: 0.25rem 0.5rem;
    cursor: pointer;
}

.share-buttons .ya-share2__container_size_m .ya-share2__badge .ya-share2__icon {
    width: clamp(20px, 2vw, 30px);
    height: clamp(20px, 2vw, 30px);
    background-size: clamp(20px, 2vw, 30px);
    border-radius: 5px;
}

.content-archive .MapMonth a {
    color: var(--color-text);
}

.card-archive {
    border-radius: 43px;
}

.card-archive img {
    border-top-left-radius: 43px;
    border-top-right-radius: 43px;
}

.card-archive>a {
    position: relative;
}

.card-archive>a time {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 70px;
    height: 70px;
    background: #2e85ef9d;
    color: var(--color-white);
    align-items: center;
    justify-content: center;
    text-align: center;
    font-weight: bold;
    text-transform: uppercase;
    margin: 0;
    font-size: inherit;
}

.card-archive>a time::before {
    content: unset;
}

#pin_reload {
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAuZJREFUeNqkU9tLVGEQn3Pb21HX1V1dV0hbL2mBUadwS7qR+FARJXSh3oOgP6GH3noK6rGX7GHtwaKCwCQiiMUoYgsltXDX9dKalz3pupdzvu/cmuOaGQU9dGC+73zfzPxm5jfzMZZlwf98vL0c61u6i5v0F30c5SaKgJLHYLJpGFTXddA17ReAYRgxsCzpQk9IIqSUEc8x8OjVPJw9WtcgZ2kgnVHp7IKSNw2YQPW3nxFYe0G0KKIO9Q/OxhnLhEJOA0IMsCNp1GREgattCXoaTh4I7HLwVg8GC/8GoBESAkPrOtVZI2WWiuBy4p2qoTOFhy9TuXdji+V5hTSvympTzz7/HgaM85ZpVmI5GxlQ2tsYdDVnV4rA8xY8GJyMCw68JwTQKD6bzr54HptRVErD8lKheZvf2YE+hwzkYZ0DSkhXtchXUaLBaEpO4vnt/SfjpRwRhGXZD0hgcDSRkdpDFfX+cp6gzRHUPiuVoKotHAseHetPppZXDV2/htFvo8SVfB5yKyt2loNTqWUH2tSjbRh99qNsZlBQdGtN0631f7OIpQhCFPsRxRLsFscKa2tRjufFgm5VCLBuJ262karq++UcqTAYzhnwizQ9lzmBkQcFpxM25sOWSDDorZRVEzjQiugzubULr2e/ZiZkEKZ82+sVZP8w1rxXxUxQB8d7D0q4R/w7m5rQBubS8nc8D9u6EgClsekvM6OuSjGR5sSpcHfEXV7r60EuJEwVkkUWdp/rlhIKC6bogcTYdAJ9HtvTuA6Ada6q+eJAfGDoo8frTs67vAmzM5Kru3imHMmDLOeAkRwHvioPjESfxmmhMIwlzOeHbpQ4yPVfArambYrsOK18uqe0e1vDZUK40UHqgpY9TKZDADdrwYIJ0H71sjR6p892+6wvjkcZ+zUyDGNf2KwGGLevGgJtIpSFBIauGVDTcQWqW1r/eGby5IT55tb1rQA4e+BBcaMw/3jF9ovTbfp+CDAAIqquPExvnOoAAAAASUVORK5CYII=) 0 50% no-repeat;
    display: inline-block;
    padding-left: 20px;
    margin-bottom: 0.6em;
}

.adm-procedure .item-adm-procedure {
    font-size: clamp(14px, 2.6vw, 20px);
}

.gallery .gallery-title {
    background: var(--color-teal);
    border: 1px solid var(--color-teal);
    border-radius: 4px;
    width: fit-content;
    padding: 8px 16px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    margin: 0;
}

.gallery .gallery-list {
    margin: 0;
    padding: 16px 16px 32px;
    list-style-type: none;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    border-top: 2px solid var(--color-teal);
}

.gallery img {
    cursor: pointer;
    width: 120px;
    height: 90px;
    object-fit:cover;
    border-radius: 7px;
    border: 2px solid var(--color-teal);
    transition: var(--transition);
}

.gallery img:hover {
    transform: scale(1.1);
    box-shadow: 9px 9px 23px 3px #60dfcc60;
}

.button-link-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 25px;
    margin: 15px 0;
}

.button-link-wrapper .button-link {
    padding: 13px 20px 13px;
    border: 1px solid var(--color-text);
    cursor: pointer;
    position: relative;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
    color: var(--color-text);
    font-weight: bold;
}

.button-link-wrapper .button-link:after {
    content: "";
    background-color: var(--color-blue);
    width: 100%;
    z-index: -1;
    position: absolute;
    height: 100%;
    top: 7px;
    left: 7px;
    transition: var(--transition);
  }
  
  .button-link-wrapper .button-link:hover:after {
    top: 0px;
    left: 0px;
  }

.share-buttons .ya-share2__list.ya-share2__list_direction_horizontal>.ya-share2__item {
    margin-right: 6px;
}
/* Page */

/* Privacy-policy */
.privacy-policy-popup {
position: fixed;
border: 1px solid #ddd;
border-radius: 5px;
background: #fff;
bottom: 20px;
left: 0;
right: 0;
margin: auto 10%;
z-index: 1000000;
 }

.privacy-policy-content {
    display: flex;
    margin: 20px 30px;

}

.privacy-policy-item:not(:first-child) {
    margin-left: 20px;
}

.privacy-policy-content .privacy-policy-img {
    font-size: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.privacy-policy-content .privacy-policy-text a {
    text-decoration: underline !important;
    color: #333333;
}
.privacy-policy-content .privacy-policy-text a:hover {
    color: #5a0b0b;
}

.privacy-policy-content .privacy-policy-buttons {
    display: flex;
    align-items: center;
    justify-content: center;
}

.privacy-policy-content .privacy-policy-buttons .privacy-policy-btn {
padding: 11px 35px;
color: #333333;
font-weight: bold;
font-size: 14px;
text-transform: uppercase;
max-width: 100%;
text-align: center;
border: 1px solid #ddd;
cursor: pointer;
background-color: #fff;
}
.privacy-policy-content .privacy-policy-buttons .privacy-policy-btn:hover {
border: 1px solid #ddd;
color: #333333;
background-color: #d7d8d9;
}
/* Privacy-policy */

/* Vision */
.vision {
    margin: 0 15px;
    border: 1px solid #000;
    background: #ebebeb;
    border-top: 0;
    border-radius: 0 0 4px 4px;
}

.vision div, .vision a {
    background: #ebebeb !important;
}

.vision-flex {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 10px;
}

.vision-item {
    text-align: center;
}

.vision-block {
    padding: 10px 0;
}

.vision-block>div {
    color: #000 !important;
    margin-bottom: 10px;
}

.item-settings {
    display: inline-block;
    color: #000 !important;
    border: 1px solid #525252;
    border-radius: 4px;
    padding: 0 10px;
    height: 30px;
    line-height: 30px;
}

.item-settings:hover {
    color: #000;
    background: #eee;
}

.colorSiteBlack, #colorSiteBlack {
    background: #000 !important;
    color: #fff !important;
}

.colorSiteWhite, #colorSiteWhite {
    background: #fff !important;
    color: #2E3332 !important;
}

.colorSiteBlue, #colorSiteBlue {
    background: #9dd1ff !important;
    color: #00f !important;
}

.colorSiteBeige, #colorSiteBeige {
    background: #f7f3d6 !important;
    color: brown !important;
}
/* Vision */

@media only screen and (max-width: 1400px) {
    .slider .carousel {
        height: 500px;
    }

    .slider .carousel-item img{
        min-height: 500px;
    }

    .section-tabs .card .card-title a {
        height: 105px;
        font-size: 21px;
    }

    .section-tabs .card .card-text {
        font-size: 14px;
        height: 102px;
    }

    .section-tabs .tab-content .card>a {
        height: 200px;
    }
}

@media only screen and (max-width: 1200px) {
    .header-top-col a, .header-top-date time, .header-top-col span {
        justify-content: center;
    }
}

@media only screen and (max-width: 992px) {
    .header-top-col a>span {
       display: none;
    } 

    .header-top-col.header-top-lang a>span {
        display: flex;
    }

    .header-top-col>span, .header-top-lang span {
        text-indent: -9999px
    }

    .header-bottom .offcanvas-body>a {
        margin-bottom: 5px;
    }

    .header-bottom .dropdown>.dropdown-toggle {
        display: inline-block;
    }
    
    .header-bottom  .dropdown:hover .dropdown-menu {
        display: none;
    }

    .slider .carousel {
        height: 400px;
    }

    .slider .carousel-item img{
        min-height: 400px;
    }

    .section-tabs .card .card-title a {
        height: 80px;
        font-size: 16px;
    }

    .section-tabs .card .card-text {
        font-size: 12px;
        height: 92px;
    }

    .section-tabs .tab-content .card>a {
        height: 300px;
    }
}

@media only screen and (max-width: 991.99px) {
    .header-bottom .offcanvas {
        background-image: var(--color-gradient-blue-teal);
    }
}

@media only screen and (max-width: 768px) {
    .header-top-date span {
        display: none;
    }

    .slider .carousel {
        height: 325px;
    }
    
    .slider .carousel-item img{
        min-height: 325px;
    }

    .section-tabs .tab-content .card>a {
        height: 250px;
    }

    .privacy-policy-popup {
        margin: auto 5px;
        bottom: 5px;
     }
 
     .privacy-policy-content {
         flex-wrap: wrap;
     }
 
     .privacy-policy-item {
         width: 100%;
     }
 
     .privacy-policy-item:not(:first-child) {
         margin-left: 0;
     }
 
     .privacy-policy-item:not(:last-child) {
         margin-bottom: 20px;
     }
}

@media only screen and (min-width: 768px) {
    .row>div:has(aside){
        padding-inline: 0;
    }

    .button-link-wrapper .button-link {
      padding: 13px 50px 13px;
    }
}

@media only screen and (max-width: 576px) {
    .section-tabs .tab-content .card>a {
        height: 300px;
    }
}

@media only screen and (max-width: 480px) {
    .slider .carousel {
        height: 250px;
    }
    
    .slider .carousel-item img{
        min-height: 250px;
    }

    .section-tabs .tab-content .card>a {
        height: 250px;
    }
}

@media only screen and (max-width: 320px) {
    .slider .carousel {
        height: 200px;
    }
    
    .slider .carousel-item img{
        min-height: 200px;
    }

    .section-tabs .tab-content .card>a {
        height: 200px;
    }
}