/*!
 * Bootstrap Reboot v4.3.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 The Bootstrap Authors
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
 */
*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    font-family: sans-serif;
    line-height: 1.15;

    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

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

body {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;

    margin: 0;

    text-align: left;

    color: #212529;
    background-color: #fff;
}

[tabindex='-1']:focus {
    outline: 0 !important;
}

hr {
    overflow: visible;

    box-sizing: content-box;
    height: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    margin-bottom: .5rem;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
    cursor: help;
    text-decoration: underline;
    text-decoration: underline dotted;

    border-bottom: 0;

    -webkit-text-decoration: underline dotted;
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
}

address {
    font-style: normal;
    line-height: inherit;

    margin-bottom: 1rem;
}

ol,
ul,
dl {
    margin-top: 0;
    margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
    margin-bottom: 0;
}

dt {
    font-weight: 700;
}

dd {
    margin-bottom: .5rem;
    margin-left: 0;
}

blockquote {
    margin: 0 0 1rem;
}

b,
strong {
    font-weight: bolder;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;

    position: relative;

    vertical-align: baseline;
}

sub {
    bottom: -.25em;
}

sup {
    top: -.5em;
}

a {
    text-decoration: none;

    color: #007bff;
    background-color: transparent;
}

a:hover {
    text-decoration: underline;

    color: #0056b3;
}

a:not([href]):not([tabindex]) {
    text-decoration: none;

    color: inherit;
}

a:not([href]):not([tabindex]):hover,
a:not([href]):not([tabindex]):focus {
    text-decoration: none;

    color: inherit;
}

a:not([href]):not([tabindex]):focus {
    outline: 0;
}

pre,
code,
kbd,
samp {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
    font-size: 1em;
}

pre {
    overflow: auto;

    margin-top: 0;
    margin-bottom: 1rem;
}

figure {
    margin: 0 0 1rem;
}

img {
    vertical-align: middle;

    border-style: none;
}

svg {
    overflow: hidden;

    vertical-align: middle;
}

table {
    border-collapse: collapse;
}

caption {
    padding-top: .75rem;
    padding-bottom: .75rem;

    caption-side: bottom;

    text-align: left;

    color: #6c757d;
}

th {
    text-align: inherit;
}

label {
    display: inline-block;

    margin-bottom: .5rem;
}

button {
    border-radius: 0;
}

button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;

    margin: 0;
}

button,
input {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

select {
    word-wrap: normal;
}

button,
[type='button'],
[type='reset'],
[type='submit'] {
    -webkit-appearance: button;
}

button:not(:disabled),
[type='button']:not(:disabled),
[type='reset']:not(:disabled),
[type='submit']:not(:disabled) {
    cursor: pointer;
}

button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
    padding: 0;

    border-style: none;
}

input[type='radio'],
input[type='checkbox'] {
    box-sizing: border-box;
    padding: 0;
}

input[type='date'],
input[type='time'],
input[type='datetime-local'],
input[type='month'] {
    -webkit-appearance: listbox;
}

textarea {
    overflow: auto;

    resize: vertical;
}

fieldset {
    min-width: 0;
    margin: 0;
    padding: 0;

    border: 0;
}

legend {
    font-size: 1.5rem;
    line-height: inherit;

    display: block;

    width: 100%;
    max-width: 100%;
    margin-bottom: .5rem;
    padding: 0;

    white-space: normal;

    color: inherit;
}

progress {
    vertical-align: baseline;
}

[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
    height: auto;
}

[type='search'] {
    outline-offset: -2px;

    -webkit-appearance: none;
}

[type='search']::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-file-upload-button {
    font: inherit;

    -webkit-appearance: button;
}

output {
    display: inline-block;
}

summary {
    display: list-item;

    cursor: pointer;
}

template {
    display: none;
}

[hidden] {
    display: none !important;
}

/*!
 * animate.css - https://animate.style/
 * Version - 4.1.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2020 Animate.css
 */
:root {
    --animate-duration: 1s;
    --animate-delay: 1s;
    --animate-repeat: 1;
}

.animate__animated {
    animation-duration: 1s;
    animation-duration: var(--animate-duration);

    animation-fill-mode: both;
}

.animate__animated.animate__infinite {
    animation-iteration-count: infinite;
}

.animate__animated.animate__repeat-1 {
    animation-iteration-count: 1;
    animation-iteration-count: var(--animate-repeat);
}

.animate__animated.animate__repeat-2 {
    animation-iteration-count: 2;
    animation-iteration-count: calc(var(--animate-repeat) * 2);
}

.animate__animated.animate__repeat-3 {
    animation-iteration-count: 3;
    animation-iteration-count: calc(var(--animate-repeat) * 3);
}

.animate__animated.animate__delay-1s {
    animation-delay: 1s;
    animation-delay: var(--animate-delay);
}

.animate__animated.animate__delay-2s {
    animation-delay: 2s;
    animation-delay: calc(var(--animate-delay) * 2);
}

.animate__animated.animate__delay-3s {
    animation-delay: 3s;
    animation-delay: calc(var(--animate-delay) * 3);
}

.animate__animated.animate__delay-4s {
    animation-delay: 4s;
    animation-delay: calc(var(--animate-delay) * 4);
}

.animate__animated.animate__delay-5s {
    animation-delay: 5s;
    animation-delay: calc(var(--animate-delay) * 5);
}

.animate__animated.animate__faster {
    animation-duration: .5s;
    animation-duration: calc(var(--animate-duration) / 2);
}

.animate__animated.animate__fast {
    animation-duration: .8s;
    animation-duration: calc(var(--animate-duration) * .8);
}

.animate__animated.animate__slow {
    animation-duration: 2s;
    animation-duration: calc(var(--animate-duration) * 2);
}

.animate__animated.animate__slower {
    animation-duration: 3s;
    animation-duration: calc(var(--animate-duration) * 3);
}

@media (prefers-reduced-motion: reduce), print {
    .animate__animated {
        transition-duration: 1ms !important;
        animation-duration: 1ms !important;
        animation-iteration-count: 1 !important;
    }

    .animate__animated[class*=Out] {
        opacity: 0;
    }
}

@keyframes bounce {
    0%,
    20%,
    53%,
    to {
        transform: translateZ(0);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }
    40%,
    43% {
        transform: translate3d(0, -30px, 0) scaleY(1.1);
        animation-timing-function: cubic-bezier(.755, .05, .855, .06);
    }
    70% {
        transform: translate3d(0, -15px, 0) scaleY(1.05);
        animation-timing-function: cubic-bezier(.755, .05, .855, .06);
    }
    80% {
        transition-timing-function: cubic-bezier(.215, .61, .355, 1);
        transform: translateZ(0) scaleY(.95);
    }
    90% {
        transform: translate3d(0, -4px, 0) scaleY(1.02);
    }
}

.animate__bounce {
    transform-origin: center bottom;
    animation-name: bounce;
}

@keyframes flash {
    0%,
    50%,
    to {
        opacity: 1;
    }
    25%,
    75% {
        opacity: 0;
    }
}

.animate__flash {
    animation-name: flash;
}

@keyframes pulse {
    0% {
        transform: scaleX(1);
    }
    50% {
        transform: scale3d(1.05, 1.05, 1.05);
    }
    to {
        transform: scaleX(1);
    }
}

.animate__pulse {
    animation-name: pulse;
    animation-timing-function: ease-in-out;
}

@keyframes rubberBand {
    0% {
        transform: scaleX(1);
    }
    30% {
        transform: scale3d(1.25, .75, 1);
    }
    40% {
        transform: scale3d(.75, 1.25, 1);
    }
    50% {
        transform: scale3d(1.15, .85, 1);
    }
    65% {
        transform: scale3d(.95, 1.05, 1);
    }
    75% {
        transform: scale3d(1.05, .95, 1);
    }
    to {
        transform: scaleX(1);
    }
}

.animate__rubberBand {
    animation-name: rubberBand;
}

@keyframes shakeX {
    0%,
    to {
        transform: translateZ(0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        transform: translate3d(-10px, 0, 0);
    }
    20%,
    40%,
    60%,
    80% {
        transform: translate3d(10px, 0, 0);
    }
}

.animate__shakeX {
    animation-name: shakeX;
}

@keyframes shakeY {
    0%,
    to {
        transform: translateZ(0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        transform: translate3d(0, -10px, 0);
    }
    20%,
    40%,
    60%,
    80% {
        transform: translate3d(0, 10px, 0);
    }
}

.animate__shakeY {
    animation-name: shakeY;
}

@keyframes headShake {
    0% {
        transform: translateX(0);
    }
    6.5% {
        transform: translateX(-6px) rotateY(-9deg);
    }
    18.5% {
        transform: translateX(5px) rotateY(7deg);
    }
    31.5% {
        transform: translateX(-3px) rotateY(-5deg);
    }
    43.5% {
        transform: translateX(2px) rotateY(3deg);
    }
    50% {
        transform: translateX(0);
    }
}

.animate__headShake {
    animation-name: headShake;
    animation-timing-function: ease-in-out;
}

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

.animate__swing {
    transform-origin: top center;
    animation-name: swing;
}

@keyframes tada {
    0% {
        transform: scaleX(1);
    }
    10%,
    20% {
        transform: scale3d(.9, .9, .9) rotate(-3deg);
    }
    30%,
    50%,
    70%,
    90% {
        transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
    }
    40%,
    60%,
    80% {
        transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
    }
    to {
        transform: scaleX(1);
    }
}

.animate__tada {
    animation-name: tada;
}

@keyframes wobble {
    0% {
        transform: translateZ(0);
    }
    15% {
        transform: translate3d(-25%, 0, 0) rotate(-5deg);
    }
    30% {
        transform: translate3d(20%, 0, 0) rotate(3deg);
    }
    45% {
        transform: translate3d(-15%, 0, 0) rotate(-3deg);
    }
    60% {
        transform: translate3d(10%, 0, 0) rotate(2deg);
    }
    75% {
        transform: translate3d(-5%, 0, 0) rotate(-1deg);
    }
    to {
        transform: translateZ(0);
    }
}

.animate__wobble {
    animation-name: wobble;
}

@keyframes jello {
    0%,
    11.1%,
    to {
        transform: translateZ(0);
    }
    22.2% {
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }
    33.3% {
        transform: skewX(6.25deg) skewY(6.25deg);
    }
    44.4% {
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }
    55.5% {
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }
    66.6% {
        transform: skewX(-.78125deg) skewY(-.78125deg);
    }
    77.7% {
        transform: skewX(.39063deg) skewY(.39063deg);
    }
    88.8% {
        transform: skewX(-.19531deg) skewY(-.19531deg);
    }
}

.animate__jello {
    transform-origin: center;
    animation-name: jello;
}

@keyframes heartBeat {
    0% {
        transform: scale(1);
    }
    14% {
        transform: scale(1.3);
    }
    28% {
        transform: scale(1);
    }
    42% {
        transform: scale(1.3);
    }
    70% {
        transform: scale(1);
    }
}

.animate__heartBeat {
    animation-name: heartBeat;
    animation-duration: 1.3s;
    animation-duration: calc(var(--animate-duration) * 1.3);
    animation-timing-function: ease-in-out;
}

@keyframes backInDown {
    0% {
        transform: translateY(-1200px) scale(.7);

        opacity: .7;
    }
    80% {
        transform: translateY(0) scale(.7);

        opacity: .7;
    }
    to {
        transform: scale(1);

        opacity: 1;
    }
}

.animate__backInDown {
    animation-name: backInDown;
}

@keyframes backInLeft {
    0% {
        transform: translateX(-2000px) scale(.7);

        opacity: .7;
    }
    80% {
        transform: translateX(0) scale(.7);

        opacity: .7;
    }
    to {
        transform: scale(1);

        opacity: 1;
    }
}

.animate__backInLeft {
    animation-name: backInLeft;
}

@keyframes backInRight {
    0% {
        transform: translateX(2000px) scale(.7);

        opacity: .7;
    }
    80% {
        transform: translateX(0) scale(.7);

        opacity: .7;
    }
    to {
        transform: scale(1);

        opacity: 1;
    }
}

.animate__backInRight {
    animation-name: backInRight;
}

@keyframes backInUp {
    0% {
        transform: translateY(1200px) scale(.7);

        opacity: .7;
    }
    80% {
        transform: translateY(0) scale(.7);

        opacity: .7;
    }
    to {
        transform: scale(1);

        opacity: 1;
    }
}

.animate__backInUp {
    animation-name: backInUp;
}

@keyframes backOutDown {
    0% {
        transform: scale(1);

        opacity: 1;
    }
    20% {
        transform: translateY(0) scale(.7);

        opacity: .7;
    }
    to {
        transform: translateY(700px) scale(.7);

        opacity: .7;
    }
}

.animate__backOutDown {
    animation-name: backOutDown;
}

@keyframes backOutLeft {
    0% {
        transform: scale(1);

        opacity: 1;
    }
    20% {
        transform: translateX(0) scale(.7);

        opacity: .7;
    }
    to {
        transform: translateX(-2000px) scale(.7);

        opacity: .7;
    }
}

.animate__backOutLeft {
    animation-name: backOutLeft;
}

@keyframes backOutRight {
    0% {
        transform: scale(1);

        opacity: 1;
    }
    20% {
        transform: translateX(0) scale(.7);

        opacity: .7;
    }
    to {
        transform: translateX(2000px) scale(.7);

        opacity: .7;
    }
}

.animate__backOutRight {
    animation-name: backOutRight;
}

@keyframes backOutUp {
    0% {
        transform: scale(1);

        opacity: 1;
    }
    20% {
        transform: translateY(0) scale(.7);

        opacity: .7;
    }
    to {
        transform: translateY(-700px) scale(.7);

        opacity: .7;
    }
}

.animate__backOutUp {
    animation-name: backOutUp;
}

@keyframes bounceIn {
    0%,
    20%,
    40%,
    60%,
    80%,
    to {
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }
    0% {
        transform: scale3d(.3, .3, .3);

        opacity: 0;
    }
    20% {
        transform: scale3d(1.1, 1.1, 1.1);
    }
    40% {
        transform: scale3d(.9, .9, .9);
    }
    60% {
        transform: scale3d(1.03, 1.03, 1.03);

        opacity: 1;
    }
    80% {
        transform: scale3d(.97, .97, .97);
    }
    to {
        transform: scaleX(1);

        opacity: 1;
    }
}

.animate__bounceIn {
    animation-name: bounceIn;
    animation-duration: .75s;
    animation-duration: calc(var(--animate-duration) * .75);
}

@keyframes bounceInDown {
    0%,
    60%,
    75%,
    90%,
    to {
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }
    0% {
        transform: translate3d(0, -3000px, 0) scaleY(3);

        opacity: 0;
    }
    60% {
        transform: translate3d(0, 25px, 0) scaleY(.9);

        opacity: 1;
    }
    75% {
        transform: translate3d(0, -10px, 0) scaleY(.95);
    }
    90% {
        transform: translate3d(0, 5px, 0) scaleY(.985);
    }
    to {
        transform: translateZ(0);
    }
}

.animate__bounceInDown {
    animation-name: bounceInDown;
}

@keyframes bounceInLeft {
    0%,
    60%,
    75%,
    90%,
    to {
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }
    0% {
        transform: translate3d(-3000px, 0, 0) scaleX(3);

        opacity: 0;
    }
    60% {
        transform: translate3d(25px, 0, 0) scaleX(1);

        opacity: 1;
    }
    75% {
        transform: translate3d(-10px, 0, 0) scaleX(.98);
    }
    90% {
        transform: translate3d(5px, 0, 0) scaleX(.995);
    }
    to {
        transform: translateZ(0);
    }
}

.animate__bounceInLeft {
    animation-name: bounceInLeft;
}

@keyframes bounceInRight {
    0%,
    60%,
    75%,
    90%,
    to {
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }
    0% {
        transform: translate3d(3000px, 0, 0) scaleX(3);

        opacity: 0;
    }
    60% {
        transform: translate3d(-25px, 0, 0) scaleX(1);

        opacity: 1;
    }
    75% {
        transform: translate3d(10px, 0, 0) scaleX(.98);
    }
    90% {
        transform: translate3d(-5px, 0, 0) scaleX(.995);
    }
    to {
        transform: translateZ(0);
    }
}

.animate__bounceInRight {
    animation-name: bounceInRight;
}

@keyframes bounceInUp {
    0%,
    60%,
    75%,
    90%,
    to {
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    }
    0% {
        transform: translate3d(0, 3000px, 0) scaleY(5);

        opacity: 0;
    }
    60% {
        transform: translate3d(0, -20px, 0) scaleY(.9);

        opacity: 1;
    }
    75% {
        transform: translate3d(0, 10px, 0) scaleY(.95);
    }
    90% {
        transform: translate3d(0, -5px, 0) scaleY(.985);
    }
    to {
        transform: translateZ(0);
    }
}

.animate__bounceInUp {
    animation-name: bounceInUp;
}

@keyframes bounceOut {
    20% {
        transform: scale3d(.9, .9, .9);
    }
    50%,
    55% {
        transform: scale3d(1.1, 1.1, 1.1);

        opacity: 1;
    }
    to {
        transform: scale3d(.3, .3, .3);

        opacity: 0;
    }
}

.animate__bounceOut {
    animation-name: bounceOut;
    animation-duration: .75s;
    animation-duration: calc(var(--animate-duration) * .75);
}

@keyframes bounceOutDown {
    20% {
        transform: translate3d(0, 10px, 0) scaleY(.985);
    }
    40%,
    45% {
        transform: translate3d(0, -20px, 0) scaleY(.9);

        opacity: 1;
    }
    to {
        transform: translate3d(0, 2000px, 0) scaleY(3);

        opacity: 0;
    }
}

.animate__bounceOutDown {
    animation-name: bounceOutDown;
}

@keyframes bounceOutLeft {
    20% {
        transform: translate3d(20px, 0, 0) scaleX(.9);

        opacity: 1;
    }
    to {
        transform: translate3d(-2000px, 0, 0) scaleX(2);

        opacity: 0;
    }
}

.animate__bounceOutLeft {
    animation-name: bounceOutLeft;
}

@keyframes bounceOutRight {
    20% {
        transform: translate3d(-20px, 0, 0) scaleX(.9);

        opacity: 1;
    }
    to {
        transform: translate3d(2000px, 0, 0) scaleX(2);

        opacity: 0;
    }
}

.animate__bounceOutRight {
    animation-name: bounceOutRight;
}

@keyframes bounceOutUp {
    20% {
        transform: translate3d(0, -10px, 0) scaleY(.985);
    }
    40%,
    45% {
        transform: translate3d(0, 20px, 0) scaleY(.9);

        opacity: 1;
    }
    to {
        transform: translate3d(0, -2000px, 0) scaleY(3);

        opacity: 0;
    }
}

.animate__bounceOutUp {
    animation-name: bounceOutUp;
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.animate__fadeIn {
    animation-name: fadeIn;
}

@keyframes fadeInDown {
    0% {
        transform: translate3d(0, -100%, 0);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__fadeInDown {
    animation-name: fadeInDown;
}

@keyframes fadeInDownBig {
    0% {
        transform: translate3d(0, -2000px, 0);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__fadeInDownBig {
    animation-name: fadeInDownBig;
}

@keyframes fadeInLeft {
    0% {
        transform: translate3d(-100%, 0, 0);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__fadeInLeft {
    animation-name: fadeInLeft;
}

@keyframes fadeInLeftBig {
    0% {
        transform: translate3d(-2000px, 0, 0);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__fadeInLeftBig {
    animation-name: fadeInLeftBig;
}

@keyframes fadeInRight {
    0% {
        transform: translate3d(100%, 0, 0);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__fadeInRight {
    animation-name: fadeInRight;
}

@keyframes fadeInRightBig {
    0% {
        transform: translate3d(2000px, 0, 0);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__fadeInRightBig {
    animation-name: fadeInRightBig;
}

@keyframes fadeInUp {
    0% {
        transform: translate3d(0, 100%, 0);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__fadeInUp {
    animation-name: fadeInUp;
}

@keyframes fadeInUpBig {
    0% {
        transform: translate3d(0, 2000px, 0);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__fadeInUpBig {
    animation-name: fadeInUpBig;
}

@keyframes fadeInTopLeft {
    0% {
        transform: translate3d(-100%, -100%, 0);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__fadeInTopLeft {
    animation-name: fadeInTopLeft;
}

@keyframes fadeInTopRight {
    0% {
        transform: translate3d(100%, -100%, 0);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__fadeInTopRight {
    animation-name: fadeInTopRight;
}

@keyframes fadeInBottomLeft {
    0% {
        transform: translate3d(-100%, 100%, 0);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__fadeInBottomLeft {
    animation-name: fadeInBottomLeft;
}

@keyframes fadeInBottomRight {
    0% {
        transform: translate3d(100%, 100%, 0);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__fadeInBottomRight {
    animation-name: fadeInBottomRight;
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

.animate__fadeOut {
    animation-name: fadeOut;
}

@keyframes fadeOutDown {
    0% {
        opacity: 1;
    }
    to {
        transform: translate3d(0, 100%, 0);

        opacity: 0;
    }
}

.animate__fadeOutDown {
    animation-name: fadeOutDown;
}

@keyframes fadeOutDownBig {
    0% {
        opacity: 1;
    }
    to {
        transform: translate3d(0, 2000px, 0);

        opacity: 0;
    }
}

.animate__fadeOutDownBig {
    animation-name: fadeOutDownBig;
}

@keyframes fadeOutLeft {
    0% {
        opacity: 1;
    }
    to {
        transform: translate3d(-100%, 0, 0);

        opacity: 0;
    }
}

.animate__fadeOutLeft {
    animation-name: fadeOutLeft;
}

@keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
    }
    to {
        transform: translate3d(-2000px, 0, 0);

        opacity: 0;
    }
}

.animate__fadeOutLeftBig {
    animation-name: fadeOutLeftBig;
}

@keyframes fadeOutRight {
    0% {
        opacity: 1;
    }
    to {
        transform: translate3d(100%, 0, 0);

        opacity: 0;
    }
}

.animate__fadeOutRight {
    animation-name: fadeOutRight;
}

@keyframes fadeOutRightBig {
    0% {
        opacity: 1;
    }
    to {
        transform: translate3d(2000px, 0, 0);

        opacity: 0;
    }
}

.animate__fadeOutRightBig {
    animation-name: fadeOutRightBig;
}

@keyframes fadeOutUp {
    0% {
        opacity: 1;
    }
    to {
        transform: translate3d(0, -100%, 0);

        opacity: 0;
    }
}

.animate__fadeOutUp {
    animation-name: fadeOutUp;
}

@keyframes fadeOutUpBig {
    0% {
        opacity: 1;
    }
    to {
        transform: translate3d(0, -2000px, 0);

        opacity: 0;
    }
}

.animate__fadeOutUpBig {
    animation-name: fadeOutUpBig;
}

@keyframes fadeOutTopLeft {
    0% {
        transform: translateZ(0);

        opacity: 1;
    }
    to {
        transform: translate3d(-100%, -100%, 0);

        opacity: 0;
    }
}

.animate__fadeOutTopLeft {
    animation-name: fadeOutTopLeft;
}

@keyframes fadeOutTopRight {
    0% {
        transform: translateZ(0);

        opacity: 1;
    }
    to {
        transform: translate3d(100%, -100%, 0);

        opacity: 0;
    }
}

.animate__fadeOutTopRight {
    animation-name: fadeOutTopRight;
}

@keyframes fadeOutBottomRight {
    0% {
        transform: translateZ(0);

        opacity: 1;
    }
    to {
        transform: translate3d(100%, 100%, 0);

        opacity: 0;
    }
}

.animate__fadeOutBottomRight {
    animation-name: fadeOutBottomRight;
}

@keyframes fadeOutBottomLeft {
    0% {
        transform: translateZ(0);

        opacity: 1;
    }
    to {
        transform: translate3d(-100%, 100%, 0);

        opacity: 0;
    }
}

.animate__fadeOutBottomLeft {
    animation-name: fadeOutBottomLeft;
}

@keyframes flip {
    0% {
        transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
        animation-timing-function: ease-out;
    }
    40% {
        transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
        animation-timing-function: ease-out;
    }
    50% {
        transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
        animation-timing-function: ease-in;
    }
    80% {
        transform: perspective(400px) scale3d(.95, .95, .95) translateZ(0) rotateY(0deg);
        animation-timing-function: ease-in;
    }
    to {
        transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
        animation-timing-function: ease-in;
    }
}

.animate__animated.animate__flip {
    animation-name: flip;

    -webkit-backface-visibility: visible;
    backface-visibility: visible;
}

@keyframes flipInX {
    0% {
        transform: perspective(400px) rotateX(90deg);
        animation-timing-function: ease-in;

        opacity: 0;
    }
    40% {
        transform: perspective(400px) rotateX(-20deg);
        animation-timing-function: ease-in;
    }
    60% {
        transform: perspective(400px) rotateX(10deg);

        opacity: 1;
    }
    80% {
        transform: perspective(400px) rotateX(-5deg);
    }
    to {
        transform: perspective(400px);
    }
}

.animate__flipInX {
    animation-name: flipInX;

    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
}

@keyframes flipInY {
    0% {
        transform: perspective(400px) rotateY(90deg);
        animation-timing-function: ease-in;

        opacity: 0;
    }
    40% {
        transform: perspective(400px) rotateY(-20deg);
        animation-timing-function: ease-in;
    }
    60% {
        transform: perspective(400px) rotateY(10deg);

        opacity: 1;
    }
    80% {
        transform: perspective(400px) rotateY(-5deg);
    }
    to {
        transform: perspective(400px);
    }
}

.animate__flipInY {
    animation-name: flipInY;

    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
}

@keyframes flipOutX {
    0% {
        transform: perspective(400px);
    }
    30% {
        transform: perspective(400px) rotateX(-20deg);

        opacity: 1;
    }
    to {
        transform: perspective(400px) rotateX(90deg);

        opacity: 0;
    }
}

.animate__flipOutX {
    animation-name: flipOutX;
    animation-duration: .75s;
    animation-duration: calc(var(--animate-duration) * .75);

    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
}

@keyframes flipOutY {
    0% {
        transform: perspective(400px);
    }
    30% {
        transform: perspective(400px) rotateY(-15deg);

        opacity: 1;
    }
    to {
        transform: perspective(400px) rotateY(90deg);

        opacity: 0;
    }
}

.animate__flipOutY {
    animation-name: flipOutY;
    animation-duration: .75s;
    animation-duration: calc(var(--animate-duration) * .75);

    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
}

@keyframes lightSpeedInRight {
    0% {
        transform: translate3d(100%, 0, 0) skewX(-30deg);

        opacity: 0;
    }
    60% {
        transform: skewX(20deg);

        opacity: 1;
    }
    80% {
        transform: skewX(-5deg);
    }
    to {
        transform: translateZ(0);
    }
}

.animate__lightSpeedInRight {
    animation-name: lightSpeedInRight;
    animation-timing-function: ease-out;
}

@keyframes lightSpeedInLeft {
    0% {
        transform: translate3d(-100%, 0, 0) skewX(30deg);

        opacity: 0;
    }
    60% {
        transform: skewX(-20deg);

        opacity: 1;
    }
    80% {
        transform: skewX(5deg);
    }
    to {
        transform: translateZ(0);
    }
}

.animate__lightSpeedInLeft {
    animation-name: lightSpeedInLeft;
    animation-timing-function: ease-out;
}

@keyframes lightSpeedOutRight {
    0% {
        opacity: 1;
    }
    to {
        transform: translate3d(100%, 0, 0) skewX(30deg);

        opacity: 0;
    }
}

.animate__lightSpeedOutRight {
    animation-name: lightSpeedOutRight;
    animation-timing-function: ease-in;
}

@keyframes lightSpeedOutLeft {
    0% {
        opacity: 1;
    }
    to {
        transform: translate3d(-100%, 0, 0) skewX(-30deg);

        opacity: 0;
    }
}

.animate__lightSpeedOutLeft {
    animation-name: lightSpeedOutLeft;
    animation-timing-function: ease-in;
}

@keyframes rotateIn {
    0% {
        transform: rotate(-200deg);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__rotateIn {
    transform-origin: center;
    animation-name: rotateIn;
}

@keyframes rotateInDownLeft {
    0% {
        transform: rotate(-45deg);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__rotateInDownLeft {
    transform-origin: left bottom;
    animation-name: rotateInDownLeft;
}

@keyframes rotateInDownRight {
    0% {
        transform: rotate(45deg);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__rotateInDownRight {
    transform-origin: right bottom;
    animation-name: rotateInDownRight;
}

@keyframes rotateInUpLeft {
    0% {
        transform: rotate(45deg);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__rotateInUpLeft {
    transform-origin: left bottom;
    animation-name: rotateInUpLeft;
}

@keyframes rotateInUpRight {
    0% {
        transform: rotate(-90deg);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__rotateInUpRight {
    transform-origin: right bottom;
    animation-name: rotateInUpRight;
}

@keyframes rotateOut {
    0% {
        opacity: 1;
    }
    to {
        transform: rotate(200deg);

        opacity: 0;
    }
}

.animate__rotateOut {
    transform-origin: center;
    animation-name: rotateOut;
}

@keyframes rotateOutDownLeft {
    0% {
        opacity: 1;
    }
    to {
        transform: rotate(45deg);

        opacity: 0;
    }
}

.animate__rotateOutDownLeft {
    transform-origin: left bottom;
    animation-name: rotateOutDownLeft;
}

@keyframes rotateOutDownRight {
    0% {
        opacity: 1;
    }
    to {
        transform: rotate(-45deg);

        opacity: 0;
    }
}

.animate__rotateOutDownRight {
    transform-origin: right bottom;
    animation-name: rotateOutDownRight;
}

@keyframes rotateOutUpLeft {
    0% {
        opacity: 1;
    }
    to {
        transform: rotate(-45deg);

        opacity: 0;
    }
}

.animate__rotateOutUpLeft {
    transform-origin: left bottom;
    animation-name: rotateOutUpLeft;
}

@keyframes rotateOutUpRight {
    0% {
        opacity: 1;
    }
    to {
        transform: rotate(90deg);

        opacity: 0;
    }
}

.animate__rotateOutUpRight {
    transform-origin: right bottom;
    animation-name: rotateOutUpRight;
}

@keyframes hinge {
    0% {
        animation-timing-function: ease-in-out;
    }
    20%,
    60% {
        transform: rotate(80deg);
        animation-timing-function: ease-in-out;
    }
    40%,
    80% {
        transform: rotate(60deg);
        animation-timing-function: ease-in-out;

        opacity: 1;
    }
    to {
        transform: translate3d(0, 700px, 0);

        opacity: 0;
    }
}

.animate__hinge {
    transform-origin: top left;
    animation-name: hinge;
    animation-duration: 2s;
    animation-duration: calc(var(--animate-duration) * 2);
}

@keyframes jackInTheBox {
    0% {
        transform: scale(.1) rotate(30deg);
        transform-origin: center bottom;

        opacity: 0;
    }
    50% {
        transform: rotate(-10deg);
    }
    70% {
        transform: rotate(3deg);
    }
    to {
        transform: scale(1);

        opacity: 1;
    }
}

.animate__jackInTheBox {
    animation-name: jackInTheBox;
}

@keyframes rollIn {
    0% {
        transform: translate3d(-100%, 0, 0) rotate(-120deg);

        opacity: 0;
    }
    to {
        transform: translateZ(0);

        opacity: 1;
    }
}

.animate__rollIn {
    animation-name: rollIn;
}

@keyframes rollOut {
    0% {
        opacity: 1;
    }
    to {
        transform: translate3d(100%, 0, 0) rotate(120deg);

        opacity: 0;
    }
}

.animate__rollOut {
    animation-name: rollOut;
}

@keyframes zoomIn {
    0% {
        transform: scale3d(.3, .3, .3);

        opacity: 0;
    }
    50% {
        opacity: 1;
    }
}

.animate__zoomIn {
    animation-name: zoomIn;
}

@keyframes zoomInDown {
    0% {
        transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }
    60% {
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

.animate__zoomInDown {
    animation-name: zoomInDown;
}

@keyframes zoomInLeft {
    0% {
        transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }
    60% {
        transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

.animate__zoomInLeft {
    animation-name: zoomInLeft;
}

@keyframes zoomInRight {
    0% {
        transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }
    60% {
        transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

.animate__zoomInRight {
    animation-name: zoomInRight;
}

@keyframes zoomInUp {
    0% {
        transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 0;
    }
    60% {
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 1;
    }
}

.animate__zoomInUp {
    animation-name: zoomInUp;
}

@keyframes zoomOut {
    0% {
        opacity: 1;
    }
    50% {
        transform: scale3d(.3, .3, .3);

        opacity: 0;
    }
    to {
        opacity: 0;
    }
}

.animate__zoomOut {
    animation-name: zoomOut;
}

@keyframes zoomOutDown {
    40% {
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 1;
    }
    to {
        transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 0;
    }
}

.animate__zoomOutDown {
    transform-origin: center bottom;
    animation-name: zoomOutDown;
}

@keyframes zoomOutLeft {
    40% {
        transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);

        opacity: 1;
    }
    to {
        transform: scale(.1) translate3d(-2000px, 0, 0);

        opacity: 0;
    }
}

.animate__zoomOutLeft {
    transform-origin: left center;
    animation-name: zoomOutLeft;
}

@keyframes zoomOutRight {
    40% {
        transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);

        opacity: 1;
    }
    to {
        transform: scale(.1) translate3d(2000px, 0, 0);

        opacity: 0;
    }
}

.animate__zoomOutRight {
    transform-origin: right center;
    animation-name: zoomOutRight;
}

@keyframes zoomOutUp {
    40% {
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);

        opacity: 1;
    }
    to {
        transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);

        opacity: 0;
    }
}

.animate__zoomOutUp {
    transform-origin: center bottom;
    animation-name: zoomOutUp;
}

@keyframes slideInDown {
    0% {
        visibility: visible;

        transform: translate3d(0, -100%, 0);
    }
    to {
        transform: translateZ(0);
    }
}

.animate__slideInDown {
    animation-name: slideInDown;
}

@keyframes slideInLeft {
    0% {
        visibility: visible;

        transform: translate3d(-100%, 0, 0);
    }
    to {
        transform: translateZ(0);
    }
}

.animate__slideInLeft {
    animation-name: slideInLeft;
}

@keyframes slideInRight {
    0% {
        visibility: visible;

        transform: translate3d(100%, 0, 0);
    }
    to {
        transform: translateZ(0);
    }
}

.animate__slideInRight {
    animation-name: slideInRight;
}

@keyframes slideInUp {
    0% {
        visibility: visible;

        transform: translate3d(0, 100%, 0);
    }
    to {
        transform: translateZ(0);
    }
}

.animate__slideInUp {
    animation-name: slideInUp;
}

@keyframes slideOutDown {
    0% {
        transform: translateZ(0);
    }
    to {
        visibility: hidden;

        transform: translate3d(0, 100%, 0);
    }
}

.animate__slideOutDown {
    animation-name: slideOutDown;
}

@keyframes slideOutLeft {
    0% {
        transform: translateZ(0);
    }
    to {
        visibility: hidden;

        transform: translate3d(-100%, 0, 0);
    }
}

.animate__slideOutLeft {
    animation-name: slideOutLeft;
}

@keyframes slideOutRight {
    0% {
        transform: translateZ(0);
    }
    to {
        visibility: hidden;

        transform: translate3d(100%, 0, 0);
    }
}

.animate__slideOutRight {
    animation-name: slideOutRight;
}

@keyframes slideOutUp {
    0% {
        transform: translateZ(0);
    }
    to {
        visibility: hidden;

        transform: translate3d(0, -100%, 0);
    }
}

.animate__slideOutUp {
    animation-name: slideOutUp;
}

@font-face {
    font-family: 'Montserrat';
    font-weight: 400;
    font-style: normal;

    src: url('../fonts/Montserrat/Montserrat-Regular.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-weight: 400;
    font-style: italic;

    src: url('../fonts/Montserrat/Montserrat-Italic.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-weight: 500;
    font-style: normal;

    src: url('../fonts/Montserrat/Montserrat-Medium.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-weight: 500;
    font-style: italic;

    src: url('../fonts/Montserrat/Montserrat-MediumItalic.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-weight: 700;
    font-style: normal;

    src: url('../fonts/Montserrat/Montserrat-Bold.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-weight: 700;
    font-style: italic;

    src: url('../fonts/Montserrat/Montserrat-BoldItalic.woff2') format('woff2');
}

@font-face {
    font-family: 'Bellota Text';
    font-weight: 400;
    font-style: normal;

    src: url('../fonts/BellotaText/BellotaText-Regular.woff2') format('woff2');
}

@font-face {
    font-family: 'Bellota Text';
    font-weight: 400;
    font-style: italic;

    src: url('../fonts/BellotaText/BellotaText-Italic.woff2') format('woff2');
}

@font-face {
    font-family: 'Josefin Sans';
    font-weight: 300;
    font-style: normal;

    src: url('../fonts/JosefinSans/JosefinSans-Light.woff2') format('woff2');
}

@font-face {
    font-family: 'Josefin Sans';
    font-weight: 300;
    font-style: italic;

    src: url('../fonts/JosefinSans/JosefinSans-LightItalic.woff2') format('woff2');
}

@font-face {
    font-family: 'Manrope';
    font-weight: 400;
    font-style: normal;

    src: url('../fonts/Manrope/Manrope-Regular.woff2') format('woff2');
}

@font-face {
    font-family: 'icons';
    font-weight: normal;
    font-style: normal;

    src: url('../fonts/icons.ttf?obpn46') format('truetype'), url('../fonts/icons.woff?obpn46') format('woff');
    font-display: block;
}

[class^='_icn-'],
[class*=' _icn-'] {
    font-family: 'icons' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    text-transform: none;

    speak: never;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

._icn-arrow-down:before {
    content: '\e90c';
}

._icn-arrow-dropdown:before {
    content: '\e90b';
}

._icn-envelope:before {
    content: '\e90a';
}

._icn-pin:before {
    content: '\e908';
}

._icn-telephone:before {
    content: '\e909';
}

._icn-whatsapp:before {
    content: '\e906';
}

._icn-viber:before {
    content: '\e907';
}

._icn-email:before {
    content: '\e904';
}

._icn-arrow-top:before {
    content: '\e905';
}

._icn-telegram:before {
    content: '\e900';
}

._icn-linkedin:before {
    content: '\e901';
}

._icn-facebook:before {
    content: '\e902';
}

._icn-phone:before {
    content: '\e903';
}

html {
    font-size: 16px;
}

html,
body {
    min-height: 100vh;
}

body {
    font-family: 'Montserrat', sans-serif;
    font-size: .875rem;
    font-weight: 400;

    color: #171b24;
}

::-moz-placeholder {
    color: #666;
}

:-ms-input-placeholder {
    color: #666;
}

::placeholder {
    color: #666;
}

::-moz-selection {
    color: #fff;
    background-color: #171b24;
}

::selection {
    color: #fff;
    background-color: #171b24;
}

a {
    transition: all .35s ease 0s;
}

a:hover {
    text-decoration: none;
}

ul,
ol {
    margin: 0;
    padding: 0;

    list-style: none;
}

.no-scroll {
    overflow: hidden;
}

.page {
    display: flex;
    overflow: hidden;
    flex-direction: column;

    min-height: 100vh;
}

.page-main {
    flex: 1;
}

._rst {
    margin: 0;
    padding: 0;

    resize: none;

    border: none;
    border-radius: 0;
    outline: none;
    background: none;
    box-shadow: none;

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

._rst:focus {
    outline-width: 0;
}

.container {
    box-sizing: border-box;
    width: 100%;
    max-width: 76.25rem;
    margin: 0 auto;
    padding: 0 3.75rem;
}

@media (max-width: 62rem) {
    .container {
        padding: 0 1.875rem;
    }
}

@media (max-width: 36rem) {
    .container {
        padding: 0 1.25rem;
    }
}

.arrow-top {
    font-size: 1rem;

    position: fixed;
    z-index: 5;
    right: 4.5rem;
    bottom: 4.125rem;

    display: flex;
    visibility: hidden;

    width: 3.125rem;
    height: 3.125rem;

    transition: color .35s ease 0s,
    background-color .35s ease 0s,
    opacity .35s ease 0s,
    visibility .35s ease 0s,
    transform .35s ease 0s;
    transform: translateY(200%);
    pointer-events: none;

    opacity: 0;
    color: #171b24;
    background-color: #fde354;

    align-items: center;
    justify-content: center;
}

@media (max-width: 48rem) {
    .arrow-top {
        font-size: .75rem;

        right: 1.25rem;
        bottom: 1.25rem;

        width: 2rem;
        height: 2rem;
    }
}

.arrow-top::before {
    transition: transform .35s ease 0s;
}

.arrow-top:hover {
    color: #2745fb;
    background-color: rgba(253, 227, 84, .8);
}

.arrow-top:hover::before {
    transform: translateY(-.3125rem);
}

.arrow-top._active {
    visibility: visible;

    transform: translateY(0);
    pointer-events: all;

    opacity: 1;
}

.title {
    font-size: 2.375rem;
    font-weight: 700;

    margin-bottom: 0;

    color: #171b24;
}

.title:not(:last-child) {
    margin-bottom: 1.25rem;
}

.img-cover {
    width: 100%;
    height: 100%;

    -o-object-fit: cover;
    object-fit: cover;
}

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

    -o-object-fit: contain;
    object-fit: contain;
}

.btn {
    font-size: .8125rem;
    font-weight: 500;
    line-height: 169.23077%;

    position: relative;

    display: inline-flex;
    overflow: hidden;

    padding: 1rem 1.9375rem;

    text-align: center;
    letter-spacing: .1875rem;

    color: #fff;
    background-color: #2745fb;

    align-items: center;
    justify-content: center;
}

.btn__text {
    position: relative;
    z-index: 1;

    transition: transform .35s ease 0s;
    transform: translateX(0);
}

.btn::after,
.btn::before {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';
    transition: transform .35s ease-out 0s;
    transform: translateX(-101%);
    pointer-events: none;

    background-color: #ff4040;
}

.btn::after {
    z-index: 3;

    display: flex;

    height: 100%;

    content: attr(data-text);
    transition: transform .4s ease-out 0s;
    text-align: center;

    color: #fff;
    background: none;

    align-items: center;
    justify-content: center;
}

.btn:hover {
    color: #fff;
}

.btn:hover::before,
.btn:hover::after {
    transform: translateX(0);
}

.btn:hover .btn__text {
    transform: translateX(100%);
}

.btn--red {
    padding: .6rem 3.2375rem;

    background-color: #ff4040;
}

.btn--red::before {
    background-color: #2745fb;
}

.btn--red::after {
    color: #fff;
}

.btn--yellow {
    padding: 1rem 3.2375rem;

    color: #171b24;
    background-color: #fde354;
}

.btn--yellow::before {
    background-color: #ff4040;
}

.btn--yellow::after {
    color: #fff;
}

/* logo start */
.logo {
    display: inline-flex;

    color: #000;

    align-items: center;
    justify-content: flex-start;
    flex-grow: 0;
    flex-shrink: 0;
}

.logo:hover {
    color: #2745fb;
}

.logo:hover .logo__main {
    background-size: calc(100% - 6px);
}

.logo__main {
    font-family: 'Josefin Sans', sans;
    font-size: 2.375rem;
    font-weight: 300;
    line-height: 1;

    transition: background-size .35s ease 0s;
    letter-spacing: .375rem;
    text-transform: uppercase;

    color: #000;
    background-image: linear-gradient(transparent calc(100% - 8px), #fde354 8px);
    background-repeat: no-repeat;
    background-size: 0;
}

.logo__flag {
    position: relative;
    top: .125rem;

    display: block;

    width: .125rem;
    height: 1.8125rem;
    margin: 0 .3125rem 0 0;

    background-color: #fde354;
}

.logo__flag::before {
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 50%;

    content: '';

    background-color: #2745fb;
}

.logo__sub-text {
    font-family: 'Bellota Text', sans-serif;
    font-size: .75rem;
    font-weight: 400;
    line-height: 83.33333%;

    position: relative;
    top: .125rem;

    display: block;

    max-width: 4.25rem;
}

/* logo end */
/* menu start */
.menu {
    display: flex;
}

@media (max-width: 62rem) {
    .menu {
        flex-direction: column;

        text-align: center;

        align-items: center;
    }
}

.menu__item:not(:last-child) {
    margin-right: 3.625rem;
}

@media (max-width: 75.25rem) {
    .menu__item:not(:last-child) {
        margin-right: 2rem;
    }
}

@media (max-width: 62rem) {
    .menu__item:not(:last-child) {
        margin-right: 0;
        margin-bottom: 2.75rem;
    }
}

.menu__link {
    font-size: .8125rem;
    font-weight: 500;
    line-height: 169.23077%;

    letter-spacing: .1875rem;
    text-transform: lowercase;

    color: #171b24;
    color: #171b24;
    background-image: linear-gradient(transparent calc(100% - 3px), #2745fb 3px);
    background-repeat: no-repeat;
    background-size: 0;
}

.menu__link:hover {
    color: #171b24;
    background-size: 100%;
}

.menu__link._active {
    background-image: linear-gradient(transparent calc(100% - 3px), #fde354 3px);
    background-size: 100%;
}

/* menu end */
/* langs start */
.langs {
    position: relative;

    display: inline-flex;
}

.langs__active {
    font-size: .8125rem;
    font-weight: 500;
    line-height: 169.23077%;

    transition: color .35s ease 0s;
    letter-spacing: .1875rem;

    color: #171b24;
}

@media (max-width: 62rem) {
    .langs__active {
        font-size: 1.5rem;

        letter-spacing: 0;

        color: #2745fb;
    }
}

.langs__active:hover {
    color: #2745fb;
}

.langs__block {
    position: absolute;
    top: 100%;
    left: 50%;

    display: flex;
    visibility: hidden;
    flex-direction: column;

    padding: .625rem .9375rem;

    transition: all .35s ease 0s;
    transform: translate(-50%, 1rem);
    text-align: center;
    pointer-events: none;

    opacity: 0;
    border-bottom: 2px solid #fde354;
    background-color: #fff;

    align-items: center;
}

@media (max-width: 62rem) {
    .langs__block {
        padding: .3125rem .625rem;
    }
}

.langs__link {
    font-size: .8125rem;
    line-height: 169.23077%;

    letter-spacing: .125rem;

    color: #171b24;
}

@media (max-width: 62rem) {
    .langs__link {
        font-size: 1.125rem;
    }
}

.langs__link:hover {
    text-decoration: underline;

    color: #2745fb;
}

.langs__link:not(:last-child) {
    margin-bottom: .375rem;
}

.langs._active .langs__active {
    color: #2745fb;
}

.langs._active .langs__block {
    visibility: visible;

    transform: translate(-50%, 0);
    pointer-events: all;

    opacity: 1;
}

/* langs end */
/* burger start */
.burger {
    position: relative;

    display: block;

    width: 24px;
    height: 14px;

    cursor: pointer;
}

.burger span {
    position: absolute;
    left: 0;

    display: block;
    visibility: visible;

    width: 100%;
    height: 2px;

    transition: all .35s ease 0s;
    transform: rotate(0deg);

    opacity: 1;
    background-color: #171b24;
}

.burger span:nth-child(1) {
    top: 0;
}

.burger span:nth-child(2) {
    top: 6px;
}

.burger span:nth-child(3) {
    top: 12px;
}

.burger._active span {
    top: 6px;
}

.burger._active span:nth-child(1) {
    transform: rotate(135deg);
}

.burger._active span:nth-child(2) {
    left: 50%;

    visibility: hidden;

    width: 0;

    opacity: 0;
}

.burger._active span:nth-child(3) {
    transform: rotate(-135deg);
}

/* burger end */
/* header start */
.header {
    position: fixed;
    z-index: 6;
    top: 0;
    left: 0;

    visibility: visible;

    width: 100%;
    padding: 1.4375rem 0;

    transition: transform .35s ease 0s,
    visibility .35s ease 0s;
    transform: translateY(0);

    background-color: #fff;
}

@media (max-width: 62rem) {
    .header {
        padding: .825rem 0 1.1125rem;
    }
}

.header._hidden {
    visibility: hidden;

    transform: translateY(-100%);
}

.header__container {
    max-width: 120rem;
}

.header__row {
    display: flex;

    padding: 0 .25rem 0 1.8125rem;

    align-items: center;
    justify-content: space-between;
}

@media (max-width: 62rem) {
    .header__row {
        padding: 0;
    }
}

.header__logo {
    margin-right: 2.5rem;
}

@media (max-width: 75.25rem) {
    .header__logo {
        margin-right: 1.875rem;
    }
}

@media (max-width: 62rem) {
    .header__logo .logo__main {
        font-size: 2rem;
    }

    .header__logo .logo__flag {
        height: 1.6125rem;
    }

    .header__logo .logo__sub-text {
        font-size: .625rem;

        max-width: 3.5625rem;
    }
}

@media (max-width: 36rem) {
    .header__logo .logo__main {
        font-size: 1.875rem;

        background-image: linear-gradient(transparent calc(100% - 6px), #fde354 6px);
    }

    .header__logo .logo__flag {
        height: 1.4918rem;
        margin-right: .25rem;
        margin-left: -.25rem;
    }

    .header__logo .logo__sub-text {
        top: .025rem;
    }
}

.header__nav {
    position: relative;
    top: .3125rem;

    display: flex;

    width: 100%;

    align-items: center;
    justify-content: flex-end;
}

@media (max-width: 75.25rem) {
    .header__nav {
        align-items: center;
    }
}

@media (max-width: 62rem) {
    .header__nav {
        position: fixed;
        z-index: 7;
        top: 0;
        left: 0;

        display: block;
        visibility: hidden;
        overflow: auto;

        width: 100%;
        min-height: 100vh;
        max-height: 100vh;
        padding: 8.0625rem 1.25rem 3.125rem;

        transition: all .35s ease 0s;
        transform: translateX(-100%);
        text-align: center;
        pointer-events: none;

        background-color: #fff;
    }

    .header__nav._active {
        visibility: visible;

        transform: translateX(0);
        pointer-events: all;
    }
}

.header__menu:not(:last-child) {
    margin-right: 18.81%;
}

@media (max-width: 75.25rem) {
    .header__menu:not(:last-child) {
        margin-right: 3rem;
    }
}

@media (max-width: 62rem) {
    .header__menu:not(:last-child) {
        margin-right: 0;
        margin-bottom: 2.1875rem;
    }
}

@media (max-width: 62rem) {
    .header__langs:not(:last-child) {
        margin-bottom: 4.4875rem;
    }
}

.header__close {
    position: absolute;
    top: 1.5rem;
    right: 1.25rem;

    display: none;

    width: 20px;
    height: 14px;

    transition: none;
}

.header__close span {
    position: absolute;
    top: 6px;
    left: 0;

    display: block;

    width: 100%;
    height: 2px;

    transform: rotate(-45deg);

    border-radius: 2px;
    background-color: #000;
}

.header__close span:nth-child(2) {
    transform: rotate(45deg);
}

@media (max-width: 62rem) {
    .header__close {
        display: block;
    }
}

.header__contacts {
    display: none;
}

@media (max-width: 62rem) {
    .header__contacts {
        display: flex;
        flex-direction: column;

        text-align: center;

        align-items: center;
    }

    .header__contacts .footer__contacts-item:not(:last-child) {
        margin-bottom: 1.5875rem;
    }
}

.header__toggle {
    position: relative;

    display: none;

    width: 20px;
    height: 14px;

    transition: none;
}

@media (max-width: 62rem) {
    .header__toggle {
        display: block;
    }
}

.header__toggle span {
    position: absolute;
    left: 0;

    display: block;

    width: 100%;
    height: 2px;

    border-radius: 2px;
    background-color: #000;
}

.header__toggle span:nth-child(1) {
    top: 0;
}

.header__toggle span:nth-child(2) {
    top: 6px;
}

.header__toggle span:nth-child(3) {
    top: 12px;
}

/* header end */
/* breadcrumbs start */
.bread {
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;

    width: 100%;
    padding: 9rem 0 5.25rem;

    background: #fff;
}

@media (max-width: 67.5rem) {
    .bread {
        padding-top: 7.5rem;
    }
}

@media (max-width: 62rem) {
    .bread {
        padding: 5rem 0 3.75rem;
    }
}

@media (max-width: 48rem) {
    .bread {
        display: none;
    }
}

.bread__list {
    text-align: center;
}

.bread__link {
    font-size: .8125rem;
    font-weight: 700;
    line-height: 169.23077%;

    letter-spacing: .375rem;
    text-transform: lowercase;

    color: #171b24;
    background-image: linear-gradient(transparent calc(100% - 5px), #fde354 5px);
    background-repeat: no-repeat;
    background-size: 0;
}

.bread__link:hover {
    color: #2745fb;
}

.bread__link._active {
    background-size: calc(100% - 5px);
}

.bread__separate {
    font-size: .8125rem;
    font-weight: 700;
    line-height: 169.23077%;

    margin: 0 6px 0 9px;

    letter-spacing: .375rem;
}

/* breadcrumbs end */
/* hero start */
.hero {
    display: flex;

    min-height: 100vh;
    padding: 14.3125rem 0 9.4375rem;

    align-items: center;
    justify-content: center;
}

@media (max-width: 48rem) {
    .hero {
        display: flex;

        padding: 7.5rem 0 6.875rem;

        align-items: center;
        justify-content: center;
    }
}

.hero__container {
    max-width: 75.975rem;
}

.hero__title {
    font-size: 5.625rem;
    font-weight: 700;
    line-height: 1.2;

    visibility: hidden;

    margin-bottom: 0;

    color: #171b24;
}

@media (max-width: 62rem) {
    .hero__title {
        font-size: 4.375rem;

        visibility: visible;
    }
}

@media (max-width: 36rem) {
    .hero__title {
        font-size: 3.125rem;
        line-height: 122%;
    }
}

@media (max-width: 21.875rem) {
    .hero__title {
        font-size: 2.5rem;
    }
}

.hero__title:not(:last-child) {
    margin-bottom: 10.625rem;
}

@media (max-width: 74.75rem) {
    .hero__title:not(:last-child) {
        margin-bottom: 8.75rem;
    }
}

@media (max-width: 62rem) {
    .hero__title:not(:last-child) {
        margin-bottom: 6.875rem;
    }
}

@media (max-width: 36rem) {
    .hero__title:not(:last-child) {
        margin-bottom: 4.9375rem;
    }
}

.hero__title-attention {
    position: relative;
}

.hero__title-attention span {
    position: relative;
    z-index: 2;
}

@media (max-width: 74.75rem) {
    .hero__title-attention span {
        background-image: linear-gradient(transparent 15%, #fde354 16%, #fde354 93%, transparent 94%, transparent 100%);
    }
}

.hero__title-attention::before {
    position: absolute;
    z-index: 1;
    top: 16%;
    right: -1.75rem;
    bottom: -.5rem;
    left: -1.5rem;

    content: '';

    background-image: linear-gradient(#fde354 0, #fde354 100%);
    background-repeat: no-repeat;
    background-size: 100%;
}

@media (max-width: 74.75rem) {
    .hero__title-attention::before {
        display: none;
    }
}

.hero__title-attention--blue {
    color: #2745fb;
}

.hero__btn {
    visibility: hidden;
}

@media (max-width: 62rem) {
    .hero__btn {
        visibility: visible;
    }
}

/* hero end */
/* banner start */
.banner {
    padding: 8.875rem 0 9.175rem;

    color: #fff;
    background-color: #2745fb;
}

@media (max-width: 36rem) {
    .banner {
        padding: 5.65rem 0 7.325rem;
    }
}

.banner--lg {
    padding: 9.175rem 0 13.275rem;
}

@media (max-width: 36rem) {
    .banner--lg {
        padding: 5.65rem 0 8.025rem;
    }
}

.banner--sm {
    padding: 6.075rem 0 6.475rem;
}

@media (max-width: 36rem) {
    .banner--sm {
        padding: 5.65rem 0 5.225rem;
    }
}

.banner--bg {
    position: relative;

    overflow: hidden;
}

.banner--bg .container {
    position: relative;
    z-index: 2;
}

.banner__bg {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: block;
    overflow: hidden;

    width: 100%;
    height: 100%;

    opacity: .2;
}

.banner__title {
    font-size: 3.375rem;
    font-weight: 700;
    line-height: 118.51852%;

    margin-bottom: 0;

    letter-spacing: -.0625rem;
}

@media (max-width: 62rem) {
    .banner__title {
        font-size: 2.9375rem;
    }
}

@media (max-width: 36rem) {
    .banner__title {
        font-size: 2.5rem;
        line-height: 125%;
    }
}

.banner__title:not(:last-child) {
    margin-bottom: 6.4375rem;
}

@media (max-width: 62rem) {
    .banner__title:not(:last-child) {
        margin-bottom: 5rem;
    }
}

@media (max-width: 36rem) {
    .banner__title:not(:last-child) {
        margin-bottom: 3.8625rem;
    }
}

.banner__title--lg:not(:last-child) {
    margin-bottom: 7.9375rem;
}

@media (max-width: 62rem) {
    .banner__title--lg:not(:last-child) {
        margin-bottom: 5.9375rem;
    }
}

@media (max-width: 36rem) {
    .banner__title--lg:not(:last-child) {
        margin-bottom: 4.7625rem;
    }
}

.banner__sub-title {
    font-size: 3rem;
    font-weight: 700;
    line-height: 133.33333%;

    margin-bottom: 0;
}

@media (max-width: 62rem) {
    .banner__sub-title {
        font-size: 2.75rem;

        letter-spacing: -.0625rem;
    }
}

@media (max-width: 36rem) {
    .banner__sub-title {
        font-size: 2.5rem;
        line-height: 125%;
    }
}

.banner__sub-title:not(:last-child) {
    margin-bottom: 2rem;
}

@media (max-width: 62rem) {
    .banner__sub-title:not(:last-child) {
        margin-bottom: 2.25rem;
    }
}

@media (max-width: 36rem) {
    .banner__sub-title:not(:last-child) {
        margin-bottom: 2.625rem;
    }
}

.banner__wrapper p {
    font-size: 1.625rem;
    font-weight: 500;
    line-height: 123.07692%;

    margin-bottom: 0;

    letter-spacing: -.0625rem;
}

@media (max-width: 36rem) {
    .banner__wrapper p {
        line-height: 123.07692%;
    }
}

.banner__wrapper p:not(:last-child) {
    margin-bottom: 2rem;
}

/* banner end */
/* work start */
.work {
    padding: 9.0875rem 0 9.9375rem;
}

@media (max-width: 62rem) {
    .work {
        padding: 7.5rem 0 7.1875rem;
    }
}

@media (max-width: 36rem) {
    .work {
        padding: 5.8125rem 0 5.375rem;
    }
}

.work__title {
    font-size: 3.375rem;
    font-weight: 700;
    line-height: 1.2;

    margin-bottom: 0;

    letter-spacing: -.0625rem;
}

@media (max-width: 62rem) {
    .work__title {
        font-size: 3.125rem;
    }
}

@media (max-width: 36rem) {
    .work__title {
        font-size: 2.875rem;
        line-height: 121.73913%;

        padding-left: .5rem;
    }
}

.work__title:not(:last-child) {
    margin-bottom: 2.2rem;
}

@media (max-width: 62rem) {
    .work__title:not(:last-child) {
        margin-bottom: 2.8125rem;
    }
}

@media (max-width: 36rem) {
    .work__title:not(:last-child) {
        margin-bottom: 5.125rem;
    }
}

.work__sub-title {
    font-size: 1.625rem;
    font-weight: 400;
    line-height: 123.07692%;

    margin-bottom: 0;

    letter-spacing: -.0625rem;
}

@media (max-width: 36rem) {
    .work__sub-title {
        padding-left: .625rem;
    }
}

.work__sub-title:not(:last-child) {
    margin-bottom: 8.1875rem;
}

@media (max-width: 62rem) {
    .work__sub-title:not(:last-child) {
        margin-bottom: 5.8625rem;
    }
}

@media (max-width: 36rem) {
    .work__sub-title:not(:last-child) {
        padding-left: .625rem;
    }
}

.work__wrapper {
    display: flex;

    justify-content: space-between;
}

@media (max-width: 53.125rem) {
    .work__wrapper {
        display: block;
    }
}

.work__left {
    width: 100%;
    max-width: 22.5rem;
}

@media (max-width: 62rem) {
    .work__left {
        max-width: 21rem;
    }
}

@media (max-width: 53.125rem) {
    .work__left {
        max-width: 100%;

        text-align: center;
    }
}

.work__right {
    width: 100%;
    max-width: 33.4375rem;
    margin-left: 4.5rem;
}

@media (max-width: 53.125rem) {
    .work__right {
        display: none;
    }
}

.work__links {
    display: flex;
    flex-direction: column;

    text-align: left;

    align-items: flex-start;
}

.work__links:not(:last-child) {
    margin-bottom: 6.5rem;
}

@media (max-width: 53.125rem) {
    .work__links:not(:last-child) {
        margin-bottom: 4.5rem;
    }
}

.work__block {
    width: 100%;
    max-width: 100%;
}

.work__block:not(:last-child) {
    margin-bottom: 2.6rem;
}

@media (max-width: 36rem) {
    .work__block:not(:last-child) {
        margin-bottom: 2.8rem;
    }
}

.work__link {
    position: relative;

    display: block;

    padding: .3125rem 0 1.65rem;

    transition: color .35s ease 0s,
    border-color .35s ease 0s;

    color: #171b24;
    border-bottom: .1875rem solid #171b24;
}

@media (max-width: 62rem) {
    .work__link {
        padding: .1875rem 0 1rem;
    }
}

@media (max-width: 53.125rem) {
    .work__link {
        padding: 0 0 1.875rem;
        padding-right: 1.375rem;
    }
}

.work__link::after {
    position: absolute;
    top: 100%;
    left: 100%;

    width: 3.875rem;
    height: .1875rem;

    content: '';
    transition: transform .35s ease .3s,
    background-color .35s ease 0s;
    transform: translateX(-100%);

    background-color: #171b24;
}

@media (max-width: 53.125rem) {
    .work__link::after {
        display: none;
    }
}

.work__link::before {
    position: absolute;
    top: 100%;
    left: 100%;

    width: .9375rem;
    height: .9375rem;

    content: '';
    transition: border-color .35s ease 0s,
    transform .35s ease 0s;
    transform: rotate(45deg) translate(29px, -38px) scale(0);

    border-width: .1875rem .1875rem 0 0;
    border-style: solid;
    border-color: #171b24;
}

@media (max-width: 53.125rem) {
    .work__link::before {
        transform: rotate(45deg) translate(-15px, 6px) scale(0);
    }
}

.work__link-pre-title {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.2;

    display: block;

    margin-bottom: .075rem;

    text-transform: lowercase;
}

@media (max-width: 36rem) {
    .work__link-pre-title {
        margin-bottom: .375rem;
    }
}

.work__link-title {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.2;
}

@media (max-width: 62rem) {
    .work__link-title {
        font-size: 2.75rem;
    }
}

@media (max-width: 36rem) {
    .work__link-title {
        font-size: 2.5rem;
    }
}

@media (max-width: 21.875rem) {
    .work__link-title {
        font-size: 2rem;
    }
}

.work__link-arrow {
    font-size: 1.1875rem;

    position: absolute;
    right: 0;
    bottom: 2.6875rem;

    display: none;

    transform: scaleY(1);
}

@media (max-width: 53.125rem) {
    .work__link-arrow {
        display: block;
    }
}

.work__link:hover {
    color: #2745fb;
}

@media (max-width: 53.125rem) {
    .work__link:hover {
        color: #171b24;
    }
}

.work__link._active {
    color: #2745fb;
    border-bottom-color: #2745fb;
}

.work__link._active::after {
    transition: transform .35s ease 0s,
    background-color .35s ease 0s;
    transform: translateX(0);

    background-color: #2745fb;
}

.work__link._active::before {
    transition: transform .35s ease .3s,
    border-color .35s ease 0s;
    transform: rotate(45deg) translate(29px, -38px) scale(1);

    border-color: #2745fb;
}

@media (max-width: 53.125rem) {
    .work__link._active::before {
        transform: rotate(45deg) translate(-15px, 6px) scale(1);
    }
}

@media (max-width: 53.125rem) {
    .work__link._active .work__link-arrow {
        transform: scaleY(-1);
    }
}

.work__content {
    display: none;
    visibility: hidden;

    width: 100%;
    max-width: 100%;
    height: auto;
    padding: 3.5625rem 3.75rem 3.75rem;

    transition: all .35s ease 0s;
    transform: translateX(-2.5rem);
    pointer-events: none;

    opacity: 0;
    color: #fff;
    background-color: #2745fb;
}

@media (max-width: 62rem) {
    .work__content {
        padding: 2.8125rem 3.125rem 3.125rem;
    }
}

@media (max-width: 53.125rem) {
    .work__content {
        visibility: visible;

        width: calc(100% + 3.75rem);
        max-width: none;
        margin: 2.625rem 0 0 -1.875rem;
        padding: 3.5625rem 1.875rem 3.4375rem;

        transition: none;
        transform: translateX(0);
        pointer-events: all;

        opacity: 1;
    }
}

@media (max-width: 36rem) {
    .work__content {
        width: calc(100% + 2.5rem);
        margin: 2.525rem 0 0 -1.25rem;
        padding: 3.5625rem 1.25rem 3.4375rem;
    }
}

.work__content._active {
    visibility: visible;

    transform: translateX(0);
    pointer-events: all;

    opacity: 1;
}

.work__icon {
    position: relative;

    display: block;

    width: 100%;
    max-width: 9.1875rem;
    height: auto;
}

@media (max-width: 53.125rem) {
    .work__icon {
        margin-left: 2.5625rem;
    }
}

.work__icon::after {
    position: absolute;
    bottom: -2.5rem;
    left: -3.75rem;

    width: 7.4375rem;
    height: .1875rem;

    content: '';

    background-color: #fff;
}

@media (max-width: 53.125rem) {
    .work__icon::after {
        left: -4.4375rem;

        width: 8.0375rem;
    }
}

.work__icon::before {
    position: absolute;
    bottom: -2.5rem;
    left: 50px;

    width: .9375rem;
    height: .9375rem;

    content: '';
    transform: rotate(45deg) translateY(.5rem);

    border-width: .1875rem .1875rem 0 0;
    border-style: solid;
    border-color: #fff;
}

.work__icon:not(:last-child) {
    margin-bottom: 4.9375rem;
}

.work__text {
    text-align: justify;
}

@media (max-width: 53.125rem) {
    .work__text {
        text-align: left;
    }
}

.work__text p {
    font-size: 1.25rem;
    line-height: 120%;

    margin-bottom: 0;
}

.work__text p:not(:last-child) {
    margin-bottom: 1.25rem;
}

/* work end */
/* socials start */
.socials {
    display: flex;
}

.socials__link {
    font-size: 1.875rem;

    margin: 0 .5rem;

    transition: color .35s ease 0s;

    color: #2745fb;
}

.socials__link:hover {
    color: #0421d2;
}

.socials__link._icn-facebook {
    color: #1976d2;
}

.socials__link._icn-facebook:hover {
    color: #11508e;
}

.socials__link._icn-linkedin {
    color: #0077b5;
}

.socials__link._icn-linkedin:hover {
    color: #004569;
}

.socials__link._icn-telegram {
    color: #1c8adb;
}

.socials__link._icn-telegram:hover {
    color: #135f97;
}

/* socials end */
/* footer start */
.footer {
    padding: 2.175rem 0 1.3rem;
}

@media (max-width: 48rem) {
    .footer {
        padding: 3.75rem 0 1.5rem;
    }
}

@media (max-width: 36rem) {
    .footer {
        padding: 7.175rem 0 2.5875rem;
    }
}

.footer__container {
    max-width: 120rem;
}

.footer__main {
    display: flex;
    flex-direction: column;

    align-items: center;
}

.footer__main:not(:last-child) {
    margin-bottom: 2.4rem;
}

.footer__logo {
    margin-bottom: 2.3rem;
}

@media (max-width: 36rem) {
    .footer__logo {
        margin-bottom: 2.9375rem;
    }
}

.footer__contacts {
    display: flex;
}

@media (max-width: 36rem) {
    .footer__contacts {
        flex-direction: column;

        text-align: center;

        align-items: center;
    }
}

.footer__contacts-item {
    font-size: .8125rem;
    font-weight: 500;
    line-height: 1.2;

    display: inline-flex;

    transition: none;

    color: #171b24;

    align-items: center;
}

.footer__contacts-item:hover .footer__contacts-text {
    color: #2745fb;
    background-size: 100%;
}

.footer__contacts-item:not(:last-child) {
    margin-right: 2.3125rem;
}

@media (max-width: 36rem) {
    .footer__contacts-item:not(:last-child) {
        margin-right: 0;
        margin-bottom: 1.67rem;
    }
}

.footer__contacts-icon {
    font-size: 1rem;

    position: relative;
}

.footer__contacts-icon:not(:last-child) {
    margin-right: .3125rem;
}

.footer__contacts-icon._icn-email,
.footer__contacts-icon._icn-phone {
    font-size: .8rem;

    top: .125rem;
}

@media (max-width: 36rem) {
    .footer__contacts-icon._icn-email,
    .footer__contacts-icon._icn-phone {
        font-size: 1rem;

        top: 0;
    }
}

.footer__contacts-icon._icn-viber {
    color: #8e24aa;
}

.footer__contacts-icon._icn-whatsapp {
    color: #10ad14;
}

.footer__contacts-text {
    transition: color .35s ease 0s,
    background-size .35s ease 0s;

    color: #171b24;
    background-image: linear-gradient(transparent calc(100% - 1px), #2745fb 1px);
    background-repeat: no-repeat;
    background-size: 0;
}

.footer__contacts-text:not(:first-child) {
    margin-left: .3125rem;
}

.footer__bottom {
    display: flex;

    padding: 0 1.125rem;

    align-items: flex-end;
    justify-content: space-between;
    flex-flow: row wrap;
}

@media (max-width: 62rem) {
    .footer__bottom {
        flex-direction: column;

        padding: 0;

        text-align: center;

        align-items: center;
        justify-content: center;
    }
}

.footer__copyright {
    font-size: .8125rem;
    line-height: 1.2;

    display: block;

    margin: 0;

    opacity: .8;
}

@media (max-width: 62rem) {
    .footer__copyright {
        order: 3;
    }
}

@media (max-width: 36rem) {
    .footer__copyright {
        font-size: .75rem;
    }
}

.footer__socials {
    margin: 0 .625rem;
}

@media (max-width: 62rem) {
    .footer__socials {
        margin: 0 0 3.1625rem 0;

        order: 1;
    }
}

@media (max-width: 62rem) {
    .footer__links {
        margin-bottom: 2.5625rem;

        order: 2;
    }
}

@media (max-width: 36rem) {
    .footer__links {
        margin-bottom: 3.96rem;
    }
}

@media (max-width: 36rem) {
    .footer__links {
        display: flex;
        flex-direction: column;

        text-align: center;

        align-items: center;
    }
}

.footer__links-item {
    font-size: .8125rem;
    line-height: 1.2;

    transition: color .35s ease 0s,
    background-size .35s ease 0s;

    color: #171b24;
    background-image: linear-gradient(transparent calc(100% - 1px), #2745fb 1px);
    background-repeat: no-repeat;
    background-size: 0;
}

@media (max-width: 36rem) {
    .footer__links-item {
        font-size: .9375rem;

        text-decoration: underline;
    }
}

@media (max-width: 36rem) {
    .footer__links-item:not(:last-child) {
        margin-bottom: .75rem;
    }
}

.footer__links-item:hover {
    color: #2745fb;
    background-size: 100%;
}

.footer__links-separator {
    font-size: .8125rem;
    line-height: 1.2;

    display: inline-block;

    margin: 0 .625rem;
}

@media (max-width: 36rem) {
    .footer__links-separator {
        display: none;
    }
}

/* footer end */
/* form start */
.form {
    padding: 5.8125rem 0 6.625rem;

    background-color: #fde354;
}

@media (max-width: 62rem) {
    .form {
        padding: 6.875rem 0 7.1875rem;
    }
}

@media (max-width: 36rem) {
    .form {
        padding: 8.8125rem 0 8.5125rem;
    }
}

.form--contacts {
    padding-top: 15.5625rem;
}

@media (max-width: 67.5rem) {
    .form--contacts {
        padding-top: 14.0625rem;
    }
}

@media (max-width: 62rem) {
    .form--contacts {
        padding-top: 10.0625rem;
    }
}

.form__title {
    font-size: 3.375rem;
    font-weight: 700;
    line-height: 118.51852%;

    margin-bottom: 0;

    letter-spacing: -.0625rem;
}

@media (max-width: 62rem) {
    .form__title {
        font-size: 3.125rem;
    }
}

@media (max-width: 36rem) {
    .form__title {
        font-size: 2.875rem;
        line-height: 108.69565%;
    }
}

.form__title:not(:last-child) {
    margin-bottom: 3rem;
}

@media (max-width: 62rem) {
    .form__title:not(:last-child) {
        margin-bottom: 3.75rem;
    }
}

@media (max-width: 36rem) {
    .form__title:not(:last-child) {
        margin-bottom: 4.4375rem;
    }
}

.form__sub-title {
    font-size: 1.625rem;
    font-weight: 500;
    line-height: 123.07692%;

    margin-bottom: 0;

    letter-spacing: -.0625rem;
}

.form__sub-title:not(:last-child) {
    margin-bottom: 4.3125rem;
}

@media (max-width: 62rem) {
    .form__sub-title:not(:last-child) {
        margin-bottom: 4.625rem;
    }
}

@media (max-width: 36rem) {
    .form__sub-title:not(:last-child) {
        margin-bottom: 5.3875rem;
    }
}

.form__wrapper {
    max-width: 57.5rem;
    margin: 0 auto;
}

.form__wrapper.success .form__success {
    display: block;
}

.form__wrapper.error .form__error {
    display: block;
}

@media (max-width: 36rem) {
    .form__wrapper {
        display: flex;
        flex-direction: column;

        align-items: center;
    }
}

.form__row {
    display: flex;

    justify-content: space-between;
}

@media (max-width: 36rem) {
    .form__row {
        display: block;

        width: 100%;
        max-width: 100%;
    }
}

.form__row .form__label {
    max-width: calc(50% - 2.1875rem);
}

@media (max-width: 48rem) {
    .form__row .form__label {
        max-width: calc(50% - .9375rem);
    }
}

@media (max-width: 36rem) {
    .form__row .form__label {
        max-width: 100%;
    }
}

.form__row .form__label:not(:last-child) {
    margin-bottom: 0;
}

@media (max-width: 36rem) {
    .form__row .form__label:not(:last-child) {
        margin-bottom: 1.9375rem;
    }
}

.form__row:not(:last-child) {
    margin-bottom: 1.5625rem;
}

@media (max-width: 36rem) {
    .form__row:not(:last-child) {
        margin-bottom: 2.0375rem;
    }
}

.form__label {
    position: relative;

    display: block;

    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
}

.form__label:not(:last-child) {
    margin-bottom: 2.1875rem;
}

@media (max-width: 36rem) {
    .form__label:not(:last-child) {
        margin-bottom: 3.75rem;
    }
}

.form__label-text {
    font-size: 1rem;
    font-weight: 500;
    line-height: 175%;

    position: absolute;
    z-index: 2;
    top: 50%;
    left: 1.4375rem;

    width: 100%;

    transition: all .35s ease 0s;
    transform: translateY(-50%);
    pointer-events: none;

    opacity: .8;
}

.form__input {
    line-height: 3.4375rem;

    position: relative;
    z-index: 1;

    display: block;

    width: 100%;
    max-width: 100%;
    height: 3.4375rem;
    padding: 0 1.4375rem;

    background-color: #fff;
}

@media (max-width: 36rem) {
    .form__input {
        line-height: 3.75rem;

        height: 3.75rem;
    }
}

.form__input:not(:-moz-placeholder-shown) ~ span {
    font-size: .5625rem;

    top: 0;

    transform: translateY(1px);

    opacity: .6;
}

.form__input:not(:-ms-input-placeholder) ~ span {
    font-size: .5625rem;

    top: 0;

    transform: translateY(1px);

    opacity: .6;
}

.form__input:not(:placeholder-shown) ~ span,
.form__input:focus ~ span {
    font-size: .5625rem;

    top: 0;

    transform: translateY(1px);

    opacity: .6;
}

.form__textarea {
    line-height: 3.4375rem;

    position: relative;
    z-index: 1;

    display: block;

    width: 100%;
    max-width: 100%;
    height: 3.4375rem;
    padding: 0 1.4375rem;

    resize: none;

    background-color: #fff;
}

@media (max-width: 36rem) {
    .form__textarea {
        line-height: 1.75rem;

        height: 12.75rem;
        padding: 1.1125rem 1.4375rem;
    }
}

.form__textarea:not(:last-child) {
    margin-bottom: 2.1875rem;
}

@media (max-width: 36rem) {
    .form__textarea:not(:last-child) {
        margin-bottom: 3.75rem;
    }
}

.form__textarea::-moz-placeholder {
    font-size: 1rem;
    font-weight: 500;

    pointer-events: none;

    color: rgba(23, 27, 36, .8);
}

.form__textarea:-ms-input-placeholder {
    font-size: 1rem;
    font-weight: 500;

    pointer-events: none;

    color: rgba(23, 27, 36, .8);
}

.form__textarea::placeholder {
    font-size: 1rem;
    font-weight: 500;

    pointer-events: none;

    color: rgba(23, 27, 36, .8);
}

.form__success {
    display: none;
    padding-top: 20px;
    font-size: 1.2em;
    font-weight: 600;
    color: green;
}

.form__error {
    display: none;
    padding-top: 20px;
    font-size: 1.2em;
    font-weight: 600;
    color: red;
}

/* form end */
/* contacts start */
.contacts {
    padding: 6.75rem 0 16.3625rem;

    color: #fff;
    background-color: #2745fb;
}

@media (max-width: 62rem) {
    .contacts {
        padding: 7.1875rem 0 9.6875rem;
    }
}

@media (max-width: 36rem) {
    .contacts {
        padding: 8.525rem 0 8rem;
    }
}

.contacts__title {
    font-size: 3.0rem;
    font-weight: 500;
    line-height: 118.51852%;

    margin-bottom: 0;

    letter-spacing: -.0625rem;
}

.contacts__title:not(:last-child) {
    margin-bottom: 2.175rem;
}

@media (max-width: 36rem) {
    .contacts__title:not(:last-child) {
        margin-bottom: 2.05rem;
    }
}

.contacts__sub-title {
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.2;

    margin-bottom: 0;

    letter-spacing: -.0625rem;
}

.contacts__sub-title:not(:last-child) {
    margin-bottom: 5.625rem;
}

@media (max-width: 62rem) {
    .contacts__sub-title:not(:last-child) {
        margin-bottom: 5.9375rem;
    }
}

@media (max-width: 36rem) {
    .contacts__sub-title:not(:last-child) {
        margin-bottom: 6.3rem;
    }
}

.contacts__wrapper {
    display: flex;
    flex-direction: column;

    align-items: flex-start;
}

.contacts__link {
    font-size: 1.625rem;
    font-weight: 500;
    line-height: 123.07692%;

    display: inline-flex;

    transition: none;
    letter-spacing: -.0625rem;

    color: #fff;

    align-items: center;
}

@media (max-width: 36rem) {
    .contacts__link {
        font-size: 1.2rem;
    }
}

.contacts__link:not(:last-child) {
    margin-bottom: 2rem;
}

@media (max-width: 62rem) {
    .contacts__link:not(:last-child) {
        margin-bottom: 1.875rem;
    }
}

@media (max-width: 36rem) {
    .contacts__link:not(:last-child) {
        margin-bottom: 1.7rem;
    }
}

.contacts__link-icon {
    font-size: 1.875rem;

    position: relative;
    top: 2px;

    display: block;

    width: 1.875rem;
    margin-right: 1.5rem;

    transition: color .35s ease 0s;

    flex-grow: 0;
    flex-shrink: 0;
}

.contacts__link-text {
    transition: background-size .35s ease 0s;

    background-image: linear-gradient(transparent calc(100% - 7px), #fde354 7px);
    background-repeat: no-repeat;
    background-position-y: -3px;
    background-size: 0;
}

.contacts__link:hover {
    color: #fff;
}

.contacts__link:hover .contacts__link-text {
    background-size: 100%;
}

.contacts__link:hover .contacts__link-icon {
    color: #fde354;
}

.contacts__address {
    font-size: 1.625rem;
    font-weight: 500;
    line-height: 123.07692%;

    display: inline-flex;

    letter-spacing: -.0625rem;

    align-items: center;
}

@media (max-width: 36rem) {
    .contacts__address {
        font-size: 1.3rem;
    }
}

.contacts__address:not(:last-child) {
    margin-bottom: 2rem;
}

/* contacts end */
/* about start */
.about {
    padding: 8.025rem 0 9.375rem;
}

@media (max-width: 62rem) {
    .about {
        padding: 8.125rem 0 9.5rem;
    }
}

@media (max-width: 36rem) {
    .about {
        padding: 8.775rem 0 9.7875rem;
    }
}

.about__title {
    font-size: 3.375rem;
    font-weight: 700;
    line-height: 1.2;

    margin-bottom: 0;

    color: #2745fb;
}

@media (max-width: 62rem) {
    .about__title {
        font-size: 3.125rem;
        line-height: 121.73913%;

        letter-spacing: -1px;
    }
}

@media (max-width: 36rem) {
    .about__title {
        font-size: 2.875rem;
    }
}

.about__title:not(:last-child) {
    margin-bottom: 1.3rem;
}

@media (max-width: 36rem) {
    .about__title:not(:last-child) {
        margin-bottom: 3.3rem;
    }
}

.about__title span {
    background-color: #fde354;
}

@media (max-width: 62rem) {
    .about__title span {
        background-color: transparent;
        background-image: linear-gradient(transparent 15%, #fde354 16%, #fde354 93%, transparent 94%, transparent 100%);
    }
}

.about__block:not(:last-child) {
    margin-bottom: 4.65rem;
}

.about__wrapper {
    width: 100%;
    max-width: 64.375rem;
}

.about__wrapper p {
    font-size: 1.625rem;
    line-height: 123.07692%;

    margin-bottom: 0;

    letter-spacing: -.0625rem;
}

@media (max-width: 62rem) {
    .about__wrapper p {
        font-size: 1.5rem;
    }
}

@media (max-width: 36rem) {
    .about__wrapper p {
        font-size: 1.375rem;

        padding-right: 6px;
    }
}

.about__wrapper p:not(:last-child) {
    margin-bottom: 1.875rem;
}

@media (max-width: 62rem) {
    .about__wrapper p:not(:last-child) {
        margin-bottom: 1.25rem;
    }
}

/* about end */
/* inform start */
.inform {
    padding: 7.7125rem 0 6rem;

    background-color: #fde354;
}

@media (max-width: 62rem) {
    .inform {
        padding: 8.125rem 0;
    }
}

@media (max-width: 36rem) {
    .inform {
        padding: 9rem 0;

        text-align: center;
    }
}

.inform__title {
    font-size: 3.375rem;
    font-weight: 700;
    line-height: 118.51852%;

    margin-bottom: 0;
}

@media (max-width: 62rem) {
    .inform__title {
        font-size: 2.75rem;
    }
}

@media (max-width: 36rem) {
    .inform__title {
        font-size: 2.25rem;
        line-height: 138.88889%;

        text-align: left;
    }
}

.inform__title:not(:last-child) {
    margin-bottom: 1.875rem;
}

@media (max-width: 36rem) {
    .inform__title:not(:last-child) {
        margin-bottom: 7.5625rem;
    }
}

/* inform end */
/* services start */
.services {
    padding: 7.925rem 0 5.4rem;
}

@media (max-width: 48rem) {
    .services {
        padding: 6.925rem 0 2.875rem;
    }
}

.services__top:not(:last-child) {
    margin-bottom: 2.675rem;
}

@media (max-width: 48rem) {
    .services__top:not(:last-child) {
        margin-bottom: 4rem;
    }
}

.services__top-line {
    padding-bottom: 5.1625rem;

    border-bottom: 3px solid #2745fb;
}

@media (max-width: 48rem) {
    .services__top-line {
        padding-bottom: 0;

        border-bottom-width: 0;
    }
}

.services__container {
    max-width: 85.625rem;
}

.services__tabs {
    display: flex;
    flex-wrap: wrap;
    max-width: 76.25rem;
    margin: 0 auto;
    padding: 0 3.75rem;

    justify-content: space-between;
}

@media (max-width: 74.75rem) {
    .services__tabs {
        max-width: 100%;
        padding: 0;
    }
}

@media (max-width: 67.5rem) {
    .services__tabs {
        flex-flow: row wrap;
    }
}

.services__tabs:not(:last-child) {
    margin-bottom: 3.5rem;
}

@media (max-width: 67.5rem) {
    .services__tabs:not(:last-child) {
        margin-bottom: 2rem;
    }
}

@media (max-width: 48rem) {
    .services__tabs:not(:last-child) {
        margin-bottom: 0;
    }
}

.services__block {
    max-width: calc(33.3333% - 1.5625rem);
}

@media (max-width: 1439px) {
    .services__block {
        width: 100%;
        max-width: 100%;
        /*max-width: calc(50% - 1.875rem);*/
        margin-bottom: 1.25rem;
    }
}

@media (max-width: 48rem) {
    .services__block {
        display: flex;
        flex-direction: column;

        max-width: 100%;

        align-items: flex-start;
    }

    .services__block:not(:last-child) {
        margin-bottom: 2.6rem;
    }
}

.services__link {
    display: flex;
    flex-direction: column;
width: fit-content;
    padding-bottom: .625rem;

    transition: border-color .35s ease 0s,
    color .35s ease 0s;

    color: #ff4040;
    border-bottom: 3px solid #ff4040;

    align-items: flex-start;
}

.services__link:hover {
    color: #2745fb;
    border-bottom-color: #2745fb;
}

@media (max-width: 48rem) {
    .services__link {
        padding-bottom: .5rem;
        padding-left: .375rem;
    }

    .services__link:hover {
        color: #ff4040;
        border-bottom-color: #ff4040;
    }
}

.services__link-sub-title {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.2;

    display: block;
}

.services__link-sub-title:not(:last-child) {
    margin-bottom: .475rem;
}

.services__link-title {
    font-size: 2.125rem;
    font-weight: 700;
    line-height: 141.17647%;

    display: flex;

    align-items: center;
    justify-content: flex-start;
}

.services__link-arrow {
    font-size: 1.25rem;

    margin-right: .625rem;
    margin-left: -.375rem;

    transition: transform .35s ease 0s;
    transform: rotate(90deg);

    flex-grow: 0;
    flex-shrink: 0;
}

.services__link._active {
    color: #2745fb;
    border-bottom-color: #fff;
}

.services__link._active .services__link-arrow {
    transform: rotate(180deg);
}

@media (max-width: 48rem) {
    .services__link._active:hover {
        color: #2745fb;
        border-bottom-color: #fff;
    }
}

.services__content {
    display: none;
}

@media (max-width: 48rem) {
    .services__content {
        width: 100%;
        max-width: 100%;
        margin-top: -.3375rem;
    }
}

.services__content-row {
    position: relative;

    display: flex;

    padding: 2.8125rem 4.8125rem 4rem 0;

    align-items: flex-start;
    justify-content: space-between;
}

@media (max-width: 62rem) {
    .services__content-row {
        padding: 2.5rem 2.5rem 3.125rem 0;
    }
}

@media (max-width: 48rem) {
    .services__content-row {
        display: block;

        padding: 0 1.0625rem 3.9375rem;
    }
}

.services__content-row::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;

    width: 84.57%;

    content: '';

    background-color: #2745fb;
}

@media (max-width: 48rem) {
    .services__content-row::before {
        top: 7.5rem;
        left: 0;

        width: auto;
    }
}

.services__content-block {
    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 100%;
    margin-left: 2.5rem;

    color: #fff;
}

@media (max-width: 48rem) {
    .services__content-block {
        margin-left: 0;
    }
}

.services__content-block--top {
    padding-top: 3rem;
}

@media (max-width: 67.5rem) {
    .services__content-block--top {
        padding-top: 1.5rem;
    }
}

.services__content-block--top .services__content-title {
    margin-bottom: 4.75rem;
}

@media (max-width: 62rem) {
    .services__content-block--top .services__content-title {
        margin-bottom: 2.8125rem;
    }
}

.services__content-title {
    font-size: 3rem;
    font-weight: 700;
    line-height: 120.83333%;

    margin-bottom: 2.8125rem;

    letter-spacing: -.0625rem;
}

@media (max-width: 62rem) {
    .services__content-title {
        font-size: 2.75rem;

        margin-bottom: 2rem;
    }
}

@media (max-width: 48rem) {
    .services__content-title {
        display: none;
    }
}

.services__pic {
    position: relative;
    z-index: 2;

    display: block;

    width: 100%;
    max-width: 30.1875rem;
    height: auto;
    margin-left: -1.25rem;

    border: 1.25rem solid #fff;

    flex-grow: 0;
    flex-shrink: 0;
}

@media (max-width: 67.5rem) {
    .services__pic {
        max-width: 25rem;
    }
}

@media (max-width: 62rem) {
    .services__pic {
        max-width: 20rem;
    }
}

@media (max-width: 48rem) {
    .services__pic {
        width: 78.08%;
        max-width: 30.1875rem;
        margin: 0 auto 1.5875rem;
    }
}

.services__pic--top {
    margin-top: .7625rem;
}

@media (max-width: 48rem) {
    .services__pic--top {
        margin-top: 0;
    }
}

.services__text p {
    font-size: 1.25rem;
    line-height: 160%;

    margin-bottom: 0;

    letter-spacing: -.0313rem;
}

.services__text p:not(:last-child) {
    margin-bottom: 1.5625rem;
}

@media (max-width: 48rem) {
    .services__text p:not(:last-child) {
        margin-bottom: .8625rem;
    }
}

.services__text ul:not(:last-child),
.services__text ol:not(:last-child) {
    margin-bottom: 1.5625rem;
}

@media (max-width: 48rem) {
    .services__text ul:not(:last-child),
    .services__text ol:not(:last-child) {
        margin-bottom: .8625rem;
    }
}

.services__text ul li,
.services__text ol li {
    font-size: 1.25rem;
    line-height: 160%;

    position: relative;

    padding-left: 1.625rem;

    letter-spacing: -.0313rem;
}

.services__text ul li:not(:last-child),
.services__text ol li:not(:last-child) {
    margin-bottom: 1.5625rem;
}

@media (max-width: 48rem) {
    .services__text ul li:not(:last-child),
    .services__text ol li:not(:last-child) {
        margin-bottom: .8625rem;
    }
}

.services__text ul li::before,
.services__text ol li::before {
    position: absolute;
    top: .625rem;
    left: 0;

    width: .75rem;
    height: .75rem;

    content: '';

    border-radius: 50%;
    background-color: #fff;
}

.services__text ol {
    counter-reset: myCounter;
}

.services__text ol li {
    counter-increment: myCounter;
}

.services__text ol li::before {
    top: 0;

    width: auto;
    height: auto;

    content: counter(myCounter) '.';

    color: #fde354;
    border-radius: 0;
    background: none;
}

.services__wiki:not(:last-child) {
    margin-bottom: .75rem;
}

.services__wiki-ask {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 125%;

    position: relative;

    display: flex;

    padding-right: .6875rem;
    padding-bottom: 1.25rem;

    transition: color .35s ease 0s,
    border-color .35s ease 0s;

    color: #fff;
    border-bottom: 1px solid #fff;

    align-items: center;
    justify-content: space-between;
}

.services__wiki-ask:hover {
    color: #fde354;
    border-bottom-color: #fde354;
}

.services__wiki-ask::after {
    font-family: 'icons' !important;
    font-size: 2rem;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    right: .6875rem;

    content: '\e90c';
    transition: transform .35s ease 0s;
    transform: scaleY(1);
    text-transform: none;

    speak: never;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    flex-grow: 0;
    flex-shrink: 0;
}

.services__wiki-ask._active::after {
    transform: scaleY(-1);
}

.services__wiki .services__text {
    display: none;

    padding: 1rem 5rem 1.125rem 1.1875rem;
}

@media (max-width: 74.75rem) {
    .services__wiki .services__text {
        padding-right: 3.125rem;
    }
}

@media (max-width: 62rem) {
    .services__wiki .services__text {
        padding-right: 1.875rem;
    }
}

@media (max-width: 48rem) {
    .services__wiki .services__text {
        padding: .875rem .625rem;
    }
}

@media (max-width: 1439px) {
    .services__bottom {
        display: none;
    }
}

.services__bottom .services__content {
    display: block;
}

/* services end */
/* why start */
.why {
    padding: 4.0625rem 0 15.375rem;
}

@media (max-width: 62rem) {
    .why {
        padding: 4.1875rem 0 12.5rem;
    }
}

@media (max-width: 36rem) {
    .why {
        padding: 4.375rem 0 9.5rem;
    }
}

.why__top:not(:last-child) {
    margin-bottom: 7.15rem;
}

@media (max-width: 36rem) {
    .why__top:not(:last-child) {
        margin-bottom: 6.8125rem;
    }
}

.why__container {
    max-width: 85.4375rem;
}

.why__row {
    display: flex;

    justify-content: space-between;
}

@media (max-width: 62rem) {
    .why__row {
        display: block;
    }
}

@media (max-width: 36rem) {
    .why__row {
        padding-left: .4375rem;
    }
}

@media (max-width: 21.875rem) {
    .why__row {
        padding-left: 0;
    }
}

.why__item {
    width: 100%;
    max-width: calc(33.3333% - 66.6666px);
}

@media (max-width: 62rem) {
    .why__item {
        max-width: 100%;
        padding-left: 1rem;
    }

    .why__item:not(:last-child) {
        margin-bottom: 5.3125rem;
    }
}

.why__item-top {
    position: relative;

    display: flex;

    margin-bottom: .8625rem;
    padding-bottom: 2rem;

    border-bottom: 3px solid #2745fb;

    align-items: center;
}

@media (max-width: 62rem) {
    .why__item-top {
        margin-bottom: 1.125rem;
    }
}

@media (max-width: 36rem) {
    .why__item-top {
        padding-bottom: 1.8rem;
    }
}

.why__item-top::after {
    position: absolute;
    top: 100%;
    left: 100%;

    width: .9375rem;
    height: .9375rem;

    content: '';
    transform: rotate(45deg) translate(-15px, 6px);

    border-width: .1875rem .1875rem 0 0;
    border-style: solid;
    border-color: #2745fb;
}

.why__item-icon {
    margin-left: -.875rem;
    padding: .4375rem .375rem .4375rem .4375rem;

    background-color: #fde354;

    flex-grow: 0;
    flex-shrink: 0;
}

@media (max-width: 62rem) {
    .why__item-icon {
        margin-left: -1rem;
        padding: .4375rem .625rem;
    }
}

.why__item-img {
    display: block;

    width: 5.625rem;
    padding-bottom: 100%;

    background-color: #2745fb;

    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center center;
    mask-position: center center;
    -webkit-mask-size: contain;
    mask-size: contain;
}

.why__item-img--solution {
    -webkit-mask-image: url('/assets/img/icons/solution.png');
    mask-image: url('/assets/img/icons/solution.png');
}

.why__item-img--research {
    -webkit-mask-image: url('/assets/img/icons/research.png');
    mask-image: url('/assets/img/icons/research.png');
}

.why__item-img--process {
    -webkit-mask-image: url('/assets/img/icons/process.png');
    mask-image: url('/assets/img/icons/process.png');
}

.why__item-name {
    font-size: 1.5625rem;
    font-weight: 700;
    line-height: 120%;

    display: block;

    width: 100%;
    max-width: 15rem;
    margin-left: .8125rem;
}

.why__item-text {
    font-size: 1.25rem;
    line-height: 160%;

    margin-bottom: 0;

    letter-spacing: -.0313rem;
}

.why__item-text:not(:last-child) {
    margin-bottom: 1.25rem;
}

/* why end */
