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;
    border: 0;
    vertical-align: baseline;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}
body {
    line-height: 1;
    text-rendering: optimizespeed;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
}
ol,
ul {
    list-style: none;
}
blockquote,
q {
    quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
button::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner {
    border: none;
    padding: 0;
}
/*global*/
section,
main,
header,
footer,
aside,
div,
ul,
ol,
li,
a,
i,
dl,
dt,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
cite,
span {
    position: relative;
    box-sizing: border-box;
}
input,
select,
textarea,
form,
label,
button {
    -webkit-backface-visibility: hidden;
    box-sizing: border-box;
}
ymaps {
    box-sizing: content-box;
    position: static;
}
html,
body {
    padding: 0;
    margin: 0;
}
* {
    -webkit-text-size-adjust: 100%;
}
img {
    border: 0;
    display: inline-block;
    max-width: 100%;
    vertical-align: middle;
    -ms-interpolation-mode: bicubic;
}
:root {
    --border-width: 1px;
    --border-radius: 3px;
    --border-color: rgba(0, 0, 0, 0.125);
    --border-color_l: rgba(0, 0, 0, 0.05);
    --border-color_d: rgba(0, 0, 0, 0.25);
}
._invert {
    --border-color: rgba(255, 255, 255, 0.125);
    --border-color_l: rgba(255, 255, 255, 0.05);
    --border-color_d: rgba(255, 255, 255, 0.25);
}
:root {
    --btn-height: 3em;
    --btn-padding: 0 1.5em;
    --btn-ff: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    --btn-color: var(--c-header);
    --btn-fs: 1em;
    --btn-fw: 400;
    --btn-br: 0;
    --btn-primary-height: var(--btn-height);
    --btn-primary-padding: var(--btn-padding);
    --btn-primary-br: var(--btn-br);
    --btn-primary-ff: var(--btn-ff);
    --btn-primary-fs: var(--btn-fs);
    --btn-primary-fw: 500;
    --btn-primary-ls: .035em;
    --btn-primary-tt: uppercase;
    --btn-primary-color: #000;
    --btn-primary-color_hover: var(--btn-primary-color);
    --btn-primary-color_focus: var(--btn-primary-color);
    --btn-primary-color_active: var(--btn-primary-color);
    --btn-primary-bg: #ffcc00;
    --btn-primary-bg_hover: var(--btn-primary-bg);
    --btn-primary-bg_focus: var(--btn-primary-bg);
    --btn-primary-bg_active: var(--btn-primary-bg);
    --btn-primary-bw: 1px;
    --btn-primary-bc: var(--c-border);
    --btn-primary-bc_hover: var(--btn-primary-bc);
    --btn-primary-bc_focus: var(--btn-primary-bc);
    --btn-primary-bc_active: var(--btn-primary-bc);
    --btn-default-height: var(--btn-height);
    --btn-default-padding: var(--btn-padding);
    --btn-default-br: var(--btn-br);
    --btn-default-ff: var(--btn-ff);
    --btn-default-fs: var(--btn-fs);
    --btn-default-fw: 500;
    --btn-default-ls: .035em;
    --btn-default-tt: uppercase;
    --btn-default-color: var(--btn-color);
    --btn-default-color_hover: var(--c-link);
    --btn-default-color_focus: var(--brand-2);
    --btn-default-color_active: var(--brand-2);
    --btn-default-bg: transparent;
    --btn-default-bg_hover: transparent;
    --btn-default-bg_focus: transparent;
    --btn-default-bg_active: transparent;
    --btn-default-bw: 1px;
    --btn-default-bc: var(--c-border);
    --btn-default-bc_hover: var(--c-link);
    --btn-default-bc_focus: var(--brand-2);
    --btn-default-bc_active: var(--brand-2);
}
:root {
    --c-white: #fff;
    --c-black: #000;
    --c-bg_01: #ffffff;
    --c-bg_02: #f2f2f2;
    --c-bg_03: #e6e6e6;
    --c-bg_04: #d9d9d9;
    --c-bg_05: #cccccc;
    --hsl-bg_01: 0, 0%, 100%;
    --hsl-bg_02: 0, 0%, 95%;
    --hsl-bg_03: 0, 0%, 90%;
    --hsl-bg_04: 0, 0%, 85%;
    --hsl-bg_05: 0, 0%, 90%;
    --brand-1: red;
    --brand-2: #ae66cc;
    --brand-3: #36c6ff;
    --c-primary: #ff0000;
    --c-secondary: #000;
    --c-header: #000;
    --c-text: #333333;
    --c-text_muted: #808080;
    --c-link: #0099ff;
    --c-link_hover: #ae66cc;
    --c-link_focus: #0099ff;
    --c-link_active: #0099ff;
    --c-link_visited: #0099ff;
    --c-hl: #ffe380;
    --c-hl_l: #ffeeb3;
    --c-outline: var(--c-link);
    --c-border: rgba(0, 0, 0, 0.25);
    --c-gray: #808080;
    --c-gray_l: #999999;
    --c-gray_d: #666666;
    --c-bg: #ebebeb;
    --c-bg_l: #f5f5f5;
    --c-bg_d: #e0e0e0;
}
@media (max-width:767px) {
    :root {
        --c-text: #000;
    }
}
._invert {
    --c-white: #000;
    --c-black: #fff;
    --c-bg_01: #000000;
    --c-bg_02: #0d0d0d;
    --c-bg_03: #1a1a1a;
    --c-bg_04: #262626;
    --c-bg_05: #333333;
    --hsl-bg_01: 0, 0%, 0%;
    --hsl-bg_02: 0, 0%, 5%;
    --hsl-bg_03: 0, 0%, 10%;
    --hsl-bg_04: 0, 0%, 15%;
    --hsl-bg_05: 0, 0%, 20%;
    --c-text: #d9d9d9;
    --c-text_muted: #808080;
    --c-header: #fff;
    --c-border: rgba(255, 255, 255, 0.125);
    --c-link: #36c6ff;
}
@media (max-width:767px) {
    ._invert {
        --c-text: #fff;
    }
}
:root {
    --spacing_content_x: 4rem;
    --spacing_content_y: 4rem;
    --spacing_content: var(--spacing_content_y) var(--spacing_content_x);
    --offset_content_x: -4rem;
    --offset_content_y: -4rem;
    --offset_content: var(--offset_content_x) var(--offset_content_y);
    --gap_section: calc(var(--spacing_content_y) * 0.8);
    --gap_box: calc(var(--spacing_content_y) * 0.6);
}
@media (min-width:768px) and (max-width:1199px) {
    :root {
        --spacing_content_y: 3rem;
        --spacing_content_x: 5vw;
        --offset_content_y: -3rem;
        --offset_content_x: -5vw;
        --offset_content: -3rem -5vw;
    }
}
@media (max-width:767px) {
    :root {
        --spacing_content_y: calc(3vmax + 3vmin);
        --spacing_content_x: 5vw;
        --offset_content_y: calc( -3vmax - 3vmin);
        --offset_content_x: -5vw;
        --offset_content: calc( -3vmax - 3vmin) -5vw;
    }
}
:root {
    --fs: 18px;
    --fs_h1: 1.90612539em;
    --fs_h2: 1.62223438em;
    --fs_h3: 1.380625em;
    --fs_h4: 1.175em;
    --fs_h5: 1em;
    --fs_h6: 0.85106383em;
}
@media (max-width:767px), (max-width:1439px) {
    :root {
        --fs: 16px;
        --fs_h1: 1.74900625em;
        --fs_h2: 1.520875em;
        --fs_h3: 1.3225em;
        --fs_h4: 1.15em;
    }
}
:root {
    --content-width: 36rem;
    --editor-content-width: unset;
    --width_page: 1280px;
    --width_content: 36rem;
    --width_form: 24rem;
    --width_factor: 192px;
}
@media (min-width:1200px) and (max-width:1727px) {
    :root {
        --width_content-calc: calc(100vw - var(--left-bar-width) - var(--spacing_content_x) * 2);
    }
}
@media (max-width:1199px) {
    :root {
        --width_content-calc: calc(100vw - var(--spacing_content_x) * 2);
    }
}
@media (min-width:1728px) and (max-width:1919px) {
    :root {
        --width_content-calc: calc(100vw - var(--left-bar-width) * 2 - var(--spacing_content_x) * 2);
    }
}
@media (min-width:1920px) {
    :root {
        --width_content-calc: calc(1920px - var(--left-bar-width) * 2 - var(--spacing_content_x) * 2);
    }
}
@keyframes spin {
    from {
        transform: rotate(0);
    }
    to {
        transform: rotate(360deg);
    }
}
@keyframes fade-in {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes fade-out {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
@keyframes move-from-top {
    from {
        transform: translateY(-100%);
    }
    to {
        transform: translateY(0);
    }
}
@keyframes move-to-top {
    from {
        transform: translateY(0);
    }
    to {
        transform: translateY(-100%);
    }
}
@keyframes move-from-right {
    from {
        transform: translateX(100%);
    }
    to {
        transform: translateX(0);
    }
}
@keyframes move-to-right {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(100%);
    }
}
@keyframes move-from-bottom {
    from {
        transform: translateY(100%);
    }
    to {
        transform: translateY(0);
    }
}
@keyframes move-to-bottom {
    from {
        transform: translateY(0);
    }
    to {
        transform: translateY(100%);
    }
}
@keyframes move-from-left {
    from {
        transform: translateX(-100%);
    }
    to {
        transform: translateX(0);
    }
}
@keyframes move-to-left {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}
.bg_white {
    background-color: #fff;
}
.bg_black {
    background-color: #000;
}
.bg_info {
    background-color: #448fd6;
}
.bg_success {
    background-color: #6dbe45;
}
.bg_warning {
    background-color: #f8951d;
}
.bg_fail {
    background-color: #ed2024;
}
.bg_brand {
    background: var(--brand-2) linear-gradient(90deg, var(--brand-1), var(--brand-2), var(--brand-3));
    background-size: 175%;
    background-position: center center;
}
.bgp_lc {
    background-position: left center;
}
.bgp_rc {
    background-position: right center;
}
.bgp_cc {
    background-position: center center;
}
.oh {
    overflow: hidden !important;
}
.ov {
    overflow: visible !important;
}
.glow_anim {
    animation: animateGlow 10s ease infinite;
}
.glow_hover:before {
    animation: animateGlow 2s ease infinite;
    opacity: .65;
}
.glow_3:before {
    transition: opacity 0.25s ease;
    --spacing: 1rem;
    content: '';
    display: block;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    opacity: .35;
    width: 100%;
    height: 100%;
    filter: blur(var(--spacing));
    background: linear-gradient(to right top, var(--brand-3), var(--brand-2), var(--brand-3));
    background-size: 200%;
}
.glow_4:before {
    transition: opacity 0.25s ease;
    --spacing: 1.5rem;
    content: '';
    display: block;
    box-sizing: border-box;
    position: absolute;
    top: 10px;
    opacity: .35;
    width: 100%;
    height: 100%;
    filter: blur(var(--spacing));
    background: linear-gradient(to right top, var(--brand-3), var(--brand-2), var(--brand-3));
    background-size: 200%;
}
.glow_5:before {
    transition: opacity 0.25s ease;
    --spacing: 2rem;
    content: '';
    display: block;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    opacity: .35;
    width: 100%;
    height: 100%;
    filter: blur(var(--spacing));
    background: linear-gradient(to right top, var(--brand-3), var(--brand-2), var(--brand-3));
    background-size: 200%;
}
@keyframes animateGlow {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}
.m_0 {
    margin: 0 !important;
}
.m_auto {
    margin: auto;
}
.m_xxs {
    margin: 0.25rem;
}
.m_xs {
    margin: 0.5rem;
}
.m_s {
    margin: 0.75rem;
}
.m_m {
    margin: 1rem;
}
.m_l {
    margin: 1.5rem;
}
.m_xl {
    margin: 2rem;
}
.m_xxl {
    margin: 3rem;
}
.mh_0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.mh_auto {
    margin-left: auto;
    margin-right: auto;
}
.mh_xxs {
    margin-left: 0.25rem;
    margin-right: 0.25rem;
}
.mh_xs {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
}
.mh_s {
    margin-left: 0.75rem;
    margin-right: 0.75rem;
}
.mh_m {
    margin-left: 1rem;
    margin-right: 1rem;
}
.mh_l {
    margin-left: 1.5rem;
    margin-right: 1.5rem;
}
.mh_xl {
    margin-left: 2rem;
    margin-right: 2rem;
}
.mh_xxl {
    margin-left: 3rem;
    margin-right: 3rem;
}
.mv_0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.mv_auto {
    margin-top: auto;
    margin-bottom: auto;
}
.mv_xxs {
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
}
.mv_xs {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}
.mv_s {
    margin-top: 0.75rem;
    margin-bottom: 0.75rem;
}
.mv_m {
    margin-top: 1rem;
    margin-bottom: 1rem;
}
.mv_l {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}
.mv_xl {
    margin-top: 2rem;
    margin-bottom: 2rem;
}
.mv_xxl {
    margin-top: 3rem;
    margin-bottom: 3rem;
}
.mt_0 {
    margin-top: 0 !important;
}
.mt_auto {
    margin-top: auto;
}
.mt_xxs {
    margin-top: 0.25rem;
}
.mt_xs {
    margin-top: 0.5rem;
}
.mt_s {
    margin-top: 0.75rem;
}
.mt_m {
    margin-top: 1rem;
}
.mt_l {
    margin-top: 1.5rem;
}
.mt_xl {
    margin-top: 2rem;
}
.mt_xxl {
    margin-top: 3rem;
}
.mr_xxs {
    margin-right: 0.25rem;
}
.mr_0 {
    margin-right: 0 !important;
}
.mr_auto {
    margin-right: auto;
}
.mr_xs {
    margin-right: 0.5rem;
}
.mr_s {
    margin-right: 0.75rem;
}
.mr_m {
    margin-right: 1rem;
}
.mr_l {
    margin-right: 1.5rem;
}
.mr_xl {
    margin-right: 2rem;
}
.mr_xxl {
    margin-right: 3rem;
}
.mb_0 {
    margin-bottom: 0 !important;
}
.mb_auto {
    margin-bottom: auto;
}
.mb_xxs {
    margin-bottom: 0.25rem;
}
.mb_xs {
    margin-bottom: 0.5rem;
}
.mb_s {
    margin-bottom: 0.75rem;
}
.mb_m {
    margin-bottom: 1rem;
}
.mb_l {
    margin-bottom: 1.5rem;
}
.mb_xl {
    margin-bottom: 2rem;
}
.mb_xxl {
    margin-bottom: 3rem;
}
.ml_0 {
    margin-left: 0 !important;
}
.ml_auto {
    margin-left: auto;
}
.ml_xxs {
    margin-left: 0.25rem;
}
.ml_xs {
    margin-left: 0.5rem;
}
.ml_s {
    margin-left: 0.75rem;
}
.ml_m {
    margin-left: 1rem;
}
.ml_l {
    margin-left: 1.5rem;
}
.ml_xl {
    margin-left: 2rem;
}
.ml_xxl {
    margin-left: 3rem;
}
.o_xxs {
    margin: -0.25rem;
}
.o_xs {
    margin: -0.5rem;
}
.o_s {
    margin: -0.75rem;
}
.o_m {
    margin: -1rem;
}
.o_l {
    margin: -1.5rem;
}
.o_xl {
    margin: -2rem;
}
.o_xxl {
    margin: -3rem;
}
.oh_xxs {
    margin-left: -0.25rem;
    margin-right: -0.25rem;
}
.oh_xs {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
}
.oh_s {
    margin-left: -0.75rem;
    margin-right: -0.75rem;
}
.oh_m {
    margin-left: -1rem;
    margin-right: -1rem;
}
.oh_l {
    margin-left: -1.5rem;
    margin-right: -1.5rem;
}
.oh_xl {
    margin-left: -2rem;
    margin-right: -2rem;
}
.oh_xxl {
    margin-left: -3rem;
    margin-right: -3rem;
}
.ov_xxs {
    margin-top: -0.25rem;
    margin-bottom: -0.25rem;
}
.ov_xs {
    margin-top: -0.5rem;
    margin-bottom: -0.5rem;
}
.ov_s {
    margin-top: -0.75rem;
    margin-bottom: -0.75rem;
}
.ov_m {
    margin-top: -1rem;
    margin-bottom: -1rem;
}
.ov_l {
    margin-top: -1.5rem;
    margin-bottom: -1.5rem;
}
.ov_xl {
    margin-top: -2rem;
    margin-bottom: -2rem;
}
.ov_xxl {
    margin-top: -3rem;
    margin-bottom: -3rem;
}
.ot_xxs {
    margin-top: -0.25rem;
}
.ot_xs {
    margin-top: -0.5rem;
}
.ot_s {
    margin-top: -0.75rem;
}
.ot_m {
    margin-top: -1rem;
}
.ot_l {
    margin-top: -1.5rem;
}
.ot_xl {
    margin-top: -2rem;
}
.ot_xxl {
    margin-top: -3rem;
}
.or_xxs {
    margin-right: -0.25rem;
}
.or_xs {
    margin-right: -0.5rem;
}
.or_s {
    margin-right: -0.75rem;
}
.or_m {
    margin-right: -1rem;
}
.or_l {
    margin-right: -1.5rem;
}
.or_xl {
    margin-right: -2rem;
}
.or_xxl {
    margin-right: -3rem;
}
.ob_xxs {
    margin-bottom: -0.25rem;
}
.ob_xs {
    margin-bottom: -0.5rem;
}
.ob_s {
    margin-bottom: -0.75rem;
}
.ob_m {
    margin-bottom: -1rem;
}
.ob_l {
    margin-bottom: -1.5rem;
}
.ob_xl {
    margin-bottom: -2rem;
}
.ob_xxl {
    margin-bottom: -3rem;
}
.ol_xxs {
    margin-left: -0.25rem;
}
.ol_xs {
    margin-left: -0.5rem;
}
.ol_s {
    margin-left: -0.75rem;
}
.ol_m {
    margin-left: -1rem;
}
.ol_l {
    margin-left: -1.5rem;
}
.ol_xl {
    margin-left: -2rem;
}
.ol_xxl {
    margin-left: -3rem;
}
.o_content {
    margin: var(--offset_content);
}
.oh_content {
    margin-left: var(--offset_content_x);
    margin-right: var(--offset_content_x);
}
.ov_content {
    margin-top: var(--offset_content_y);
    margin-bottom: var(--offset_content_y);
}
.ot_content {
    margin-top: var(--offset_content_y);
}
.or_content {
    margin-right: var(--offset_content_x);
}
.ob_content {
    margin-bottom: var(--offset_content_y);
}
.ol_content {
    margin-left: var(--offset_content_x);
}
.p_xxs {
    padding: 0.25rem;
}
.p_xs {
    padding: 0.5rem;
}
.p_s {
    padding: 0.75rem;
}
.p_m {
    padding: 1rem;
}
.p_l {
    padding: 1.5rem;
}
.p_xl {
    padding: 2rem;
}
.p_xxl {
    padding: 3rem;
}
/*PADDING HORISONTAL*/
.ph_xxs {
    padding-left: 0.25rem;
    padding-right: 0.25rem;
}
.ph_xs {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}
.ph_s {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}
.ph_m {
    padding-left: 1rem;
    padding-right: 1rem;
}
.ph_l {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}
.ph_xl {
    padding-left: 2rem;
    padding-right: 2rem;
}
.ph_xxl {
    padding-left: 3rem;
    padding-right: 3rem;
}
/*PADDING VERTICAL*/
.pv_xxs {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}
.pv_xs {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
.pv_s {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}
.pv_m {
    padding-top: 1rem;
    padding-bottom: 1rem;
}
.pv_l {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}
.pv_xl {
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.pv_xxl {
    padding-top: 3rem;
    padding-bottom: 3rem;
}
.p_content {
    padding: var(--spacing_content);
}
.ph_content {
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
}
.pv_content {
    padding-top: var(--spacing_content_y);
    padding-bottom: var(--spacing_content_y);
}
html {
    font-size: var(--fs);
}
body {
    color: #d9d9d9;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-weight: 400;
}
._invert {
    color: var(--c-text);
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    padding-top: 1px;
    padding-bottom: 1px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-weight: 600;
    line-height: 1.25;
    color: #fff;
}
h1:before,
h2:before,
h3:before,
h4:before,
h5:before,
h6:before,
.h1:before,
.h2:before,
.h3:before,
.h4:before,
.h5:before,
.h6:before {
    content: '';
    display: block;
    margin-top: -0.3125em;
}
h1:after,
h2:after,
h3:after,
h4:after,
h5:after,
h6:after,
.h1:after,
.h2:after,
.h3:after,
.h4:after,
.h5:after,
.h6:after {
    content: '';
    display: block;
    margin-bottom: -0.3125em;
}
h1,
.h1 {
    font-size: var(--fs_h1);
}
h2,
.h2 {
    font-size: var(--fs_h2);
}
h3,
.h3 {
    font-size: var(--fs_h3);
}
h4,
.h4 {
    font-size: var(--fs_h4);
}
h5,
.h5 {
    font-size: var(--fs_h5);
}
h6,
.h6 {
    font-size: var(--fs_h6);
}
a {
    color: var(--c-link);
}
a:not([class]):hover {
    color: #db1a1a;
}
a:not([class]):focus {
    color: var(--c-link_focus);
}
a:not([class]):active {
    color: var(--c-link_active);
}
p {
    line-height: 1.5;
    padding-top: 1px;
    padding-bottom: 1px;
}
p:before {
    content: '';
    display: block;
    position: relative;
    margin-top: -0.1875em;
}
p:after {
    content: '';
    display: block;
    position: relative;
    margin-bottom: -0.1875em;
}
blockquote:before {
    position: absolute;
    display: block;
    line-height: 1;
    font-size: 3em;
    pointer-events: none;
    content: '«';
    right: 100%;
    margin-top: -0.5em;
    margin-right: 0.125em;
}
blockquote:after {
    position: absolute;
    display: inline-block;
    line-height: 1;
    font-size: 3em;
    pointer-events: none;
    content: '»';
    text-align: right;
    margin-top: -0.15em;
    margin-left: 0.125em;
}
cite {
    display: block;
    font-style: normal;
}
small {
    font-size: 75%;
}
b,
strong {
    font-weight: bold;
}
i {
    font-style: normal;
}
hr {
    margin: 0;
    border: 0;
    border-top: var(--border-width) solid var(--border-color);
    height: 0;
    clear: both;
}
@media (min-width:768px) {
    hr {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }
}
@media (max-width:767px) {
    hr {
        margin-top: 1.5rem;
        margin-bottom: 1.5rem;
    }
}
hr.hr_xl {
    margin-top: var(--spacing_content_y);
    margin-bottom: var(--spacing_content_y);
}
dl {
    margin: 0;
}
dt,
dd {
    line-height: 1;
    display: block;
    padding: 0;
    margin: 0;
}
dt {
    color: var(--c-text);
    font-size: 100%;
}
dd {
    color: var(--c-header);
}
.lh {
    line-height: 1 !important;
}
.lh_xs {
    line-height: 1;
}
.lh_s {
    line-height: 1.125;
}
.lh_m {
    line-height: 1.25;
}
.lh_l {
    line-height: 1.375;
}
.lh_xl {
    line-height: 1.5;
}
.ff_primary {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}
.ff_secondary {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}
.ff_headings {
    font-family: var(--ff-headings);
}
.ff_text {
    font-family: var(--ff-text);
}
.fs_xxs {
    font-size: 0.625em;
}
.fs_xs {
    font-size: 0.75em;
}
.fs_s {
    font-size: 0.875em;
}
.fs_m {
    font-size: 1em;
}
.fs_l {
    font-size: 1.125em;
}
.fs_xl {
    font-size: 1.25em;
}
.fs_xxl {
    font-size: 1.5em;
}
@media (min-width:1200px) {
    .fs_display {
        font-size: 150%;
    }
}
@media (min-width:768px) and (max-width:1199px) {
    .fs_display {
        font-size: 125%;
    }
}
.ta_left {
    text-align: left;
}
.ta_center {
    text-align: center;
}
.ta_right {
    text-align: right;
}
.nowrap {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    max-width: 100%;
}
.width_content {
    max-width: var(--editor-content-width);
    margin-left: var(--editor-content-align-left);
    margin-right: var(--editor-content-align-right);
}
.width_full {
    margin-left: var(--offset_content_x);
    margin-right: var(--offset_content_x);
}
body {
    min-width: 320px;
    overflow-x: hidden;
    background-color: #000;
}
@media (min-width:1200px) {
    body {
        overflow-y: scroll;
    }
}
.cocoen {
    box-sizing: border-box;
    cursor: pointer;
    overflow: hidden;
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.cocoen * {
    box-sizing: inherit;
}
.cocoen ::after,
.cocoen ::before {
    box-sizing: inherit;
}
.cocoen img,
.cocoen picture > img {
    max-width: none;
}
.cocoen > img,
.cocoen > picture > img {
    display: block;
    width: 100%;
}
.cocoen > div:first-child,
picture .cocoen > div {
    height: 100%;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    width: 100%;
    clip-path: polygon(0 0, 62% 0%, 38% 100%, 0% 100%);
}
.cocoen-drag {
    bottom: 0;
    cursor: ew-resize;
    left: 50%;
    position: absolute;
    top: 0;
}
.cocoen-drag::before {
    content: "";
    position: absolute;
    width: 4px;
    background-color: #fff;
    height: 100%;
    left: 50%;
    margin-left: -2px;
    transform: skewX(-20deg);
}
.cocoen-drag::after {
    background-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20id%3D%22Layer_1%22%20x%3D%220%22%20y%3D%220%22%20version%3D%221.1%22%20viewBox%3D%220%200%2060%2050%22%20xml%3Aspace%3D%22preserve%22%3E%0A%20%20%3Cpath%20fill%3D%22red%22%20d%3D%22M15.5%2010h40l3.6-10h-40z%22%2F%3E%0A%20%20%3Cpath%20fill%3D%22%23AE66CC%22%20d%3D%22M8.2%2030h40l3.6-10h-40z%22%2F%3E%0A%20%20%3Cpath%20fill%3D%22%2336C6FF%22%20d%3D%22M.9%2050h40l3.6-10h-40z%22%2F%3E%0A%3C%2Fsvg%3E%0A");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    content: "";
    width: 60px;
    height: 40px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
}
:root {
    --hc-0: var(--brand-3);
    --hc-1: #5686e2;
    --hc-2: var(--brand-2);
    --hc-3: #e34b7a;
    --hc-4: var(--brand-1);
    --hc-5: #2979ff;
    --hc-6: var(--brand-2);
}
.highcharts-container {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
    text-align: left;
    line-height: normal;
    z-index: 0;
    /* #1072 */
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    user-select: none;
}
.highcharts-root {
    display: block;
}
.highcharts-root text {
    stroke-width: 0;
}
.highcharts-strong {
    font-weight: bold;
}
.highcharts-emphasized {
    font-style: italic;
}
.highcharts-anchor {
    cursor: pointer;
}
.highcharts-background {
    fill: none;
}
.highcharts-plot-border,
.highcharts-plot-background {
    fill: none;
}
.highcharts-label-box {
    fill: none;
}
.highcharts-button-box {
    fill: inherit;
}
.highcharts-tracker-line {
    stroke-linejoin: round;
    stroke: rgba(192, 192, 192, 0.0001);
    stroke-width: 22;
    fill: none;
}
.highcharts-tracker-area {
    fill: rgba(192, 192, 192, 0.0001);
    stroke-width: 0;
}
/* Titles */
.highcharts-title {
    fill: #333333;
    font-size: 1.5em;
}
.highcharts-subtitle {
    fill: #666666;
}
/* Axes */
.highcharts-axis-line {
    fill: none;
    stroke: #ccc;
}
.highcharts-yaxis .highcharts-axis-line {
    stroke-width: 0;
}
.highcharts-axis-title {
    fill: #666666;
}
.highcharts-axis-labels {
    fill: #666666;
    cursor: default;
    font-size: 0.9em;
}
.highcharts-grid-line {
    fill: none;
    stroke: #e6e6e6;
}
.highcharts-xaxis-grid .highcharts-grid-line {
    stroke-width: 0px;
}
.highcharts-tick {
    stroke: #ccd6eb;
}
.highcharts-yaxis .highcharts-tick {
    stroke-width: 0;
}
.highcharts-minor-grid-line {
    stroke: #f2f2f2;
}
.highcharts-crosshair-thin {
    stroke-width: 1px;
    stroke: #cccccc;
}
.highcharts-crosshair-category {
    stroke: #ccd6eb;
    stroke-opacity: 0.25;
}
/* Credits */
.highcharts-credits {
    cursor: pointer;
    fill: #999999;
    font-size: 0.7em;
    transition: fill 250ms, font-size 250ms;
}
.highcharts-credits:hover {
    fill: black;
    font-size: 1em;
}
/* Tooltip */
.highcharts-tooltip {
    cursor: default;
    pointer-events: none;
    white-space: nowrap;
    transition: stroke 150ms;
}
.highcharts-tooltip text {
    fill: #333333;
}
.highcharts-tooltip .highcharts-header {
    font-size: 0.85em;
}
.highcharts-tooltip-box {
    stroke-width: 1px;
    fill: #f7f7f7;
    fill-opacity: 0.85;
}
.highcharts-tooltip-box .highcharts-label-box {
    fill: #f7f7f7;
    fill-opacity: 0.85;
}
.highcharts-selection-marker {
    fill: #335cad;
    fill-opacity: 0.25;
}
.highcharts-graph {
    fill: none;
    stroke-width: 2px;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.highcharts-empty-series {
    stroke-width: 1px;
    fill: none;
    stroke: #cccccc;
}
.highcharts-state-hover .highcharts-graph {
    stroke-width: 3;
}
.highcharts-point-inactive {
    /* quick in */
}
.highcharts-series-inactive {
    /* quick in */
}
.highcharts-state-hover path {
    transition: stroke-width 50ms;
    /* quick in */
}
.highcharts-state-normal path {
    transition: stroke-width 250ms;
    /* slow out */
}
/* Legend hover affects points and series */
g.highcharts-series,
.highcharts-point,
.highcharts-markers,
.highcharts-data-labels {
    transition: opacity 250ms;
}
/* Series options */
/* Default colors */
.highcharts-color-0 {
    fill: var(--hc-0);
    stroke: var(--hc-0);
}
.highcharts-color-1 {
    fill: var(--hc-1);
    stroke: var(--hc-1);
}
.highcharts-color-2 {
    fill: var(--hc-2);
    stroke: var(--hc-2);
}
.highcharts-color-3 {
    fill: var(--hc-3);
    stroke: var(--hc-3);
}
.highcharts-color-4 {
    fill: var(--hc-4);
    stroke: var(--hc-4);
}
.highcharts-color-5 {
    fill: var(--hc-5);
    stroke: var(--hc-5);
}
.highcharts-color-6 {
    fill: var(--hc-6);
    stroke: var(--hc-6);
}
.highcharts-color-7 {
    fill: #2b908f;
    stroke: #2b908f;
}
.highcharts-color-8 {
    fill: #f45b5b;
    stroke: #f45b5b;
}
.highcharts-color-9 {
    fill: #91e8e1;
    stroke: #91e8e1;
}
.highcharts-color-10 {
    fill: var(--brand-3);
    stroke: var(--brand-3);
}
.highcharts-color-11 {
    fill: var(--brand-2);
    stroke: var(--brand-2);
}
.highcharts-color-12 {
    fill: var(--brand-1);
    stroke: var(--brand-1);
}
.highcharts-area {
    fill-opacity: 0.75;
    stroke-width: 0;
}
.highcharts-markers {
    stroke-width: 1px;
    stroke: #ffffff;
}
.highcharts-a11y-markers-hidden .highcharts-point:not(.highcharts-point-hover):not(.highcharts-a11y-marker-visible),
.highcharts-a11y-marker-hidden {
    opacity: 0;
}
.highcharts-dense-data .highcharts-point {
    stroke-width: 0;
}
.highcharts-data-label {
    font-size: 0.9em;
    font-weight: bold;
}
.highcharts-data-label-box {
    fill: none;
    stroke-width: 0;
}
.highcharts-data-label text,
text.highcharts-data-label {
    fill: #333333;
}
.highcharts-data-label-connector {
    fill: none;
}
.highcharts-data-label-hidden {
    pointer-events: none;
}
.highcharts-halo {
    fill-opacity: 0.25;
    stroke-width: 0;
}
.highcharts-series:not(.highcharts-pie-series) .highcharts-point-select,
.highcharts-markers .highcharts-point-select {
    fill: #cccccc;
    stroke: #000000;
}
.highcharts-column-series .highcharts-point {
    transition: fill-opacity 250ms;
}
.highcharts-pie-series .highcharts-point {
    stroke-linejoin: round;
    stroke: #ffffff;
}
.highcharts-pie-series .highcharts-point-hover {
    fill-opacity: 0.75;
    transition: fill-opacity 50ms;
}
.highcharts-funnel-series .highcharts-point {
    stroke-linejoin: round;
    stroke: #ffffff;
}
.highcharts-funnel-series .highcharts-point-hover {
    fill-opacity: 0.75;
    transition: fill-opacity 50ms;
}
.highcharts-funnel-series .highcharts-point-select {
    fill: inherit;
    stroke: inherit;
}
.highcharts-pyramid-series .highcharts-point {
    stroke-linejoin: round;
    stroke: #ffffff;
}
.highcharts-pyramid-series .highcharts-point-hover {
    fill-opacity: 0.75;
    transition: fill-opacity 50ms;
}
.highcharts-pyramid-series .highcharts-point-select {
    fill: inherit;
    stroke: inherit;
}
.highcharts-solidgauge-series .highcharts-point {
    stroke-width: 0;
}
.highcharts-treemap-series .highcharts-point {
    stroke-width: 1px;
    stroke: #e6e6e6;
    transition: stroke 250ms, fill 250ms, fill-opacity 250ms;
}
.highcharts-treemap-series .highcharts-point-hover {
    stroke: #999999;
    transition: stroke 25ms, fill 25ms, fill-opacity 25ms;
}
.highcharts-treemap-series .highcharts-above-level {
    display: none;
}
.highcharts-treemap-series .highcharts-internal-node {
    fill: none;
}
.highcharts-treemap-series .highcharts-internal-node-interactive {
    fill-opacity: 0.15;
    cursor: pointer;
}
.highcharts-treemap-series .highcharts-internal-node-interactive:hover {
    fill-opacity: 0.75;
}
.highcharts-vector-series .highcharts-point {
    fill: none;
    stroke-width: 2px;
}
.highcharts-windbarb-series .highcharts-point {
    fill: none;
    stroke-width: 2px;
}
.highcharts-lollipop-stem {
    stroke: #000000;
}
.highcharts-focus-border {
    fill: none;
    stroke-width: 2px;
}
.highcharts-legend-item-hidden .highcharts-focus-border {
    fill: none !important;
}
/* Legend */
.highcharts-legend-box {
    fill: none;
    stroke-width: 0;
}
.highcharts-legend-item > text {
    fill: var(--c-header);
    font-size: 1em;
    cursor: pointer;
    stroke-width: 0;
}
.highcharts-legend-item:hover text {
    fill: #000000;
}
.highcharts-legend-item-hidden * {
    fill: #cccccc !important;
    stroke: #cccccc !important;
    transition: fill 250ms;
}
.highcharts-legend-nav-active {
    fill: #003399;
    cursor: pointer;
}
.highcharts-legend-nav-inactive {
    fill: #cccccc;
}
circle.highcharts-legend-nav-active,
circle.highcharts-legend-nav-inactive {
    /* tracker */
    fill: rgba(192, 192, 192, 0.0001);
}
.highcharts-legend-title-box {
    fill: none;
    stroke-width: 0;
}
/* Bubble legend */
.highcharts-bubble-legend-symbol {
    stroke-width: 2;
    fill-opacity: 0.5;
}
.highcharts-bubble-legend-connectors {
    stroke-width: 1;
}
.highcharts-bubble-legend-labels {
    fill: #333333;
}
/* Loading */
.highcharts-loading {
    position: absolute;
    background-color: #ffffff;
    opacity: 0.5;
    text-align: center;
    z-index: 10;
    transition: opacity 250ms;
}
.highcharts-loading-hidden {
    height: 0 !important;
    opacity: 0;
    overflow: hidden;
    transition: opacity 250ms, height 250ms step-end;
}
.highcharts-loading-inner {
    font-weight: bold;
    position: relative;
    top: 45%;
}
/* Plot bands and polar pane backgrounds */
.highcharts-plot-band,
.highcharts-pane {
    fill: #000000;
    fill-opacity: 0.05;
}
.highcharts-plot-line {
    fill: none;
    stroke: #999999;
    stroke-width: 1px;
}
/* Highcharts More and modules */
.highcharts-boxplot-box {
    fill: #ffffff;
}
.highcharts-boxplot-median {
    stroke-width: 2px;
}
.highcharts-bubble-series .highcharts-point {
    fill-opacity: 0.5;
}
.highcharts-errorbar-series .highcharts-point {
    stroke: #000000;
}
.highcharts-gauge-series .highcharts-data-label-box {
    stroke: #cccccc;
    stroke-width: 1px;
}
.highcharts-gauge-series .highcharts-dial {
    fill: #000000;
    stroke-width: 0;
}
.highcharts-polygon-series .highcharts-graph {
    fill: inherit;
    stroke-width: 0;
}
.highcharts-waterfall-series .highcharts-graph {
    stroke: #333333;
    stroke-dasharray: 1, 3;
}
.highcharts-sankey-series .highcharts-point {
    stroke-width: 0;
}
.highcharts-sankey-series .highcharts-link {
    transition: fill 250ms, fill-opacity 250ms;
    fill-opacity: 0.5;
}
.highcharts-sankey-series .highcharts-point-hover.highcharts-link {
    transition: fill 50ms, fill-opacity 50ms;
    fill-opacity: 1;
}
.highcharts-venn-series .highcharts-point {
    fill-opacity: 0.75;
    stroke: #cccccc;
    transition: stroke 250ms, fill-opacity 250ms;
}
.highcharts-venn-series .highcharts-point-hover {
    fill-opacity: 1;
    stroke: #cccccc;
}
/* Highstock */
.highcharts-navigator-mask-outside {
    fill-opacity: 0;
}
.highcharts-navigator-mask-inside {
    fill: #6685c2;
    /* navigator.maskFill option */
    fill-opacity: 0.25;
    cursor: ew-resize;
}
.highcharts-navigator-outline {
    stroke: #cccccc;
    fill: none;
}
.highcharts-navigator-handle {
    stroke: #cccccc;
    fill: #f2f2f2;
    cursor: ew-resize;
}
.highcharts-navigator-series {
    fill: #335cad;
    stroke: #335cad;
}
.highcharts-navigator-series .highcharts-graph {
    stroke-width: 1px;
}
.highcharts-navigator-series .highcharts-area {
    fill-opacity: 0.05;
}
.highcharts-navigator-xaxis .highcharts-axis-line {
    stroke-width: 0;
}
.highcharts-navigator-xaxis .highcharts-grid-line {
    stroke-width: 1px;
    stroke: #e6e6e6;
}
.highcharts-navigator-xaxis.highcharts-axis-labels {
    fill: #999999;
}
.highcharts-navigator-yaxis .highcharts-grid-line {
    stroke-width: 0;
}
.highcharts-scrollbar-thumb {
    fill: #cccccc;
    stroke: #cccccc;
    stroke-width: 1px;
}
.highcharts-scrollbar-button {
    fill: #e6e6e6;
    stroke: #cccccc;
    stroke-width: 1px;
}
.highcharts-scrollbar-arrow {
    fill: #666666;
}
.highcharts-scrollbar-rifles {
    stroke: #666666;
    stroke-width: 1px;
}
.highcharts-scrollbar-track {
    fill: #f2f2f2;
    stroke: #f2f2f2;
    stroke-width: 1px;
}
.highcharts-button {
    fill: #f7f7f7;
    stroke: #cccccc;
    cursor: default;
    stroke-width: 1px;
    transition: fill 250ms;
}
.highcharts-button text {
    fill: #333333;
}
.highcharts-button-hover {
    transition: fill 0ms;
    fill: #e6e6e6;
    stroke: #cccccc;
}
.highcharts-button-hover text {
    fill: #333333;
}
.highcharts-button-pressed {
    font-weight: bold;
    fill: #e6ebf5;
    stroke: #cccccc;
}
.highcharts-button-pressed text {
    fill: #333333;
    font-weight: bold;
}
.highcharts-button-disabled text {
    fill: #333333;
}
.highcharts-range-selector-buttons .highcharts-button {
    stroke-width: 0px;
}
.highcharts-range-label rect {
    fill: none;
}
.highcharts-range-label text {
    fill: #666666;
}
.highcharts-range-input rect {
    fill: none;
}
.highcharts-range-input text {
    fill: #333333;
}
.highcharts-range-input {
    stroke-width: 1px;
    stroke: #cccccc;
}
input.highcharts-range-selector {
    position: absolute;
    border: 0;
    width: 1px;
    /* Chrome needs a pixel to see it */
    height: 1px;
    padding: 0;
    text-align: center;
    left: -9em;
    /* #4798 */
}
.highcharts-crosshair-label text {
    fill: #ffffff;
    font-size: 1.1em;
}
.highcharts-crosshair-label .highcharts-label-box {
    fill: inherit;
}
.highcharts-candlestick-series .highcharts-point {
    stroke: #000000;
    stroke-width: 1px;
}
.highcharts-candlestick-series .highcharts-point-up {
    fill: #ffffff;
}
.highcharts-ohlc-series .highcharts-point-hover {
    stroke-width: 3px;
}
.highcharts-flags-series .highcharts-point .highcharts-label-box {
    stroke: #999999;
    fill: #ffffff;
    transition: fill 250ms;
}
.highcharts-flags-series .highcharts-point-hover .highcharts-label-box {
    stroke: #000000;
    fill: #ccd6eb;
}
.highcharts-flags-series .highcharts-point text {
    fill: #000000;
    font-size: 0.9em;
    font-weight: bold;
}
/* Highmaps */
.highcharts-map-series .highcharts-point {
    transition: fill 500ms, fill-opacity 500ms, stroke-width 250ms;
    stroke: #cccccc;
}
.highcharts-map-series .highcharts-point-hover {
    transition: fill 0ms, fill-opacity 0ms;
    fill-opacity: 0.5;
    stroke-width: 2px;
}
.highcharts-mapline-series .highcharts-point {
    fill: none;
}
.highcharts-heatmap-series .highcharts-point {
    stroke-width: 0;
}
.highcharts-map-navigation {
    font-size: 1.3em;
    font-weight: bold;
    text-align: center;
}
.highcharts-coloraxis {
    stroke-width: 0;
}
.highcharts-coloraxis-marker {
    fill: #999999;
}
.highcharts-null-point {
    fill: #f7f7f7;
}
/* 3d charts */
.highcharts-3d-frame {
    fill: transparent;
}
/* Exporting module */
.highcharts-contextbutton {
    fill: #ffffff;
    /* needed to capture hover */
    stroke: none;
    stroke-linecap: round;
}
.highcharts-contextbutton:hover {
    fill: #e6e6e6;
    stroke: #e6e6e6;
}
.highcharts-button-symbol {
    stroke: #666666;
    stroke-width: 3px;
}
.highcharts-menu {
    border: 1px solid #999999;
    background: #ffffff;
    padding: 5px 0;
    box-shadow: 3px 3px 10px #888;
}
.highcharts-menu-item {
    padding: 0.5em 1em;
    background: none;
    color: #333333;
    cursor: pointer;
    transition: background 250ms, color 250ms;
}
.highcharts-menu-item:hover {
    background: #335cad;
    color: #ffffff;
}
/* Drilldown module */
.highcharts-drilldown-point {
    cursor: pointer;
}
.highcharts-drilldown-data-label text,
text.highcharts-drilldown-data-label,
.highcharts-drilldown-axis-label {
    cursor: pointer;
    fill: #003399;
    font-weight: bold;
    text-decoration: underline;
}
/* No-data module */
.highcharts-no-data text {
    font-weight: bold;
    font-size: 12px;
    fill: #666666;
}
/* Drag-panes module */
.highcharts-axis-resizer {
    cursor: ns-resize;
    stroke: black;
    stroke-width: 2px;
}
/* Bullet type series */
.highcharts-bullet-target {
    stroke-width: 0;
}
/* Lineargauge type series */
.highcharts-lineargauge-target {
    stroke-width: 1px;
    stroke: #333333;
}
.highcharts-lineargauge-target-line {
    stroke-width: 1px;
    stroke: #333333;
}
/* Annotations module */
.highcharts-annotation-label-box {
    stroke-width: 1px;
    stroke: #000000;
    fill: #000000;
    fill-opacity: 0.75;
}
.highcharts-annotation-label text {
    fill: #e6e6e6;
}
/* Gantt */
.highcharts-treegrid-node-collapsed,
.highcharts-treegrid-node-expanded {
    cursor: pointer;
}
.highcharts-point-connecting-path {
    fill: none;
}
.highcharts-grid-axis .highcharts-tick {
    stroke-width: 1px;
}
.highcharts-grid-axis .highcharts-axis-line {
    stroke-width: 1px;
}
.dyno-chart {
    --hc-0: var(--brand-3);
    --hc-1: var(--brand-3);
    --hc-2: var(--brand-1);
    --hc-3: var(--brand-1);
    height: 30rem;
    margin-top: 2rem;
    margin-bottom: 2rem;
}
@media (max-width:767px) {
    .dyno-chart {
        height: 20rem;
        margin-top: 1.5rem;
        margin-bottom: 1.5rem;
    }
}
@media (max-width:767px) {
    .dyno-chart .highcharts-legend {
        font-size: 75%;
    }
}
.dyno-chart .highcharts-label span {
    line-height: 1;
}
@media (max-width:767px) {
    .dyno-chart .highcharts-label span {
        font-size: 75%;
        max-width: 60vw;
    }
}
.dyno-chart .highcharts-table {
    color: #666;
    text-align: right;
    margin-top: 0 !important;
}
.dyno-chart .highcharts-table td {
    padding: .25rem .5rem;
}
.dyno-chart .highcharts-table td.val {
    color: #000;
    font-weight: bold;
}
.dyno-chart .highcharts-table td.val_before {
    color: #36c6ff;
}
.dyno-chart .highcharts-table td.val_diff {
    color: #ae66cc;
}
.dyno-chart .highcharts-table td.val_after {
    color: #ff0000;
}
.dyno-chart .highcharts-axis-labels {
    fill: #666666;
    cursor: default;
}
@media (max-width:767px) {
    .dyno-chart .highcharts-axis-labels {
        font-size: 75%;
    }
}
.dyno-chart div.highcharts-tooltip > span {
    background-color: #fff;
    padding: 0.75rem;
}
.dyno-chart .highcharts-graph {
    fill: none;
    stroke-width: 3px;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.dyno-chart .highcharts-state-hover .highcharts-graph {
    stroke-width: 3;
}
.dyno-chart .highcharts-xaxis-grid .highcharts-grid-line {
    stroke-width: 0px;
}
.dyno-chart .highcharts-point {
    stroke-width: 1px;
}
.dyno-chart .highcharts-column-series rect.highcharts-point {
    stroke: #ffffff;
}
.dyno-chart .highcharts-tooltip {
    stroke: none;
}
.dyno-chart .highcharts-color-1 {
    stroke-dasharray: 1,5;
}
.dyno-chart .highcharts-color-3 {
    stroke-dasharray: 1,5;
}
.noUi-horizontal {
    --line-height: 4px;
    height: var(--line-height);
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
.noUi-horizontal:before {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    height: var(--line-height);
    background-color: rgba(0, 0, 0, 0.125);
    width: 100%;
    top: 50%;
    margin-top: -2px;
}
.noUi-base {
    height: 100%;
    margin: 0 1rem;
    position: relative;
    z-index: 1;
}
.noUi-connect {
    background-color: var(--brand-2);
    height: var(--line-height);
    border: 1px solid rgba(0, 0, 0, 0.125);
    box-shadow: none;
    position: absolute;
    right: 0;
    top: 50%;
    left: 0;
    bottom: 0;
    margin-top: -2px;
}
.noUi-origin {
    position: absolute;
    top: 50%;
    z-index: 5;
    transform: translate(0, -50%);
}
.noUi-origin:first-child {
    transform: translate(-100%, -50%);
}
.noUi-handle {
    width: 1em;
    height: 2em;
    display: flex;
    align-items: center;
    justify-content: center;
}
.noUi-handle:before {
    content: '';
    display: block;
    box-sizing: border-box;
    background-color: #000;
    border: 4px solid #fff;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
    width: 1em;
    height: 1em;
    margin: auto;
    border-radius: 50%;
    transition: box-shadow 0.25s ease;
}
.noUi-handle:hover {
    cursor: pointer;
}
.noUi-handle:hover:before {
    box-shadow: 0 0.25rem 0.25rem -0.125rem rgba(0, 0, 0, 0.25), 0 1px 0 0 rgba(0, 0, 0, 0.05);
}
.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}
.swiper-slide-zoomed {
    cursor: move;
}
/* Preloader */
:root {
    /*
    --swiper-preloader-color: var(--swiper-theme-color);
    */
}
.swiper-lazy-preloader {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    backface-visibility: hidden;
}
.swiper-lazy-preloader svg {
    display: block;
    width: 12rem;
}
.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
    100% {
        transform: rotate(360deg);
    }
}
.availability-list__item + .availability-list__item {
    margin-top: 0.5rem;
}
.availability_none {
    color: #ed2024;
}
.availability_critical {
    color: #ed2024;
}
.availability_low {
    color: #f8951d;
}
.availability_high {
    color: #15bb5f;
}
.badge {
    --badge-c: #000;
    color: var(--badge-c);
    z-index: 5;
}
.badge_hit {
    --badge-bgc: #2e80d6;
    --badge-c: #fff;
}
.badge_new {
    --badge-bgc: #89ff00;
}
.badge_action,
.badge_sale {
    --badge-bgc: #ffe900;
}
.badge_case {
    --badge-c: #fff;
    --badge-bgc: steelblue;
}
.badge_project {
    --badge-c: #fff;
    --badge-bgc: firebrick;
}
.badge:before {
    display: block;
    content: '';
    left: 0;
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: -1;
    transform: skew(-20deg);
    background-color: var(--badge-bgc);
}
.badge_article {
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.editor .badge_article .badge__container {
    width: var(--editor-content-width);
    margin-left: var(--editor-content-align-left);
    margin-right: var(--editor-content-align-right);
}
.btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 0 0 auto;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
    vertical-align: middle;
    touch-action: manipulation;
    cursor: pointer;
    user-select: none;
    text-decoration: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: 0;
    box-sizing: border-box;
    transition: opacity 0.25s ease;
    background: none;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}
.btn:hover,
.btn:focus,
.btn:active {
    outline: none;
}
.btn_disabled,
.btn_disabled:hover,
.btn_disabled:active,
.btn_disabled:focus,
.btn[disabled],
.btn:disabled {
    opacity: 0.5;
    pointer-events: none;
    filter: grayscale(50%);
}
.btn * {
    pointer-events: none;
}
.btn__grid {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}
.btn__mask {
    -webkit-transform: translateZ(0);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
}
.btn__bg {
    -webkit-transform: translateZ(0);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: opacity 0.25s ease, transform 0.25s ease, filter 0.25s ease;
}
.btn_hover .btn__bg,
.btn:hover .btn__bg {
    transform: scale(1.2) translateZ(0);
    filter: brightness(125%) saturate(100%);
}
.btn_focus .btn__bg,
.btn:focus .btn__bg {
    transform: scale(1.1) translateZ(0);
    filter: brightness(100%) saturate(125%);
}
.btn_active .btn__bg,
.btn:active .btn__bg {
    transform: scale(1.1) translateZ(0);
    filter: brightness(75%) saturate(125%);
}
.btn__title {
    transition: color 0.25s ease;
    z-index: 5;
}
.btn__notification {
    background-color: var(--c-primary);
    color: var(--c-header);
    border-radius: 50%;
    width: 0.5rem;
    height: 0.5rem;
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
}
.btn_block {
    width: 100%;
}
.btn_inline {
    display: inline-flex;
}
.btn_noflex {
    display: block !important;
}
.btn_rounded {
    border-radius: var(--border-radius);
}
.btn_circle {
    border-radius: 50% !important;
}
.btn_circle:before,
.btn_circle:after {
    border-radius: 50% !important;
}
.btn_circle,
.btn_square {
    padding: 0 !important;
    height: var(--btn-height);
    width: var(--btn-height);
}
.btn-group {
    display: flex;
}
.btn-group_center {
    justify-content: center;
}
.btn-group .btn:hover,
.btn-group .btn_active {
    z-index: 5;
}
.btn_default {
    border-radius: var(--btn-default-br);
    padding: var(--btn-default-padding);
    font-family: var(--btn-default-ff);
    font-weight: var(--btn-default-fw);
    letter-spacing: var(--btn-default-ls);
    text-transform: var(--btn-default-tt);
    --btn-color: var(--c-header);
    color: var(--btn-color);
    fill: var(--btn-color);
    --btn-border-width: var(--btn-default-bw);
    --btn-border-style: solid;
    --btn-border-color: var(--btn-default-bc);
    border: var(--btn-border-width) var(--btn-border-style) var(--btn-border-color);
}
.btn_default:hover,
.btn_default.btn_hover {
    --btn-color: var(--c-header);
}
.btn_default:focus,
.btn_default.btn_focus {
    --btn-color: var(--c-header);
}
.btn_default:active,
.btn_default.btn_active {
    --btn-color: var(--c-header);
}
.btn_default:hover,
.btn_default.btn_hover {
    --btn-border-color: var(--btn-default-bc_hover);
}
.btn_default:focus,
.btn_default.btn_focus {
    --btn-border-color: var(--btn-default-bc_focus);
}
.btn_default:active,
.btn_default.btn_active {
    --btn-border-color: var(--btn-default-bc_active);
}
.btn_dyno {
    --btn-bgc: #fff;
    --btn-bgc_hover: var(--brand-3);
    --btn-bgc_active: var(--brand-1);
    --btn-c: #000;
    --btn-trans-dur: .25s;
    transition: var(--btn-trans-dur) background-position ease, var(--btn-trans-dur) color ease;
    background-color: var(--btn-bgc);
    color: var(--btn-c);
    fill: var(--btn-c);
    height: 2.25em;
    font-size: 1rem;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
    overflow: hidden;
    background-size: calc(300% + var(--btn-height)*3);
    background-repeat: no-repeat;
    background-position: right top;
    background-image: linear-gradient(-70deg, var(--btn-bgc) 0%, var(--btn-bgc) 33.3%, var(--btn-bgc_hover) 33.3%, var(--btn-bgc_hover) 66.3%, var(--btn-bgc_active) 66.3%, var(--btn-bgc_active) 100%);
    padding: 0 1em;
}
.btn_dyno:hover {
    color: #fff;
    background-position: 50% 0;
    box-shadow: 0 3px 0.75rem -0.375rem rgba(0, 0, 0, 0.12), 0 1.125rem 1.125rem -0.75rem rgba(0, 0, 0, 0.25);
}
.btn_dyno:active,
.btn_dyno.btn_active {
    color: #fff;
    --btn-trans-dur: .065s;
    background-position: 0 0;
    box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.12) inset, 0 2px 2px 0 rgba(0, 0, 0, 0.12) inset;
}
.btn_option {
    border-radius: var(--btn-default-br);
    min-height: 2em;
    padding: 0 0.5em;
    font-family: var(--btn-ff);
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
    --btn-color: var(--btn-default-color);
    color: var(--btn-color);
    fill: var(--btn-color);
    background-color: var(--btn-default-bg);
    --btn-border-width: var(--btn-default-bw);
    --btn-border-style: solid;
    --btn-border-color: var(--btn-default-bc);
    border: var(--btn-border-width) var(--btn-border-style) var(--btn-border-color);
}
.btn_option:hover,
.btn_option.btn_hover {
    --btn-color: var(--c-link);
}
.btn_option:focus,
.btn_option.btn_focus {
    --btn-color: var(--c-link);
}
.btn_option:active,
.btn_option.btn_active {
    --btn-color: var(--btn-default-color_active);
}
.btn_option:hover,
.btn_option.btn_hover {
    background-color: transparent;
}
.btn_option:focus,
.btn_option.btn_focus {
    background-color: var(--btn-default-bg_focus);
}
.btn_option:active,
.btn_option.btn_active {
    background-color: var(--c-hl);
}
.btn_option:hover,
.btn_option.btn_hover {
    --btn-border-color: var(--c-link);
}
.btn_option:focus,
.btn_option.btn_focus {
    --btn-border-color: var(--c-link);
}
.btn_option:active,
.btn_option.btn_active {
    --btn-border-color: var(--btn-default-bc);
}
.btn_page-number {
    --btn-bgc: #fff;
    color: #000;
}
.btn_page-number:hover {
    --btn-bgc: var(--brand-3);
}
.btn_page-number:hover:before {
    box-shadow: 0 0.5rem 0.5rem -0.25rem rgba(0, 0, 0, 0.25), 0 1px 0 0 rgba(0, 0, 0, 0.05);
}
.btn_page-number.btn_active,
.btn_page-number:active {
    --btn-bgc: var(--brand-2);
    color: #fff;
}
.btn_page-number:before {
    display: block;
    content: '';
    height: 100%;
    width: 100%;
    position: absolute;
    transform: skew(-20deg);
    background-color: var(--btn-bgc);
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
}
.btn_paginator {
    color: var(--c-header);
    font-weight: normal;
}
.btn_paginator.btn_active {
    background-color: var(--c-primary);
    color: var(--c-header);
}
.btn_primary {
    --btn-bgc: var(--brand-1);
    --btn-bgc_hover: var(--brand-3);
    --btn-bgc_active: black;
    --btn-c: #fff;
    --btn-trans-dur: .25s;
    transition: var(--btn-trans-dur) background-position ease;
    background-color: var(--btn-bgc);
    color: var(--btn-c);
    fill: var(--btn-c);
    text-transform: uppercase;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
    overflow: hidden;
    background-size: calc(300% + var(--btn-height)*3);
    background-repeat: no-repeat;
    background-position: right top;
    background-image: linear-gradient(-70deg, var(--btn-bgc) 0%, var(--btn-bgc) 33.3%, var(--btn-bgc_hover) 33.3%, var(--btn-bgc_hover) 66.3%, var(--btn-bgc_active) 66.3%, var(--btn-bgc_active) 100%);
    padding: 0 1em;
}
.btn_primary:hover {
    background-position: 50% 0;
    box-shadow: 0 3px 0.75rem -0.375rem rgba(0, 0, 0, 0.12), 0 1.125rem 1.125rem -0.75rem rgba(0, 0, 0, 0.25);
}
.btn_primary:active {
    --btn-trans-dur: .065s;
    background-position: 0 0;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
}
.btn_auto {
    min-height: 3em;
}
.btn_xs {
    font-size: 0.6em;
    min-height: 3em;
}
.btn_s {
    font-size: 0.8em;
    min-height: 3em;
}
.btn_m {
    font-size: 1em;
    min-height: 3em;
}
.btn_l {
    font-size: 1.2em;
    min-height: 3em;
}
.btn_xl {
    font-size: 1.4em;
    min-height: 3em;
}


.btn_swiper {
    --btn-bgc: #fff;
    --btn-bgc_hover: #ff0000;
    --btn-bgc_active: #000000;
    --btn-c: #fff;
    --btn-trans-dur: .125s;
}



.btn_swiper:hover {
    --btn-bg: var(--brand-3);
    fill: #fff;
}
.btn_swiper:hover:before {
    box-shadow: 0 3px 0.75rem -0.375rem rgba(0, 0, 0, 0.12), 0 1.125rem 1.125rem -0.75rem rgba(0, 0, 0, 0.25);
    background-position: 50% 0;
}
.btn_swiper:active:before {
    --btn-trans-dur: .05s;
    background-position: 0 0;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
}
.btn_swiper:before {
    display: block;
    content: '';
    left: 50%;
    height: 100%;
    width: calc(100% + var(--btn-height)*0.364);
    position: absolute;
    transform: translateX(-50%) skew(-20deg);
    transition: var(--btn-trans-dur) background-position ease;
    background-size: 330%;
    background-position: 100% 0;
    background-image: linear-gradient(-90deg, var(--btn-bgc) 0%, var(--btn-bgc) 33%, var(--btn-bgc_hover) 33%, var(--btn-bgc_hover) 66%, var(--btn-bgc_active) 66%, var(--btn-bgc_active) 100%);
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
}
.btn_white {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
    border-radius: 2px;
    padding: 0 1.5em;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-weight: 400;
    letter-spacing: 0.025em;
    text-transform: uppercase;
    --btn-color: var(--c-header);
    color: var(--btn-color);
    fill: var(--btn-color);
    background-color: #fff;
}
.btn_white:hover,
.btn_white.btn_hover {
    --btn-color: var(--c-header);
}
.btn_white:focus,
.btn_white.btn_focus {
    --btn-color: var(--c-header);
}
.btn_white:active,
.btn_white.btn_active {
    --btn-color: var(--c-header);
}
.btn_white:hover,
.btn_white.btn_hover {
    background-color: #fff;
}
.btn_white:focus,
.btn_white.btn_focus {
    background-color: #fff;
}
.btn_white:active,
.btn_white.btn_active {
    background-color: #fff;
}
.btn_white .btn__count {
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
    background-color: var(--c-primary);
    border-radius: 50%;
    font-size: 0.75rem;
    width: 1rem;
    height: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
}
.browsers {
    padding: 2em 1em;
    background-color: #000;
    display: none;
    background-size: 100% auto;
    background-position: center top;
}
.html_browsers .browsers {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10000;
    overflow: auto;
}
.browsers__header {
    margin-bottom: 2rem;
}
.browsers__contacts {
    text-align: center;
    margin-top: 2rem;
}
.browsers__contacts li + li {
    margin-top: .5rem;
}
.browsers__contacts a {
    color: #fff;
    text-decoration: none;
}
.browsers__phone {
    font-size: 125%;
}
.browsers__body {
    background-color: #fff;
    width: 40rem;
    max-width: 100%;
    padding: 5%;
    border-radius: 3px;
    box-shadow: 0 0.5rem 0.5rem -0.25rem rgba(0, 0, 0, 0.25), 0 1px 0 0 rgba(0, 0, 0, 0.05);
    margin: auto;
}
.browsers table {
    width: 100%;
}
.browsers__img {
    display: block;
    width: 12rem;
    margin: auto;
    max-width: 60%;
}
.browsers__text {
    text-align: center;
    max-width: 800px;
    margin: auto;
}
.browsers__title {
    font-size: 150%;
    font-weight: bold;
    color: #000;
}
.browsers__item {
    display: inline-block;
    width: 33%;
    text-decoration: none;
    padding: 0 2%;
}
.browsers__item p {
    line-height: 1.25;
    margin-top: .5rem;
}
.crumbs {
    position: absolute;
    width: 100%;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
    z-index: 5;
    overflow: hidden;
    opacity: 0.5;
    transition: opacity 0.25s ease;
    font-size: 1rem;
}
.crumbs:hover {
    opacity: 1;
}
@media (max-width:767px) {
    .crumbs {
        display: none;
    }
}
.crumbs__content {
    display: flex;
    max-width: 1344px;
    margin-left: auto;
    margin-right: auto;
    font-size: 0.75em;
    color: #898989;
}
.editor .crumbs__content {
    width: var(--editor-content-width);
    margin-left: var(--editor-content-align-left);
    margin-right: var(--editor-content-align-right);
}
.crumbs__item {
    margin-right: 1rem;
}
.crumbs__item:after {
    content: "/";
    display: block;
    position: absolute;
    left: 100%;
    top: 50%;
    transform: translateY(-50%);
    width: 1.2rem;
    text-align: center;
}
.crumbs__link {
    transition: color 0.25s ease;
    color: var(--c-header);
    text-decoration: none;
}
.crumbs__link:hover {
    color: var(--c-link);
}
.dropdown__content {
    box-shadow: 0 0.5rem 0.5rem -0.25rem rgba(0, 0, 0, 0.25), 0 1px 0 0 rgba(0, 0, 0, 0.05);
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 75;
    max-width: 12rem;
    min-width: 100%;
    background-color: #fff;
}
.dropdown_open .dropdown__content {
    display: block;
}
.editor {
    --editor-factor: 1;
    --editor-content-align-left: auto;
    --editor-content-align-right: auto;
}
.editor_center {
    --editor-content-align-left: auto;
    --editor-content-align-right: auto;
    --editor-content-width: calc(var(--content-width)*var(--editor-factor));
}
.editor_left {
    --editor-content-align-left: auto;
    --editor-content-align-right: unset;
    --editor-content-width: calc(var(--content-width)*var(--editor-factor));
}
.editor_right {
    --editor-content-align-left: unset;
    --editor-content-align-right: auto;
    --editor-content-width: calc(var(--content-width)*var(--editor-factor));
}
.editor h1,
.editor h2,
.editor h3,
.editor h4,
.editor h5,
.editor h6,
.editor p,
.editor ol,
.editor ul,
.editor dl,
.editor hr,
.editor cite,
.editor blockquote,
.editor .table,
.editor__container {
    max-width: var(--editor-content-width);
    margin-left: var(--editor-content-align-left);
    margin-right: var(--editor-content-align-right);
}
.editor__products {
    margin-top: 2em;
    margin-bottom: 2em;
}
.editor h1:not(:first-child),
.editor h2:not(:first-child),
.editor h3:not(:first-child),
.editor h4:not(:first-child),
.editor h5:not(:first-child),
.editor h6:not(:first-child) {
    margin-top: 2em;
}
.editor h1:not(:last-child),
.editor h2:not(:last-child),
.editor h3:not(:last-child),
.editor h4:not(:last-child),
.editor h5:not(:last-child),
.editor h6:not(:last-child) {
    margin-bottom: 1.5em;
}
.editor figure:not(:first-child),
.editor .video-container:not(:first-child) {
    margin-top: var(--spacing_content_y);
}
.editor figure:not(:last-child),
.editor .video-container:not(:last-child) {
    margin-bottom: var(--spacing_content_y);
}
.editor * + p,
.editor * + ul,
.editor * + ol,
.editor * + dl,
.editor * + table,
.editor * + .box_default,
* + .editor__services {
    margin-top: 1.5em;
}
.editor ul:before,
.editor ol:before {
    content: '';
    display: block;
    position: relative;
    margin-top: -0.25em;
}
.editor ul:after,
.editor ol:after {
    content: '';
    display: block;
    position: relative;
    margin-bottom: -0.25em;
}
@media (min-width:1200px) {
    .editor__gallery {
        padding-bottom: 50%;
    }
}
@media (max-width:1199px) {
    .editor__gallery {
        padding-bottom: 66%;
    }
}
.editor__gallery .swiper {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.editor table:not([class]) {
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 0.875em;
    margin-left: auto;
    margin-right: auto;
}
.editor table:not([class]) th {
    font-weight: 400;
    color: var(--c-header);
    padding: 0.5em;
    border: 1px solid var(--border-color);
}
.editor table:not([class]) td {
    padding: 0.5em;
    border: 1px solid var(--border-color);
}
.editor p:empty {
    display: none;
}
.editor figure:not([class]) figcaption {
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
    max-width: var(--editor-content-width);
    margin: .5em auto 0;
    font-size: 0.875em;
    color: var(--c-text_muted);
    line-height: 1.25;
}
.editor figure img {
    margin: auto;
    display: block;
}
.editor .video-container {
    padding-bottom: 62%;
}
.editor .video-container iframe {
    position: absolute;
    width: 100% !important;
    height: 100% !important;
}
.editor .t_hl {
    background-image: linear-gradient(70deg, var(--brand-2), var(--brand-1));
    color: #fff;
    display: inline-block;
    padding: .25em .5em;
    margin-top: 0.5rem;
    box-shadow: 0 0.5rem 0.5rem -0.25rem rgba(0, 0, 0, 0.25), 0 1px 0 0 rgba(0, 0, 0, 0.05);
    z-index: -1;
}
.editor .swiper_products .swiper__pagination {
    max-width: var(--editor-content-width);
    margin-left: var(--editor-content-align-left);
    margin-right: var(--editor-content-align-right);
}
.editor .swiper_products .swiper__button_inside.swiper__button_next {
    right: var(--offset_content_x);
}
.editor .swiper_products .swiper__button_inside.swiper__button_prev {
    left: var(--offset_content_x);
}
.editor__anchor {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    margin-top: -5rem;
}
@media (min-width:1200px) {
    .editor_l {
        --editor-factor: 1.25;
        font-size: 1.125em;
    }
}
@media (min-width:1200px) {
    .editor_xl {
        --editor-factor: 1.25;
        font-size: 1.25em;
    }
}
.figure_split {
    position: relative;
}
.figure_split figcaption {
    display: inline-block;
    background-color: #fff;
    position: absolute;
    z-index: 5;
    top: 1rem;
    padding: 1rem 1rem;
    max-width: 50%;
}
.figure-grid_2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
}
a.filetype {
    text-decoration: none;
}
a.filetype:before {
    content: "";
    display: block;
    flex: 0 0 auto;
    margin-right: 0.75rem;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}
@media (min-width:768px) {
    a.filetype:before {
        width: 56px;
        height: 56px;
    }
}
@media (max-width:767px) {
    a.filetype:before {
        width: 3rem;
        height: 3rem;
    }
}
a.filetype[href$="csv"]:before,
a.filetype[href$="CSV"]:before {
    background-image: url("../images/csv.svg");
}
a.filetype[href$="doc"]:before,
a.filetype[href$="docx"]:before,
a.filetype[href$="DOC"]:before,
a.filetype[href$="DOCX"]:before {
    background-image: url("../images/doc.svg");
}
a.filetype[href$="jpg"]:before,
a.filetype[href$="jpeg"]:before,
a.filetype[href$="JPG"]:before,
a.filetype[href$="JPEG"]:before {
    background-image: url("../images/jpg.svg");
}
a.filetype[href$="pdf"]:before,
a.filetype[href$="PDF"]:before {
    background-image: url("../images/pdf.svg");
}
a.filetype[href$="png"]:before,
a.filetype[href$="PNG"]:before {
    background-image: url("../images/png.svg");
}
a.filetype[href$="ppt"]:before,
a.filetype[href$="pptx"]:before,
a.filetype[href$="PPT"]:before,
a.filetype[href$="PPTX"]:before {
    background-image: url("../images/ppt.svg");
}
a.filetype[href$="txt"]:before,
a.filetype[href$="TXT"]:before {
    background-image: url("../images/txt.svg");
}
a.filetype[href$="xls"]:before,
a.filetype[href$="xlsx"]:before,
a.filetype[href$="XLS"]:before,
a.filetype[href$="XLSX"]:before {
    background-image: url("../images/xls.svg");
}
a.filetype[href$="xml"]:before,
a.filetype[href$="XML"]:before {
    background-image: url("../images/xml.svg");
}
a.filetype[href$="zip"]:before,
a.filetype[href$="rar"]:before,
a.filetype[href$="7z"]:before,
a.filetype[href$="ZIP"]:before,
a.filetype[href$="RAR"]:before,
a.filetype[href$="7Z"]:before {
    background-image: url("../images/zip.svg");
}
.filetype_default {
    display: inline-flex;
    color: var(--c-link);
    max-width: 100%;
    overflow: hidden;
}
.filetype_default .filetype__body {
    align-self: center;
}
.filetype_default .filetype__size {
    color: #898989;
    font-size: 0.75em;
    margin-top: 0.25rem;
}
.filetype_default .filetype__title {
    line-height: 1.25;
}
.filetype_default .filetype__title::first-letter {
    text-transform: capitalize;
}
@media (min-width:768px) {
    .filetype_default .filetype__title {
        font-size: 0.875em;
    }
}
.icon {
    display: flex;
    align-content: center;
    align-items: center;
    flex: 0 0 auto;
}
.icon_inline {
    display: inline-flex;
    vertical-align: middle;
}
.icon_circle {
    border-radius: 50%;
}
.icon_circle:before {
    border-radius: 50%;
}
.icon svg {
    display: block;
    position: relative;
    transition: fill 0.25s ease;
    -webkit-transform: translateZ(0);
}
.icon-car-type {
    display: block;
    fill-rule: evenodd;
    clip-rule: evenodd;
    fill: var(--c-header);
    max-width: 4rem;
}
table .icon-car-type {
    margin: auto;
}
.icon_default {
    fill: var(--c-header);
}
.icon_positive,
.icon_success {
    background-color: #6dbe45;
    fill: #fff;
}
.icon_negative,
.icon_fail,
.icon_error {
    background-color: #ed2024;
    fill: #fff;
}
.icon_xxs svg {
    width: 12px;
    height: 12px;
}
.icon_xs svg {
    width: 16px;
    height: 16px;
}
.icon_s svg {
    width: 20px;
    height: 20px;
}
.icon_m svg {
    width: 24px;
    height: 24px;
}
.icon_l svg {
    width: 28px;
    height: 28px;
}
.icon_xl svg {
    width: 32px;
    height: 32px;
}
.icon_xxl svg {
    width: 36px;
    height: 36px;
}
.icon_x2 svg {
    width: 48px;
    height: 48px;
}
.icon_x3 svg {
    width: 72px;
    height: 72px;
}
.icon_x4 svg {
    width: 96px;
    height: 96px;
}
.icon_x5 svg {
    width: 120px;
    height: 120px;
}
.icon_16 svg {
    width: 16px;
    height: 16px;
}
.icon_24 svg {
    width: 24px;
    height: 24px;
}
.icon_32 svg {
    width: 32px;
    height: 32px;
}
.icon_48 svg {
    width: 48px;
    height: 48px;
}
.icon_toggle_y {
    position: absolute !important;
    left: 0;
    top: 0;
    transition: transform 0.25s ease;
}
.link {
    display: inline;
    cursor: pointer;
    text-decoration: none;
}
.link-area {
    text-decoration: none;
}
.link_default {
    transition: color 0.25s ease, border-bottom-color 0.25s ease;
    border-bottom: 1px solid var(--c-link);
    color: var(--c-link);
}
.link_grey {
    transition: color 0.25s ease, border-bottom-color 0.25s ease;
    color: #898989;
}
.link-area:hover .link_grey,
.link_grey:visited:hover,
.link_grey:hover {
    color: var(--c-link);
}
.link_muted {
    color: var(--c-text);
    border-bottom: 1px solid #ccc;
}
.link-area:hover .link_muted,
.link_muted:visited:hover,
.link_muted:hover {
    color: var(--c-link);
}
.link_secondary {
    transition: color 0.25s ease, border-bottom-color 0.25s ease;
    border-bottom: 1px solid transparent;
    color: var(--c-text);
}
.link-area:hover .link_secondary,
.link_secondary:visited:hover,
.link_secondary:hover {
    color: var(--c-link);
    border-bottom-color: var(--c-link);
}
.link_secondary:focus,
.link_secondary:active {
    color: var(--c-header);
    border-bottom-color: var(--c-header);
}
.link_text {
    transition: color 0.25s ease, border-bottom-color 0.25s ease;
    color: var(--c-text);
    text-decoration: underline;
}
.link-area:hover .link_text,
.link_text:visited:hover,
.link_text:hover {
    color: var(--c-link);
}
.link_title {
    transition: color 0.25s ease, border-bottom-color 0.25s ease;
    color: var(--c-header);
}
.link-area:hover .link_title,
.link_title:visited:hover,
.link_title:hover {
    color: var(--c-link);
}
.link_title:focus,
.link_title:active {
    color: var(--c-header);
}
._invert .link_title {
    color: #fff;
}
._invert .link-area:hover .link_title,
._invert .link_title:visited:hover,
._invert .link_title:hover {
    color: var(--c-primary);
}
._invert .link_title:focus,
._invert .link_title:active {
    color: #fff;
}
.list__var {
    color: var(--c-text_muted);
}
.list__val {
    color: var(--c-header);
}
.list__item_sb {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}
.list_default.list_xxs .list__item:not(:first-child) {
    margin-top: 0.25rem;
}
.list_default.list_xs .list__item:not(:first-child) {
    margin-top: 0.5rem;
}
.list_default.list_s .list__item:not(:first-child) {
    margin-top: 0.75rem;
}
.list_default.list_m .list__item:not(:first-child) {
    margin-top: 1rem;
}
.list_default.list_l .list__item:not(:first-child) {
    margin-top: 1.5rem;
}
.list_default.list_xl .list__item:not(:first-child) {
    margin-top: 2rem;
}
.list_features {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 1.5rem;
}
@media (max-width:767px) and (orientation: portrait) {
    .list_features {
        grid-template-columns: repeat(2, 1fr);
    }
}
.list_steps {
    counter-reset: section;
}
.list_steps .list__item {
    margin-top: var(--spacing_content_y);
    counter-increment: section;
}
.list_steps .list__marker {
    --size: 5rem;
    display: none;
}
.list_steps .list__marker::after {
    box-sizing: border-box;
    font-size: 200%;
    font-weight: 500;
    color: #fff;
    content: counters(section, ".");
    position: absolute;
    left: 0;
    top: 0;
    width: var(--size);
    height: var(--size);
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--brand-2);
}
.list_steps .list__description {
    --padding: 3rem;
    padding: var(--padding);
}
@media (max-width:767px) {
    .list_steps .list__description {
        --padding: 1rem;
    }
}
.list_underline .list__item + .list__item {
    border-top: 1px solid var(--border-color);
}
.list_underline.list_xxs .list__item {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}
.list_underline.list_xs .list__item {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
.list_underline.list_s .list__item {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}
.list_underline.list_m .list__item {
    padding-top: 1rem;
    padding-bottom: 1rem;
}
.list_underline.list_l .list__item {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}
.list_underline.list_xl .list__item {
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.notifications {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
}
.notification {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
    border-bottom: 1px solid var(--border-color);
}
.notification_success {
    background-color: #00e486;
}
.notification_info {
    background-color: #36c6ff;
}
.notification_warning {
    background-color: #ffc066;
}
.notification_error {
    background-color: #ff1e43;
}
.notification__content {
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
    padding-top: 1rem;
    padding-bottom: 1rem;
    cursor: pointer;
}
.notification__content:hover {
    background-color: rgba(0, 0, 0, 0.05);
}
@media (min-width:768px) {
    .notification__content {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}
.notification__text {
    color: #000;
    line-height: 1.5;
    flex: 1 1 auto;
    font-size: 0.875em;
}
.notification__controls {
    display: flex;
    flex: 0 0 auto;
}
@media (min-width:768px) {
    .notification__controls {
        margin-left: 1rem;
    }
}
@media (max-width:767px) {
    .notification__controls {
        margin-top: 1rem;
    }
}
.msg_default {
    padding: 1rem;
    border: 1px solid var(--border-color);
}
.msg_default .msg__content {
    font-size: 0.875em;
    line-height: 1.25;
}
.msg_default .msg__controls {
    display: grid;
    grid-auto-flow: column;
    grid-gap: 1rem;
    margin-top: 1rem;
}
.paginator {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.paginator__pages {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-left: 1rem;
    margin-right: 1rem;
}
@media (max-width:767px) {
    .paginator__pages {
        order: 0;
        margin: 0;
        width: 100%;
    }
}
@media (max-width:767px) {
    .paginator__arrow {
        order: 2;
        margin: 0.75rem;
        display: flex;
        justify-content: center;
        align-items: center;
    }
}
.price {
    line-height: 1;
}
.price_column {
    display: flex;
    flex-direction: column;
}
.price_inline {
    display: inline-flex;
}
.price_left {
    align-items: flex-start;
}
.price_right {
    align-items: flex-end;
}
.price_center {
    text-align: center;
    align-items: center;
}
.price_btn {
    height: 3em;
}
:root {
    --price-fw: 500;
}
.price_default {
    line-height: .75;
}
.price_default .price__val,
.price_default .price__new,
.price_default .price__currency {
    white-space: nowrap;
    color: var(--c-header);
    font-size: 100%;
    font-weight: 600;
}
.price_default .price__units {
    font-size: 1rem;
}
.price_default .price__old {
    white-space: nowrap;
    color: #898989;
    font-size: 100%;
    font-weight: 600;
}
.price_default .price__old:after {
    display: block;
    content: '';
    position: absolute;
    left: -5%;
    right: -5%;
    top: 50%;
    border-bottom: 0.1em solid red;
    margin-top: -0.05em;
}
.price_default .price__per-ct {
    white-space: nowrap;
    color: var(--c-gray);
}
.price_default .price__per-ct small {
    font-size: 50%;
}
.price_default.price_row .price__old {
    margin-right: .5em;
}
.price_xs {
    font-size: 0.66666667em;
}
.price_s {
    font-size: 0.83333333em;
}
.price_m {
    font-size: 1em;
}
.price_l {
    font-size: 1.16666667em;
}
.price_xl {
    font-size: 1.33333333em;
}
.price_xxl {
    font-size: 1.5em;
}
.price_x2 {
    font-size: 200%;
}
.price_x3 {
    font-size: 300%;
}
.scroll {
    overflow-x: auto;
    overflow-y: hidden;
}
.scroll-table {
    overflow-x: auto;
    overflow-y: hidden;
    display: grid;
    margin: var(--offset_content);
}
.scroll-table__scroll {
    overflow-x: auto;
    overflow-y: hidden;
}
.scroll-table__container {
    padding: var(--spacing_content);
}
.range__inputs {
    margin-top: 0.5rem;
}
.range__slider {
    height: 1rem;
}
.range__input {
    height: 1em;
}
.range__input_max input {
    text-align: right;
}
.range__input_min input {
    text-align: left;
}
.search {
    min-width: 3rem;
    height: 3rem;
    background-color: var(--c-bg_01);
    display: flex;
    align-items: center;
}
@media (min-width:768px) {
    .search {
        width: 25vw;
        max-width: 20rem;
    }
}
@media (max-width:767px) {
    .search_active {
        position: fixed;
        left: 3rem;
        right: 0;
        z-index: 10;
    }
}
.search__control {
    flex: 1 1 auto;
}
@media (max-width:767px) {
    .search__control {
        display: none;
    }
    .search_active .search__control {
        display: flex;
    }
}
.search__control input {
    outline: none !important;
}
@media (min-width:768px) {
    .search__control input {
        font-size: 0.875em !important;
        height: 1.8rem !important;
        border-radius: 0.9rem !important;
    }
}
@media (max-width:767px) {
    .search__control input {
        height: 2.4rem !important;
        border-radius: 1.2rem !important;
    }
}
.search__control input::-webkit-input-placeholder {
    font-weight: 300;
    letter-spacing: 0;
    opacity: 1;
}
.search__control input::-moz-placeholder {
    font-weight: 300;
    letter-spacing: 0;
    opacity: 1;
}
.search__control input:-ms-input-placeholder {
    font-weight: 300;
    letter-spacing: 0;
    opacity: 1;
}
.search__control input::placeholder {
    font-weight: 300;
    letter-spacing: 0;
    opacity: 1;
}
.search__submit {
    z-index: 10;
    width: 3rem;
    margin-left: -3rem;
    height: 100%;
}
@media (max-width:767px) {
    .search__submit {
        display: none;
    }
    .search_active .search__submit {
        display: flex;
    }
}
.search__toggle {
    width: 3rem;
    height: 100%;
}
@media (min-width:768px) {
    .search__toggle {
        display: none;
    }
}
@media (max-width:767px) {
    .search_active .search__toggle {
        display: none;
    }
}
.search__close {
    width: 3rem;
    height: 100%;
    display: none;
}
.search_active .search__close {
    display: flex;
}
.stock {
    display: flex;
    justify-content: space-between;
}
.stock + .stock {
    margin-top: 0.5rem;
}
.stock__title {
    flex: 0 0 auto;
}
.thumb_3-2 {
    padding-bottom: 66.66666667%;
}
.thumb__content,
.thumb > svg,
.thumb > img {
    display: block;
    object-fit: cover;
    position: absolute;
    width: 100%;
    height: 100%;
    font-size: 0;
}
.thumb_product {
    contain: strict;
    padding-bottom: 66.66666667%;
    background-color: #d9d9d9;
    overflow: hidden;
    fill: #fff;
}
@media (min-width:1200px) {
    .thumb_product svg,
    .thumb_product img {
        transition: transform 0.125s ease;
    }
    a:hover .thumb_product svg,
    a:hover .thumb_product img,
    a.thumb_product svg:hover,
    a.thumb_product img:hover {
        transform: scale(1.1);
    }
}
.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
}
.swiper__loader {
    position: absolute;
    z-index: 50;
    width: 100%;
    height: 100%;
    display: none;
    pointer-events: none;
    align-items: center;
    justify-content: center;
}
.swiper_loading .swiper__loader {
    display: flex;
}
.swiper__loader img,
.swiper__loader svg {
    display: block;
    width: 12rem;
}
.swiper__img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.swiper__caption {
    padding: 1rem;
    background-color: #fff;
}
.swiper__button {
    padding: 0;
    border: 0;
    background: none;
    font-size: 1em;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.125s ease;
    outline: none;
}
@media (max-width:1199px) {
    .swiper__button {
        display: none;
    }
}
.swiper__button.swiper__button_disabled {
    pointer-events: none;
    opacity: 0.5;
}
.swiper__button:not(.swiper__button_disabled) {
    cursor: pointer;
}
.swiper__button_inside {
    position: absolute;
    z-index: 10;
    top: 50%;
}
.swiper__button_inside.swiper__button_prev {
    left: 0;
    transform: translate(0, -50%);
}
.swiper__button_inside.swiper__button_prev.swiper__button_disabled {
    transform: translate(-150%, -50%);
}
.swiper__button_inside.swiper__button_next {
    right: 0;
    transform: translate(0, -50%);
}
.swiper__button_inside.swiper__button_next.swiper__button_disabled {
    transform: translate(150%, -50%);
}
.swiper__button_on-edge {
    top: 20%;
    bottom: 20%;
    position: absolute;
}
.swiper__button_on-edge .btn:before {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    background-color: #fff;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    transition: transform 0.125s ease;
}
.swiper__button_on-edge:hover .btn:before {
    transform: scale(1.25);
}
.swiper__button_on-edge.swiper__button_prev {
    left: -1.5em;
}
.swiper__button_on-edge.swiper__button_prev.swiper__button_disabled {
    opacity: 0;
    transform: translateX(-1.5em);
}
.swiper__button_on-edge.swiper__button_next {
    right: -1.5em;
}
.swiper__button_on-edge.swiper__button_next.swiper__button_disabled {
    opacity: 0;
    transform: translateX(1.5em);
}
.swiper_loading .swiper__pagination,
.swiper_loading .swiper__button,
.swiper_loading .swiper__expand,
.swiper_loading .swiper__container {
    opacity: 0 !important;
}
.swiper_content {
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
    margin-left: var(--offset_content_x);
    margin-right: var(--offset_content_x);
}
.swiper_sections {
    height: 100%;
    overflow: hidden;
}
.swiper_sections .swiper__slide,
.swiper_sections .swiper__container,
.swiper_sections .swiper__wrapper {
    height: 100%;
}
.swiper_sections .swiper__slide {
    max-height: 100%;
}
.swiper_box .swiper__container {
    overflow: hidden;
}
.swiper_box .swiper__button_prev {
    transform: translatex(-50%);
}
.swiper_box .swiper__button_next {
    transform: translatex(50%);
}
.swiper_box .swiper__button_prev.swiper__button_disabled {
    transform: translatex(-50%) scale(0.25);
}
.swiper_box .swiper__button_next.swiper__button_disabled {
    transform: translatex(50%) scale(0.25);
}
.swiper_wide .swiper__button_prev {
    left: -5vw;
}
.swiper_wide .swiper__button_next {
    right: -5vw;
}
@media (orientation: landscape) {
    .swiper_80vh,
    .swiper_80vh .swiper__img {
        height: 80vh;
        min-height: 24rem;
        max-height: 40rem;
    }
}
@media (orientation: portrait) {
    .swiper_80vh,
    .swiper_80vh .swiper__img {
        height: 60vw;
    }
}
@media (orientation: landscape) {
    .swiper_70vh,
    .swiper_70vh .swiper__img {
        height: 70vh;
        min-height: 22rem;
        max-height: 35rem;
    }
}
@media (orientation: portrait) {
    .swiper_70vh,
    .swiper_70vh .swiper__img {
        height: 60vw;
    }
}
@media (orientation: landscape) {
    .swiper_60vh,
    .swiper_60vh .swiper__img {
        height: 60vh;
        min-height: 20rem;
        max-height: 30rem;
    }
}
@media (orientation: portrait) {
    .swiper_60vh,
    .swiper_60vh .swiper__img {
        height: 60vw;
    }
}
.js-swiper img:not(:first-of-type) {
    display: none;
}
.swiper__expand {
    position: absolute;
    cursor: pointer;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
}
.swiper__expand .btn__icon_zoom {
    display: block;
}
.swiper__expand .btn__icon_close {
    display: none;
}
.swiper__container {
    overflow: visible;
    transition: opacity 0.25s ease;
}
.swiper_h .swiper__wrapper,
.swiper_v .swiper__wrapper {
    display: flex;
    justify-content: flex-start;
}
.swiper_h .swiper__wrapper {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.swiper_v .swiper__wrapper {
    flex-direction: column;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.swiper__slide {
    max-width: 100%;
    background-position: center center;
    background-size: cover;
    flex: 0 0 auto;
}
.swiper_v .swiper__slide {
    width: 100%;
}
.swiper__slide_video {
    width: 100%;
    align-self: stretch;
    display: flex;
    align-items: center;
    justify-content: center;
}
.swiper__slide_video iframe {
    width: 100%;
    height: 100%;
    max-height: 100vw;
    margin: auto;
}
.swiper__slide_video:after,
.swiper__slide_video:before {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    width: 35%;
    top: 3rem;
    bottom: 5rem;
    z-index: 50;
}
.swiper__slide_video:before {
    left: 0;
}
.swiper__slide_video:after {
    right: 0;
}
.swiper__pagination {
    display: flex;
    flex-wrap: wrap;
}
.swiper__pagination:empty {
    display: none;
}
.swiper__pagination_vbottom {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
}
.swiper_h .swiper__pagination_center {
    justify-content: center;
}
.swiper_v .swiper__pagination {
    flex-direction: column;
    flex-wrap: nowrap;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0.5rem;
}
.swiper__pagination-bullet {
    flex: 1 1 auto;
    cursor: pointer;
    position: relative;
    background-color: transparent;
    opacity: 1;
    height: 2em;
    transition: opacity 0.25s ease, transform 0.25s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}
.swiper__pagination-bullet + .swiper__pagination-bullet {
    margin-left: 4px;
}
.swiper__pagination-bullet:after {
    content: '';
    display: block;
    width: 100%;
    height: 2px;
    transition: background-color 0.125s ease, transform 0.125s ease;
    position: relative;
    transform: skew(-20deg);
    background-color: rgba(128, 128, 128, 0.5);
}
.swiper__pagination-bullet:hover:after {
    background-color: #ffffff;
}
.swiper__pagination-bullet_active,
.swiper__pagination-bullet_active:hover {
    background: transparent;
}
.swiper__pagination-bullet_active:after,
.swiper__pagination-bullet_active:hover:after {
    background-color: #ff0000;
}
.swiper__pagination-bullet:only-child {
    display: none;
}
.swiper__pagination_inside {
    position: absolute;
    z-index: 15;
    bottom: 0;
}
.swiper_banners .swiper__mask {
    overflow: hidden;
}
.swiper_banners .swiper__pagination_inside {
    left: var(--spacing_content_x);
    right: var(--spacing_content_x);
}
.html_swiper {
    overflow: hidden;
}
.html_swiper body {
    overflow: hidden;
}
.html_swiper .page {
    position: static;
    z-index: 150;
}
.swiper_fullscreen {
    position: fixed !important;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3000;
    background-color: #000;
}
.swiper_fullscreen .swiper__pagination_inside {
    left: 3em;
    right: 3em;
}
.swiper_fullscreen .swiper__wrapper {
    height: 100vh;
    align-items: center;
}
.swiper_fullscreen .swiper__img {
    height: auto !important;
    min-height: 0 !important;
    max-height: 100vh !important;
}
.swiper_fullscreen .swiper__button {
    top: 20%;
    bottom: 20%;
    width: 20%;
}
.swiper_fullscreen .swiper__button_prev {
    left: 0;
    justify-content: flex-start;
    transform: translate(0, 0);
}
.swiper_fullscreen .swiper__button_prev.swiper__button_disabled {
    opacity: 0;
    transform: translate(-100%, 0);
}
.swiper_fullscreen .swiper__button_next {
    right: 0;
    justify-content: flex-end;
    transform: translate(0, 0);
}
.swiper_fullscreen .swiper__button_next.swiper__button_disabled {
    opacity: 0;
    transform: translate(100%, 0);
}
.swiper_fullscreen .swiper__slide:last-of-type {
    min-width: 0 !important;
}
.swiper_fullscreen .swiper__slide img {
    height: auto !important;
}
.swiper_fullscreen .swiper__slide:hover {
    cursor: zoom-out;
}
.swiper_fullscreen .swiper__slide_video {
    align-self: stretch;
    display: flex;
    align-items: center;
    justify-content: center;
}
.swiper_fullscreen .swiper__slide_video:after,
.swiper_fullscreen .swiper__slide_video:before {
    width: 35%;
    height: 100%;
    max-height: 60vw;
    top: 50%;
    transform: translateY(-50%);
    z-index: 50;
}
.swiper_fullscreen .swiper__expand {
    width: 5rem;
    height: 5rem;
    top: 0;
    right: 0;
    opacity: 1;
}
.swiper_fullscreen .btn__icon_zoom {
    display: none;
}
.swiper_fullscreen .btn__icon_close {
    display: block;
}
.swiper_gallery {
    height: 100%;
}
.swiper_gallery .swiper__mask {
    overflow: hidden;
    height: 100%;
}
.swiper_gallery .swiper__container,
.swiper_gallery .swiper__wrapper {
    height: 100%;
}
.swiper_gallery .swiper__expand {
    width: 5rem;
    height: 5rem;
    top: 0;
    right: 0;
    opacity: 1;
}
.swiper_gallery .swiper__slide {
    height: 100%;
    overflow: hidden;
}
.swiper_gallery .swiper__slide img {
    height: 100%;
    object-fit: cover;
}
.swiper_gallery .swiper__slide:hover {
    cursor: zoom-in;
}
.swiper_gallery .swiper__pagination_inside {
    left: 3em;
    right: 3em;
}
.swiper_gallery .swiper__caption {
    width: var(--editor-content-width);
    max-width: 100%;
    margin: auto;
    box-sizing: content-box;
}
.swiper_gallery2 .swiper__mask {
    overflow: hidden;
}
.swiper_gallery2 .swiper__expand {
    display: none;
}
.swiper_gallery2 .swiper__slide {
    overflow: hidden;
}
.swiper_gallery2 .swiper__slide img {
    object-fit: cover;
}
.swiper_gallery2 .swiper__slide:hover {
    cursor: zoom-in;
}
.swiper_gallery2 .swiper__pagination_inside {
    left: 3em;
    right: 3em;
}
.swiper_gallery2 .swiper__caption {
    width: var(--editor-content-width);
    max-width: 100%;
    margin: auto;
    box-sizing: content-box;
}
.swiper_h100 {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
}
.swiper_h100 .swiper__mask,
.swiper_h100 .swiper__container,
.swiper_h100 .swiper__wrapper,
.swiper_h100 .swiper__slide {
    height: 100%;
}
.swiper_main {
    height: 100%;
}
.swiper_main .swiper__mask {
    overflow: hidden;
    height: 100%;
}
.swiper_main .swiper__container,
.swiper_main .swiper__wrapper {
    height: 100%;
}
.swiper_main .swiper__slide {
    height: 100%;
    overflow: hidden;
}
.swiper_main .swiper__slide img {
    height: 100%;
    object-fit: cover;
}
.swiper_products .swiper__container {
    margin: 0 -1.5%;
}
.swiper_products .swiper__wrapper {
    display: flex;
}
.swiper_products .swiper__slide {
    padding: 0 1.5%;
}
@media (max-width:767px) and (orientation: portrait) {
    .swiper_products .swiper__slide {
        width: 50%;
    }
}
@media (max-width:767px) and (orientation: landscape) {
    .swiper_products .swiper__slide {
        width: 33.33333333%;
    }
}
@media (min-width:768px) and (max-width:1199px) {
    .swiper_products .swiper__slide {
        width: 33.33333333%;
    }
}
@media (min-width:1200px) {
    .swiper_products .swiper__slide {
        width: 25%;
    }
}
.swiper_products .swiper__slide:first-child {
    margin-left: auto;
}
.swiper_products .swiper__slide:last-child {
    margin-right: auto;
}
.swiper_products .swiper__button_inside {
    top: 25%;
}
.swiper_products .swiper__button_prev.swiper__button_disabled {
    opacity: 0;
}
.swiper_products .swiper__button_next.swiper__button_disabled {
    opacity: 0;
}
.swiper_projects {
    --slide-gap: 1.5%;
}
.swiper_projects .swiper__container {
    margin-left: calc(var(--slide-gap)*(-1));
    margin-right: calc(var(--slide-gap)*(-1));
}
.swiper_projects .swiper__wrapper > * {
    width: 33.33333333%;
}
@media (min-width:768px) and (max-width:1199px) and (orientation: portrait) {
    .swiper_projects .swiper__wrapper > * {
        width: 50%;
    }
}
@media (max-width:767px) and (orientation: portrait) {
    .swiper_projects .swiper__wrapper > * {
        width: 100%;
    }
}
@media (max-width:767px) and (orientation: landscape) {
    .swiper_projects .swiper__wrapper > * {
        width: 50%;
    }
}
.swiper_projects .swiper__slide {
    padding: 0 var(--slide-gap);
}
.status {
    color: #fff;
    display: inline-flex;
    padding: 0 0.5em;
    height: 2em;
    align-items: center;
    white-space: nowrap;
    font-weight: normal;
}
.status_new {
    background-color: #FFC107;
}
.status_done {
    background-color: #0eb15d;
}
.status_progress {
    background-color: #03A9F4;
}
.status_client {
    background-color: #3b83ce;
}
.status_expert {
    background-color: #8548af;
}
.status_inspection {
    color: var(--c-header);
    background-color: #ddd;
}
.status_waiting {
    background-color: #FF5722;
}
.status_paused {
    background-color: #673AB7;
}
.status_decline {
    background-color: #ed2024;
}
.status_cancelled {
    background-color: #ed2024;
}
.status_closed {
    background-color: #000;
}
.status_recommend {
    background-color: #0eb15d;
}
.status_reject {
    background-color: #ed2024;
}
.status_payment_none {
    color: #2196F3;
    border: 1px solid #2196F3;
}
.status_payment_prepaid {
    color: #00BFA5;
    border: 1px solid #00BFA5;
}
.status_payment_full {
    color: #00C853;
    border: 1px solid #00C853;
}
.status_xs {
    font-size: .6rem;
}
.status_s {
    font-size: .7rem;
}
.status_m {
    font-size: .8rem;
}
.status_l {
    font-size: .9rem;
}
.status_xl {
    font-size: 1rem;
}
.dropdown-menu {
    font-size: 0.875em;
}
.dropdown-menu__item + .dropdown-menu__item {
    border-top: var(--border-width) solid var(--border-color);
}
.dropdown-menu__item a {
    display: block;
    padding: 0.75rem;
    text-decoration: none;
    white-space: nowrap;
}
.editor figure img {
    background-color: rgba(0, 0, 0, 0.25);
}
.editor ol,
.editor ul {
    line-height: 1.5;
    padding-left: 1.5em;
}
.editor ol {
    list-style: decimal;
}
.editor ul {
    list-style: disc;
}
.editor li + li {
    margin-top: 0.75rem;
}
.editor li ul,
.editor li ol {
    margin-top: 0.75rem;
}
.table_a {
    --padding-h: 2rem;
    --padding-v: 1rem;
    --bg: white;
    background-color: var(--bg);
    border-collapse: collapse;
    border-spacing: 0;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    width: 100%;
    position: relative;
    z-index: 1;
}
._invert .table_a {
    --bg: black;
}
@media (max-width:767px) {
    .table_a {
        --padding-h: 1rem;
    }
}
.table_a td,
.table_a th {
    padding: var(--padding-v);
    font-weight: normal;
}
.table_a .table__header {
    padding: 0.75em var(--padding-v);
    color: var(--c-header);
    font-weight: 600;
    background-color: var(--c-bg_03);
    background-clip: border-box;
}
.table_a .table__title {
    color: var(--c-header);
}
.table_a tr:not(:last-child) td,
.table_a tr:not(:last-child) th {
    border-bottom: 1px solid var(--border-color);
}
.table_a td:not(:last-child),
.table_a th:not(:last-child) {
    border-right: 1px solid var(--border-color);
}
.table_a tbody th {
    text-align: left;
}
.table_a tbody tr:hover td,
.table_a tbody tr:hover th {
    background-color: var(--brand-2);
    color: #fff;
}
.table_a thead tr:last-child td,
.table_a thead tr:last-child th {
    border-bottom: 3px solid var(--brand-2);
}
.table_dyno {
    border-collapse: collapse;
    border-spacing: 0;
    margin-left: auto;
    margin-right: auto;
    max-width: var(--editor-content-width);
}
@media (max-width:767px) {
    .table_dyno {
        width: 100%;
    }
}
.table_dyno th {
    font-weight: 400;
    text-align: inherit;
    color: var(--c-text_muted);
    padding: .5rem 1rem;
    border: 1px solid var(--border-color);
}
.table_dyno th:not(:first-child) {
    text-align: right;
}
.table_dyno tbody {
    font-size: 1.125em;
}
.table_dyno td {
    padding: .5rem 1rem;
    border: 1px solid var(--border-color);
}
.table_dyno td:not(:first-child) {
    text-align: right;
}
.table_prices {
    --padding-h: 2rem;
    --padding-v: 1rem;
    background-color: #fff;
    border-collapse: collapse;
    border-spacing: 0;
    margin-left: auto;
    margin-right: auto;
    max-width: calc(var(--editor-content-width) + var(--padding-h) * 2);
    width: 100%;
    box-shadow: 0 3px 1rem -0.5rem rgba(0, 0, 0, 0.12), 0 1.5rem 1.5rem -1rem rgba(0, 0, 0, 0.25);
}
@media (max-width:767px) {
    .table_prices {
        --padding-h: 1rem;
    }
}
.table_prices thead td,
.table_prices thead th {
    padding: calc(var(--padding-v) * 1.5) var(--padding-h);
}
.table_prices th {
    font-weight: 400;
    text-align: inherit;
    color: var(--c-text_muted);
}
.table_prices th:not(:first-child) {
    text-align: right;
}
.table_prices td:last-child {
    white-space: nowrap;
    text-align: right;
}
.table_prices tbody td {
    padding: var(--padding-v) var(--padding-h);
    border-top: 1px solid var(--border-color);
}
.table_prices tbody td:not(:first-child) {
    text-align: right;
    color: var(--c-header);
}
.table_prices tbody tr:hover {
    background-color: var(--c-hl_l);
}
.table_prices tfoot {
    color: var(--c-header);
    font-weight: bold;
}
.table_prices tfoot tr {
    border-top: 3px solid var(--brand-1);
}
.table_prices tfoot td {
    padding: calc(var(--padding-v) * 1.5) var(--padding-h);
}
.table_models {
    --padding-h: 1rem;
    --padding-v: 1rem;
    background-color: #fff;
    border-collapse: collapse;
    border-spacing: 0;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    width: 100%;
    position: relative;
    z-index: 1;
    box-shadow: 0 3px 1rem -0.5rem rgba(0, 0, 0, 0.12), 0 1.5rem 1.5rem -1rem rgba(0, 0, 0, 0.25);
}
@media (max-width:767px) {
    .table_models {
        --padding-h: 1rem;
    }
}
.table_models th {
    font-weight: 400;
    text-align: left;
}
.table_models td,
.table_models th {
    padding: var(--padding-v);
    min-width: 6rem;
    position: relative;
}
.table_models thead {
    white-space: nowrap;
    z-index: 1;
}
.table_models thead td:not(:last-child),
.table_models thead th:not(:last-child) {
    border-right: 1px solid var(--border-color);
}
.table_models tbody {
    z-index: 1;
}
.table_models tbody td,
.table_models tbody th {
    border-top: 1px solid var(--border-color);
}
.table_models tbody td:not(:last-child),
.table_models tbody th:not(:last-child) {
    border-right: 1px solid var(--border-color);
}
.check {
    display: flex;
    position: relative;
}
.check:hover {
    cursor: pointer;
}
.check_vmiddle {
    align-items: center;
}
.check input,
.switch input {
    position: absolute;
    height: auto;
    opacity: 0;
    z-index: -1;
    margin: 0;
    padding: 0;
    top: 0;
    left: 0;
}
.check_checkout-option .check__icon {
    position: absolute;
    right: 100%;
}
.check_checkout-option .check__price {
    flex: 0 0 auto;
    white-space: nowrap;
    margin-left: 1.5rem;
}
.check_default {
    align-items: center;
}
.check_default input[type="checkbox"] ~ .check__icon:after {
    border-radius: 2px;
}
.check_default input[type="radio"] ~ .check__icon {
    border-radius: 50%;
}
.check_default input[type="radio"] ~ .check__icon:before,
.check_default input[type="radio"] ~ .check__icon:after {
    border-radius: 50%;
}
.check_default input:checked ~ .check__icon:before,
.check_default input:checked ~ .check__thumb:before {
    opacity: 1;
}
.check_default input:checked ~ .check__thumb > * {
    opacity: 0.5;
}
.check_default .check__icon {
    display: block;
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    margin-right: 0.5rem;
}
.check_default .check__content {
    flex: 1 1 auto;
    display: block;
}
.check_default .check__title {
    flex: 1 1 auto;
    display: block;
}
.check_default .check__title:before {
    content: '';
    display: block;
    margin-top: -0.125em;
}
.check_default .check__title:after {
    content: '';
    display: block;
    margin-bottom: -0.125em;
}
.check_default .check__description {
    font-size: 0.75em;
    margin-top: 0.25rem;
    color: #898989;
}
.check_default .check__icon:after {
    content: '';
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.25);
}
.check_default .check__icon:before,
.check_default .check__thumb:before {
    content: "";
    display: block;
    z-index: 5;
    position: absolute;
    transition: opacity 0.25s ease;
    opacity: 0;
    background-color: #000;
}
.check_default .check__icon:before {
    width: 50%;
    height: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.check_default .check__title {
    transition: color 0.25s ease;
}
.check_default:hover .check__title {
    color: var(--c-link);
}
.check_default input:focus ~ .check__title {
    color: var(--c-link);
}
.check_default input:focus ~ .check__icon:after {
    border-color: var(--c-link);
}
.check_default input:checked ~ .check__title {
    color: var(--c-header);
}
.control {
    z-index: 5;
}
.control input,
.control textarea,
.control select {
    font-size: 1em;
    text-transform: none;
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 0;
    width: 100%;
    background-clip: padding-box;
    background: none;
    transition: border-color 0.25s ease, background-color 0.25s ease, color 0.25s ease, opacity 0.25s ease;
    -webkit-appearance: none;
    -moz-appearance: none;
    outline: none;
}
.control input:disabled,
.control textarea:disabled,
.control select:disabled {
    opacity: 0.5;
    pointer-events: none;
}
.control input::-ms-clear,
.control textarea::-ms-clear,
.control select::-ms-clear {
    display: none;
    width: 0;
    height: 0;
}
.control input {
    height: 3rem;
}
.control select {
    height: 3rem;
    padding-right: 3rem;
}
.control select::-ms-expand {
    display: none;
}
.control select[multiple] {
    height: auto;
    min-height: 3rem;
}
.control option {
    background-color: #fff;
    color: var(--c-header);
}
.control_select:after {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    top: 0;
    right: 0;
    width: 3rem;
    height: 100%;
    z-index: 10;
    pointer-events: none;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="none" viewBox="0 0 24 24"><path d="M12 7.5q-.20527344.0017578-.35.15l-7.5 7.5q-.1482422.14472656-.15.35.0017578.20527344.15.35.14472656.1482422.35.15.20527344-.0017578.35-.15L12 8.7l7.15 7.15q.14472656.1482422.35.15.20527344-.0017578.35-.15.1482422-.14472656.15-.35-.0017578-.20527344-.15-.35l-7.5-7.5q-.14472656-.1482422-.35-.15z"/></svg>');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 24px 24px;
    transform: rotate(180deg);
    transition: transform 0.25s ease;
}
.control__icon {
    position: absolute;
    top: 0;
    right: 0;
    width: 3rem;
    height: 3rem;
    display: flex;
    align-self: center;
    justify-content: center;
    pointer-events: none;
}
.control_center input,
.control_center textarea,
.control_center select {
    text-align: center;
}
.control_default > input {
    background-color: #fff;
    padding: 0 0.75rem;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-size: 100%;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}
.control_default > select {
    background-color: #fff;
    padding: 0 3rem 0 0.75rem;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-size: 100%;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}
.control_default > textarea {
    background-color: #fff;
    padding: 0.75rem;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-size: 100%;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}
.control_default > input,
.control_default > select,
.control_default > textarea {
    color: #000;
    border: 1px solid rgba(0, 0, 0, 0.25);
}
.control_default > input:hover,
.control_default > select:hover,
.control_default > textarea:hover {
    color: #000;
}
.control_default > input:focus,
.control_default > select:focus,
.control_default > textarea:focus {
    color: #000;
}
.control_default > input:hover,
.control_default > select:hover,
.control_default > textarea:hover {
    border-color: rgba(0, 0, 0, 0.5);
}
.control_default > input:focus,
.control_default > select:focus,
.control_default > textarea:focus {
    border-color: var(--c-link);
}
.control_num input {
    font-size: 112.5%;
}
.control_primary:hover > input,
.control_primary:hover > select,
.control_primary:hover > textarea {
    box-shadow: 0 3px 0.75rem -0.375rem rgba(0, 0, 0, 0.12), 0 1.125rem 1.125rem -0.75rem rgba(0, 0, 0, 0.25);
}
.control_primary > input,
.control_primary > select,
.control_primary > textarea {
    background-color: #fff;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
}
.control_primary > input:active,
.control_primary > select:active,
.control_primary > textarea:active,
.control_primary > input:focus,
.control_primary > select:focus,
.control_primary > textarea:focus {
    box-shadow: 0 3px 0.75rem -0.375rem rgba(0, 0, 0, 0.12), 0 1.125rem 1.125rem -0.75rem rgba(0, 0, 0, 0.25);
}
.control_search > input {
    border-radius: 1.5rem;
    padding: 0 1em;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-size: 100%;
    font-weight: 300;
    letter-spacing: 0;
    text-transform: none;
    color: var(--c-header);
    border: 1px solid var(--c-border);
}
.control_search > input:hover {
    color: var(--c-header);
}
.control_search > input:focus {
    color: var(--c-header);
}
.control_search > input:hover {
    border-color: var(--c-link);
}
.control_search > input:focus {
    border-color: var(--c-primary);
}
.control_xxs {
    font-size: 0.625em;
}
.control_xxs input,
.control_xxs select {
    height: 1.2rem;
}
.control_xs {
    font-size: 0.75em;
}
.control_xs input,
.control_xs select {
    height: 1.8rem;
}
.control_s {
    font-size: 0.875em;
}
.control_s input,
.control_s select {
    height: 2.4rem;
}
.control_m input,
.control_m select {
    height: 3rem;
}
.control_l {
    font-size: 1.125em;
}
.control_l input,
.control_l select {
    height: 3.6rem;
}
.control_xl {
    font-size: 1.25em;
}
.control_xl input,
.control_xl select {
    height: 4.2rem;
}
.control_xxl {
    font-size: 1.5em;
}
.control_xxl input,
.control_xxl select {
    height: 4.8rem;
}
.control_stepper input {
    text-align: center;
}
.control_stepper .control__step {
    cursor: pointer;
    position: absolute;
    z-index: 5;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    height: 100%;
    fill: var(--c-link);
    display: flex;
    align-items: center;
    justify-content: center;
}
.control_stepper .control__step_disabled {
    opacity: 0.5;
}
.control_stepper .control__step_down {
    left: 0;
    top: 0;
}
.control_stepper .control__step_up {
    right: 0;
    top: 0;
}
.control_stepper .control__step:hover {
    fill: var(--brand-2);
}
.form_default {
    max-width: 384px;
}
.form_default .form__item + .form__item {
    margin-top: 1.5rem;
}
.form-group_default .form-group__header {
    margin-bottom: 1rem;
}
.label_center {
    text-align: center;
}
.label_default {
    display: block;
    color: #898989;
    margin-bottom: 0.25rem;
}
.label_float {
    position: absolute;
    z-index: 10;
    pointer-events: none;
    left: 0.75rem;
    right: 0.75rem;
    height: 100%;
    display: flex;
    align-items: center;
    transition: transform 0.25s ease, opacity 0.25s ease;
    transform-origin: 0% 0%;
}
.field_focus .label_float,
.field_filled .label_float {
    transform: translate(0, -10%) scale(0.75);
    opacity: 0.5;
}
.label_float.label_center {
    justify-content: center;
    transform-origin: 50% 0;
}
.label_float ~ .control input,
.label_float ~ .control textarea,
.label_float ~ .control select {
    padding-top: 0.5em;
}
.label_xs {
    font-size: 0.6em;
}
.label_s {
    font-size: 0.8em;
}
.label_m {
    font-size: 1em;
}
.label_l {
    font-size: 1.2em;
}
.label_xl {
    font-size: 1.4em;
}
.form-grid_default {
    margin-top: -2rem;
    margin-bottom: -2rem;
}
.form-grid_default .form-grid__item {
    border-top: var(--border-width) solid var(--border-color);
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.form-grid_default .form-grid__item:first-of-type {
    border: 0;
}
.fieldset_range {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 1rem;
}
.fieldset_list {
    display: grid;
}
.fieldset_list_s {
    grid-gap: 0.75rem;
}
.fieldset_list_m {
    grid-gap: 1rem;
}
.fieldset_list_l {
    grid-gap: 1.5rem;
}
@media (min-width:768px) {
    .fieldset_callback-h {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 2rem;
    }
}
@media (max-width:767px) {
    .fieldset_callback-h .fieldset__item + .fieldset__item {
        margin-top: 1rem;
    }
}
.fieldset_callback .fieldset__item + .fieldset__item {
    margin-top: 0.75rem;
}
.fieldset_car {
    display: grid;
    min-width: 0;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 1rem;
}
.fieldset_executors {
    display: grid;
    min-width: 0;
    grid-gap: 1rem;
}
@media (min-width:960px) {
    .fieldset_executors {
        grid-template-columns: 1fr 1fr 1fr;
    }
}
.fieldset_filter .fieldset__item + .fieldset__item {
    margin-top: 1rem;
}
.fieldset_grid3 {
    display: grid;
    min-width: 0;
    grid-gap: 1rem;
}
@media (min-width:960px) {
    .fieldset_grid3 {
        grid-template-columns: repeat(3, 1fr);
    }
}
.fieldset_login .fieldset__item + .fieldset__item {
    margin-top: 1rem;
}
.product-detail-layout_one {
    display: grid;
    grid-column-gap: 3rem;
}
@media (min-width:960px) {
    .product-detail-layout_one {
        grid-template-columns: 62fr 38fr;
        grid-row-gap: 4rem;
    }
}
@media (max-width:959px) {
    .product-detail-layout_one {
        grid-auto-flow: row;
        grid-row-gap: 3rem;
    }
}
.product-detail-layout_one .product-detail-layout__gallery {
    align-self: start;
}
.product-detail-layout_one .product-detail-layout__header {
    display: grid;
    grid-auto-flow: row;
}
@media (min-width:960px) {
    .product-detail-layout_one .product-detail-layout__header {
        grid-gap: 2rem;
    }
}
@media (max-width:959px) {
    .product-detail-layout_one .product-detail-layout__header {
        grid-gap: 1.5rem;
    }
}
.product-detail-layout_one .product-detail-layout__main {
    display: grid;
    grid-auto-flow: row;
    align-items: start;
    grid-gap: 3rem;
}
@media (max-width:959px) {
    .product-detail-layout_one .product-detail-layout__main {
        order: 4;
    }
}
.product-detail-layout_one .product-detail-layout__side {
    display: grid;
    grid-auto-flow: row;
    grid-gap: 2rem;
    align-items: start;
    align-content: start;
}
.product-detail-layout_two {
    display: grid;
    grid-gap: 3rem;
}
@media (min-width:960px) {
    .product-detail-layout_two {
        grid-template-columns: 62fr 38fr;
    }
}
@media (max-width:959px) {
    .product-detail-layout_two {
        grid-auto-flow: row;
    }
}
.product-detail-layout_two .product-detail-layout__main {
    display: grid;
    grid-auto-flow: row;
    align-items: start;
    grid-gap: 3rem;
}
@media (max-width:959px) {
    .product-detail-layout_two .product-detail-layout__main {
        order: 4;
    }
}
.product-detail-layout_two .product-detail-layout__side {
    margin-top: -4rem;
    display: grid;
    grid-auto-flow: row;
    grid-gap: 2rem;
    align-items: start;
    align-content: start;
}
.product-detail-layout_two .product-detail-layout__side .ttttt {
    padding-top: 4rem;
}
.auth__login,
.auth__logout {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 2rem;
    padding-right: 2rem;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 100%;
}
a.auth__login,
a.auth__logout {
    text-decoration: none;
}
a.auth__login:hover,
a.auth__logout:hover {
    text-decoration: underline;
}
.auth__title {
    white-space: nowrap;
    overflow: hidden;
    margin-right: 1rem;
}
.auth__title > * {
    width: 100%;
}
a.auth__title {
    display: block;
    text-decoration: none;
}
a.auth__title:hover {
    text-decoration: underline;
}
.auth__icon {
    margin-top: -0.5rem;
    margin-bottom: -0.5rem;
}
.banner {
    display: block;
    overflow: hidden;
    text-decoration: none;
    height: 100%;
    width: 100%;
    background-color: #fff;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}
@media (max-width:767px) and (orientation: portrait) {
    .banner {
        background-size: contain;
        background-position: bottom center;
    }
}
.banner__underline {
    border-bottom-style: solid;
    border-bottom-width: 4px;
}
@media (max-width:767px) and (orientation: portrait) {
    .banner__underline {
        border-bottom-width: 2px;
    }
}
.banner__title {
    line-height: 1.5;
    font-weight: 600;
    max-width: 30ch;
}
.banner__img {
    width: 100%;
}
.banner__controls {
    font-size: 1rem;
}
.banner__content {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 5;
    text-decoration: none;
}
.banner__price {
    margin-top: auto;
}
.banner__price .price__new {
    color: var(--c-primary);
}
.banner_xl .banner__content {
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
    padding-top: 3rem;
    padding-bottom: 3rem;
}
@media (max-width:767px) and (orientation: portrait) {
    .banner_xl .banner__content {
        font-size: 3vw;
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
}
.banner_s .banner__content {
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
    padding-top: 10%;
    padding-bottom: 10%;
}
@media (max-width:767px) {
    .banner_s .banner__title {
        font-size: 1rem;
    }
}
.banner_s .banner__text {
    margin-top: 1rem;
    font-size: 0.75em;
    width: 75%;
    line-height: 1.25;
}
.banner_2-1 {
    padding-top: 50%;
}
.brand-header {
    height: 50vmin;
    min-height: 12rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-size: cover;
    background-position: center center;
}
.brand-header_2:before {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    opacity: 0.5;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.brand-header_2._invert {
    background-color: #000;
}
.brand-header_2._invert:before {
    background-color: #000;
}
.brand-header__image {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.brand-header__logo {
    width: var(--editor-content-width);
    max-width: 100%;
    margin: auto;
    mix-blend-mode: multiply;
}
.brand-header__title {
    font-weight: bold;
    letter-spacing: .05em;
}
@media (min-width:768px) {
    .brand-header__title {
        font-size: 300%;
    }
}
.brand-line {
    background-color: var(--brand-2);
    height: 2px;
    flex: 1 1 auto;
    margin-left: 0.5rem;
    margin-right: 0.5rem;
}
.brand-line_ap_l {
    right: 100%;
    position: absolute;
    width: var(--spacing_content_x);
}
.brand-line_ap_r {
    left: 100%;
    position: absolute;
    width: var(--spacing_content_x);
}
.brand-header-mobile {
    display: none;
    height: 30px;
    opacity: 0.25;
    background-image: linear-gradient(to bottom, var(--brand-1), var(--brand-1) 20%, transparent 20%, transparent 40%, var(--brand-2) 40%, var(--brand-2) 60%, transparent 60%, transparent 80%, var(--brand-3) 80%);
}
.brtest {
    margin: 3rem;
}
.btn_test:before {
    display: block;
    content: '';
    left: 50%;
    height: 100%;
    width: calc(100% + var(--btn-height)*0.364);
    position: absolute;
    z-index: -1;
    transform: translateX(-50%) skew(-20deg);
    background-color: var(--brand-3);
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
}
.callback__form {
    display: none;
}
.callback__form_hidden {
    opacity: 0;
}
.callback__msg {
    display: none;
    position: absolute;
    z-index: 5;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
}
.car-brands {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
}
.car-brands img {
    display: block;
    width: 16%;
    align-self: center;
}
@media (max-width:767px) and (orientation: portrait) {
    .car-brands img {
        width: 25%;
    }
}
.car-models {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 2rem;
}
@media (max-width:767px) {
    .car-models {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 0.75rem;
    }
}
.car-models__thumb {
    mix-blend-mode: multiply;
    transform: translate3d(0, 0, 0);
}
.chart_default {
    height: 16rem;
}
.catalog__header {
    max-width: 36rem;
}
.catalog__description {
    margin-top: 1.5rem;
}
@media (max-width:767px) {
    .catalog__description {
        display: none;
    }
}
.catalog__sub-nav {
    margin-top: 1.5rem;
}
.catalog__controls {
    display: flex;
    align-items: center;
    margin-top: calc(var(--spacing_content_y)/2*(-1));
    margin-bottom: calc(var(--spacing_content_y)/2);
}
.catalog__count {
    margin-right: auto;
    font-size: 0.875em;
}
.catalog__btn-filter {
    margin-left: 0.75rem;
}
@media (min-width:1728px) {
    .catalog__btn-filter {
        display: none;
    }
}
.catalog__sort {
    margin-left: 0.75rem;
}
@media (max-width:767px) {
    .catalog__btn-sort,
    .catalog__btn-filter {
        width: 3em;
        padding: 0;
    }
}
.catalog__btn-sort .btn__title,
.catalog__btn-filter .btn__title {
    margin-left: 0.25rem;
}
@media (max-width:767px) {
    .catalog__btn-sort .btn__title,
    .catalog__btn-filter .btn__title {
        display: none;
    }
}
@media (min-width:768px) {
    .catalog__btn-sort .btn__icon,
    .catalog__btn-filter .btn__icon {
        margin-left: -0.5rem;
    }
}
@media (max-width:767px) {
    .checkout__btn-submit {
        margin-top: 1.5rem;
    }
}
.checkout .wa-form .wa-field:not(.wa-field-address-shipping) .wa-name {
    display: none;
}
.contacts {
    text-align: center;
}
.contacts a {
    display: flex;
    text-decoration: none;
    justify-content: center;
    color: #fff;
}
.contacts__phone {
    font-size: 1.125em;
}
.contacts__instagram {
    align-items: center;
    font-size: 0.875em;
    margin-top: 0.5rem;
}
.filter__item + .filter__item {
    margin-top: 2rem;
}
.gallery {
    padding-bottom: 67%;
}
.gallery .swiper {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.home__logo {
    background-color: #000;
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
    padding-top: 1rem;
    padding-bottom: 1rem;
}
.home__logo img {
    width: 40%;
}
.home__nav ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 0.75rem;
}
.home__nav ul a {
    color: #fff;
}
.home__banner {
    padding-top: 50%;
}
@media (max-width:767px) and (orientation: portrait) {
    .home__banner {
        padding-top: 65%;
    }
}
.nav {
    --padding: 2rem;
    --logo-h: 35px;
    width: var(--left-bar-width);
    display: grid;
    grid-auto-flow: row;
    grid-auto-rows: auto;
    grid-template-rows: max-content;
    grid-template-columns: 100%;
    min-height: 100vh;
    align-content: start;
}
@media (max-width:767px) {
    .nav {
        font-size: 1.2rem;
    }
}
.nav__item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 1rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    background-size: 100% auto;
    background-position: right bottom;
    background-repeat: no-repeat;
    background-clip: padding-box;
    transition: ease 0.25s background-color;
}
.nav__item_logo {
    padding: 0;
    border: none;
}
.nav__item:hover {
    background-color: rgba(0, 0, 0, 0.6);
}
.nav__contacts {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 2rem;
}
.nav__contacts a {
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: -1rem -0.75rem;
    fill: #fff;
}
.nav__contacts a:hover {
    fill: var(--brand-1);
}
.nav__contacts svg {
    transition: 0.25s ease fill;
    display: block;
    height: 20px;
    margin: auto;
}
.nav__logo {
    display: block;
    margin: 3rem var(--padding);
    height: var(--logo-h);
}
.nav__logo svg {
    height: 100%;
    display: block;
    margin: auto;
}
.nav__link {
    text-decoration: none;
    display: block;
    background-size: contain;
    background-position: right bottom;
    background-repeat: no-repeat;
    letter-spacing: 0.1em;
    padding: 1rem var(--padding);
    color: #fff;
    transition: 0.25s ease color;
}
.nav__link:hover {
    color: #ff0000;
}
.nav__item_open .nav__link {
    padding: 2.5rem 2.5rem 1rem;
    height: auto;
    min-height: auto;
}
.nav__title {
    font-weight: 600;
    font-size: 110%;
    text-transform: uppercase;
}
.pricing-table-scroll {
    overflow: auto;
    margin-left: var(--offset_content_x);
    margin-right: var(--offset_content_x);
}
.pricing-table-box {
    display: inline-block;
    padding: 0 var(--spacing_content_x);
}
.pricing-table {
    border-collapse: collapse;
    border-spacing: 0;
    background-color: #fff;
}
.pricing-table th,
.pricing-table td {
    min-width: 10em;
    font-weight: 400;
    padding: 1em;
    border: 1px solid #ddd;
}
.pricing-table thead th {
    padding: 2em 1em;
}
.pricing-table tbody th {
    text-align: left;
}
.pricing-table tbody td {
    text-align: center;
    vertical-align: middle;
}
.services {
    display: grid;
    max-width: var(--editor-content-width);
    margin: auto;
    grid-template-columns: 100%;
    grid-gap: 1em;
    text-decoration: none;
    color: #333333;
}
.services__item {
    display: grid;
    grid-template-columns: 4fr 6fr;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
}
.services__body {
    padding: 1em;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.services__title {
    font-size: 1.125em;
    font-weight: 500;
}
.services__price {
    text-align: right;
    display: flex;
    justify-content: right;
}
.top-menu {
    display: flex;
    align-items: center;
    justify-content: center;
}
@media (max-width:767px) {
    .top-menu__icon {
        width: 3rem;
    }
}
.top-menu__icon svg {
    margin-left: auto;
    margin-right: auto;
}
.top-menu__title {
    font-size: 0.875em;
    margin-left: 0.5rem;
    white-space: nowrap;
}
@media (max-width:767px) {
    .top-menu__title {
        display: none;
    }
}
.top-menu__count {
    position: absolute;
    right: -0.5rem;
    top: -0.5rem;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background-color: #ffe47f;
    font-weight: 400;
    font-size: .6rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media (max-width:767px) {
    .top-menu__count {
        right: .5rem;
    }
}
.top-menu__item {
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--c-header);
    text-decoration: none;
    cursor: pointer;
}
.top-menu__item_mobile {
    width: 3rem;
}
@media (min-width:768px) and (max-width:1199px) {
    .top-menu__item_mobile {
        margin-left: -1rem;
    }
}
@media (min-width:1200px) {
    .top-menu__item_mobile {
        display: none;
    }
}
.top-menu__item_search {
    margin-right: auto;
}
@media (min-width:1200px) {
    .top-menu__item_login,
    .top-menu__item_orders,
    .top-menu__item_compare,
    .top-menu__item_cart {
        margin-left: 3rem;
    }
}
@media (min-width:768px) and (max-width:1199px) {
    .top-menu__item_login,
    .top-menu__item_orders,
    .top-menu__item_compare,
    .top-menu__item_cart {
        margin-left: 1.5rem;
    }
}
@media (min-width:768px) {
    .top-menu__item_inst {
        display: none;
    }
}
.top-menu__item_logo {
    margin: auto;
}
@media (min-width:1200px) {
    .top-menu__item_logo {
        display: none;
    }
}
.top-menu__item_logo img {
    display: block;
    height: 20px;
}
.top-menu__price {
    font-weight: bold;
    white-space: nowrap;
}
@media (min-width:768px) {
    .top-menu__price:not(:empty) {
        margin-left: 0.5rem;
    }
}
@media (max-width:767px) {
    .top-menu__price:not(:empty) {
        margin-right: 0.75rem;
    }
}
.form-auth {
    max-width: 24rem;
    width: 100%;
    background-color: #fff;
    margin-left: auto;
    margin-right: auto;
    box-shadow: 0 0.5rem 0.5rem -0.25rem rgba(0, 0, 0, 0.25), 0 1px 0 0 rgba(0, 0, 0, 0.05);
}
@media (min-width:768px) {
    .form-auth {
        padding: 3rem;
    }
}
@media (max-width:767px) {
    .form-auth {
        padding: 2rem;
    }
}
.form-auth h1,
.form-auth h2 {
    margin-bottom: 2rem;
    text-align: center;
}
.form-auth * + .wa-field {
    margin-top: 1.5rem;
}
.form-auth .wa-name {
    margin-bottom: 0.5rem;
    font-size: 0.875em;
}
.form-auth .wa-submit input {
    margin-bottom: 1rem;
}
.form-auth .wa-field-address .wa-name {
    padding-top: 1px;
    padding-bottom: 1px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-weight: 600;
    line-height: 1.25;
    color: var(--c-header);
    font-size: var(--fs_h5);
}
.form-auth .wa-field-address .wa-name:before {
    content: '';
    display: block;
    margin-top: -0.3125em;
}
.form-auth .wa-field-address .wa-name:after {
    content: '';
    display: block;
    margin-bottom: -0.3125em;
}
.form-auth.form-auth_login .wa-submit {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.form-auth.form-auth_login .wa-submit a {
    font-size: 0.875em;
    display: block;
    color: var(--c-link);
}
.form-auth input[type="checkbox"] {
    width: 1rem;
    height: 1rem;
    margin: 0;
    margin-right: 0.5rem;
}
.form-auth .wa-login-forgotpassword-url {
    display: inline-block;
    margin-top: 0.75rem;
}
.form-auth .wa-login-url,
.form-auth .wa-forgotpassword-button,
.form-auth .wa-signup-url {
    margin-top: 0.75rem;
}
.wa-form span.field {
    display: block;
}
.wa-form span.field > span {
    font-size: 0.875em;
    margin-bottom: 0.5rem;
    display: block;
}
.wa-form span.field + span.field {
    margin-top: 0.75rem;
}
.wa-form p {
    line-height: 1;
}
.wa-form p:before,
.wa-form p:after {
    display: none;
}
.is-hidden {
    display: none !important;
}
.profile-form-wrapper .wa-field-password .wa-name {
    display: none;
}
.profile-form-wrapper .wa-field-password .general-button {
    display: inline;
    cursor: pointer;
    text-decoration: none;
    transition: color 0.25s ease, border-bottom-color 0.25s ease;
    border-bottom: 1px solid var(--c-link);
    color: var(--c-link);
}
.wa-error-msg {
    margin-top: 0.5rem;
    font-size: 0.875em;
    display: inline-block;
    font-style: normal;
    color: #ed2024;
}
.wa-buttons-wrapper {
    margin-top: 1rem;
}
.wa-submit input[type="submit"],
.wa-value input[type="submit"],
.wa-buttons-wrapper input[type="submit"],
.wa-submit input[type="button"],
.wa-value input[type="button"],
.wa-buttons-wrapper input[type="button"] {
    position: relative;
    display: block;
    flex: 0 0 auto;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
    vertical-align: middle;
    touch-action: manipulation;
    cursor: pointer;
    user-select: none;
    text-decoration: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: 0;
    box-sizing: border-box;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    --btn-bgc: var(--brand-1);
    --btn-bgc_hover: var(--brand-3);
    --btn-bgc_active: var(--brand-2);
    --btn-c: #fff;
    --btn-trans-dur: .25s;
    height: 3em;
    width: 100%;
    font-size: 1em;
    transition: var(--btn-trans-dur) background-position ease;
    background-color: var(--btn-bgc);
    color: var(--btn-c);
    text-transform: uppercase;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
    overflow: hidden;
    background-size: calc(300% + var(--btn-height)*2);
    background-repeat: no-repeat;
    background-position: 100% 0;
    background-image: linear-gradient(-70deg, var(--btn-bgc) 0%, var(--btn-bgc) 33%, var(--btn-bgc_hover) 33%, var(--btn-bgc_hover) 66%, var(--btn-bgc_active) 66%, var(--btn-bgc_active) 100%);
    padding: 0 1em;
}
.wa-submit input[type="submit"]:hover,
.wa-value input[type="submit"]:hover,
.wa-buttons-wrapper input[type="submit"]:hover,
.wa-submit input[type="button"]:hover,
.wa-value input[type="button"]:hover,
.wa-buttons-wrapper input[type="button"]:hover {
    background-position: 50% 0;
    box-shadow: 0 3px 0.75rem -0.375rem rgba(0, 0, 0, 0.12), 0 1.125rem 1.125rem -0.75rem rgba(0, 0, 0, 0.25);
}
.wa-submit input[type="submit"]:active,
.wa-value input[type="submit"]:active,
.wa-buttons-wrapper input[type="submit"]:active,
.wa-submit input[type="button"]:active,
.wa-value input[type="button"]:active,
.wa-buttons-wrapper input[type="button"]:active {
    --btn-trans-dur: .065s;
    background-position: 0 0;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
}
.wa-value input.wa-error,
.wa-value input.error,
.wa-value textarea.wa-error,
.wa-value textarea.error,
.wa-value select.wa-error,
.wa-value select.error {
    border-color: #ed2024 !important;
}
.wa-value em.errormsg,
.wa-value em.error {
    color: #ed2024;
    font-size: 0.875em;
    margin-top: 0.25rem;
    font-style: normal;
    display: block;
}
.wa-value input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="file"]) {
    height: 3rem;
    width: 100%;
    padding: 0 0.75rem;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-size: 100%;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}
.wa-value select {
    height: 3rem;
    width: 100%;
    padding: 0 0.75rem;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-size: 100%;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}
.wa-value textarea {
    padding: 0.75rem;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-size: 100%;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}
.wa-value input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="file"]),
.wa-value select,
.wa-value textarea {
    transition: border-color 0.25s ease;
    color: var(--c-header);
    border: 1px solid rgba(0, 0, 0, 0.25);
}
.wa-value input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="file"]):hover,
.wa-value select:hover,
.wa-value textarea:hover {
    color: var(--c-header);
}
.wa-value input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="file"]):focus,
.wa-value select:focus,
.wa-value textarea:focus {
    color: var(--c-header);
}
.wa-value input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="file"]):hover,
.wa-value select:hover,
.wa-value textarea:hover {
    border-color: rgba(0, 0, 0, 0.5);
}
.wa-value input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="file"]):focus,
.wa-value select:focus,
.wa-value textarea:focus {
    border-color: var(--c-link);
}
.wa-subscribe-form .wa-fill {
    width: 100% !important;
}
.how-it-works__grid {
    display: grid;
}
@media (min-width:768px) {
    .how-it-works__grid {
        grid-column-gap: 4rem;
        grid-template-columns: 1fr 1fr;
        grid-template-areas: "header slider" "nav slider";
    }
}
@media (max-width:767px) {
    .how-it-works__grid {
        grid-template-columns: 1fr;
        grid-template-areas: "header" "slider" "nav";
    }
}
.how-it-works__header {
    grid-area: header;
    align-self: end;
}
@media (max-width:767px) {
    .how-it-works__header {
        text-align: center;
    }
}
.how-it-works__nav {
    grid-area: nav;
}
.how-it-works__slider {
    grid-area: slider;
    overflow: hidden;
}
.how-it-works__slider h4 {
    text-align: center;
    margin-bottom: 1rem;
}
@media (min-width:768px) {
    .how-it-works__slider h4 {
        display: none;
    }
}
.how-it-works .swiper__slide {
    background-color: var(--c-bg);
}
.mp {
    --mp-logo-h: 40px;
    --mp-ph: 5vw;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
@media (max-width:1439px) {
    .mp {
        --mp-logo-h: 35px;
    }
}
.mp__slider {
    height: 100%;
}
@media (min-width:768px) and (max-width:1199px) and (min-aspect-ratio:16/10), (max-width:767px) {
    .mp .swiper__slide:before {
        content: '';
        display: block;
        position: absolute;
        box-sizing: border-box;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.6);
    }
}
@media (max-width:1199px) and (orientation: portrait) {
    .mp .swiper__slide {
        background-position: 75% center;
    }
}
@media (max-width:1199px) and (orientation: portrait) {
    .mp .swiper__slide_active {
        background-position: 25% center;
        transition: 15s linear background-position;
    }
}
@media (max-width:1199px) and (orientation: portrait) {
    .mp .swiper__slide_next,
    .mp .swiper__slide_prev {
        transition: 3s ease background-position;
    }
}
.mp-logo {
    position: fixed;
    z-index: 150;
    padding: var(--mp-logo-h) var(--mp-ph);
}
.mp-logo svg {
    height: var(--mp-logo-h);
    display: block;
    margin: auto;
}
@media (max-width:767px) and (orientation: portrait) {
    .mp-logo {
        width: 100%;
    }
}
.mp-nav {
    position: fixed;
    z-index: 100;
    font-family: 'Roboto', sans-serif;
    pointer-events: none;
}
@media (min-width:768px) {
    .mp-nav {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        padding: calc(var(--mp-logo-h)*2.75) var(--mp-ph);
    }
}
@media (min-width:1200px) {
    .mp-nav {
        padding: var(--mp-logo-h) 25%;
    }
}
@media (max-width:767px) and (orientation: portrait) {
    .mp-nav {
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
}
@media (max-width:767px) and (orientation: landscape) {
    .mp-nav {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        bottom: 0;
        padding: calc(var(--mp-logo-h)*.5) var(--mp-logo-h);
    }
    .mp-nav:before {
        background: linear-gradient(to top, #000000, rgba(0, 0, 0, 0)) !important;
        height: 100% !important;
    }
}
@media (min-width:768px) and (max-width:1199px) and (min-aspect-ratio:16/10) {
    .mp-nav {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        bottom: 0;
        padding: calc(var(--mp-logo-h)*.5) var(--mp-logo-h);
    }
    .mp-nav:before {
        background: linear-gradient(to top, #000000, rgba(0, 0, 0, 0)) !important;
        height: 100% !important;
    }
}
.mp-nav:before {
    opacity: 0.9;
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    height: 60vh;
    background: linear-gradient(to bottom, #000000, rgba(0, 0, 0, 0));
    pointer-events: none;
}
.mp-nav__item {
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 500;
    font-size: 125%;
    display: block;
    align-items: center;
    line-height: var(--mp-logo-h);
    overflow: hidden;
    height: var(--mp-logo-h);
    pointer-events: auto;
}
@media (max-width:767px) and (orientation: portrait) {
    .mp-nav__item {
        margin-top: 5vmax;
    }
}
.mp-nav__item:before {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    width: 97%;
    height: 3px;
    bottom: 0;
    clip-path: polygon(0px 0px, 0% 0%, 0% 100%, 0% 100%);
    background: linear-gradient(45deg, var(--brand-1), var(--brand-1), var(--brand-1));
}
@media (max-width:767px) {
    .mp-nav__item {
        text-align: center;
    }
}
.mp-nav__item.swiper-pagination__bullet_active:before {
    transition: 0.5s ease clip-path;
    clip-path: polygon(0px 0px, 100% 0%, 100% 100%, 0% 100%);
}

.lang-switch_main {
    position: fixed;
    z-index: 1500;
    display: block;
    align-items: stretch;
    justify-content: center;
    grid-gap: 1rem;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}
@media (min-width:768px), (max-width:767px) and (orientation: landscape) {
    .lang-switch_main {
        right: 0;
        top: 0;
    }
}
@media (max-width:767px) and (orientation: portrait) {
    .lang-switch_main {
        position: fixed;
        left: 0;

        width: 100%;
        height: 4rem;
        z-index: 200;
    }
}


.mp-contacts {
    position: fixed;
    z-index: 150;
    display: grid;
    align-items: stretch;
    justify-content: center;
    grid-gap: 1rem;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}
@media (min-width:768px), (max-width:767px) and (orientation: landscape) {
    .mp-contacts {
        right: 0;
        top: 0;
        padding: var(--mp-logo-h) var(--mp-ph);
    }
}
@media (max-width:767px) and (orientation: portrait) {
    .mp-contacts {
        position: fixed;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 4rem;
        z-index: 200;
        padding: 0 2rem;
    }
}
.mp-contacts a {
    display: flex;
    place-self: stretch;
    align-items: center;
    justify-content: center;
    min-width: var(--mp-logo-h);
    min-height: var(--mp-logo-h);
}
.mp-contacts a:hover {
    cursor: pointer;
}
.mp-contacts a:hover svg {
    transform: translateY(-0.25rem);
}
.mp-contacts a svg {
    transition: 0.25s ease transform;
    height: 24px;
}
.mobile-screens {
    display: grid;
    grid-template-columns: 1fr;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
    text-align: center;
    grid-gap: 2rem;
}
.mobile-screens img {
    display: block;
    margin: auto;
    box-shadow: 0 3px 1rem -0.5rem rgba(0, 0, 0, 0.12), 0 1.5rem 1.5rem -1rem rgba(0, 0, 0, 0.25);
    max-width: 14rem;
}
.mobile-screens__item {
    min-width: 10rem;
}
.mobile-screens__title {
    margin-top: 0.75rem;
    margin-bottom: 0.5rem;
}
.articles-grid {
    display: grid;
}
@media (min-width:1200px) {
    .articles-grid {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 2rem;
    }
}
@media (min-width:768px) and (max-width:1199px) {
    .articles-grid {
        grid-gap: 1.5rem;
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: landscape) {
    .articles-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: portrait) {
    .articles-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width:767px) {
    .articles-grid {
        grid-gap: 1rem;
    }
}
@media (max-width:767px) and (orientation: landscape) {
    .articles-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width:767px) and (orientation: portrait) {
    .articles-grid {
        grid-template-columns: 100%;
    }
}
.article {
    display: block;
    text-decoration: none;
    color: var(--c-text);
}
.article__date {
    margin-top: 0.5rem;
    font-size: 0.75em;
}
.article__body {
    margin-top: 1rem;
}
.banner-slim {
    text-decoration: none;
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    min-height: 4rem;
    background-color: var(--c-primary);
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid var(--border-color);
}
.banner-slim__title {
    color: #000;
    font-weight: 500;
}
@media (min-width:768px) {
    .banner-slim__title {
        font-size: var(--fs_h3);
    }
}
.banner-slim__title:before {
    content: '';
    display: block;
    margin-top: -0.3125em;
}
.banner-slim__title:after {
    content: '';
    display: block;
    margin-bottom: -0.3125em;
}

.banner-vertical__title {
    color: white;
    -webkit-text-stroke: 0.6px black;
}

.banner-vertical {
    display: block;
    text-decoration: none;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-color: #000;
    background-position: center center;
    min-height: 800px;
}
.banner-vertical__content {
    position: absolute;
    padding: 3rem 2.5rem;
}
.brand-categories a {
    text-decoration: none;
}
.brand-categories a:hover {
    text-decoration: underline;
}
.brand-detail__image {
    --image-height: 30%;
    padding-bottom: var(--image-height);
}
@media (max-width:767px) {
    .brand-detail__image {
        --image-height: 50%;
    }
}
.brand-detail__image img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.brand-detail__logo {
    --thumb-height: 5rem;
    --thumb-padding: 1.5rem;
    display: flex;
    justify-content: center;
    margin-top: var(--offset_content_y);
    transform: translate(0, -50%);
}
@media (max-width:767px) {
    .brand-detail__logo {
        --thumb-height: 3rem;
        --thumb-padding: 1rem;
    }
}
.brand-detail__logo img {
    display: block;
    max-height: var(--thumb-height);
    padding: var(--thumb-padding);
    background-color: #fff;
    box-shadow: 0 3px 1rem -0.5rem rgba(0, 0, 0, 0.12), 0 1.5rem 1.5rem -1rem rgba(0, 0, 0, 0.25);
}
@media (max-width:767px) {
    .brand-detail__logo img {
        max-width: 12rem;
    }
}
@media (min-width:768px) {
    .brand-detail__logo img {
        max-width: 16rem;
    }
}
.brand-tiles {
    --gap: 1px;
    display: grid;
    grid-gap: var(--gap);
    grid-template-columns: repeat(var(--cols), 1fr);
}
.brand-tiles_default {
    --cols: 6;
}
@media (max-width:767px) {
    .brand-tiles_default {
        --cols: 3;
    }
}
.brand-tiles_3 {
    --cols: 3;
}
.brand-tiles_4 {
    --cols: 4;
}
.brand-tiles_5 {
    --cols: 5;
}
@media (max-width:767px) {
    .brand-tiles_5 {
        --cols: 3;
    }
}
.brand-tiles a {
    padding-bottom: 50%;
    background-color: #fff;
}
.brand-tiles img {
    display: block;
    position: absolute;
    box-sizing: border-box;
    padding: 12%;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    margin: auto;
}
.brands-grid {
    --cols: 5;
    --gap: 1rem;
    display: grid;
    grid-gap: var(--gap);
    grid-template-columns: repeat(var(--cols), 1fr);
}
@media (min-width:1200px) {
    .brands-grid {
        --cols: 4;
        --gap: 2rem;
    }
}
@media (min-width:768px) and (max-width:1199px) {
    .brands-grid {
        --gap: 1.5rem;
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: portrait) {
    .brands-grid {
        --cols: 3;
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: landscape) {
    .brands-grid {
        --cols: 4;
    }
}
@media (max-width:767px) {
    .brands-grid {
        --gap: 1rem;
    }
}
@media (max-width:767px) and (orientation: portrait) {
    .brands-grid {
        --cols: 2;
    }
}
@media (max-width:767px) and (orientation: landscape) {
    .brands-grid {
        --cols: 3;
    }
}
.brands-grid__item {
    background-color: #ccc;
}
.brands-grid__thumb {
    display: block;
    object-fit: contain;
}
.brands-alphabet {
    --cols: 4;
    --gap: .5rem 1rem;
    display: grid;
    grid-gap: var(--gap);
    grid-template-columns: repeat(var(--cols), 1fr);
}
@media (min-width:1200px) {
    .brands-alphabet {
        --cols: 4;
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: portrait) {
    .brands-alphabet {
        --cols: 3;
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: landscape) {
    .brands-alphabet {
        --cols: 4;
    }
}
@media (max-width:767px) and (orientation: portrait) {
    .brands-alphabet {
        --cols: 2;
    }
}
@media (max-width:767px) and (orientation: landscape) {
    .brands-alphabet {
        --cols: 3;
    }
}
.brands-alphabet__letter {
    grid-column: span var(--cols);
    opacity: .5;
    margin-bottom: 0.5rem;
}
.brands-alphabet__letter:not(:first-child) {
    margin-top: 1.5rem;
}
@media (min-width:960px) {
    .cart-detail {
        display: grid;
        align-items: start;
        grid-template-columns: auto auto;
        grid-gap: 3rem;
    }
}
@media (min-width:960px) {
    .cart-detail__side {
        position: sticky;
        top: calc(3rem + var(--spacing_content_y));
        width: 14rem;
    }
}
@media (max-width:959px), (max-width:767px) and (orientation: landscape) {
    .cart-detail__side {
        margin-top: 1.5rem;
        max-width: 16rem;
        margin-left: auto;
    }
}
@media (max-width:767px) and (orientation: portrait) {
    .cart-detail__side {
        margin-top: 1.5rem;
        max-width: none;
    }
}
.cart-detail__coupon {
    margin-bottom: 1rem;
}
.cart-detail__coupon .control__btn {
    position: absolute;
    top: 0;
    right: 0;
}
.cart-detail__submit {
    margin-top: 1rem;
}
.bundle__body {
    margin-top: 1.5rem;
}
.bundle__footer {
    margin-top: 1.5rem;
}
@media (min-width:768px) {
    .bundle__footer {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}
@media (max-width:767px) {
    .bundle__footer .btn {
        margin-top: 1rem;
    }
}
.case {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
    background-color: var(--c-white);
    text-decoration: none;
    display: block;
    color: var(--c-text_muted);
}
.case:hover {
    border-bottom-color: var(--c-primary);
    box-shadow: 0 3px 1rem -0.5rem rgba(0, 0, 0, 0.12), 0 1.5rem 1.5rem -1rem rgba(0, 0, 0, 0.25);
}
.case__thumb {
    padding-bottom: 56%;
}
._invert .case__thumb:before {
    transition: opacity 0.25s ease;
    --spacing: 1.5rem;
    content: '';
    display: block;
    box-sizing: border-box;
    position: absolute;
    top: 10px;
    opacity: .35;
    width: 100%;
    height: 100%;
    filter: blur(var(--spacing));
    background: linear-gradient(to right top, var(--brand-3), var(--brand-2), var(--brand-3));
    background-size: 200%;
}
._invert a:hover .case__thumb:before {
    animation: animateGlow 2s ease infinite;
    opacity: .65;
}
.case__thumb img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.case__body {
    padding: 0.75rem;
    background-color: var(--c-white);
}
.case__type {
    font-size: 0.875em;
    margin-top: 0.75rem;
}
.cases-grid {
    display: grid;
    align-items: start;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 2rem;
}
@media (min-width:768px) and (max-width:1199px) {
    .cases-grid {
        grid-gap: 1.5rem;
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: portrait) {
    .cases-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width:767px) {
    .cases-grid {
        grid-gap: 0.75rem;
    }
}
@media (max-width:767px) and (orientation: portrait) {
    .cases-grid {
        grid-template-columns: 100%;
    }
}
@media (max-width:767px) and (orientation: landscape) {
    .cases-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
.catalog-categories {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -0.5rem;
    font-size: 0.875em;
}
.catalog-categories + .catalog-categories {
    margin-top: 0.75rem;
}
.catalog-categories__header {
    width: 10rem;
}
.catalog-categories__item {
    margin-right: 1.5rem;
    margin-bottom: 0.5rem;
}
.catalog-categories__link {
    color: var(--c-link);
}
.catalog-menu {
    --color: #fff;
    --background-position: 100% 0;
    --bg: transparent;
    --bg_hover: var(--brand-3);
    --bg_active: #000000;
}
.catalog-menu__link {
    transition: color 0.25s ease, background-position 0.25s ease;
    display: block;
    color: var(--color);
    text-decoration: none;
    padding-left: 2rem;
    padding-right: 3.5rem;
    background-size: 330%;
    background-repeat: no-repeat;
    background-position: var(--background-position);
    background-image: linear-gradient(-90deg, var(--bg) 0%, var(--bg) 33.3%, #000000 33.3%, #9b001d 66.3%, var(--bg_active) 66.3%, var(--bg_active) 100%);
}
@media (min-width:1200px) {
    .catalog-menu__link {
        padding-top: 0.75rem;
        padding-bottom: 0.75rem;
    }
}
@media (max-width:1199px) {
    .catalog-menu__link {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
}
.catalog-menu__link:hover {
    --color: #000;
    --background-position: 50% 0;
}
.catalog-menu__link:active {
    --background-position: 0 0;
}
.catalog-menu__link:active:hover {
    --color: #fff;
}
.catalog-menu .catalog-menu {
    font-size: 90%;
    display: none;
}
.catalog-menu .catalog-menu .catalog-menu {
    font-size: 100%;
}
.catalog-menu .catalog-menu .catalog-menu .catalog-menu__link {
    padding-left: 2.5rem;
}
.catalog-menu .catalog-menu .catalog-menu .catalog-menu .catalog-menu__link {
    padding-left: 3rem;
}
.catalog-menu .catalog-menu .catalog-menu .catalog-menu .catalog-menu .catalog-menu__link {
    padding-left: 3.5rem;
}
.catalog-menu__item_open > .catalog-menu__link {
    background-color: rgba(255, 255, 255, 0.1);
}
.catalog-menu__item_open > .catalog-menu {
    display: block;
}
.catalog-menu__item_active > .catalog-menu__link {
    --background-position: 0 0;
}
.catalog-menu__item_active > .catalog-menu__link:hover {
    --color: #fff;
}
.catalog-menu__item_hide {
    display: none;
}
.catalog-menu__item_sale {
    background-color: var(--brand-1);
}
.catalog-menu__header {
    padding-left: 2rem;
    padding-right: 3rem;
    text-transform: uppercase;
    font-size: 80%;
    letter-spacing: 0.1em;
}
@media (min-width:1200px) {
    .catalog-menu__header {
        padding-top: 0.75rem;
        padding-bottom: 0.75rem;
    }
}
@media (max-width:1199px) {
    .catalog-menu__header {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
}
.catalog-menu__toggle {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    top: 0;
    right: 2rem;
    bottom: 0;
    width: 24px;
    background: none;
    border: 0;
    cursor: pointer;
    z-index: 5;
    outline: none;
}
.catalog-menu__toggle:after,
.catalog-menu__toggle:before {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    background-color: var(--color);
}
.catalog-menu__toggle:after {
    width: 8px;
    height: 2px;
}
.catalog-menu__toggle:before {
    width: 2px;
    height: 8px;
}
.catalog-menu__toggle_active:before {
    opacity: 0;
}
.catalog-tags {
    display: flex;
    margin: -0.5rem;
}
.catalog-tags > * {
    padding: 0.5rem;
}
.catalog-tags__item {
    font-size: 0.75em;
}
.catalog-thumb {
    display: grid;
}
@media (min-width:768px) {
    .catalog-thumb {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 2rem;
    }
}
@media (max-width:767px) {
    .catalog-thumb {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 0.75rem;
    }
}
.catalog-thumb__item {
    background-color: #fff;
    background-position: bottom right;
    background-size: auto 100%;
    background-repeat: no-repeat;
    display: block;
    text-decoration: none;
    min-height: 8rem;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
    background-origin: border-box;
    border-radius: 3px;
}
@media (min-width:768px) {
    .catalog-thumb__item {
        padding: 1.5rem;
    }
}
@media (max-width:767px) {
    .catalog-thumb__item {
        padding: 0.75rem;
        background-size: auto 75%;
    }
}
.catalog-thumb__item h4 {
    font-weight: normal;
    width: 70%;
}
.checkout-option + .checkout-option {
    margin-top: 2rem;
}
.checkout-option__body {
    margin-top: 1rem;
    display: none;
}
.checkout-option__body > * + * {
    margin-top: 1rem;
}
.checkout-option_active .checkout-option__body {
    display: block;
}
.checkout-option__description {
    line-height: 1.25;
    font-size: 0.875em;
}
.checkout-option__description p {
    line-height: 1.25;
}
.checkout-option__description p + p {
    margin-top: 1rem;
}
.checkout-success {
    margin-left: auto;
    margin-right: auto;
}
@media (min-width:768px) {
    .checkout-success {
        padding: 12rem 0;
    }
}
@media (min-width:768px) {
    .checkout-success__main {
        width: 65%;
    }
}
@media (min-width:768px) {
    .checkout-success__bg {
        position: absolute;
        z-index: -1;
        top: 50%;
        left: 75%;
    }
}
@media (max-width:767px) {
    .checkout-success__bg {
        display: none;
    }
}
@media (min-width:768px) {
    .contacts-detail {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (min-width:768px) {
    .contacts-detail__side {
        border-left: 1px solid var(--border-color);
    }
}
@media (max-width:767px) {
    .contacts-detail__side {
        border-top: 1px solid var(--border-color);
        height: 60vh;
    }
}
.contacts-placemarks__item {
    list-style: none !important;
    cursor: pointer;
}
.contacts-placemarks__title {
    font-size: 0.875em;
}
.contacts-placemarks__item_active .contacts-placemarks__title {
    color: #000;
    font-weight: 500;
}
.contacts-placemarks__print {
    display: inline-block;
    cursor: pointer;
    font-size: 0.75em;
}
.contacts-placemarks__id {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    left: -2rem;
    margin-top: -2px;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    border: 3px solid var(--c-link);
    font-size: 0.75em;
    font-weight: 600;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
}
@media (max-width:1199px) {
    .categories-nav-inline {
        overflow: hidden;
        overflow-x: auto;
    }
}
.categories-nav-inline__container {
    display: grid;
}
.categories-nav-inline__grid {
    display: flex;
}
@media (min-width:1200px) {
    .categories-nav-inline__grid {
        flex-wrap: wrap;
    }
}
@media (max-width:1199px) {
    .categories-nav-inline__grid {
        padding-left: var(--spacing_content_x);
        padding-right: var(--spacing_content_x);
    }
}
.categories-nav-inline__item {
    display: block;
    white-space: nowrap;
    margin-right: 1.5rem;
}
@media (min-width:1200px) {
    .categories-nav-inline__item {
        margin-top: 0.75rem;
    }
}
@media (max-width:1199px) {
    .categories-nav-inline__item {
        padding-top: 0.75rem;
        padding-bottom: 0.75rem;
    }
}
.brands-menu {
    --cols: 4;
    --gap: .5rem 1rem;
    display: grid;
    grid-gap: var(--gap);
    grid-template-columns: repeat(var(--cols), 1fr);
}
@media (min-width:1200px) {
    .brands-menu {
        --cols: 4;
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: portrait) {
    .brands-menu {
        --cols: 3;
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: landscape) {
    .brands-menu {
        --cols: 4;
    }
}
@media (max-width:767px) and (orientation: portrait) {
    .brands-menu {
        --cols: 2;
    }
}
@media (max-width:767px) and (orientation: landscape) {
    .brands-menu {
        --cols: 3;
    }
}
.categories-card-grid {
    display: grid;
    align-items: start;
}
@media (min-width:1200px) {
    .categories-card-grid {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 2rem;
    }
}
@media (min-width:768px) and (max-width:1199px) {
    .categories-card-grid {
        grid-gap: 1.5rem;
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: landscape) {
    .categories-card-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: portrait) {
    .categories-card-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width:767px) {
    .categories-card-grid {
        grid-gap: 1rem;
        grid-template-columns: repeat(2, 1fr);
    }
}
.category-card {
    display: block;
    text-decoration: none;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
    border-radius: var(--border-radius);
    overflow: hidden;
    background-color: #fff;
}
.category-card__body {
    position: absolute;
    top: 0;
    left: 0;
}
@media (min-width:768px) {
    .category-card__body {
        padding: 1rem;
    }
}
@media (max-width:767px) {
    .category-card__body {
        padding: 0.75rem;
        font-size: 0.75em;
    }
}
.category-detail__gallery {
    background-color: #111;
}
.category-detail__gallery .swiper {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
@media (min-width:1200px) {
    .category-detail__gallery {
        padding-bottom: 40%;
    }
}
@media (max-width:1199px) {
    .category-detail__gallery {
        padding-bottom: 67vmin;
    }
}
.categories-tile-grid {
    display: grid;
    align-items: start;
}
@media (min-width:1200px) {
    .categories-tile-grid {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 2rem;
    }
}
@media (min-width:768px) and (max-width:1199px) {
    .categories-tile-grid {
        grid-gap: 1.5rem;
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: landscape) {
    .categories-tile-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (min-width:768px) and (max-width:1199px) and (orientation: portrait) {
    .categories-tile-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width:767px) {
    .categories-tile-grid {
        grid-gap: 1rem;
    }
}
@media (max-width:767px) and (orientation: landscape) {
    .categories-tile-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width:767px) and (orientation: portrait) {
    .categories-tile-grid {
        grid-template-columns: 100%;
    }
}
.category-tile {
    display: block;
    text-decoration: none;
    overflow: hidden;
    background-color: #fff;
    background-size: auto 100%;
    background-position: right bottom;
    background-repeat: no-repeat;
}
@media (min-width:1200px) {
    .category-tile {
        padding-bottom: 50%;
    }
}
@media (max-width:1199px) {
    .category-tile {
        padding-bottom: 25%;
        min-height: 6rem;
    }
}
.category-tile__title {
    position: absolute;
    width: 60%;
    top: 1.5rem;
    left: 1.5rem;
}
.category-tile__thumb {
    position: absolute;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.category-tile_2 {
    padding-bottom: 50%;
    background-size: auto 100%;
    background-origin: border-box;
    background-position: right bottom;
    background-repeat: no-repeat;
    transition: background-size 0.25s ease;
}
@media (max-width:767px) {
    .category-tile_2 {
        padding-bottom: 35%;
    }
}
.category-tile_2:hover {
    background-size: auto 125%;
}
.category-tile_cut {
    padding-top: 50%;
    background-size: cover;
    background-origin: border-box;
    background-position: center right;
    background-repeat: no-repeat;
    transition: background-size 0.25s ease;
}
@media (max-width:767px) {
    .category-tile_cut {
        padding-top: 35%;
    }
}
.category-tile_cut .category-tile__body {
    position: absolute;
    top: 0;
    left: 0;
    width: 60%;
}
.category-tile_cut .category-tile__icon {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 50%;
}
@media (max-width:767px) {
    .category-tile_cut .category-tile__icon {
        width: 35%;
    }
}
.category-tile_cut .category-tile__icon svg {
    width: 100%;
    height: 100%;
    stroke-width: 1px;
    fill: none;
    stroke: #000;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: stroke-dashoffset 2s ease;
}
.category-tile_gem {
    padding-bottom: 50%;
    background-size: auto 100%;
    background-origin: border-box;
    background-position: right bottom;
    background-repeat: no-repeat;
    transition: background-size 0.25s ease;
}
@media (max-width:767px) {
    .category-tile_gem {
        padding-bottom: 35%;
    }
}
.category-tile_gem:hover {
    background-size: auto 125%;
}
.category-tile_gem .category-tile__body {
    position: absolute;
    top: 0;
    left: 0;
    width: 60%;
}
.category-tile_overlay .category-tile__body {
    position: absolute;
    top: 0;
    left: 0;
    width: 60%;
}
.order {
    display: grid;
    grid-gap: 0.5rem;
    padding: 1rem;
    background-color: #fff;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
}
@media (min-width:768px) {
    .order {
        align-items: center;
        grid-template-columns: 3fr 3fr 2fr;
    }
}
.order__status {
    justify-self: start;
}
@media (min-width:768px) {
    .order__price {
        justify-self: end;
    }
}
@media (min-width:960px) {
    .order-detail {
        display: grid;
        align-items: start;
        grid-template-columns: auto auto;
        grid-gap: 3rem;
    }
}
@media (max-width:959px) {
    .order-detail__main {
        margin-top: 3rem;
    }
}
.order-detail__side {
    order: 2;
}
@media (min-width:960px) {
    .order-detail__side {
        position: sticky;
        top: 3rem;
        width: 14rem;
    }
}
.order-detail__coupon {
    margin-bottom: 1rem;
}
.order-detail__coupon .control__btn {
    position: absolute;
    top: 0;
    right: 0;
}
.order-detail__summary {
    margin-top: 1.5rem;
}
.product {
    font-size: 1rem;
    color: var(--c-text);
    display: block;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
    background-color: var(--c-bg_01);
    min-width: 0;
    overflow: hidden;
    text-decoration: none;
}
.product:hover {
    box-shadow: 0 3px 1rem -0.5rem rgba(0, 0, 0, 0.12), 0 1.5rem 1.5rem -1rem rgba(0, 0, 0, 0.25);
}
.product__body {
    padding: 0.75rem;
}
.product__sku {
    font-size: 0.75em;
    color: var(--c-text_muted);
    white-space: nowrap;
    margin-top: 0.75rem;
    font-weight: 300;
    overflow: hidden;
}
.product__sku:after {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    width: 50%;
    height: 100%;
    bottom: 0;
    right: 0;
    background-image: linear-gradient(to left, #ffffff, rgba(255, 255, 255, 0));
}
.product__badge {
    display: flex;
    text-transform: uppercase;
    font-weight: 500;
    padding: .25em .75em;
    align-items: center;
    position: absolute;
    z-index: 5;
    font-size: 0.875em;
    top: 0.75rem;
    padding-left: 0.75rem;
    padding-right: 1.5rem;
    overflow: hidden;
}
.product__badge:before {
    transform-origin: top right;
}
.product__title {
    line-height: 1.25;
    font-size: 0.875em;
    margin-top: 0.75rem;
    height: calc(1em*1.25*3);
    overflow: hidden;
}
.product__title:after {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    width: 62%;
    height: 30%;
    bottom: 0;
    right: 0;
    background-image: linear-gradient(to left, #ffffff, rgba(255, 255, 255, 0));
}
.product__price {
    margin-right: auto;
    font-weight: 500;
    display: flex;
}
.product__price .price__old {
    margin-left: 1rem;
}
.product__specs {
    margin-top: 0.75rem;
    font-size: 0.75em;
}
@media (max-width:767px) {
    .product__specs {
        margin-top: 0.375rem;
    }
}
.product__specs li + li {
    margin-top: .5em;
}
.product__availability {
    margin-top: 0.75rem;
    font-size: 0.75em;
}
@media (max-width:767px) {
    .product__availability {
        margin-top: 0.375rem;
    }
}
.product-action {
    line-height: 1.375;
    padding: 1.5rem;
    background-color: #ffe900;
    box-shadow: 0 3px 1rem -0.5rem rgba(0, 0, 0, 0.12), 0 1.5rem 1.5rem -1rem rgba(0, 0, 0, 0.25);
}
.product-action a {
    display: inline-block;
    margin-top: 1rem;
    color: #000;
}
.products-cart-grid .product-cart + .product-cart {
    margin-top: 1.5rem;
}
.product-cart {
    background-color: #fff;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
}
@media (min-width:768px) {
    .product-cart {
        --gap: 1.5rem;
    }
}
@media (max-width:767px) {
    .product-cart {
        --gap: 1rem;
    }
}
@media (max-width:767px) and (orientation: landscape), (min-width:768px) {
    .product-cart {
        display: grid;
        grid-template-areas: "thumb header" "thumb footer";
    }
}
@media (min-width:768px) {
    .product-cart {
        grid-template-columns: 12rem 1fr;
    }
}
@media (max-width:767px) and (orientation: landscape) {
    .product-cart {
        grid-template-columns: 1fr 2fr;
    }
}
@media (min-width:1200px) {
    .product-cart:hover {
        box-shadow: 0 3px 1rem -0.5rem rgba(0, 0, 0, 0.12), 0 1.5rem 1.5rem -1rem rgba(0, 0, 0, 0.25);
    }
}
.product-cart__thumb {
    display: block;
    grid-area: thumb;
    width: 100%;
}
.product-cart__header {
    padding: var(--gap) var(--gap) 0 var(--gap);
    grid-area: header;
}
.product-cart__title {
    grid-area: title;
}
.product-cart__title a {
    text-decoration: none;
}
.product-cart__footer {
    padding: var(--gap);
    grid-gap: 0.75rem;
    grid-area: footer;
    display: grid;
    align-self: flex-end;
    grid-auto-flow: column;
    align-items: center;
}
@media (min-width:1200px) {
    .product-cart__footer {
        grid-template-columns: 8rem 2fr;
    }
}
@media (min-width:768px) and (max-width:1199px) {
    .product-cart__footer {
        grid-template-columns: 10rem 2fr;
    }
}
@media (max-width:767px) {
    .product-cart__footer {
        grid-template-columns: 9rem auto;
    }
}
@media (max-width:1199px) {
    .product-cart__price {
        display: none;
    }
}
.product-cart__price .price__old {
    position: absolute;
    bottom: 100%;
}
.product-cart__quantity {
    display: flex;
    color: var(--c-header);
}
@media (min-width:768px) {
    .product-cart__quantity {
        margin-top: -0.5rem;
        margin-bottom: -0.5rem;
    }
}
.product-cart__quantity input {
    height: 2.4rem;
}
.product-cart__btn-delete {
    margin-left: 0.5rem;
}
.product-cart__summary {
    justify-self: end;
}
.product-cart__id {
    opacity: .5;
    font-weight: 400;
}
.product-badge {
    display: flex;
    align-items: center;
    position: absolute;
    z-index: 5;
    font-size: 0.875em;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    top: 1em;
    font-weight: 500;
    padding-left: 1em;
    padding-right: 1em;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    overflow: hidden;
}
.product-detail__image-proxy {
    padding-bottom: 67%;
}
.product-detail__image-proxy svg {
    display: block;
    object-fit: cover;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #d9d9d9;
    fill: #fff;
}
.product-detail__gallery-pagination {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: -1.5rem;
}
@media (max-width:959px) {
    .product-detail__gallery-pagination {
        padding: 0 var(--spacing_content_x);
    }
}
.product-detail__btn-video {
    padding: 0;
}
.product-detail__btn-video .icon {
    fill: #ff0000;
}
.swiper_loading .product-detail__btn-video {
    opacity: 0;
}
.product-detail__buy {
    background-color: #fff;
    box-shadow: 0 3px 1rem -0.5rem rgba(0, 0, 0, 0.12), 0 1.5rem 1.5rem -1rem rgba(0, 0, 0, 0.25);
    padding: 2rem;
    overflow: hidden;
    align-self: end;
}
.product-detail__sku-list {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}
.product-detail__service {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}
.product-detail__benefits {
    margin-top: 3rem;
}
.product-detail__benefits dl {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    grid-gap: 0.75rem;
}
.product-detail__btn-buy {
    white-space: nowrap;
}
.product-detail__qb {
    display: grid;
    grid-template-columns: 2fr 4fr;
    grid-gap: 1rem;
}
.product-detail__request {
    justify-self: stretch;
}
.product-detail__action {
    margin-top: 1.5rem;
}
.product-detail__dealers {
    font-size: 0.875em;
    color: var(--brand-2);
    margin-bottom: 1rem;
}
.product-detail-edit {
    display: none;
    position: fixed;
    z-index: 500;
    right: 1rem;
    bottom: 1rem;
}
@media (max-width:959px) {
    .product-detail_a .product-detail__gallery {
        margin: var(--offset_content_y) var(--offset_content_x) 0 var(--offset_content_x);
    }
}
.product-detail_a .product-detail__gallery .swiper:not(.swiper_fullscreen) {
    padding-top: 67%;
}
.product-detail_a .product-detail__gallery .swiper:not(.swiper_fullscreen) .swiper__mask {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    background-color: #d9d9d9;
}
.product-detail_a .product-detail__layout {
    display: grid;
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
}
@media (min-width:960px) {
    .product-detail_a .product-detail__layout {
        grid-template-columns: 62fr 38fr;
    }
    .product-detail_a .product-detail__layout-side {
        grid-row: span 2;
    }
}
@media (max-width:959px) {
    .product-detail_a .product-detail__layout {
        grid-auto-flow: row;
    }
}
.product-detail_a .product-detail__layout-main {
    display: grid;
    grid-auto-flow: row;
    align-items: start;
    grid-gap: 3rem;
}
@media (min-width:960px) {
    .product-detail_a .product-detail__header {
        position: sticky;
        top: calc(3rem + var(--spacing_content_y));
        z-index: 500;
    }
}
.product-detail_a .product-detail__sub-title {
    display: inline-flex;
    align-items: center;
    width: 100%;
    font-size: 1rem;
    color: var(--c-text);
    font-weight: 400;
}
.product-detail_a .product-detail__cta {
    margin-top: 3rem;
}
.product-detail_a .product-detail__availability {
    margin-top: 1.5rem;
}
.product-detail_a .product-detail__options {
    margin-top: 1.5rem;
}
.product-detail_a .product-detail__stocks {
    font-size: 0.875em;
    margin-top: 1rem;
}
.product-detail_a .product-detail__controls {
    margin-top: 1.5rem;
}
.product-detail_a .product-detail__sku {
    display: none;
    white-space: nowrap;
}
.product-detail_a .product-detail__sku:first-of-type {
    display: inline-block;
}
.product-detail_a .product-detail__badge {
    display: block;
    text-transform: uppercase;
    font-weight: 500;
    padding: .25em .75em;
    margin-left: 1rem;
    margin-right: 1rem;
}
.product-detail_a .product-detail__badge:before {
    top: 0;
    right: 0;
    box-shadow: 0 0.5em 1em -0.25em rgba(0, 0, 0, 0.25);
}
.product-detail_a .product-detail__price .price__old {
    display: inline-block;
    margin-bottom: 0.75rem;
}
.product-detail_b .product-detail__gallery .swiper:not(.swiper_fullscreen) {
    padding-top: 67%;
}
.product-detail_b .product-detail__gallery .swiper:not(.swiper_fullscreen) .swiper__mask {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    background-color: #d9d9d9;
}
.product-detail_b .product-detail__sub-title {
    display: inline-flex;
    align-items: center;
    width: 100%;
    font-size: 1rem;
    color: var(--c-text);
    font-weight: 400;
}
.product-detail_b .product-detail__badge {
    display: block;
    text-transform: uppercase;
    font-weight: 500;
    padding: .25em .75em;
    margin-left: 1rem;
    margin-right: 1rem;
}
.product-detail_b .product-detail__badge:before {
    top: 0;
    right: 0;
    box-shadow: 0 0.5em 1em -0.25em rgba(0, 0, 0, 0.25);
}
@media (min-width:768px) {
    .product-detail_b .product-detail__bar {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}
.product-detail_b .product-detail__price-avail {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}
@media (max-width:767px) {
    .product-detail_b .product-detail__price-avail {
        margin-bottom: 0.75rem;
    }
}
@media (min-width:768px) {
    .product-detail_b .product-detail__controls {
        max-width: 16rem;
    }
}
.product-detail_b .product-detail__availability {
    margin-left: 2rem;
    white-space: nowrap;
}
.product-detail_default .product-detail__buy {
    background-color: #fff;
    box-shadow: 0 3px 1rem -0.5rem rgba(0, 0, 0, 0.12), 0 1.5rem 1.5rem -1rem rgba(0, 0, 0, 0.25);
    padding: 2rem;
    overflow: hidden;
    align-self: end;
}
@media (max-width:959px) {
    .product-detail_ppgems .product-detail__gallery {
        margin: var(--offset_content_y) var(--offset_content_x) 0 var(--offset_content_x);
    }
}
.product-detail_ppgems .product-detail__gallery .swiper:not(.swiper_fullscreen) {
    padding-top: 75%;
}
.product-detail_ppgems .product-detail__gallery .swiper:not(.swiper_fullscreen) .swiper__mask {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    background-color: #fff;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
}
.product-detail_ppgems .product-detail__layout {
    display: grid;
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
}
@media (min-width:960px) {
    .product-detail_ppgems .product-detail__layout {
        grid-template-columns: 65fr 35fr;
    }
}
@media (max-width:959px) {
    .product-detail_ppgems .product-detail__layout {
        grid-auto-flow: row;
    }
}
.product-detail_ppgems .product-detail__layout-main {
    display: grid;
    grid-auto-flow: row;
    align-items: start;
    grid-gap: 3rem;
}
.product-detail_ppgems .product-detail__layout-side {
    margin-top: -4rem;
    display: grid;
    grid-auto-flow: row;
    grid-row-gap: 3rem;
    align-items: start;
    align-content: start;
    grid-row: span 2;
}
.product-detail_ppgems .product-detail__header {
    padding-top: 4rem;
    display: grid;
    grid-auto-flow: row;
    grid-row-gap: 2rem;
    z-index: 500;
}
.product-options__title {
    margin-top: 0.75rem;
    margin-bottom: 0.75rem;
}
.product-options__list {
    display: flex;
    flex-wrap: wrap;
    margin-right: -0.75rem;
    margin-bottom: -0.75rem;
}
.product-options__item {
    margin-right: 0.75rem;
    margin-bottom: 0.75rem;
}
.product-sku {
    display: flex;
    flex: 1 0 auto;
    font-size: 0.875em;
}
.product-sku__id {
    font-size: 0.75em;
    color: var(--c-gray);
    margin-top: 0.25rem;
}
.product-sku__price {
    margin-left: auto;
    color: #000;
}
dl.product-specs {
    display: grid;
    grid-template-columns: 3fr 5fr;
    grid-gap: 0.75rem;
}
.product-specs dt {
    color: var(--c-text_muted);
}
.product-specs dd {
    color: var(--c-text);
}
ul.product-stocks li + li {
    margin-top: 0.5rem;
}
.product-thumb {
    padding-bottom: 66.66666667%;
    background-color: #d9d9d9;
    overflow: hidden;
    fill: #fff;
}
.product-thumb svg,
.product-thumb img {
    display: block;
    object-fit: cover;
    position: absolute;
    width: 100%;
    height: 100%;
    font-size: 0;
}
@media (min-width:1200px) {
    .product-thumb svg,
    .product-thumb img {
        transition: transform 0.125s ease;
    }
    a:hover .product-thumb svg,
    a:hover .product-thumb img,
    a.product-thumb svg:hover,
    a.product-thumb img:hover {
        transform: scale(1.1);
    }
}
.products-grid_default {
    display: grid;
    grid-gap: calc(var(--width_content-calc) / 100 * 3);
    align-items: start;
}
@media (max-width:767px) and (orientation: portrait) {
    .products-grid_default {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width:767px) and (orientation: landscape) {
    .products-grid_default {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (min-width:768px) and (max-width:959px) {
    .products-grid_default {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (min-width:960px) {
    .products-grid_default {
        grid-template-columns: repeat(4, 1fr);
    }
}
.project {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
    background-color: #fff;
    text-decoration: none;
    display: block;
}
.project__body {
    padding: 1rem;
}
.projects-swiper {
    display: flex;
}
@media (max-width:767px) {
    .projects-swiper {
        grid-gap: 0.75rem;
        grid-template-columns: repeat(2, 1fr);
    }
}
.projects-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 1.5rem;
}
@media (max-width:767px) {
    .projects-grid {
        grid-gap: 0.75rem;
        grid-template-columns: repeat(2, 1fr);
    }
}
.services-root {
    --bg: #fff;
    font-size: 1rem;
    display: grid;
}
._invert .services-root {
    --bg: #000;
}
@media (min-width:768px) {
    .services-root {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 2em;
    }
}
@media (max-width:767px) {
    .services-root {
        grid-gap: 1.5em;
    }
}
@media (max-width:767px) and (orientation: landscape) {
    .services-root {
        grid-template-columns: repeat(2, 1fr);
    }
}
.services-root__item {
    display: grid;
    grid-template-columns: 4fr 6fr;
    background-color: #000;
    text-decoration: none;
    color: #d9d9d9;
}
._invert .services-root__thumb:before {
    transition: opacity 0.25s ease;
    --spacing: 1.5rem;
    content: '';
    display: block;
    box-sizing: border-box;
    position: absolute;
    top: 10px;
    opacity: .35;
    width: 100%;
    height: 100%;
    filter: blur(var(--spacing));
    background: linear-gradient(to right top, var(--brand-3), var(--brand-2), var(--brand-3));
    background-size: 200%;
}
._invert a:hover .services-root__thumb:before {
    animation: animateGlow 2s ease infinite;
    opacity: .65;
}
.services-root__thumb img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}
a:hover .services-root__thumb img {
    transform: scale(1.3);
}
.services-root__img-wrapper {
    padding-bottom: 67%;
    overflow: hidden;
}
.services-root__body {
    padding: 1em 1.5em;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.services-root__title {
    font-weight: 500;
    line-height: 1.25;
    max-height: 4em;
    overflow: hidden;
    margin-top: -0.175em;
    transition: color 0.25s ease;
}
@media (min-width:1200px) {
    .services-root__title {
        font-size: 1.125em;
    }
}
a .services-root__title {
    color:  #7c040a;
}
a:hover .services-root__title {
    color: #ff0000;
}
.services-root__price {
    text-align: right;
    display: flex;
    justify-content: right;
    color: var(--c-header);
}
.socials-auth {
    display: flex;
    align-items: center;
    justify-content: center;
}
.socials-auth li {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}
.socials-auth a {
    display: block;
}
.socials-auth img {
    width: 3rem;
}
.special-offers-promo-2 {
    background-color: #ffd84a;
    color: var(--c-header);
    font-size: 1rem;
}
@media (max-width:767px) {
    .special-offers-promo-2 {
        padding-left: var(--spacing_content_x);
        padding-right: var(--spacing_content_x);
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
}
@media (min-width:768px) {
    .special-offers-promo-2 {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}
@media (min-width:768px) {
    .special-offers-promo-2__text {
        padding-left: var(--spacing_content_x);
        padding-right: var(--spacing_content_x);
    }
}
.special-offers-promo-2__btn {
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
    height: var(--btn-height);
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--brand-1);
    color: #fff;
    cursor: pointer;
    white-space: nowrap;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: none;
}
@media (max-width:767px) {
    .special-offers-promo-2__btn {
        text-align: center;
        margin-top: 0.75rem;
    }
}
.special-offers-promo {
    background-color: #ffd84a;
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    color: var(--c-header);
    font-size: 1rem;
}
@media (min-width:768px) {
    .special-offers-promo {
        display: flex;
    }
}
.special-offers-promo__item {
    display: block;
}
@media (max-width:767px) {
    .special-offers-promo__item + .special-offers-promo__item {
        margin-top: 0.5rem;
    }
}
@media (min-width:768px) {
    .special-offers-promo__item + .special-offers-promo__item {
        margin-left: 1.5rem;
    }
}
.special-offers-promo__item a {
    color: var(--c-header);
}
.layout {
    max-width: 1920px;
}
.bottom-bar {
    position: sticky;
    bottom: 0;
    z-index: 15;
    background: linear-gradient(45deg, #ff0000, #950d0d, #ffffff) #000000;
    background-size: 175%;
    background-position: center center;
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
    padding-top: 1rem;
    padding-bottom: 1rem;
    font-size: 0.875em;
}
@media (min-width:768px) {
    .bottom-bar_service {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}
.bottom-bar_shop {
    font-size: 1rem;
    background: #fff;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.15);
}
@media (max-width:767px) {
    .bottom-bar_shop .price_x2 {
        line-height: 1;
        font-size: 150%;
    }
}
.bottom-bar__title {
    color: #fff !important;
    text-decoration: none;
    cursor: pointer;
    display: block;
}
@media (max-width:767px) {
    .bottom-bar__title {
        display: none;
    }
}
.bottom-bar-menu {
    display: flex;
    color: #fff;
    flex-wrap: wrap;
}
.bottom-bar-menu a {
    color: #fff !important;
    text-decoration: none;
    cursor: pointer;
}
.bottom-bar-menu a:hover {
    text-decoration: underline;
}
@media (min-width:768px) {
    .bottom-bar-menu a {
        display: flex;
        align-items: center;
    }
}
@media (max-width:767px) {
    .bottom-bar-menu {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        font-size: 0.75em;
    }
}
.bottom-bar-menu__item {
    text-align: center;
}
@media (min-width:768px) {
    .bottom-bar-menu__item {
        margin-left: 2rem;
    }
}
.bottom-bar-menu__item_title {
    margin-right: auto;
    margin-left: 0;
}
.bottom-bar-menu .icon {
    fill: #fff;
    display: inline-block;
}
@media (min-width:768px) {
    .bottom-bar-menu .icon {
        margin-right: 0.5rem;
    }
}
.header_a {
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: auto 100%;
}
.header_a .crumbs {
    top: 0;
    left: 0;
}
.header_a .header__container {
    color: var(--c-text);
    width: 75%;
    max-width: 48rem;
}
.header_a .header__nav {
    margin-top: 1rem;
}
@media (max-width:1199px) {
    .header_a .header__nav {
        display: none;
    }
}
.header_a .header__description {
    margin-top: 1.5rem;
}
@media (max-width:1199px) {
    .header_a .header__description {
        display: none;
    }
}
.header_case .header__content {
    padding: var(--spacing_content);
}
.header_case .header__image {
    background-size: cover;
    background-position: center;
    min-height: 50vmin;
}
.header_case .header__image img {
    display: block;
    object-fit: cover;
    height: 50vmin;
    width: 100%;
}
@media (min-width:960px) {
    .header_catalog {
        display: flex;
    }
    .header_catalog .header__side {
        margin-left: auto;
        flex: 0 0 auto;
    }
}
.header_product {
    display: flex;
    align-items: center;
}
.header_product .header__side {
    margin-left: auto;
    flex: 0 0 auto;
    width: 16rem;
}
.box_default .box__title {
    max-width: 68%;
}
.box_default .box__header {
    margin-bottom: 1.5rem;
}
@media (min-width:1200px) {
    .box_default .box__header {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    .box_default .box__header_center {
        justify-content: center;
    }
}
.box_default .box__count {
    font-weight: 400;
    color: var(--c-text);
    font-size: 1rem;
    vertical-align: top;
}
@media (min-width:1200px) {
    .box_default .box__pagination {
        flex: 1 1 auto;
        margin-left: 1rem;
    }
}
@media (max-width:1199px) {
    .box_default .box__pagination {
        height: 2em;
        margin-bottom: -1.5rem;
    }
}
.box_default .box__controls {
    margin-left: 2rem;
    display: grid;
    grid-gap: 1rem;
    grid-auto-flow: column;
}
@media (max-width:1199px) {
    .box_default .box__controls {
        display: none;
    }
}
.box_landing {
    padding: calc(3rem * var(--editor-factor)) var(--spacing_content_x);
}
@media (max-width:767px) {
    .box_landing .box__header {
        margin-bottom: calc(1.5rem * var(--editor-factor));
    }
}
@media (min-width:768px) {
    .box_landing .box__header {
        margin-bottom: calc(2rem * var(--editor-factor));
    }
}
.box_landing .box__title {
    font-weight: bold;
    margin-top: 0;
    margin-bottom: 0;
}
@media (min-width:768px) {
    .box_landing .box__title {
        font-size: 200%;
    }
}
.box_popup {
    background-color: #fff;
    box-shadow: 0 3px 1rem -0.5rem rgba(0, 0, 0, 0.12), 0 1.5rem 1.5rem -1rem rgba(0, 0, 0, 0.25);
    width: 24rem;
    max-width: 100%;
}
@media (min-width:768px) {
    .box_popup {
        padding: 4rem;
    }
}
@media (max-width:767px) {
    .box_popup {
        padding: 3rem;
    }
}
.box_popup .box__header {
    margin-bottom: 2rem;
}
.box_popup .box__footer {
    margin-top: 2rem;
}
:root {
    --left-bar-width: 16rem;
}
@media (max-width:767px) {
    :root {
        --left-bar-width: 85vmin;
    }
}
.html_left-bar {
    overflow: hidden;
}
.left-bar {
    position: fixed;
    overflow: hidden;
    z-index: 15;
    bottom: 0;
    left: 0;
    top: 0;
    contain: paint layout;
}
@media (max-width:1199px) {
    .left-bar {
        display: none;
        z-index: 200;
        right: 0;
    }
}
.left-bar_in,
.left-bar_open,
.left-bar_out {
    display: block !important;
}
.left-bar__overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(222, 222, 222, 0.9);
    cursor: pointer;
}
@media (min-width:1200px) {
    .left-bar__overlay {
        display: none;
    }
}
@media (max-width:1199px) {
    .left-bar__overlay {
        opacity: 0;
    }
    .left-bar_in .left-bar__overlay {
        animation: fade-in 0.25s ease both;
    }
    .left-bar_open .left-bar__overlay {
        opacity: 1;
    }
    .left-bar_out .left-bar__overlay {
        animation: fade-out 0.25s ease both;
    }
}
.left-bar__box {
    width: var(--left-bar-width);
    background-color: #000;
    background-size: 100% auto;
    background-position: center bottom;
    background-repeat: no-repeat;
    height: 100%;
}
@media (max-width:1199px) {
    .left-bar__box {
        transform: translateX(-100%);
    }
    .left-bar_in .left-bar__box {
        animation: move-from-left 0.25s ease both;
    }
    .left-bar_open .left-bar__box {
        transform: translateX(0);
    }
    .left-bar_out .left-bar__box {
        animation: move-to-left 0.25s ease both;
    }
}
.left-bar__scroll {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background-color: rgba(0, 0, 0, 0.5);
}
@media (min-width:1200px) {
    .left-bar__scroll {
        width: calc(var(--left-bar-width)*1.2);
    }
}
@media (min-width:1200px) {
    .left-bar__scroll:hover {
        width: var(--left-bar-width);
    }
}
.left-bar__content {
    width: var(--left-bar-width);
}
.left-bar__content_loading {
    opacity: 0;
}
@media (min-width:768px) {
    .left-bar__content {
        min-height: 100%;
    }
}
@media (max-width:767px) {
    .left-bar__content {
        font-size: 1.2rem;
    }
}
.left-bar__grid {
    width: var(--left-bar-width);
    display: grid;
    grid-auto-flow: row;
    grid-auto-rows: auto;
    grid-template-rows: auto;
    grid-template-columns: 100%;
    min-height: 100%;
}
@media (max-width:767px) {
    .left-bar__grid {
        font-size: 1.2rem;
    }
}
.left-bar__item_logo {
    padding: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.left-bar__logo {
    display: block;
}
.left-bar__auth {
    margin-top: 1rem;
}
.left-bar__body {
    margin: 0 -2rem;
}
.left-bar__contacts {
    margin-top: 1.5rem;
}
.page {
    background-color: var(--c-bg_02);
    padding-top: 3rem;
    transition: transform 0.25s ease;
    z-index: 50;
    min-height: 100vh;
    box-shadow: -16px 0 16px -8px rgba(0, 0, 0, 0.25), -8px 0 8px -4px rgba(0, 0, 0, 0.25), 0 0 4px 0 rgba(0, 0, 0, 0.25);
    display: grid;
    grid-template-rows: 1fr auto;
    grid-auto-rows: auto;
}
@media (min-width:1200px) {
    .page {
        margin-left: var(--left-bar-width);
    }
}
@media (min-width:1728px) and (max-width:1919px) {
    .page {
        margin-right: var(--left-bar-width);
    }
}
@media (min-width:1920px) {
    .page {
        max-width: 1344px;
        margin-right: var(--left-bar-width);
    }
}
.page > * {
    min-width: 0;
}
@media (min-width:1200px) and (max-width:1727px) {
    .html_right-bar .page,
    .html_right-bar .top-bar {
        transform: translate3d(-16rem, 0, 0);
    }
}
.right-bar {
    position: fixed;
    overflow: hidden;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: 1920px;
}
@media (max-width:1727px) {
    .right-bar {
        display: none;
    }
}
@media (min-width:1200px) {
    .right-bar {
        z-index: 5;
    }
}
@media (max-width:1199px) {
    .right-bar {
        z-index: 100;
    }
}
.right-bar_in,
.right-bar_open,
.right-bar_out {
    display: block !important;
}
.right-bar__overlay {
    display: none;
    opacity: 0;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(222, 222, 222, 0.9);
    cursor: pointer;
}
.right-bar_in .right-bar__overlay {
    animation: fade-in 0.25s ease both;
    display: block;
}
.right-bar_open .right-bar__overlay {
    opacity: 1;
    display: block;
}
.right-bar_out .right-bar__overlay {
    animation: fade-out 0.25s ease both;
    display: block;
}
.right-bar__box {
    width: 16rem;
    background-color: var(--c-bg_03);
    height: 100%;
    margin-left: auto;
}
@media (max-width:1199px) {
    .right-bar__box {
        transform: translateX(-100%);
    }
    .right-bar_in .right-bar__box {
        animation: move-from-right 0.25s ease both;
    }
    .right-bar_open .right-bar__box {
        transform: translateX(0);
    }
    .right-bar_out .right-bar__box {
        animation: move-to-right 0.25s ease both;
    }
}
@media (min-width:1200px) and (max-width:1727px) {
    .right-bar__box {
        opacity: 0;
    }
    .right-bar_in .right-bar__box {
        animation: fade-in 0.25s ease both;
    }
    .right-bar_open .right-bar__box {
        opacity: 1;
    }
    .right-bar_out .right-bar__box {
        animation: fade-out 0.25s ease both;
    }
}
.right-bar__scroll {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}
@media (min-width:1200px) {
    .right-bar__scroll {
        width: 19.2rem;
    }
}
@media (min-width:1200px) {
    .right-bar__scroll:hover {
        width: 16rem;
    }
}
.right-bar__content {
    padding: 3rem 2rem;
    min-height: 100%;
    width: 16rem;
}
.right-bar__header {
    padding: 2rem;
}
.right-bar__logo {
    display: block;
    text-decoration: none;
    padding: 1rem;
    text-transform: uppercase;
    color: var(--c-header);
    font-size: 200%;
    font-weight: 500;
    letter-spacing: 0.2em;
}
@media (min-width:768px) {
    .right-bar__logo {
        display: none;
    }
}
.right-bar__auth {
    background-color: #000;
}
.section__count {
    font-size: 50%;
    color: #898989;
    vertical-align: top;
    display: inline-block;
    font-weight: 300;
}
.section_center {
    min-height: calc(100vh - 6rem);
    display: flex;
    align-items: center;
    justify-content: center;
}
.section__swiper {
    padding-bottom: 66%;
}
.section__bg {
    min-height: 50vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
@media (max-width:1199px) and (orientation: portrait) {
    .section__bg {
        min-height: 25vh;
    }
}
.section__bg h1 {
    flex: 1 1 auto;
}
.section__bg:before {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    background-color: #000;
    opacity: 0.5;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.section__bg._invert {
    background-color: #000;
}
.section_a .section__header,
.section_a .section__body,
.section_a .section__footer {
    padding: var(--spacing_content);
}
.section_a .section__container,
.section_a .section__content {
    height: 100%;
    color: var(--c-text);
    margin-left: auto;
    margin-right: auto;
}
.section_a .section__container_rows,
.section_a .section__content_rows {
    display: grid;
    min-width: 0;
    grid-auto-rows: auto;
    grid-gap: 3rem;
    justify-items: stretch;
}
.section_a .section__container_rows > *,
.section_a .section__content_rows > * {
    min-width: 0;
}
.section_a .section__header._invert {
    background-color: #111;
}
.section_a .section__controls {
    margin-top: 1rem;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    grid-gap: 1rem;
}
.section_a .section__actions {
    margin-top: -0.75rem;
    margin-bottom: -0.75rem;
}
.section_a .section__search {
    width: 16rem;
    margin-left: auto;
    margin-right: 1rem;
}
.section_a .section__nav {
    margin-top: 1rem;
}
.section_a .section__description {
    margin-top: 1.5rem;
}
.section_card {
    background-color: #fff;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
}
.section_category {
    padding: var(--spacing_content);
    background-position: bottom right;
    background-repeat: no-repeat;
    background-color: #fff;
    background-origin: border-box;
    border-bottom: 1px solid var(--c-border);
}
@media (max-width:767px) {
    .section_category {
        background-size: contain;
        min-height: 20vmin;
    }
}
@media (min-width:768px) and (max-width:1199px) {
    .section_category {
        background-size: contain;
        min-height: 13rem;
    }
}
@media (min-width:1200px) {
    .section_category {
        background-size: auto 100%;
        min-height: 13rem;
    }
}
.section_category .section__content {
    width: 70%;
}
.section_category .section__notice {
    margin-top: 1.5rem;
    font-size: 0.875em;
}
@media (max-width:767px) {
    .section_category .section__notice {
        display: none;
    }
}
.section_category .section__nav {
    margin-top: 1.5rem;
}
@media (max-width:767px) {
    .section_category .section__nav {
        display: none;
    }
}
.section_white {
    background-color: var(--c-bg_01);
    color: var(--c-text);
    background-image: linear-gradient(135deg, #222, rgba(33, 33, 33, 0));
}
.section_gray {
    background-color: var(--c-bg_03);
}
.section_gray_l {
    background-color: #0d0d0d;
}
.section_gray_d {
    background-color: var(--c-bg_04);
}
.section_shadow_inset {
    box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.12) inset, 0 2px 2px 0 rgba(0, 0, 0, 0.12) inset;
}
.section_dark {
    background-color: #e0e0e0;
}
.section_default .section__container {
    padding: var(--spacing_content);
}
.section_default .section__container_rows {
    display: grid;
    min-width: 0;
    grid-auto-rows: auto;
    grid-gap: 3rem;
    justify-items: stretch;
}
.section_default .section__container_rows > * {
    min-width: 0;
}
.section_default .section__content {
    height: 100%;
    margin-left: auto;
    margin-right: auto;
}
.section_default .section__content_rows {
    display: grid;
    min-width: 0;
    grid-auto-rows: auto;
    grid-gap: 3rem;
    justify-items: stretch;
}
.section_default .section__content_rows > * {
    min-width: 0;
}
.section_default .section__image {
    display: block;
    object-fit: cover;
    height: 50vmin;
    width: 100%;
}
@media (min-width:768px) {
    .section_default .section__image {
        min-height: 25rem;
    }
}
.section_default .section__header {
    margin-bottom: var(--gap_section);
}
.section_default .section__header_center {
    text-align: center;
}
.section_default .section__footer {
    margin-top: var(--gap_section);
}
.section_default .section__controls {
    margin-top: 1rem;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    grid-gap: 1rem;
}
.section_default .section__actions {
    margin-top: -0.75rem;
    margin-bottom: -0.75rem;
}
.section_default .section__search {
    width: 16rem;
    margin-left: auto;
    margin-right: 1rem;
}
.section_default .section__nav {
    margin-top: 0.75rem;
}
@media (max-width:1199px) {
    .section_default .section__nav {
        margin-left: var(--offset_content_x);
        margin-right: var(--offset_content_x);
    }
}
@media (min-width:1200px) {
    .section_default .section__nav_mob {
        display: none;
    }
}
.section_default .section__description {
    margin-top: 1.5rem;
}
.section_default .section__parent {
    background-image: linear-gradient(to right, steelblue, #800080);
    color: #fff;
    padding: 0 .2em;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.section_landing {
    background-color: #0d0d0d;
    --padding-y: 3em;
    --padding-x: var(--spacing_content_x);
    --gap: 2em;
    --gap-p: 1.5em;
}
@media (min-width:768px) {
    .section_landing {
        --padding-y: 4em;
        --gap: 3em;
    }
}
.section_landing .mt {
    margin-top: var(--gap-p);
}
.section_landing .section__container {
    padding: var(--padding-y) var(--padding-x);
}
.section_landing .section__content {
    height: 100%;
    margin-left: auto;
    margin-right: auto;
}
.section_landing .section__content_rows {
    display: grid;
    min-width: 0;
    grid-auto-rows: auto;
    grid-gap: 3rem;
    justify-items: stretch;
}
.section_landing .section__content_rows > * {
    min-width: 0;
}
.section_landing .section__image {
    display: block;
    object-fit: cover;
    height: 50vmin;
    width: 100%;
}
@media (min-width:768px) {
    .section_landing .section__image {
        min-height: 25rem;
    }
}
.section_landing .section__header {
    margin-bottom: var(--gap);
}
.section_landing .section__header_center {
    text-align: center;
}
.section_landing .section__footer {
    margin-top: var(--gap);
}
.section_landing .section__controls {
    margin-top: 1rem;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    grid-gap: 1rem;
}
.section_landing .section__actions {
    margin-top: -0.75rem;
    margin-bottom: -0.75rem;
}
.section_landing .section__search {
    width: 16rem;
    margin-left: auto;
    margin-right: 1rem;
}
.section_landing .section__nav {
    margin-top: 0.75rem;
}
@media (max-width:1199px) {
    .section_landing .section__nav {
        margin-left: var(--offset_content_x);
        margin-right: var(--offset_content_x);
    }
}
@media (min-width:1200px) {
    .section_landing .section__nav_mob {
        display: none;
    }
}
.section_landing .section__description {
    margin-top: 1.5rem;
}
.section_landing .section__parent {
    background-image: linear-gradient(to right, steelblue, #800080);
    color: #fff;
    padding: 0 .2em;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.section_landing .section__item + .section__item {
    margin-top: var(--gap);
}
.section_map {
    height: 50vh;
    background-color: #999;
}
.top-bar {
    position: fixed;
    z-index: 100;
    top: 0;
    right: 0;
    height: 3rem;
    background-color: #0d0d0d;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 0 0 rgba(0, 0, 0, 0.12);
    padding-left: var(--spacing_content_x);
    padding-right: var(--spacing_content_x);
    will-change: transform;
    transition: transform 0.25s ease;
}
@media (min-width:1200px) {
    .top-bar {
        left: var(--left-bar-width);
    }
}
@media (max-width:1199px) {
    .top-bar {
        left: 0;
    }
}
@media (min-width:1728px) and (max-width:1919px) {
    .top-bar {
        margin-right: var(--left-bar-width);
    }
}
@media (min-width:1920px) {
    .top-bar {
        max-width: 1344px;
        margin-right: var(--left-bar-width);
    }
}
@media (max-width:767px) {
    .top-bar {
        padding: 0;
    }
}
@media (min-width:1200px) {
    .section-controls {
        display: flex;
        justify-content: space-between;
    }
}
:root {
    --title-lenght: 50;
}
.section-cover {
    display: flex;
    align-items: center;
    justify-content: center;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
.section-cover:before {
    content: '';
    display: block;
    position: absolute;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.section-cover__title {
    text-align: center;
}
@media (min-width:768px) {
    .section-cover__title {
        font-size: calc(200% - var(--title-lenght)*1.5);
    }
}
.section-cover_01:before {
    background: linear-gradient(to bottom, hsla(var(--hsl-bg_01), .5) 25%, hsl(var(--hsl-bg_01)));
}
.section-cover_02:before {
    background: linear-gradient(to bottom, hsla(var(--hsl-bg_02), .5) 25%, hsl(var(--hsl-bg_02)));
}
.section-cover_03:before {
    background: linear-gradient(to bottom, hsla(var(--hsl-bg_03), .5) 25%, hsl(var(--hsl-bg_03)));
}
.section-cover_04:before {
    background: linear-gradient(to bottom, hsla(var(--hsl-bg_04), .5) 25%, hsl(var(--hsl-bg_04)));
}
.section-cover_m {
    min-height: 50vh;
}
@media (max-width:1199px) and (orientation: portrait) {
    .section-cover_m {
        min-height: 25vh;
    }
}

.img-header__logo {
    text-align: center;
}

.img-header__logo img {
    width: 50%;
    height: auto;
    display: inline-block;
}

.lang-switch button {
    border: none;
    color: white;
    background: none;
    font-family: "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", sans-serif;
    font-size: 20px;
    margin-right: 5px;
    cursor: pointer;
    opacity: 0.6;
    transition: 0.2s;
}

.lang-switch button.active {
    border: none;
    color: red;
    background-color: transparent;
    opacity: 1;
    font-weight: bold;
    border-bottom: 2px solid #000;
}




.language__link{
    color: darkred;
    font-weight: 600;
    font-size: 110%;
    text-transform: uppercase;
    text-decoration: none;
}


.fade { opacity: 0; transition: .3s; }
.lang-switch button {

    font-size: 20px;
    margin-right: 5px;
    cursor: pointer;
}

.carousel {
    margin: 0 auto;
    padding: 20px 0;
    max-width: 700px;
    overflow: hidden;
    height: 250px;
    display: flex;
    flex-direction: column;
    &:hover .group {
        animation-play-state: paused;
    }
}

.card {
    width: 150px;
    color: white;
    border-radius: 24px;
    box-shadow: rgba(0, 0, 0, 10%) 5px 5px 20px 0;
    padding: 20px;
    font-size: xx-large;
    justify-content: center;
    align-items: center;
    min-height: 100px;
    display: flex;
}

.group {
    will-change: transform;
    animation: scroll-vertical 15s linear infinite;
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-bottom: 20px;
}

@keyframes scroll-vertical {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(-100%);
    }
}





.floating-select {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 9999;
    font-family: Arial, sans-serif;
}

.custom-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;
    padding: 10px 40px 10px 12px;
    border: 1px solid #ccc;
    border-radius: 8px;
    background-color: #fff;
    font-size: 16px;
    cursor: pointer;
    transition: border 0.2s;
}

.custom-select:hover {
    border-color: #007bff;
}

.floating-select::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 12px;
    width: 0;
    height: 0;
    pointer-events: none;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #333;
    transform: translateY(-50%);
}

@media (max-width: 600px) {
    .floating-select {
        bottom: 15px;
        right: 15px;
    }

    .custom-select {
        font-size: 16px;
        padding: 8px 36px 8px 10px;
    }
}


#select-container {
    z-index: 999999;
    position: fixed;
    width: 50px;
    height: 40px;
    background: #FFFFFF;
    bottom: 50px;
    right: 5px;
    transform: translateX(-50%);
    border-radius: 10px;
    border: 0.5px solid rgba(202, 219, 226, 0.4);
    box-shadow: 0px 3px 6px rgba(79, 104, 113, 0.2);
    overflow: hidden;
    transition: height 0.2s ease-in-out, border-radius 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}
#select-container:hover {
    height: 116px;
    /* Can't use height: auto & transition effect */
    border-radius: 20px;
    box-shadow: 0px 7px 10px rgba(79, 104, 113, 0.3);
}
#select-container ul {
    margin: revert;
    padding: revert;
    list-style-type: none;
    position: relative;
}
#select-container ul li {
    margin: revert;
    padding: revert;
    opacity: 1;
    transition: opacity 0.2s ease-in-out;
}
#select-container ul li:first-child img {
    cursor: default;
}
#select-container ul li img {
    margin: revert;
    padding: revert;
    max-width: revert;
    width: 25px;
    height: 25px;
    display: block !important;
    left: 50%;
    transform: translate(-103%, -40%);
    margin-bottom: 8px !important;
    border-radius: 50%;
    border: 2px solid #FFFFFF;
    box-shadow: 0px 0px 6px rgba(79, 104, 113, 0.3);
    cursor: pointer;
    transition: all 0.1s ease-in-out;
}
#select-container ul li img:hover {
    box-shadow: 0px 5px 10px rgba(79, 104, 113, 0.3);
    transform: translate(-103%, -40%) scale(1.08);
}

/* TOOLTIP STYLES FROM THIS PEN https://codepen.io/tutsplus/pen/WROvdG */
[tooltip] {
    position: relative;
    /* opinion 1 */
    font-weight: bold;
}

/* Applies to all tooltips */
[tooltip]::before,
[tooltip]::after {
    text-transform: none;
    /* opinion 2 */
    font-size: 12px;
    /* opinion 3 */
    line-height: 1;
    user-select: none;
    pointer-events: none;
    position: absolute;
    display: none;
    opacity: 0;
}

[tooltip]::before {
    content: "";
    border: 5px solid transparent;
    /* opinion 4 */
    z-index: 1001;
    /* absurdity 1 */
}

[tooltip]::after {
    content: attr(tooltip);
    /* magic! */
    /* most of the rest of this is opinion */
    font-family: Helvetica, sans-serif;
    text-align: center;
    /*
      Let the content set the size of the tooltips
      but this will also keep them from being obnoxious
      */
    width: 40px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 3px 0px;
    border-radius: 0.3ch;
    box-shadow: 0 1em 2em -0.5em rgba(0, 0, 0, 0.35);
    background: #465663;
    color: #fff;
    z-index: 1000;
    /* absurdity 2 */
}

/* Make the tooltips respond to hover */
[tooltip]:hover::before,
[tooltip]:hover::after {
    display: block;
}

/* don't show empty tooltips */
[tooltip=""]::before,
[tooltip=""]::after {
    display: none !important;
}

/* FLOW: UP */
[tooltip]:not([flow])::before,
[tooltip][flow^=up]::before {
    bottom: 50%;
    border-bottom-width: 0;
    border-top-color: #465663;
}

[tooltip]:not([flow])::after,
[tooltip][flow^=up]::after {
    bottom: calc(50% + 5px);
}

[tooltip]:not([flow])::before,
[tooltip]:not([flow])::after,
[tooltip][flow^=up]::before {
    left: -15.5px;
    bottom: 40px;
    transform: translate(-50%, -0.5em);
}

[tooltip][flow^=up]::after {
    left: -15.5px;
    bottom: 45px;
    transform: translate(-50%, -0.5em);
}

/* FLOW: DOWN */
[tooltip][flow^=down]::before {
    top: 70%;
    border-top-width: 0;
    border-bottom-color: #465663;
}

[tooltip][flow^=down]::after {
    top: calc(70% + 5px);
}

[tooltip][flow^=down]::before,
[tooltip][flow^=down]::after {
    left: -15.5px;
    transform: translate(-50%, 0.5em);
}

@keyframes tooltips-vert {
    to {
        opacity: 0.9;
        transform: translate(-50%, 0);
    }
}
/* FX All The Things */
[tooltip]:not([flow]):hover::before,
[tooltip]:not([flow]):hover::after,
[tooltip][flow^=up]:hover::before,
[tooltip][flow^=up]:hover::after,
[tooltip][flow^=down]:hover::before,
[tooltip][flow^=down]:hover::after {
    animation: tooltips-vert 300ms ease-out forwards;
}


@media (max-width: 768px) {
    #select-container {
        transform: translateX(-10%);
        right: 10px;
        top: 15px;

    }
}


