@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap);

@font-face {
    font-family: Stolzl;
    src: url(Stolzl-Light.eot);
    src: local("Stolzl Light"), local("Stolzl-Light"), url(Stolzl-Light.eot?#iefix) format("embedded-opentype"), url(Stolzl-Light.woff2) format("woff2"), url(Stolzl-Light.woff) format("woff"), url(Stolzl-Light.ttf) format("truetype");
    font-weight: 200;
    font-style: normal
}

@font-face {
    font-family: Stolzl;
    src: url(Stolzl-Thin.eot);
    src: local("Stolzl Thin"), local("Stolzl-Thin"), url(Stolzl-Thin.eot?#iefix) format("embedded-opentype"), url(Stolzl-Thin.woff2) format("woff2"), url(Stolzl-Thin.woff) format("woff"), url(Stolzl-Thin.ttf) format("truetype");
    font-weight: 100;
    font-style: normal
}

@font-face {
    font-family: Stolzl;
    src: url(Stolzl-Book.eot);
    src: local("Stolzl Book"), local("Stolzl-Book"), url(Stolzl-Book.eot?#iefix) format("embedded-opentype"), url(Stolzl-Book.woff2) format("woff2"), url(Stolzl-Book.woff) format("woff"), url(Stolzl-Book.ttf) format("truetype");
    font-weight: 300;
    font-style: normal
}

@font-face {
    font-family: Stolzl;
    src: url(Stolzl-Regular.eot);
    src: local("Stolzl Regular"), local("Stolzl-Regular"), url(Stolzl-Regular.eot?#iefix) format("embedded-opentype"), url(Stolzl-Regular.woff2) format("woff2"), url(Stolzl-Regular.woff) format("woff"), url(Stolzl-Regular.ttf) format("truetype");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: Stolzl;
    src: url(Stolzl-Bold.eot);
    src: local("Stolzl Bold"), local("Stolzl-Bold"), url(Stolzl-Bold.eot?#iefix) format("embedded-opentype"), url(Stolzl-Bold.woff2) format("woff2"), url(Stolzl-Bold.woff) format("woff"), url(Stolzl-Bold.ttf) format("truetype");
    font-weight: 700;
    font-style: normal
}

@font-face {
    font-family: Stolzl;
    src: url(Stolzl-Medium.eot);
    src: local("Stolzl Medium"), local("Stolzl-Medium"), url(Stolzl-Medium.eot?#iefix) format("embedded-opentype"), url(Stolzl-Medium.woff2) format("woff2"), url(Stolzl-Medium.woff) format("woff"), url(Stolzl-Medium.ttf) format("truetype");
    font-weight: 500;
    font-style: normal
}

@font-face {
    font-family: Helvetica;
    src: url(HelveticaNeue-Light.otf);
    src: local("Helvetica"), local("Helvetica"), url(HelveticaNeue-Light.otf) format("otf");
    font-weight: 300;
    font-style: normal
}

@font-face {
    font-family: Helvetica;
    src: url(HelveticaNeue-Roman.otf);
    src: local("Helvetica"), local("Helvetica"), url(HelveticaNeue-Roman.otf) format("otf");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: Helvetica;
    src: url(HelveticaNeue-Medium.otf);
    src: local("Helvetica"), local("Helvetica"), url(HelveticaNeue-Medium.otf) format("otf");
    font-weight: 500;
    font-style: normal
}

@font-face {
    font-family: Helvetica;
    src: url(HelveticaNeue-Bold.otf);
    src: local("Helvetica"), local("Helvetica"), url(HelveticaNeue-Bold.otf) format("otf");
    font-weight: 600;
    font-style: normal
}

:root {
    --black: #000;
    --light-black: #1F1F1F;
    --dark-bg: #16171a;
    --accent: #BAFE35;
    --white: #fff;
    --light-gray: #f8f8f8;
    --mid-gray: #e0e0e0;
    --light-grey: #9D9D9D;
    --gray: #838383;
    --grey: #606060;
    --dark-grey: #474747;
    --grey-dark-ver: #BABABA;
    --error: #e64832;
    --border-grey: #DBDBDB;
    --blue-accent: #0500FF
}

.wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: -moz-fit-content;
    width: fit-content;
    padding: 0 32px;
    min-width: 240px;
    height: 58px;
    border: 1px solid transparent;
    border-radius: 16px;
    font-family: Stolzl;
    gap: .5em;
    font-weight: 500;
    cursor: pointer;
    position: relative
}

.btn svg {
    width: 22px;
    height: 22px
}

.btn .hover-animated-arrow {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    overflow: hidden;
    position: relative
}

.btn .hover-animated-arrow img {
    width: 20px
}

.btn .hover-animated-arrow.down {
    border-radius: 2px
}

.btn .hover-animated-arrow__out {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 16px;
    transform: translate(-50%, -50%) translate(0, 0);
    opacity: 1;
    transition: transform .45s cubic-bezier(.4, 0, .2, 1), opacity .25s ease;
    transition-timing-function: cubic-bezier(.6, 0, .4, 1)
}

.btn .hover-animated-arrow__out.left,
.btn .hover-animated-arrow__out.right {
    transform: translate(-50%, -50%) translateX(0)
}

.btn .hover-animated-arrow__out.down,
.btn .hover-animated-arrow__out.up {
    transform: translate(-50%, -50%) translateY(0)
}

.btn .hover-animated-arrow__in {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 16px;
    transform: translate(-50%, -50%) translate(-14px, 14px);
    opacity: 0;
    transition: transform .45s cubic-bezier(.4, 0, .2, 1), opacity .25s ease;
    transition-delay: 80ms
}

.btn .hover-animated-arrow__in.right {
    transform: translate(-50%, -50%) translateX(-14px)
}

.btn .hover-animated-arrow__in.left {
    transform: translate(-50%, -50%) translateX(14px)
}

.btn .hover-animated-arrow__in.down {
    transform: translate(-50%, -50%) translateY(-14px)
}

.btn .hover-animated-arrow__in.up {
    transform: translate(-50%, -50%) translateY(14px)
}

.btn:hover .hover-animated-arrow__out {
    transform: translate(-50%, -50%) translate(14px, -14px);
    opacity: 0
}

.btn:hover .hover-animated-arrow__out.right {
    transform: translate(-50%, -50%) translateX(14px)
}

.btn:hover .hover-animated-arrow__out.left {
    transform: translate(-50%, -50%) translateX(-14px)
}

.btn:hover .hover-animated-arrow__out.down {
    transform: translate(-50%, -50%) translateY(14px)
}

.btn:hover .hover-animated-arrow__out.up {
    transform: translate(-50%, -50%) translateY(-14px)
}

.btn:hover .hover-animated-arrow__in {
    transform: translate(-50%, -50%) translate(0, 0);
    opacity: 1
}

.btn:hover .hover-animated-arrow__in.left,
.btn:hover .hover-animated-arrow__in.right {
    transform: translate(-50%, -50%) translateX(0);
    opacity: 1
}

.btn:hover .hover-animated-arrow__in.down,
.btn:hover .hover-animated-arrow__in.up {
    transform: translate(-50%, -50%) translateY(0)
}

.btn.btn--primary {
    background-color: var(--black);
    color: #fff;
    overflow: hidden;
    position: relative
}

.btn.btn--primary:after {
    background: #fff;
    content: "";
    height: 155px;
    left: -75px;
    opacity: .35;
    position: absolute;
    top: -50px;
    transform: rotate(35deg);
    transition: all 850ms cubic-bezier(.19, 1, .22, 1);
    width: 40px;
    z-index: 0
}

.btn.btn--primary:hover:after {
    left: 120%;
    transition: all 650ms cubic-bezier(.19, 1, .22, 1)
}

.btn.btn--primary svg path {
    fill: #fff
}

.btn.btn--primary svg {
    stroke: #fff
}

.btn.btn--outlined {
    border-color: var(--black);
    color: var(--black)
}

.btn.btn--accent {
    color: var(--black);
    background-color: var(--accent);
    transition: all .15s;
    overflow: hidden
}

.btn.btn--accent .hover-animated-arrow img {
    width: 16px
}

.btn.btn--accent:after {
    background: #fff;
    content: "";
    height: 155px;
    left: -75px;
    opacity: .25;
    position: absolute;
    top: -50px;
    transform: rotate(35deg);
    transition: all 850ms cubic-bezier(.19, 1, .22, 1);
    width: 50px;
    z-index: 0
}

.btn.btn--accent:hover:after {
    left: 120%;
    transition: all 850ms cubic-bezier(.19, 1, .22, 1)
}

.btn.btn--accent svg path {
    fill: var(--black)
}

.btn.btn--accent svg {
    stroke: var(--black)
}

.btn.btn--light {
    border: 2px solid var(--light-black)
}

@media screen and (max-width:1350px) {
    .btn {
        height: 56px;
        padding: 0 24px
    }
}

@media screen and (max-width:1280px) {
    .btn {
        font-size: 14px;
        padding: 0 16px
    }
}

a.hovered-underline {
    position: relative;
    z-index: 1;
    width: -moz-fit-content;
    width: fit-content;
    padding-right: 25px;
    font-size: 18px;
    color: var(--gray)
}

a.hovered-underline::before {
    content: "";
    position: absolute;
    bottom: 0;
    height: 28px;
    left: -1px;
    right: -1px;
    transform-origin: 50% 100%;
    transform: scale(.98, .05) translateZ(0);
    backface-visibility: hidden;
    z-index: -1;
    display: inline-block;
    background: 0 0/100% 100% repeat-x var(--gray);
    transition: transform .38s cubic-bezier(.165, .84, .44, 1)
}

a.hovered-underline::after {
    content: "→";
    color: var(--gray);
    position: absolute;
    bottom: 2px;
    height: 24px;
    right: 0;
    display: inline-block;
    transition: transform .38s cubic-bezier(.165, .84, .44, 1)
}

a.hovered-underline:hover {
    color: var(--black)
}

a.hovered-underline:hover::before {
    transform: scale(1) translateZ(0);
    background: 0 0/100% 100% repeat-x var(--accent)
}

a.hovered-underline:hover::after {
    color: var(--black)
}

a.hovered-underline.gray::before {
    background: 0 0/100% 100% repeat-x var(--gray)
}

a.hovered {
    position: relative;
    z-index: 1;
    width: -moz-fit-content;
    width: fit-content
}

a.hovered::before {
    content: "";
    position: absolute;
    bottom: 0;
    height: 20px;
    left: -1px;
    right: -1px;
    transform-origin: 50% 100%;
    transform: scale(.98, 0) translateZ(0);
    backface-visibility: hidden;
    z-index: -1;
    display: inline-block;
    background: 0 0/100% 100% repeat-x #bafe35;
    transition: transform .38s cubic-bezier(.165, .84, .44, 1)
}

a.hovered:hover::before {
    transform: scale(1) translateZ(0)
}

a.hovered.gray::before {
    background: 0 0/100% 100% repeat-x var(--gray)
}

a.underlined {
    position: relative;
    z-index: 1;
    width: -moz-fit-content;
    width: fit-content;
    display: block
}

a.underlined:before {
    content: "";
    position: absolute;
    bottom: 0;
    height: 1px;
    left: -1px;
    right: -1px;
    background-color: var(--black)
}

.spacer {
    display: block
}

.spacer.spacer--4 {
    height: 4em
}

.spacer.spacer--8 {
    height: 8em
}

.spacer.spacer--10 {
    height: 10em
}

.spacer.spacer--12 {
    height: 12em
}

.spacer.spacer--16 {
    height: 16em
}

@media screen and (max-width:991.9px) {
    .spacer.spacer--4 {
        height: 2em
    }

    .spacer.spacer--8 {
        height: 4em
    }

    .spacer.spacer--10 {
        height: 5em
    }

    .spacer.spacer--12 {
        height: 6em
    }

    .spacer.spacer--16 {
        height: 8em
    }
}

.grey {
    color: var(--grey)
}

.gray {
    color: var(--gray)
}

.bold-text {
    font-weight: 500
}

i.text-accent {
    color: var(--grey);
    font-style: normal
}

i.text-bold {
    font-weight: 600;
    font-style: normal
}

@media screen and (max-width:991.9px) {
    .spacer.spacer--12 {
        height: 10em
    }
}

@media screen and (max-width:480px) {
    .btn.btn--accent .hover-animated-arrow img {
        width: 12px
    }
}

*,
::after,
::before {
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-scroll-snap-strictness: proximity;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / 0.5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000
}

::backdrop {
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-scroll-snap-strictness: proximity;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / 0.5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000
}

*,
::after,
::before {
    box-sizing: border-box;
    border-width: 0;
    border-style: solid;
    border-color: #e5e7eb
}

::after,
::before {
    --tw-content: ''
}

:host,
html {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    font-family: Inter, sans-serif;
    font-feature-settings: normal;
    font-variation-settings: normal;
    -webkit-tap-highlight-color: transparent
}

body {
    margin: 0;
    line-height: inherit
}

hr {
    height: 0;
    color: inherit;
    border-top-width: 1px
}

abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

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

a {
    color: inherit;
    text-decoration: inherit
}

b,
strong {
    font-weight: bolder
}

code,
kbd,
pre,
samp {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-feature-settings: normal;
    font-variation-settings: normal;
    font-size: 1em
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    font-size: 100%;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    color: inherit;
    margin: 0;
    padding: 0
}

button,
select {
    text-transform: none
}

button,
input:where([type=button]),
input:where([type=reset]),
input:where([type=submit]) {
    -webkit-appearance: button;
    background-color: transparent;
    background-image: none
}

:-moz-focusring {
    outline: auto
}

:-moz-ui-invalid {
    box-shadow: none
}

progress {
    vertical-align: baseline
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

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

summary {
    display: list-item
}

blockquote,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
pre {
    margin: 0
}

fieldset {
    margin: 0;
    padding: 0
}

legend {
    padding: 0
}

menu,
ol,
ul {
    list-style: none;
    margin: 0;
    padding: 0
}

dialog {
    padding: 0
}

textarea {
    resize: vertical
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    opacity: 1;
    color: #9ca3af
}

input::placeholder,
textarea::placeholder {
    opacity: 1;
    color: #9ca3af
}

[role=button],
button {
    cursor: pointer
}

:disabled {
    cursor: default
}

audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
    display: block;
    vertical-align: middle
}

img,
video {
    max-width: 100%;
    height: auto
}

[hidden] {
    display: none
}

.container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 1rem;
    padding-left: 1rem
}

@media (min-width:640px) {
    .container {
        max-width: 640px
    }
}

@media (min-width:768px) {
    .container {
        max-width: 768px
    }
}

@media (min-width:1024px) {
    .container {
        max-width: 1024px
    }
}

@media (min-width:1280px) {
    .container {
        max-width: 1280px
    }
}

@media (min-width:1536px) {
    .container {
        max-width: 1536px
    }
}

.visible {
    visibility: visible
}

.collapse {
    visibility: collapse
}

.static {
    position: static
}

.fixed {
    position: fixed
}

.absolute {
    position: absolute
}

.relative {
    position: relative
}

.sticky {
    position: sticky
}

.end-1 {
    inset-inline-end: .25rem
}

.block {
    display: block
}

.inline {
    display: inline
}

.flex {
    display: flex
}

.hidden {
    display: none
}

.w-full {
    width: 100%
}

.flex-shrink {
    flex-shrink: 1
}

.transform {
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.resize {
    resize: both
}

.flex-wrap {
    flex-wrap: wrap
}

.gap-1 {
    gap: .25rem
}

.gap-2 {
    gap: .5rem
}

.border {
    border-width: 1px
}

.uppercase {
    text-transform: uppercase
}

.underline {
    text-decoration-line: underline
}

.outline {
    outline-style: solid
}

.blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)
}

.filter {
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)
}

.backdrop-filter {
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)
}

.transition {
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    transition-duration: .2s
}

.ease-in-out {
    transition-timing-function: cubic-bezier(.4, 0, .2, 1)
}

* {
    box-sizing: border-box
}

body {
    font-family: Stolzl;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
    color: var(--light-black)
}

.container {
    width: 100%;
    max-width: 1560px;
    padding-left: 72px;
    padding-right: 72px;
    margin: 0 auto
}

.container.container-sm {
    max-width: 1200px
}

ul {
    padding: 0;
    margin: 0;
    list-style: none
}

a {
    color: inherit;
    text-decoration: none
}

img,
svg,
video {
    max-width: 100%;
    max-height: 100%
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 500;
    margin: 0
}

h1 span.gray,
h2 span.gray,
h3 span.gray,
h4 span.gray,
h5 span.gray,
h6 span.gray {
    color: var(--grey)
}

.h1,
h1 {
    font-size: 92px;
    line-height: normal
}

.h2,
h2 {
    font-size: 64px;
    line-height: normal
}

.h2.imaged .row,
h2.imaged .row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 26px
}

.h2.h2-block,
h2.h2-block {
    display: flex;
    flex-direction: column
}

.h2-small,
h2-small {
    font-size: 24px
}

.h2.h2-sm,
h2.h2-sm {
    font-size: 48px;
    line-height: normal
}

.h3,
h3 {
    font-size: 32px;
    line-height: normal
}

.h4,
h4 {
    font-size: 28px;
    line-height: normal
}

.h5,
h5 {
    font-size: 24px;
    line-height: normal
}

.h1-other {
    font-size: 96px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 30px;
    margin-top: 20px
}

.h1-other__big {
    line-height: 1
}

.h1-other__small {
    font-size: 24px;
    font-weight: 400;
    display: flex;
    flex-direction: column;
    margin-top: 15px
}

.h1-case {
    font-size: 96px;
    font-weight: 700
}

.h1-coop {
    font-size: 64px;
    font-weight: 700
}

.h2-block-wrap {
    width: 33%;
    display: flex;
    flex-direction: column;
    gap: 50px
}

p {
    font-size: 16px;
    font-weight: 400;
    margin: 0
}

p .paragraph {
    font-weight: 500
}

.row {
    display: flex;
    gap: var(--gap)
}

.row.gap-1 {
    --gap: 1rem
}

.row.gap-2 {
    --gap: 2rem
}

.row .w-full {
    width: 100%
}

.row .w-1_3 {
    width: calc(33.33% - var(--gap) * 2 / 3)
}

html.lenis,
html.lenis body {
    height: auto
}

.lenis.lenis-smooth {
    scroll-behavior: auto !important
}

.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain
}

.lenis.lenis-stopped {
    overflow: hidden
}

.lenis.lenis-scrolling iframe {
    pointer-events: none
}

.animation-arrow-up {
    position: relative;
    height: -moz-fit-content;
    height: fit-content
}

.animation-arrow-up-main .icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) translate(0, 0);
    opacity: 1;
    transition: transform .25s cubic-bezier(.4, 0, .2, 1), opacity .25s ease;
    transition-timing-function: cubic-bezier(.6, 0, .4, 1)
}

.animation-arrow-up-main .icon-out {
    transform: translate(-50%, -50%) translateY(0);
    opacity: 1
}

.animation-arrow-up-main .icon-in {
    transform: translate(-50%, -50%) translateY(14px);
    opacity: 0
}

.animation-arrow-up.is-open .animation-arrow-up-main .icon-out {
    transform: translate(-50%, -50%) translateY(-14px);
    opacity: 0
}

.animation-arrow-up.is-open .animation-arrow-up-main .icon-in {
    transform: translate(-50%, -50%) translateY(0);
    opacity: 1
}

.gsap-reveal {
    visibility: hidden
}

.gsap-reveal .reveal-line {
    overflow: hidden !important;
    display: block
}

.gsap-reveal .char {
    display: inline-block;
    will-change: transform
}

@media screen and (max-width:1350px) {
    .container {
        padding-left: 60px;
        padding-right: 60px
    }

    .h1,
    h1 {
        font-size: 84px
    }

    .h1-404-page,
    .h1-case {
        font-size: 84px
    }
}

@media screen and (max-width:1280px) {
    body {
        font-size: 14px
    }

    p {
        font-size: 14px
    }

    .container {
        padding-left: 48px;
        padding-right: 48px
    }

    .h1,
    h1 {
        font-size: 78px
    }

    .h1-404-page,
    .h1-case {
        font-size: 76px
    }

    .h1-coop {
        font-size: 58px
    }

    .h2,
    h2 {
        font-size: 52px
    }

    .h2.imaged img,
    h2.imaged img {
        width: 110px
    }

    .h2.imaged .row,
    h2.imaged .row {
        margin-top: 12px
    }

    .h2-small,
    h2-small {
        font-size: 20px
    }

    .h2.h2-sm,
    h2.h2-sm {
        font-size: 42px
    }
}

@media screen and (max-width:991.9px) {
    .container {
        padding-left: 36px;
        padding-right: 36px
    }

    .h1,
    h1 {
        font-size: 64px
    }

    .h1-other {
        font-size: 82px
    }

    .h1-other__small {
        font-size: 20px;
        margin-top: 10px
    }

    .h2,
    h2 {
        font-size: 48px
    }

    .h1-404-page {
        font-size: 64px
    }

    .h1-coop {
        font-size: 48px
    }
}

@media screen and (max-width:767.9px) {
    .container {
        padding-left: 24px;
        padding-right: 24px
    }

    .h1-other {
        font-size: 64px
    }

    .h1-other__small {
        font-size: 18px;
        margin-top: 5px
    }

    .h2.h2-sm,
    h2.h2-sm {
        font-size: 36px
    }

    .h3,
    h3 {
        font-size: 28px
    }
}

@media screen and (max-width:640px) {
    .h1-other {
        flex-direction: column;
        gap: 0;
        align-items: flex-start
    }

    .h1-other__small {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 8px;
        font-size: 18px;
        margin-top: 5px
    }

    .h1-case {
        font-size: 64px
    }

    .h1-404-page {
        font-size: 56px
    }

    .h1-coop {
        font-size: 42px
    }

    .h3,
    h3 {
        font-size: 26px
    }
}

@media screen and (max-width:480px) {
    .container {
        padding-left: 10px;
        padding-right: 10px
    }

    .h1-other {
        font-size: 56px
    }

    .h1-other__small {
        gap: 0
    }

    .h1-other__small span:first-child {
        margin-right: 7px
    }

    .h1-case {
        font-size: 56px
    }

    .h1-404-page {
        font-size: 48px
    }

    .h1-coop {
        font-size: 34px
    }

    .h2.h2-sm,
    h2.h2-sm {
        font-size: 28px
    }
}

@media screen and (max-width:370px) {
    .h1-case {
        font-size: 48px
    }

    .h1-404-page {
        font-size: 42px
    }

    .h1-coop {
        font-size: 28px
    }

    .h2,
    h2 {
        font-size: 36px
    }
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #f1e138;
    border-radius: 12px;
    padding: 1em;
}

.header {
    padding: 24px 0;
    position: relative;
    transition: box-shadow .3s ease, background .3s ease;
    z-index: 15;
    width: 100%
}

.header.header--fixed {
    position: fixed;
    top: 0;
    left: 50%;
    width: 90%;
    max-width: 1560px;
    transform: translateX(-50%);
    margin-top: 10px;
    padding: 15px 0;
    border-radius: 24px;
    background: rgba(255, 255, 255, .75);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 1px 0 rgba(0, 0, 0, .15), 0 10px 30px rgba(0, 0, 0, .08)
}

.header.header--fixed .container {
    padding-left: 25px;
    padding-right: 25px
}

.header.header--fixed .btn.btn--primary {
    border-radius: 16px;
    height: 52px
}

.header.header--fixed .hovered::before {
    height: 26px;
    bottom: -3px;
    border-radius: 15px;
    transform: scale(1) translateZ(0);
    background: 0 0
}

.header__logo {
    height: 38px
}

.header__logo img {
    height: 100%
}

.header__right-wrapper {
    display: flex;
    align-items: center;
    gap: 70px
}

.header__nav {
    font-size: 14px
}

.header__nav ul {
    justify-content: flex-start;
    width: -moz-fit-content;
    width: fit-content;
    display: flex;
    align-items: center
}

.header__nav ul li {
    transition: all .5s cubic-bezier(.15, 0, .175, 1)
}

.header__nav ul li a {
    padding: 0 12px;
    width: 100%;
    height: 100%;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center
}

.header__nav ul li:hover {
    color: var(--black)
}

.header__nav ul:has(li:hover) {
    color: var(--light-grey)
}

.header__nav-cta,
.header__nav-logo {
    display: none
}

.header__burger {
    flex-direction: column;
    width: 30px;
    justify-content: space-between;
    gap: 5px
}

.header__burger-wrap {
    display: none
}

.header__burger span {
    width: 100%;
    height: 3px;
    border-radius: 2px;
    background-color: #000;
    transition: all .2s ease
}

.header__burger.active span:nth-child(1) {
    transform: rotate(-45deg) translateX(-12px)
}

.header__burger.active span:nth-child(2) {
    opacity: 0
}

.header__burger.active span:nth-child(3) {
    transform: rotate(45deg) translateX(-12px)
}

.header__extra-links-mob {
    display: none
}

@media screen and (max-width:1280px) {
    .header__right-wrapper {
        gap: 25px
    }

    .header__cta .btn {
        min-width: 220px
    }

    .header.header--fixed {
        width: 95%
    }

    .header__nav ul li a {
        padding: 0 8px
    }
}

@media screen and (max-width:991.9px) {
    .header__nav {
        background: #fff;
        position: absolute;
        left: -110%;
        top: 0;
        padding: 36px;
        z-index: 9;
        height: 100vh;
        min-height: 100%;
        min-width: 280px;
        box-shadow: 4px -2px 15px 6px rgba(0, 0, 0, .1);
        transition: all .5s cubic-bezier(.77, 0, .175, 1);
        width: 500px
    }

    .header__nav ul {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px
    }

    .header__nav ul li a {
        padding: 0
    }

    .header__nav-cta,
    .header__nav-logo {
        display: block
    }

    .header__nav-logo {
        margin-bottom: 36px;
        width: 40%
    }

    .header__nav-cta {
        margin-top: 50px
    }

    .header__nav.active {
        left: 0
    }

    .header__burger {
        display: flex;
        height: 18px
    }

    .header__burger-wrap.animation-arrow-up {
        display: block
    }

    .header__wrapper {
        justify-content: space-between
    }

    .header__cta {
        margin-left: auto
    }

    .header.header--fixed .header__nav {
        height: auto;
        width: 100%;
        top: 90px;
        border-radius: 24px;
        background: rgba(255, 255, 255, .99);
        box-shadow: 0 1px 0 rgba(0, 0, 0, .15), 0 10px 30px rgba(0, 0, 0, .08)
    }

    .header.header--fixed .header__nav-logo {
        display: none
    }

    .header__extra-links-mob {
        display: block;
        margin-top: 50px
    }

    .header__extra-links-mob ul li {
        font-size: 24px;
        font-weight: 700
    }

    .header__docs {
        margin-top: 25px
    }

    .header__docs a {
        width: -moz-fit-content;
        width: fit-content;
        background: var(--mid-gray)
    }

    .header__docs a svg path {
        fill: var(--black)
    }
}

@media screen and (max-width:767.9px) {
    .header.header--fixed {
        width: 96%
    }

    .header.header--fixed .header__nav {
        top: 75px
    }

    .header__cta {
        display: none
    }
}

@media screen and (max-width:640px) {
    .header {
        padding: 16px 0
    }

    .header__nav {
        width: 390px;
        padding: 24px
    }

    .header.header--fixed .header__nav {
        top: 75px
    }
}

@media screen and (max-width:480px) {
    .header__nav {
        width: 310px
    }

    .header__nav-logo {
        width: 50%
    }

    .header__extra-links-mob {
        margin-top: 30px
    }

    .header__extra-links-mob ul li {
        font-size: 20px
    }
}

@media screen and (max-width:370px) {
    .header__nav {
        width: 275px;
        min-width: 275px
    }

    .header__nav-cta .btn {
        min-width: 210px
    }
}

.hero {
    margin-top: 30px;
    overflow: hidden;
    padding-bottom: 100px
}

.hero .h1.huge {
    font-size: 148px;
    line-height: 1;
    font-weight: 900;
    gap: 10px;
    display: flex;
    flex-direction: column
}

.hero .h1-small {
    font-size: 32px;
    padding-left: 15px
}

.hero__wrapper {
    position: relative;
    align-items: flex-start
}

.hero__info {
    width: 58%
}

.hero__info-txt {
    padding-left: 15px;
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 85%;
    font-weight: 300;
    color: var(--black)
}

.hero__btn-block {
    padding-left: 15px;
    display: flex;
    align-items: center;
    margin-top: 50px;
    gap: 30px
}

.hero__btn-block .btn-lil-txt {
    font-size: 12px
}

.hero__illustr {
    width: 40%
}

.hero__illustr .hero__mask {
    position: relative
}

.hero__illustr .globe {
    position: absolute;
    right: 0;
    top: 0;
    width: 80px;
    height: 80px
}

@media screen and (max-width:1480px) {
    .hero__wrapper {
        align-items: center
    }
}

@media screen and (max-width:1380px) {
    .hero .h1.huge {
        font-size: 106px
    }

    .hero__info {
        width: 52%
    }

    .hero__illustr {
        width: 43%
    }
}

@media screen and (max-width:1180px) {
    .hero .h1.huge {
        font-size: 86px
    }

    .hero__info {
        width: 65%;
        z-index: 2
    }

    .hero__illustr {
        position: absolute;
        top: 0;
        right: -50px
    }
}

@media screen and (max-width:991.9px) {
    .hero .h1.huge {
        font-size: 72px
    }

    .hero .h1-small {
        font-size: 24px;
        padding-left: 5px
    }

    .hero__info {
        width: 75%
    }

    .hero__info-txt {
        width: 100%;
        padding-left: 5px;
        padding-right: 100px;
        margin-top: 20px
    }

    .hero__btn-block {
        padding-left: 5px;
        gap: 20px
    }

    .hero__illustr {
        width: 50%
    }

    .hero__illustr::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        display: block;
        background: linear-gradient(90deg, #fff, rgba(255, 255, 255, .1))
    }
}

@media screen and (max-width:767.9px) {
    .hero .h1.huge {
        font-size: 65px
    }

    .hero__info {
        width: 85%
    }

    .hero__info-txt {
        padding-right: 150px
    }

    .hero__illustr {
        width: 60%
    }
}

@media screen and (max-width:640px) {
    .hero {
        overflow: hidden;
        padding-bottom: 100px
    }

    .hero .h1.huge {
        font-size: 58px
    }

    .hero__info {
        width: 100%
    }

    .hero__info-txt {
        padding-right: 50px
    }

    .hero__illustr {
        width: 80%;
        top: -10px;
        right: -150px
    }

    .hero__illustr::before {
        background: linear-gradient(90deg, #fff, rgba(255, 255, 255, .5))
    }

    .hero__btn-block {
        flex-direction: column;
        align-items: flex-start;
        margin-top: 50px;
        gap: 10px
    }
    .hero__btn-block .btn--accent {
        width: 100%;
    }
    .hero .h1-small {
        font-size: 28px;
        margin-top: 20px;
    }
}

@media screen and (max-width:480px) {
    .hero__info-txt {
        padding-right: 30px
    }

    .hero__illustr {
        right: -180px;
        width: 95%
    }

    .hero__btn-block .btn-lil-txt {
        font-size: 10px;
        font-weight: 300;
        padding-left: 5px
    }
    .hero__btn-block .btn-lil-txt br {
        display: none;
    }
}

@media screen and (max-width:370px) {
    .hero .h1.huge {
        font-size: 52px
    }

    .hero__info {
        width: 90%
    }

    .hero__info-txt {
        padding-right: 40px
    }

    .hero__illustr {
        top: 50px
    }
}

.advantages__main-wrapper {
    display: flex;
    justify-content: space-between;
    gap: 20px
}

.advantages__wrapper {
    display: flex;
    margin-top: 20px;
    flex-wrap: wrap;
    justify-content: space-between;
    width: calc(67% - 20px);
    row-gap: 50px
}

.advantages__item {
    width: 43%
}

.advantages__item .title {
    margin-top: 20px;
    font-size: 18px
}

.advantages__item .text {
    margin-top: 10px;
    font-size: 14px;
    font-weight: 300;
    color: var(--gray)
}

@media screen and (max-width:1280px) {
    .advantages__wrapper {
        width: 70%
    }

    .advantages__item {
        width: 47%
    }
}

@media screen and (max-width:991.9px) {
    .advantages__main-wrapper {
        flex-direction: column;
        gap: 50px
    }

    .advantages__wrapper {
        width: 100%;
        margin-top: 0
    }
}

@media screen and (max-width:640px) {
    .advantages__item .title {
        font-size: 16px
    }

    .advantages__item .icon {
        width: 40px
    }
}

@media screen and (max-width:480px) {
    .advantages__wrapper {
        row-gap: 30px
    }

    .advantages__item {
        width: 100%
    }
}

.request__wrapper {
    background-color: var(--light-gray);
    border-radius: 32px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 35px 50px 50px
}

.request__wrapper .paragraph {
    margin-top: 10px;
    font-weight: 500
}

.request__btns {
    margin-top: 35px;
    display: flex;
    gap: 30px
}

.request__pdf {
    display: none
}

.cooperation-page .request__pdf {
    display: flex
}

@media screen and (max-width:991.9px) {
    .request__wrapper {
        padding: 2.75em;
        border-radius: 1.5em
    }
}

@media screen and (max-width:370px) {
    .request__wrapper {
        padding: 1.8em
    }
}

.services .h2 {
    display: flex;
    align-items: center;
    gap: 30px
}

.services .h2__part {
    display: flex;
    flex-direction: column
}

.services .h2__part .small {
    font-size: 45px;
    font-weight: 300
}

.services .h2__part.mob {
    display: none
}

.services .h2 img {
    margin-top: 20px
}

.services__wrapper {
    margin-top: 4em;
    display: flex;
    gap: 1.5em
}

.services__item {
    width: calc(33.33% - 1em);
    background-color: var(--light-gray);
    border-radius: 3.5em;
    padding: 3em 2.375em;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center
}

.services__item .top-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px
}

.services__item .title {
    font-size: 1.5em;
    font-weight: 500
}

.services__item .text {
    margin-top: 15px;
    font-size: 14px;
    font-weight: 300;
    color: var(--grey)
}

.services .hovered-underline {
    display: block;
    margin: 50px 0 0 20px
}

@media screen and (max-width:1280px) {
    .services .h2__part .small {
        font-size: 36px
    }

    .services__wrapper {
        flex-wrap: wrap
    }

    .services__item {
        padding: 2em 1.775em;
        width: calc(50% - 1em)
    }

    .services__item:first-child {
        width: 100%
    }

    .services__item .title {
        font-size: 1.25em
    }
}

@media screen and (max-width:991.9px) {
    .services .h2__part .small {
        font-size: 32px
    }

    .services .h2 img {
        margin-top: 10px
    }

    .services__wrapper {
        flex-wrap: wrap
    }

    .services__item {
        width: calc(50% - .75em);
        border-radius: 1.5em
    }
}

@media screen and (max-width:767.9px) {
    .services__wrapper {
        margin-top: 30px
    }

    .services .h2__part .small {
        font-size: 26px
    }

    .services__item {
        align-items: flex-start;
        text-align: left;
        width: 100%
    }

    .services__item .top-wrap {
        flex-direction: row;
        gap: 15px
    }

    .services__item .top-wrap img {
        width: 55px
    }

    .services__item .text {
        width: 90%
    }

    .services .hovered-underline {
        margin: 30px 0 0 20px
    }
}

@media screen and (max-width:640px) {
    .services .h2 {
        gap: 10px
    }

    .services .h2__part .big {
        font-size: 38px
    }

    .services .h2__part .small {
        font-size: 20px
    }

    .services .h2 img {
        width: 70px
    }

    .services__item .top-wrap img {
        width: 45px
    }

    .services__item .text {
        width: 100%
    }
}

@media screen and (max-width:480px) {
    .services .h2 {
        align-items: flex-start
    }

    .services .h2__part .big {
        font-size: 32px
    }

    .services .h2__part .small {
        font-size: 16px
    }

    .services .h2 img {
        width: 50px
    }

    .services__item .text {
        font-size: 13px
    }
}

@media screen and (max-width:370px) {
    .services .h2 {
        align-items: flex-start
    }

    .services .h2__part .big {
        font-size: 28px
    }

    .services .h2__part .small {
        font-size: 14px
    }
}

.projects__desk {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    margin-top: 6.125em
}

.projects__item {
    width: 50%;
    border-radius: 3.5em
}

.projects__item:not(.image) {
    height: 350px;
    background-color: var(--light-gray);
    padding: 2em 4em
}

.projects__item.image {
    height: 365px
}

.projects__item.image img {
    width: 100%;
    height: 100%;
    border-radius: 3.5em;
    -o-object-fit: cover;
    object-fit: cover
}

.projects .project {
    overflow: hidden;
    position: relative
}

.projects .project-title {
    font-size: 2.75em;
    text-transform: uppercase;
    margin-top: 2.5rem
}

.projects .project-info {
    max-width: 432px
}

.projects .project .digit {
    font-size: 330px;
    text-align: center;
    line-height: 1;
    font-family: Ubuntu;
    font-weight: 600;
    transform: translateY(41%)
}

.projects .project .digit.shaded {
    color: var(--gray);
    transform: translateY(-70%)
}

.projects .project .globe {
    position: absolute;
    right: 42px;
    top: 47px
}

.projects .project .globe svg {
    fill: #000;
    stroke: #000
}

.projects .project .globe svg path {
    fill: #000;
    stroke: #000
}

.projects .project .last-txt {
    position: absolute;
    right: 48px;
    bottom: 36px;
    max-width: 450px;
    text-align: right
}

.slider-container {
    position: relative;
    overflow: hidden
}

.projects__desk {
    position: absolute;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease
}

.projects__desk.active {
    opacity: 1;
    visibility: visible;
    position: relative
}

.slider-nav {
    position: absolute;
    bottom: 25px;
    left: auto;
    right: 25px;
    z-index: 10;
    display: flex;
    align-items: center
}

.slider-nav button {
    border: none;
    background-color: transparent;
    cursor: pointer
}

.slider-nav button svg {
    width: 30px;
    height: 30px
}

.slider-nav button:hover svg path {
    fill: var(--accent)
}

.slider-nav a {
    font-weight: 600;
    font-size: 1.25em
}

@media screen and (max-width:1280px) {
    .projects__item {
        border-radius: 2.5em
    }

    .projects__item:not(.image) {
        height: 300px;
        padding: 1.5em 3em
    }

    .projects__item.image {
        height: 315px
    }

    .projects__item.image img {
        border-radius: 2.5em
    }

    .projects .project .digit {
        font-size: 290px;
        transform: translateY(36%)
    }

    .projects .project .digit.shaded {
        transform: translateY(-66%)
    }
}

@media screen and (max-width:767.9px) {
    .projects__item:not(.image) {
        padding: 1.25em 2em
    }

    .projects .project-title {
        font-size: 2em;
        text-transform: uppercase;
        margin-top: 1.5rem
    }

    .projects .project .digit {
        font-size: 200px
    }
}

.portfolio .h2-block.mobile {
    font-weight: 500;
    display: none
}

.portfolio__main-wrapper {
    display: flex;
    align-items: center;
    gap: 60px
}

.portfolio__main-wrapper .splide__list {
    min-height: 300px;
    height: auto;
}

.portfolio__left {
    width: 50%;
    height: 540px;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.portfolio__left-slider {
    height: -moz-fit-content;
    height: fit-content
}

.portfolio__left-slider .splide__track {
    padding-left: 1px
}

.portfolio__left-content {
    display: flex;
    flex-direction: column;
    gap: 25px
}

.portfolio__left-tags {
    display: flex;
    gap: 10px
}

.portfolio__left-tags .tag {
    padding: 6px 16px 4px;
    font-size: 9px;
    line-height: 1;
    font-weight: 400;
    background: var(--mid-gray);
    border-radius: 4px;
    color: var(--grey)
}

.portfolio__left-title {
    font-size: 28px;
    font-weight: 300;
    line-height: 1.2
}

.portfolio__left-title span {
    font-weight: 500
}

.portfolio__left-btns {
    display: flex;
    align-items: center;
    gap: 50px
}

.portfolio__left-arrows {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 25px
}

.portfolio__left-arrow {
    min-width: 58px;
    height: 58px;
    padding: 10px;
    background-color: var(--black)
}

.portfolio__left-arrow::after {
    content: none
}

.portfolio__left-link {
    min-width: 178px;
    background: var(--black);
    border: none;
    color: var(--white)
}

.portfolio__left-link .lil-icons {
    display: block;
    position: relative;
    overflow: hidden;
    margin-top: 2px
}

.portfolio__left-link .lil-icons svg {
    width: 18px;
    height: 18px;
    transition: transform .35s ease, opacity .25s ease
}

.portfolio__left-link .lil-icons .arrow-icon {
    position: absolute;
    font-size: 18px;
    left: -20px;
    top: -5px;
    transition: transform .35s ease, opacity .25s ease
}

.portfolio__left-link:hover {
    background: var(--dark-grey);
    transition: cubic-bezier(.075, .82, .165, 1)
}

.portfolio__left-link:hover .lil-icons svg {
    transform: translateX(-20px)
}

.portfolio__left-link:hover .lil-icons .arrow-icon {
    transform: translateX(20px)
}

.portfolio__right-slider {
    width: 50%;
    overflow: hidden;
    border-radius: 25px;
}

.portfolio__right-slider .splide__slide {
    display: flex;
    align-items: center;
    justify-content: center
}

.portfolio #cases-images .splide__track {
    transform-style: preserve-3d
}

.portfolio #cases-images .splide__slide {
    position: relative;
    transform: scale(.9) translateY(60px);
    opacity: 0;
    transition: transform 1.4s cubic-bezier(.22, 1, .36, 1), opacity 1s ease, filter 1s ease
}

.portfolio #cases-images .splide__slide-img-wrap {
    overflow: hidden;
    transform-style: preserve-3d
}

.portfolio #cases-images .splide__slide.is-active {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    opacity: 1;
    filter: blur(0)
}

.portfolio #cases-images .splide__slide img {
    transform: scale(1.08);
    transition: transform 2s cubic-bezier(.16, 1, .3, 1);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    will-change: transform;
    transition: transform 1.6s cubic-bezier(.16, 1, .3, 1);
    backface-visibility: hidden;
    transform-style: preserve-3d
}

.portfolio #cases-images .splide__slide.is-active img {
    transform: scale(1)
}

.portfolio__left-title {
    perspective: none
}

.portfolio__left-title .reveal-line {
    overflow: hidden;
    display: block;
    line-height: 1.2;
    margin-bottom: -.1em
}

.portfolio__left-title .char {
    display: inline-block;
    will-change: transform
}

@media screen and (max-width:1350px) {
    .portfolio__main-wrapper {
        gap: 20px
    }
}

@media screen and (max-width:991.9px) {
    .portfolio__main-wrapper {
        flex-direction: column;
        align-items: flex-start
    }

    .portfolio__main-wrapper .h2-block.mobile {
        display: flex;
        font-weight: 500;
        order: 1
    }

    .portfolio__right-slider {
        position: relative;
        width: 100%;
        order: 2
    }

    .portfolio__right-slider .splide__slide-img-wrap {
        width: 100%
    }

    .portfolio__left {
        width: 100%;
        height: auto;
        gap: 25px;
        order: 3
    }

    .portfolio__left .h2-block {
        display: none
    }

    .portfolio__left-arrows {
        display: none
    }

    .portfolio__left-title {
        font-size: 24px
    }

    .portfolio__left-btns .hovered-underline {
        display: none
    }
    .portfolio__main-wrapper .splide__list {
        min-height: auto;
    }
}

@media screen and (max-width:640px) {
    .portfolio__right-slider {
        border-radius: 15px;
    }
}

@keyframes translateUpDown {
    0% {
        transform: translateY(0)
    }

    100% {
        transform: translateY(-10px)
    }
}

.op-16 {
    opacity: .16
}

.u-pointer {
    pointer-events: none
}

.bord-left {
    height: 100%;
    transform-origin: 50% 0;
    border-left: 1px solid rgba(21, 21, 21, .15);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: auto
}

.work {
    background-color: #fff;
    color: #16171a
}

.work-wrap {
    position: relative;
    margin-top: 25px
}

.work-title-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%
}

.work-item {
    width: 100%
}

.work-item.dev {
    position: relative;
    z-index: 1
}

.work-item.dev .work-infos .u-1-3 {
    left: 40%
}

.work-item.dev .work-infos .u-2-2 {
    left: 30%
}

.work-item.dev .work-infos .u-2-3 {
    left: 40%
}

.work-item.dev .work-infos .u-3-2 {
    left: 35%
}

.work-item.dev .work-infos .u-3-3 {
    left: 55%
}

.work-item.mvp {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0
}

.work-title {
    perspective: 50vw;
    flex: none;
    align-items: center;
    text-decoration: none;
    display: block;
    transform: perspective(50vw)
}

.work-title-link {
    perspective: 50vw;
    flex: none;
    align-items: center;
    text-decoration: none;
    display: block;
    transform: perspective(50vw)
}

.work-title-link-wrap {
    display: flex;
    align-items: center
}

.work .title-toggle {
    display: block;
    width: 120px;
    flex: none;
    margin-left: 30px;
    position: relative
}

.work-title h3,
.work-title-link h3 {
    font-size: 48px
}

.work-infos {
    display: flex;
    justify-content: space-between;
    position: relative;
    color: #16171a;
    border-top: 1px solid rgba(21, 21, 21, .15);
    margin-top: 30px
}

.work-infos-unit {
    position: relative;
    width: 33.33%
}

.work-infos-item {
    width: 20%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-top: 90px;
    padding-right: 20px;
    padding-bottom: 20px
}

.work-infos-txt p {
    font-size: 13px
}

.work-infos-wrap {
    width: 80%;
    padding-top: 90px;
    padding-left: 40px;
    padding-bottom: 70px;
    display: flex;
    flex: none;
    position: relative
}

.work-infos-left-line {
    border-left: 1px solid rgba(21, 21, 21, .15);
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: auto
}

.work-infos-left-line.u2 {
    height: 75%
}

.work-infos-left-line.u3 {
    height: 81%
}

.work-infos-left-line.u4 {
    height: 95%
}

.work-infos-unit-title {
    text-transform: uppercase;
    margin-left: 10px;
    position: relative
}

.work-infos-unit-subt {
    margin-top: 100px;
    height: 75px;
    margin-left: 10px;
    z-index: 2;
    position: relative
}

.work-infos .u-subt {
    position: absolute;
    font-size: 16px;
    padding: 4px 16px 4px 6px;
    white-space: nowrap
}

.work-infos .u-subt::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: #bafe35;
    z-index: -1;
    transform-origin: center top;
    transform: scale3d(1, 0, 1);
    transition: transform .8s cubic-bezier(.19, 1, .22, 1)
}

.work-infos .u-subt:hover::before {
    transform: scale3d(1, 1, 1);
    transform-origin: center bottom
}

.work-infos .u-subt .u-sup {
    font-size: 10px;
    position: absolute;
    line-height: 170%;
    margin-left: 7px
}

.work-infos .u-1-1 {
    z-index: 1;
    top: 0;
    bottom: auto;
    left: 0;
    right: auto
}

.work-infos .u-1-2 {
    top: 26px;
    left: 22%;
    right: auto;
    bottom: auto;
    z-index: 2
}

.work-infos .u-1-3 {
    top: 53px;
    left: 60%;
    right: auto;
    bottom: auto;
    z-index: 3
}

.work-infos .u-2-1 {
    top: 0;
    left: 0;
    right: auto;
    bottom: auto;
    z-index: 1
}

.work-infos .u-2-2 {
    top: 26px;
    left: 11%;
    right: auto;
    bottom: auto;
    z-index: 2
}

.work-infos .u-2-3 {
    top: 53px;
    left: 50%;
    right: auto;
    bottom: auto;
    z-index: 3
}

.work-infos .u-3-1 {
    z-index: 1;
    top: 0;
    bottom: auto;
    left: 0;
    right: auto
}

.work-infos .u-3-2 {
    top: 26px;
    left: 40%;
    right: auto;
    bottom: auto;
    z-index: 2
}

.work-infos .u-3-3 {
    top: 53px;
    left: 50%;
    right: auto;
    bottom: auto;
    z-index: 3
}

.work-anchor-down {
    width: 30px;
    position: relative;
    display: block
}

.work-anchor-down svg {
    animation: translateUpDown .5s infinite alternate
}

.work .pro--c-path {
    display: none;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.work-main-path {
    position: relative;
    width: 100%
}

.work .u-path-wrapper {
    z-index: 1;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.work .u-path.u-sticky {
    width: 100%;
    height: 100vh;
    margin-left: 0;
    position: sticky;
    top: 0;
    left: auto
}

.work-info-item-2 {
    position: sticky;
    top: 0;
    padding-top: 60px;
    padding-bottom: 90px;
    padding-left: 40px
}

.work-info-item-3 {
    position: sticky;
    top: 0;
    padding-top: 60px;
    padding-bottom: 90px;
    padding-left: 40px
}

.work-info-section-1 {
    font-size: 35px;
    padding-top: 150px;
    padding-bottom: 300px
}

.work-info-section-right {
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
    position: relative;
    font-size: 35px
}

.work-info-section-right-img {
    z-index: 2;
    width: 55%;
    flex: none;
    position: relative
}

.work-info-section-right-descr {
    width: 45%;
    flex: 0 auto;
    position: relative
}

.work-info-section-right-wrap {
    height: 200vh;
    position: relative
}

.work-info-section-right-p2,
.work-info-section-right-p3 {
    margin-top: 35px
}

.work .u-hscroll {
    position: sticky;
    top: 0;
    height: 100vh;
    z-index: 2
}

.work .u-hscroll-wrap {
    width: 400vw;
    display: flex;
    position: relative
}

.work .u-hscroll-s1 {
    width: 100vw;
    flex: none;
    position: relative
}

.work .u-hscroll-s1-inner {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    position: relative
}

.work .u-hscroll-s1 .s1-left {
    width: 55%;
    flex: none;
    position: relative;
    z-index: 2
}

.work .u-hscroll-s1 .u-hscroll-layout {
    position: relative;
    flex: 0 auto;
    padding-top: 60px;
    padding-bottom: 90px;
    padding-left: 40px
}

.work .u-hscroll-s1 .u-hscroll-layout p {
    font-size: 35px
}

.work .u-htrigger {
    width: 100%;
    height: 600vh;
    display: none;
    position: absolute;
    top: 0;
    bottom: auto;
    left: 0;
    right: 0
}

.work .u-hscroll__s2 {
    width: 100vw;
    flex: none;
    position: relative
}

.work .u-hscroll__s3,
.work .u-hscroll__s4 {
    width: 100vw;
    flex: none;
    position: relative
}

.work .o-vflex-sc.is--100vh.tab--py-150--hauto {
    height: 100vh
}

.work .o-flex-ss__l840 {
    width: 55%;
    flex: none;
    position: relative
}

.work .o-l1232 {
    width: 950px;
    position: relative
}

.work .o-l1232__layout {
    position: relative
}

.work .o-h2--white {
    color: #fff;
    margin-top: 0;
    margin-bottom: 0
}

.work .o-l1232__layout.is--mt-60 {
    margin-top: 45px
}

.work .o-h4--white {
    color: #fff;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 30px;
    font-weight: 400;
    line-height: 120%
}

.work .u-hscroll__s3__bg {
    z-index: 1;
    background-color: #151515;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: none
}

.work .o-vflex-sc.is--100vh.tab--py-150--hauto {
    height: 100vh
}

.work .o-vflex-sc {
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    display: flex
}

@media screen and (max-width:1280px) {
    .work-infos .u-subt {
        font-size: 14px
    }

    .work-infos-unit-subt {
        margin-top: 70px
    }

    .work-infos-left-line.u2,
    .work-infos-left-line.u3,
    .work-infos-left-line.u4 {
        height: 70%
    }

    .work-infos-txt p {
        font-size: 12px
    }
}

@media screen and (max-width:991.9px) {
    .c-p-inf-section-5.tab--py-150 {
        height: auto
    }

    .work {
        overflow: hidden
    }

    .work .o-flex-ss__l840 {
        width: 100%
    }

    .work .u-hscroll__s3__bg,
    .work .u-hscroll__s4__bg {
        display: block
    }

    .work .u-hscroll-wrapper {
        height: auto
    }

    .work .o-l1232 {
        width: 100%
    }

    .work .title-toggle {
        width: 80px
    }

    .work-title h3,
    .work-title-link h3 {
        font-size: 36px
    }

    .work-infos {
        flex-wrap: wrap
    }

    .work-infos-wrap {
        width: 100%;
        padding-left: 0;
        padding-top: 0;
        padding-bottom: 0
    }

    .work-infos-item {
        width: 100%;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        margin-bottom: 50px;
        padding-top: 50px;
        padding-bottom: 0;
        padding-right: 0
    }

    .work-infos-txt {
        margin-top: 0;
        width: 50%
    }

    .work-infos-left-line {
        height: 0
    }

    .work-infos .u-subt {
        font-size: 12px
    }

    .work-title-wrap {
        flex-wrap: wrap;
        -moz-column-gap: 50px;
        column-gap: 50px
    }

    .work-title-link-wrap {
        flex-wrap: wrap
    }
}

@media screen and (max-width:767.9px) {
    .work .o-h4--white {
        font-size: 25px
    }

    .c-p-inf-item__wrap {
        padding-bottom: 100px
    }

    .c-p-inf-section-1 {
        padding-top: 100px;
        padding-bottom: 100px
    }

    .o-h4 {
        font-size: 25px
    }
}

@media screen and (max-width:640px) {
    .work-infos .u-1-2 {
        left: 20%
    }

    .work-infos .u-1-3 {
        left: 50%
    }

    .work-infos .u-2-2 {
        left: 18%
    }

    .work-infos .u-2-3 {
        left: 45%
    }

    .work-infos .u-3-2 {
        left: 30%
    }

    .work-infos .u-3-3 {
        left: 45%
    }

    .work-item.dev .work-infos .u-2-2 {
        left: 25%
    }

    .work-item.dev .work-infos .u-3-2 {
        left: 25%
    }

    .work-item.dev .work-infos .u-3-3 {
        left: 45%
    }

    .work-infos-txt {
        width: 70%
    }

    .work-infos-wrap {
        flex-direction: column;
        gap: 25px
    }

    .work-infos-unit {
        width: 100%;
        border-bottom: 1px solid var(--mid-gray)
    }

    .work-infos-unit:last-child {
        border-bottom: none
    }

    .work-infos-unit-title {
        margin-left: 5px;
        padding: 5px 12px;
        border-radius: 5px;
        background: var(--mid-gray);
        font-size: 12px
    }

    .work-infos-unit-subt {
        margin-top: 25px;
        margin-bottom: 25px;
        margin-left: 0
    }

    .c-p-inf-section-1 {
        padding-top: 60px;
        padding-bottom: 60px
    }

    .work-infos-left-line.u2,
    .work-infos-left-line.u3,
    .work-infos-left-line.u4 {
        height: 0
    }
}

@media screen and (max-width:480px) {
    .work .title-toggle {
        width: 65px;
        margin-left: 20px
    }

    .work-infos-txt {
        width: 100%
    }
}

@media screen and (max-width:370px) {

    .work-title h3,
    .work-title-link h3 {
        font-size: 28px
    }
}

.packs__wrapper {
    display: flex;
    justify-content: space-between
}

.packs__content {
    width: calc(67% - 20px);
    margin-top: 20px
}

.packs__mob-btn {
    display: none
}

.accordion-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 3em;
    gap: 2em;
    cursor: pointer
}

.accordion-header:hover {
    color: var(--gray)
}

.accordion-header span {
    width: calc(100% - 2em)
}

.accordion-header svg {
    width: 28px;
    height: 28px;
    transition: all .2s linear
}

.accordion-header.active svg {
    transform: rotate(-45deg)
}

.accordion-content {
    display: none
}

.accordion-content .content {
    display: flex;
    justify-content: space-between;
    margin-top: 30px
}

.accordion-content .text {
    color: var(--gray)
}

.accordion-content .price {
    font-size: 14px;
    font-weight: 400;
    display: block;
    color: var(--black)
}

.accordion-content .price span {
    font-weight: 500
}

.accordion-content .left {
    width: 55%
}

.accordion-content .left .txt-block {
    display: flex;
    flex-direction: column;
    gap: 15px
}

.accordion-content .left .txt-block .highlight {
    font-size: 14px;
    font-weight: 400;
    color: var(--black)
}

.accordion-content .left .txt-block .text {
    font-size: 14px;
    font-weight: 300
}

.accordion-content .left .txt-block .aim {
    font-size: 14px;
    font-weight: 200;
    color: var(--black)
}

.accordion-content .left .txt-block .aim span {
    font-weight: 400;
    color: var(--black)
}

.accordion-content .left .btn-block {
    display: flex;
    flex-direction: column;
    gap: 30px;
    margin-top: 30px
}

.accordion-content .list {
    width: 35%;
    display: flex;
    flex-direction: column;
    gap: 10px
}

.accordion-content .list li {
    font-size: 12px;
    color: var(--gray);
    position: relative;
    margin-top: 10px;
    display: flex;
    align-items: center;
    gap: 7px;
}

.accordion-content .list li::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 18px;
    background-image: url(/wp-content/themes/eezy/assets/img/checkmark.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    flex-shrink: 0
}

.accordion-item {
    border-bottom: 1px solid #d4d4d4;
    padding: 35px 0
}

.accordion-item:first-child {
    padding-top: 0
}

.accordion-item:last-child {
    border-bottom: none;
    padding-bottom: 0
}

@media screen and (max-width:1280px) {
    .packs__wrapper {
        flex-direction: column;
        gap: 50px
    }

    .packs__wrapper .h2-block-wrap {
        width: 100%;
        flex-direction: row;
        justify-content: space-between;
        align-items: center
    }

    .packs__wrapper .h2-block-link {
        height: -moz-fit-content;
        height: fit-content
    }

    .packs__content {
        width: 100%;
        margin-top: 0
    }
}

@media screen and (max-width:767.9px) {
    .packs .accordion-content .content {
        flex-direction: column;
        gap: 30px;
        margin-top: 20px
    }

    .packs .accordion-content .content .left {
        width: 100%
    }

    .packs .accordion-content .content .left .btn-block {
        gap: 20px;
        margin-top: 20px
    }

    .packs .accordion-content .content .list {
        width: 100%
    }
}

@media screen and (max-width:640px) {
    .packs__wrapper .h2-block-link {
        display: none
    }

    .packs__mob-btn.h2-block-link {
        display: block
    }
}

@media screen and (max-width:480px) {
    .packs .accordion-header {
        gap: 25px
    }

    .packs .accordion-header .h3 {
        font-size: 22px
    }

    .packs .accordion-content .left .txt-block .highlight,
    .packs .accordion-content .left .txt-block .text {
        font-size: 13px
    }

    .packs .accordion-content .list li {
        font-size: 11px
    }

    .packs .accordion-item {
        padding: 25px 0
    }

    .packs .accordion-item:first-child {
        padding-top: 0
    }
}

@media screen and (max-width:370px) {
    .packs .accordion-header .h3 {
        font-size: 20px
    }
}

.circle {
    animation: pulse 1.5s infinite;
    opacity: .2
}

#circle1 {
    animation-delay: 0s
}

#circle2 {
    animation-delay: .2s
}

#circle3 {
    animation-delay: .5s
}

#circle4 {
    animation-delay: .8s
}

#circle5 {
    animation-delay: 1.1s
}

@keyframes pulse {
    0% {
        opacity: .2
    }

    50% {
        opacity: 1
    }

    100% {
        opacity: .2
    }
}

.input-group {
    position: relative
}

.input-group .input,
.input-group input {
    width: 100%;
    padding: 10px 10px 25px 0;
    border: none;
    border-bottom: 1px solid var(--mid-gray);
    outline: 0;
    font-size: 16px
}

.input-group .input.input-large,
.input-group input.input-large {
    padding: 10px 10px 50px 0
}

.input-group .input.input-large~label,
.input-group input.input-large~label {
    top: 10px
}

.input-group .input.input-large~label.active,
.input-group input.input-large~label.active {
    top: -25px
}

.input-group label {
    position: absolute;
    left: 0;
    top: 10px;
    color: var(--gray);
    transition: .2s ease all;
    pointer-events: none
}

.input-group input:focus~label,
.input-group label.active,
.input-group textarea:focus~label {
    top: -25px;
    font-size: 12px;
    color: #37d536
}

.input-group input:focus {
    border-color: #37d536
}

.form-section__heading {
    display: flex;
    justify-content: space-between
}

.form-section .form-row {
    margin-top: 48px
}

.form-section .btn {
    margin-top: 48px
}

.form-section__form {
    margin-top: .5em
}

.form-section__socials {
    display: flex;
    flex-direction: column;
    width: 50px;
    gap: 1.5em;
    margin-top: 20px
}

.form-section__socials a {
    width: 50px;
    height: 50px;
    border: 1px solid var(--mid-gray);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .2s ease-in-out
}

.form-section__socials a:hover {
    background-color: var(--accent);
    border: 1px solid var(--accent)
}

.form-section__socials a svg {
    width: 21px;
    height: 21px
}

.input-group .error {
    font-weight: 400;
    font-size: 10px;
    line-height: 190%;
    color: var(--error);
    margin-top: 8px
}

.input-group input.required,
.input-group textarea.required {
    color: var(--error);
    border-bottom-color: var(--error)
}

.input-group input.required~label,
.input-group textarea.required~label {
    color: var(--error)
}

@media screen and (max-width:991.9px) {
    .form-section .form-row {
        flex-wrap: wrap
    }

    .form-section .form-row .input-group {
        width: calc(50% - var(--gap) * 2 / 3)
    }

    .form-section .form-row .input-group:last-child {
        width: 100%
    }
}

@media screen and (max-width:767.9px) {
    .form-section__heading {
        flex-direction: column
    }

    .form-section__socials {
        flex-direction: row;
        width: auto
    }

    .form-section .input-group .input.input-large,
    .form-section .input-group input.input-large {
        padding: 10px 10px 20px 0
    }

    .form-section .input-group label {
        font-size: 12px
    }
}

@media screen and (max-width:640px) {
    .form-section .h2 {
        font-size: 32px
    }

    .form-section .h2.imaged .row,
    .form-section h2.imaged .row {
        gap: 15px
    }

    .form-section .animated-arrow-img.big-size {
        width: 52px;
        height: 52px
    }

    .form-section .animated-arrow-img.big-size img {
        width: 18px;
        height: 18px
    }
}

@media screen and (max-width:480px) {
    .form-section .h2 {
        font-size: 28px
    }
}

@media screen and (max-width:370px) {
    .form-section .h2 {
        font-size: 26px
    }
}

.footer {
    background-color: var(--black);
    padding: 3.5em 0;
    color: #fff;
    font-size: 14px;
    font-weight: 400
}

.footer__wrapper {
    display: flex
}

.footer__left,
.footer__right {
    display: flex;
    width: 50%
}

.footer__left .footer__col,
.footer__right .footer__col {
    width: 50%
}

.footer__left .footer__col:first-child,
.footer__right .footer__col:first-child {
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.footer__left .footer__col .motto,
.footer__right .footer__col .motto {
    margin-top: 10px;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.2
}

.footer__left .footer__col .title,
.footer__right .footer__col .title {
    font-size: 13px;
    font-weight: 300;
    color: var(--grey-dark-ver);
    margin-bottom: 15px
}

.footer__logo {
    display: block;
    width: -moz-fit-content;
    width: fit-content
}

.footer__logo:hover {
    opacity: .85
}

.footer__nav ul {
    display: flex;
    flex-direction: column;
    gap: 15px
}

.footer__nav .hovered::before {
    height: 17px;
    background: var(--grey)
}

.footer__right .footer__col div {
    display: flex;
    flex-direction: column;
    align-items: flex-end
}

.footer__right .footer__col:last-child {
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.footer__email .copy-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    transition: background .25s ease
}

.footer__email .copy-btn:hover {
    color: var(--grey-dark-ver)
}

.footer__email .copy-btn:hover .boxes svg path {
    fill: var(--grey-dark-ver)
}

.footer__email .copy-btn .check {
    display: none
}

.footer__email .copy-btn.copied {
    color: var(--accent)
}

.footer__email .copy-btn.copied .boxes {
    display: none
}

.footer__email .copy-btn.copied .check {
    display: inline
}

.footer__phone a {
    font-size: 24px
}

.footer__phone a:hover {
    color: var(--grey-dark-ver)
}

.footer__docs {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.footer__docs a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border: 1px solid #fff;
    border-radius: 15px;
    font-size: 12px;
    transition: .38s cubic-bezier(.165, .84, .44, 1)
}

.footer__docs a:hover {
    border: 1px solid var(--accent);
    color: var(--black);
    background: var(--accent)
}

.footer__docs a:hover svg path {
    fill: var(--black)
}

.footer__under {
    margin-top: 120px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 11px;
    font-weight: 200;
    color: #989898
}

.footer__copyright span {
    color: #b5b5b5;
    font-weight: 400
}

.footer__polytics a {
    text-decoration: underline;
    font-weight: 400
}

.footer__polytics a:hover {
    color: #b5b5b5
}

.footer .socials {
    display: flex;
    gap: 12px
}

.footer .socials .social {
    width: 45px;
    height: 45px;
    border: 1px solid var(--gray);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .38s cubic-bezier(.165, .84, .44, 1)
}

.footer .socials .social:hover {
    background-color: var(--accent);
    border: 1px solid var(--accent)
}

.footer .socials .social:hover svg path {
    fill: var(--black)
}

.eezydev-big-letters {
    width: 100%;
    transform: translateY(3px);
    margin-top: 50px
}

@media screen and (max-width:1280px) {
    .footer__left {
        gap: 20px
    }

    .footer__right {
        gap: 20px
    }

    .footer__docs a {
        font-size: 11px
    }
}

@media screen and (max-width:991.9px) {
    .footer__wrapper {
        flex-direction: column;
        gap: 50px
    }

    .footer__left {
        width: 100%
    }

    .footer__right {
        width: 100%;
        flex-direction: row-reverse
    }

    .footer__right .footer__col div {
        align-items: flex-start
    }

    .footer__under {
        margin-top: 80px;
        flex-direction: column;
        align-items: flex-start;
        gap: 5px
    }
}

@media screen and (max-width:640px) {
    .footer {
        padding: 2.5em 0
    }

    .footer__left,
    .footer__right {
        flex-direction: column;
        gap: 50px
    }

    .footer__left .footer__col,
    .footer__right .footer__col {
        width: 100%;
        gap: 30px
    }

    .footer__under {
        margin-top: 50px
    }
}

@media screen and (max-width:480px) {
    .footer {
        padding: 1.5em 0
    }
}

.dialogs {
    position: fixed;
    display: none;
    opacity: 0;
    width: 100%;
    height: 100%;
    z-index: 50;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    background: rgba(27, 26, 26, .2);
    backdrop-filter: blur(24px);
    top: 0;
    left: 0
}

.dialogs .close-bg {
    position: fixed;
    z-index: 51;
    width: 100%;
    height: 100%
}

.dialogs .flex-popup {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100%;
    width: 100%;
    box-sizing: border-box
}

.dialogs .popup {
    display: none;
    opacity: 0;
    margin: 0 auto;
    position: relative;
    z-index: 52;
    width: 100%;
    max-width: -moz-max-content;
    max-width: max-content;
    border: none;
    padding: 0;
    box-sizing: border-box;
    transform: translate3d(0, -30px, 0) scale(.9);
    transition: all ease-in-out .3s;
    background: 0 0;
    color: var(--black)
}

.dialogs .popup.active {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1)
}

.dialogs .close {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    backdrop-filter: blur(16px);
    cursor: pointer;
    transition: all ease-in-out .2s
}

.dialogs .close .ico {
    display: flex;
    width: 12px;
    height: 12px;
    transition: all ease-in-out .2s
}

.dialogs .close .ico use {
    fill: var(--black);
    transition: all ease-in-out .2s
}

.dialogs .close:hover .ico use {
    fill: var(--error)
}

.dialogs .popup {
    background-color: transparent
}

.dialogs .popup__wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    width: 480px;
    min-height: 372px;
    margin: 0 auto;
    border-radius: 16px;
    background-color: #fff;
    position: relative;
    z-index: 2;
    max-width: 480px;
    padding: 0;
    box-sizing: border-box;
    overflow: visible
}

.dialogs .popup__content {
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 48px
}

.dialogs .popup__content-upper {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.dialogs .popup__content h3 {
    text-align: center
}

.dialogs .popup__form {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-top: 32px;
    gap: 35px
}

.dialogs .popup__form.popup-list {
    padding: 20px 0;
    max-height: 100%
}

.dialogs .popup__form .input-group .input,
.dialogs .popup__form .input-group input {
    padding: 10px 10px 15px 0
}

.dialogs .popup__form .input-group input:focus~label,
.dialogs .popup__form .input-group label.active,
.dialogs .popup__form .input-group textarea:focus~label {
    top: -15px
}

.dialogs .popup__form .input-group .input.input-large,
.dialogs .popup__form .input-group input.input-large {
    padding: 10px 10px 70px 0
}

.dialogs .popup__form .btn {
    width: 100%
}

.dialogs .popup .form-description {
    font-size: 12px;
    font-weight: 400
}

.dialogs .popup__file {
    gap: 4px;
    width: 100%;
    padding: 17px 0;
    border-radius: 4px;
    color: var(--gray);
    border: 1px dashed var(--gray-3);
    transition: all ease-in-out .2s;
    cursor: pointer
}

.dialogs .popup__file>span {
    font-size: 10px;
    line-height: 140%
}

.dialogs .popup__file:hover {
    border-color: var(--black)
}

.cookie-banner {
    position: fixed;
    bottom: 50px;
    right: 100px;
    max-width: 900px;
    width: calc(100% - 32px);
    height: 115px;
    padding: 25px 70px;
    background: var(--light-black);
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    z-index: 100;
    -webkit-mask-image: url(../img/cookie-bg.svg);
    mask-image: url(../img/cookie-bg.svg);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%
}

.cookie-banner__text {
    font-size: 13px;
    font-weight: 200;
    line-height: 1.4
}

.cookie-banner__text a {
    font-weight: 400;
    text-decoration: underline;
    color: var(--grey-dark-ver)
}

.cookie-banner__text a:hover {
    color: var(--white)
}

.cookie-banner__btn {
    background: 0 0;
    border: none;
    color: #baff00;
    font-weight: 700;
    cursor: pointer;
    font-size: 16px;
    text-decoration: underline
}

.cookie-banner__btn:hover {
    color: var(--white)
}

.fixed-btns {
    position: fixed;
    right: 25px;
    bottom: 40px;
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 15px
}

.fixed-btns__go-up {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--mid-gray);
    opacity: 0;
    pointer-events: none;
    transform: translateY(10px);
    transition: opacity .3s ease, transform .3s ease;
    min-width: 56px;
    padding: 0
}

.fixed-btns__go-up:hover {
    background: var(--light-grey)
}

.fixed-btns__go-up.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0)
}

.fixed-btns__direct {
    display: flex;
    align-items: center;
    border: .5px solid var(--light-black);
    border-radius: 30px
}

.fixed-btns__direct-main {
    background: var(--light-black);
    transition: background .3s ease;
    border-radius: 30px;
    width: 56px;
    height: 56px;
    display: flex;
    justify-content: center;
    align-items: center;
    order: 1;
    overflow: hidden;
    position: relative
}

.fixed-btns__direct-main svg path {
    fill: var(--white)
}

.fixed-btns__direct-main svg:last-child path {
    stroke: var(--white)
}

.fixed-btns__direct-main:hover {
    background: var(--accent)
}

.fixed-btns__direct-main:hover svg path {
    fill: var(--light-black)
}

.fixed-btns__direct-main:hover svg:last-child path {
    stroke: var(--light-black)
}

.fixed-btns__direct-menu {
    display: flex;
    opacity: 0;
    pointer-events: none;
    transform: translateX(10px);
    transition: .35s ease
}

.fixed-btns__direct-menu a {
    display: none
}

.fixed-btns__direct.is-open {
    background: var(--white)
}

.fixed-btns__direct.is-open .fixed-btns__direct-menu {
    opacity: 1;
    pointer-events: auto;
    transform: translateX(0)
}

.fixed-btns__direct.is-open .fixed-btns__direct-menu a {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.fixed-btns__direct.is-open .fixed-btns__direct-menu a:hover {
    background: #e3e3e3
}

@media screen and (max-width:1280px) {
    .cookie-banner {
        max-width: 780px;
        padding: 25px 35px;
        bottom: 30px
    }
}

@media screen and (max-width:991.9px) {
    .cookie-banner {
        max-width: 740px;
        right: 20px;
        bottom: 20px
    }

    .cookie-banner__text {
        line-height: 1.2
    }
}

@media screen and (max-width:767.9px) {
    .fixed-btns {
        bottom: 25px
    }
}

@media screen and (max-width:640px) {
    .cookie-banner {
        -webkit-mask-image: none;
        mask-image: none;
        height: auto;
        padding: 20px 30px;
        border-radius: 16px;
        right: 15px;
        bottom: 15px;
        gap: 25px
    }

    .dialogs .popup__wrapper {
        width: 450px
    }
}

@media screen and (max-width:480px) {
    .cookie-banner {
        flex-direction: column;
        text-align: center;
        padding: 15px;
        gap: 15px
    }

    .cookie-banner__text {
        font-size: 11px
    }

    .dialogs .popup__wrapper {
        width: 360px
    }

    .dialogs .popup__content {
        padding: 35px 25px
    }

    .dialogs .popup__form {
        gap: 25px
    }
}

@media screen and (max-width:370px) {
    .dialogs .popup__wrapper {
        width: 310px
    }

    .dialogs .popup__content {
        padding: 35px 15px
    }
}

.about-us {
    position: relative;
    overflow: hidden;
    padding: 30px 0 300px
}

.about-us__wrapper {
    display: flex;
    flex-direction: column;
    gap: 70px;
    position: relative;
    z-index: 2
}

.about-us__upper {
    display: flex;
    gap: 8.33%
}

.about-us__upper .h2-block {
    width: 25%
}

.about-us__upper-blocks {
    display: flex;
    width: 58.5%;
    gap: 14.3%
}

.about-us__upper-block {
    display: flex;
    flex-direction: column;
    gap: 25px
}

.about-us__upper-title {
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    display: flex;
    flex-direction: column;
    text-align: right
}

.about-us__upper-title .big {
    font-size: 56px;
    font-weight: 700
}

.about-us__upper-text {
    font-size: 14px;
    font-weight: 300;
    color: var(--grey)
}

.about-us__upper-text span {
    font-weight: 500
}

.about-us__lower {
    display: flex;
    gap: 8.33%
}

.about-us__lower-block {
    display: flex;
    flex-direction: column;
    gap: 25px
}

.about-us__lower-block:first-child {
    width: 25%
}

.about-us__lower-block:last-child {
    width: 58.5%;
    padding-right: 18%
}

.about-us__lower-title {
    font-size: 24px;
    font-weight: 500
}

.about-us__lower-text {
    font-size: 14px;
    font-weight: 300;
    color: var(--grey)
}

.about-us__circle {
    position: absolute;
    right: -250px;
    top: 30px;
    max-height: 780px;
    z-index: 1;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.about-us__bg {
    color: #f9f9f9;
    font-size: 350px;
    font-weight: 700;
    position: absolute;
    z-index: 1;
    top: 140px;
    right: -130px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    line-height: .8
}

.about-us__bg-wrap {
    position: relative;
    pointer-events: none;
    z-index: 1;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

@media screen and (max-width:1280px) {
    .about-us {
        padding: 30px 0 350px
    }

    .about-us__upper {
        gap: 5%
    }

    .about-us__upper-title {
        text-align: left
    }

    .about-us__upper-title .big {
        font-size: 48px
    }

    .about-us__upper-blocks {
        width: 70%;
        gap: 10%
    }

    .about-us__lower-block:first-child {
        width: 37%
    }

    .about-us__lower-block:last-child {
        width: 50%;
        padding-right: 0
    }

    .about-us__bg {
        font-size: 280px;
        top: 210px;
        right: 0
    }
}

@media screen and (max-width:991.9px) {
    .about-us {
        padding: 0
    }

    .about-us__circle {
        display: none
    }

    .about-us__wrapper {
        flex-direction: column;
        gap: 50px
    }

    .about-us__upper {
        flex-direction: column;
        gap: 50px
    }

    .about-us__upper .h2-block {
        width: 85%
    }

    .about-us__upper-title {
        font-size: 28px;
        flex-direction: row;
        gap: 8px
    }

    .about-us__upper-title .big {
        font-size: 28px;
        color: var(--grey)
    }

    .about-us__upper-title div {
        display: flex;
        align-items: center;
        gap: 8px
    }

    .about-us__upper-blocks {
        width: 85%;
        gap: 50px
    }

    .about-us__upper-block {
        gap: 15px
    }

    .about-us__lower {
        flex-direction: column;
        gap: 50px
    }

    .about-us__lower-title {
        font-size: 28px
    }

    .about-us__lower-block:first-child {
        width: 85%;
        gap: 15px
    }

    .about-us__lower-block:last-child {
        width: 85%;
        padding-right: 0;
        gap: 15px
    }

    .about-us__bg {
        top: 180px;
        font-size: 220px;
        transform: rotate(-90deg);
        right: -170px
    }
}

@media screen and (max-width:767.9px) {
    .about-us__upper-title {
        font-size: 24px
    }
}

@media screen and (max-width:640px) {
    .about-us__upper-blocks {
        flex-direction: column
    }

    .about-us__lower-title {
        font-size: 24px
    }
}

@media screen and (max-width:480px) {
    .about-us__bg {
        flex-direction: row-reverse;
        top: 280px;
        right: -240px;
        font-size: 150px
    }
}

.why-price .h2-long-block {
    display: flex;
    flex-direction: column
}

.why-price .h2-long-block__wrap {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.why-price__content {
    display: flex;
    flex-direction: column;
    gap: 50px;
    margin-top: 50px
}

.why-price__content-row {
    display: flex;
    gap: 8%
}

.why-price__content-item {
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: 46%
}

.why-price__content-item-title {
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 24px
}

.why-price__content-item-title img {
    width: 40px
}

.why-price__content-item-text {
    font-size: 13px;
    font-weight: 300;
    color: var(--grey)
}

@media screen and (max-width:991.9px) {
    .why-price .h2-long-block__wrap .why-price__title-img {
        width: 120px
    }

    .why-price__content-row {
        flex-direction: column;
        gap: 50px
    }

    .why-price__content-item {
        width: 90%
    }

    .why-price__content-item-title {
        font-size: 20px
    }
}

@media screen and (max-width:767.9px) {
    .why-price .h2-long-block {
        font-size: 42px
    }

    .why-price .h2-long-block__wrap .why-price__title-img {
        width: 100px
    }
}

@media screen and (max-width:640px) {
    .why-price .h2-long-block {
        font-size: 32px
    }

    .why-price .h2-long-block__wrap .why-price__title-img {
        width: 80px
    }

    .why-price__content-item-title img {
        width: 35px
    }
}

@media screen and (max-width:480px) {
    .why-price .h2-long-block {
        font-size: 26px
    }

    .why-price .h2-long-block__wrap .why-price__title-img {
        width: 70px
    }

    .why-price__content-item-title {
        font-size: 18px
    }
}

@media screen and (max-width:370px) {
    .why-price .h2-long-block {
        font-size: 24px
    }

    .why-price .h2-long-block__wrap .why-price__title-img {
        width: 50px
    }
}

.platforms__wrapper {
    background: var(--light-gray);
    padding: 70px;
    border-radius: 56px
}

.platforms .h2-highlight-block {
    font-size: 48px;
    display: flex;
    align-items: center;
    gap: 15px
}

.platforms .h2-highlight-block__upper {
    display: flex;
    align-items: center;
    gap: 15px
}

.platforms__type-wrap {
    margin-top: 50px;
    display: flex;
    gap: 50px
}

.platforms__type-text {
    margin-top: 5px
}

.platforms__type-text h3 {
    font-size: 14px;
    font-weight: 500;
    color: var(--grey);
    display: inline
}

.platforms__type-text p {
    font-size: 14px;
    font-weight: 300;
    color: var(--grey);
    display: inline
}

@media screen and (max-width:1280px) {
    .platforms__wrapper {
        padding: 50px;
        border-radius: 32px
    }

    .platforms .h2-highlight-block {
        font-size: 42px
    }

    .platforms__type-wrap {
        margin-top: 30px;
        gap: 20px;
        flex-wrap: wrap
    }

    .platforms__type-item {
        width: calc(50% - 15px)
    }

    .platforms__type-item:first-child {
        width: 100%
    }
}

@media screen and (max-width:991.9px) {
    .platforms__type-item {
        width: 100%
    }

    .platforms .h2-highlight-block {
        flex-direction: column;
        gap: 0;
        align-items: flex-start
    }

    .platforms .h2-highlight-block__upper span:last-child {
        order: 1;
        transform: translateY(25px)
    }

    .platforms .h2-highlight-block__upper span:first-child {
        order: 2
    }

    .platforms .h2-highlight-block__lower {
        margin-top: -10px;
        margin-left: 109px
    }
}

@media screen and (max-width:640px) {
    .platforms__wrapper {
        padding: 20px;
        border-radius: 24px
    }

    .platforms .h2-highlight-block {
        font-size: 36px
    }

    .platforms__type-logo {
        width: 160px
    }
}

@media screen and (max-width:480px) {
    .platforms .h2-highlight-block {
        font-size: 28px
    }

    .platforms .h2-highlight-block__upper span img {
        width: 70px
    }

    .platforms .h2-highlight-block__upper span:last-child {
        transform: translateY(15px)
    }

    .platforms .h2-highlight-block__lower {
        margin-left: 86px
    }

    .platforms__type-logo {
        width: 140px
    }
}

@media screen and (max-width:370px) {
    .platforms .h2-highlight-block {
        font-size: 24px
    }

    .platforms .h2-highlight-block__upper span img {
        width: 60px
    }

    .platforms .h2-highlight-block__lower {
        margin-left: 76px
    }
}

.faq__wrapper {
    display: flex;
    justify-content: space-between
}

.faq__content {
    width: calc(67% - 20px);
    margin-top: 10px
}

.faq__accordion .accordion-item {
    padding: 20px 0;
    border-bottom: none
}

.faq__accordion .accordion-item:first-child {
    padding-top: 0
}

.faq__accordion .accordion-item:last-child {
    padding-bottom: 0
}

.faq__accordion .accordion-header h3.h3 {
    font-size: 24px
}

.faq__accordion .accordion-content {
    font-size: 14px;
    font-weight: 300;
    color: var(--grey);
    margin-top: 20px
}

@media screen and (max-width:991.9px) {
    .faq__wrapper {
        flex-direction: column
    }

    .faq .h2-block-wrap {
        width: 100%
    }

    .faq__content {
        width: 100%;
        margin-top: 50px
    }

    .faq__accordion .accordion-header h3.h3 {
        font-size: 20px;
        width: 90%
    }

    .accordion-header {
        gap: 30px
    }
}

@media screen and (max-width:480px) {
    .faq__accordion .accordion-header h3.h3 {
        font-size: 18px
    }

    .faq__accordion .accordion-content {
        font-size: 13px
    }
}

.services-page-tabs {
    margin-top: 5px
}

.services-page-tabs__controls {
    display: flex;
    align-items: center;
    gap: 80px;
    width: -moz-fit-content;
    width: fit-content;
    padding: 12px 16px;
    background: #ebebeb;
    border-radius: 50px;
    margin-left: 150px
}

.services-page-tabs__tab {
    color: var(--light-grey);
    font-size: 18px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 15px;
    cursor: pointer
}

.services-page-tabs__tab.is-active {
    color: var(--black);
    pointer-events: none;
    cursor: default
}

.services-page-tabs__tab.is-active .switch {
    background: var(--black)
}

.services-page-tabs__tab.is-active .switch span {
    transform: translateX(17px);
    transition-delay: 60ms
}

.services-page-tabs__tab button {
    text-decoration: underline
}

.services-page-tabs__tab .switch {
    width: 40px;
    height: 24px;
    border-radius: 50px;
    background: var(--light-grey);
    padding: 1.5px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    transition: background .25s ease
}

.services-page-tabs__tab .switch span {
    display: block;
    width: 20px;
    height: 20px;
    border-radius: 50px;
    background: var(--white);
    transform: translateX(0);
    transition: transform .35s cubic-bezier(.34, 1.56, .64, 1), box-shadow .2s;
    transition-delay: 60ms
}

.services-page-tabs__content {
    margin-top: 50px
}

.services-page-tabs__tab-panel {
    display: none
}

.services-page-tabs__tab-panel.is-active {
    display: block
}

.services-page-item {
    display: flex;
    gap: 25px;
    padding: 50px 0;
    position: relative
}

.services-page-item::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60%;
    height: .5px;
    background: #dadada
}

.services-page-item:first-child {
    padding-top: 0
}

.services-page-item:last-child {
    padding-bottom: 0
}

.services-page-item:last-child::after {
    content: none
}

.services-page-item__left {
    width: 50%;
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding-right: 50px
}

.services-page-item__right {
    width: calc(50% - 25px);
    display: flex;
    gap: 25px
}

.services-page-item__title {
    font-size: 32px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 10px
}

.services-page-item__subtitle {
    font-size: 14px;
    font-weight: 500;
    margin-top: 5px;
    color: var(--grey)
}

.services-page-item__texts {
    display: flex;
    flex-direction: column;
    gap: 15px
}

.services-page-item__texts p {
    font-size: 14px;
    font-weight: 300
}

.services-page-item__texts .aim span {
    font-weight: 500
}

.services-page-item__info {
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-size: 14px;
    font-weight: 300
}

.services-page-item__info .bold {
    font-weight: 500
}

.services-page-item__info .platforms {
    display: flex;
    align-items: center;
    gap: 8px
}

.services-page-item__info .platforms-wrap {
    display: flex;
    align-items: center;
    gap: 5px
}

.services-page-item__info .platforms img {
    padding-left: 8px;
    border-left: 1px solid var(--mid-gray);
    width: 90px
}

.services-page-item__info .platforms img:first-child {
    padding-left: 0;
    border-left: none
}

.services-page-item__right {
    width: calc(50% - 25px);
    display: flex;
    gap: 25px
}

.services-page-item__list {
    width: 50%
}

.services-page-item__list-subtitle {
    font-size: 18px;
    font-weight: 500
}

.services-page-item__list ul {
    margin-top: 15px
}

.services-page-item__list li {
    font-size: 12px;
    font-weight: 400;
    line-height: 1.2;
    color: var(--grey);
    margin-top: 10px;
    display: flex;
    align-items: center;
    gap: 7px
}

.services-page-item__list li:first-child {
    margin-top: 0
}

.services-page-item__list li::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 18px;
    background-image: url(/wp-content/themes/eezy/assets/img/checkmark.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    flex-shrink: 0
}

@media screen and (max-width:1280px) {
    .services-page-item__left {
        width: 45%;
        padding-right: 0
    }

    .services-page-item__right {
        width: calc(55% - 25px);
        margin-top: 5px
    }
}

@media screen and (max-width:991.9px) {
    .services-page-item {
        flex-direction: column
    }

    .services-page-item__left {
        width: 100%;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center
    }

    .services-page-item__right {
        width: 100%;
        margin-top: 0
    }

    .services-page-item__titles {
        width: 100%;
        order: 1
    }

    .services-page-item__texts {
        width: 100%;
        order: 2
    }

    .services-page-item__info {
        order: 4;
        gap: 0
    }

    .services-page-item .btn.btn--primary {
        order: 3;
        margin-right: 20px
    }
}

@media screen and (max-width:767.9px) {
    .services-page-tabs__controls {
        margin-left: 80px
    }

    .services-page-item__title {
        font-size: 28px
    }

    .services-page-item .btn.btn--primary {
        margin-right: 0;
        order: 4
    }

    .services-page-item__info {
        order: 3;
        width: 100%
    }

    .services-page-item__right {
        flex-direction: column
    }

    .services-page-item__list {
        width: 100%
    }
}

@media screen and (max-width:640px) {
    .services-page-tabs__controls {
        margin-left: 0;
        gap: 25px;
        margin-top: 20px
    }

    .services-page-tabs__tab {
        font-size: 16px
    }
}

@media screen and (max-width:480px) {
    .services-page-tabs__controls {
        gap: 15px;
        margin-top: 15px;
        padding: 8px 12px
    }

    .services-page-tabs__tab {
        font-size: 14px;
        gap: 8px
    }

    .services-page-tabs__tab .switch {
        width: 30px;
        height: 18px
    }

    .services-page-tabs__tab .switch span {
        width: 16px;
        height: 16px
    }

    .services-page-tabs__tab.is-active .switch span {
        transform: translateX(12px)
    }

    .services-page-item__title {
        font-size: 26px
    }

    .services-page-item__info .platforms img {
        width: 80px
    }
}

@media screen and (max-width:370px) {
    .services-page-tabs__tab {
        font-size: 12px
    }

    .services-page-tabs__content {
        margin-top: 25px
    }

    .services-page-item__title {
        font-size: 22px
    }

    .services-page-item__info .platforms-wrap {
        flex-direction: column;
        align-items: flex-start
    }
}

.cases__wrapper {
    margin-top: 20px;
    display: flex;
    flex-wrap: wrap
}

.cases .case-card {
    width: calc(50% - 12.5px);
    padding-top: 15px;
    padding-bottom: 15px;
    padding-right: 25px;
    margin-right: 25px;
    margin-bottom: 50px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.cases .case-card:nth-child(even) {
    margin-right: 0;
}

.cases .case-card:nth-child(even)::after {
    content: none
}

.cases .case-card::after {
    content: "";
    height: 100%;
    width: .5px;
    background-color: var(--mid-gray);
    position: absolute;
    top: 0;
    right: 0
}

.cases .case-card__tags {
    margin-top: 20px;
    display: flex;
    gap: 10px;
    align-items: center
}

.cases .case-card .tag {
    padding: 5px 16px;
    font-size: 9px;
    line-height: 1;
    font-weight: 400;
    background: var(--mid-gray);
    border-radius: 4px;
    color: var(--grey)
}

.cases .case-card .tag.tag--fill {
    background-color: #e0e0e0
}

.cases .case-card .tag.tag--outline {
    border-color: var(--gray);
    color: var(--blue-accent)
}

.cases .case-card .tag.tag--outline-dotted {
    border: 1px dotted var(--grey)
}

.cases .case-card__title {
    font-weight: 400;
    font-size: 18px;
    margin-top: 10px
}

.cases .case-card__title span {
    font-weight: 700;
}

.cases .case-card__link {
    margin-top: 30px;
    min-width: 178px;
    background: var(--black);
    border: none;
    color: var(--white)
}

.cases .case-card__link .lil-icons {
    display: block;
    position: relative;
    overflow: hidden;
    margin-top: 2px
}

.cases .case-card__link .lil-icons svg {
    width: 18px;
    height: 18px;
    transition: transform .35s ease, opacity .25s ease
}

.cases .case-card__link .lil-icons .arrow-icon {
    position: absolute;
    font-size: 18px;
    left: -20px;
    top: -5px;
    transition: transform .35s ease, opacity .25s ease
}

.cases .case-card__link:hover {
    background: var(--dark-grey);
    transition: cubic-bezier(.075, .82, .165, 1)
}

.cases .case-card__link:hover .lil-icons svg {
    transform: translateX(-20px)
}

.cases .case-card__link:hover .lil-icons .arrow-icon {
    transform: translateX(20px)
}

@media screen and (max-width:1280px) {
    .cases .case-card .tag {
        padding: 4px 8px
    }
}

@media screen and (max-width:991.9px) {

/* 
    .cases .case-card:nth-child(2n) {
        margin-right: 0
    }

    .cases .case-card:nth-child(2n)::after {
        content: none
    } */
}

@media screen and (max-width:767.9px) {
    .cases .case-card {
        width: calc(50% - 10px);
        padding-right: 20px;
        margin-right: 20px;
        margin-bottom: 25px
    }

    .cases .case-card__tags {
        flex-wrap: wrap
    }
}

@media screen and (max-width:640px) {
    .cases .case-card {
        width: 100%;
        padding-right: 0;
        padding-top: 0;
        margin-right: 0
    }

    .cases .case-card::after {
        content: none
    }

    .cases .case-card:nth-child(2),
    .cases .case-card:nth-child(3) {
        margin-right: 0;
        padding-right: 0;
        padding-top: 0
    }

    .cases .case-card:nth-child(2)::after,
    .cases .case-card:nth-child(3)::after {
        content: none
    }

    .cases .case-card__image img {
        width: 100%
    }
}

.cooperation-page-section {
    margin-top: 30px
}

.cooperation-page .h1 {
    font-size: 58px;
    line-height: 1;
    font-weight: 700;
    gap: 10px;
    display: flex;
    flex-direction: column
}

.cooperation-page__wrapper {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start
}

.cooperation-page__info {
    width: 58%
}

.cooperation-page__info-txt {
    font-size: 14px;
    font-weight: 300;
    margin-top: 20px;
    padding-right: 100px
}

.cooperation-page__advantages {
    margin-top: 30px
}

.cooperation-page__advantages-wrapper {
    width: 100%;
    row-gap: 30px;
    -moz-column-gap: 50px;
    column-gap: 50px;
    margin-top: 0
}

.cooperation-page__advantages-wrapper .advantages__item {
    width: calc(50% - 25px)
}

.cooperation-page__advantages-wrapper .advantages__item-title {
    display: flex;
    align-items: center;
    gap: 15px
}

.cooperation-page__advantages-wrapper .advantages__item-title img.icon {
    width: 40px
}

.cooperation-page__advantages-wrapper .advantages__item-title .title {
    font-size: 16px;
    font-weight: 500;
    margin-top: 0
}

.cooperation-page__advantages-wrapper .advantages__item .text {
    font-size: 13px;
    font-weight: 300;
    padding-left: 55px;
    margin-top: 0
}

.cooperation-page__btn-block {
    margin-top: 50px;
    display: flex;
    align-items: center;
    gap: 20px
}

.cooperation-page__btn-block .btn-lil-txt {
    font-size: 12px;
    font-weight: 400
}

.cooperation-page__illustr {
    width: 40%
}

.for-whom__main-wrapper {
    display: flex;
    justify-content: space-between
}

.for-whom__wrapper {
    width: calc(67% - 20px);
    display: flex;
    flex-direction: column;
    gap: 50px;
    margin-top: 20px;
    padding-right: 15%
}

.for-whom__item {
    display: flex;
    align-items: center;
    gap: 30px
}

.for-whom__item-title {
    font-size: 18px;
    font-weight: 500
}

.for-whom__item-text {
    font-size: 14px;
    font-weight: 300;
    margin-top: 15px
}

.process-b2b__wrapper {
    display: flex;
    justify-content: space-between
}

.process-b2b__content {
    width: calc(67% - 20px);
    margin-top: 15px
}

.process-b2b__list {
    display: flex;
    flex-direction: column;
    gap: 50px;
    position: relative
}

.process-b2b__list::before {
    content: "";
    position: absolute;
    top: 0;
    left: 3px;
    width: 2px;
    height: 100%;
    background: repeating-linear-gradient(to bottom, var(--light-grey) 0 4px, transparent 8px 18px)
}

.process-b2b__item {
    display: flex;
    flex-direction: column
}

.process-b2b__item-title {
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 18px;
    font-weight: 500
}

.process-b2b__item-title .blck-box {
    width: 9px;
    height: 9px;
    background: var(--black);
    transform: rotate(45deg)
}

.process-b2b__item-title span span {
    font-size: 14px;
    color: var(--grey)
}

.process-b2b__item-text {
    font-size: 14px;
    font-weight: 300;
    color: var(--grey);
    margin-top: 5px;
    margin-left: 70px;
    padding-right: 150px
}

.process-b2b__item ul {
    list-style: disc;
    padding-left: 25px;
    margin-bottom: 15px
}

@media screen and (max-width:1280px) {
    .cooperation-page__info {
        width: 72%
    }

    .cooperation-page__illustr {
        position: absolute;
        right: 0;
        width: 50%;
        z-index: -1
    }

    .cooperation-page__illustr::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        display: block;
        background: linear-gradient(90deg, #fff, rgba(255, 255, 255, .1))
    }

    .cooperation-page__advantages-wrapper {
        -moz-column-gap: 30px;
        column-gap: 30px
    }

    .cooperation-page__advantages-wrapper .advantages__item {
        width: calc(50% - 15px)
    }

    .for-whom__wrapper {
        padding-right: 0
    }
}

@media screen and (max-width:991.9px) {
    .cooperation-page__info {
        width: 80%
    }

    .cooperation-page__illustr {
        width: 60%;
        bottom: 50px
    }

    .cooperation-page__illustr::before {
        background: linear-gradient(90deg, #fff, rgba(255, 255, 255, .5))
    }

    .cooperation-page__advantages-wrapper {
        -moz-column-gap: 20px;
        column-gap: 20px;
        row-gap: 20px
    }

    .cooperation-page__advantages-wrapper .advantages__item {
        width: calc(50% - 10px)
    }

    .cooperation-page__advantages-wrapper .advantages__item .text {
        padding-left: 0;
        margin-top: 10px
    }

    .cooperation-page__advantages-wrapper .advantages__item-title img.icon {
        width: 35px
    }

    .for-whom__main-wrapper {
        flex-direction: column;
        justify-content: flex-start;
        gap: 50px
    }

    .for-whom__wrapper {
        width: 100%;
        margin-top: 0
    }

    .process-b2b__wrapper {
        justify-content: flex-start;
        flex-direction: column;
        gap: 50px
    }

    .process-b2b__content {
        width: 100%
    }

    .process-b2b__list::before {
        left: 4px
    }
}

@media screen and (max-width:767.9px) {
    .cooperation-page-section {
        overflow: hidden
    }

    .cooperation-page__info {
        width: 100%
    }

    .cooperation-page__illustr {
        width: 90%;
        bottom: 0;
        transform: translateX(300px)
    }

    .cooperation-page .request__btns {
        flex-direction: column;
        gap: 10px
    }

    .for-whom__item {
        gap: 20px
    }

    .for-whom__item img {
        width: 70px
    }

    .process-b2b__item-text {
        padding-right: 50px
    }
}

@media screen and (max-width:640px) {
    .cooperation-page__advantages-wrapper {
        flex-direction: column
    }

    .cooperation-page__advantages-wrapper .advantages__item {
        width: 100%
    }

    .cooperation-page__info-txt {
        padding-right: 50px
    }

    .cooperation-page__btn-block {
        flex-direction: column;
        align-items: flex-start
    }

    .cooperation-page__btn-block .btn-lil-txt {
        margin-left: 5px
    }

    .cooperation-page__illustr {
        width: 100%;
        top: 150px;
        bottom: auto;
        transform: translateX(180px)
    }

    .for-whom__item-text {
        margin-top: 5px
    }

    .process-b2b__item-text {
        padding-right: 0
    }
}

@media screen and (max-width:480px) {
    .cooperation-page__info-txt {
        padding-right: 0
    }

    .cooperation-page__btn-block .btn--accent {
        width: 100%
    }

    .for-whom__item {
        align-items: flex-start;
        flex-direction: column
    }

    .process-b2b__item-title {
        gap: 8px
    }

    .process-b2b__item-title .blck-box {
        width: 7px;
        height: 7px
    }

    .process-b2b__item-title .icon {
        width: 25px
    }

    .process-b2b__item-text {
        margin-left: 48px
    }

    .process-b2b__list::before {
        left: 3px
    }
}

.case-item-page__wrapper {
    position: relative
}

.case-item-page__wrapper-inner {
    display: flex;
    gap: 20px;
    width: 100%;
    position: relative
}

.case-item-page__left {
    width: 50%;
    height: 100%;
    display: flex;
    flex-direction: column;
    position: sticky;
    top: 150px
}

.case-item-page__left-moving {
    display: flex;
    flex-direction: column;
    gap: 50px;
    position: sticky;
    top: 20px
}

.case-item-page__left-moving .h1-other {
    margin-left: -5px
}

.case-item-page__left-item {
    display: flex;
    flex-direction: column;
    gap: 5px
}

.case-item-page__left-btns {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.case-item-page__left-btns-mouse {
    font-size: 12px;
    font-weight: 300;
    color: var(--light-grey);
    display: flex;
    gap: 8px;
    margin-right: 25px
}

.case-item-page__left-title {
    font-size: 14px;
    font-weight: 200;
    color: var(--grey)
}

.case-item-page__left-text {
    font-size: 14px;
    font-weight: 300
}

.case-item-page__left-btns-block {
    display: flex;
    gap: 20px
}

.case-item-page__left-btns-block .btn {
    min-width: 140px
}

.case-item-page__left-btns-block .btn--back {
    background-color: var(--white);
    color: var(--light-black);
    border: .5px solid var(--light-black)
}

.case-item-page__right {
    width: 50%;
    height: 100%;
    overflow: hidden
}

.case-item-page__right-imgs {
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding-top: 25px
}

.case-item-page__right-imgs img {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media screen and (max-width:991.9px) {
    .case-item-page__wrapper-inner {
        flex-direction: column
    }

    .case-item-page__left {
        width: 100%;
        position: static
    }

    .case-item-page__left-btns-mouse {
        display: none
    }

    .case-item-page__right {
        width: 100%
    }
}

@media screen and (max-width:767.9px) {
    .case-item-page__left-moving {
        gap: 30px
    }
}

.contacts-page-section .h2 {
    font-size: 32px;
    font-weight: 500;
    display: flex;
    flex-direction: column
}

.contacts-page .h2-upper {
    display: flex;
    align-items: center;
    gap: 15px
}

.contacts-page__wrapper {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
    gap: 100px
}

.contacts-page__left {
    width: 70%
}

.contacts-page__left-form {
    margin-top: 50px
}

.contacts-page__left-form form {
    display: flex;
    flex-direction: column;
    gap: 50px
}

.contacts-page__left-form form .form-row {
    gap: 50px;
    display: flex;
    flex-wrap: wrap;
}

.contacts-page__left-form form .input-group {
    width: calc(50% - 25px)
}

.contacts-page__left-form form .input-group.w-full {
    width: 100%
}

.contacts-page__socials {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 50px
}

.contacts-page__socials .social {
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 14px;
    font-weight: 400;
    color: var(--grey)
}

.contacts-page__socials .social-icon {
    width: 50px;
    height: 50px;
    background: var(--white);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    border: .3px solid var(--light-black);
    transition: background .3s ease
}

.contacts-page__socials .social-text {
    text-decoration: underline;
    transition: text .3s ease
}

.contacts-page__socials .social:hover {
    color: var(--light-black)
}

.contacts-page__socials .social:hover .social-icon {
    background: var(--light-black)
}

.contacts-page__socials .social:hover .social-icon svg path {
    fill: var(--white)
}

.contacts-page__socials .social:hover .social-text {
    text-decoration: none
}

.contacts-page__right {
    width: calc(30% - 100px)
}

.animated-arrow-img {
    width: 36px;
    height: 36px;
    border-radius: 50px;
    background: var(--accent);
    overflow: hidden;
    position: relative
}

.animated-arrow-img.big-size {
    width: 76px;
    height: 76px
}

.animated-arrow-img.big-size img {
    width: 28px;
    height: 28px
}

.animated-arrow-img__out {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 16px;
    transform: translate(-50%, -50%);
    animation: arrowOut 5s infinite cubic-bezier(.4, 0, .2, 1)
}

.animated-arrow-img__in {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 16px;
    transform: translate(-50%, -50%);
    animation: arrowIn 5s infinite cubic-bezier(.4, 0, .2, 1)
}

@keyframes arrowOut {
    0% {
        transform: translate(-50%, -50%) translate(0, 0);
        opacity: 1
    }

    25% {
        transform: translate(-50%, -50%) translate(14px, -14px);
        opacity: 0
    }

    50% {
        transform: translate(-50%, -50%) translate(0, 0);
        opacity: 0
    }

    100% {
        transform: translate(-50%, -50%) translate(0, 0);
        opacity: 0
    }
}

@keyframes arrowIn {
    0% {
        transform: translate(-50%, -50%) translate(-14px, 14px);
        opacity: 0
    }

    25% {
        transform: translate(-50%, -50%) translate(-14px, 14px);
        opacity: 0
    }

    50% {
        transform: translate(-50%, -50%) translate(0, 0);
        opacity: 1
    }

    100% {
        transform: translate(-50%, -50%) translate(0, 0);
        opacity: 1
    }
}

@media screen and (max-width:1280px) {
    .contacts-page__wrapper {
        gap: 50px
    }

    .contacts-page__left-form form .form-row {
        gap: 30px
    }

    .contacts-page__left-form form .input-group {
        width: calc(50% - 15px)
    }

    .contacts-page__right {
        width: calc(30% - 50px)
    }
}

@media screen and (max-width:991.9px) {
    .contacts-page__wrapper {
        flex-direction: column
    }

    .contacts-page__left {
        width: 100%
    }

    .contacts-page__right {
        width: 100%
    }

    .contacts-page__right .h2 {
        flex-direction: row;
        gap: 10px
    }

    .contacts-page__socials {
        flex-direction: row;
        flex-wrap: wrap
    }

    .contacts-page__socials .social {
        width: calc(50% - 10px)
    }
}

@media screen and (max-width:767.9px) {
    .contacts-page .h2 {
        font-size: 28px
    }
}

@media screen and (max-width:640px) {
    .contacts-page .h2-upper {
        flex-wrap: wrap;
        gap: 0
    }

    .contacts-page-section .h2 {
        font-size: 20px;
    }

    .contacts-page .h2-upper .animated-arrow-img {
        margin-left: 15px
    }

    .contacts-page .h2-upper .last-elem {
        margin-left: 22%
    }

    .contacts-page__left-form form {
        gap: 30px
    }

    .contacts-page__left-form form .form-row {
        flex-direction: column
    }

    .contacts-page__left-form form .form-row .input-group {
        width: 100%
    }

    .contacts-page__socials {
        margin-top: 25px
    }

    .contacts-page__socials .social-icon {
        width: 40px;
        height: 40px
    }

    .contacts-page__socials .social-icon svg {
        width: 15px
    }
}

@media screen and (max-width:480px) {
    .contacts-page__socials {
        flex-direction: column;
        flex-wrap: nowrap
    }

    .contacts-page__socials .social {
        width: 100%
    }

    .contacts-page__right .h2 {
        flex-direction: column;
        gap: 0
    }
}

.error-page .h1-404-page {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0
}

.error-page__wrapper {
    display: flex;
    align-items: center;
    gap: 20px
}

.error-page__left {
    width: 60%;
    display: flex;
    flex-direction: column;
    gap: 30px
}

.error-page__subtitle {
    font-size: 32px;
    font-weight: 500;
    line-height: 1.2
}

.error-page__btns {
    display: flex;
    align-items: center;
    gap: 50px
}

.error-page__socials {
    display: flex;
    align-items: center;
    gap: 20px
}

.error-page__socials .social {
    width: 50px;
    height: 50px;
    background: var(--white);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    border: .3px solid var(--light-black);
    transition: transform .3s ease
}

.error-page__socials .social:hover {
    background: var(--light-black)
}

.error-page__socials .social:hover svg path {
    fill: var(--white)
}

.error-page__man {
    width: 40%;
    position: relative
}

.error-page__man-head {
    position: absolute;
    left: 54%;
    top: 0;
    transform: translateX(-50%);
    transition: transform .9s ease
}

.error-page__man-number {
    position: absolute;
    display: block;
    left: 57%;
    bottom: 0;
    transform: translateX(-50%);
    transition: transform .9s ease;
    color: var(--grey);
    font-size: 42px;
    font-weight: 700;
    pointer-events: none
}

.error-page__man-body {
    pointer-events: none
}

.error-page__man:hover .error-page__man-head {
    transform: translate(-46%, 40px) scale(.75)
}

@media screen and (max-width:1350px) {
    .error-page__man-head {
        width: 38%
    }

    .error-page__man:hover .error-page__man-head {
        transform: translate(-46%, 15px) scale(.75)
    }
}

@media screen and (max-width:991.9px) {
    .error-page__wrapper {
        flex-direction: column;
        align-items: flex-start
    }

    .error-page__left {
        width: 100%
    }

    .error-page__man {
        width: 60%;
        margin-top: 50px
    }
}

@media screen and (max-width:767.9px) {
    .error-page__man {
        width: 80%;
        margin-top: 50px
    }
}

@media screen and (max-width:640px) {
    .error-page__btns {
        flex-direction: column;
        gap: 20px;
        align-items: flex-start
    }

    .error-page__man-number {
        font-size: 32px
    }
}

@media screen and (max-width:480px) {
    .error-page__subtitle {
        font-size: 24px
    }

    .error-page__man {
        width: 90%
    }
}

.privacy-page-section .h1-other {
    font-size: 54px;
}

@media screen and (max-width: 991.9px) {
    .privacy-page-section .h1-other {
        font-size: 42px;
    }
}

@media screen and (max-width: 480px) {
    .privacy-page-section .h1-other {
        font-size: 28px;
    }
}

@media screen and (max-width: 370px) {
    .privacy-page-section .h1-other {
        font-size: 24px;
    }
}

/*# sourceMappingURL=style.css.map */