@charset 'UTF-8';

a {
    cursor: pointer;
    -webkit-transition: color 250ms ease-in-out;
    transition: color 250ms ease-in-out;
    text-decoration: underline;

    color: #439de0;
    outline: 0;
}

a:hover {
    text-decoration: none;
}

.text-link {
    text-decoration: none;

    color: inherit;
}

.text-link:hover {
    color: #2d92dc;
}

.media-cover,
.media-contain,
.pos-abs-all,
.rss-btn .icon:before,
.rss-btn .icon:after,
.overlay-mask,
.instagram-link:after,
.abstract-card .thumb.has-overlay-mask:after {
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}

.media-center-fit {
    position: absolute;
    top: 50%;
    left: 50%;

    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.pos-abs-center-vert,
.video-card .title {
    position: absolute;
    top: 50%;
    left: 0;

    width: 100%;

    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.media-resp {
    display: block;

    width: 100%;
    height: auto;
}

.media-center-fit {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
}

.media-cover {
    -o-object-fit: cover;
    object-fit: cover;
}

.media-contain {
    -o-object-fit: contain;
    object-fit: contain;
}

.lang-switcher,
.lang-switcher * {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}


/**
 * Сброс стилей
 **/

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;

    vertical-align: baseline;

    border: 0;

    font-size: 100%;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary {
    display: block;
}

body {
    line-height: 1;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-spacing: 0;

    border-collapse: collapse;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: normal;
}

input {
    outline: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block;
}

/**
 * Основные стили
 **/

html {
    height: 100%;
}

body {
    width: 100%;
    height: 100%;

    color: #000;
    background: #fff;

    font-family: 'Lato', sans-serif;
    font-weight: 400;

    text-rendering: optimizeLegibility;
    -webkit-text-decoration-skip: objects;
    text-decoration-skip: objects;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -webkit-tap-highlight-color: transparent;
}

body.is-locked {
    overflow: hidden;
}

body.location-page .page-headline {
    margin-bottom: 0;
}

html,
body {
    font-size: 13px;
    line-height: 1.15;
}

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/**
 * Основные стили
 */

.no-js .hide-no-js {
    display: none;
}

.inherit-link {
    text-decoration: none !important;

    color: inherit !important;
}

.underlined-link {
    color: inherit !important;
}

.underlined-hover-link {
    text-decoration: none;

    color: inherit !important;
}

.underlined-hover-link:hover {
    text-decoration: underline;
}

.inverse-link {
    text-decoration: none;
}

.inverse-link:hover {
    text-decoration: underline;
}

input[type='number'] {
    -moz-appearance: textfield;
}

input[type='number']::-webkit-inner-spin-button,
input[type='number']::-webkit-outer-spin-button {
    margin: 0;

    -webkit-appearance: none;
}

svg {
    display: block;

    width: 100%;
    height: 100%;

    -webkit-transition: fill 250ms ease-in-out;
    transition: fill 250ms ease-in-out;

    fill: currentColor;
}

.phone-link,
.email-link {
    text-decoration: none !important;

    color: inherit !important;
}

.more-link {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.more-link .icon {
    width: 1em;
    height: 1em;
    margin-left: .65rem;
}

.delay2 {
    -webkit-animation-delay: .2s;
    animation-delay: .2s;
}

.delay4 {
    -webkit-animation-delay: .4s;
    animation-delay: .4s;
}

.delay6 {
    -webkit-animation-delay: .6s;
    animation-delay: .6s;
}

.delay8 {
    -webkit-animation-delay: .8s;
    animation-delay: .8s;
}

.delay10 {
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}

.clr-white {
    color: #fff !important;
}

.clr-blue {
    color: #439de0 !important;
}

.clr-blue-darken {
    color: #326ab3 !important;
}

.clr-red {
    color: #de4e33 !important;
}

.clr-red-darken {
    color: #c13920 !important;
}

.clr-green {
    color: #94c436 !important;
}

.clr-green-darken {
    color: #009a3e !important;
}

.clr-orange {
    color: #ffac0e !important;
}

.clr-orange-darken {
    color: #ed5d21 !important;
}

.clr-yellow {
    color: #fcc300 !important;
}

.bg-white {
    background-color: #fff !important;
}

.bg-blue {
    background-color: #439de0 !important;
}

.bg-blue-darken {
    background-color: #326ab3 !important;
}

.bg-red {
    background-color: #de4e33 !important;
}

.bg-red-darken {
    background-color: #c13920 !important;
}

.bg-green {
    background-color: #94c436 !important;
}

.bg-green-darken {
    background-color: #009a3e !important;
}

.bg-orange {
    background-color: #ffac0e !important;
}

.bg-orange-darken {
    background-color: #ed5d21 !important;
}

.bg-yellow {
    background-color: #fcc300 !important;
}

.box-shadow {
    -webkit-box-shadow: 0 4px 10px 0 rgba(0, 0, 0, .3);
    box-shadow: 0 4px 10px 0 rgba(0, 0, 0, .3);
}

.cell {
    height: 150px;
    padding: 10px;

    background: rgba(222, 78, 51, .15);
}

/**
 * ������
 */

/**
 * �����
 */

/**
 * Определения keyframes
 */

@-webkit-keyframes goNextScreenButton {

0
{
    -webkit-transform: none
;
    transform: none
;
}

65
%
{
    -webkit-transform: none
;
    transform: none
;
}

70
%
{
    -webkit-transform: translateY(-15%)
;
    transform: translateY(-15%)
;
}

75
%
{
    -webkit-transform: translateY(5%)
;
    transform: translateY(5%)
;
}

80
%
{
    -webkit-transform: translateY(-10%)
;
    transform: translateY(-10%)
;
}

85
%
{
    -webkit-transform: translateY(3%)
;
    transform: translateY(3%)
;
}

90
%
{
    -webkit-transform: translateY(-5%)
;
    transform: translateY(-5%)
;
}

95
%
{
    -webkit-transform: translateY(1%)
;
    transform: translateY(1%)
;
}

98
%
{
    -webkit-transform: translateY(-3%)
;
    transform: translateY(-3%)
;
}
}

@keyframes goNextScreenButton {

0
{
    -webkit-transform: none
;
    transform: none
;
}

65
%
{
    -webkit-transform: none
;
    transform: none
;
}

70
%
{
    -webkit-transform: translateY(-15%)
;
    transform: translateY(-15%)
;
}

75
%
{
    -webkit-transform: translateY(5%)
;
    transform: translateY(5%)
;
}

80
%
{
    -webkit-transform: translateY(-10%)
;
    transform: translateY(-10%)
;
}

85
%
{
    -webkit-transform: translateY(3%)
;
    transform: translateY(3%)
;
}

90
%
{
    -webkit-transform: translateY(-5%)
;
    transform: translateY(-5%)
;
}

95
%
{
    -webkit-transform: translateY(1%)
;
    transform: translateY(1%)
;
}

98
%
{
    -webkit-transform: translateY(-3%)
;
    transform: translateY(-3%)
;
}
}

/***
 * Margins
 ***/

.mt-gap {
    margin-top: 20px !important;
}

.mb-gap {
    margin-bottom: 20px !important;
}

.mt-gap-half {
    margin-top: 10px !important;
}

.mb-gap-half {
    margin-bottom: 10px !important;
}

.mt-gap-dbl {
    margin-top: 40px !important;
}

.mb-gap-dbl {
    margin-bottom: 40px !important;
}

/***
 * Padding
 ***/

.p-gap {
    padding: 20px !important;
}

.pt-gap {
    padding-top: 20px !important;
}

.pb-gap {
    padding-bottom: 20px !important;
}

.pl-gap {
    padding-left: 20px !important;
}

.pr-gap {
    padding-right: 20px !important;
}

.pt-gap-half {
    padding-top: 10px !important;
}

.pb-gap-half {
    padding-bottom: 10px !important;
}

.pl-gap-half {
    padding-left: 10px !important;
}

.pr-gap-half {
    padding-right: 10px !important;
}

.px-gap {
    padding-right: 20px !important;
    padding-left: 20px !important;
}

.py-gap {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}

.px-gap-half {
    padding-right: 10px !important;
    padding-left: 10px !important;
}

.py-gap-half {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

/***
 * ������ ������
 ***/

.font-size-1 {
    font-size: 1.125rem !important;
}

.font-size-2 {
    font-size: 1.250rem !important;
}

.font-size-3 {
    font-size: 1.375rem !important;
}

.font-size-4 {
    font-size: 1.500rem !important;
}

.font-size-5 {
    font-size: 1.625rem !important;
}

.font-size-6 {
    font-size: 1.750rem !important;
}

.font-size-7 {
    font-size: 1.875rem !important;
}

.font-size-8 {
    font-size: 2.000rem !important;
}

.container,
.container-fluid {
    padding-right: 10px;
    padding-left: 10px;
}

.row {
    margin-right: -10px;
    margin-left: -10px;
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col,
.col-auto,
.col-sm-1,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm,
.col-sm-auto,
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md,
.col-md-auto,
.col-lg-1,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg,
.col-lg-auto,
.col-xl-1,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl,
.col-xl-auto {
    padding-right: 10px;
    padding-left: 10px;
}

.row-grid {
    margin-bottom: -20px;
}

.row-grid > [class*='col-'] {
    margin-bottom: 20px;
}

.row-tiny-gap {
    margin-right: -1px;
    margin-left: -1px;
}

.row-tiny-gap > [class*='col-'] {
    padding-right: 1px;
    padding-left: 1px;
}

.row-tiny-gap.row-grid {
    margin-bottom: -2px;
}

.row-tiny-gap.row-grid > [class*='col-'] {
    margin-bottom: 2px;
}

.card {
    border: 0;
    border-radius: 0;
}

.card-body {
    padding: 0;
}

.card-title {
    margin: 0;
}

.form-group label {
    display: block;

    margin-bottom: .15rem;
}

.form-control:focus {
    border-color: #439de0;
    -webkit-box-shadow: 0 0 .25rem 0 rgba(67, 157, 224, .5);
    box-shadow: 0 0 .25rem 0 rgba(67, 157, 224, .5);
}


.modal-backdrop.fade {
    opacity: 0;
}

.modal-backdrop.show {
    opacity: .5;
}

.embed-responsive-2by1::before {
    padding-top: 50%;
}

.embed-responsive-3by2::before {
    padding-top: 66.66667%;
}

.embed-responsive-16by10::before {
    padding-top: 62.5%;
}

.embed-responsive-4by3::before {
    padding-top: 75%;
}

h1,
.h1 {
    margin-bottom: 1rem;

    font-size: 2.25rem;
    line-height: 1;
}

h2,
.h2 {
    margin-bottom: 1rem;

    font-size: 2rem;
    line-height: 1;
}

h3,
.h3 {
    margin-bottom: 1rem;

    font-size: 1.75rem;
    line-height: 1;
}

h4,
.h4 {
    margin-bottom: 1rem;

    font-size: 1.5rem;
    line-height: 1;
}

h5,
.h5 {
    margin-bottom: 1rem;

    font-size: 1.25rem;
    line-height: 1;
}

h6,
.h6 {
    margin-bottom: 1rem;

    font-size: 1.125rem;
    line-height: 1;
}

sup {
    font-size: .75em;
}

.btn {
    border-radius: 9999px;
}

.btn-primary {
    background-color: #326ab3;
}

.pagination .icon {
    width: 1em;
    height: 1em;
}

.page-link {
    margin: 0 .25em;
    padding: .25em .5em;

    text-decoration: none;

    border: 0;
    border-radius: 9999px !important;

    line-height: 1;
}

.page-link:hover {
    color: #439de0;
    background: none;
}

.page-item.active .page-link {
    color: #fff;
    background: #326ab3;
}

.page-item.disabled .page-link {
    cursor: auto;
    pointer-events: none;
}

.ui-datepicker {
    width: 100%;
}

.ui-datepicker-title {
    text-align: center;

    font-size: 1.25rem;
    font-weight: 600;
}

.ui-datepicker table {
    border-spacing: 3px;

    border-collapse: separate;
}

.ui-datepicker table th,
.ui-datepicker table td {
    text-align: center;
}

.ui-datepicker table th {
    padding: .35em 0;

    text-transform: uppercase;

    opacity: .35;
    border-top: 1px solid rgba(0, 0, 0, .25);
    border-bottom: 1px solid rgba(0, 0, 0, .25);

    font-size: 10px;
}

.ui-datepicker table td {
    font-size: 13px;
}

.ui-datepicker table td a,
.ui-datepicker table td span {
    padding: .35em 0;

    text-align: center;
}

.ui-datepicker table td a {
    position: relative;

    -webkit-transition: color 250ms ease-in-out, background-color 250ms ease-in-out;
    transition: color 250ms ease-in-out, background-color 250ms ease-in-out;

    color: inherit;
}

.ui-datepicker table td a:hover {
    color: inherit;
    background-color: rgba(255, 255, 255, .1);
}

.swiper-scrollbar {
    border: 1px solid #439de0;
    border-radius: 0;
    background: none;
}

.swiper-pagination {
    position: static;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;

    width: auto;
    height: auto;
    margin-top: 20px;
}

.swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 0 6px;

    opacity: 1;
    border: 2px solid #439de0;
    outline: none;
    background: none;
}

.swiper-pagination-bullet-active {
    background: #439de0;
}

.swiper-container-horizontal > .swiper-scrollbar {
    bottom: 0;
    left: 0;

    width: 100%;
    height: 7px;
}

.swiper-container-horizontal > .swiper-scrollbar .swiper-scrollbar-drag {
    background: -webkit-gradient(linear, left top, right top, from(#419de0), color-stop(32%, #3a97de), color-stop(32%, rgba(67, 157, 224, 0)), color-stop(34%, rgba(67, 157, 224, 0)), color-stop(34%, #419de0), color-stop(66%, #3a97de), color-stop(66%, rgba(67, 157, 224, 0)), color-stop(68%, rgba(67, 157, 224, 0)), color-stop(68%, #419de0), to(#3a97de));
    background: -webkit-linear-gradient(left, #419de0 0%, #3a97de 32%, rgba(67, 157, 224, 0) 32%, rgba(67, 157, 224, 0) 34%, #419de0 34%, #3a97de 66%, rgba(67, 157, 224, 0) 66%, rgba(67, 157, 224, 0) 68%, #419de0 68%, #3a97de 100%);
    background: linear-gradient(to right, #419de0 0%, #3a97de 32%, rgba(67, 157, 224, 0) 32%, rgba(67, 157, 224, 0) 34%, #419de0 34%, #3a97de 66%, rgba(67, 157, 224, 0) 66%, rgba(67, 157, 224, 0) 68%, #419de0 68%, #3a97de 100%);
}

/**
 * select
 **/

select {
    position: relative;

    padding-right: -webkit-calc(1em + 35px);
    padding-right: calc(1em + 35px);
    padding-left: 1em;

    background-image: url('../images/select.svg');
    background-repeat: no-repeat;
    background-position: center right 10px;
    background-size: 20px 10px;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

select ::-ms-expand {
    display: none;
}

/**
 * Кнопка закрытия
 */

.close-btn {
    display: block;

    width: 32px;
    height: 32px;
    padding: 6px;

    -webkit-transition: opacity 250ms ease-in-out;
    transition: opacity 250ms ease-in-out;

    opacity: .75;
    color: inherit !important;
}

.close-btn:hover {
    opacity: 1;
}

/**
 * Кнопка с иконкой (и, возможно, текстом)
 */

.tool-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-transition: color 250ms ease-in-out;
    transition: color 250ms ease-in-out;
    text-decoration: none;

    color: inherit;

    font-size: 13px;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.tool-btn:hover {
    color: #439de0;
}

.tool-btn .icon {
    flex: 0 0 auto;

    width: 24px;
    height: 24px;

    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
}

.tool-btn .caption {
    flex: 1 1 auto;

    margin-left: .65em;

    white-space: nowrap;

    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
}

/**
 * Кнопка RSS
 */

.rss-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-transition: color 250ms ease-in-out;
    transition: color 250ms ease-in-out;
    text-decoration: none;

    color: inherit;

    font-size: 13px;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.rss-btn:hover {
    color: #439de0;
}

.rss-btn .icon {
    position: relative;

    display: block;
    flex: 0 0 auto;

    width: 32px;
    height: 32px;

    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
}

.rss-btn .icon:before,
.rss-btn .icon:after {
    content: '';
    -webkit-transition: visibility 250ms ease-in-out, opacity 250ms ease-in-out;
    transition: visibility 250ms ease-in-out, opacity 250ms ease-in-out;
}

.rss-btn .icon:before {
    background-image: url('../images/rss.outline.white.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

.rss-btn .icon:after {
    visibility: hidden;

    opacity: 0;
    background-image: url('../images/rss.white.svg');
}

.rss-btn .caption {
    flex: 1 1 auto;

    margin-left: .65em;

    white-space: nowrap;

    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
}

.rss-btn:hover .icon:before {
    visibility: hidden;

    opacity: 0;
}

.rss-btn:hover .icon:after {
    visibility: visible;

    opacity: 1;
}

/**
 * ���� ����
 */

.site-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;

    min-height: 100%;
    min-height: 100vh;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}

.site-body > * {
    flex: 0 0 auto;

    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
}

.site-body > .site-middle {
    flex: 1 0 auto;

    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
}

/**
 * Верхняя полоса с меню
 */

.site-topbar {
    position: relative;
    z-index: 99;

    border-bottom: 2px solid rgba(0, 0, 0, .1);
    background: #fff;
    -webkit-box-shadow: 0 1px 15px 0 rgba(0, 0, 0, .1);
    box-shadow: 0 1px 15px 0 rgba(0, 0, 0, .1);
}

.site-topbar .topbar-inner {
    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-transition: padding 250ms ease-in-out;
    transition: padding 250ms ease-in-out;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.site-topbar .logo {
    position: absolute;
    top: 50%;
    left: 0;

    width: 100px;

    -webkit-transition: visibility 250ms ease-in-out, opacity 250ms ease-in-out;
    transition: visibility 250ms ease-in-out, opacity 250ms ease-in-out;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.site-topbar .logo a {
    display: block;

    padding-bottom: 32.65306%;

    background-image: url('../images/rd-logo.simple.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;

    font-size: 0;
}

.site-topbar .nav-toggle {
    padding: 10px;
}

.site-topbar .nav-toggle a {
    display: block;

    width: 24px;
    height: 24px;
}

.site-topbar .menu {
    display: none;
    flex: 1 1 auto;

    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
}

.site-topbar .menu a {
    position: relative;

    display: block;

    text-decoration: none;

    color: inherit;
}

.site-topbar .menu > li {
    position: relative;

    flex: 1 1 0;

    -webkit-box-flex: 1;
    -ms-flex: 1 1 0;
}

.site-topbar .menu > li > a {
    padding: 0 .5em;

    text-align: center;
    white-space: nowrap;

    font-size: 1.25rem;
    line-height: 50px;
}

.site-topbar .menu > li > a:after {
    position: absolute;
    right: 50%;
    bottom: 0;
    left: 50%;

    height: 3px;

    content: '';
    -webkit-transition: left 250ms ease-in-out, right 250ms ease-in-out;
    transition: left 250ms ease-in-out, right 250ms ease-in-out;

    background-color: #439de0;
}

.site-topbar .menu > li:hover > a:after {
    right: 0;
    left: 0;
}

.site-topbar .menu > li ul {
    position: absolute;
    top: 100%;
    left: 0;

    display: none;

    width: 100%;
    padding: 1rem 5px;

    -webkit-transition: background-color 250ms ease-in-out;
    transition: background-color 250ms ease-in-out;

    color: #439de0;
    border-bottom: 3px solid #439de0;
    border-left: 1px solid rgba(67, 157, 224, .2);
    background: #fafafa;

    font-size: 13px;
}

.site-topbar .menu > li ul:hover {
    background-color: #fff;
}

.site-topbar .menu > li ul a:hover {
    text-decoration: underline;
}

.site-topbar .menu > li ul li + li {
    margin-top: .45em;
}

.site-topbar .menu > li:last-child > ul {
    border-right: 1px solid rgba(67, 157, 224, .2);
}

.site-topbar .menu > li.is-blue > a:after {
    background-color: #439de0;
}

.site-topbar .menu > li.is-blue ul {
    color: #439de0;
    border-bottom-color: #439de0;
}

.site-topbar .menu > li.is-blue-darken > a:after {
    background-color: #326ab3;
}

.site-topbar .menu > li.is-blue-darken ul {
    color: #326ab3;
    border-bottom-color: #326ab3;
}

.site-topbar .menu > li.is-red > a:after {
    background-color: #de4e33;
}

.site-topbar .menu > li.is-red ul {
    color: #de4e33;
    border-bottom-color: #de4e33;
}

.site-topbar .menu > li.is-red-darken > a:after {
    background-color: #c13920;
}

.site-topbar .menu > li.is-red-darken ul {
    color: #c13920;
    border-bottom-color: #c13920;
}

.site-topbar .menu > li.is-green > a:after {
    background-color: #94c436;
}

.site-topbar .menu > li.is-green ul {
    color: #94c436;
    border-bottom-color: #94c436;
}

.site-topbar .menu > li.is-green-darken > a:after {
    background-color: #009a3e;
}

.site-topbar .menu > li.is-green-darken ul {
    color: #009a3e;
    border-bottom-color: #009a3e;
}

.site-topbar .menu > li.is-orange > a:after {
    background-color: #ffac0e;
}

.site-topbar .menu > li.is-orange ul {
    color: #ffac0e;
    border-bottom-color: #ffac0e;
}

.site-topbar .menu > li.is-orange-darken > a:after {
    background-color: #ed5d21;
}

.site-topbar .menu > li.is-orange-darken ul {
    color: #ed5d21;
    border-bottom-color: #ed5d21;
}

.site-topbar .menu > li.is-yellow > a:after {
    background-color: #fcc300;
}

.site-topbar .menu > li.is-yellow ul {
    color: #fcc300;
    border-bottom-color: #fcc300;
}

.site-topbar-fixed {
    position: fixed;
    top: 0;
    left: 0;

    width: 100%;
}

.site-topbar-scrolled-state .topbar-inner {
    padding-left: 120px;
}

.site-topbar-scrolled-state .logo {
    visibility: visible !important;

    opacity: 1 !important;
}

/**
 * Шапка
 */

.site-header {
    position: relative;
    z-index: 98;
    /**
* Шапка сайта. Логотип
*/
}

.site-header .header-inner > * {
    margin: 10px 0;
}

.site-header .logo-area {
    display: none;
}

.site-header .info-area .weather {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.site-header .info-area .weather > * + * {
    margin-left: .75rem;
    padding-left: .75rem;

    border-left: 1px solid rgba(0, 0, 0, .1);
}

.site-header .user-area .storey {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.site-header .user-area .storey .isolated {
    margin-left: .75rem;
    padding-left: .75rem;

    border-left: 1px solid rgba(0, 0, 0, .1);
}

.site-header .user-area .storey + .storey {
    border-top: 1px solid rgba(0, 0, 0, .1);
}

.site-header .user-area .socials-wrap {
    flex: 1 1 auto;

    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
}

.site-header .user-area .lang-switcher-wrap {
    flex: 0 0 auto;

    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
}

.site-header .user-area .toolbar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: .5rem 0;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.site-header .user-area .toolbar > * + * {
    padding-left: 1em;
}

/**
 * Подвал
 */

.site-footer a {
    color: inherit;
}

.site-footer a:hover {
    color: inherit;
}

.site-footer .footer-inner {
    padding: 2rem 0;
}

.site-footer .toolbar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.site-footer .toolbar > * {
    margin-right: 1em;
    margin-left: 1em;
}

.site-footer .menu > li {
    margin-bottom: .25em 0;
}

.site-footer .artint {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.site-footer .artint .logo {
    flex: 0 0 auto;

    margin-right: .65em;

    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
}

/**
 * Средняя часть сайта
 */

.site-middle {
    position: relative;
    z-index: 1;

    padding-top: 4vh;
    padding-bottom: 4vh;
}

/**
 * Оверлей
 **/

.site-backdrop {
    position: fixed;
    z-index: 998;
    top: 0;
    left: 0;

    visibility: hidden;

    width: 100%;
    height: 100%;

    -webkit-transition: all 250ms ease-in-out;
    transition: all 250ms ease-in-out;

    opacity: 0;
    background: #000;
}

.site-backdrop.is-active {
    visibility: visible;

    opacity: .5;
}

/**
 * ������� "������-��-����. ����� ����� �����"
 */

.rd-logo {
    display: block;
}

.rd-logo .logo {
    width: 100%;
    max-width: 220px;
}

.rd-logo a {
    display: block;

    padding-top: 42.27642%;

    background-image: url('../images/rd-logo.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;

    font-size: 0;
}

.rd-logo .desc {
    margin-top: .75em;
}

.rd-logo-white a {
    background-image: url('../images/rd-logo.white.svg');
}

/**
 * Переключатель языка
 */

.lang-switcher {
    position: relative;

    padding: 10px 0;

    white-space: nowrap;
}

.lang-switcher .active {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 24px;
    padding: 0 10px;

    cursor: pointer;
    -webkit-transition: color 250ms ease-in-out;
    transition: color 250ms ease-in-out;

    color: #439de0;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.lang-switcher .active .icon {
    display: inline-block;

    width: 16px;
    height: 16px;
    margin-left: 1rem;
}

.lang-switcher .dropdown {
    position: absolute;
    z-index: 100;
    top: 100%;
    right: 0;

    display: none;

    border: 1px solid rgba(0, 0, 0, .1);
    background: #fff;
    -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, .15);
    box-shadow: 0 2px 10px 0 rgba(0, 0, 0, .15);
}

.lang-switcher .dropdown li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: .75em;

    -webkit-transition: all 250ms ease-in-out;
    transition: all 250ms ease-in-out;
    text-decoration: none;

    color: inherit;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.lang-switcher .dropdown li a img,
.lang-switcher .dropdown li a span {
    flex: 0 0 auto;

    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
}

.lang-switcher .dropdown li a img {
    width: 22px;
    height: auto;
}

.lang-switcher .dropdown li a span {
    padding-left: .75em;
}

.lang-switcher .dropdown li:hover a {
    background: #f6f6f6;
}

/**
 * Ссылки на соц.сети
 **/

.social-links {
    display: inline-block;

    color: inherit;
}

.social-links ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    text-align: left;
}

.social-links ul li {
    padding: 5px;
}

.social-links ul li a {
    display: block;

    padding: 5px;

    -webkit-transition: color 250ms ease-in-out, background-color 250ms ease-in-out, opacity 250ms ease-in-out;
    transition: color 250ms ease-in-out, background-color 250ms ease-in-out, opacity 250ms ease-in-out;
    text-decoration: none;

    opacity: .5;
    color: inherit;
    border-radius: 100%;
}

.social-links ul li a:hover {
    opacity: 1;
}

.social-links ul li a svg {
    display: block;

    width: 20px;
    height: 20px;
}

.social-links ul li a img {
    display: block;

    width: 20px;
    height: 20px;
}

.social-links img.hover {
    visibility: hidden;

    opacity: 0;
}

.social-links:hover img.normal {
    visibility: hidden;

    opacity: 0;
}

.social-links:hover img.hover {
    visibility: visible;

    opacity: 1;
}

.social-links img {
    position: absolute;
    top: 50%;
    left: 50%;

    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.yappy {
    position: relative;

    display: block;

    text-align: center;
}

.social-links ul li.vkontakte a:hover {
    color: #45668e;
}

.social-links ul li.odnoklassniki a:hover {
    color: #ed812b;
}

.social-links ul li.mailru a:hover {
    color: #168de2;
}

.social-links ul li.facebook a:hover {
    color: #3b5998;
}

.social-links ul li.twitter a:hover {
    color: #1da1f2;
}

.social-links ul li.googleplus a:hover {
    color: #dd4b39;
}

.social-links ul li.instagram a:hover {
    color: #c13584;
}

.social-links ul li.telegram a:hover {
    color: #c13584;
}

.social-links ul li.youtube a:hover {
    color: #cd201f;
}

.social-links ul li.whatsapp a:hover {
    color: #128c7e;
}

.social-links ul li.viber a:hover {
    color: #59267c;
}

.social-links-white {
    color: #fff;
}

.social-links-white ul li a {
    opacity: 1;
}

.social-links-white ul li.vkontakte a:hover {
    color: #45668e;
    background-color: #fff;
}

.social-links-white ul li.odnoklassniki a:hover {
    color: #ed812b;
    background-color: #fff;
}

.social-links-white ul li.mailru a:hover {
    color: #168de2;
    background-color: #fff;
}

.social-links-white ul li.facebook a:hover {
    color: #3b5998;
    background-color: #fff;
}

.social-links-white ul li.twitter a:hover {
    color: #1da1f2;
    background-color: #fff;
}

.social-links-white ul li.googleplus a:hover {
    color: #dd4b39;
    background-color: #fff;
}

.social-links-white ul li.instagram a:hover {
    color: #c13584;
    background-color: #fff;
}

.social-links-white ul li.telegram a:hover {
    color: #c13584;
    background-color: #fff;
}

.social-links-white ul li.youtube a:hover {
    color: #cd201f;
    background-color: #fff;
}

.social-links-white ul li.whatsapp a:hover {
    color: #128c7e;
    background-color: #fff;
}

.social-links-white ul li.viber a:hover {
    color: #59267c;
    background-color: #fff;
}

/**
 * Информер погоды
 */

.weather-informer {
    font-size: 13px;
}

.weather-informer .value {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    font-size: 1.25em;
    font-weight: 400;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.weather-informer .value .temp:after {
    content: ' °C';
}

.weather-informer .value img {
    margin-left: .5em;
}

/**
 * Контактная информация
 */

.contacts-summary li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.contacts-summary li:before {
    flex: 0 0 auto;

    width: 1em;
    height: 1em;
    margin-top: .15em;
    margin-right: .65em;

    content: '';

    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;

    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
}

.contacts-summary li.address:before {
    background-image: url('../images/contacts-address.white.svg');
}

.contacts-summary li.phone:before {
    background-image: url('../images/contacts-phone.white.svg');
}

.contacts-summary li.email:before {
    background-image: url('../images/contacts-email.white.svg');
}

.contacts-summary li + li {
    margin-top: .25em;
}

/**
 * Слой-перекрытие
 */

.overlay-mask {
    content: '';

    opacity: .5;
    background: #000;
}

/**
 * ���������� swiper-���������
 */

.swiper-controls {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 20px;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.swiper-controls .prev a,
.swiper-controls .next a {
    display: block;

    width: 24px;
    height: 24px;
}

.swiper-controls-white {
    color: #fff;
}

.swiper-controls-white .swiper-pagination-bullet {
    border-color: #fff;
}

.swiper-controls-white .swiper-pagination-bullet-active {
    background: #fff;
}

/**
 * Метка с цифрой
 */

.num-balloon {
    position: absolute;
    top: -.2em;
    right: -.2em;

    padding: .1em .3em;

    color: #fff;
    border-radius: 100%;
    background: #439de0;

    font-size: 12px;
    font-style: normal;
    line-height: 1;
}

/**
 * Раздел страницы
 */

.page-section {
    position: relative;

    padding-top: 4vh;
    padding-bottom: 4vh;
}

/**
 * Заголовок страницы
 */

.page-headline {
    margin-bottom: 2rem;
}

.page-headline h1,
.page-headline .h1 {
    margin: 0;
}

/**
 * Заголовок раздела страницы
 */

.section-headline {
    margin-bottom: 1.45rem;

    text-transform: uppercase;

    font-size: 1.5rem;
}

.section-headline.has-border {
    padding-bottom: .1em;

    border-bottom: 1px solid;
}

/**
 * Главный слайдер
 */

.primary-slider .entry {
    position: relative;
}

.primary-slider .type-icon {
    position: absolute;
    top: 20px;
    right: 20px;

    width: 3rem;
    height: 3rem;
    padding: .85rem;

    color: #fff;
    border: 1px solid #fff;
    border-radius: 100%;
    background: rgba(255, 255, 255, .5);
}

.primary-slider .swiper-slide {
    width: 100%;
}

.primary-slider .swiper-controls {
    position: absolute;
    z-index: 100;
    bottom: 20px;
    left: 0;

    width: 100%;
}

/**
 * Гид-слайдер
 */

.guide-slider {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.guide-slider .slider-nav {
    flex: 0 0 auto;

    width: 5%;

    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
}

.guide-slider .slider-nav a {
    display: block;

    padding-bottom: 330.76923%;

    -webkit-transition: opacity 250ms ease-in-out;
    transition: opacity 250ms ease-in-out;

    opacity: .9;
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: contain;
}

.guide-slider .slider-nav a:hover {
    opacity: 1;
}

.guide-slider .slider-nav a.prev {
    margin-right: 20px;

    background-image: url('../images/guide-slider-prev.svg');
}

.guide-slider .slider-nav a.next {
    margin-left: 20px;

    background-image: url('../images/guide-slider-next.svg');
}

.guide-slider .slider-body {
    flex: 1 1 auto;

    padding: 30px 0;

    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
}

/**
 * Официальные новости
 */

.official-news .headline {
    margin-bottom: 40px;
}

.official-news .headline .more {
    margin-top: .5em;
}

.official-news .list li + li {
    margin-top: 30px;
}

.official-news .list .date {
    position: relative;

    margin-bottom: .35em;
    padding-bottom: -webkit-calc(3px + .25em);
    padding-bottom: calc(3px + .25em);

    text-transform: uppercase;
}

.official-news .list .date:after {
    position: absolute;
    bottom: 0;
    left: 0;

    width: 4rem;
    height: 3px;

    content: '';

    background: #439de0;
}

/**
 * ����� � ���������� �����
 */

.videos-grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin: -1px;

    color: #fff;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.videos-grid .grid-entry {
    width: 50%;
    padding: 1px;
}

.videos-grid .more-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;

    height: 100%;
    min-height: 80px;

    text-align: center;
    text-decoration: none;

    color: #fff;
    background: #ffac0e;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.videos-grid .more-link .title {
    font-size: 1.5em;
}

.videos-grid .more-link .desc {
    text-decoration: underline;
}

.videos-grid .more-link:hover .desc {
    text-decoration: none;
}

@supports ((display: -ms-grid) or (display: grid)) {
    .videos-grid {
        display: -ms-grid;
        display: grid;

        grid-row-gap: 2px;
        grid-column-gap: 2px;
        -ms-grid-rows: (auto) [ 6 ];
        grid-template-rows: repeat(6, auto);
        -ms-grid-columns: (1fr) [ 1 ];
        grid-template-columns: repeat(1, 1fr);
    }

    .videos-grid .grid-entry {
        width: auto;
        padding: 0;
    }

    .videos-grid .grid-entry:nth-child(1) {
        grid-area: 1 / 1 / 2 / 2;
    }

    .videos-grid .grid-entry:nth-child(2) {
        grid-area: 2 / 1 / 3 / 2;
    }

    .videos-grid .grid-entry:nth-child(3) {
        grid-area: 3 / 1 / 4 / 2;
    }

    .videos-grid .grid-entry:nth-child(4) {
        grid-area: 4 / 1 / 5 / 2;
    }

    .videos-grid .grid-entry:nth-child(5) {
        grid-area: 5 / 1 / 6 / 2;
    }

    .videos-grid .grid-entry:nth-child(6) {
        grid-area: 6 / 1 / 7 / 2;
    }

    @media all and (min-width: 768px) {
        .videos-grid {
            grid-row-gap: 3px;
            grid-column-gap: 3px;
            -ms-grid-rows: (1fr) [ 3 ];
            grid-template-rows: repeat(3, 1fr);
            -ms-grid-columns: (1fr) [ 3 ];
            grid-template-columns: repeat(3, 1fr);
        }

        .videos-grid .grid-entry:nth-child(1) {
            grid-area: 1 / 2 / 3 / 4;
        }

        .videos-grid .grid-entry:nth-child(2) {
            grid-area: 2 / 1 / 3 / 2;
        }

        .videos-grid .grid-entry:nth-child(3) {
            grid-area: 3 / 1 / 4 / 2;
        }

        .videos-grid .grid-entry:nth-child(4) {
            grid-area: 3 / 2 / 4 / 3;
        }

        .videos-grid .grid-entry:nth-child(5) {
            grid-area: 3 / 3 / 4 / 4;
        }

        .videos-grid .grid-entry:nth-child(6) {
            grid-area: 1 / 1 / 2 / 2;
        }

        .videos-grid .grid-entry:nth-child(1) .video-card {
            height: 100%;
        }

        .videos-grid .grid-entry:nth-child(1) .video-card .thumb,
        .videos-grid .grid-entry:nth-child(1) .video-card .embed-responsive {
            height: 100%;
            padding: 0;
        }
    }
}

/**
 * Интерактивная карта
 */

.locations-map .map {
    height: 300px;
}

/**
 * Форма подписки
 */

.subscribe-form .title {
    margin-bottom: .5em;

    font-size: 1.25rem;
    font-weight: 600;
}

/**
 * Ссылка на Инстаграм
 */

.instagram-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;

    height: 100%;
    padding: 1rem;

    -webkit-transition: background 250ms ease-in-out;
    transition: background 250ms ease-in-out;
    text-align: center;
    text-decoration: none;

    color: #fff !important;
    background: #ed5d21;

    font-size: 1.25rem;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.instagram-link .title {
    z-index: 1;
}

.instagram-link .title:after {
    display: block;

    width: 3.5rem;
    height: 3.5rem;
    margin: .5rem auto 0;

    content: '';

    background-image: url('../images/instagram.white.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

.instagram-link:after {
    z-index: 0;

    visibility: hidden;

    content: '';
    -webkit-transition: visibility 250ms ease-in-out, opacity 250ms ease-in-out;
    transition: visibility 250ms ease-in-out, opacity 250ms ease-in-out;

    opacity: 0;
    background: radial-gradient(circle farthest-corner at 35% 90%, #fec564, transparent 50%), radial-gradient(circle farthest-corner at 0 140%, #fec564, transparent 50%), radial-gradient(ellipse farthest-corner at 0 -25%, #5258cf, transparent 50%), radial-gradient(ellipse farthest-corner at 20% -50%, #5258cf, transparent 50%), radial-gradient(ellipse farthest-corner at 100% 0, #893dc2, transparent 50%), radial-gradient(ellipse farthest-corner at 60% -20%, #893dc2, transparent 50%), radial-gradient(ellipse farthest-corner at 100% 100%, #d9317a, transparent), -webkit-gradient(linear, left top, left bottom, from(#6559ca), color-stop(30%, #bc318f), color-stop(50%, #e33f5f), color-stop(70%, #f77638), to(#fec66d));
    background: -webkit-radial-gradient(circle farthest-corner at 35% 90%, #fec564, transparent 50%), -webkit-radial-gradient(circle farthest-corner at 0 140%, #fec564, transparent 50%), -webkit-radial-gradient(ellipse farthest-corner at 0 -25%, #5258cf, transparent 50%), -webkit-radial-gradient(ellipse farthest-corner at 20% -50%, #5258cf, transparent 50%), -webkit-radial-gradient(ellipse farthest-corner at 100% 0, #893dc2, transparent 50%), -webkit-radial-gradient(ellipse farthest-corner at 60% -20%, #893dc2, transparent 50%), -webkit-radial-gradient(ellipse farthest-corner at 100% 100%, #d9317a, transparent), -webkit-linear-gradient(#6559ca, #bc318f 30%, #e33f5f 50%, #f77638 70%, #fec66d 100%);
    background: radial-gradient(circle farthest-corner at 35% 90%, #fec564, transparent 50%), radial-gradient(circle farthest-corner at 0 140%, #fec564, transparent 50%), radial-gradient(ellipse farthest-corner at 0 -25%, #5258cf, transparent 50%), radial-gradient(ellipse farthest-corner at 20% -50%, #5258cf, transparent 50%), radial-gradient(ellipse farthest-corner at 100% 0, #893dc2, transparent 50%), radial-gradient(ellipse farthest-corner at 60% -20%, #893dc2, transparent 50%), radial-gradient(ellipse farthest-corner at 100% 100%, #d9317a, transparent), linear-gradient(#6559ca, #bc318f 30%, #e33f5f 50%, #f77638 70%, #fec66d 100%);
}

.instagram-link:hover:after {
    visibility: visible;

    opacity: 1;
}

/**
 * Абстрактная карточка
 */

.abstract-card .thumb {
    position: relative;

    overflow: hidden;
}

.abstract-card .thumb img {
    -webkit-transition: -webkit-transform 750ms ease-in-out;
    transition: -webkit-transform 750ms ease-in-out;
    transition: transform 750ms ease-in-out;
    transition: transform 750ms ease-in-out, -webkit-transform 750ms ease-in-out;
}

.abstract-card .thumb.has-overlay-mask:after {
    content: '';
    -webkit-transition: opacity 750ms ease-in-out;
    transition: opacity 750ms ease-in-out;

    opacity: .35;
    background: #000;
}

.abstract-card:hover .thumb img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.abstract-card:hover .thumb.has-overlay-mask:after {
    opacity: .5;
}

.abstract-card .card-title-height-7rem {
    position: relative;

    overflow: hidden;

    height: 7rem;
}

.abstract-card .card-title-height-3rem {
    position: relative;

    overflow: hidden;

    height: 3rem;
}

.abstract-card.full-height {
    height: 100%;
}

.abstract-card.full-height .thumb,
.abstract-card.full-height .embed-responsive {
    height: 100%;
    padding: 0;
}

/**
 * �������� (�������) ���-��������
 */

.guide-card {
    position: relative;

    display: block;

    text-align: center;
}

.guide-card .icon-wrap {
    padding: 10px;
}

.guide-card .icon {
    max-width: 160px;
    margin: 0 auto;
    padding: 10px;

    -webkit-transition: background-color 250ms ease-in-out, -webkit-box-shadow 250ms ease-in-out;
    transition: background-color 250ms ease-in-out, -webkit-box-shadow 250ms ease-in-out;
    transition: background-color 250ms ease-in-out, box-shadow 250ms ease-in-out;
    transition: background-color 250ms ease-in-out, box-shadow 250ms ease-in-out, -webkit-box-shadow 250ms ease-in-out;

    border: 1px solid #439de0;
    border-radius: 100%;
    -webkit-box-shadow: 0 1px 10px 0 rgba(0, 0, 0, .25);
    box-shadow: 0 1px 10px 0 rgba(0, 0, 0, .25);
}

.guide-card .icon img {
    -webkit-transition: visibility 250ms ease-in-out, opacity 250ms ease-in-out;
    transition: visibility 250ms ease-in-out, opacity 250ms ease-in-out;
}

.guide-card .icon img.hover {
    visibility: hidden;

    opacity: 0;
}

.guide-card .title {
    margin-top: 1em;

    font-size: 1.125rem;
}

.guide-card:hover .icon {
    background-color: #439de0;
    -webkit-box-shadow: 0 1px 10px 0 rgba(0, 0, 0, .35);
    box-shadow: 0 1px 10px 0 rgba(0, 0, 0, .35);
}

.guide-card:hover .icon img.normal {
    visibility: hidden;

    opacity: 0;
}

.guide-card:hover .icon img.hover {
    visibility: visible;

    opacity: 1;
}

.guide-card-blue .icon {
    border-color: #439de0;
}

.guide-card-blue:hover .icon {
    background-color: #439de0;
}

.guide-card-blue-darken .icon {
    border-color: #326ab3;
}

.guide-card-blue-darken:hover .icon {
    background-color: #326ab3;
}

.guide-card-red .icon {
    border-color: #de4e33;
}

.guide-card-red:hover .icon {
    background-color: #de4e33;
}

.guide-card-red-darken .icon {
    border-color: #c13920;
}

.guide-card-red-darken:hover .icon {
    background-color: #c13920;
}

.guide-card-green .icon {
    border-color: #94c436;
}

.guide-card-green:hover .icon {
    background-color: #94c436;
}

.guide-card-green-darken .icon {
    border-color: #009a3e;
}

.guide-card-green-darken:hover .icon {
    background-color: #009a3e;
}

.guide-card-orange .icon {
    border-color: #ffac0e;
}

.guide-card-orange:hover .icon {
    background-color: #ffac0e;
}

.guide-card-orange-darken .icon {
    border-color: #ed5d21;
}

.guide-card-orange-darken:hover .icon {
    background-color: #ed5d21;
}

.guide-card-yellow .icon {
    border-color: #fcc300;
}

.guide-card-yellow:hover .icon {
    background-color: #fcc300;
}

.guide-card-violet .icon {
    border-color: #f31cf3;
}

.guide-card-violet:hover .icon {
    background-color: #f31cf3;
}

/**
 * Карточка объекта
 */

.object-card {
    -webkit-transition: -webkit-transform 250ms ease-in-out, -webkit-box-shadow 250ms ease-in-out;
    transition: -webkit-transform 250ms ease-in-out, -webkit-box-shadow 250ms ease-in-out;
    transition: transform 250ms ease-in-out, box-shadow 250ms ease-in-out;
    transition: transform 250ms ease-in-out, box-shadow 250ms ease-in-out, -webkit-transform 250ms ease-in-out, -webkit-box-shadow 250ms ease-in-out;
    text-align: center;

    border: 1px solid #439de0;
    -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, .1);
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, .1);
}

.object-card .card-title {
    position: relative;

    overflow: hidden;

    height: 4rem;
}

/**
 * �������� �������� �������� �� ������
 */

.leisure-card .thumb {
    position: relative;

    padding-top: 50%;
}

.leisure-card .card-body {
    padding: .75rem;

    color: #fff;
    background: #ed5d21;
}

.leisure-card .card-info {
    margin-bottom: .5em;

    font-size: 13px;
}

.leisure-card .card-title {
    font-size: 1.125rem;
}

/**
 * Карточка видео
 */

.video-card {
    position: relative;

    display: block;

    text-align: center;

    color: #fff;
}

.video-card .title {
    padding: 0 1rem;

    font-size: 1.25rem;
    font-weight: 700;
}

.video-card:hover .title:after {
    width: 5rem;
}

/**
 * �������� ��������
 */

.partner-card {
    display: block;

    text-align: center;

    font-size: 13px;
}

.partner-card .title {
    margin-top: .5em;
}

/**
 * Карточка произвольного материала
 */

.material-card {
    border: 1px solid rgba(0, 0, 0, .15);
    -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, .1);
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, .1);
}

.material-card .card-thumb {
    position: relative;

    height: 100%;
}

.material-card .card-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;

    padding: 20px;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.material-card .card-title {
    font-size: 1.5rem;
}

.material-card .card-excerpt {
    margin-top: .75rem;
}

.material-card .card-summary {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 40px;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.material-card .card-summary .info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.material-card .card-summary .info > * + * {
    margin-left: 1.5rem;
}

.material-card .card-summary .info .date {
    display: inline-block;

    padding: .5em 1.5em;

    color: #fff;
    background: #326ab3;
}

/**
 * Боковая выплывающая панель навигации
 */

.slide-nav {
    position: fixed;
    z-index: 999;
    top: 0;
    bottom: 0;
    left: 0;

    visibility: hidden;
    overflow: hidden;
    overflow-y: auto;

    width: 100%;
    max-width: 300px;
    padding-top: 45px;

    -webkit-transition: all 250ms ease-in-out;
    transition: all 250ms ease-in-out;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);

    opacity: .5;
    color: #fff;
    background: #326ab3;
}

.slide-nav.is-active {
    visibility: visible;

    -webkit-transform: translateX(0);
    transform: translateX(0);

    opacity: 1;
}

.slide-nav .close-btn {
    position: absolute;
    top: 10px;
    right: 10px;
}

.slide-nav .slide-nav-content {
    position: absolute;
    top: 45px;
    right: 0;
    bottom: 0;
    left: 0;

    overflow: hidden;
    overflow-y: auto;

    padding-top: 20px;
    padding-bottom: 20px;
}

.slide-nav .slide-nav-content > * + * {
    margin-top: 20px;
}

.slide-nav .menu {
    color: inherit;

    font-size: 14px;
}

.slide-nav .menu li {
    position: relative;
}

.slide-nav .menu li:not(:first-child) {
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.slide-nav .menu li .menu-link {
    display: block;

    padding: .75em 42px .75em 10px;

    text-decoration: none;

    color: inherit;

    line-height: 16px;
}

.slide-nav .menu li .menu-link:hover {
    background: rgba(255, 255, 255, .05);
}

.slide-nav .menu li .toggle {
    position: absolute;
    z-index: 9999;
    top: 0;
    right: 0;

    width: 32px;
    height: 32px;
    padding: 8px;

    -webkit-transition: -webkit-transform 250ms ease-in-out;
    transition: -webkit-transform 250ms ease-in-out;
    transition: transform 250ms ease-in-out;
    transition: transform 250ms ease-in-out, -webkit-transform 250ms ease-in-out;

    opacity: .75;
    color: #fff !important;
    background-size: 12px;
}

.slide-nav .menu li ul {
    display: none;

    padding-left: 20px;
}

.slide-nav .menu li.active > .toggle {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

@media (min-width: 576px) {
    .mt-sm-gap {
        margin-top: 20px !important;
    }

    .mb-sm-gap {
        margin-bottom: 20px !important;
    }

    .mt-sm-gap-half {
        margin-top: 10px !important;
    }

    .mb-sm-gap-half {
        margin-bottom: 10px !important;
    }

    .mt-sm-gap-dbl {
        margin-top: 40px !important;
    }

    .mb-sm-gap-dbl {
        margin-bottom: 40px !important;
    }

    .p-sm-gap {
        padding: 20px !important;
    }

    .pt-sm-gap {
        padding-top: 20px !important;
    }

    .pb-sm-gap {
        padding-bottom: 20px !important;
    }

    .pl-sm-gap {
        padding-left: 20px !important;
    }

    .pr-sm-gap {
        padding-right: 20px !important;
    }

    .pt-sm-gap-half {
        padding-top: 10px !important;
    }

    .pb-sm-gap-half {
        padding-bottom: 10px !important;
    }

    .pl-sm-gap-half {
        padding-left: 10px !important;
    }

    .pr-sm-gap-half {
        padding-right: 10px !important;
    }

    .px-sm-gap {
        padding-right: 20px !important;
        padding-left: 20px !important;
    }

    .py-sm-gap {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    .px-sm-gap-half {
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .py-sm-gap-half {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    .font-size-sm-1 {
        font-size: 1.125rem !important;
    }

    .font-size-sm-2 {
        font-size: 1.250rem !important;
    }

    .font-size-sm-3 {
        font-size: 1.375rem !important;
    }

    .font-size-sm-4 {
        font-size: 1.500rem !important;
    }

    .font-size-sm-5 {
        font-size: 1.625rem !important;
    }

    .font-size-sm-6 {
        font-size: 1.750rem !important;
    }

    .font-size-sm-7 {
        font-size: 1.875rem !important;
    }

    .font-size-sm-8 {
        font-size: 2.000rem !important;
    }
}

@media all and (min-width: 576px) {
    .tool-btn .icon {
        width: 32px;
        height: 32px;
    }

    .primary-slider .swiper-slide {
        width: 520px;
    }
}

@media all and (min-width: 768px) {
    html,
    body {
        font-size: 14px;
        line-height: 1.2;
    }

    .has-pattern-on-left {
        position: relative;
    }

    .has-pattern-on-left:after {
        position: absolute;
        top: 0;
        left: 0;

        width: 125px;
        height: 100%;

        content: '';

        background-image: url('../images/pattern-right.png');
        background-repeat: repeat-y;
        background-position: center center;
        background-size: 100% auto;
    }

    .has-pattern-on-left-sm:after {
        width: 50px;
    }

    .ui-datepicker table td {
        font-size: 14px;
    }

    .swiper-container-horizontal > .swiper-scrollbar .swiper-scrollbar-drag {
        background: -webkit-gradient(linear, left top, right top, from(#419de0), color-stop(20%, #3a97de), color-stop(20%, rgba(67, 157, 224, 0)), color-stop(21%, rgba(67, 157, 224, 0)), color-stop(21%, #419de0), color-stop(40%, #3a97de), color-stop(40%, rgba(67, 157, 224, 0)), color-stop(41%, rgba(67, 157, 224, 0)), color-stop(41%, #419de0), color-stop(60%, #3a97de), color-stop(60%, rgba(67, 157, 224, 0)), color-stop(61%, rgba(67, 157, 224, 0)), color-stop(61%, #419de0), color-stop(80%, #3a97de), color-stop(80%, rgba(67, 157, 224, 0)), color-stop(81%, rgba(67, 157, 224, 0)), color-stop(81%, #419de0), to(#3a97de));
        background: -webkit-linear-gradient(left, #419de0 0%, #3a97de 20%, rgba(67, 157, 224, 0) 20%, rgba(67, 157, 224, 0) 21%, #419de0 21%, #3a97de 40%, rgba(67, 157, 224, 0) 40%, rgba(67, 157, 224, 0) 41%, #419de0 41%, #3a97de 60%, rgba(67, 157, 224, 0) 60%, rgba(67, 157, 224, 0) 61%, #419de0 61%, #3a97de 80%, rgba(67, 157, 224, 0) 80%, rgba(67, 157, 224, 0) 81%, #419de0 81%, #3a97de 100%);
        background: linear-gradient(to right, #419de0 0%, #3a97de 20%, rgba(67, 157, 224, 0) 20%, rgba(67, 157, 224, 0) 21%, #419de0 21%, #3a97de 40%, rgba(67, 157, 224, 0) 40%, rgba(67, 157, 224, 0) 41%, #419de0 41%, #3a97de 60%, rgba(67, 157, 224, 0) 60%, rgba(67, 157, 224, 0) 61%, #419de0 61%, #3a97de 80%, rgba(67, 157, 224, 0) 80%, rgba(67, 157, 224, 0) 81%, #419de0 81%, #3a97de 100%);
    }

    .site-header .header-inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-right: -10px;
        margin-left: -10px;

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .site-header .header-inner > * {
        padding-right: 10px;
        padding-left: 10px;
    }

    .site-footer .footer-inner.has-pattern {
        padding-bottom: 0;
    }

    .site-footer .footer-inner.has-pattern:after {
        display: block;

        padding-top: 5.46875%;

        content: '';

        background-image: url('../images/city.png');
        background-repeat: repeat-x;
        background-position: center bottom;
        background-size: auto 100%;
    }

    .section-headline {
        font-size: 1.75rem;
    }

    .primary-slider .swiper-slide {
        width: 700px;
    }

    .locations-map .map {
        height: 450px;
    }

    .abstract-card.full-height-md {
        height: 100%;
    }

    .abstract-card.full-height-md .thumb,
    .abstract-card.full-height-md .embed-responsive {
        height: 100%;
        padding: 0;
    }

    .guide-card .title {
        font-size: 1.25rem;
    }

    .object-card .card-title {
        font-size: 1.125rem;
    }

    .object-card .card-title:after {
        position: absolute;
        right: 35%;
        bottom: 0;
        left: 35%;

        height: .333rem;

        content: '';
        -webkit-transition: left 250ms ease-in-out, right 250ms ease-in-out;
        transition: left 250ms ease-in-out, right 250ms ease-in-out;

        background: currentColor;
    }

    .object-card:hover {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);

        -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, .15);
        box-shadow: 0 0 20px 0 rgba(0, 0, 0, .15);
    }

    .object-card:hover .card-title:after {
        right: 0;
        left: 0;
    }

    .object-card-blue .card-title:after {
        background-color: #439de0;
    }

    .object-card-blue-darken .card-title:after {
        background-color: #326ab3;
    }

    .object-card-red .card-title:after {
        background-color: #de4e33;
    }

    .object-card-red-darken .card-title:after {
        background-color: #c13920;
    }

    .object-card-green .card-title:after {
        background-color: #94c436;
    }

    .object-card-green-darken .card-title:after {
        background-color: #009a3e;
    }

    .object-card-orange .card-title:after {
        background-color: #ffac0e;
    }

    .object-card-orange-darken .card-title:after {
        background-color: #ed5d21;
    }

    .object-card-yellow .card-title:after {
        background-color: #fcc300;
    }

    .leisure-card .card-info {
        font-size: 14px;
    }

    .leisure-card,
    .leisure-card > a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-direction: column;

        height: 100%;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }

    .leisure-card .thumb {
        flex: 1 1 auto;

        padding-top: 0;

        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
    }

    .leisure-card .card-body {
        flex: 0 0 auto;

        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
    }

    .video-card .title {
        font-size: 1.5rem;
    }

    .video-card .title:after {
        display: block;

        width: 4rem;
        height: 3px;
        margin: .5rem auto 0;

        content: '';
        -webkit-transition: width 250ms ease-in-out;
        transition: width 250ms ease-in-out;

        background: #ffac0e;
    }

    .partner-card {
        font-size: 14px;
    }
}

@media (min-width: 768px) {
    .mt-md-gap {
        margin-top: 20px !important;
    }

    .mb-md-gap {
        margin-bottom: 20px !important;
    }

    .mt-md-gap-half {
        margin-top: 10px !important;
    }

    .mb-md-gap-half {
        margin-bottom: 10px !important;
    }

    .mt-md-gap-dbl {
        margin-top: 40px !important;
    }

    .mb-md-gap-dbl {
        margin-bottom: 40px !important;
    }

    .p-md-gap {
        padding: 20px !important;
    }

    .pt-md-gap {
        padding-top: 20px !important;
    }

    .pb-md-gap {
        padding-bottom: 20px !important;
    }

    .pl-md-gap {
        padding-left: 20px !important;
    }

    .pr-md-gap {
        padding-right: 20px !important;
    }

    .pt-md-gap-half {
        padding-top: 10px !important;
    }

    .pb-md-gap-half {
        padding-bottom: 10px !important;
    }

    .pl-md-gap-half {
        padding-left: 10px !important;
    }

    .pr-md-gap-half {
        padding-right: 10px !important;
    }

    .px-md-gap {
        padding-right: 20px !important;
        padding-left: 20px !important;
    }

    .py-md-gap {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    .px-md-gap-half {
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .py-md-gap-half {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    .font-size-md-1 {
        font-size: 1.125rem !important;
    }

    .font-size-md-2 {
        font-size: 1.250rem !important;
    }

    .font-size-md-3 {
        font-size: 1.375rem !important;
    }

    .font-size-md-4 {
        font-size: 1.500rem !important;
    }

    .font-size-md-5 {
        font-size: 1.625rem !important;
    }

    .font-size-md-6 {
        font-size: 1.750rem !important;
    }

    .font-size-md-7 {
        font-size: 1.875rem !important;
    }

    .font-size-md-8 {
        font-size: 2.000rem !important;
    }
}

@media all and (min-width: 992px) {
    body.location-page .site-footer {
        margin-top: -5vh;
    }

    html,
    body {
        font-size: 16px;
        line-height: 1.25;
    }

    .site-topbar .logo {
        visibility: hidden;

        opacity: 0;
    }

    .site-topbar .nav-toggle {
        display: none;
    }

    .site-topbar .menu {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .site-header .logo-area {
        display: block;

        width: 235px;
    }

    .section-headline {
        font-size: 2.00rem;
    }

    .primary-slider .swiper-slide {
        width: 940px;
    }

    .locations-map .map {
        height: 500px;
    }

    .instagram-link {
        font-size: 1.5rem;
    }
}

@media (min-width: 992px) {
    .mt-lg-gap {
        margin-top: 20px !important;
    }

    .mb-lg-gap {
        margin-bottom: 20px !important;
    }

    .mt-lg-gap-half {
        margin-top: 10px !important;
    }

    .mb-lg-gap-half {
        margin-bottom: 10px !important;
    }

    .mt-lg-gap-dbl {
        margin-top: 40px !important;
    }

    .mb-lg-gap-dbl {
        margin-bottom: 40px !important;
    }

    .p-lg-gap {
        padding: 20px !important;
    }

    .pt-lg-gap {
        padding-top: 20px !important;
    }

    .pb-lg-gap {
        padding-bottom: 20px !important;
    }

    .pl-lg-gap {
        padding-left: 20px !important;
    }

    .pr-lg-gap {
        padding-right: 20px !important;
    }

    .pt-lg-gap-half {
        padding-top: 10px !important;
    }

    .pb-lg-gap-half {
        padding-bottom: 10px !important;
    }

    .pl-lg-gap-half {
        padding-left: 10px !important;
    }

    .pr-lg-gap-half {
        padding-right: 10px !important;
    }

    .px-lg-gap {
        padding-right: 20px !important;
        padding-left: 20px !important;
    }

    .py-lg-gap {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    .px-lg-gap-half {
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .py-lg-gap-half {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    .font-size-lg-1 {
        font-size: 1.125rem !important;
    }

    .font-size-lg-2 {
        font-size: 1.250rem !important;
    }

    .font-size-lg-3 {
        font-size: 1.375rem !important;
    }

    .font-size-lg-4 {
        font-size: 1.500rem !important;
    }

    .font-size-lg-5 {
        font-size: 1.625rem !important;
    }

    .font-size-lg-6 {
        font-size: 1.750rem !important;
    }

    .font-size-lg-7 {
        font-size: 1.875rem !important;
    }

    .font-size-lg-8 {
        font-size: 2.000rem !important;
    }
}

@media (min-width: 1200px) {
    .mt-xl-gap {
        margin-top: 20px !important;
    }

    .mb-xl-gap {
        margin-bottom: 20px !important;
    }

    .mt-xl-gap-half {
        margin-top: 10px !important;
    }

    .mb-xl-gap-half {
        margin-bottom: 10px !important;
    }

    .mt-xl-gap-dbl {
        margin-top: 40px !important;
    }

    .mb-xl-gap-dbl {
        margin-bottom: 40px !important;
    }

    .p-xl-gap {
        padding: 20px !important;
    }

    .pt-xl-gap {
        padding-top: 20px !important;
    }

    .pb-xl-gap {
        padding-bottom: 20px !important;
    }

    .pl-xl-gap {
        padding-left: 20px !important;
    }

    .pr-xl-gap {
        padding-right: 20px !important;
    }

    .pt-xl-gap-half {
        padding-top: 10px !important;
    }

    .pb-xl-gap-half {
        padding-bottom: 10px !important;
    }

    .pl-xl-gap-half {
        padding-left: 10px !important;
    }

    .pr-xl-gap-half {
        padding-right: 10px !important;
    }

    .px-xl-gap {
        padding-right: 20px !important;
        padding-left: 20px !important;
    }

    .py-xl-gap {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    .px-xl-gap-half {
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .py-xl-gap-half {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    .font-size-xl-1 {
        font-size: 1.125rem !important;
    }

    .font-size-xl-2 {
        font-size: 1.250rem !important;
    }

    .font-size-xl-3 {
        font-size: 1.375rem !important;
    }

    .font-size-xl-4 {
        font-size: 1.500rem !important;
    }

    .font-size-xl-5 {
        font-size: 1.625rem !important;
    }

    .font-size-xl-6 {
        font-size: 1.750rem !important;
    }

    .font-size-xl-7 {
        font-size: 1.875rem !important;
    }

    .font-size-xl-8 {
        font-size: 2.000rem !important;
    }
}

@media all and (min-width: 1200px) {
    .container {
        max-width: 1200px;
    }

    .section-headline {
        font-size: 2.25rem;
    }

    /*.primary-slider .swiper-slide {*/
    /*    width: 1180px;*/
    /*}*/
    .locations-map .map {
        height: 600px;
    }

    .instagram-link {
        font-size: 2.0rem;
    }
}

@media (min-width: 1440px) {
    .mt-sxl-gap {
        margin-top: 20px !important;
    }

    .mb-sxl-gap {
        margin-bottom: 20px !important;
    }

    .mt-sxl-gap-half {
        margin-top: 10px !important;
    }

    .mb-sxl-gap-half {
        margin-bottom: 10px !important;
    }

    .mt-sxl-gap-dbl {
        margin-top: 40px !important;
    }

    .mb-sxl-gap-dbl {
        margin-bottom: 40px !important;
    }

    .p-sxl-gap {
        padding: 20px !important;
    }

    .pt-sxl-gap {
        padding-top: 20px !important;
    }

    .pb-sxl-gap {
        padding-bottom: 20px !important;
    }

    .pl-sxl-gap {
        padding-left: 20px !important;
    }

    .pr-sxl-gap {
        padding-right: 20px !important;
    }

    .pt-sxl-gap-half {
        padding-top: 10px !important;
    }

    .pb-sxl-gap-half {
        padding-bottom: 10px !important;
    }

    .pl-sxl-gap-half {
        padding-left: 10px !important;
    }

    .pr-sxl-gap-half {
        padding-right: 10px !important;
    }

    .px-sxl-gap {
        padding-right: 20px !important;
        padding-left: 20px !important;
    }

    .py-sxl-gap {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    .px-sxl-gap-half {
        padding-right: 10px !important;
        padding-left: 10px !important;
    }

    .py-sxl-gap-half {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    .font-size-sxl-1 {
        font-size: 1.125rem !important;
    }

    .font-size-sxl-2 {
        font-size: 1.250rem !important;
    }

    .font-size-sxl-3 {
        font-size: 1.375rem !important;
    }

    .font-size-sxl-4 {
        font-size: 1.500rem !important;
    }

    .font-size-sxl-5 {
        font-size: 1.625rem !important;
    }

    .font-size-sxl-6 {
        font-size: 1.750rem !important;
    }

    .font-size-sxl-7 {
        font-size: 1.875rem !important;
    }

    .font-size-sxl-8 {
        font-size: 2.000rem !important;
    }
}

@media all and (max-width: 1199px) {
    .official-news .list li:nth-child(n+4) {
        display: none;
    }
}
