/* / */ 
:root{ --font-family-h:Montserrat; }/* Fonts */
@font-face {
    font-family: "Montserrat";
    src: url("/common/fonts/Montserrat/Montserrat-Bold.ttf") format("truetype");
    font-style: normal;
    font-weight: 700;
}

@font-face {
    font-family: "Montserrat";
    src: url("/common/fonts/Montserrat/Montserrat-SemiBold.ttf") format("truetype");
    font-style: normal;
    font-weight: 600;
}
@font-face {
    font-family: "Montserrat";
    src: url("/common/fonts/Montserrat/Montserrat-Medium.ttf") format("truetype");
    font-style: normal;
    font-weight: 500;
}
@font-face {
    font-family: "Montserrat";
    src: url("/common/fonts/Montserrat/Montserrat-Regular.ttf") format("truetype");
    font-style: normal;
    font-weight: 400;
}
@font-face {
    font-family: "Montserrat";
    src: url("/common/fonts/Montserrat/Montserrat-Light.ttf") format("truetype");
    font-style: normal;
    font-weight: 300;
}
@font-face {
    font-family: "Montserrat";
    src: url("/common/fonts/Montserrat/Montserrat-ExtraLight.ttf") format("truetype");
    font-style: normal;
    font-weight: 200;
}


@font-face {
    font-family: "Montserrat";
    src: url("/common/fonts/Montserrat/Montserrat-BoldItalic.ttf") format("truetype");
    font-style: italic;
    font-weight: 700;
}

@font-face {
    font-family: "Montserrat";
    src: url("/common/fonts/Montserrat/Montserrat-SemiBoldItalic.ttf") format("truetype");
    font-style: italic;
    font-weight: 600;
}
@font-face {
    font-family: "Montserrat";
    src: url("/common/fonts/Montserrat/Montserrat-MediumItalic.ttf") format("truetype");
    font-style: italic;
    font-weight: 500;
}
@font-face {
    font-family: "Montserrat";
    src: url("/common/fonts/Montserrat/Montserrat-Italic.ttf") format("truetype");
    font-style: italic;
    font-weight: 400;
}
@font-face {
    font-family: "Montserrat";
    src: url("/common/fonts/Montserrat/Montserrat-LightItalic.ttf") format("truetype");
    font-style: italic;
    font-weight: 300;
}
@font-face {
    font-family: "Montserrat";
    src: url("/common/fonts/Montserrat/Montserrat-ExtraLightItalic.ttf") format("truetype");
    font-style: italic;
    font-weight: 200;
}
:root{ --font-family-default:Roboto; }/* Fonts */
@font-face {
    font-family: "Roboto";
    src: url("/common/fonts/Roboto/Roboto-Bold.ttf") format("truetype");
    font-style: normal;
    font-weight: 700;
}

@font-face {
    font-family: "Roboto";
    src: url("/common/fonts/Roboto/Roboto-Medium.ttf") format("truetype");
    font-style: normal;
    font-weight: 600;
}
@font-face {
    font-family: "Roboto";
    src: url("/common/fonts/Roboto/Roboto-Regular.ttf") format("truetype");
    font-style: normal;
    font-weight: 500;
}
@font-face {
    font-family: "Roboto";
    src: url("/common/fonts/Roboto/Roboto-Light.ttf") format("truetype");
    font-style: normal;
    font-weight: 300;
}
@font-face {
    font-family: "Roboto";
    src: url("/common/fonts/Roboto/Roboto-BoldItalic.ttf") format("truetype");
    font-style: italic;
    font-weight: 700;
}
@font-face {
    font-family: "Roboto";
    src: url("/common/fonts/Roboto/Roboto-MediumItalic.ttf") format("truetype");
    font-style: italic;
    font-weight: 600;
}
@font-face {
    font-family: "Roboto";
    src: url("/common/fonts/Roboto/Roboto-Italic.ttf") format("truetype");
    font-style: italic;
    font-weight: 500;
}
@font-face {
    font-family: "Roboto";
    src: url("/common/fonts/Roboto/Roboto-LightItalic.ttf") format("truetype");
    font-style: italic;
    font-weight: 300;
}
section.block-banner{
    padding: 0;
}
section.block-banner.fullscreen{
    position: absolute;
    left: 0;
    right: 0;
}
section.block-banner.fullscreen .page-wrapper{
    position: relative;
    height: inherit;
    z-index: 1;
    padding-left: 12px;
    padding-right: 12px;
}
section.block-banner .additional-content p{
    line-height: 1.2;
}@charset "UTF-8";.blueimp-gallery,.blueimp-gallery>.slides>.slide>.slide-content,.blueimp-gallery>.slides>.slide>.slide-content>img{position:absolute;top:0;right:0;bottom:0;left:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;-ms-transition:opacity .2s linear;-o-transition:opacity .2s linear;transition:opacity .2s linear;backface-visibility:hidden;-moz-backface-visibility:hidden}.blueimp-gallery>.slides>.slide>.slide-content,.blueimp-gallery>.slides>.slide>.slide-content>img{margin:auto;width:auto;height:auto;max-width:100%;max-height:100%;opacity:1}.blueimp-gallery{position:fixed;z-index:999999;overflow:hidden;background:#000;opacity:0;display:none;direction:ltr;-ms-touch-action:pinch-zoom;touch-action:pinch-zoom}.blueimp-gallery-carousel{position:relative;z-index:auto;margin:1em auto;padding-bottom:56.25%;box-shadow:0 0 4px rgba(0,0,0,.1);-ms-touch-action:pan-y pinch-zoom;touch-action:pan-y pinch-zoom;display:block}.blueimp-gallery-display{display:block;opacity:1}.blueimp-gallery>.slides{position:relative;height:100%;overflow:hidden}.blueimp-gallery-carousel>.slides{position:absolute}.blueimp-gallery>.slides>.slide{visibility:hidden;position:relative;float:left;height:100%;text-align:center;-webkit-transition-timing-function:cubic-bezier(0.645,0.045,0.355,1);-moz-transition-timing-function:cubic-bezier(0.645,0.045,0.355,1);-ms-transition-timing-function:cubic-bezier(0.645,0.045,0.355,1);-o-transition-timing-function:cubic-bezier(0.645,0.045,0.355,1);transition-timing-function:cubic-bezier(0.645,0.045,0.355,1)}.blueimp-gallery>.slides>.slide-active,.blueimp-gallery>.slides>.slide-next,.blueimp-gallery>.slides>.slide-prev{visibility:visible}.blueimp-gallery>.slides>.slide-loading{background:url(/common/vendor/blueimp/img/loading.gif) center no-repeat;background-size:64px 64px}.blueimp-gallery-smil>.slides>.slide-loading{background-image:url(/common/vendor/blueimp/img/loading.svg)}.blueimp-gallery>.slides>.slide-loading>.slide-content{opacity:0}.blueimp-gallery>.slides>.slide-error{background:url(/common/vendor/blueimp/img/error.png) center no-repeat}.blueimp-gallery-svgasimg>.slides>.slide-error{background-image:url(/common/vendor/blueimp/img/error.svg)}.blueimp-gallery>.slides>.slide-error>.slide-content{display:none}.blueimp-gallery-display>.next,.blueimp-gallery-display>.prev{position:absolute;top:50%;left:15px;width:8px;height:20px;padding:10px 14px 10px 18px;margin-top:-23px;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;background:#222 url(/common/vendor/blueimp/img/prev.png) center no-repeat;background-color:rgba(0,0,0,.5);border:3px solid #fff;-webkit-border-radius:30px;-moz-border-radius:30px;border-radius:30px;opacity:.5;cursor:pointer;display:none}.blueimp-gallery-display>.next{right:15px;left:auto;background-image:url(/common/vendor/blueimp/img/next.png)}.blueimp-gallery-svgasimg>.prev{background-image:url(/common/vendor/blueimp/img/prev.svg)}.blueimp-gallery-svgasimg>.next{background-image:url(/common/vendor/blueimp/img/next.svg)}.blueimp-gallery-display>.close{position:absolute;top:15px;right:15px;width:30px;height:30px;background:url(/common/vendor/blueimp/img/close.png) center no-repeat;opacity:.8;cursor:pointer;display:none}.blueimp-gallery-svgasimg>.close{background-image:url(/common/vendor/blueimp/img/close.svg)}.blueimp-gallery>.title{position:absolute;top:15px;left:15px;margin:0 60px 0 0;font-size:20px;line-height:30px;color:#fff;text-shadow:0 0 2px #000;opacity:.8;display:none}.blueimp-gallery-display>.play-pause{position:absolute;right:15px;bottom:15px;width:30px;height:30px;background:url(/common/vendor/blueimp/img/play-pause.png) 0 0 no-repeat;cursor:pointer;opacity:.5;display:none}.blueimp-gallery-svgasimg>.play-pause{background-image:url(/common/vendor/blueimp/img/play-pause.svg)}.blueimp-gallery-playing>.play-pause{background-position:-30px 0}.blueimp-gallery-controls>.close,.blueimp-gallery-controls>.next,.blueimp-gallery-controls>.play-pause,.blueimp-gallery-controls>.prev,.blueimp-gallery-controls>.title{display:block;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0);-o-transform:translateZ(0);transform:translateZ(0)}.blueimp-gallery-left>.prev,.blueimp-gallery-right>.next,.blueimp-gallery-single>.next,.blueimp-gallery-single>.play-pause,.blueimp-gallery-single>.prev{display:none}.blueimp-gallery>.close,.blueimp-gallery>.next,.blueimp-gallery>.play-pause,.blueimp-gallery>.prev,.blueimp-gallery>.slides>.slide>.slide-content{-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.blueimp-gallery>.close:hover,.blueimp-gallery>.next:hover,.blueimp-gallery>.play-pause:hover,.blueimp-gallery>.prev:hover,.blueimp-gallery>.title:hover{color:#fff;opacity:1}*+html .blueimp-gallery>.slides>.slide{min-height:300px}*+html .blueimp-gallery>.slides>.slide>.slide-content{position:relative}*+html .blueimp-gallery>.slides>.slide>.slide-content>img{position:relative}@supports (object-fit:contain){.blueimp-gallery-contain>.slides>.slide>.slide-content,.blueimp-gallery-contain>.slides>.slide>.slide-content>img{width:100%;height:100%;object-fit:contain}}@media (prefers-color-scheme:light){.blueimp-gallery-carousel{background:#fff}}.blueimp-gallery>.indicator{position:absolute;top:auto;right:15px;bottom:15px;left:15px;margin:0 40px;padding:0;list-style:none;text-align:center;line-height:10px;display:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.blueimp-gallery>.indicator>li{display:inline-block;position:relative;width:9px;height:9px;margin:6px 3px 0 3px;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;border:1px solid transparent;background:#ccc;background:rgba(255,255,255,.25) center no-repeat;border-radius:5px;box-shadow:0 0 2px #000;opacity:.5;cursor:pointer}*+html .blueimp-gallery>.indicator>li{display:inline}.blueimp-gallery>.indicator>.active,.blueimp-gallery>.indicator>li:hover{background-color:#fff;border-color:#fff;opacity:1}.blueimp-gallery>.indicator>li:after{opacity:0;display:block;position:absolute;content:'';top:-5em;left:4px;width:75px;height:75px;transition:transform .6s ease-out,opacity .4s ease-out;transform:translateX(-50%) translateY(0) translateZ(0);pointer-events:none}.blueimp-gallery>.indicator>li:hover:after{opacity:1;border-radius:50%;background:inherit;transform:translateX(-50%) translateY(-5px) translateZ(0)}.blueimp-gallery>.indicator>.active:after{display:none}.blueimp-gallery-controls>.indicator{display:block;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0);-o-transform:translateZ(0);transform:translateZ(0)}.blueimp-gallery-single>.indicator{display:none}.blueimp-gallery>.slides>.slide>.video-content>.video-cover,.blueimp-gallery>.slides>.slide>.video-content>iframe,.blueimp-gallery>.slides>.slide>.video-content>video{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.blueimp-gallery>.slides>.slide>.video-content>.video-cover{background:center no-repeat;background-size:contain}.blueimp-gallery>.slides>.slide>.video-iframe>.video-cover{background-color:#000;background-color:rgba(0,0,0,.7)}.blueimp-gallery>.slides>.slide>.video-content>.video-play{position:absolute;top:50%;right:0;left:0;margin:-64px auto 0;width:128px;height:128px;background:url(/common/vendor/blueimp/img/video-play.png) center no-repeat;opacity:.8;cursor:pointer}.blueimp-gallery-svgasimg>.slides>.slide>.video-content>.video-play{background-image:url(/common/vendor/blueimp/img/video-play.svg)}.blueimp-gallery>.slides>.slide>.video-playing>.video-cover,.blueimp-gallery>.slides>.slide>.video-playing>.video-play{display:none}.blueimp-gallery>.slides>.slide>.video-loading>.video-play{background:url(/common/vendor/blueimp/img/loading.gif) center no-repeat;background-size:64px 64px}.blueimp-gallery-smil>.slides>.slide>.video-loading>.video-play{background-image:url(/common/vendor/blueimp/img/loading.svg)}*+html .blueimp-gallery>.slides>.slide>.video-content{height:100%}*+html .blueimp-gallery>.slides>.slide>.video-content>.video-play{left:50%;margin-left:-64px}.blueimp-gallery>.slides>.slide>.video-content>.video-play:hover{opacity:1}.blueimp-gallery-display > .next, .blueimp-gallery-display > .prev,
.blueimp-gallery-display > .next, .blueimp-gallery-display > .next,
.blueimp-gallery > .slides > .slide-loading,
.blueimp-gallery-smil > .slides > .slide-loading,
.blueimp-gallery > .slides > .slide-error,
.blueimp-gallery-svgasimg > .slides > .slide-error,
.blueimp-gallery-display > .next,
.blueimp-gallery-svgasimg > .prev,
.blueimp-gallery-svgasimg > .next,
.blueimp-gallery-display > .close,
.blueimp-gallery-svgasimg > .close,
.blueimp-gallery-display > .play-pause,
.blueimp-gallery-svgasimg > .play-pause,
.blueimp-gallery > .slides > .slide > .video-content > .video-play,
.blueimp-gallery-svgasimg > .slides > .slide > .video-content > .video-play,
.blueimp-gallery > .slides > .slide > .video-loading > .video-play,
.blueimp-gallery-smil > .slides > .slide > .video-loading > .video-play{
    background-image: none;
}

.blueimp-gallery{
    height: 100%;
    margin: 0;
    padding: 0;
}

@supports (object-fit:cover){
    .blueimp-gallery-contain>.slides>.slide>.slide-content, .blueimp-gallery-contain>.slides>.slide>.slide-content>img{
        object-fit: cover;
        object-position: center;
    }
}.blueimp-gallery.blueimp-gallery-banner .title,
.blueimp-gallery.blueimp-gallery-banner .additional-content{
    padding: 20px;
}
.blueimp-gallery.blueimp-gallery-banner .title{
    color: var(--white-text-color);
}
.blueimp-gallery.blueimp-gallery-banner .additional-content{
    position: absolute;
    color: var(--white-text-color);
    left: 30px;
    bottom: 30px;
    font-size: 16px;
    line-height: 18px;
    max-width: 80%;
    max-height: 80%;
    overflow: hidden;
}

.blueimp-gallery.blueimp-gallery-banner .additional-content.empty{
    display: none;
}

.blueimp-gallery.blueimp-gallery-banner .additional-content *{
    font-size: inherit;
}

.blueimp-gallery.blueimp-gallery-banner>.indicator>li:after{
    display: none;
}

.blueimp-gallery-display>.next, .blueimp-gallery-display>.prev{
    background: none;
    border: none;
    color: var(--icon-color);
    opacity: 1;
}

.blueimp-gallery.blueimp-gallery-banner .additional-content.card-style{
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
    background-color: var(--content2-background-color);
    color: var(--text-primary-color);
    border-radius: 8px;
}

.blueimp-gallery.blueimp-gallery-banner .additional-content.position-center{
    top: 50%;
    left: 50%;
    right: initial;
    bottom: initial;
    transform: translate(-50%, -50%);
}

.blueimp-gallery.blueimp-gallery-banner .additional-content.position-top-center{
    top: 30px;
    left: 50%;
    right: initial;
    bottom: initial;
    transform: translateX(-50%);
}

.blueimp-gallery.blueimp-gallery-banner .additional-content.position-top-left{
    top: 30px;
    left: 30px;
    right: initial;
    bottom: initial;
}

.blueimp-gallery.blueimp-gallery-banner .additional-content.position-top-right{
    top: 30px;
    left: initial;
    right: 30px;
    bottom: initial;
}

.blueimp-gallery.blueimp-gallery-banner .additional-content.position-bottom-center{
    top: initial;
    bottom: 30px;
    left: 50%;
    right: initial;
    transform: translateX(-50%);
}

.blueimp-gallery.blueimp-gallery-banner .additional-content.position-bottom-left{
    top: initial;
    bottom: 30px;
    left: 12px;
    right: initial;
}

.blueimp-gallery.blueimp-gallery-banner .additional-content.position-bottom-right{
    top: initial;
    bottom: 30px;
    left: initial;
    right: 12px;
}

.blueimp-gallery.blueimp-gallery-banner .additional-content.position-left-center{
    top: 50%;
    left: 30px;
    bottom: initial;
    transform: translateY(-50%);
}

.blueimp-gallery.blueimp-gallery-banner .additional-content.position-right-center{
    top: 50%;
    bottom: initial;
    left: initial;
    right: 30px;
    transform: translateY(-50%);
}
.slider-wrapper .section-title{
	margin: 0;
}

.blog-items-slider .article-item .article-item-title {
    width: 100%;
    font-weight: 500;
    font-size: 20px;
    line-height: 26px;
    margin-bottom: 10px;
    height: 80px;
    overflow: hidden;
}

.blog-items-slider .article-item .article-item-publish {
    font-weight: 300;
    display: block;
    font-size: 15px;
    width: 110px;
    flex-shrink: 0;
    margin-left: 10px;
}

@media (max-width: 600px){
    .articles-slider.list-view .slider-container li .article-item .article-item-image{
          width: 100%;
    }
}
.article-item {
    padding: 0;
    margin: 0;
}

.article-item.content-card {
    margin: 0;
    overflow: hidden;
}

.list-view .article-item.content-card {
    display: flex;
    flex-direction: row;
    position: relative;
}

.article-item.content-card.compact > .content-wrapper {
    padding-bottom: 20px;
}

.list-view .article-item.content-card > .content-wrapper {
    padding-bottom: 70px;
    width: 100%;
}

.article-item .article-item-image {
    height: 300px;
}

.list-view .article-item .article-item-image {
    width: 300px;
    /*height: auto;*/
    flex-shrink: 0;
}

.article-item .article-item-image a {
    display: block;
    width: 100%;
    height: 100%;
}

.article-item .article-item-image a img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.article-item .article-item-image a img {
    object-fit: cover;
    object-position: center;
}

.article-item .article-item-title {
    width: 100%;
    font-weight: 500;
    font-size: 16px;
    margin-bottom: 10px;
    height: 72px;
    overflow: hidden;
}

.article-item .article-items-buttons{
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
}

.list-view .article-item .article-item-title {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.article-item .article-item-publish {
    font-weight: 300;
    display: block;
    font-size: 14px;
}

.article-item .article-item-teaser {
    height: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 20px;
}

.list-view .article-item .article-item-teaser {
    height: 75px;
}

.list-view .article-item .article-items-buttons {
    position: absolute;
    right: 20px;
    bottom: 20px;
}

.article-image {
    height: 400px;
    margin: 0 auto 20px auto;
}

.article-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.article-tags {
    margin-top: 20px;
    padding-top: 10px;
    border-top: 1px solid var(--content-border-color);
}

.article-tags a {
    margin-right: 10px;
    background: var(--content-background-color);
    border-radius: 8px;
    padding: 4px 8px;
    color: var(--secondary-text-color);
    text-decoration: none;
}

@media (max-width: 768px) {
    .list-view .article-item .article-item-image{
        width: 200px;
    }
}

@media (max-width: 600px) {
    .list-view .article-item.content-card{
        display: block;
    }

    .list-view .article-item .article-item-image{
        width: 100%;
        height: 300px;
    }

    .list-view .article-item .article-item-title{
        display: block;
    }
}
/* card options (articles list block) */
.list-view .article-item.image-right .article-item-image {
    order: 2;
}
.list-view .article-item.image-top.content-card {
    flex-direction: column;
}
.list-view .article-item.image-top .article-item-image {
    width: 100%;
}
.list-view .article-item.no-button.content-card > .content-wrapper {
    padding-bottom: 20px;
}
/* link is inline-flex (text + icon with gap): text-decoration would underline
   text and icon separately, so one line under the whole link */
.article-item .article-item-more-link {
    color: var(--accent-text-color);
    text-decoration: none;
    border-bottom: 1px solid currentColor;
    line-height: 1.3;
}
.article-item .article-item-more-link:hover,
.article-item .article-item-more-link:focus {
    text-decoration: none;
}
.article-item.no-image .article-item-title,
.article-item.no-image .article-item-teaser {
    height: auto;
}
.list-view .article-item.image-right.content-card > .content-wrapper,
.list-view .article-item.image-top.content-card > .content-wrapper {
    position: relative;
}

/* image size: small = default 300px */
.list-view .article-item.image-size-xsmall .article-item-image {
    width: 150px;
    height: 150px;
}
.list-view .article-item.image-size-medium .article-item-image {
    width: 400px;
    height: 400px;
}
.list-view .article-item.image-size-large .article-item-image {
    width: 500px;
    height: 500px;
}
.list-view .article-item.image-size-xlarge .article-item-image {
    width: 600px;
    height: 600px;
}
.list-view .article-item.image-top.image-size-xsmall .article-item-image,
.list-view .article-item.image-top.image-size-medium .article-item-image,
.list-view .article-item.image-top.image-size-large .article-item-image,
.list-view .article-item.image-top.image-size-xlarge .article-item-image {
    width: 100%;
}
@media (max-width: 960px) {
    .list-view .article-item.image-size-medium .article-item-image,
    .list-view .article-item.image-size-large .article-item-image,
    .list-view .article-item.image-size-xlarge .article-item-image {
        width: 40%;
    }
    .list-view .article-item.image-top .article-item-image {
        width: 100%;
    }
}
@media (max-width: 600px) {
    .list-view .article-item.image-size-xsmall .article-item-image,
    .list-view .article-item.image-size-medium .article-item-image,
    .list-view .article-item.image-size-large .article-item-image,
    .list-view .article-item.image-size-xlarge .article-item-image {
        width: 100%;
        height: 300px;
    }
}

/* image height by image */
.article-item.image-ratio-auto .article-item-image,
.list-view .article-item.image-ratio-auto .article-item-image,
.article-item.image-ratio-auto .article-item-image a,
.article-item.image-ratio-auto .article-item-image a img {
    height: auto;
}
.article-item.image-ratio-auto .article-item-image a img {
    display: block;
    object-fit: initial;
}
.list-view .article-item.image-ratio-auto.content-card {
    align-items: stretch;
}
.list-view .article-item.image-ratio-auto .article-item-image {
    align-self: flex-start;
}
@media (max-width: 600px) {
    .list-view .article-item.image-ratio-auto .article-item-image {
        height: auto;
    }
}

/* date layout */
.list-view .article-item.date-first.date-inline .article-item-title {
    justify-content: flex-start;
    gap: 10px;
}
.article-item.date-line .article-item-publish {
    display: block;
    margin-bottom: 10px;
}
.article-item.date-line .article-item-title {
    height: auto;
    min-height: 0;
}
.article-item .article-item-publish i {
    margin-right: 4px;
}
.article-item.no-image.date-inline .article-item-title {
    margin-bottom: 0;
}

/* calendar date */
.article-item .article-item-publish.article-date-calendar {
    display: inline-flex;
    flex-direction: column;
    align-items: stretch;
    flex: 0 0 auto;
    width: 4.2em;
    border: 1px solid var(--article-date-color, var(--accent-text-color));
    border-radius: var(--u-radius, 6px);
    overflow: hidden;
    text-align: center;
    line-height: 1.1;
    font-weight: 400;
}
.article-date-calendar .article-date-month {
    display: block;
    padding: 0.25em 0;
    background: var(--article-date-color, var(--accent-text-color));
    color: #fff;
    font-size: 0.85em;
    text-transform: uppercase;
}
.article-date-calendar .article-date-day {
    display: block;
    padding: 0.2em 0 0;
    font-size: 1.9em;
    font-weight: 600;
}
.article-date-calendar .article-date-year {
    display: block;
    padding: 0 0 0.3em;
    font-size: 0.75em;
    opacity: 0.7;
}
.article-item.date-calendar .article-item-title {
    display: flex;
    height: auto;
    min-height: 0;
    align-items: flex-start;
    gap: 10px;
}
.article-item.date-calendar.date-line .article-item-publish.article-date-calendar {
    display: flex;
    margin-bottom: 10px;
}

/* button position */
.list-view .article-item.content-card > .content-wrapper {
    position: relative;
    height: auto;
}
.list-view .article-item .article-items-buttons {
    left: 20px;
}
.article-item.button-left .article-items-buttons {
    justify-content: flex-start;
}
.article-item.button-center .article-items-buttons {
    justify-content: center;
}
.article-item .article-items-buttons a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

/* text align: the name is a block, else text-align on an inline span does nothing
   (the title is a plain block unless the date is in line with it) */
.article-item .article-item-name {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
}
.article-item.title-align-center .article-item-name { text-align: center; }
.article-item.title-align-right .article-item-name { text-align: right; }
.article-item.teaser-align-center .article-item-teaser { text-align: center; }
.article-item.teaser-align-right .article-item-teaser { text-align: right; }
.article-item.teaser-align-justify .article-item-teaser { text-align: justify; }

/* big date */
.article-item .article-item-publish.article-date-big {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 0.2em;
    flex: 0 0 auto;
    font-weight: 400;
    line-height: 1;
    text-align: center;
}
/* sizes as in the calendar: the two styles differ in look, not in scale */
.article-date-big .article-date-day {
    font-size: 1.9em;
    font-weight: 600;
    color: var(--article-date-color, var(--accent-text-color));
}
.article-date-big .article-date-month {
    font-size: 0.85em;
    text-transform: uppercase;
    letter-spacing: .05em;
}
.article-date-big .article-date-year {
    font-size: 0.75em;
    opacity: 0.7;
}
.article-item.date-big .article-item-title {
    height: auto;
    min-height: 0;
    align-items: flex-start;
    gap: 10px;
}
.article-item.date-big.date-line .article-item-publish.article-date-big {
    display: flex;
    width: max-content;
    margin-bottom: 10px;
}

/* date on the image (articles list / grid block): badge in a corner */
.article-item.date-on-image .article-item-image {
    position: relative;
}
.article-item .article-item-image-date {
    position: absolute;
    z-index: 1;
    margin: 16px;
    line-height: 1.2;
    pointer-events: none;
}
.article-item .article-item-image-date.date-pos-top-left { top: 0; left: 0; }
.article-item .article-item-image-date.date-pos-top-right { top: 0; right: 0; }
.article-item .article-item-image-date.date-pos-bottom-left { bottom: 0; left: 0; }
.article-item .article-item-image-date.date-pos-bottom-right { bottom: 0; right: 0; }
.article-item .article-item-image-date .article-item-publish {
    margin: 0;
}
/* no frame (option «Рамка» off): white over the picture, a shadow keeps it readable;
   the calendar keeps its own sheet and colours */
.article-item .article-item-image-date:not(.date-style-calendar) .article-item-publish,
.article-item .article-item-image-date:not(.date-style-calendar) .article-date-big .article-date-day {
    color: var(--article-date-color, #fff);
    text-shadow: 0 1px 3px rgba(0, 0, 0, .55);
}
/* with the frame — the usual colours on its background */
.article-item .article-item-image-date .article-date-frame .article-item-publish {
    color: var(--article-date-color, var(--primary-text-color));
    text-shadow: none;
}
.article-item .article-item-image-date .article-date-frame .article-date-big .article-date-day {
    color: var(--article-date-color, var(--accent-text-color));
    text-shadow: none;
}
.article-item .article-item-image-date.date-style-big .article-item-publish.article-date-big {
    display: inline-flex;
}
/* calendar is a style with its own sheet, not a frame */
.article-item .article-item-image-date .article-item-publish.article-date-calendar {
    text-shadow: none;
    display: flex;
    background: var(--content-background-color);
}

/* title and teaser on the image (grid): over a shade at the bottom; clicks go to the image link */
.article-item.text-on-image .article-item-image {
    position: relative;
}
.article-item .article-item-image-text {
    position: absolute;
    left: 0;
    right: 0;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #fff;
    pointer-events: none;
}
/* one gap between elements: their own margins (date 10px, teaser 20px) made it 6 / 16 / 34;
   specific enough to beat .article-item.date-big.date-line .article-item-publish.article-date-big */
.article-item.text-on-image .article-item-image .article-item-image-text > *,
.article-item.text-on-image .article-item-image .article-item-image-stack > *,
.article-item.text-on-image .article-item-image .article-item-image-text .article-item-publish {
    margin-top: 0;
    margin-bottom: 0;
}
/* corner badge on the same side as the text: in one row with it, at its corner
   (top — both at the top, bottom — both at the bottom) */
.article-item .article-item-image-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}
.article-item .pos-bottom > .article-item-image-row {
    align-items: flex-end;
}
.article-item .article-item-image-row.corner-left {
    flex-direction: row-reverse;
}
.article-item .article-item-image-stack {
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1 1 auto;
    min-width: 0;
}
.article-item .article-item-image-row > .article-item-image-date {
    position: static;
    margin: 0;
    flex: 0 0 auto;
}

.article-item .article-item-image-text.pos-bottom {
    bottom: 0;
    padding: 40px 16px 16px;
    background: linear-gradient(to top, rgba(0, 0, 0, .7), rgba(0, 0, 0, 0));
}
.article-item .article-item-image-text.pos-top {
    top: 0;
    padding: 16px 16px 40px;
    background: linear-gradient(to bottom, rgba(0, 0, 0, .7), rgba(0, 0, 0, 0));
}
.article-item .article-item-image-text .article-item-title {
    height: auto;
    min-height: 0;
    margin: 0;
    color: #fff;
}
.article-item .article-item-image-text .article-item-teaser {
    height: auto;
    color: rgba(255, 255, 255, .9);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.article-item .article-item-image-text .article-item-publish,
.article-item .article-item-image-text .article-date-big .article-date-day {
    /* accent on a dark shade is unreadable: white, unless the block sets its own colour */
    color: var(--article-date-color, #fff);
}
/* below the image only the button is left: a thin strip, not a stretched area */
.article-item.text-on-image > .content-wrapper {
    min-height: 0;
}
.article-item.only-button > .content-wrapper,
.articles-list.grid-view .article-item.only-button.content-card > .content-wrapper {
    flex: 0 0 auto;
    height: auto;
    padding: 10px 16px;
}
.article-item.only-button .article-items-buttons,
.articles-list.grid-view .article-item.only-button .article-items-buttons {
    margin-top: 0;
}

/* date frame (option): badge with background next to the title, as the badge on the image */
.article-date-frame {
    display: inline-flex;
    align-self: flex-start;
    flex: 0 0 auto;
    padding: 4px 8px;
    background: var(--content-background-color);
    color: var(--primary-text-color);
    border-radius: 8px;
    line-height: 1.2;
}
.article-date-frame.date-frame-big {
    padding: 8px 12px;
}
/* big date in a frame: one width for any day and month, otherwise the badges
   in a grid differ by a digit («7» / «27») and by the month abbreviation;
   in em of the date font, so it grows with the font option. With the padding
   the badge is as wide as the calendar sheet (4.2em) */
.article-item .article-date-frame.date-frame-big .article-item-publish.article-date-big {
    width: 2.5em;
    min-width: max-content;
}
/* regular date in a frame: a little heavier, the badge reads as one label */
.article-date-frame.date-frame-line .article-item-publish {
    font-weight: 500;
}
.article-date-frame .article-item-publish {
    margin: 0;
}
/* on the image shade the date is white; on its frame — the usual colours */
.article-item .article-item-image-text .article-date-frame .article-item-publish {
    color: var(--article-date-color, var(--primary-text-color));
}
.article-item .article-item-image-text .article-date-frame .article-date-big .article-date-day {
    color: var(--article-date-color, var(--accent-text-color));
}

/* the date under / above the title follows the title alignment, framed or not,
   on the image and below it (a big or framed date is as wide as its content) */
.article-date-frame {
    display: flex;
    width: max-content;
    max-width: 100%;
}
.article-item.title-align-center :is(.article-item-image-text, .article-item-image-stack) > :is(.article-item-publish, .article-date-frame),
.article-item.title-align-center > .content-wrapper > :is(.article-item-publish, .article-date-frame) {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.article-item.title-align-right :is(.article-item-image-text, .article-item-image-stack) > :is(.article-item-publish, .article-date-frame),
.article-item.title-align-right > .content-wrapper > :is(.article-item-publish, .article-date-frame) {
    margin-left: auto;
    margin-right: 0;
    text-align: right;
}

/* date below the image on its own (the title is on the image): left or right */
.article-item .article-item-date-row {
    display: flex;
    margin-bottom: 10px;
}
.article-item .article-item-date-row.align-right {
    justify-content: flex-end;
}
.article-item .article-item-date-row .article-item-publish {
    margin: 0;
}

/* title and teaser below the image in one column, the in-line date beside it */
.article-item .article-item-text-row > .article-item-image-stack {
    gap: 10px;
}
.article-item .article-item-text-row .article-item-image-stack > * {
    margin-top: 0;
    margin-bottom: 0;
}
.article-item .article-item-text-row > :is(.article-item-publish, .article-date-frame) {
    flex: 0 0 auto;
    margin: 0;
}

.articles-slider.list-view.visible-slides-qty-2 li .article-item-image{
    width: 40%;
}

.articles-slider.list-view.visible-slides-qty-1 .list-view .article-item .article-item-teaser {
    height: 150px;
}

@media (max-width: 1400px){
    .articles-slider.list-view.visible-slides-qty-2 li{
        min-width: auto;
    }
}

@media (max-width: 992px){
    .articles-slider.visible-slides-qty-2.list-view .slider-container li{
        min-width: auto;
        width: 100%;
    }
}.slider *{
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; /* Standard syntax */
}
.slider{
    width: 100%;
    max-width: 100%;
    position: relative;
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; /* Standard syntax */
}

.slider-wrapper .section-title{
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 34px;
    padding-left: 34px;
}

.slider-container {
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
    padding: 30px 0;
}

.slider-container ul{
    gap: 10px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    padding: 0;
    margin: 0;
    list-style: none;
    width: 100%;
    transition: left 0.5s ease;
    position: relative;
    left: 0;
}

.slider-container ul li{
    padding: 0;
    margin: 0;
    flex-shrink: 0;
}

.slider.visible-slides-qty-1 .slider-container ul li{
    width: 100%;
}
.slider.visible-slides-qty-2 .slider-container ul li{
    width: calc((100% - 10px) / 2);
}

.slider.visible-slides-qty-3 .slider-container ul li{
    width: calc((100% - 20px) / 3);
}

.slider.visible-slides-qty-4 .slider-container ul li{
    width: calc((100% - 30px) / 4);
}

.slider.visible-slides-qty-5 .slider-container ul li{
    width: calc((100% - 40px) / 5);
}

.slider.visible-slides-qty-6 .slider-container ul li{
    width: calc((100% - 50px) / 6);
}

.slider .slider-control {
    position: absolute;
    top: 50%;
    font-size: 24px;
    line-height: 24px;
    display: block;
    margin-top: -24px;
    padding: 0;
    cursor: pointer;
    color: var(--icon-color);
    border: none;
    outline: 0;
    box-shadow: none;
    z-index: 1;
    width: 24px;
    height: 48px;
    background: none;
    min-width: auto;
}

.slider .slider-control-left {
    left: -26px
}

.slider .slider-control-right {
    right: -26px
}

@media (max-width: 992px) {
    .slider.visible-slides-qty-4 .slider-container ul li{
        width: 33.33333333%;
    }

    .slider.visible-slides-qty-5 .slider-container ul li{
        width: 33.33333333%;
    }

    .slider.visible-slides-qty-6 .slider-container ul li{
        width: 33.33333333%;
    }
}
@media (max-width: 920px) {
    .slider .slider-control-left {
        left: -20px
    }

    .slider .slider-control-right {
        right: -20px
    }
}

@media (max-width: 768px) {
    .slider.visible-slides-qty-3 .slider-container ul li{
        width: 50%;
    }

    .slider.visible-slides-qty-4 .slider-container ul li{
        width: 50%;
    }

    .slider.visible-slides-qty-5 .slider-container ul li{
        width: 50%;
    }

    .slider.visible-slides-qty-6 .slider-container ul li{
        width: 50%;
    }
}

@media (max-width: 600px) {
    .slider.visible-slides-qty-3 .slider-container ul li{
        width: 100%;
    }

    .slider.visible-slides-qty-4 .slider-container ul li{
        width: 100%;
    }

    .slider.visible-slides-qty-5 .slider-container ul li{
        width: 100%;
    }

    .slider.visible-slides-qty-6 .slider-container ul li{
        width: 100%;
    }
}/*
 * SiteMenuWidget: меню шапки витрины. Цвета наследуются от темы: текст и ссылки `color: inherit` (на тёмной шапке светлые, на светлой тёмные), наведение, рамки
 * и приглушённый текст считаются от `currentColor` через color-mix, поэтому ничего не зависит от цвета страницы.
 * Тема может задать свои значения переменными `--site-menu-*` (text, bg, muted, border, hover, accent, on-accent, panel-bg, panel-text, radius, gap, height, z, pad).
 * Подменю (выпадающая панель) имеет собственный фон: `--site-menu-panel-bg`, затем `--site-menu-bg`, запасной системный `Canvas`; текст на нём `--site-menu-panel-text`,
 * затем `--site-menu-text`, запасной `CanvasText`. Тема, задавшая фон панели, задаёт и цвет текста (пара). Без переменных панель светлая с тёмным текстом
 * на любой шапке. Цвет акцентной кнопки: `--site-menu-accent` (запасной `--accent-color`, `--primary-color`, иначе цвет текста), текст на ней `--site-menu-on-accent`.
 * Подменю открываются по :hover и :focus-within, то есть работают с клавиатуры без JS.
 * Вид задают классы корня: направление `.site-menu--h` | `.site-menu--v`, подменю `.site-menu--sub-dropdown|columns|expanded|none`.
 * Без классов (вывод прежнего вида, `mode=tree`) работают прежние правила: горизонтальное меню и карта разделов.
 */
.site-menu,.site-menu--part{
    --sm-text:var(--site-menu-text,currentColor);
    --sm-bg:var(--site-menu-bg,var(--header-bg,transparent));
    --sm-panel:var(--site-menu-panel-bg,var(--site-menu-bg,Canvas));
    --sm-panel-text:var(--site-menu-panel-text,var(--site-menu-text,CanvasText));
    --sm-muted:var(--site-menu-muted,color-mix(in srgb,currentColor 62%,transparent));
    --sm-border:var(--site-menu-border,color-mix(in srgb,currentColor 22%,transparent));
    --sm-hover:var(--site-menu-hover,color-mix(in srgb,currentColor 10%,transparent));
    --sm-accent:var(--site-menu-accent,var(--accent-color,var(--primary-color,currentColor)));
    --sm-on-accent:var(--site-menu-on-accent,var(--on-accent-color,Canvas));
    --sm-radius:var(--site-menu-radius,var(--radius,6px));
    --sm-gap:var(--site-menu-gap,20px);
    --sm-height:var(--site-menu-height,64px);
    --sm-z:var(--site-menu-z,50);
    box-sizing:border-box;
    color:var(--site-menu-text,inherit);
    font:inherit;
}
.site-menu *,.site-menu *::before,.site-menu *::after,.site-menu--part *,.site-menu--part *::before,.site-menu--part *::after{box-sizing:border-box}
.site-menu--header{position:relative;display:flex;align-items:center;gap:var(--sm-gap);min-height:var(--sm-height);padding:0 var(--site-menu-pad,16px);background:var(--sm-bg)}
.site-menu--part{position:relative}
.site-menu ul,.site-menu__list{margin:0;padding:0;list-style:none}

/* логотип */
.site-menu__logo{display:inline-flex;flex:none;align-items:center;color:inherit;font-weight:700;text-decoration:none}
.site-menu__logo-img{display:block;width:auto;max-width:200px}
.site-menu__logo--s .site-menu__logo-img{height:24px}
.site-menu__logo--m .site-menu__logo-img{height:36px}
.site-menu__logo--l .site-menu__logo-img{height:52px}
.site-menu__logo--s{font-size:.9em}.site-menu__logo--l{font-size:1.4em}

/* верхний уровень */
.site-menu__nav{flex:1 1 auto;min-width:0}
.site-menu__list{display:flex;flex-wrap:wrap;align-items:center;gap:4px var(--sm-gap)}
.site-menu__item{position:relative;display:flex;align-items:center}
.site-menu__item.is-mega{position:static}
.site-menu__link,.site-menu__button{font:inherit;color:inherit;text-decoration:none;cursor:pointer}
.site-menu__link{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 4px;background:none;border:0;border-bottom:2px solid transparent}
.site-menu__link:hover{border-bottom-color:var(--sm-border);opacity:.85}
.site-menu__item.is-active>.site-menu__link,.site-menu__item.is-active-branch>.site-menu__link{font-weight:600;border-bottom-color:var(--sm-accent)}
.site-menu__link:focus-visible,.site-menu__button:focus-visible,.site-menu__cta:focus-visible,.site-menu__logo:focus-visible{outline:2px solid var(--sm-accent);outline-offset:2px}
.site-menu__item.has-sub>.site-menu__link::after{content:"";width:5px;height:5px;margin-left:2px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.7}
.site-menu__text{min-width:0}
.site-menu__img{display:block;flex:none;width:40px;height:40px;object-fit:cover;border-radius:calc(var(--sm-radius) - 2px)}
.site-menu__body{display:flex;flex-direction:column;min-width:0;text-align:left}
.site-menu__desc{display:block;font-size:.85em;line-height:1.35;color:var(--sm-muted);font-weight:400}

/* кнопки: пункт-кнопка и кнопка шапки; класс `button` темы может переопределить вид */
.site-menu__button,.site-menu__cta{display:inline-flex;flex:none;align-items:center;justify-content:center;min-height:40px;padding:0 16px;font-weight:600;line-height:1.2;text-decoration:none;white-space:nowrap;border:1px solid var(--sm-accent);border-radius:var(--sm-radius);background:var(--site-menu-item-bg,var(--sm-accent));color:var(--sm-on-accent);cursor:pointer}
.site-menu__button:hover,.site-menu__cta:hover{filter:brightness(1.1)}
.site-menu__button--outline,.site-menu__cta--outline{background:transparent;color:var(--sm-text);border-color:var(--sm-border)}
.site-menu__button--outline:hover,.site-menu__cta--outline:hover{background:var(--sm-hover);filter:none}
.site-menu__button--theme{background:var(--site-menu-item-bg,transparent);color:var(--sm-text);border-color:var(--sm-border)}
.site-menu__cta--text{background:transparent;color:var(--sm-text);border-color:transparent;padding:0 6px}

/* подменю: открывается по наведению и по фокусу внутри (клавиатура без JS) */
.site-menu__sub{position:absolute;top:100%;left:0;z-index:var(--sm-z);display:none;min-width:220px;padding:6px;background:var(--sm-panel);color:var(--sm-panel-text);border:1px solid var(--sm-border);border-radius:var(--sm-radius);box-shadow:0 8px 24px rgba(0,0,0,.12)}
.site-menu__sub .site-menu__item{display:block}
.site-menu__sub .site-menu__link{display:flex;width:100%;min-height:36px;padding:6px 10px;border:0;border-radius:calc(var(--sm-radius) - 2px)}
.site-menu__sub .site-menu__link:hover,.site-menu__sub .site-menu__link:focus-visible{background:var(--sm-hover)}
.site-menu__sub .site-menu__item.is-active>.site-menu__link{border:0;background:var(--sm-hover)}
.site-menu__sub .site-menu__link.has-rich{align-items:flex-start;gap:10px}
.site-menu__sub .site-menu__link.has-rich .site-menu__text{font-weight:600}
.site-menu__sub .site-menu__item.has-sub>.site-menu__link::after{margin-left:auto;transform:rotate(-45deg)}
.site-menu__sub .site-menu__sub{top:-7px;left:100%}
.site-menu__item:hover>.site-menu__sub,.site-menu__item:focus-within>.site-menu__sub{display:block}
.site-menu__sub .site-menu__button{width:100%;margin:2px 0}

/* мега-меню: подпункты пункта верхнего уровня колонками на всю ширину шапки */
.site-menu__sub--mega{left:0;right:0;min-width:0;padding:20px var(--site-menu-pad,16px)}
.site-menu__sub--mega::before{content:"";position:absolute;left:0;right:0;top:-24px;height:24px}
.site-menu__item:hover>.site-menu__sub--mega,.site-menu__item:focus-within>.site-menu__sub--mega{display:grid;grid-template-columns:repeat(var(--site-menu-cols,4),minmax(0,1fr));gap:16px 24px}
.site-menu__sub--mega>.site-menu__col>.site-menu__link{font-weight:600}
.site-menu__col-list{display:grid;gap:2px;margin-top:4px!important}
/* карточка «Акція» (upcc12): последняя колонка; фон пункта (bg) или светлый тон акцента темы */
.site-menu__card{align-self:start;list-style:none}
.site-menu__card-box{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:var(--sm-radius);background:var(--site-menu-card-bg,color-mix(in srgb,var(--sm-accent) 14%,var(--sm-panel,#fff)));color:var(--site-menu-card-fg,inherit);text-decoration:none}
a.site-menu__card-box:hover{text-decoration:none;filter:brightness(.97)}
.site-menu__card-img{display:block;width:100%;height:auto;max-height:140px;object-fit:cover;border-radius:calc(var(--sm-radius) / 2)}
.site-menu__card-title{font-size:1.1em;line-height:1.25;overflow-wrap:anywhere}
.site-menu__card-text{font-size:.9em;overflow-wrap:anywhere}

/* режим tree (карта разделов): все уровни раскрыты, колонки делает тема, здесь только структура; цвет наследуется */
.site-menu__tree,.site-menu__branch{margin:0;padding:0;list-style:none}
.site-menu__tree .site-menu__item{display:block;position:static}
.site-menu__tree .site-menu__link{display:inline-flex;align-items:center;gap:8px;min-height:0;padding:0;border:0;color:inherit}
.site-menu__tree .site-menu__link:hover{opacity:.8;text-decoration:underline}
.site-menu__tree .site-menu__link--head,.site-menu__head{font-weight:700}
.site-menu__head{display:inline-block}
.site-menu__head--sub{font-weight:600}
.site-menu__branch{display:flex;flex-direction:column;gap:2px;margin-top:6px}
.site-menu__branch .site-menu__branch{padding-left:12px}
.site-menu__tree .site-menu__item.is-active>.site-menu__link,.site-menu__tree .site-menu__item.is-active-branch>.site-menu__link{font-weight:700;border:0;text-decoration:underline}

/* вертикальное меню: пункты столбиком, подменю (dropdown) раскрывается вбок по hover и focus-within.
   Раскладка списка и ссылок записана через :where(), то есть со специфичностью одного класса: правила темы (колонки подвала и т. п.) её перебивают. */
.site-menu--header:where(.site-menu--v){flex-direction:column;align-items:stretch}
:where(.site-menu--v) .site-menu__nav{flex:0 0 auto}
:where(.site-menu--v) .site-menu__list{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:2px}
:where(.site-menu--v) .site-menu__item{display:block}
:where(.site-menu--v) .site-menu__list>.site-menu__item>.site-menu__link,:where(.site-menu--v) .site-menu__list>.site-menu__item>.site-menu__button{display:flex;width:100%}
:where(.site-menu--v) .site-menu__link{padding:0 8px;border-bottom:0;border-radius:calc(var(--sm-radius) - 2px)}
:where(.site-menu--v) .site-menu__link:hover{background:var(--sm-hover);opacity:1}
:where(.site-menu--v) .site-menu__item.is-active>.site-menu__link,:where(.site-menu--v) .site-menu__item.is-active-branch>.site-menu__link{background:var(--sm-hover)}
:where(.site-menu--v) .site-menu__item.has-sub>.site-menu__link::after{margin-left:auto;transform:rotate(-45deg)}
:where(.site-menu--v) .site-menu__list>.site-menu__item>.site-menu__button{margin:2px 0}
.site-menu--v .site-menu__sub{top:-7px;left:calc(100% + 4px)}
.site-menu--v .site-menu__sub::before{content:"";position:absolute;top:0;bottom:0;left:-8px;width:8px}

/* подменю expanded: все уровни раскрыты (структура карты разделов); горизонтальное: верхний уровень в строку, подпункты под своим пунктом */
.site-menu--h.site-menu--sub-expanded .site-menu__tree{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px 32px}
.site-menu--header.site-menu--sub-expanded .site-menu__nav{flex:1 1 auto}

/* узкий экран: пункты столбиком, подменю всегда раскрыты и вложены */
@media (max-width:760px){
    .site-menu--header{flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
    .site-menu__nav{flex-basis:100%;order:3}
    .site-menu__list{flex-direction:column;align-items:stretch;gap:0}
    .site-menu__item{flex-wrap:wrap}
    .site-menu__sub,.site-menu__sub .site-menu__sub,.site-menu--v .site-menu__sub{position:static;display:block;flex-basis:100%;min-width:0;padding:0 0 0 14px;background:none;color:inherit;border:0;box-shadow:none}
    .site-menu__sub--mega,.site-menu__item:hover>.site-menu__sub--mega,.site-menu__item:focus-within>.site-menu__sub--mega{display:block;padding:0 0 0 14px}
    .site-menu__card{padding:8px 0 12px}
    .site-menu__item.has-sub>.site-menu__link::after,.site-menu--v .site-menu__item.has-sub>.site-menu__link::after{display:none}
    .site-menu--v .site-menu__sub::before{display:none}
    .site-menu--h.site-menu--sub-expanded .site-menu__tree{flex-direction:column;gap:12px}
    .site-menu__cta{margin-left:auto}
}
@media (prefers-reduced-motion:no-preference){
    .site-menu__button,.site-menu__cta,.site-menu__link{transition:background-color .15s ease,border-color .15s ease}
}
.lang-widget.dropdown-menu{
    position: relative;
    color: inherit;
    font-size: inherit;
    line-height: inherit;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
}
.lang-widget.dropdown-menu *{
    color: inherit;
    font-size: inherit;
    line-height: inherit;
}
.lang-widget.dropdown-menu>ul{
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}
.lang-widget.dropdown-menu:hover>ul{
    display: flex;
}
.lang-widget.dropdown-menu:hover>ul a{
    cursor: pointer;
}
.lang-widget.dropdown-menu>.lang-widget-current{
    cursor: pointer;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    margin: auto;
}
.lang-widget.dropdown-menu>.lang-widget-current .icon{
    margin-right:0;
}.notice {
    display: none;
    position: fixed;

}
.notice.active {
    display: flex;
    align-items: center;
    /*justify-content: center;*/
    z-index: 100;
}

.notice-widget .notice-background {
    display: none;
}
.notice-widget.block-screen .notice-background {
    content:" ";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: black;
    opacity: 0.5;
    position: absolute;
    display: block;
}
.notice-widget .notice.notice-position-center .notice-container{
    margin: auto;
    max-width:1440px;
}

.notice-widget .notice .notice-container {
    background: #FFFFFF;
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.25);
    width:auto;
    padding: 20px;
    gap: 16px;
    overflow: auto;
    border-radius: 8px;
    min-width:300px;
    color:var(--text);
    background: var(--content-background-color);

}
.notice.active.notice-position-center {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.notice.active.notice-position-top-right {
    top: 0;
    right: 0;
}
.notice.active.notice-position-top-left {
    top: 0;
    left: 0;
}
.notice.active.notice-position-bottom-left {
    bottom: 0;
    left: 0;
}
.notice.active.notice-position-bottom-right {
    bottom: 0;
    right: 0;
}
.notice.active.notice-position-top {
    top:0;
    left: 0;
    right:0;
}
.notice.active.notice.notice-position-bottom {
    bottom:0;
    left: 0;
    right:0;
}
.notice.active.notice-position-left {
    left: 0;
    top:40%
}
.notice.active.notice-position-right {
    right: 0;
    top:40%
}


.notice.active.notice-position-top .notice-container,
.notice.active.notice-position-bottom .notice-container {
    width: 100%;
}
.notice-widget .notice .close-button {
    background: none;
    border: none;
    padding: 4px;
    font-size: 20px;
    line-height: 22px;
    min-width: 18px;
    min-height: auto;
    box-shadow: none;
    position: absolute;
    right: 10px;
    top: 8px;
    color: var(--white-text-color);
}
.notice .page-wrapper {
    min-width: auto;!important;
    max-width: 100%;!important;
}
.notice-widget .notice  .notice-icon {
    font-size: 20px;
    line-height: 24px;
}
.notice-widget .notice.notice-type-info .notice-header,
.notice-widget .notice.notice-type-info .button.ok-button{
    background: var(--primary-background-color);
    color: var(--white-text-color);
}
.notice-widget .notice.notice-type-error .notice-header,
.notice-widget .notice.notice-type-error .button.ok-button
{
    background: var(--warn-background-color);
    color: var(--white-text-color);
}
.notice-widget .notice.notice-type-success .notice-header,
.notice-widget .notice.notice-type-success .button.ok-button{
    background: var(--highlight-background-color);
    color: var(--white-text-color);
}

.notice-widget .notice.notice-type-warning .notice-header,
.notice-widget .notice.notice-type-warning .button.ok-button{
    background: var(--warn-light-background-color);
    color: var(--white-text-color);
}

.notice-widget .notice .notice-header {
    display: flex;
    flex-direction: row;
    gap: 10px;
    align-items: center;
    height: auto;
    margin: -20px -20px 5px -20px;
    padding: 10px 40px 10px 20px;
    border-bottom: 1px solid var(--content-border-color);
    min-height: 45px;
}
.notice-widget .notice.hidden-title .notice-header {
    display:none;
}
.notice-widget .notice.hidden-title .close-button {
    color: var(--icon-color);
    top: 6px;

}
.notice-widget .notice.hidden-icon .notice-icon {
    display: none;
}
.notice-widget .notice .notice-header .notice-title {
    font-size: 18px;
    font-weight: 500;
}

.notice .notice-actions {
    display:flex;
    flex-direction: row;
    justify-content: flex-end;
    gap:20px;
}

@media (max-width: 900px) {
    .notice-widget .notice.notice-position-center .notice-container {
        margin: auto 0;
        max-width: 100%;
    }
}/* Modal Window */

.modal {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99999999999;
}
.modal.active{
    display: flex;
}
.modal-background {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: black;
    opacity: 0.5;
    position: absolute;
}
.modal-window {
    padding: 20px;
    margin: 100px;
    background: var(--content-background-color);
    position: relative;
    z-index: 1;
    width: auto;
    display: flex;
    flex-direction: column;
    border: 1px solid #333;
    box-shadow: 0 0 3px #000;
    border-radius: 4px;
    max-width: 100%;
    max-height: 100%;
}
.modal-window-header,
.modal-window-head{
    flex-shrink: 0;
    height: 33px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
.modal-window-body{
    height: 100%;
    overflow: auto;
}
.modal-window-body iframe {
    height: 1px;
    width: 1px;
    opacity: 1;
    transition: opacity 1s ease;
    border: none;
}
.hide-button {
    position: absolute;
    right: 1px;
    top: 1px;
    padding: 0px 6px;
    box-shadow: none;
}

.loading iframe{
    opacity: 0;
}
.modal-window .hide-button span {
    height: 2px;
    width: 75%;
    background-color: grey;
    top: 10px;
    left: 2px;
}
.modal-window .modal-window-title{
    font-size: 16px;
    line-height: 16px;
    padding: 0 2px;
}
.modal-window .modal-window-footer .fieldblock-buttons{
    margin: 0;
    justify-content: flex-end;
}

.modal-window.preloading{
    width: 100px;
    height: 100px;
}

.modal-window.preloading:before{
    top: 30px;
    left: 30px;
}

.modal-window.preloading>div{
    display: none!important;
}

#customButtonModal .modal-window-body{
    min-width: 250px;
    min-height: 180px;
}

@media (max-width: 600px) {
    .modal-window-body iframe {
        height: 100% !important;
    }
    #modal-window .modal-window {
        position: fixed;
        top: 0;
        bottom: 0;
    }
}

@media (max-width: 450px) {
    #modal-window .modal-window {
        padding: 10px;
    }
}
