@keyframes fadeUp {
    0% {
        opacity: 0;
        transform: translateY(5rem)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes pulse {

    0%,
    to {
        transform: scale(1)
    }

    50% {
        transform: scale(1.1)
    }
}

@font-face {
    font-family: "Playfair Display";
    src: url(/assets/fonts/PlayfairDisplay-Medium.woff2)format("woff2"), url(/assets/fonts/PlayfairDisplay-Medium.woff)format("woff");
    font-weight: 500;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "Cormorant SC";
    src: url(/assets/fonts/CormorantSC-Bold.woff2)format("woff2"), url(/assets/fonts/CormorantSC-Bold.woff)format("woff");
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "Cormorant SC";
    src: url(/assets/fonts/CormorantSC-Medium.woff2)format("woff2"), url(/assets/fonts/CormorantSC-Medium.woff)format("woff");
    font-weight: 500;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "IBM Plex Sans";
    src: url(/assets/fonts/IBMPlexSans-Regular.woff2)format("woff2"), url(/assets/fonts/IBMPlexSans-Regular.woff)format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

:root {
    --color-dark: rgb(0, 0, 0);
    --color-grey: rgb(77, 77, 77);
    --color-gold: rgb(195, 169, 116);
    --color-green: rgb(44, 69, 42);
    --color-white: rgb(255, 255, 255);
    --color-red: rgb(255, 0, 0);
    --color-background: rgb(231, 217, 205);
    --font-primary: "IBM Plex Sans", sans-serif;
    --font-secondary: "Cormorant SC", sans-serif;
    --font-tertiary: "Playfair Display", sans-serif
}

.container {
    width: 95vw;
    max-width: 176rem;
    margin: 0 auto
}

.container--full {
    width: 100vw;
    max-width: 100%
}

.container--lg {
    max-width: 185rem
}

.container--no-margin-right {
    margin-right: 0
}

.container--flex {
    display: flex;
    flex-wrap: nowrap
}

.reset-list {
    padding: 0;
    list-style: none
}

a,
article,
aside,
blockquote,
code,
div,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hr,
iframe,
label,
li,
main,
nav,
ol,
p,
pre,
section,
span,
textarea,
ul {
    margin: 0;
    padding: 0;
    outline: 0;
    font-weight: inherit;
    font-style: inherit;
    font-size: inherit;
    font-family: inherit;
    color: inherit;
    line-height: inherit;
    vertical-align: baseline;
    box-sizing: border-box
}

img {
    font-weight: inherit;
    vertical-align: bottom;
    border: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    flex-shrink: 0
}

b,
i,
img,
strong {
    font-size: inherit;
    line-height: inherit
}

b,
img,
strong {
    font-style: inherit
}

b,
strong {
    font-weight: 700
}

i {
    font-style: italic
}

b,
body,
html,
i,
img,
strong,
sup {
    margin: 0;
    padding: 0
}

b,
button,
i,
img,
input,
strong,
sup {
    outline: 0;
    font-family: inherit;
    color: inherit;
    box-sizing: border-box
}

b,
button,
i,
input,
strong,
sup {
    vertical-align: baseline
}

button,
i,
input,
sup {
    font-weight: inherit
}

button,
input,
sup {
    font-style: inherit
}

sup {
    line-height: inherit;
    font-size: .55em;
    position: relative;
    bottom: .55em
}

button,
input {
    margin: 0;
    padding: 0;
    font-size: inherit
}

article,
aside,
footer,
header,
main,
nav,
section {
    display: block
}

button {
    overflow: visible;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent
}

button,
input {
    line-height: normal;
    -webkit-appearance: none
}

button,
code,
img {
    display: inline-block
}

body,
html {
    font-family: var(--font-primary);
    font-size: .521vw;
    font-style: normal;
    line-height: 1
}

body {
    display: flex;
    flex-direction: column;
    min-height: 99.9vh;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    color: var(--color-grey);
    background-color: var(--color-background)
}

body::-webkit-scrollbar {
    width: .5rem
}

body::-webkit-scrollbar-track {
    box-shadow: inset 0 0 .5rem var(--color-dark-01)
}

body::-webkit-scrollbar-thumb {
    background-color: var(--color-red)
}

body.fixed {
    height: 100dvh
}

.footer__icon:hover svg,
.header__icon:hover svg,
body.fixed .loader {
    opacity: 1
}

body.fixed,
section {
    overflow: hidden
}

.css-animation-pulse {
    animation-name: pulse;
    animation-duration: 2.5s;
    animation-iteration-count: infinite
}

.css-animation-fadeUp {
    opacity: 0;
    transform: translateY(5rem)
}

.animated .css-animation-fadeUp {
    animation-name: fadeUp;
    animation-duration: .6s;
    animation-fill-mode: forwards
}

.css-animation-delay-1 {
    animation-delay: .2s
}

.css-animation-delay-2 {
    animation-delay: .3s
}

.css-animation-delay-3 {
    animation-delay: .4s
}

.btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color-gold);
    border: 0;
    border-radius: 3rem;
    height: 4rem;
    padding: 0 1rem;
    font-size: 2rem;
    color: rgba(255, 255, 255, .5);
    transition: all .2s ease
}

.btn:hover {
    color: #fff
}

.btn span {
    transform: translateY(-.2rem)
}

.footer {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 2rem 0;
    background-color: rgba(195, 169, 116, .3);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px)
}

.footer__controls {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 2rem
}

.footer__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    background-color: var(--color-gold);
    border-radius: 3rem
}

.footer__icon svg,
.header__icon svg {
    width: 70%;
    height: 70%;
    color: var(--color-white);
    opacity: .5;
    transition: all .2s ease
}

.form {
    width: 100%;
    padding: 6rem 3rem;
    background-color: rgba(195, 169, 116, .2);
    border: 2px solid var(--color-gold);
    border-radius: 3rem
}

.form__container {
    display: flex;
    align-items: center;
    gap: 2rem;
    margin-top: 8rem
}

.form__field {
    position: relative;
    flex: 1 0 auto
}

.form__field--error .form__input {
    color: var(--color-red);
    border-color: var(--color-red)
}

.form__field--error .form__input::-moz-placeholder {
    color: var(--color-red)
}

.form__field--error .form__input:-ms-input-placeholder {
    color: var(--color-red)
}

.form__field--error .form__input::placeholder {
    color: var(--color-red)
}

.form__field--error .form__checkbox+label {
    color: var(--color-red)
}

.form__input,
.form__input+label {
    width: 100%;
    color: var(--color-grey)
}

.form__input {
    height: 6.2rem;
    padding: 2rem 0 1rem;
    font-size: 2rem;
    font-weight: 400;
    background-color: transparent;
    border: 0;
    border-bottom: .1rem solid var(--color-grey);
    transition: all .2s ease;
    opacity: .7
}

.form__input+label {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    font-size: 2.4rem;
    transition: top .2s ease
}

.form__input+label span {
    opacity: 0;
    transition: all .2s ease
}

.form__input:focus::-moz-placeholder {
    font-size: 1.6rem;
    color: transparent;
    transform: translateY(-2.4rem)
}

.form__input:focus:-ms-input-placeholder {
    font-size: 1.6rem;
    color: transparent;
    transform: translateY(-2.4rem)
}

.form__input:focus::placeholder {
    font-size: 1.6rem;
    color: transparent;
    transform: translateY(-2.4rem)
}

.form__input:focus+label {
    top: 0;
    font-size: 1.6rem;
    transform: translateY(0)
}

.form__input:focus+label span {
    opacity: 1
}

.form__input::-moz-placeholder {
    color: var(--color-grey);
    -moz-transition: all .2s ease;
    transition: all .2s ease
}

.form__input:-ms-input-placeholder {
    color: var(--color-grey);
    -ms-transition: all .2s ease;
    transition: all .2s ease
}

.form__input::placeholder {
    color: var(--color-grey);
    transition: all .2s ease
}

.form__checkbox {
    position: absolute;
    opacity: 0;
    pointer-events: none
}

.form__checkbox:checked+label::after {
    opacity: 1;
    background-color: rgba(195, 169, 116, .1)
}

.form__checkbox+label {
    position: relative;
    display: block;
    max-width: 28rem;
    padding-left: 4rem;
    font-size: 1.6rem;
    cursor: pointer
}

.form__checkbox+label::after,
.form__checkbox+label::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.4rem;
    height: 2.4rem;
    border: 1px solid var(--color-grey);
    border-radius: .8rem
}

.form__checkbox+label::after {
    background-image: url(./assets/images/icons/check.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-color: rgba(195, 169, 116, .3);
    opacity: 0
}

.form__controls {
    display: flex;
    align-items: center;
    gap: 4rem
}

.form__btn {
    flex: 1 0 auto;
    height: 5rem;
    padding: 2rem
}

.header {
    z-index: 5;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    padding: 2rem 0;
    background-color: rgba(195, 169, 116, .3);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px)
}

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

.header__controls,
.header__icon {
    display: inline-flex;
    align-items: center
}

.header__controls {
    gap: 2rem
}

.header__icon {
    justify-content: center;
    width: 4rem;
    height: 4rem;
    background-color: var(--color-gold);
    border-radius: 3rem
}

.header .title {
    flex-direction: row;
    font-size: 2.4rem;
    gap: 1rem
}

.header .logo {
    display: flex;
    gap: 1rem
}

.header .logo__decor {
    width: 10rem;
    height: auto
}

.header .logo__decor img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.main {
    flex: 1 0 auto;
    overflow: hidden
}

.modal {
    z-index: 5;
    position: fixed;
    display: none;
    align-items: center;
    justify-content: center;
    height: 100vh;
    width: 100vw;
    background-color: rgba(255, 255, 255, .2);
    opacity: 0;
    transition: all .2s ease
}

.modal.opened {
    display: flex;
    opacity: 1
}

.modal__window {
    position: relative;
    width: 80rem;
    max-width: 95vw;
    background-color: var(--color-white);
    border-radius: 3rem
}

.modal__close {
    position: absolute;
    top: 2rem;
    right: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    font-size: 4rem;
    border: 0;
    background-color: transparent;
    cursor: pointer
}

.modal__inner {
    padding: 3rem
}

.title {
    display: flex;
    flex-direction: column;
    font-family: var(--font-secondary);
    font-weight: 700;
    font-size: 5rem
}

.title--playfair {
    font-family: var(--font-tertiary);
    font-weight: 500
}

.title--decor {
    position: relative;
    font-weight: 400;
    font-size: 7.2rem;
    font-style: italic
}

.title--decor::before {
    position: absolute;
    z-index: 0;
    top: -18rem;
    left: -24rem;
    display: block;
    width: 100vw;
    font-size: 36rem;
    color: currentColor;
    opacity: .5
}

.subtitle {
    display: flex;
    flex-direction: column;
    font-size: 3rem;
    font-family: var(--font-secondary)
}

.subtitle--lg {
    font-size: 3.6rem;
    line-height: 1.2
}

.text {
    font-size: 2rem;
    line-height: 1.55
}

.loader .logo .title,
.text--hg {
    font-size: 4rem
}

.text--lg {
    font-size: 2.4rem
}

.text p+p {
    margin-top: 3.5rem
}

.text--green {
    color: var(--color-green)
}

.text--gold {
    color: var(--color-gold)
}

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

.text--white {
    color: var(--color-white)
}

.text--center {
    text-align: center
}

.text-wrapper {
    width: 56rem
}

.loader::after,
.slider-nav {
    position: absolute;
    width: 100%
}

.slider-nav {
    z-index: 2;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: space-between;
    gap: .1rem;
    max-width: 55.5rem;
    background-color: var(--color-dark-01)
}

.loader .logo,
.slider-btn {
    align-items: center;
    justify-content: center
}

.slider-btn {
    display: inline-flex;
    width: 100%;
    max-width: 50%;
    height: 12rem;
    background-color: var(--color-red);
    border: 0
}

.slider-btn svg {
    width: 2.4rem;
    height: 2.4rem
}

.loader {
    position: fixed;
    z-index: 100;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: var(--color-background);
    opacity: 0;
    pointer-events: none;
    transition: all 1s ease
}

.loader::after {
    content: "";
    z-index: -1;
    opacity: .4;
    top: 0;
    left: 0;
    display: block;
    height: 100%;
    background-image: url(./assets/images/decor/rock.png);
    background-size: contain;
    background-position: bottom -10rem center;
    background-repeat: no-repeat
}

.loader .logo {
    display: flex;
    flex-direction: column;
    height: 100%
}

.loader .logo__decor {
    width: 24rem
}

.loader .logo .title span:nth-of-type(2) {
    margin-top: .75rem;
    font-size: 3rem
}

.callback {
    padding: 12rem 0 6rem;
    min-height: unset
}

.plan,
.plan__wrap {
    display: flex;
    align-items: flex-start
}

.plan {
    gap: 4rem
}

.plan__wrap {
    padding-top: 10rem;
    max-width: 74rem
}

.plan__text {
    flex-shrink: 0;
    padding-left: 5rem
}

.plan__schema {
    flex-shrink: 0;
    width: 40rem;
    margin: 0 8rem
}

.plan__image {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center
}

.plan__image::before {
    z-index: 0;
    position: absolute;
    outline: 2px solid var(--color-gold);
    border-radius: 30rem;
    left: -6rem
}

.plan__image:nth-child(2)::before {
    content: "";
    top: -6rem;
    width: calc(100% + 18rem);
    height: calc(100% + 12rem);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}

.plan__image img {
    position: relative;
    z-index: 1;
    width: 45rem;
    height: 64rem;
    border-radius: 30rem
}

.plan__image--split img {
    height: 31rem
}

.monitor-09 .list-item--split img:nth-of-type(1),
.plan__image--split img:nth-of-type(1) {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}

.monitor-09 .list-item--split img:nth-of-type(2),
.plan__image--split img:nth-of-type(2) {
    margin-top: 2rem;
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

.monitor-01 {
    position: relative;
    padding: 12.5rem 0 0
}

.monitor-01::after {
    content: "";
    z-index: -1;
    opacity: .4;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-image: url(./assets/images/decor/rock.png);
    background-size: contain;
    background-position: top 23rem center;
    background-repeat: no-repeat
}

.monitor-01__decor {
    width: 35rem;
    margin: 0 auto .5rem
}

.monitor-01__title span:nth-child(1) {
    font-size: 5.8rem
}

.monitor-01__title span:nth-child(2) {
    margin-top: 1.8rem;
    font-size: 4rem
}

.monitor-01__image {
    position: relative;
    width: 92rem;
    height: 107rem;
    margin: 12rem auto 0;
    border-radius: 90rem;
    overflow: hidden;
    border: 2px solid var(--color-green);
    outline: 2px solid var(--color-gold);
    border-bottom: 0
}

.monitor-02 {
    position: relative
}

.monitor-02__title {
    margin-top: 6rem;
    letter-spacing: .6rem;
    font-size: 6.5rem
}

.monitor-02__title span:nth-child(1) {
    transform: translate(-6.5rem, 0)
}

.monitor-02__title span:nth-child(2) {
    transform: translate(19.5rem, 1.5rem)
}

.monitor-02__decor {
    width: 100%;
    height: 38rem;
    margin-top: 4.5rem
}

.monitor-02__decor img {
    -o-object-position: top center;
    object-position: top center
}

.monitor-03 {
    position: relative;
    padding: 0 0 12rem
}

.monitor-03 .leftside {
    padding-top: 12rem
}

.monitor-03 .title--decor {
    margin-left: 15rem
}

.monitor-03 .title--decor::before {
    content: "01"
}

.monitor-03 .text-wrapper {
    padding-top: 10rem;
    padding-left: 6rem
}

.monitor-03 .text-wrapper .title {
    margin-bottom: 4rem
}

.monitor-03__image {
    flex-shrink: 0;
    width: 130rem;
    height: 92rem;
    margin-left: 20rem;
    border-bottom-right-radius: 92rem;
    border-bottom-left-radius: 92rem;
    overflow: hidden;
    outline: 2px solid var(--color-gold);
    outline-offset: 6rem
}

.monitor-04 {
    position: relative
}

.monitor-04 .text-wrapper {
    width: 52rem;
    padding: 10rem 6rem 0 0
}

.monitor-04 .list {
    display: flex;
    flex-direction: column;
    gap: 5rem
}

.monitor-04 .list-item {
    display: flex;
    align-items: flex-end;
    justify-content: space-between
}

.monitor-04 .list-item__right {
    display: flex;
    justify-content: flex-end
}

.monitor-04 .list-item__right img {
    width: 6rem;
    margin-right: 2rem
}

.monitor-04 .list-item .text {
    line-height: 1.2
}

.monitor-04 .logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 12rem
}

.monitor-04 .logo__decor {
    width: 15rem
}

.monitor-04 .logo .title {
    font-size: 2.8rem
}

.monitor-04 .logo .title span:nth-of-type(2),
.monitor-12 .logo .title span:nth-of-type(2) {
    margin-top: .75rem;
    font-size: 2rem
}

.monitor-05,
.monitor-06 {
    position: relative;
    padding: 0 0 12rem
}

.monitor-05::after {
    content: "";
    position: absolute;
    z-index: -2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background-image: url(./assets/images/bckgrnd/monitor-05.jpg?v=1);
    background-repeat: no-repeat;
    background-position: top center
}

.monitor-05 .leftside {
    padding-top: 12rem
}

.monitor-05 .title--decor {
    margin-left: 15rem
}

.monitor-05 .title--decor::before {
    content: "02"
}

.monitor-05 .text-wrapper {
    margin-top: 10rem;
    padding-left: 6rem
}

.monitor-05 .text-wrapper .title,
.monitor-06 .text-wrapper .title {
    margin-bottom: 4rem
}

.monitor-06 {
    padding: 12rem 0 0
}

.monitor-06 .title--decor {
    margin-left: 15rem
}

.monitor-06 .title--decor::before {
    content: "03"
}

.monitor-06 .text-wrapper {
    margin-top: 10rem;
    padding-left: 6rem
}

.monitor-06__image {
    flex-shrink: 0;
    width: 130rem;
    height: 92rem;
    margin-left: 20rem;
    border-top-right-radius: 92rem;
    border-top-left-radius: 92rem;
    overflow: hidden;
    outline: 2px solid var(--color-gold);
    outline-offset: 6rem
}

.monitor-07 {
    position: relative
}

.monitor-07 .text-wrapper {
    padding: 12rem 0 12rem 6rem;
    max-width: 68rem
}

.monitor-07 .text-wrapper .subtitle {
    margin-bottom: 1rem
}

.monitor-07 .text-wrapper .text {
    margin-bottom: 3rem
}

.monitor-07__image {
    flex-shrink: 0;
    width: 130rem;
    height: 92rem;
    margin-left: 20rem;
    border-bottom-right-radius: 92rem;
    border-bottom-left-radius: 92rem;
    overflow: hidden;
    outline: 2px solid var(--color-gold);
    outline-offset: 6rem
}

.monitor-08 {
    position: relative;
    padding-bottom: 10rem
}

.monitor-08__image {
    width: 130rem;
    height: 65rem;
    margin: 0 auto;
    border-bottom-left-radius: 65rem;
    border-bottom-right-radius: 65rem;
    overflow: hidden;
    outline: 2px solid var(--color-gold);
    outline-offset: 6rem
}

.monitor-08 .title {
    margin-top: 9rem;
    line-height: 1.1
}

.monitor-08 .text {
    max-width: 95rem;
    margin: 5.2rem auto 0
}

.monitor-09 {
    padding: 10rem 0
}

.monitor-09 .list {
    display: flex;
    gap: 3rem
}

.monitor-09 .list-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    flex: 1 0 auto;
    max-width: calc(33.3333333333% - 2rem)
}

.monitor-09 .list-item .subtitle i {
    display: inline-block;
    font-size: 1.3em;
    font-style: normal;
    transform: translateY(-0.01em);
}

.monitor-09 .list-item img {
    margin-top: 4rem;
    width: 52rem;
    height: 60rem;
    border-radius: 30rem
}

.monitor-09 .list-item--split img {
    height: 29rem
}

.monitor-09 .list-item .text {
    margin-top: 4rem;
    max-width: 50rem
}

.monitor-09,
.monitor-10,
.monitor-11 {
    position: relative
}

.monitor-10 .leftside,
.monitor-10 .rightside {
    flex-shrink: 0;
    flex: 1 0 auto;
    max-width: 50%;
    height: 100rem
}

.monitor-10 .leftside {
    display: flex;
    align-items: center;
    justify-content: center
}

.monitor-10 .leftside img {
    margin-top: 4rem;
    width: 52rem;
    height: 60rem;
    border-radius: 30rem
}

.monitor-10 .rightside {
    background-image: url(./assets/images/bckgrnd/monitor-10.jpg?v=1);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center
}

.monitor-11 {
    padding-top: 10rem
}

.monitor-11 .text {
    max-width: 95rem;
    margin: 0 auto
}

.monitor-11__image,
.monitor-12::before {
    width: 130rem;
    overflow: hidden;
    outline: 2px solid var(--color-gold);
    outline-offset: 6rem
}

.monitor-11__image {
    height: 65rem;
    margin: 9rem auto 0;
    border-top-left-radius: 65rem;
    border-top-right-radius: 65rem
}

.monitor-12 {
    position: relative;
    padding: 8rem 0
}

.monitor-12::before {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    height: 100rem;
    border-bottom-right-radius: 92rem;
    border-bottom-left-radius: 92rem
}

.monitor-12 .container {
    display: flex;
    flex-direction: column;
    align-items: center
}

.monitor-12 .card-image {
    margin-top: 6rem;
    width: 60rem;
    height: 65rem;
    border-radius: 30rem
}

.monitor-12 .text {
    margin-top: 4rem
}

.monitor-12 .logo {
    display: flex;
    flex-direction: column;
    align-items: center
}

.monitor-12 .logo__decor {
    width: 15rem
}

.monitor-12 .logo .title {
    font-size: 2.8rem
}

.monitor-13 {
    position: relative;
    background-image: url(./assets/images/bckgrnd/monitor-13.jpg?v=1);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center;
    height: 100rem
}

.monitor-13 .leftside {
    padding-top: 12rem
}

.monitor-13 .title--decor {
    margin-left: 15rem
}

.monitor-13 .title--decor::before {
    content: "04"
}

.monitor-13 .text-wrapper {
    margin-top: 10rem;
    padding-left: 6rem
}

.monitor-13 .text-wrapper .title {
    margin-bottom: 4rem
}

.monitor-14,
.monitor-15,
.monitor-16,
.monitor-17 {
    position: relative;
    padding: 12rem 0 6rem
}

.monitor-14 .text {
    font-size: 2.4rem;
    font-family: var(--font-secondary)
}

.monitor-14 .subtitle {
    font-size: 4rem
}

.monitor-15 .text {
    font-size: 2.4rem;
    font-family: var(--font-secondary)
}

.monitor-15 .subtitle {
    font-size: 4rem
}

.monitor-15 .plan__image:nth-child(2)::before {
    border-radius: 30rem;
    top: -12rem;
    height: calc(100% + 15rem);
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

.monitor-15 .plan__image:nth-child(3)::before {
    content: "";
    top: -6rem;
    left: -6rem;
    width: calc(100% + 18rem);
    height: calc(100% + 12rem);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}

.monitor-16 .text {
    font-size: 2.4rem;
    font-family: var(--font-secondary)
}

.monitor-16 .subtitle {
    font-size: 4rem
}

.monitor-16 .plan__image:nth-child(3)::before {
    content: "";
    border-radius: 30rem;
    top: -12rem;
    width: calc(100% + 18rem);
    height: calc(100% + 15rem);
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

.monitor-17 .text {
    font-size: 2.4rem;
    font-family: var(--font-secondary)
}

.monitor-17 .subtitle {
    font-size: 4rem
}

.monitor-17 .plan__image:nth-child(2)::before {
    border-radius: 30rem;
    top: -12rem;
    height: calc(100% + 15rem);
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

.monitor-18 {
    height: 100rem;
    background-image: url(./assets/images/bckgrnd/monitor-18.jpg?v=1);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center
}

.monitor-19 {
    position: relative;
    padding-top: 10rem
}

.monitor-19 .text {
    max-width: 105rem;
    margin: 4.5rem auto 0
}

.monitor-19 .text p {
    display: flex;
    gap: 1.5rem
}

.monitor-19__image {
    width: 130rem;
    height: 65rem;
    margin: 9rem auto 0;
    border-top-left-radius: 65rem;
    border-top-right-radius: 65rem;
    overflow: hidden;
    outline: 2px solid var(--color-gold);
    outline-offset: 6rem
}

.monitor-20 {
    height: 100rem;
    padding-top: 18rem;
    background-image: url(./assets/images/bckgrnd/monitor-20.jpg?v=1);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: bottom center
}

.monitor-20 .logo {
    display: flex;
    flex-direction: column;
    align-items: center
}

.monitor-20 .logo__decor {
    width: 24rem
}

.monitor-20 .logo .title {
    opacity: .7;
    font-size: 4rem
}

.monitor-20 .logo .title span:nth-of-type(2) {
    margin-top: .75rem;
    font-size: 3rem
}

@media screen and (min-width:1921px) {

    body,
    html {
        font-size: 12px
    }
}

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

    body,
    html {
        font-size: .621vw
    }

    section {
        height: auto
    }

    .plan__wrap {
        flex-direction: column;
        padding: 0;
        align-items: center;
        gap: 6rem
    }

    .monitor-04 .container {
        flex-direction: column;
        margin: 0;
        width: 100%;
        max-width: unset
    }

    .monitor-04 .text-wrapper {
        width: 100%;
        max-width: 95vw;
        margin: 0 auto;
        padding: 0
    }

    .monitor-04 .list {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 3rem
    }

    .monitor-04 .list-item {
        width: calc(33.3333333333% - 2rem);
        padding-right: 3rem
    }

    .monitor-04 .list-item:not(:nth-of-type(3n)) {
        border-right: 1px solid var(--color-green)
    }

    .monitor-04__image {
        width: 100%;
        margin-top: 6rem
    }

    .monitor-09 .list-item img {
        width: 45rem;
        height: 54rem
    }

    .monitor-09 .list-item--split img {
        height: 26rem
    }
}

@media screen and (max-width:799px) {
    .container {
        display: flex;
        flex-direction: column;
        margin: 0 auto
    }

    body,
    html {
        font-size: 1.5vw
    }

    .footer {
        display: block
    }

    .footer__controls {
        display: inline-flex
    }

    .form {
        padding: 3rem 1rem
    }

    .form,
    .form__container {
        flex-direction: column;
        margin-top: 3rem
    }

    .form__field {
        width: 100%
    }

    .form__input+label {
        font-size: 2rem
    }

    .form__controls {
        flex-direction: column;
        width: 100%
    }

    .header__controls {
        display: none
    }

    .title--decor {
        font-size: 6rem
    }

    .title--decor::before {
        top: -12rem;
        left: -16rem;
        font-size: 24rem
    }

    .text-wrapper {
        width: 100%;
        margin-top: 6rem;
        padding: 0 !important
    }

    .slider-nav {
        position: relative;
        right: auto;
        bottom: auto;
        max-width: unset
    }

    .loader::after {
        content: none
    }

    .callback {
        padding: 6rem 0
    }

    .plan {
        overflow-y: auto
    }

    .plan__image::before {
        content: none !important
    }

    .plan__image img,
    .plan__image--split img {
        width: 35rem;
        border-radius: 20rem;
        transform: none
    }

    .plan__image img {
        height: 45rem;
        margin: 6rem auto 0
    }

    .plan__image--split img {
        height: 24rem
    }

    .monitor-01 {
        padding: 6rem 0 0
    }

    .monitor-01::after {
        content: none
    }

    .monitor-01__image {
        width: 35rem;
        height: 45rem;
        border-radius: 20rem
    }

    .monitor-02__title {
        font-size: 4.5rem;
        margin-top: 6rem
    }

    .monitor-02__title span:nth-child(1) {
        transform: none
    }

    .monitor-02__title span:nth-child(2) {
        text-align: right;
        transform: none
    }

    .monitor-02__decor {
        height: 15rem;
        margin-top: 6rem
    }

    .monitor-03 {
        padding: 6rem 0
    }

    .monitor-03 .leftside {
        padding-top: 0
    }

    .monitor-03__image {
        width: 35rem;
        height: 45rem;
        margin: 6rem auto 0;
        border-radius: 20rem;
        transform: none;
        outline: 0
    }

    .monitor-04 .list-item {
        width: calc(50% - 1.5rem)
    }

    .monitor-04 .list-item:nth-child(odd) {
        border-right: 1px solid var(--color-green)
    }

    .monitor-04 .list-item:nth-child(even) {
        border: 0
    }

    .monitor-04 .logo {
        margin-top: 6rem
    }

    .monitor-05,
    .monitor-06 {
        padding: 6rem 0
    }

    .monitor-05 .leftside {
        padding: 0
    }

    .monitor-05 .text-wrapper,
    .monitor-06 .text-wrapper {
        margin-top: 6rem
    }

    .monitor-06__image {
        width: 35rem;
        height: 45rem;
        margin: 6rem auto 0;
        border-radius: 20rem;
        transform: none;
        outline: 0
    }

    .monitor-07 {
        padding: 6rem 0
    }

    .monitor-07 .text-wrapper {
        margin-top: 0
    }

    .monitor-07__image {
        width: 35rem;
        height: 45rem;
        margin: 6rem auto 0;
        border-radius: 20rem;
        transform: none;
        outline: 0
    }

    .monitor-08 {
        padding: 6rem 0
    }

    .monitor-08__image,
    .monitor-09 .list-item img {
        width: 35rem;
        height: 45rem;
        border-radius: 20rem;
        transform: none
    }

    .monitor-08__image {
        margin: 6rem auto 0;
        order: 3;
        outline: 0
    }

    .monitor-08 .title {
        order: 1;
        margin-top: 0
    }

    .monitor-08 .text {
        order: 2;
        margin-top: 6rem
    }

    .monitor-09 {
        padding: 6rem 0
    }

    .monitor-09 .list,
    .monitor-19 .text p {
        flex-direction: column
    }

    .monitor-09 .list-item {
        max-width: 100%
    }

    .monitor-09 .list-item img {
        margin: 3rem auto 0
    }

    .monitor-09 .list-item--split img,
    .monitor-10 .leftside img {
        width: 35rem;
        height: 24rem;
        border-radius: 20rem;
        transform: none
    }

    .monitor-10 .leftside,
    .monitor-10 .rightside {
        max-width: unset;
        height: 45rem
    }

    .monitor-10 .leftside img {
        height: 45rem;
        margin: 3rem auto 0
    }

    .monitor-10 .rightside {
        margin-top: 6rem
    }

    .monitor-11 {
        padding-top: 6rem
    }

    .monitor-11__image,
    .monitor-12::before {
        width: 35rem;
        height: 45rem;
        margin: 6rem auto 0;
        border-radius: 20rem;
        transform: none;
        outline: 0
    }

    .monitor-12,
    .monitor-13 {
        padding: 6rem 0
    }

    .monitor-12 .card-image {
        width: 35rem;
        height: 45rem;
        margin: 6rem auto 0;
        border-radius: 20rem;
        transform: none
    }

    .monitor-13 {
        height: 50rem
    }

    .monitor-13 .leftside {
        padding: 0
    }

    .monitor-14 {
        padding: 6rem 0 0
    }

    .monitor-17 {
        padding: 6rem 0
    }

    .monitor-18 {
        height: 50rem
    }

    .monitor-18,
    .monitor-19 {
        padding: 6rem 0
    }

    .monitor-19 .text p {
        align-items: center;
        gap: .5rem
    }

    .monitor-19__image {
        width: 35rem;
        height: 45rem;
        margin: 6rem auto 0;
        border-radius: 20rem;
        transform: none;
        outline: 0
    }

    .monitor-20 {
        height: 57rem;
        padding: 6rem 0
    }
}

@media screen and (max-width:459px) {
    .header .title {
        font-size: 2rem
    }

    .monitor-01 {
        padding-top: 9rem
    }
}

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

    body,
    html {
        font-size: 2.667vw
    }

    .title {
        font-size: 3.6rem
    }

    .subtitle {
        font-size: 2.4rem
    }

    .subtitle--lg {
        font-size: 3.2rem
    }

    .text {
        font-size: 1.8rem;
        line-height: 1.2
    }

    .callback {
        padding: 3rem 0
    }

    .plan__schema {
        width: 95vw;
        margin: 0
    }

    .monitor-01__title span:nth-child(1) {
        font-size: 3.6rem
    }

    .monitor-01__title span:nth-child(2) {
        font-size: 2.4rem;
        margin-top: 1rem
    }

    .monitor-03 .title--decor {
        margin-left: 12rem
    }

    .monitor-04 .list-item {
        width: 100%;
        border: 0 !important
    }

    .monitor-05 .title--decor,
    .monitor-06 .title--decor,
    .monitor-13 .title--decor {
        margin-left: 12rem
    }

    .monitor-07,
    .monitor-08,
    .monitor-09,
    .monitor-19 {
        padding: 3rem 0
    }
}