/* <editor-fold desc="MAIN | Design tokens"> */
:root {
    /* Colors — sourced from the Figma UI kit (ZwKtVFbrpHU3xKcuFM4Mfg) */
    --color-white: #ffffff;
    --color-black: #000000;
    --color-black-100: #221f1f;
    --color-black-80: #4e4c4c;
    --color-black-60: #7a7979;
    --color-black-40: #a7a5a5;
    --color-black-20: #d3d2d2;
    --color-black-10: #e9e9e9;
    --color-grey-20: #f6f8fa;
    --color-grey-40: #ebedf2;
    --color-grey-60: #cad3da;
    --color-grey-100: #f5f5f5;
    --color-grey-200: #eeeeee;
    --color-grey-300: #d2d2d2;
    --color-grey-400: #707070;
    --color-grey-500: #9a9a9a;
    --color-grey-border: #d1d5dc;
    --color-green-100: #06ba52;
    --color-green-80: #38c875;
    --color-green-60: #6ad697;
    --color-green-10: #e7f9ee;
    --color-green-20-light: #effeee;
    --color-red-700: #ef282e;
    --color-link: #00a046;
    --color-link-active: #19cb5f;

    /* Typography */
    --font-family-base: "Rozetka306Web", sans-serif;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-bold: 700;
    --font-weight-black: 900;

    /* a11y-toolbar font-size scale multiplier — overridden per html.a11y-font-* class
       in a11y-toolbar.css. Wrapping every font-size/line-height token in this calc()
       keeps each rule's original size:line-height ratio exactly (both scale together),
       instead of needing a hand-picked lookup table per step. 1 = no-op, zero visual
       change at default. */
    --a11y-font-scale: 1;

    --font-size-10: calc(10px * var(--a11y-font-scale));
    --font-size-12: calc(12px * var(--a11y-font-scale));
    --font-size-14: calc(14px * var(--a11y-font-scale));
    --font-size-16: calc(16px * var(--a11y-font-scale));
    --font-size-18: calc(18px * var(--a11y-font-scale));
    --font-size-20: calc(20px * var(--a11y-font-scale));
    --font-size-24: calc(24px * var(--a11y-font-scale));
    --font-size-28: calc(28px * var(--a11y-font-scale));
    --font-size-32: calc(32px * var(--a11y-font-scale));
    --font-size-40: calc(40px * var(--a11y-font-scale));

    --line-height-12: calc(12px * var(--a11y-font-scale));
    --line-height-16: calc(16px * var(--a11y-font-scale));
    --line-height-18: calc(18px * var(--a11y-font-scale));
    --line-height-20: calc(20px * var(--a11y-font-scale));
    --line-height-22: calc(22px * var(--a11y-font-scale));
    --line-height-24: calc(24px * var(--a11y-font-scale));
    --line-height-26: calc(26px * var(--a11y-font-scale));
    --line-height-30: calc(30px * var(--a11y-font-scale));
    --line-height-34: calc(34px * var(--a11y-font-scale));
    --line-height-38: calc(38px * var(--a11y-font-scale));
    --line-height-46: calc(46px * var(--a11y-font-scale));

    /* Radius */
    --radius-4: 4px;
    --radius-6: 6px;
    --radius-8: 8px;
    --radius-10: 10px;
    --radius-12: 12px;
    --radius-16: 16px;
    --radius-24: 24px;
    --radius-40: 40px;
    --radius-100: 100px;
    --radius-full: 50%;
}
/* </editor-fold> */
/* <editor-fold desc="MAIN | Fonts"> */
@font-face {
    font-family: "Rozetka306Web";
    src: url("../fonts/Rozetka306web-ThinCompressed.otf") format("opentype");
    font-weight: 100;
}
@font-face {
    font-family: "Rozetka306Web";
    src: url("../fonts/Rozetka306web-Light.otf") format("opentype");
    font-weight: 300;
}
@font-face {
    font-family: "Rozetka306Web";
    src: url("../fonts/Rozetka306web-Regular.otf") format("opentype");
    font-weight: 400;
}
@font-face {
    font-family: "Rozetka306Web";
    src: url("../fonts/Rozetka306web-Medium.otf") format("opentype");
    font-weight: 500;
}
@font-face {
    font-family: "Rozetka306Web";
    src: url("../fonts/Rozetka306web-Bold.otf") format("opentype");
    font-weight: 700;
}
@font-face {
    font-family: "Rozetka306Web";
    src: url("../fonts/Rozetka306web-Black.otf") format("opentype");
    font-weight: 900;
}
/* </editor-fold> */
/* <editor-fold desc="MAIN | Base tags styles"> */
* {
    font-family: 'Rozetka306Web', sans-serif;
    font-weight: inherit;
    border: 0;
    vertical-align: baseline;
    cursor: default;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
h1, h2, h3, h4, h5, h6 { margin: 0; }
a, a * {
    color: var(--color-green-100);
    text-decoration: none;
    cursor: pointer;
}
a:hover { color: var(--color-green-80); }
a:active { color: var(--color-green-80); }
a:focus-visible { outline: 3px solid var(--color-green-100); }
a[href^="mailto:"] { text-decoration: underline; }
a.link-black, a.link-black * { color: var(--color-black-100); }
a.link-black:hover, a.link-black:hover * { color: var(--color-black-60); }
a.link-black:active, a.link-black:active * { color: var(--color-black-80); }
input, textarea {
    outline: none;
    cursor: text;
}
textarea { resize: none; }
strong, b { font-weight: var(--font-weight-bold); }
em { font-style: italic; }
ul {
    margin: 0;
    padding: 0;
}
p { margin: 0; }
svg {
    pointer-events: none;
}
img {
    display: block;
    width: 100%;
    height: auto;
}
img.lazy {
    opacity: 0;
    transition: opacity .3s;
}
img.lazy.loaded { opacity: 1; }
.lazy-svg {
    opacity: 0;
    transition: opacity .5s;
}
.lazy-svg.loaded { opacity: 1; }
.lazy-svg svg { display: block; }
/* </editor-fold> */
/* <editor-fold desc="MAIN | Base layout"> */
html {
    display: block;
    height: 100%;
    font-size: var(--font-size-10);
    line-height: var(--line-height-12);
}
body {
    display: flex;
    position: relative;
    margin: 0;
    height: 100%;
    flex-direction: column;
    color: var(--color-black-100);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-20);
}
main {
    position: relative;
    flex: 1 0 auto;
    margin-top: 85px;
}

.container {
    --container-px: 0px;
    --container-max-w: 1280px;
    position: relative;
    max-width: var(--container-max-w);
    width: 100%;
    margin: 0 auto;
}
.single-page {
    padding-top: 40px;
    padding-bottom: 60px;
}

@media (max-width: 1300px) {
    /*.container { --container-max-w: 1280px; max-width: var(--container-max-w); padding: 0 32px; }*/
    .container { padding: 0 32px; }
    .container.-adaptive-1300 { max-width: 100%; }
    .container.-adaptive-1300 .scrlbar { overflow-x: auto; }
    .container.-adaptive-1300 .alignit {
        padding-left: calc((100% - 960px) / 2);
        padding-right: calc((100% - 960px) / 2);
    }
}
@media (max-width: 992px) {
    /*.container { --container-max-w: 960px; max-width: var(--container-max-w); padding: 0 16px; }*/

    .container.-adaptive-992 { max-width: 100%; }
    .container.-adaptive-992 .scrlbar { overflow-x: auto; }
    .container.-adaptive-992 .alignit,
    .container.-adaptive-1300 .alignit {
        padding-left: calc((100% - 720px) / 2);
        padding-right: calc((100% - 720px) / 2);
    }

    main { margin-top: 57px; }
}
@media (max-width: 768px) {
    /*.container { --container-max-w: 540px; max-width: var(--container-max-w); }*/
    .container.-adaptive-992 .alignit,
    .container.-adaptive-1300 .alignit {
        padding-left: calc((100% - 540px) / 2);
        padding-right: calc((100% - 540px) / 2);
    }

    .single-page {
        padding-top: 20px;
        padding-bottom: 40px;
    }
}
@media (max-width: 576px) {
    .container {
        --container-px: 16px;
        padding-left: var(--container-px);
        padding-right: var(--container-px);
    }
    .container.-adaptive-992,
    .container.-adaptive-1300 {
        padding-left: 0;
        padding-right: 0;
    }
    .container.-adaptive-992 .alignit,
    .container.-adaptive-1300 .alignit {
        padding-left: 15px;
        padding-right: 15px;
    }
}
/* </editor-fold> */
/* <editor-fold desc="MAIN | Titles & Regular text sizes"> */
.t64 {
    font-size: 64px;
    font-weight: var(--font-weight-black);
    line-height: 1.15625;
}
.t50 {
    font-size: 50px;
    font-weight: var(--font-weight-black);
    line-height: 1.2;
}
.t48 {
    font-size: 48px;
    font-weight: var(--font-weight-bold);
    line-height: 1.166667;
}
.t44 {
    font-size: 44px;
    font-weight: var(--font-weight-black);
    line-height: 1.2275;
}
.t40 {
    font-size: var(--font-size-40);
    font-weight: var(--font-weight-black);
    line-height: var(--line-height-46);
}
.t38 {
    font-size: 38px;
    font-weight: var(--font-weight-black);
    line-height: 1.2634;
}
.t36 {
    font-size: 36px;
    font-weight: var(--font-weight-bold);
    line-height: 1.222223;
}
.t32 {
    font-size: var(--font-size-32);
    font-weight: var(--font-weight-black);
    line-height: var(--line-height-38);
}
.t30 {
    font-size: 30px;
    font-weight: var(--font-weight-black);
    line-height: 1.3335;
}
.t28 {
    font-size: var(--font-size-28);
    font-weight: var(--font-weight-black);
    line-height: var(--line-height-34);
}
.t26 {
    font-size: 26px;
    font-weight: var(--font-weight-black);
    line-height: 1.38;
}
.t25 {
    font-size: 25px;
    font-weight: var(--font-weight-black);
    line-height: 1.4;
}
.t24 {
    font-size: var(--font-size-24);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-30);
}
.t24b {
    font-size: var(--font-size-24);
    font-weight: var(--font-weight-black);
    line-height: var(--line-height-30);
}
.t24r {
    font-size: var(--font-size-24);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-30);
}
.t22 {
    font-size: 22px;
    font-weight: var(--font-weight-black);
    line-height: 1.364;
}
.t20 {
    font-size: var(--font-size-20);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-26);
}
.t20b {
    font-size: var(--font-size-20);
    font-weight: var(--font-weight-black);
    line-height: var(--line-height-26);
}
.t20r {
    font-size: var(--font-size-20);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-26);
}
.t20r b,
.t20r strong {
    font-weight: var(--font-weight-black);
}
.t18 {
    font-size: var(--font-size-18);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-24);
}
.t18b {
    font-size: var(--font-size-18);
    font-weight: var(--font-weight-black);
    line-height: var(--line-height-24);
}
.t18r {
    font-size: var(--font-size-18);
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-24);
}
.t18r b,
.t18r strong {
    font-weight: var(--font-weight-black);
}
.t16 {
    font-size: var(--font-size-16);
    line-height: 1.625;
}
.t16b {
    font-weight: var(--font-weight-bold);
}
.t15 {
    font-size: 15px;
    line-height: 1.334;
}
.t14 {
    font-size: var(--font-size-14);
    line-height: var(--line-height-20);
}
.t13 {
    font-size: 13px;
    line-height: 1.539;
}
.t12 {
    font-size: var(--font-size-12);
    line-height: var(--line-height-18);
}
.t10 {
    font-size: var(--font-size-10);
    line-height: var(--line-height-12);
}

/* LEGACY ==> */
.title-1 {
    font-size: var(--font-size-40);
    font-weight: var(--font-weight-black);
    line-height: var(--line-height-46);
}
.title-2 {
    font-size: var(--font-size-32);
    font-weight: var(--font-weight-black);
    line-height: var(--line-height-38);
}
.body-1 {
    font-size: var(--font-size-20);
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-26);
}
.body-2 {
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-22);
}
/* <== LEGACY */
.title-1,
.title-2,
.t50,
.t44,
.t40,
.t38,
.t32,
.t28,
.t25,
.t24,
.t20,
.t20b,
.t18b {
    color: var(--color-black-100);
}
.article-content h1 {
    font-size: var(--font-size-32);
    font-weight: var(--font-weight-black);
    line-height: var(--line-height-38);
}
.article-content h2,
.article-content h3,
.article-content h4,
.article-content h5,
.article-content h6 {
    font-size: var(--font-size-18);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-24);
}

@media (max-width: 992px) {
    .t50 { font-size: 42px; }
    .t48 { font-size: var(--font-size-40); }
    .t44 { font-size: var(--font-size-32); }
    .t40 { font-size: var(--font-size-32); }
    .t38 { font-size: 30px; }
    .t32, .article-content h1 { font-size: var(--font-size-28); }
    .t30 { font-size: var(--font-size-28); }
    .t28 { font-size: var(--font-size-24); }
    .t26 { font-size: 22px; }
    .t25 { font-size: 22px; }
    .t24, .t24r, .t24b { font-size: var(--font-size-20); }
    .t20, .t20r { font-size: var(--font-size-18); }

    .title-1 { font-size: 34px; }
    .title-2 { font-size: var(--font-size-28); }
    .body-1 { font-size: var(--font-size-18); }
}
@media (max-width: 576px) {
    .t50 { font-size: 36px; }
    .t48 { font-size: 34px; }
    .t44 { font-size: 26px; }
    .t40 { font-size: 26px; }
    .t38 { font-size: 26px; }
    .t32, .article-content h1 { font-size: var(--font-size-24); }
    .t30 { font-size: var(--font-size-24); }
    .t28 { font-size: var(--font-size-20); }
    .t26 { font-size: var(--font-size-16); }
    .t18,
    .t18r,
    .article-content h2,
    .article-content h3,
    .article-content h4,
    .article-content h5,
    .article-content h6 {
        font-size: var(--font-size-16);
    }

    .title-1 {
        font-size: 30px;
        line-height: var(--line-height-38) !important;
    }
    .title-2 {
        font-size: 26px;
        line-height: 32px !important;
    }
}
/* </editor-fold> */
/* <editor-fold desc="MAIN | Content block base styles"> */
.alignleft {
    float: left;
    margin: 0 15px 28px 0;
}
.alignright {
    float: right;
    margin: 0 0 28px 15px;
}
.aligncenter {
    display: block;
    margin: 0 auto 28px;
}
.regular-page .article-content {
    padding-top: 24px;
    line-height: 1.5;
}
.article-content { color: var(--color-black-100); }
.article-content h1,
.article-content h2,
.article-content h3,
.article-content h4,
.article-content h5,
.article-content h6 {
    margin-bottom: 20px;
}
.article-content p { margin-bottom: 24px; }
.article-content p:last-child { margin-bottom: 0; }
.article-content h2 + ul,
.article-content h2 + ol,
.article-content h3 + ul,
.article-content h3 + ol,
.article-content h4 + ul,
.article-content h4 + ol,
.article-content h5 + ul,
.article-content h5 + ol,
.article-content h6 + ul,
.article-content h6 + ol {
    margin-top: -8px;
}
.article-content ul,
.article-content ol {
    margin: 0 0 24px 0;
    padding: 0 0 0 24px;
}
.article-content ul:last-child,
.article-content ol:last-child {
    margin-bottom: 0;
}
.article-content ul li:not(:last-child),
.article-content ol li:not(:last-child) {
    margin-bottom: 8px;
}
.article-content a {
    /*color: inherit;*/
    font-weight: var(--font-weight-bold);
    text-decoration: underline;
    word-break: break-word;
}
.article-content img { max-width: max-content; }
.centered {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.article-content iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
}

span.nowrap { white-space: nowrap; }
.mt-8 { margin-top: 8px; }
.mt-16 { margin-top: 16px; }
.mt-32 { margin-top: 32px; }
/* </editor-fold> */
/* <editor-fold desc="MAIN | Admin bar"> */
body.admin-bar {
    height: calc(100% - 32px);
    margin-top: 32px;
}
@media (max-width: 992px) {
    body.admin-bar {
        /*height: calc(100% - 46px);*/
        /*margin-top: 46px;*/
        margin-top: 0;
    }
}
@media (max-width: 600px) { html #wpadminbar { top: -46px; } }
/* </editor-fold> */
/* <editor-fold desc="MAIN | Buttons"> */
.btn {
    display: inline-block;
    padding: 7px 15px;
    background: var(--color-green-100);
    color: var(--color-white);
    border: 1px solid var(--color-green-100);
    border-radius: var(--radius-6);
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-22);
    text-align: center;
    transition: background-color 0.3s;
    cursor: pointer;
    --btn-pulse-color: #06BA52;
}
.btn:hover {
    background: var(--color-green-60);
    border-color: var(--color-green-60);
    color: var(--color-white);
}
.btn:active {
    background: var(--color-green-80);
    border-color: var(--color-green-80);
    color: var(--color-white);
}

.btn-black {
    color: var(--color-white);
    background: var(--color-black-100);
    border-color: var(--color-black-100);
    --btn-pulse-color: var(--color-black-100);
}
.btn-black:hover {
    background: var(--color-black-60);
    border-color: var(--color-black-60);
    color: var(--color-white);
}
.btn-black:active {
    background: var(--color-black-80);
    border-color: var(--color-black-80);
    color: var(--color-white);
}
.btn-black.btn-border {
    background: rgba(255, 255, 255, 0.50);
    color: var(--color-black-100);
}
.btn-black.btn-border:hover {
    margin: -1px;
    background: #fafafa;
    border-width: 2px;
}
.btn-black.btn-border:active {
    margin: -1px;
    background: var(--color-white);
    border-width: 2px;
}

.btn-white {
    background: var(--color-white);
    color: var(--color-black-100);
    border-color: var(--color-black-80);
    font-size: var(--font-size-18);
    --btn-pulse-color: var(--color-black-80);
}
.btn-white:hover {
    background: var(--color-black-10);
    border-color: var(--color-black-100);
    color: var(--color-black-100);
}
.btn-white:active {
    background: var(--color-black-20);
    border-color: var(--color-black-100);
    color: var(--color-black-100);
}

.btn-arrow { position: relative; }
.btn-arrow:after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 10px;
    margin-bottom: -2px;
    background: url(../images/arrow-right.svg) center center no-repeat;
    filter: invert(1) contrast(2);
}
.btn-white.btn-arrow:after { filter: none; }

.btn-transparent {
    color: var(--color-black-100);
    background: transparent;
    border-color: transparent;
}
.btn-transparent:hover {
    border-color: transparent;
    background: var(--color-black-10);
    color: var(--color-black-100);
}
.btn-transparent:active {
    border-color: transparent;
    background: var(--color-black-20);
    color: var(--color-black-100);
}

.btn-link-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--font-size-18);
}
.btn-link-icon:after {
    content: "";
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    margin-left: 8px;
    background: url(../images/icons/icon-link-open.svg) center center no-repeat;
    background-size: contain;
}

.btn-border {
    background: transparent;
    border-color: var(--color-white);
    transition: border-color .3s;
}
.btn-border:hover { background: transparent; }

.btn.-bigger {
    font-size: var(--font-size-18) !important;
    line-height: var(--line-height-24) !important;
    padding: 13px 15px;
    min-width: 260px;
}
@media (max-width: 768px) {
    .btn.-bigger {
        max-width: 344px;
        width: 100%;
    }
}

.btn.-pulse {
    position: relative;
}
.btn.-pulse::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    box-shadow: 0 0 0 0 var(--btn-pulse-color, currentColor);
    opacity: .55;
    animation: btn-pulse 2.2s cubic-bezier(.4, 0, .6, 1) infinite;
    pointer-events: none;
}
@keyframes btn-pulse {
    0%   { box-shadow: 0 0 0 0 var(--btn-pulse-color, currentColor); opacity: .55; }
    70%  { box-shadow: 0 0 0 14px var(--btn-pulse-color, currentColor); opacity: 0; }
    100% { box-shadow: 0 0 0 0 var(--btn-pulse-color, currentColor); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
    .btn.-pulse::after { animation: none; }
}
/* </editor-fold> */
/* <editor-fold desc="MAIN | Inputs"> */
input[type=text],
input[type=tel],
input[type=email],
input[type=date],
input[type=url],
textarea {
    position: relative;
    width: 100%;
    padding: 11px 12px;
    background: var(--color-white);
    color: var(--color-black-100);
    border: 1px solid var(--color-black-10);
    border-radius: var(--radius-8);
    font-size: var(--font-size-16);
    line-height: var(--line-height-22);
}
input[type=text]::placeholder,
input[type=tel]::placeholder,
input[type=email]::placeholder,
input[type=date]::placeholder,
input[type=url]::placeholder,
textarea::placeholder {
    color: var(--color-black-60);
}
input[type=text]:focus,
input[type=tel]:focus,
input[type=email]:focus,
input[type=url]:focus,
textarea:focus {
    border-color: var(--color-link);
}
input.error,
textarea.error {
    border-color: var(--color-red-700);
}

.radio label {
    margin-left: 12px;
    color: var(--color-black-100);
    font-size: var(--font-size-16);
    line-height: var(--line-height-22);
    cursor: pointer;
}

input[type=radio] {
    position: relative;
    display: inline-block;
    width: 16px;
    height: 16px;
    margin: 0;
    background: var(--color-white);
    color: #05b04d;
    border: 1px solid var(--color-grey-500);
    border-radius: var(--radius-full);
    vertical-align: middle;
    line-height: 0;
    text-align: center;
    clear: none;
    cursor: pointer;
    outline: 0;
    -webkit-appearance: none;
}
input[type=radio]:focus-visible { outline: 3px solid var(--color-green-100); }
input[type=radio]:checked { border-color: var(--color-green-100); }
input[type=radio]:checked:before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    background: var(--color-link);
    border: none;
    border-radius: var(--radius-full);
    transform: translate(-50%, -50%);
}
.input-wrapper.radio.error input[type=radio] { border-color: var(--color-red-700); }

input[type=checkbox] {
    display: inline-block;
    position: relative;
    width: 16px;
    height: 16px;
    margin: 0;
    background: var(--color-white);
    color: var(--color-black-100);
    border: 1px solid var(--color-grey-500);
    border-radius: 2px;
    line-height: 0;
    text-align: center;
    clear: none;
    cursor: pointer;
    outline: 0;
    -webkit-appearance: none;
}
input[type=checkbox]:checked {
    background: var(--color-black-100);
    border-color: var(--color-black-100);
}
input[type=checkbox]:checked:before {
    content: "";
    display: block;
    position: absolute;
    top: 40%;
    left: 50%;
    width: 4px;
    height: 8px;
    border-width: 0 2px 2px 0;
    border-style: solid;
    border-color: var(--color-white);
    transform: translate(-50%, -50%) rotate(45deg);
    cursor: pointer;
}

input[type=button].submit-btn { cursor: pointer; }
input[type=button].submit-btn:focus-visible { outline: 3px solid var(--color-green-100); }

fieldset {
    margin: 0;
    padding: 0;
}
fieldset legend {
    display: block;
    margin: 0;
    padding: 0;
    font-size: 0;
    height: 0;
    opacity: 0;
}

form .label-hidden {
    display: inline-block;
    height: 0;
    font-size: 0;
    opacity: 0;
}
/* </editor-fold> */
/* <editor-fold desc="MAIN | Inputs RZ-styled"> */
.input-rz { position: relative; }
.input-rz input,
.input-rz textarea {
    outline:none;
}
.input-rz span.placeholder {
    position: absolute;
    display: flex;
    align-items: center;
    top: 0;
    left: 9px;
    margin: 13px 0;
    padding: 0 4px;
    color:  var(--color-black-60);
    font-size: var(--font-size-16);
    transition: all 0.2s;
    transform-origin: 0 0;
    pointer-events: none;
}
.input-rz span.placeholder:before {
    content: "";
    position: absolute;
    top: 9px;
    left: 0;
    right: 0;
    height: 4px;
    background: var(--color-white);
    z-index: -1;
}
.input-rz span.placeholder span.red { color: var(--color-red-700) !important; }
.input-rz.-input-ready span.placeholder { transform: scale(0.75) translateY(-28px); }
.input-rz.-input-ready input:focus + span.placeholder,
.input-rz textarea:focus + span.placeholder {
    color: var(--color-link);
}
.input-rz span.icon {
    position: absolute;
    display: none;
    top: 12px;
    right: 12px;
    width: 24px;
    height: 24px;
    background: url(../images/input-error.svg) center center no-repeat;
}
.input-rz input.error,
.input-rz textarea.error {
    border-color: var(--color-red-700);
    padding-right: 48px !important;
}
.input-rz input.error ~ span.icon,
.input-rz textarea.error ~ span.icon {
    display: block;
}
.input-rz.-input-ready input.error + span.placeholder,
.input-rz.-input-ready textarea.error + span.placeholder {
    color: var(--color-red-700);
}
/* </editor-fold> */
/* <editor-fold desc="MAIN | Select grayed"> */
.select-gr { position: relative; }
.select-gr .select-placeholder {
    position: relative;
    width: 100%;
    height: 40px;
    padding: 11px 40px 11px 16px;
    background: var(--color-white);
    color: var(--color-black-100);
    border: 1px solid #e0e0e0;
    border-radius: var(--radius-6);
    font-size: var(--font-size-14);
    line-height: var(--line-height-20);
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    cursor: pointer;
}
.select-gr .select-placeholder:focus-visible { outline: 3px solid var(--color-green-100); }
.select-gr .select-placeholder.error { border-color: var(--color-red-700); }
.select-gr .select-placeholder.error + .placeholder { color: var(--color-red-700); }
.select-gr .select-placeholder:after {
    content: "";
    position: absolute;
    top: 10px;
    right: 14px;
    width: 10px;
    height: 10px;
    border-width: 0 1px 1px 0;
    border-style: solid;
    border-color: var(--color-black-100);
    transform: rotate(45deg);
}
.select-gr.opened .select-placeholder:after {
    top: 16px;
    transform: rotate(-135deg);
}
.select-gr .select-list {
    display: none;
    position: absolute;
    top: calc(100% + 7px);
    left: 0;
    width: 100%;
    padding: 4px 0 0;
    background: var(--color-white);
    border: 1px solid #e0e0e0;
    border-radius: var(--radius-4);
    box-shadow: 0 8px 12px 0 #00000026;
    list-style: none;
    z-index: 3;
}
.select-gr .select-list li label {
    position: relative;
    display: block;
    width: 100%;
    padding: 10px 16px;
    font-size: var(--font-size-14);
    line-height: var(--line-height-20);
    cursor: pointer;
}
.select-gr .select-list li:hover label {
    background: var(--color-black-100) !important;
    color: var(--color-white);
}
.select-gr .select-list li input[type=radio] { display: none; }
.select-gr .select-list li input[type=radio]:checked + label { background: var(--color-grey-200); }
/* </editor-fold> */
/* <editor-fold desc="MAIN | Form v3"> */
.form-v3 .form-v3-container { padding: 40px 32px; }
.form-v3.-thin .form-v3-container { padding: 40px 61px; }
.form-v3 .form-title { margin: 0; }
.form-v3 .input-block { padding-top: 24px; }
.form-v3 .input-block .desc {
    display: block;
    margin: 0;
    color: var(--color-black-100);
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-22);
}
.form-v3 .input-block .desc.-small {
    font-size: var(--font-size-12);
    line-height: var(--line-height-18);
}
.form-v3 .input-block label.desc { cursor: pointer; }

.form-v3 .input-block .input-wrapper { padding-top: 16px; }
.form-v3 .input-block .desc.-small + .input-wrapper { padding-top: 4px; }

.form-v3 .input-block .radio-wrap {
    display: inline-flex;
    align-items: center;
    margin-right: 16px;
    line-height: 1.25;
}
.form-v3 .input-block .radio-wrap label {
    margin-left: 8px;
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-regular);
    cursor: pointer;
}
/* legacy 26.09.2025 */
.form-v3 .input-block .checkbox-wrap {
    position: relative;
    line-height: 1.25;
}
.form-v3 .input-block .checkbox-wrap:not(:last-child) { padding-bottom: 16px; }
.form-v3 .input-block .checkbox-wrap input[type=checkbox] {
    position: absolute;
    top: 3px;
}
.form-v3 .input-block .checkbox-wrap input[type=checkbox]:focus-visible { outline: 3px solid var(--color-green-100); }
.form-v3 .input-block .checkbox-wrap label {
    display: inline-block;
    margin-left: 24px;
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-20);
    cursor: pointer;
}
/* legacy 26.09.2025 */
.form-v3 .input-block.checkbox .input-wrapper {
    position: relative;
    padding-top: 0;
    line-height: 1.25;
}
.form-v3 .input-block.checkbox .input-wrapper:not(:last-child) { padding-bottom: 16px; }
.form-v3 .input-block.checkbox .input-wrapper input[type=checkbox] {
    position: absolute;
    top: 1px;
}
.form-v3 .input-block.checkbox .input-wrapper input[type=checkbox]:focus-visible { outline: 3px solid var(--color-green-100); }
.form-v3 .input-block.checkbox .input-wrapper label {
    display: inline-block;
    margin-left: 24px;
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-20);
    cursor: pointer;
}

.form-v3 .input-block input[type=text],
.form-v3 .input-block input[type=tel],
.form-v3 .input-block input[type=email],
.form-v3 .input-block input[type=date],
.form-v3 .input-block input[type=url],
.form-v3 .input-block textarea {
    position: relative;
    display: block;
    width: 100%;
    padding: 10px 16px;
    background: transparent;
    color: var(--color-black-100);
    border: 1px solid #e0e0e0;
    border-radius: var(--radius-6);
    font-size: var(--font-size-16);
    line-height: var(--line-height-22);
}
.form-v3 .input-block input[type=date] { padding: 9px 16px; }
.form-v3 .input-block input[type=text]::placeholder,
.form-v3 .input-block input[type=tel]::placeholder,
.form-v3 .input-block input[type=email]::placeholder,
.form-v3 .input-block input[type=date]::placeholder,
.form-v3 .input-block input[type=url]::placeholder,
.form-v3 .input-block textarea::placeholder {
    color: #8b8b8b;
}

.form-v3 .error-msg {
    min-height: 8px;
    margin: 4px 0 0;
    color: var(--color-red-700);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-18);
}

.form-v3 .input-wrapper.error input[type=radio] { border-color: var(--color-red-700); }
.form-v3 .input-wrapper.f-radio .error-msg { display: none; }
.form-v3 .input-wrapper.f-radio.error .error-msg {
    display: block;
    margin-top: 0;
    padding-bottom: 16px;
}

.form-v3 .input-wrapper.error input[type=checkbox] { border-color: var(--color-red-700); }
.form-v3 .input-wrapper.f-check .error-msg { display: none; }
.form-v3 .input-wrapper.f-check.error .error-msg {
    display: block;
    margin-top: 0;
    padding-bottom: 16px;
}

.form-v3 .input-wrapper.select-gr.error .select-placeholder { border-color: var(--color-red-700); }

.form-v3 .input-wrapper.error input[type=text],
.form-v3 .input-wrapper.error input[type=tel],
.form-v3 .input-wrapper.error input[type=email],
.form-v3 .input-wrapper.error input[type=date],
.form-v3 .input-wrapper.error input[type=url],
.form-v3 .input-wrapper.error textarea {
    border-color: var(--color-red-700) !important;
}
/* input[type=tel] above no longer carries a visible border (phone-input's border
   moved to .phone-wrapper) — this is what actually shows the error state on it. */
.form-v3 .input-wrapper.phone-input.error .phone-wrapper {
    border-color: var(--color-red-700) !important;
}

.form-v3 .input-block.checkbox.alt-error .input-wrapper.error { animation: shake .25s ease-in-out 0s 3; }
@keyframes shake {
    0% { transform: translateX(0); }
    25% { transform: translateX(10px); }
    75% { transform: translateX(-10px); }
    100% { transform: translateX(0); }
}

.form-v3 .input-wrapper.radio-as-btn {
    display: flex;
    justify-content: space-between;
    padding-top: 12px;
}
.form-v3 .input-wrapper.radio-as-btn input[type=radio] {
    width: 0;
    height: 0;
    border: none;
    opacity: 0;
}
.form-v3 .input-wrapper.radio-as-btn label {
    display: inline-block;
    padding: 7px 15px;
    color: #585757;
    border: 1px solid #e3e3e3;
    border-radius: var(--radius-100);
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-22);
    text-align: center;
    cursor: pointer;
    transition: background-color .3s, border-color 2s, color .3s;
}
.form-v3 .input-wrapper.radio-as-btn input[type=radio]:focus-visible + label { outline: 3px solid var(--color-green-100); }
.form-v3 .input-wrapper.radio-as-btn input[type=radio]:checked + label {
    color: var(--color-black-100);
    background: #e9e2ff;
    border-color: #dcd2ff;
}

/* The "+380" prefix used to be position:absolute (out of flow entirely) with the
   input's padding-left hand-tuned to 52px to leave just enough room for it — a
   fixed guess that only held at the default font size. Once a11y large-font scaling
   grows the prefix's own text, the input's padding stayed frozen at 52px and the
   two started overlapping. Making .phone-wrapper the real flex container the
   prefix and input both belong to means the prefix's box is however wide its own
   (now correctly scaled) content needs, and the input just takes whatever's left —
   no pixel value to keep in sync with the font scale at all. The border/background
   that used to live on the input moved up to .phone-wrapper, since the input is no
   longer the only thing forming the visible box (the prefix sits inside it too);
   themed variants that used to also color the absolutely-positioned prefix to
   match (.form-v3.-darken, .webinar-page's register-block) target .phone-wrapper
   for that now instead of duplicating it onto the prefix. */
.form-v3 .input-wrapper.phone-input .phone-wrapper {
    display: flex;
    align-items: center;
    gap: 4px;
    background: transparent;
    border: 1px solid #e0e0e0;
    border-radius: var(--radius-6);
}
.form-v3 .input-wrapper.phone-input input[type=tel] {
    flex: 1 1 auto;
    min-width: 0;
    padding-left: 0;
    border: none;
    background: transparent;
}
.form-v3 .input-wrapper.phone-input .country-code-placeholder {
    flex-shrink: 0;
    padding: 10px 0px 10px 16px;
    color: var(--color-black-100);
    line-height: 1.286;
    text-align: center;
    pointer-events: none;
}

.form-v3 .label-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.form-v3 .label-wrapper.-small + .input-wrapper { padding-top: 4px; }

.form-v3 .char-counter {
    color: #8b8b8b;
    font-size: var(--font-size-12);
    line-height: var(--line-height-18);
    transition: color .7s;
}
.form-v3 .char-counter.-red { color: var(--color-red-700); }

.form-v3 .btn-wrapper { padding-top: 24px; }
.form-v3 .submit-btn {
    width: 100%;
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-bold);
    text-decoration: none;
    cursor: pointer;

    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.form-v3 .submit-btn.is-loading {
    pointer-events: none;   /* blocks clicks since <a> has no native disabled */
    cursor: not-allowed;
    opacity: 0.8;
}
.form-v3 .submit-btn span {
    cursor: pointer;
}
.form-v3 .submit-btn .btn-spinner {
    display: none;
    width: 24px;
    height: 24px;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: var(--radius-full);
    animation: btn-spin 1s linear infinite;
}
.form-v3 .submit-btn.is-loading .btn-text {
    visibility: hidden;     /* keeps button width stable, just hides text */
}
.form-v3 .submit-btn.is-loading .btn-spinner {
    display: inline-block;
    position: absolute;     /* centers over the now-invisible text */
}
@keyframes btn-spin {
    to { transform: rotate(360deg); }
}
.form-v3 .submit-btn:focus-visible { outline: 3px solid var(--color-green-100); }

@media (max-width: 768px) {
    .form-v3 .form-v3-container { padding: 24px 16px; }
    .form-v3 .input-block .input-wrapper:not(.f-check) { padding-top: 8px; }

    .form-v3 .input-wrapper.f-radio.error .error-msg { padding-bottom: 8px; }
}
/* </editor-fold> */
/* <editor-fold desc="MAIN | Form v3 | Darken"> */
.form-v3.-darken .form-title { color: var(--color-black-10); }
.form-v3.-darken .input-block .desc { color: var(--color-white); }
.form-v3.-darken .input-block input[type=text],
.form-v3.-darken .input-block input[type=email],
.form-v3.-darken .input-block input[type=date],
.form-v3.-darken .input-block input[type=url],
.form-v3.-darken .input-block textarea {
    color: var(--color-white);
    background: var(--color-black-100);
}
.form-v3.-darken .input-block input[type=tel] { color: var(--color-white); }
/* input[type=tel]'s background moved to .phone-wrapper, see the phone-input rules above. */
.form-v3.-darken .input-wrapper.phone-input .phone-wrapper { background: var(--color-black-100); }
.form-v3.-darken .input-block input[type=text]::placeholder,
.form-v3.-darken .input-block input[type=tel]::placeholder,
.form-v3.-darken .input-block input[type=email]::placeholder,
.form-v3.-darken .input-block input[type=date]::placeholder,
.form-v3.-darken .input-block input[type=url]::placeholder,
.form-v3.-darken .input-block textarea::placeholder {
    color: var(--color-grey-300);
}
.form-v3.-darken .input-wrapper.phone-input .country-code-placeholder { color: var(--color-grey-300); }
.form-v3.-darken .radio label { color: var(--color-black-10); }
.form-v3.-darken input[type=radio] {
    flex-shrink: 0;
    background: transparent;
    border-color: var(--color-black-20);
}
.form-v3.-darken input[type=radio]:checked { border-color: #05b04d; }
.form-v3.-darken input[type=radio]:checked:before { background: #05b04d; }
.form-v3.-darken .submit-btn { color: var(--color-black-100); }
.form-v3.-darken .personal-data-agreement { color: var(--color-black-40); }
/* </editor-fold> */
/* <editor-fold desc="MAIN | Form v3 | Styled"> */
.form-v3.-styled .input-block { padding-top: 4px; }
.form-v3.-styled .input-block .desc { padding-top: 0; }
.form-v3.-styled .btn-wrapper { padding-top: 4px; }
/* </editor-fold> */
/* <editor-fold desc="MAIN | Title's tape"> */
.title .tape {
    position: relative;
    display: inline-block;
}
.title .tape svg {
    position: absolute;
    width: 113%;
    top: 2px;
    left: -8px;
    z-index: -1;
}

@media (max-width: 992px) {
    .tape svg { height: 45px; }
}
@media (max-width: 576px) {
    .title .tape svg {
        bottom: unset;
        height: 40px;
    }
}
/* </editor-fold> */
/* <editor-fold desc="MAIN | Misc"> */
ins.warning-icon {
    display: inline-block;
    width: 32px;
    height: 32px;
    margin-bottom: -8px;
    margin-right: 12px;
    background: url(../images/warning-icon.svg) center center no-repeat;
}

.tooltip {
    position: absolute;
    padding: 2px 10px;
    color: var(--color-white);
    background: var(--color-black);
    border: 1px solid var(--color-black);
    border-radius: var(--radius-6);
    font-weight: 300;
    opacity: 0;
}

.scrlbar::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}
.scrlbar::-webkit-scrollbar-thumb {
    background: #c5c5c5;
    border-radius: 5px;
}
.scrlbar::-webkit-scrollbar-track { background-color: #f2f2f1; }

.colorful-borders {
    background-image: linear-gradient(white, white),
    linear-gradient(145.39deg, #9dfcbb -0.78%, #a3c8f9 48.1%, #b5bbfb 100%);
    border: double 6px transparent;
    border-radius: var(--radius-16);
    background-origin: border-box;
    background-clip: content-box, border-box;
}
.colorful-borders.-thin {
    border-width: 2px;
    border-radius: var(--radius-8);
}

.colorful-borders-gradient {
    position: relative;
    border-radius: var(--radius-8);
    z-index: 1;
}
.colorful-borders-gradient:not(:first-child) { margin-top: 24px; }
.colorful-borders-gradient:not(:last-child) { margin-bottom: 24px !important; }
.colorful-borders-gradient:before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, #b7f3d4, #c8d9ff, #dfcaff);
    filter: blur(12px);
    transition: opacity .3s .5s;
    z-index: -1;
}
.colorful-borders-gradient .wrapper {
    position: relative;
    background: var(--color-white);
    border-radius: var(--radius-8);
    padding: 24px;
    z-index: 1;
}

.personal-data-agreement {
    padding-top: 8px;
    color: var(--color-black-100);
}
.personal-data-agreement a {
    color: inherit;
    text-decoration: underline;
}

@media (max-width: 1300px) {
    .-adaptive-1300 .scrlbar { padding-bottom: 5px; }
}
@media (max-width: 992px) {
    /* LEGACY 20.01.2026> */
    .container.hscroll992 { max-width: 100%; }
    .container.hscroll992 .hscroll {
        flex-wrap: nowrap !important;
        overflow-x: auto;
    }
    .container.hscroll992 .hscroll > *:first-child { margin-left: calc((100% - 720px) / 2); }
    .container.hscroll992 .hscroll > *:last-child { margin-right: calc((100% - 720px) / 2); }
    /* >LEGACY */

    .-adaptive-992 .scrlbar { padding-bottom: 5px; }
}
/* LEGACY 20.01.2026> */
@media (max-width: 768px) {
    .container.hscroll992 .hscroll > *:first-child { margin-left: calc((100% - 540px) / 2); }
    .container.hscroll992 .hscroll > *:last-child { margin-right: calc((100% - 540px) / 2); }
}
@media (max-width: 576px) {
    .container.hscroll992 {
        padding-left: 0;
        padding-right: 0;
    }
    .container.hscroll992 .hscroll > *:first-child { margin-left: 15px; }
    .container.hscroll992 .hscroll > *:last-child { margin-right: 15px; }
}
/* >LEGACY */
/* </editor-fold> */

/* <editor-fold desc="GLOBAL | Base Slider styles"> */
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}
.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.slick-list:focus { outline: none; }
.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after {
    display: table;
    content: '';
}
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide  {
    display: block;
    height: auto;
    border: 1px solid transparent;
}
.slick-arrow.slick-hidden { display: none; }
/* </editor-fold> */
/* <editor-fold desc="GLOBAL | Styled switch (ON/OFF)"> */
.switch-styled,
.switch-styled .switch-style,
.switch-styled .switch-style:before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.switch-styled {
    position: relative;
    display: inline-block;
    height: 24px;
    margin-bottom: 5px;
}
.switch-styled .sub-label {
    color: var(--color-black-100);
    transition: color .3s;
}
.switch-styled .sub-label.left { padding-right: 8px; }
.switch-styled .sub-label.right { padding-left: 8px; }
.switch-styled .label-hidden {
    display: inline-block;
    font-size: 0;
    height: 0;
    opacity: 0;
}
.switch.several-switches .switch-styled:not(:last-child) { padding-right: 12px; }
.switch-styled .switch-style {
    position: relative;
    display: inline-block;
    top: 4px;
    left: 0;
    width: 36px;
    height: 20px;
    background: var(--color-grey-500);
    border-radius: var(--radius-10);
    -webkit-border-radius: var(--radius-10);
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    cursor: pointer;
    outline: none;
    -webkit-tap-highlight-color: transparent;
}
.switch-styled .switch-style:before {
    content: '';
    position: absolute;
    display: block;
    top: 2px;
    left: 2px;
    width: 16px;
    height: 16px;
    background-color: var(--color-white);
    border-radius: var(--radius-full);
    -webkit-border-radius: var(--radius-full);
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
}
.switch-styled > input[type="checkbox"] { display: none; }
.switch-styled > input[type="checkbox"]:checked ~ .switch-style { background-color: var(--color-black-100); }
.switch-styled > input[type="checkbox"]:checked ~ .switch-style:before { left: 50%; }
.switch-styled.sub-label-highlight > .sub-label.left,
.switch-styled.sub-label-highlight > input[type="checkbox"]:checked ~ .sub-label.right {
    color: var(--color-black-100);
}
.switch-styled.sub-label-highlight > .sub-label.right,
.switch-styled.sub-label-highlight > input[type="checkbox"]:checked ~ .sub-label.left {
    color: #727272;
}

@media (max-width: 768px) {
    .switch-styled { display: block; }
}
/* </editor-fold> */
/* <editor-fold desc="GLOBAL | Breadcrumbs"> */
.breadcrumbs {
    padding-bottom: 40px;
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-22);
    list-style: none;
}
.breadcrumbs li {
    position: relative;
    display: inline-block;
}
.breadcrumbs li:not(:last-of-type):after {
    content: "/";
    display: inline-block;
    margin-left: 9px;
    margin-right: 9px;
    color: var(--color-black-60);
    font-size: var(--font-size-16);
}
.breadcrumbs li a,
.breadcrumbs li span {
    display: inline-block;
    color: var(--color-black-60);
}
.breadcrumbs li span.current {
    color: var(--color-black-100);
    font-weight: var(--font-weight-bold);
}

@media (max-width: 576px) {
    .breadcrumbs { padding-bottom: 20px; }
    .breadcrumbs li a, .breadcrumbs li span { font-size: var(--font-size-12); }
}
/* </editor-fold> */
/* <editor-fold desc="GLOBAL | Popups"> */
.overlay {
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #282828;
    opacity: .18;
    z-index: 8;
}
.popup {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    width: 469px;
    padding: 24px;
    border-radius: var(--radius-8);
    min-width: 290px;
    background: var(--color-white);
    box-shadow: 0 0 96px 0 rgba(0, 0, 0, 0.16), 0 0 2px 0 rgba(0, 0, 0, 0.12);
    transform: translate(-50%, -50%);
    overflow-y: auto;
    z-index: 9;
}
.popup.active { display: block; }
.popup .popup-close {
    position: relative;
    width: 40px;
    height: 40px;
    margin-left: auto;
    background: var(--color-grey-100);
    cursor: pointer;
    transition: background-color .3s;
    padding: 0;
    background: none;
    border-radius: var(--radius-6);
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
.popup .popup-close:focus-visible { outline: 3px solid var(--color-green-100); }
.popup .popup-close * { cursor: pointer; }
.popup .popup-close svg path { transition: all .3s }

.popup .popup-close:hover { background: var(--color-grey-200); }
.popup .popup-close:hover svg path { stroke: none; }
/*.popup .popup-close:hover svg path { stroke: var(--color-white); }*/
.popup .title {
    padding-top: 16px;
    color: var(--color-black-100);
    font-weight: var(--font-weight-black);
    text-align: center;
}
.popup .title .tape:before {
    content: "";
    position: absolute;
    top: 15px;
    left: 0;
    right: -5px;
    bottom: 0;
    background: #e0f6ef;
    z-index: -1;
}
.popup .subtitle {
    padding-top: 12px;
    text-align: center;
    line-height: var(--line-height-22);
}
.popup .subtitle a {
    color: var(--color-link);
    font-weight: var(--font-weight-bold);
    text-decoration: underline;
}
.popup .popup-top .row-wrapper {
    display: flex;
    gap: 12px;
    align-items: center;

}
.popup .popup-container {
    width: 100%;
    padding-top: 16px;
}

.popup .form-v3 .input-block { padding-top: 0; }
.popup .form-v3 .btn-wrapper { padding-top: 8px; }
.popup .personal-data-agreement {
    max-width: 400px;
    padding-top: 12px;
    color: #585757;
}
.popup .under-btn {
    margin-top: 16px;
}
.popup .under-btn a {
    text-decoration-line: underline;
}

.popup.individual-rate { padding: 32px; }
.popup.individual-rate .label {
    color: var(--color-black-100);
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-bold);
}
.popup.individual-rate .radio {
    display: flex;
    justify-content: flex-start;
}
.popup.individual-rate .radio label {
    margin-right: 18px;
    vertical-align: middle;
}
.popup.individual-rate .input-wrapper { margin-top: 24px; }
.popup.individual-rate .input-desc {
    padding-top: 4px;
    padding-left: 12px;
    color: var(--color-black-60);
}
.popup.individual-rate .label.contact { margin-top: 26px; }
.popup.individual-rate .btn-wrapper { margin-top: 26px; }
.popup.individual-rate .btn-wrapper .btn {
    width: 100%;
    cursor: pointer;
}
.popup.individual-rate .personal-data-agreement { max-width: 398px; }

.popup.rate-thank-you .popup-container { text-align: center; }
.popup.rate-thank-you .img-wrapper { width: 136px; }
.popup.rate-thank-you .contact-ty-title { padding-top: 32px; }
.popup.rate-thank-you .contact-ty-subtitle { padding-top: 12px; }
.popup.rate-thank-you .contacts { padding-top: 16px; }
.popup.rate-thank-you .contacts > div { justify-content: center; }
.popup.rate-thank-you .contacts a {
    color: var(--color-black-100);
    font-size: var(--font-size-16);
    line-height: var(--line-height-22);
}

@media (max-width: 719px) {
    .popup {
        width: 100%;
        height: 100%;
        padding: 18px 16px;
        border-radius: 0;
    }
}
/* </editor-fold> */
/* <editor-fold desc="GLOBAL | POPUP | Get consultation v2"> */
.get-consultation-v2.popup .form-title {
    padding-bottom: 0;
}
.popup .popup-top .under-title {
    margin-top: 8px;
}
.get-consultation-v2.popup .form-v3 .input-wrapper.radio-as-btn {
    gap: 8px;
    padding-top: 0;
    padding-bottom: 16px;
}
.get-consultation-v2.popup .form-v3 .input-wrapper.radio-as-btn > div { width: 50%; }
.get-consultation-v2.popup .form-v3 .input-wrapper.radio-as-btn input[type=radio] { position: absolute; }
.get-consultation-v2.popup .form-v3 .input-wrapper.radio-as-btn label {
    width: 100%;
    padding: 7px 5px;
    transition: background-color .3s, border-color 1s, color .3s;
}
.get-consultation-v2.popup .form-v3 .input-wrapper.radio-as-btn input[type=radio]:checked + label {
    background: var(--color-green-10);
    border-color: var(--color-green-100);
}
/* </editor-fold> */
/* <editor-fold desc="GLOBAL | POPUP | Thank you"> */
.popup-ty {
    min-height: 492px;
}
.popup-ty .popup-container {
    padding: 32px 0;
    margin-top: 16px;
    text-align: center;
}
.popup-ty .img-wrapper { max-width: 100px; }
.popup-ty .ty-title { padding-top: 32px; }
.popup-ty .ty-subtitle {
    padding-top: 8px;
    color: var(--color-black-100);
}
/* </editor-fold> */

/* <editor-fold desc="TEMPLATE | Service connect block | LEGACY!"> */
.service-connect-block {
    padding-top: 60px;
    padding-bottom: 60px;
}
.service-connect-block .container {
    display: flex;
    justify-content: space-between;
}
.service-connect-block .description-container {
    width: 40%;
    padding: 32px;
    border: 2px solid #e0f6ef;
    border-radius: var(--radius-8);
}
.service-connect-block ul.list {
    padding-top: 24px;
    padding-left: 20px;
    line-height: 28px;
}
.service-connect-block .description { padding-top: 32px; }
.service-connect-block .btn-wrapper { padding-top: 32px; }
.service-connect-block .btn-wrapper .btn { width: 100%; }
.service-connect-block .image-container {
    display: flex;
    width: calc(60% - 20px);
    background: #faf3d4;
    border-radius: var(--radius-8);
    overflow: hidden;
}
.service-connect-block .image-container img {
    height: 100%;
    width: auto;
}
.service-connect-block .image-container lottie-player { margin-top: auto; }

@media (max-width: 1300px) {
    .service-connect-block .image-container lottie-player { height: 460px; }
}
@media (max-width: 992px) {
    .service-connect-block {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .service-connect-block .container { display: block; }
    .service-connect-block .description-container { width: 100%; }
    .service-connect-block .image-container {
        width: 100%;
        max-height: 420px;
        margin-top: 30px;
    }
    .service-connect-block .image-container lottie-player { height: 420px; }
}
@media (max-width: 576px) {
    .service-connect-block .image-container lottie-player { height: unset; }
    .service-connect-block .image-container img {
        width: 100%;
        height: auto;
    }
}
/* </editor-fold> */
/* <editor-fold desc="TEMPLATE | Connection steps block - slider"> */
.connection-steps-block-slider {
    padding-top: 60px;
    padding-bottom: 60px;
}
.connection-steps-block-slider .title { max-width: 980px; }

.connection-steps-block-slider .steps-container {
    position: relative;
    margin-top: 60px;
}
.connection-steps-block-slider .steps-wrapper {
    position: relative;
    height: 300px;
    overflow: hidden;
    z-index: 1;
}

.connection-steps-block-slider .step { display: none; }
.connection-steps-block-slider .step.anim {
    position: absolute;
    inset: 0;
    background: var(--color-white);
    transition: width 1s;
    overflow: hidden;
}
.connection-steps-block-slider .step.active { display: block; }
.connection-steps-block-slider .step.overlap:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 200px;
    background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 30%);
}
.connection-steps-block-slider .step.anim.move-left { width: 0 !important; }
.connection-steps-block-slider .step.anim.move-right { width: calc(100% + 200px) !important; }

.connection-steps-block-slider .step .step-container {
    display: flex;
    justify-content: space-between;
}
.connection-steps-block-slider .step .desc-wrapper { max-width: 450px; }

.connection-steps-block-slider .step .name { padding-top: 70px; }
.connection-steps-block-slider .step .desc {
    padding-top: 12px;
    color: var(--color-black-100);
}

.connection-steps-block-slider .step .nav-buttons-container { padding-top: 24px; }
.connection-steps-block-slider .step .step-nav-btn {
    position: relative;
    width: 40px;
    height: 40px;
    margin-right: 8px;
    background: var(--color-white);
    border: 1px solid #b7b7b7;
    border-radius: var(--radius-6);
}
.connection-steps-block-slider .step .step-nav-btn:before {
    content: "";
    position: absolute;
    top: 12px;
    left: 16px;
    width: 7px;
    height: 13px;
    background: url(../images/block6-arrow.svg) center center no-repeat;
}
.connection-steps-block-slider .step .step-nav-btn:disabled { opacity: .5; }
.connection-steps-block-slider .step .step-nav-btn:not(:disabled) { cursor: pointer; }
.connection-steps-block-slider .step .step-nav-btn.step-nav-prev:before { transform: rotate(180deg); }

.connection-steps-block-slider .step .img-wrapper {
    width: 50%;
    max-width: 600px;
}

.connection-steps-block-slider .controls-container {
    position: absolute;
    inset: 0;
}
.connection-steps-block-slider .steps-nav-container {
    position: relative;
    display: flex;
    z-index: 4;
}

.connection-steps-block-slider .step-circle {
    position: relative;
    width: 46px;
    height: 46px;
    flex-shrink: 0;
    margin-right: 32px;
    padding: 4px;
}
.connection-steps-block-slider .step-circle:not(:last-child):after {
    content: "";
    position: absolute;
    display: block;
    width: 20px;
    height: 1px;
    background: var(--color-green-100);
    top: 50%;
    right: -28px;
}
.connection-steps-block-slider .step-circle .wrapper {
    position: relative;
    height: 100%;
}
.connection-steps-block-slider .step-circle .wrapper > div {
    position: absolute;
    inset: 0;
    border-radius: var(--radius-full);
}
.connection-steps-block-slider .step-circle .background-green {
    display: none;
    background: var(--color-link-active);
    opacity: 0;
}
.connection-steps-block-slider .step-circle .border-grey { border: 1px solid #e0e0e0; }
.connection-steps-block-slider .step-circle .border-green {
    display: none;
    background: conic-gradient(
            from 90deg at 50% 50%,
            rgba(25, 203, 95, 0.1) 0deg,
            rgba(25, 203, 95, 0.11) 90deg,
            var(--color-link-active) 262.5deg,
            var(--color-link-active) 360deg
    );
    -webkit-animation: rotating 7s linear infinite;
    -moz-animation: rotating 7s linear infinite;
    -ms-animation: rotating 7s linear infinite;
    -o-animation: rotating 7s linear infinite;
    animation: rotating 7s linear infinite;
}
.connection-steps-block-slider .step-circle .completion-icon {
    display: none;
    background: url(../images/block6-complete.svg) center center no-repeat;
    background-size: 100%;
}
.connection-steps-block-slider .step-circle span {
    display: block;
    position: absolute;
    inset: 2px;
    background: var(--color-white);
    color: #585757;
    border-radius: var(--radius-full);
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-bold);
    line-height: 2.125;
    text-align: center;
    transition: color .5s;
}

.connection-steps-block-slider .step-circle.current .border-grey { display: none; }
.connection-steps-block-slider .step-circle.current .border-green { display: block; }
.connection-steps-block-slider .step-circle.current span { color: var(--color-green-100); }

.connection-steps-block-slider .step-circle.completed .border-grey { display: none; }
.connection-steps-block-slider .step-circle.completed .completion-icon { display: block; }
.connection-steps-block-slider .step-circle.completed span { display: none; }

.connection-steps-block-slider .step-circle.pulsate .wrapper {
    animation: wrapper-pulsate 2s ease-out;
    animation-iteration-count: 1;
    -webkit-animation: wrapper-pulsate 2s ease-out;
    -webkit-animation-iteration-count: 1;
}
.connection-steps-block-slider .step-circle.pulsate .wrapper:before {
    content: "";
    position: absolute;
    top: -3px;
    left: -3px;
    width: 38px;
    height: 38px;
    border: 3px solid var(--color-link-active);
    border-radius: 100%;
    box-shadow: 0 0 20px 0 rgba(0 0 0 .2);
    animation: wrapper-ghost-pulsate 1s ease-out;
    animation-iteration-count: 1;
    -webkit-animation: wrapper-ghost-pulsate 2s ease-out;
    -webkit-animation-iteration-count: 1;
    opacity: 0;
}

@-webkit-keyframes rotating {
    from {
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@keyframes rotating {
    from {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    to {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@keyframes wrapper-pulsate {
    0% { transform:scale(1, 1); }
    25% { transform:scale(1.1, 1.1); }
    50% { transform:scale(1, 1); }
}
@keyframes wrapper-ghost-pulsate {
    0% {
        -webkit-transform:scale(.8, .8);
        opacity: 0;
    }
    25% {
        opacity: .4;
    }
    50% {
        -webkit-transform:scale(1.3, 1.3);
        opacity: 0;
    }
    100% {
        -webkit-transform:scale(.8, .8);
        opacity: 0;
    }
}

@media (max-width: 992px) {
    .connection-steps-block-slider {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .connection-steps-block-slider .step .desc-wrapper {
        max-width: 330px;
        flex-shrink: 0;
    }

    .connection-steps-block-slider .step .img-wrapper {
        width: 100%;
        padding-top: 50px;
        padding-left: 20px;
    }
}
@media (max-width: 768px) {
    .connection-steps-block-slider .steps-wrapper { height: unset; }
    .connection-steps-block-slider .steps-container { margin-top: 30px; }
    .connection-steps-block-slider .step .step-container {
        flex-direction: column-reverse;
        justify-content: unset;
    }

    .connection-steps-block-slider .step .desc-wrapper { max-width: 100%; }
    .connection-steps-block-slider .step .name { padding-top: 20px; }

    .connection-steps-block-slider .step .img-wrapper {
        padding-top: 70px;
        padding-left: 0;
    }
    .connection-steps-block-slider .step .img-wrapper img {
        position: static;
        top: unset;
        transform: none;
    }

    .connection-steps-block-slider .steps-nav-container { justify-content: center; }
    .connection-steps-block-slider .step-circle:last-child { margin-right: 0; }
}
@media (max-width: 576px) {
    .connection-steps-block-slider .step-circle { margin-right: 24px; }
    .connection-steps-block-slider .step-circle:not(:last-child):after {
        width: 18px;
        right: -22px;
    }
}
/* </editor-fold> */
/* <editor-fold desc="TEMPLATE | Need support block | Light — shared component reused by Ecommerce/Homepage v.4/Rates/Invoicing v.4/Buy-with-RPay v.4"> */
.need-support-block .block-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    padding: 40px;
    text-align: center;
    background: var(--color-grey-20);
    border-radius: var(--radius-24);
}
.need-support-block .icon-wrapper { width: 140px; height: 140px; }
.need-support-block .icon-wrapper img { width: 100%; height: 100%; object-fit: contain; }
.need-support-block .text { text-align: center; align-items: center; }

@media (max-width: 992px) {
    .need-support-block .block-wrapper {
        padding: 24px;
        gap: 24px;
    }
}
@media (max-width: 576px) {
    .need-support-block .block-wrapper .btn {
        width: 100%;
    }
}
/* </editor-fold> */
/* <editor-fold desc="TEMPLATE | Need support block | Darken"> */
.need-support-block-darken {
    padding-top: 40px;
    padding-bottom: 48px;
    background: var(--color-black-100);
}
.need-support-block-darken .img-wrapper {
    width: 140px;
    height: 140px;
}
.need-support-block-darken .img-wrapper img {
    width: 295px;
    transform: translate(-25%, -13%);
}
.need-support-block-darken .title {
    padding-top: 16px;
    color: var(--color-white);
}
.need-support-block-darken .subtitle {
    padding-top: 16px;
    color: var(--color-white);
    font-weight: var(--font-weight-regular);
}

.need-support-block-darken .need-support-form {
    display: none;
    max-width: 470px;
    margin: 60px auto 0;
    padding-bottom: 12px;
    opacity: 0;
    transition: opacity .3s .2s;
}
.need-support-block-darken .need-support-form.show {
    display: block;
    opacity: 1;
}
.need-support-block-darken .need-support-form .form-border {
    padding: 32px;
    border: 2px solid var(--color-black-80);
    border-radius: var(--radius-8);
}

.need-support-block-darken .need-support-form .form-title { padding-bottom: 24px; }
.need-support-block-darken .need-support-form .input-block { padding-top: 0; }
.need-support-form .input-wrapper.appeal-type { padding-top: 0; }
.need-support-form .input-wrapper.radio { padding-bottom: 20px; }
.need-support-block-darken .need-support-form .radio-wrap { display: flex; }
.need-support-block-darken .need-support-form .radio-wrap:not(:last-child) { padding-bottom: 16px; }
.need-support-block-darken .need-support-form .btn-wrapper { padding-top: 8px; }
.need-support-block-darken .need-support-form .submit-btn { padding: 9px; }
.need-support-block-darken .personal-data-agreement {
    max-width: 366px;
    padding-top: 16px;
}

.need-support-block-darken .thank-you-container {
    display: none;
    text-align: center;
}
.need-support-block-darken .thank-you-container .img-wrapper img {
    width: 268px;
    transform: translate(-24%, -25%);
}
.need-support-block-darken .thank-you-container .ty-title,
.need-support-block-darken .thank-you-container .ty-subtitle {
    position: relative;
    z-index: 1;
}
.need-support-block-darken .thank-you-container .ty-title {
    padding-top: 24px;
    color: var(--color-black-10);
}
.need-support-block-darken .thank-you-container .ty-subtitle {
    max-width: 326px;
    margin: 0 auto;
    padding-top: 16px;
    color: var(--color-black-10);
}

.need-support-block-darken .expand-block.btn-wrapper { padding-top: 32px; }
.need-support-block-darken .expand-block.btn-wrapper .btn { width: 260px; }

@media (max-width: 992px) {
    .need-support-block-darken {
        padding-top: 20px;
        padding-bottom: 40px;
    }
    .need-support-block-darken .img-wrapper {
        width: 100px;
        height: 100px;
    }
    .need-support-block-darken .img-wrapper img { width: 215px; }
    .need-support-block-darken .need-support-form { margin-top: 30px; }
}
@media (max-width: 768px) {
    .need-support-block-darken .title { padding-top: 0; }
}
@media (max-width: 576px) {
    .need-support-block-darken .need-support-form .form-border { padding: 16px; }
}
/* </editor-fold> */
/* <editor-fold desc="TEMPLATE | Text with support"> */
.regular-page.w-support-block { padding-bottom: 0; }
.regular-page.w-support-block .article-content { padding-bottom: 60px; }
.regular-page.w-support-block .need-support-block { padding-bottom: 60px; }
/* </editor-fold> */
/* <editor-fold desc="TEMPLATE | Rates block"> */
.rates-block {
    padding-top: 60px;
    padding-bottom: 60px;
    background: var(--color-grey-20);
    overflow: hidden;
}
.rates-block .subtitle {
    padding-top: 24px;
    color: var(--color-black-100);
}

.rates-block .rates-container {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 16px;
    padding-top: 40px;
}
.rates-block .rate {
    display: flex;
    flex-direction: column;
    width: calc((100% - 16px * 2) / 3);
    padding: 16px;
    color: var(--color-black-100);
    background: var(--color-white);
    border: 1px solid var(--color-black-10);
    border-radius: var(--radius-8);
}
.rates-block .rate a:not(.btn) {
    color: inherit;
    text-decoration: underline;
}
.rates-block .rate .icon-wrapper { max-width: 60px; }
.rates-block .rate .desc { padding-top: 20px; }
.rates-block .rate .desc strong,
.rates-block .rate .desc b {
    font-weight: var(--font-weight-black);
}
.rates-block .rate .notes {
    padding-top: 8px;
    color: var(--color-black-80);
}

.rates-block .rate:not(.-no-top-desc) .percents-list {
    margin-top: auto;
    min-height: 112px;
}
.rates-block .rate .percent {
    display: flex;
    align-items: center;
    padding-top: 16px;
}
.rates-block .rate .percent .item-icon-wrapper {
    width: 24px;
    height: 24px;
}
.rates-block .rate .percent .item-icon-wrapper svg {
    width: 100%;
    height: auto;
}
.rates-block .rate .percent .item-desc-wrapper { margin-left: 8px; }
.rates-block .rate .percent .item-percent { display: inline-block; }
.rates-block .rate .percent .item-desc { color: inherit; }
.rates-block .rate .percent .item-percent + .item-desc {
    margin-left: 8px;
    vertical-align: text-bottom;
}
.rates-block .rate .percent .item-desc.t18 {
    display: block;
    font-weight: var(--font-weight-black);
    line-height: 1.778;
}

.rates-block .rate .explanation { padding-top: 16px; }

.rates-block .rate .btn-wrapper { padding-top: 28px; }
.rates-block .rate.-no-top-desc .btn-wrapper { margin-top: auto; }
.rates-block .rate .btn-wrapper .btn {
    width: 100%;
    padding: 9px;
    font-size: var(--font-size-16);
}

@media (max-width: 992px) {
    .rates-block {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .rates-block .container.adaptive { max-width: 100%; }
    .rates-block .rates-container {
        justify-content: flex-start;
        flex-wrap: nowrap;
        margin-left: 0;
        margin-right: 0;
        padding-top: 20px;
        overflow-x: auto;
    }
    .rates-block .rate {
        width: 308px;
        flex-shrink: 0;
    }
    .rates-block .rate:not(.-no-top-desc) .percents-list { min-height: 108px; }
}
@media (max-width: 576px) {
    .rates-block .rates-container {
        margin-left: -15px;
        margin-right: -15px;
    }
    .rates-block .rate { width: 260px; }
}
/* </editor-fold> */

/* <editor-fold desc="Partners block"> */
.partners-block {
    overflow-x: hidden;
}
.partners-block .partners-list {
    display: flex;
    list-style: none;
}
.partners-block .partners-list .partner .img-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 160px;
    margin: 0 12px;
}

@media (max-width: 992px) {
    .partners-block {
        padding-top: 30px;
        padding-bottom: 30px;
    }
}
/* </editor-fold> */

/* <editor-fold desc="TEMPLATE | FAQ block"> */
.faq-block {
    padding-top: 60px;
    padding-bottom: 60px;
    background: var(--color-white);
}
.faq-block .title { font-size: var(--font-size-32); line-height: var(--line-height-38); }
.faq-block .faq-container { padding-top: 60px; }
.faq-block .question-item {
    position: relative;
    border: 1px solid var(--color-grey-40);
    border-radius: var(--radius-8);
    transition: border-color .15s;
    z-index: 1;
}
.faq-block .question-item:not(:last-child) { margin-bottom: 24px; }
.faq-block .question-item.-anim,
.faq-block .question-item.expanded {
    border-color: var(--color-grey-60);
}
.faq-block .question-item .question-container {
    position: relative;
    background: var(--color-white);
    border-radius: var(--radius-8);
    padding: 24px;
    transition: background-color .15s;
    cursor: pointer;
    z-index: 1;
}
.faq-block .question-item.-anim .question-container,
.faq-block .question-item.expanded .question-container {
    background: var(--color-grey-20);
}
.faq-block .question-item .question-header {
    display: flex;
    align-items: center;
    cursor: pointer;
}
.faq-block .question-item .question-header * { cursor: pointer; }
.faq-block .question-item .question-header .question {
    width: 100%;
    padding-right: 14px;
    color: var(--color-black-100);
    line-height: var(--line-height-24);
}
.faq-block .question-item .question-header .expand {
    position: relative;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}
.faq-block .question-item .question-header .expand:before,
.faq-block .question-item .question-header .expand:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: var(--color-black-100);
    transform: translate(-50%, -50%);
}
.faq-block .question-item .question-header .expand:before {
    width: 16px;
    height: 1px;
}
.faq-block .question-item .question-header .expand:after {
    width: 1px;
    height: 16px;
    transition: height .15s .2s;
}
.faq-block .question-item.-anim .question-header .expand:after {
    height: 0;
    transition: height .15s;
}
.faq-block .question-item.expanded .question-header .expand:after { height: 0; }
.faq-block .question-item .answer {
    display: none;
    padding-top: 16px;
    font-size: var(--font-size-16);
    line-height: var(--line-height-22);
    color: var(--color-black-80);
    opacity: 0;
    cursor: default;
    transition: opacity .15s;
}
.faq-block .question-item.-anim .answer {
    transition: opacity .15s .2s;
    opacity: 1;
}
.faq-block .question-item.expanded .answer {
    display: block;
    transition: opacity 0s;
    opacity: 1;
}
.faq-block .question-item .answer a { font-weight: inherit; cursor: pointer; }

@media (max-width: 992px) {
    .faq-block {
        padding-top: 30px;
        padding-bottom: 40px;
    }
    .faq-block .faq-container { padding-top: 30px; }
    .faq-block .question-item:not(:last-child) {
        margin-bottom: 16px;
    }
}
@media (max-width: 576px) {
    .faq-block .question-item .question-container { padding: 16px; }
}
/* </editor-fold> */
/* <editor-fold desc="TEMPLATE | Benefits table block"> */
.benefits-table-block {
    padding-top: 60px;
    padding-bottom: 60px;
}
.benefits-table-block .subtitle { padding-top: 16px; }
.benefits-table-block .benefits-container {
    display: flex;
    flex-wrap: wrap;
    max-width: 1086px;
    margin: 0 auto;
    padding-top: 60px;
}

.benefits-table-block .benefit {
    position: relative;
    width: 50%;
    flex-shrink: 0;
    padding: 40px 75px;
    border-left: 1px solid var(--color-black-10);
    text-align: center;
}
.benefits-table-block .benefit:nth-child(even) { border-right: 1px solid var(--color-black-10); }
.benefits-table-block .benefit:nth-child(n+3):nth-child(odd):before {
    content: "";
    position: absolute;
    top: 0;
    left: calc((1280px - 200%) / 2 * -1);
    width: 1280px;
    height: 1px;
    background: var(--color-black-10);
}
.benefits-table-block .benefit .icon-wrapper {
    width: 70px;
    height: 70px;
}
.benefits-table-block .benefit .icon-wrapper img {
    width: 170px;
    transform: translate(-30%, -30%);
}
.benefits-table-block .benefit .name {
    position: relative;
    padding-top: 24px;
    color: var(--color-black-100);
    z-index: 1;
}
.benefits-table-block .benefit .name.t20 { font-weight: var(--font-weight-black); }
.benefits-table-block .benefit .desc {
    padding-top: 8px;
    color: var(--color-black-100);
}

.benefits-table-block .btn-wrapper {
    display: flex;
    justify-content: center;
    gap: 16px;
    padding-top: 60px;
}
.benefits-table-block .btn-link-icon,
.benefits-table-block .btn-white {
    width: 260px;
}

@media (max-width: 1300px) {
    .benefits-table-block .benefits-container { max-width: 860px; }
    .benefits-table-block .benefit { padding: 30px 35px; }
    .benefits-table-block .benefit:nth-child(n+3):nth-child(odd):before {
        left: calc((960px - 200%) / 2 * -1);
        width: 960px;
    }
}
@media (max-width: 992px) {
    .benefits-table-block {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .benefits-table-block .benefits-container {
        max-width: 680px;
        padding-top: 30px;
    }
    .benefits-table-block .benefit { padding: 20px; }
    .benefits-table-block .benefit:nth-child(n+3):nth-child(odd):before {
        left: calc((740px - 200%) / 2 * -1);
        width: 740px;
    }
    .benefits-table-block .btn-wrapper { padding-top: 30px; }
}
@media (max-width: 768px) {
    .benefits-table-block .benefits-container { max-width: calc(100% - 40px); }
    .benefits-table-block .benefit {
        width: 100%;
        border-right: 1px solid var(--color-black-10);
    }
    .benefits-table-block .benefit:not(:first-child):before {
        content: "";
        position: absolute;
        top: 0;
        left: -25px !important;
        width: calc(100% + 50px) !important;
        height: 1px;
        background: var(--color-black-10);
    }
    .benefits-table-block .benefit .icon-wrapper {
        width: 50px;
        height: 50px;
    }
    .benefits-table-block .benefit .icon-wrapper img { width: 130px; }
}
@media (max-width: 576px) {
    .benefits-table-block .btn-wrapper {
        flex-direction: column;
        align-items: center;
    }
}
@media (max-width: 380px) {
    .benefits-table-block .benefits-container { max-width: calc(100% - 10px); }
    .benefits-table-block .benefit { padding: 10px; }
    .benefits-table-block .benefit:not(:first-child):before {
        left: -15px !important;
        width: calc(100% + 30px) !important;
    }
}
/* </editor-fold> */
/* <editor-fold desc="TEMPLATE | Opportunities block - rows with text & image (rti)"> */
.opportunities-block-rti {
    padding-top: 60px;
    padding-bottom: 60px;
    background: var(--color-grey-20);
}
.opportunities-block-rti .subtitle {
    padding-top: 16px;
    color: var(--color-black-100);
}
.opportunities-block-rti .subtitle a {
    color: inherit;
    text-decoration: underline;
}
.opportunities-block-rti .opportunities-container { padding-top: 40px; }

.opportunities-block-rti .opportunity {
    display: flex;
    align-items: center;
}
.opportunities-block-rti .opportunity:nth-child(even) { flex-direction: row-reverse; }
.opportunities-block-rti .opportunity:not(:last-child) { padding-bottom: 40px; }
.opportunities-block-rti .opportunity .desc-wrapper {
    width: 100%;
    color: var(--color-black-100);
}
.opportunities-block-rti .opportunity:nth-child(odd) .desc-wrapper { padding-right: 128px; }
.opportunities-block-rti .opportunity:nth-child(even) .desc-wrapper { padding-left: 128px; }
.opportunities-block-rti .opportunity .desc { padding-top: 16px; }
.opportunities-block-rti .opportunity .desc.t20r { font-weight: var(--font-weight-regular); }

.opportunities-block-rti .opportunity .img-wrapper {
    max-width: 630px;
    flex-shrink: 0;
}
.opportunities-block-rti .opportunity .img-wrapper svg {
    width: 100%;
    height: auto;
}

@media (max-width: 1300px) {
    .opportunities-block-rti .opportunity:nth-child(odd) .desc-wrapper { padding-right: 0; }
    .opportunities-block-rti .opportunity:nth-child(even) .desc-wrapper { padding-left: 0; }
}
@media (max-width: 992px) {
    .opportunities-block-rti {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .opportunities-block-rti .opportunity .img-wrapper { max-width: 360px; }
}
@media (max-width: 768px) {
    .opportunities-block-rti .opportunity .name { font-size: 22px; }
    .opportunities-block-rti .opportunity .desc { font-size: var(--font-size-16); }
    .opportunities-block-rti .opportunity .img-wrapper { max-width: 320px; }
}
@media (max-width: 576px) {
    .opportunities-block-rti .opportunities-container { padding-top: 20px; }
    .opportunities-block-rti .opportunity { flex-direction: column !important; }
    .opportunities-block-rti .opportunity:not(:last-child) { padding-bottom: 20px; }
    .opportunities-block-rti .opportunity .img-wrapper { padding-top: 20px; }
}
/* </editor-fold> */
/* <editor-fold desc="TEMPLATE | Customers Reviews block"> */
.customers-reviews-block {
    padding-top: 40px;
    padding-bottom: 40px;
    background: var(--color-white);
}
.customers-reviews-block .container { overflow: hidden; }
.customers-reviews-block .reviews-container {
    margin: 0 -8px;
    padding-top: 40px;
}

.customers-reviews-block .review {
    display: flex;
    height: auto;
    padding: 0 8px;
}
.customers-reviews-block .review .review-wrapper {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 24px;
    overflow: hidden;
    background: var(--color-grey-20);
    border-radius: var(--radius-16);
}
.customers-reviews-block .review .review-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}
.customers-reviews-block .review .quote-icon {
    display: block;
    width: 50px;
    height: 50px;
    flex-shrink: 0;
    background: url(../images/icons/icon-quote.svg) center center no-repeat;
    background-size: contain;
}
.customers-reviews-block .review .logo-wrapper {
    height: 40px;
    flex-shrink: 0;
}
.customers-reviews-block .review .logo-wrapper img {
    height: 100%;
    width: auto;
}
.customers-reviews-block .review .text {
    font-weight: var(--font-weight-regular);
    line-height: 1.334;
}
.customers-reviews-block .review .reviewer-name,
.customers-reviews-block .review .reviewer-position {
    margin: 0;
    font-size: var(--font-size-18);
    line-height: var(--line-height-24);
}
.customers-reviews-block .review .reviewer-name { font-weight: var(--font-weight-black); }
.customers-reviews-block .review .reviewer-position { font-weight: var(--font-weight-regular); }

.customers-reviews-block .slick-dots {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-top: 40px;
    padding: 8px;
    list-style: none;
}
.customers-reviews-block .slick-dots li { cursor: pointer; }
.customers-reviews-block .slick-dots li button {
    display: block;
    width: 12px;
    height: 12px;
    padding: 0;
    background: var(--color-grey-border);
    border-radius: var(--radius-10);
    font-size: 0;
    line-height: 0;
    transition: background-color .3s;
    cursor: pointer;
}
.customers-reviews-block .slick-dots li.slick-active button {
    background: var(--color-green-100);
}

@media (max-width: 992px) {
    .customers-reviews-block {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .customers-reviews-block .reviews-container { padding-top: 30px; }
    .customers-reviews-block .slick-dots { margin-top: 20px; }
}
@media (max-width: 768px) {
    .customers-reviews-block .reviews-container { margin: 0 -4px; }
    .customers-reviews-block .review { padding: 0 4px; }
    .customers-reviews-block .review .review-wrapper { padding: 16px; }
    .customers-reviews-block .review .quote-icon {
        width: 40px;
        height: 40px;
    }
}
@media (max-width: 576px) {
    .customers-reviews-block {
        padding-top: 24px;
        padding-bottom: 24px;
    }
    .customers-reviews-block .reviews-container { padding-top: 20px; }
    .customers-reviews-block .review .review-wrapper { gap: 8px; }
    .customers-reviews-block .slick-dots {
        gap: 12px;
        margin-top: 10px;
    }
    .customers-reviews-block .slick-dots li button {
        width: 14px;
        height: 14px;
    }
}
@media (max-width: 360px) {
    .customers-reviews-block .slick-dots { gap: 8px; }
    .customers-reviews-block .slick-dots li button {
        width: 12px;
        height: 12px;
    }
}
/* </editor-fold> */

/* <editor-fold desc="> HEADER"> */
header {
    position: fixed;
    width: 100%;
    transition: background-color .1s;
    z-index: 5;
}
header.solid { background: var(--color-white); }
header .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 22px;
    padding-bottom: 21px;
}
/*header.solid .container { border-bottom: 1px solid #f2f2f1; }*/
/* Shrinks in lockstep with the a11y font-size setting (--a11y-font-scale, :root above)
   instead of via flex-shrink — .header-menu's nav links scale off the same
   --font-size-* tokens, so this keeps the logo giving up proportionally more room
   exactly when the nav needs it, deterministically (no flex-wrap/shrink interaction
   to reason about): 204px at the default scale (1), ~177px at medium (1.15), ~157px
   at large (1.3). */
header .header-logo { max-width: calc(204px / var(--a11y-font-scale, 1)); }

header .header-menu ul {
    list-style: none;
}
header .header-menu ul li {
    display: inline-block;
    padding: 5px;
}
header .header-menu ul li a,
header .header-menu ul li a * {
    color: var(--color-black-100);
    -webkit-tap-highlight-color:  rgba(255, 255, 255, 0);
    transition: color .3s;
}
header .header-menu ul li a {
    display: block;
    font-size: var(--font-size-16);
    line-height: var(--line-height-22);
}
header .header-menu > ul > li > a {
    position: relative;
    padding: 5px;
}
header .header-menu ul li a.current,
header .header-menu ul li.has-submenu.expanded a {
    color: var(--color-green-100);
}
header .header-menu > ul > li > a:hover {
    color: var(--color-green-100);
}
header .header-menu ul li.has-submenu { position: relative; }
header .header-menu ul li.has-submenu .submenu {
    display: none;
    position: absolute;
    top: 56px;
    left: 50%;
    width: 320px;
    padding: 24px;
    background: var(--color-white);
    /*border: 1px solid var(--color-black-10);*/
    border-radius: var(--radius-6);
    box-shadow: 0 8px 12px 0 rgba(225, 225, 225, 0.50), 0 0 1px 0 #CCC;
    /* --submenu-shift is set inline by scripts.js on open — the submenu is
       centered under its own <li>, which is fine at rest, but that <li> can end
       up anywhere the nav's natural layout puts it (e.g. hard against the left
       edge on narrower desktop widths, or once larger a11y font sizes push nav
       content wide enough that it no longer sits where it used to). A pure-CSS
       centered transform has no idea where the viewport edge is, so JS measures
       the actual rendered position on open and nudges it back on-screen via this
       variable; 0px (the default) reproduces the original plain centering exactly
       when nothing needs correcting. */
    transform: translateX(calc(-50% + var(--submenu-shift, 0px)));
    z-index: 9;
}
header .header-menu ul li.has-submenu .submenu.-large { width: 712px; }

header .header-menu ul li.has-submenu .submenu .section:not(:first-child) { padding-top: 16px; }
header .header-menu ul li.has-submenu .submenu .section .section-name {
    margin-bottom: 16px;
    color: var(--color-black-100);
    font-weight: var(--font-weight-bold);
    line-height: 1.5;
}
header .header-menu ul li.has-submenu .submenu ul {
    display: flex;
    flex-wrap: wrap;
    gap: 16px 24px;
}

header .header-menu ul li.has-submenu .submenu ul li {
    display: block;
    padding: 0;
    width: 100%;
}
header .header-menu ul li.has-submenu .submenu.-large ul li {
    width: calc(50% - 12px);
    flex-shrink: 0;
    /*padding: 12px;*/
}
header .header-menu ul li.has-submenu .submenu ul li a {
    display: flex;
    gap: 12px;
    align-items: center;
}
header .header-menu ul li.has-submenu .submenu ul li a:has(.desc) {
    align-items: flex-start;
}
header .header-menu ul li.has-submenu .submenu ul li a .img-wrapper {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    padding: 4px;
    background: var(--color-grey-40);
    border-radius: var(--radius-8);
    transition: all .3s;
}
header .header-menu ul li.has-submenu .submenu ul li a .text-wrapper {
    display: flex;
    flex-direction: column;
    gap: 2px;
    width: 100%;
}
header .header-menu ul li.has-submenu .submenu ul li a:hover .img-wrapper,
header .header-menu ul li.has-submenu .submenu ul li a.current .img-wrapper {
    background: var(--color-green-20-light);
}
header .header-menu ul li.has-submenu .submenu ul li a span {
    position: relative;
    flex-grow: 1;
}
header .header-menu ul li.has-submenu .submenu ul li a.current span { color: var(--color-green-100); }
header .header-menu ul li.has-submenu .submenu ul li a span:after {
    content: "";
    position: absolute;
    right: 0;
    top: 2px;
    width: 20px;
    height: 20px;
    background: url(../images/header/submenu-icon-2.svg) center center no-repeat;
    opacity: 0;
    transition: opacity .3s;
}
header .header-menu ul li.has-submenu .submenu ul li a:hover span:after { opacity: 1; }
header .header-menu ul li.has-submenu .submenu ul li .desc {
    color: var(--color-black-60);
    line-height: 1.167;
}

header .header-menu .mobile-menu-buttons {
    display: none;
    flex-direction: column-reverse;
    max-width: 320px;
    margin: 0 auto;
    padding-top: 8px;
    padding-bottom: 32px;
}
header .header-menu .mobile-menu-buttons .btn {
    width: 100%;
    /*margin-top: 16px;*/
}

body.disable-scroll { overflow-y: hidden; }
header .mobile-nav {
    display: none;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 40px;
    height: 40px;
    padding: 0;
    background: #F6F8FA;
    border-radius: 6px;
    cursor: pointer;
    transition: background-color .3s;
    -webkit-tap-highlight-color:  rgba(255, 255, 255, 0);
    z-index: 3;
}
header .mobile-nav:hover { background: #EBEDF2; }
body.mobile-menu header .mobile-nav { background: #D3D2D2; }
header .mobile-nav .nav-icon {
    width: 28px;
    height: 20px;
    -webkit-transform: rotate(0);
    -moz-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
}
header .mobile-nav .nav-icon span {
    display: block;
    position: absolute;
    height: 1px;
    width: 100%;
    background: var(--color-black);
    border-radius: 2px;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0);
    -moz-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
    cursor: pointer;
}
header .mobile-nav .nav-icon span:nth-child(1) { top: 0; }
header .mobile-nav .nav-icon span:nth-child(2),
header .mobile-nav .nav-icon span:nth-child(3) { top: 8px; }
header .mobile-nav .nav-icon span:nth-child(4) { top: 16px; }
body.mobile-menu header .mobile-nav .nav-icon span:nth-child(1) {
    top: 8px;
    width: 0;
    left: 50%;
}
body.mobile-menu header .mobile-nav .nav-icon span:nth-child(2) {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
body.mobile-menu header .mobile-nav .nav-icon span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
body.mobile-menu header .mobile-nav .nav-icon span:nth-child(4) {
    top: 8px;
    width: 0;
    left: 50%;
}

header .buttons-row-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

header .header-buttons { display: flex; }
header .login-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    /*width: 108px;*/
    /*padding: 7px 0;*/
}
header .login-btn .icon {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    margin-right: 8px;
    background: url(../images/header/header-login-icon.svg) center center no-repeat;
    background-size: contain;
}
header .header-buttons .register-btn {
    /*width: 168px;*/
    margin-left: 12px;
}

header .header-search {
    position: relative;
    z-index: 4;
}
header .search-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    background: var(--color-grey-20);
    border-radius: var(--radius-6);
    cursor: pointer;
    transition: background-color .3s;
}
header .search-toggle:hover { background: var(--color-grey-40); }
header .search-toggle:active { background: var(--color-grey-60); }
header .header-search.-active .search-toggle { visibility: hidden; }
header .search-field {
    position: absolute;
    top: 50%;
    right: 0;
    display: flex;
    align-items: center;
    width: 0;
    height: 40px;
    padding: 0;
    background: var(--color-white);
    border: 1px solid var(--color-grey-60);
    border-radius: var(--radius-6);
    box-shadow: 0 8px 20px 0 rgba(34, 31, 31, .12);
    opacity: 0;
    overflow: hidden;
    transform: translateY(-50%);
    transition: width .3s ease, opacity .3s ease, overflow 0s linear 0s, border-color .3s ease;
    pointer-events: none;
}
header .search-field:focus-within { border-color: var(--color-black-100); }
header .header-search.-active .search-field {
    width: 360px;
    padding: 0 16px;
    overflow: visible;
    opacity: 1;
    pointer-events: auto;
    transition: width .3s ease, opacity .3s ease, overflow 0s linear 0s;
}
header .search-field-icon { flex-shrink: 0; }
/* .input-block у селекторі - не косметика: без нього цей override рівний за
   специфічністю з .form-v3 .input-block input[type=text] (глобальний border
   для інпутів форм) і програє в незафокусованому стані, даючи подвійну рамку -
   власну border у input поверх border самого .search-field */
header .input-block input[type=text].search-field-input {
    flex: 1;
    min-width: 0;
    margin: 0 10px;
    border: none;
    color: var(--color-black-100);
    font-size: 15px;
    line-height: 1.334;
}
header .input-block input[type=text].search-field-input:focus { border: none; }
header .search-field-input::placeholder { color: var(--color-black-60); }
header .search-field-clear {
    display: none;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    padding: 0;
    cursor: pointer;
    background: transparent;
}
header .search-field-clear svg {
    pointer-events: none;
}
header .header-search.-active .search-field-clear { display: flex; }
header .search-field-spinner {
    display: none;
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    border: 2px solid var(--color-black-80);
    border-right-color: transparent;
    border-radius: 50%;
    animation: btn-spin 1s linear infinite;
}
header .header-search.-loading .search-field-spinner { display: inline-block; }
header .header-search.-loading .search-field-clear { display: none; }

header .search-field-results {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    max-height: 420px;
    padding: 8px;
    background: var(--color-white);
    border: 1px solid var(--color-black-10);
    border-radius: var(--radius-12);
    box-shadow: 0 8px 20px 0 rgba(34, 31, 31, .12);
    overflow-y: auto;
}
header .header-search.-has-results .search-field-results { display: block; }
header .search-result-item {
    display: block;
    padding: 10px 12px;
    border-radius: var(--radius-6);
    transition: background-color .2s;
}
header .search-result-item:hover { background: var(--color-grey-100); }
header .search-result-item .result-type {
    display: block;
    margin-bottom: 2px;
    color: var(--color-black-60);
    font-size: 11px;
    line-height: 1.334;
    text-transform: uppercase;
}
header .search-result-item .result-title {
    color: var(--color-black-100);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-bold);
    line-height: 1.286;
}
header .search-result-item .result-snippet {
    display: -webkit-box;
    overflow: hidden;
    margin-top: 2px;
    color: var(--color-black-60);
    font-size: 13px;
    line-height: 1.334;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
header .search-see-more {
    display: block;
    margin-top: 4px;
    padding: 10px 12px;
    color: var(--color-green-100);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-bold);
    text-align: center;
    border-top: 1px solid var(--color-black-10);
}
header .search-see-more:hover { background: var(--color-grey-100); border-radius: 0 0 var(--radius-6) var(--radius-6); }
header .search-empty { padding: 24px 12px; text-align: center; }
header .search-empty .empty-title {
    color: var(--color-black-100);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-bold);
}
header .search-empty .empty-subtitle {
    margin-top: 4px;
    color: var(--color-black-60);
    font-size: 13px;
}

header.documentation .container { justify-content: unset; }
header .docs-logo {
    margin-left: 12px;
    padding: 1px 8px;
    color: var(--color-black-100);
    background: var(--color-grey-100);
    border-radius: 2px;
    font-size: var(--font-size-12);
    z-index: 2;
}
header.documentation .header-menu {
    margin-left: auto;
    margin-right: 22px;
}

/* Mobile-nav cutover — was 992px, then 1300px, now 1180px. This value is
   duplicated (search for 1180/1181 to find every copy) in the sub-range
   query right below, in a11y-toolbar.css's #popup-a11y override, and in the
   innerWidth checks in scripts.js and a11y-toolbar.js — all of those must
   move together with this one. */
@media (max-width: 1180px) {
    header:after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        height: 1px;
        background: var(--color-black-10);
        opacity: 0;
        transition: opacity .3s .7s;
        z-index: 1;
    }
    body.mobile-menu header:after {
        opacity: 1;
        transition: opacity .3s;
    }

    header .container {
        padding-top: 12px;
        padding-bottom: 11px;
    }
    header .header-logo {
        max-width: 126px;
        z-index: 2;
    }

    header .header-menu {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        min-width: 340px;
        height: calc(100% - 63px);
        background: var(--color-white);
        transform: translateX(100%);
        transition: transform .3s;
        overflow-y: auto;
    }
    body.mobile-menu header .header-menu {
        transform: translateX(0);
        transition: transform .3s;
    }
    /*body.admin-bar header .header-menu { height: calc(100% - 60px - 32px); }*/
    #wpadminbar {
        display: none;
    }
    header .header-menu * {
        opacity: 0;
        transition: opacity .15s;
    }
    body.mobile-menu header .header-menu * {
        opacity: 1;
        transition: opacity .15s;
    }
    header .header-menu ul {
        display: flex;
        flex-wrap: wrap;
        gap: 16px 24px;
        max-width: 720px;
        margin: 0 auto;
        box-sizing: content-box;
    }

    header .header-menu > ul > li {
        display: block;
        padding: 0;
    }
    header .header-menu > ul > li > a {
        padding: 12px 0;
        font-weight: var(--font-weight-bold);
    }
    header .header-menu > ul > li > a:hover { color: var(--color-black-100); }
    /* Cancels the desktop rule's --color-green-100 accent on an expanded/active
       drawer item, same intent as the :hover rule right above — but `initial`
       resets to the CSS-spec default for `color` (canvastext, effectively a fixed
       black) instead of any themed value, so it happened to look right only by
       coincidence in the light-mode drawer and goes invisible the moment the
       drawer's own background flips dark (bw/wb). var(--color-black-100) is what
       every *other* menu item in this drawer already uses (see the shared
       `header .header-menu ul li a` rule, top of this file) — reuse it instead of
       coincidentally landing near it. */
    header .header-menu ul li.has-submenu.expanded a { color: var(--color-black-100); }
    header .header-menu > ul > li > a:before {
        content: "";
        position: absolute;
        top: 50%;
        right: 0;
        width: 24px;
        height: 24px;
        background: url(../images/header/submenu-icon-2.svg) center center no-repeat;
        transform: translateY(-50%);
        transition: transform .3s;
    }
    header .header-menu > ul > li > a.menu-item-dummy:before {
        transform: translateY(-50%) rotate(90deg);
    }
    header .header-menu > ul > li.has-submenu.expanded > a:before { transform: translateY(-50%) rotate(-90deg); }

    header .header-menu ul li.has-submenu .submenu {
        position: static;
        width: 100%;
        padding: 8px 0 0;
        background: none;
        border: none;
        border-radius: 0;
        box-shadow: none;
        transform: none;
    }
    header .header-menu ul li.has-submenu .submenu.-large { width: 100%; }
    header .header-menu ul li.has-submenu .submenu .section:not(:first-child) { padding-top: 24px; }
    header .header-menu ul li.has-submenu .submenu .section .section-name {
        padding-bottom: 0;
        border-bottom: none;
    }
    header .header-menu ul li.has-submenu .submenu ul {
        gap: 16px;
    }
    header .header-menu ul li.has-submenu .submenu.-large ul {
        /*margin: -8px;*/
        padding-top: 0;
    }
    header .header-menu ul li.has-submenu .submenu.-large ul li { padding: 8px 0; }

    header .header-buttons { display: none; }

    header .mobile-nav { display: flex; }

    /*header .header-search { margin-left: 12px; }*/
    /* той самий width-transition механізм, що й на десктопі (position:absolute,
       конкретне значення width замість auto) - інакше position:fixed + width:auto
       не анімуються (position миттєво перемикається, до/від auto CSS не твінить),
       і плашка просто "стрибає" замість плавного розширення.

       --container-px тут коректний лише до 576px (це єдина точка зламу, де він
       взагалі перевизначається - див. .container вище) - .container сам ширший
       за 576px отримує свій padding:0 32px окремим, не-var правилом, тож нижче
       ця формула лишається чинною тільки до 576px; ширший override — одразу
       нижче.
       52px = власний відступ .header-search праворуч до гамбургера (40px .mobile-nav,
       +12px зазор) */
    header .header-search.-active .search-field {
        width: calc(100vw - (var(--container-px) * 2) - 52px);
        padding: 0 8px;
    }
    body.header-search-active { overflow: hidden; }

    header .header-menu  ul {
        flex-direction: column;
        gap: 8px;
    }
    header .header-menu > ul,
    header .header-menu .mobile-menu-buttons {
        padding: 16px;
    }

    header .header-menu .mobile-menu-buttons { display: flex; gap: 16px; padding-bottom: 32px; }

    header .header-menu .mobile-menu-buttons .btn { max-width: 100%; }

    header .header-menu ul li.has-submenu .submenu .section:not(:first-child) { padding-top: 8px; }
    header .header-menu ul li.has-submenu .submenu.-large ul { margin: 0; }
    header .header-menu ul li.has-submenu .submenu.-large ul li {
        width: 100%;
        padding: 0;
    }
}
/* Above 576px the expanded search field used the same width formula as below
   it, but --container-px is only ever set (16px) at that one breakpoint — the
   .container itself gets its real padding here (32px) from a separate,
   non-var rule (see .container, top of file) — so the formula was subtracting
   0 instead of 32px on each side and the field overflowed .container by 64px.
   Rebuilt from scratch instead, reserving real space for what's actually
   there: the container's own 32px padding on each side, the logo (126px,
   header-logo above) plus a 12px gap after it on the left, and the same
   52px (40px .mobile-nav + 12px gap) reserved for the hamburger on the right
   that the sub-576px rule above also uses — .header-search's own right:0
   anchor already places the field's right edge correctly beyond that, so
   only the width needs the fix. */
@media (min-width: 577px) and (max-width: 1180px) {
    header .header-search.-active .search-field {
        width: calc(100vw - 32px - 32px - 126px - 12px - 52px);
    }
}
@media (min-width: 992px) and (max-width: 1180px) {
    /* Without an explicit width, this right-anchored drawer (left:auto) shrinks
       to fit whichever accordion submenu is currently open — display:none
       submenus don't count, only the open one does — so it visibly resizes as
       you open different submenus. --mobile-menu-width is measured in JS
       (initMobileMenuMaxWidth, scripts.js) across every submenu's real content,
       so this stays one constant width no matter which one is open; 410px is
       just the pre-JS/no-JS fallback, not the steady-state value. */
    header .header-menu {
        left: auto;
        width: var(--mobile-menu-width, 410px);
        border-left: 1px solid var(--color-black-10);
        transition: all .15s;
    }
    header .header-menu > ul, header .header-menu .mobile-menu-buttons {
        padding: 0 32px 32px;
    }
    header .header-menu ul li.has-submenu .submenu.-large ul li {
        width: 100%;
    }
}
/* Without this, resizing the window across 1180px (or 992px, or 576px — the
   search field's width formula above also switches there) visibly plays the
   drawer slide / fade / border / search-width transitions declared above,
   since the media query flip changes their values mid-cascade and the browser
   animates it same as a real open/close. scripts.js toggles this class off
   during a resize and back on once it settles; the click-triggered open/close
   (body.mobile-menu, .header-search.-active) isn't touched by resize so it
   keeps animating normally. */
body.header-resizing header .header-menu,
body.header-resizing header .header-menu *,
body.header-resizing header:after,
body.header-resizing header .search-field {
    transition: none !important;
}
/*@media (max-width: 782px) {*/
/*    body.admin-bar header .header-menu { height: calc(100% - 60px - 46px); }*/
/*}*/
@media (max-width: 768px) {
    header .header-menu ul {
        max-width: 540px;
    }
}
@media (max-width: 576px) {
    header .header-menu .mobile-menu-buttons .btn { max-width: 100%; }
}
/* </editor-fold> */
/* <editor-fold desc="> FOOTER"> */
footer {
    position: relative;
    padding-top: 50px;
    padding-bottom: 40px;
    border-top: 1px solid #f2f2f1;
}
footer .row { display: flex; }

footer .footer-logo {
    width: 170px;
    height: 25px;
}

footer .menu-row { padding-top: 32px; }
footer ul.menu { list-style: none; }
footer ul.menu li { padding-top: 16px; }
footer ul.menu li:first-child { padding-top: 0; }
footer .menu-row a,
footer .menu-row .title,
footer .menu-row span {
    color: var(--color-black-100);
    font-size: var(--font-size-16);
    line-height: var(--line-height-22);
}
footer .menu-row a { transition: color .3s; }
footer .menu-row a:hover { color: var(--color-black-60); }
footer .menu-row a:active {
    color: var(--color-green-100);
    text-decoration: underline;
    transition: color 0.1s;
}
footer .menu .title,
footer .socials .footer-subscription-form-wrapper .title{
    font-weight: var(--font-weight-bold);
}

footer .menu-2 { padding-left: 100px; }

footer .socials { margin-left: auto; }

footer .socials .footer-subscription-form-wrapper .form-container {
    display: flex;
    gap: 8px;
    width: 378px;
    padding-top: 8px;
}
footer .socials .footer-subscription-form-wrapper .form-container .input-block,
footer .socials .footer-subscription-form-wrapper .form-container .input-wrapper {
    position: relative;
    padding-top: 0 !important;
}
footer .socials .footer-subscription-form-wrapper .form-container .input-block:first-child { width: 100%; }
footer .socials .footer-subscription-form-wrapper .form-container .input-block:first-child label {
    display: block;
    height: 0;
    font-size: 0;
    opacity: 0;
}
footer .socials .footer-subscription-form-wrapper .form-container .input-block:first-child input {
    background: var(--color-white);
    border-color: #e0e0e0;
}
footer .socials .footer-subscription-form-wrapper .form-container .input-block:first-child .error-msg {
    position: absolute;
    bottom: -16px;
    left: 0;
}
footer .socials .footer-subscription-form-wrapper .form-container .btn-wrapper { padding-top: 0; }
footer .socials .footer-subscription-form-wrapper .form-container .submit-btn {
    width: 130px;
    padding: 7px;
}
footer .socials .footer-subscription-form-wrapper .form-container .submit-btn span { color: var(--color-white); }
/* Explicit height, not padding, so .submit-btn matches the .form-v3 input's
   own existing 44px instead of its own padding-driven 38px — the two were
   never tuned to match each other. Same fix applied identically to every
   other subscribe/CTA row on the site (webinar-archive-v4.css,
   blog-pages-v2.css, viber-page.css, audit-page.css). .submit-btn is already
   display:inline-flex/align-items:center (.form-v3 .submit-btn, above), so it
   centers correctly with an explicit height. */
footer .socials .footer-subscription-form-wrapper .form-container .submit-btn {
    height: 44px;
}

footer .socials .socials-container {
    display: flex;
    padding-top: 24px;
}
footer .socials a { display: block; }
footer .socials a span { display: none; }
footer .socials a:not(:last-child) { margin-right: 12px; }
footer .socials svg { display: block; }

.contacts svg {
    flex-shrink: 0;
    margin-right: 3px;
    margin-bottom: -6px;
}
.contacts > div {
    display: flex;
    padding-top: 12px;
}

footer .bottom-row {
    justify-content: space-between;
    padding-top: 32px;
}
footer .secure {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}
footer .secure span {
    width: 70px;
    font-size: var(--font-size-12);
    line-height: var(--line-height-18);
    text-align: center;
}
footer .secure .logo-wrapper { flex-shrink: 0; }
footer .secure .visa.logo-wrapper { width: 23px; }
footer .secure .mastercard.logo-wrapper { width: 84px; }
footer .secure .prostir.logo-wrapper { width: 41px; }

footer .background-left-desktop,
footer .background-right-desktop,
footer .background-left-mobile,
footer .background-right-mobile {
    position: absolute;
    bottom: 0;
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
}
footer .background-left-desktop {
    left: 0;
    width: 773px;
    height: 283px;
    background-position: left bottom;
}
footer .background-right-desktop {
    right: 0;
    width: 904px;
    height: 341px;
    background-position: right bottom;
}
footer .background-left-mobile {
    display: none;
    left: 0;
    max-width: 312px;
    width: 100%;
    height: 440px;
    background-position: left bottom;
}
footer .background-right-mobile {
    display: none;
    right: 0;
    max-width: 265px;
    width: 100%;
    height: 451px;
    background-position: right bottom;
}

@media (max-width: 992px) {
    footer .menu-row { flex-wrap: wrap; }
    footer ul.menu { width: 50%; }

    footer .menu-2 { padding-left: 0; }

    footer .socials {
        margin-left: 0;
        padding-top: 32px;
        padding-left: 0;
    }
    footer .socials .footer-subscription-form-wrapper .form-container { width: 360px; }

    footer .background-left-desktop { width: 673px; }
    footer .background-right-desktop { width: 604px; }
}
@media (max-width: 768px) {
    footer {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    footer .menu-row { padding-top: 16px; }
    footer ul.menu { width: 100%; }

    footer .menu-2 { padding-top: 16px; }

    footer .socials { padding-top: 16px; }
    footer .socials .socials-container { padding-top: 16px; }

    footer .bottom-row { padding-top: 16px; }

    footer .background-left-desktop,
    footer .background-right-desktop {
        display: none;
    }
    footer .background-left-mobile,
    footer .background-right-mobile {
        display: block;
    }
}
@media (max-width: 576px) {
    footer .footer-logo {
        width: 118px;
        height: 17px;
    }

    footer .socials { width: 100%; }
    footer .socials .footer-subscription-form-wrapper .form-container {
        width: 100%;
        max-width: 360px;
    }

    footer .bottom-row { flex-direction: column-reverse; }

    footer .secure { gap: 12px; }

    footer .copyright { padding-top: 16px; }
}
/* </editor-fold> */

/* <editor-fold desc="RATES PAGE"> */
.rates-v4-block .subtitle {
    padding-top: 16px;
}
/* </editor-fold> */

/* <editor-fold desc="FAQ PAGE"> */
.faq-page .title .tape svg { width: 130%; }
.faq-page .title .tape svg path { fill: #e0f6ef; }
.faq-page .faq-block { padding: 0; }
.faq-page .faq-block .faq-container {
    padding-top: 40px;
}
/* </editor-fold> */

/* <editor-fold desc="PAYMENT PAGE | About block"> */
.payment-page { padding-bottom: 0; }

.payment-page .about-block .title,
.payment-page .about-block .subtitle {
    max-width: 758px;
}
.payment-page .about-block .subtitle { padding-top: 12px; }
.payment-page .about-block .lottie-container {
    min-height: 637px;
    margin-top: 40px;
    background: #faf3d4;
    border-radius: var(--radius-8);
}
.payment-page .about-block .lottie-container lottie-player {
    width: 747px;
    margin: 0 auto;
    padding-top: 55px;
    opacity: 0;
    transition: opacity .3s;
}
.payment-page .about-block .lottie-container.ready lottie-player { opacity: 1; }

@media (max-width: 992px) {
    .payment-page .about-block .lottie-container { min-height: 481px; }
    .payment-page .about-block .lottie-container lottie-player { width: 547px; }
}
@media (max-width: 768px) {
    .payment-page .about-block .lottie-container {
        min-height: 445px;
        margin-top: 20px;
    }
    .payment-page .about-block .lottie-container lottie-player { width: 500px; }
}
@media (max-width: 576px) {
    .payment-page .about-block .lottie-container { min-height: 233px; }
    .payment-page .about-block .lottie-container lottie-player {
        width: 260px;
        padding-top: 30px;
    }
}
/* </editor-fold> */
/* <editor-fold desc="PAYMENT PAGE | Steps block"> */
.payment-page .steps-block { padding-bottom: 60px; }
.payment-page .steps-block .steps-container {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
}
.payment-page .steps-block .step {
    width: calc((100% - 40px) / 3);
    flex-shrink: 0;
    padding-top: 40px;
}
.payment-page .steps-block .step:not(:nth-child(3n)) { margin-right: 20px; }
.payment-page .steps-block .step .info { display: block; }
.payment-page .steps-block .step .count {
    display: block;
    padding-top: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid #e0e0e0;
}
.payment-page .steps-block .step .description {
    max-width: 358px;
    padding-top: 16px;
}

@media (max-width: 992px) {
    .payment-page .steps-block { padding-bottom: 30px; }
    .payment-page .steps-block .step { padding-top: 20px; }
}
@media (max-width: 768px) {
    .payment-page .steps-block .steps-container { flex-direction: column; }
    .payment-page .steps-block .step {
        width: 100%;
        margin-right: 0 !important;
    }
    .payment-page .steps-block .step .count {
        padding-top: 4px;
        padding-bottom: 6px;
    }
    .payment-page .steps-block .step .description {
        max-width: unset;
        padding-top: 8px;
    }
}
/* </editor-fold> */
/* <editor-fold desc="PAYMENT PAGE | Benefits block"> */
.payment-page .benefits-block {
    padding-top: 60px;
    padding-bottom: 60px;
}
.payment-page .benefits-block .benefits-container {
    display: flex;
    flex-wrap: wrap;
    padding-top: 40px;
}
.payment-page .benefits-block .benefit {
    width: calc((100% - 40px) / 3);
    flex-shrink: 0;
    padding-top: 40px;
}
.payment-page .benefits-block .benefit:not(:nth-child(3n)) { margin-right: 20px; }
.payment-page .benefits-block .benefit .icon-wrapper { width: 80px; }
.payment-page .benefits-block .benefit .name {
    padding-top: 24px;
    font-weight: var(--font-weight-black);
}
.payment-page .benefits-block .benefit .description { padding-top: 8px; }

@media (max-width: 992px) {
    .payment-page .benefits-block {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .payment-page .benefits-block .benefits-container { padding-top: 0; }
}
@media (max-width: 768px) {
    .payment-page .benefits-block .benefits-container { flex-direction: column; }
    .payment-page .benefits-block .benefit {
        width: 100%;
        margin-right: 0 !important;
        padding-top: 30px;
    }
    .payment-page .benefits-block .benefit .icon-wrapper { width: 60px; }
}
/* </editor-fold> */
/* <editor-fold desc="PAYMENT PAGE | Branding block"> */
.payment-page .branding-block {
    padding-top: 60px;
    padding-bottom: 60px;
}
.payment-page .branding-block .subtitle { padding-top: 12px; }
.payment-page .branding-block .switches-container {
    display: flex;
    padding-top: 25px;
}
.payment-page .branding-block .switches-container .col.left-col {
    max-width: 340px;
    width: 100%;
    margin-right: 80px;
}
.payment-page .branding-block .switch { padding-top: 15px; }
.payment-page .branding-block .switch .label {
    display: inline-block;
    padding-right: 12px;
    color: var(--color-black-100);
    font-weight: var(--font-weight-medium);
}
.payment-page .branding-block .switch.color-switch {
    display: flex;
    align-items: center;
}
.payment-page .branding-block .switch.color-switch .label { flex-shrink: 0; }
.payment-page .branding-block .color-select-container { display: flex; }
.payment-page .branding-block .color-select-container a {
    display: inline-block;
    width: 24px;
    height: 24px;
    margin-right: 8px;
    color: var(--color-link);
    background: currentColor;
    border: 2px solid currentColor;
    border-radius: var(--radius-full);
    outline: none;
    -webkit-tap-highlight-color: transparent;
}
.payment-page .branding-block .color-select-container .color-select.green { color: var(--color-link); }
.payment-page .branding-block .color-select-container .color-select.blue { color: #28bfff; }
.payment-page .branding-block .color-select-container .color-select.selected { border-color: var(--color-black-100); }

.payment-page .branding-block .color-select-container .color-picker {
    position: relative;
    display: inline-block;
    width: 24px;
    height: 24px;
    overflow: hidden;
    cursor: pointer;
    outline: none;
    -webkit-tap-highlight-color: transparent;
}
.payment-page .branding-block .color-select-container .color-picker input[name="color-add"] {
    width: 0;
    height: 0;
    margin: 0;
    padding: 0;
    border: none;
    overflow: hidden;
    -webkit-appearance: none;
}
.payment-page .branding-block .color-select-container .color-picker .add-btn {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 24px;
    height: 24px;
    padding: 3px;
    border: 1px solid var(--color-black-60);
    border-radius: var(--radius-full);
    cursor: pointer;
}
.payment-page .branding-block .color-select-container .color-picker .add-btn * { cursor: pointer; }

@media (max-width: 992px) {
    .payment-page .branding-block {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .payment-page .branding-block .switches-container {
        flex-direction: column;
        padding-top: 10px;
    }
    .payment-page .branding-block .switches-container .col.left-col {
        max-width: unset;
        margin-right: 0;
    }
    .payment-page .branding-block .switch { padding-top: 10px; }
}
@media (max-width: 768px) {
    .payment-page .branding-block .switch.color-switch {
        flex-direction: column;
        align-items: baseline;
    }
    .payment-page .branding-block .switch.several-switches { max-width: 300px; }
    .payment-page .branding-block .switch.several-switches .label { display: block; }
    .payment-page .branding-block .switch.several-switches .switch-styled { display: inline-block; }
}
/* </editor-fold> */
/* <editor-fold desc="PAYMENT PAGE | Branding block | Sample container"> */
.payment-page .branding-block .branding-container {
    margin-top: 20px;
    background: #e1f4fc;
    border-radius: var(--radius-8);
    overflow: hidden;
}
.payment-page .branding-block .sample-container {
    width: 766px;
    margin: 40px auto 0;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    box-shadow: 0 15px 30px 0 rgba(0, 0, 0, 0.08);
}
.payment-page .branding-block .sample-header { height: 34px; }
.payment-page .branding-block .sample-main {
    display: flex;
    width: 100%;
    background: #fcfcfc;
    transition: background-color .3s;
}
.payment-page .branding-block .sample-main .summary-container {
    display: flex;
    flex-direction: column;
    width: 50%;
    min-height: 545px;
    padding: 54px 51px 0 40px;
}
.payment-page .branding-block .sample-main .checkout-logo-wrapper {
    padding-bottom: 16px;
    opacity: 0;
    transition: opacity .3s;
}
.payment-page .branding-block .sample-main .checkout-logo-wrapper svg { display: block; }
.payment-page .branding-block .sample-main svg.colorable path.c-b,
.payment-page .branding-block .sample-main svg.colorable path.c-w {
    transition: all .3s;
}
.payment-page .branding-block .sample-main svg.colorable.colorable-delay path.c-b,
.payment-page .branding-block .sample-main svg.colorable.colorable-delay path.c-w {
    transition: all .3s .3s;
}
.payment-page .branding-block .sample-main .summary-wrapper {
    padding: 16px 12px;
    background: var(--color-white);
    border: 1px solid var(--color-black-10);
    border-radius: var(--radius-8);
    transition: all .3s .3s;
}
.payment-page .branding-block .sample-main .summary-wrapper .title {
    color: var(--color-black-100);
    font-weight: var(--font-weight-black);
    text-align: center;
    transition: color .3s .3s;
}
.payment-page .branding-block .sample-main .summary-wrapper .table { padding-top: 8px; }
.payment-page .branding-block .sample-main .summary-wrapper .table .row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 8px;
}
.payment-page .branding-block .sample-main .summary-wrapper .table .row.border {
    padding-bottom: 8px;
    border-bottom: 1px solid var(--color-black-10);
    transition: border-bottom-color .3s .3s;
}
.payment-page .branding-block .sample-main .summary-wrapper .table .products { display: none; }
.payment-page .branding-block .sample-main .summary-wrapper .table .products svg { display: block; }
.payment-page .branding-block .sample-main .summary-wrapper .table span {
    font-size: var(--font-size-12);
    line-height: var(--line-height-18);
}
.payment-page .branding-block .sample-main .summary-wrapper .table .value {
    color: var(--color-black-100);
    font-weight: var(--font-weight-bold);
    transition: color .3s .3s;
}
.payment-page .branding-block .sample-main .summary-footer {
    margin-top: auto;
    padding: 12px 0;
    transition: color .3s;
}
.payment-page .branding-block .sample-main .summary-footer .row {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--font-size-12);
    line-height: var(--line-height-18);
}
.payment-page .branding-block .sample-main .summary-footer .row.links { padding-top: 8px; }
.payment-page .branding-block .sample-main .summary-footer .logo-wrapper {
    width: 82px;
    margin-right: 12px;
}
.payment-page .branding-block .sample-main .summary-footer .lang-switch svg { margin-bottom: -5px; }
.payment-page .branding-block .sample-main .summary-footer .row.links svg { margin-bottom: -3px; }
.payment-page .branding-block .sample-main .summary-footer .email {
    margin-right: 12px;
    padding-right: 12px;
    border-right: 1px solid var(--color-black-10);
}
.payment-page .branding-block .sample-main .summary-footer .socials svg:not(:last-child) { margin-right: 4px; }
.payment-page .branding-block .sample-main .checkout-container {
    width: 50%;
    padding: 100px 36px 12px;
    background: var(--color-white);
    border-left: 1px solid var(--color-white);
    transition: all .3s;
}
.payment-page .branding-block .sample-main .payments-wrapper { display: none; }
.payment-page .branding-block .sample-main .checkout-btn {
    display: none;
    padding: 9px 20px;
    background: #111;
    border-radius: var(--radius-8);
    opacity: 0;
    transition: background-color .5s;
}
.payment-page .branding-block .sample-main .checkout-btn:not(:first-child) { margin-top: 8px; }
.payment-page .branding-block .sample-main .checkout-btn svg {
    display: block;
    margin: 0 auto;
}
.payment-page .branding-block .sample-main .checkout-btn.r-pay { position: relative; }
.payment-page .branding-block .sample-main .checkout-btn.r-pay svg.w { transition: opacity .3s; }
.payment-page .branding-block .sample-main .checkout-btn.r-pay svg.b {
    position: absolute;
    top: 50%;
    left: 50%;
    opacity: 0;
    transform: translate(-50%, -50%);
    transition: opacity .3s;
}
.payment-page .branding-block .sample-main .checkout-container .divider {
    position: relative;
    margin-top: 16px;
    margin-bottom: 16px;
    font-size: var(--font-size-12);
    line-height: var(--line-height-18);
    text-align: center;
}
.payment-page .branding-block .sample-main .checkout-container .divider .label {
    position: relative;
    padding: 0 4px;
    background: var(--color-white);
    transition: all .3s;
}
.payment-page .branding-block .sample-main .checkout-container .divider:before {
    content: "";
    position: absolute;
    top: 7px;
    left: 0;
    width: 100%;
    border-bottom: 1px dashed var(--color-grey-300);
    transition: border-bottom-color .3s;
}
.payment-page .branding-block .sample-main .card-container .pseudo-input {
    padding: 9px 12px;
    color: #727272;
    background: var(--color-white);
    border: 1px solid var(--color-grey-300);
    border-radius: var(--radius-8);
    line-height: var(--line-height-16);
    transition: all .3s .3s;
}
.payment-page .branding-block .sample-main .card-container .row {
    display: flex;
    padding-top: 20px;
}
.payment-page .branding-block .sample-main .card-container .row .pseudo-input { width: calc((100% - 12px) / 2); }
.payment-page .branding-block .sample-main .card-container .pseudo-input.cvv {
    position: relative;
    margin-left: 12px;
}
.payment-page .branding-block .sample-main .card-container .pseudo-input.cvv svg {
    position: absolute;
    top: 10px;
    right: 22px;
}
.payment-page .branding-block .sample-main .card-container .btn-wrapper { padding-top: 16px; }
.payment-page .branding-block .sample-main .card-container .pseudo-btn {
    width: 100%;
    padding: 9px;
    background: #00883a;
    color: var(--color-white);
    border-radius: var(--radius-8);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-20);
    text-align: center;
    transition: background-color 0.3s;
}
.payment-page .branding-block .sample-main .card-container .secure {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 12px;
}
.payment-page .branding-block .sample-main .card-container .secure span {
    width: 48px;
    font-size: 8px;
    line-height: 9px;
    text-align: center;
    transition: color .3s;
}
.payment-page .branding-block .sample-main .card-container .secure svg { margin-left: 20px; }
.payment-page .branding-block .sample-main .checkout-container .summary-footer {
    display: none;
    padding: 40px 0 0;
}

@media (max-width: 992px) {
    .payment-page .branding-block .sample-container { width: 680px; }
    .payment-page .branding-block .sample-header { height: 30px; }
}
@media (max-width: 768px) {
    .payment-page .branding-block .sample-container {
        width: 100%;
        margin-top: 30px;
        padding: 0 30px;
    }
    .payment-page .branding-block .sample-header { height: 22px; }
    .payment-page .branding-block .sample-main { flex-direction: column; }
    .payment-page .branding-block .sample-main .summary-container {
        min-height: unset;
        width: 100%;
        padding: 30px 40px;
    }
    .payment-page .branding-block .sample-main .summary-container .summary-footer { display: none; }
    .payment-page .branding-block .sample-main .checkout-container {
        width: 100%;
        padding: 30px 40px 20px;
    }
    .payment-page .branding-block .sample-main .checkout-container .summary-footer { display: block; }
}
@media (max-width: 576px) {
    .payment-page .branding-block .sample-container { padding: 0 10px; }
    .payment-page .branding-block .sample-header { height: unset; }
    .payment-page .branding-block .sample-main .summary-container { padding: 30px 15px; }
    .payment-page .branding-block .sample-main .checkout-container { padding: 30px 15px 20px; }
    .payment-page .branding-block .sample-main .summary-footer .email {
        margin-right: 6px;
        padding-right: 6px;
    }
}
/* </editor-fold> */
/* <editor-fold desc="PAYMENT PAGE | Branding block | Sample container | -modifiers"> */
.payment-page .branding-block.-logo .sample-main .checkout-logo-wrapper { opacity: 1; }
.payment-page .branding-block.-products .sample-main .summary-wrapper .table .products { display: block; }
.payment-page .branding-block.-g-pay .sample-main .checkout-btn.g-pay,
.payment-page .branding-block.-a-pay .sample-main .checkout-btn.a-pay,
.payment-page .branding-block.-p-pay .sample-main .checkout-btn.p-pay,
.payment-page .branding-block.-r-pay .sample-main .checkout-btn.r-pay {
    display: block;
    opacity: 1;
}
.payment-page .branding-block.-payments .sample-main .payments-wrapper { display: block; }
.payment-page .branding-block.-dark .sample-main { background: var(--color-black-100); }
.payment-page .branding-block.-dark .sample-main .checkout-container {
    background: var(--color-black-100);
    border-left-color: var(--color-black-60);
}
.payment-page .branding-block.-dark .sample-main svg.colorable path.c-b { fill: var(--color-white); }
.payment-page .branding-block.-dark .sample-main svg.colorable path.c-w { fill: var(--color-black-100); }
.payment-page .branding-block.-dark .sample-main .summary-wrapper {
    color: var(--color-white);
    background: #383535;
    border-color: var(--color-black-60);
}
.payment-page .branding-block.-dark .sample-main .summary-wrapper .title,
.payment-page .branding-block.-dark .sample-main .summary-wrapper .table .value {
    color: var(--color-white);
}
.payment-page .branding-block.-dark .sample-main .summary-wrapper .table .row.border { border-bottom-color: #787878; }
.payment-page .branding-block.-dark .sample-main .summary-footer { color: var(--color-white); }
.payment-page .branding-block.-dark .sample-main .checkout-btn { background: var(--color-white); }
.payment-page .branding-block.-dark .sample-main .checkout-btn.r-pay svg.w { opacity: 0; }
.payment-page .branding-block.-dark .sample-main .checkout-btn.r-pay svg.b { opacity: 1; }
.payment-page .branding-block.-dark .sample-main .checkout-container .divider .label {
    color: var(--color-white);
    background: var(--color-black-100);
}
.payment-page .branding-block.-dark .sample-main .checkout-container .divider:before { border-bottom-color: var(--color-black-80); }
.payment-page .branding-block.-dark .sample-main .card-container .pseudo-input {
    color: var(--color-grey-300);
    background: #2d2a2a;
    border-color: var(--color-grey-300);
}
.payment-page .branding-block.-dark .sample-main .card-container .secure span { color: var(--color-white); }
.payment-page .branding-block .sample-main .summary-wrapper .table .value.custom-colored {
    color: #00883a;
    font-size: var(--font-size-16);
    line-height: var(--line-height-22);
    transition: color .3s;
}
/* </editor-fold> */

/* <editor-fold desc="CONTACTS PAGE"> */
.contacts-page { padding-bottom: 80px; }
.contacts-page .container { display: flex; justify-content: space-between; }
.contacts-page .info-container {
    width: 572px;
    margin-right: 20px;
}
.contacts-page .title { padding-bottom: 16px; }
.contacts-page .info-wrapper {
    padding-top: 24px;
    color: var(--color-black-100);
}
.contacts-page .info-wrapper .label {
    font-size: var(--font-size-18);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-24);
}
@media (min-width: 1279px) {
    .contacts-page .info-wrapper .label {
        font-size: var(--font-size-24);
        line-height: var(--line-height-30);
        margin-bottom: 8px;
    }
}
.contacts-page .info-wrapper .info {
    font-size: var(--font-size-18);
    line-height: var(--line-height-24);
}
/* .contacts-page .info-wrapper .info.list-style {
    display: list-item;
    margin-left: 30px;
} */
.contacts-page .info-wrapper .info a { color: #086bff; }
.contacts-page .contact-form-box {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 570px;
    margin-top: 12px;
    padding: 40px 63px;
    border-radius: var(--radius-8);
    background-color: var(--color-white);
}
.contacts-page .contact-form-box .need-support-form {
    max-width: 100%;
    width: 100%;
}
.contacts-page .contact-form-box::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    -webkit-box-shadow:-4px -8px 11px 0px #9dffb7 ,-2px 6px 11px 0px #a0c2fa ,5px -2px 12px 0px #c3b4f6 ;
    -moz-box-shadow:-4px -8px 11px 0px #9dffb7 ,-2px 6px 11px 0px #a0c2fa ,5px -2px 12px 0px #c3b4f6 ;
    box-shadow:-4px -8px 11px 0px #9dffb7 ,-2px 6px 11px 0px #a0c2fa ,5px -2px 12px 0px #c3b4f6 ;
    border-radius: var(--radius-8);
    -webkit-border-radius: var(--radius-8);
    -moz-border-radius: var(--radius-8);
    -ms-border-radius: var(--radius-8);
    -o-border-radius: var(--radius-8);
    margin: auto;
}
.contacts-page .contact-form-box .form-v3-container { padding: 0; }
.contacts-page .contact-form-box .form-title {
    color: var(--color-black-100);
    font-size: var(--font-size-18);
    line-height: var(--line-height-24);
    padding-bottom: 24px;
}
.contacts-page .contact-form-box .input-block { padding-top: 0; }
.contacts-page .contact-form-box .radio-wrap { display: flex; }
.contacts-page .contact-form-box .radio-wrap:not(:last-child) { padding-bottom: 16px; }
.contacts-page .contact-form-box .btn-wrapper { padding-top: 8px; }
.contacts-page .contact-form-box .submit-btn { padding: 9px; }

.contacts-page .contact-form-box .thank-you-container {
    display: none;
    text-align: center;
}
.contacts-page .contact-form-box .thank-you-container .img-wrapper { max-width: 131px; margin: 0 auto; }
.contacts-page .contact-form-box .thank-you-container .ty-title {
    padding-top: 40px;
    font-size: var(--font-size-28);
    line-height: var(--line-height-34)!important;
}
.contacts-page .contact-form-box .thank-you-container .ty-subtitle {
    padding-top: 16px;
    font-size: var(--font-size-18);
    line-height: var(--line-height-24);
}

@media (max-width: 1300px) {
    .contacts-page .info-container,
    .contacts-page .contact-form-box {
        width: calc(50% - 10px);
    }
}
@media (max-width: 992px) {
    .contacts-page .contact-form-box { padding: 40px 20px; }
}
@media (max-width: 768px) {
    .contacts-page .container { flex-direction: column; justify-content: flex-start; }
    .contacts-page .info-container {
        width: 100%;
        margin-right: 0;
    }
    .contacts-page .title {
        padding-bottom: 0;
        font-size: var(--font-size-24);
        line-height: var(--line-height-30);
    }
    .contacts-page .contact-form-box {
        width: 100%;
        margin-top: 24px;
        padding: 24px 16px;
    }
    .contacts-page .contact-form-box .thank-you-container .ty-title {
        font-size: var(--font-size-24);
        line-height: var(--line-height-30)!important;
        padding: 0;
        margin-top: 24px;
    }
}

@media (max-width: 375px) {
    .contacts-page .contact-form-box { padding: 24px 15px; }
}
/* </editor-fold> */

/* <editor-fold desc="404 PAGE"> */
body.error404 header,
body.error404 footer { display: none; }
body.error404 main { margin-top: 0; }
.page-404 {
    height: 100%;
    padding: 0 30px;
}
.page-404 .page-container {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 1215px;
    width: 100%;
    height: 100%;
    margin: 0 auto;
}
.page-404 .page-container .background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.page-404 .title-container {
    display: inline-block;
    padding-top: 41px;
    padding-left: 243px;
    text-align: center;
}
.page-404 .title {
    color: var(--color-black-100);
    font-size: 128px;
    font-weight: var(--font-weight-black);
    line-height: 136px;
}
.page-404 .title.e404 { padding-top: 32px; }
.page-404 .eyes {
    position: relative;
    top: -21px;
    width: 500px;
    height: 419px;
    margin-left: auto;
    margin-right: 291px;
}
.page-404 .eyes .left-eyebrow {
    animation: left-eyebrow 3s ease-out;
    animation-iteration-count: infinite;
    -webkit-animation: left-eyebrow 3s ease-out;
    -webkit-animation-iteration-count: infinite;
}
.page-404 .eyes .right-eyebrow {
    animation: right-eyebrow 3s ease-out;
    animation-iteration-count: infinite;
    -webkit-animation: right-eyebrow 3s ease-out;
    -webkit-animation-iteration-count: infinite;
}
.page-404 .eyes .mouth {
    animation: mouth 3s ease-out;
    animation-iteration-count: infinite;
    -webkit-animation: mouth 3s ease-out;
    -webkit-animation-iteration-count: infinite;
}
@keyframes left-eyebrow {
    0% { -webkit-transform: translateY(0); }
    50% { -webkit-transform: translateY(5px); }
    100% { -webkit-transform: translateY(0); }
}
@keyframes right-eyebrow {
    0% { -webkit-transform: translateY(0); }
    50% { -webkit-transform: translateY(15px); }
    100% { -webkit-transform: translateY(0); }
}
@keyframes mouth {
    0% { -webkit-transform: translateX(0); }
    50% { -webkit-transform: translateX(10px); }
    100% { -webkit-transform: translateX(0); }
}
.page-404 .btn-wrapper { margin: auto auto 50px; }
.page-404 .btn-wrapper .btn { width: 320px; }
.page-404 .btn-wrapper .btn:before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 10px;
    margin-bottom: -2px;
    background: url(../images/arrow-right.svg) center center no-repeat;
    transform: rotate(180deg);
}

@media (max-width: 1300px) {
    .page-404 .eyes { margin-right: 130px; }
}
@media (max-width: 992px) {
    .page-404 .title-container {
        margin-top: auto;
        padding: 0 0 27px 210px;
    }
    .page-404 .title {
        font-size: 64px;
        line-height: 72px;
    }
    .page-404 .eyes {
        top: 0;
        width: 287px;
        height: 241px;
        margin-bottom: 57px;
    }
    .page-404 .btn-wrapper {
        margin-top: 0;
        margin-bottom: 64px;
    }
}
@media (max-width: 768px) {
    .page-404 {
        padding: 0;
        background: #e0f6ef;
    }
    .page-404 .page-container .background { display: none; }
    .page-404 .title-container {
        margin-left: auto;
        margin-right: auto;
        padding: 0 80px 27px 0;
    }
    .page-404 .eyes {
        margin-left: auto;
        margin-right: auto;
    }
    .page-404 .btn-wrapper .btn { width: 268px; }
}
/* </editor-fold> */
