html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    background: #7000FF;
}

body, * {
    margin: 0;
}

body {
    overflow-x: unset;
}

.flex {
    display: flex;
}

a {
    cursor: pointer;
}

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

@font-face {
    font-family: TTSupermolotNeueLight;
    font-display: swap;
    src: url("../fonts/TTSupermolotNeue-Light.woff2") format("woff2"), url("../fonts/TTSupermolotNeue-Light.woff") format("woff");
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: TTSupermolotNeueDemiBold;
    font-display: swap;
    src: url("../fonts/TTSupermolotNeue-DemiBold.woff2") format("woff2"), url("../fonts/TTSupermolotNeue-DemiBold.woff") format("woff");
    font-weight: 400;
    font-style: normal;
}

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

*, *::before, *::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: "TTSupermolotNeueRegular", Arial, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    color: #343434;
    background: #F3F2EA;
    overflow-x: hidden;
}

@media (max-width: 576px) {
    body {
        font-size: 16px;
    }
}

.container {
    margin: 0 auto;
    width: 100%;
    max-width: 1400px;
    padding: 0 20px;
    position: relative;
}

.container-small {
    margin: 0 auto;
    width: 100%;
    max-width: 1280px;
    position: relative;
}

.header {
    position: relative;
    width: 100%;
    min-height: 720px;
}

.header:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    min-height: inherit;
    background: #7000FF;
}

.header .container {
    min-height: inherit;
}

.header .header-code {
    position: absolute;
    left: 60px;
    bottom: calc(40px + 39px);

    display: flex;
    width: 334px;
    flex-direction: column;
    justify-content: center;
    flex-shrink: 0;
}

.header .header-code > span {
    color: #F3F2EA;
    font-size: 8px;
    font-style: normal;
    font-weight: 600;
    line-height: 10px;
    text-transform: uppercase;
}

.header .header-rectangle {
    position: absolute;
    top: 40px;
    width: calc(100% - 40px);
    min-height: calc(100% - 78px);
    border: 1px solid #F3F2EA;
}

.header .header-rectangle div {
    height: 48px;
    width: 48px;
    background: url("../img/header-rectangle.svg") #7000FF no-repeat center;
    position: absolute;
}

.header .header-rectangle .header-rectangle__1 {
    left: -16px;
    top: -16px;
    transform: rotate(0);
}

.header .header-rectangle .header-rectangle__2 {
    right: -16px;
    top: -16px;
    transform: rotate(90deg);
}

.header .header-rectangle .header-rectangle__3 {
    left: -16px;
    bottom: -16px;
    transform: rotate(270deg);
}

.header .header-rectangle .header-rectangle__4 {
    right: -16px;
    bottom: -16px;
    transform: rotate(180deg);
}

.header .container-small {
    padding-top: 40px;
    min-height: inherit;
}

.header .main-menu {
    display: flex;
    width: 100%;
    max-width: 1197px;
    padding: 20px 80px;
    justify-content: space-between;
    align-items: center;
    margin: 10px auto 0 auto;
}

.header .main-menu span {
    color: #F3F2EA;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    position: relative;
    display: flex;
    justify-content: center;
}

.header .main-menu span a {
    color: inherit;
    text-decoration: none;
}

.header .main-menu > span:first-child {
    justify-content: flex-start;
}

.header .main-menu > span:last-child {
    justify-content: flex-end;
}

.header .logo-desktop {
    width: 100%;
    max-width: 1086px;
    padding: 0 40px;
    margin: 0 auto;
}

.header .logo-desktop img {
    width: 100%;
}

.header .logo-mobile {
    display: none;
}

.header .menu-desktop {
    margin: 88px auto 55px auto;
    display: flex;
    justify-content: center;
}

.header .menu-desktop > div {
    display: flex;
    padding: 16px;
    justify-content: center;
    align-items: center;
    border: 1px solid #F3F2EA;
    border-left-width: 0;

    color: #F3F2EA;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

.header .menu-desktop > div:first-child {
    border-left-width: 1px;
}

.header .application {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: 101px;
}

.header .application .action {
    font-family: "TTSupermolotNeueRegular", Arial, sans-serif;
    border: 1px solid #DEE216;
    background: #DEE216;
    text-decoration: none;
    color: #6A04ED;
    width: max-content;
    max-width: 100%;
    display: flex;
    padding: 24px 40px;
    justify-content: center;
    align-items: center;
    font-size: 32px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.header .menu-mobile {
    display: none;
    flex-direction: column;
    width: 100%;
    margin-top: -100px;
    padding-left: 470px;
}

.header .menu-mobile > div {
    text-align: left;
    padding: 0;
    border: none;
    color: #F3F2EA;
    font-size: 56px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    width: 404px;
}

.about {
    position: relative;
    background: #F3F2EA;
    text-align: left;
    padding: 64px 0 80px 0;
}

.about .container:after {
    content: '';
    position: absolute;
    width: 20px;
    top: 16px;
    left: 10px;
    background-image: url(../img/line3.png);
    height: 936px;
    background-repeat: no-repeat;
}

.about h2 {
    color: #7000FF;
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 48px;
    margin: 0;
    max-width: 792px;
}

.about .about-data {
    display: flex;
    flex-direction: column;
    gap: 40px;
    align-items: flex-start;
    margin-top: 48px;
    max-width: 629px;
}

.about .about-data .about-text h3 {
    margin: 0;
    color: #7000FF;
    font-size: 28px;
    font-style: normal;
    font-weight: 600;
    line-height: 32px;
}

.about .about-data .about-text p {
    margin: 10px 0 0 0;
    color: #474747;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 32px;
    min-height: 96px;
}

.about .container-small:after {
    content: '';
    position: absolute;
    width: 557px;
    height: 807px;
    top: 52px;
    right: -31px;
    background-image: url(../img/about.png);
    background-repeat: no-repeat;
}

.youcan {
    position: relative;
}

.youcan .container {
    max-width: 1500px;
    padding: 80px 20px 62px 20px;
}

.youcan .container:after {
    content: '';
    position: absolute;
    width: 20px;
    top: 97px;
    left: 55px;
    background: url(../img/line4-1.png) no-repeat top, url(../img/line4-2.png) no-repeat bottom;
    height: 100%;
    max-height: 459px;
    z-index: 2;
}

.youcan .youcan-rectangle {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% - 60px);
    min-height: 100%;
    background: #7000FF;
}

.youcan .youcan-rectangle div {
    position: absolute;
    background: url("../img/triangle.svg") no-repeat center;
    width: 16px;
    height: 16px;
}

.youcan .youcan-rectangle .youcan-rectangle__1 {
    left: -1px;
    top: 0;
}

.youcan .youcan-rectangle .youcan-rectangle__2 {
    right: -1px;
    top: 0;
    transform: rotate(90deg);
}

.youcan .youcan-rectangle .youcan-rectangle__3 {
    left: -1px;
    bottom: 0;
    transform: rotate(-90deg);
}

.youcan .youcan-rectangle .youcan-rectangle__4 {
    right: -1px;
    bottom: 0;
    transform: rotate(-180deg);
}

.youcan h2 {
    color: #FFF;
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 48px;
    margin-bottom: 48px;
}

.youcan .youcan-data {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

.youcan .youcan-data .youcan-text {
    flex: 1;
}

.youcan .youcan-data .youcan-text img {
    margin-bottom: 40px;
    width: 100%;
    height: 164px;
}

.youcan .youcan-data .youcan-text h3 {
    color: #F3F2EA;
    font-size: 28px;
    font-style: normal;
    font-weight: 600;
    line-height: 32px;
    margin-bottom: 16px;
}

.youcan .youcan-data .youcan-text p {
    color: #F3F2EA;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 32px;
    margin-bottom: 0;
    padding-right: 20px;
}

.youcan .action {
    display: inline-flex;
    padding: 24px 40px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    background: #FFE601;
    box-shadow: 6px 6px 0px 0px #7000FF;
    color: #6A04ED;
    font-size: 32px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    width: 100%;
    max-width: max-content;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    z-index: 10;
}

.headliner {
    position: relative;
    text-align: left;
    padding-top: 130px;
    background: url("../img/directory.svg") left calc(50% + 221px) top 183px no-repeat,
    url("../img/directory.svg") left calc(50% + 870px) top 287px no-repeat,
    url("../img/directory-big.svg") left calc(50% - 72px) top 92px no-repeat,
    url("../img/directory.svg") left calc(50% - 679px) top 106px no-repeat,
    url("../img/directory.svg") left calc(50% - 800px) top 0 no-repeat;
    padding-bottom: 80px;
}

.headliner h2 {
    color: #EF1E37;
    margin: 0;
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 48px;
}

.headliner .headliner-data {
    column-gap: 11px;
    margin-top: 55px;
    position: relative;
    width: 100%;
    height: 100px;
}

.headliner .headliner-data .headliner-action {
    display: flex;
    padding: 24px 40px;
    justify-content: center;
    align-items: center;
    border: 1px solid #DEE216;
    background: #DEE216;
    color: #7000FF;
    text-decoration: none;
    max-width: 100%;
    width: 490px;
    position: absolute;
    left: calc(50%);
    transform: translateX(-50%);
    top: calc(100% + 20px);
    font-size: 32px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.headliner .headliner-text {
    color: #F3F2EA;
    background: #EF1E37;
    position: absolute;
    width: 224px;
    min-height: 200px;
    min-width: 224px;
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
}


.headliner .headliner-text .headliner-text__desc {
    padding: 15px 20px;
    height: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}

.headliner .headliner-text .headliner-text__desc h4 {
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin: 0;
}

.headliner .headliner-text .headliner-text__desc p {
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin: 10px 0;
}

.headliner .headliner-text .headliner-text__desc a {
    color: #FDAEB7;
    font-size: 17px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-decoration: none;
    text-align: center;
}

.headliner .headliner-text .headliner-text__img {
    width: 100%;
    height: auto;
    min-height: 225px;
    background-size: cover;
    position: relative;
    background-repeat: no-repeat;
}

.headliner .headliner-text .headliner-text__img:before {
    content: '';
    position: absolute;
    top: -1px;
    right: -1px;
    border-bottom: 25px solid transparent;
    border-right: 25px solid #F3F2EA;
    z-index: 2;
}

.headliner .headliner-text .headliner-text__img:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0.3;
    background: #EF1E37 no-repeat 50% 50%;
    mix-blend-mode: color;
}

.partners {
    margin-top: 86px;
}

.partners h2 {
    color: #7000FF;
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 48px;
}

.partners .partners-data {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 40px auto 0 auto;
}

.partners .partners-data a {
    width: calc(100% / 5 - 10px);
    gap: 20px;
    height: auto;
    padding-bottom: calc(100% / 6);
    /* background-image: url("../img/partners-rectangle.svg"); */
    background-repeat: no-repeat;
    background-size: cover;
    margin-right: -2.7px;
    margin-top: -3px;

    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.partners .partners-data img {
    width: 100%;
    height: auto;
    position: absolute;
    top: calc(50% - 60px);
    left: 0;
}

.map {
    position: relative;
    padding: 0;
    height: 596px;
    background-image: url("../img/map.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.map .map_iframe {
    width: 100%;
    border: none;
    display: none;
}

.map .map_content {
    position: absolute;
    top: 133px;
    left: calc((100% - 1802px) / 2 + 200px);
    background: #F3F2EA;
    box-shadow: 10px 10px 0px 0px #7000FF;
    padding: 40px 50px;
    max-width: 386px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.map .map_content .map_address {
    font-size: 22px;
    font-weight: 500;
    line-height: 36px;
    color: #7000FF;
    margin: 0 0 -12px 0;
}

.map .map_content span {
    font-size: 18px;
    font-weight: 600;
    line-height: 26px;
    color: #000000;
}

.map .map_content .social-list {
    display: flex;
    column-gap: 10px;
    margin-top: 24px;
    padding: 0;
}

.map .map_content h3 {
    font-size: 24px;
    font-weight: 500;
    line-height: 36px;
    margin: 32px 0 -7px 0;
}

.footer {
    background: #7000FF;
}

.footer .container-small {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 45px;
    min-height: 233px;
    padding: 66px 0;
}

.footer .footer-data {
    display: flex;
    flex-direction: column;
}

.footer .footer-data p {
    font-size: 24px;
    font-weight: 400;
    line-height: 26px;
    color: #F3F2EA;
    margin-bottom: 10px;
}

.footer .footer-data a {
    color: #FFF;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    text-decoration-line: underline;
}

.footer .footer-data a:last-child {
    text-decoration-line: none;
}

.footer .footer-logo {
    display: flex;
    flex-direction: column;
}

.footer .footer-logo p {
    font-size: 24px;
    font-weight: 400;
    line-height: 26px;
    color: #F3F2EA;
    text-align: right;
    margin-top: 15px;
}

.price {
    margin-top: 20px;
    padding-top: 20px;
}

.price .line {
    display: table;
    position: absolute;
    right: -10%;
    top: 0;
}

.price h2 {
    color: #474747;
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 48px;
}

.price .price-data {
    margin-top: 40px;
    display: flex;
    position: relative;
}

.price .price-data .price-data-block {
    width: 530px;
    position: relative;
}

.price .price-data .price-list {
    width: 100%;
    background: #E5E0ED;
    transition: .5s;
}

.price .price-data .price-list ul {
    padding: 0;
    transition: .1s;
}

.price .price-data .price-list li.grey {
    background: #DAD4E5;
}

.price .price-data .price-list li {
    font-size: 31px;
    font-weight: 500;
    line-height: 36px;
    color: #7000FF;
    padding: 26px 42px;
    list-style: none;
    transition: .1s;
}

.price .price-data .price-data-block h4 {
    font-size: 41px;
    font-weight: 600;
    line-height: 48px;
    color: #F3F2EA;
    margin: 0;
}

.price .price-data .price-data-block p {
    font-size: 26px;
    font-weight: 500;
    line-height: 30px;
    color: #F3F2EA;
    margin: 0;
}

.price .price-data .price-data-block span {
    font-size: 26px;
    font-weight: 500;
    line-height: 30px;
    color: #F3F2EA;
}

.price .price-data .price-data-block > div {
    position: absolute;
    width: 100%;
    padding: 13px 17px;
    right: 0;
    cursor: pointer;
}

.price .price-data .price-data-block .gold {
    width: 100%;
    background: #FF5C00;
}

.price .price-data .price-list.hover-gold .gold,
.price .price-data .price-list.hover-gold .silver-bronze,
.price .price-data .price-list.hover-gold .bronze {
    background: #FF772B;
}

.price .price-data .price-list.hover-gold .gold li,
.price .price-data .price-list.hover-gold .silver-bronze li,
.price .price-data .price-list.hover-gold .bronze li {
    background: #FF772B;
    color: #F3F2EA;
}

.price .price-data .price-list.hover-gold .gold li.grey,
.price .price-data .price-list.hover-gold .silver-bronze li.grey,
.price .price-data .price-list.hover-gold .bronze li.grey {
    background: #FF5C00;
}


.price .price-data .price-list.hover-silver-bronze .silver-bronze,
.price .price-data .price-list.hover-silver-bronze .bronze {
    background: #AF1FF3;
}

.price .price-data .price-list.hover-silver-bronze .silver-bronze li,
.price .price-data .price-list.hover-silver-bronze .bronze li {
    background: #AF1FF3;
    color: #F3F2EA;
}

.price .price-data .price-list.hover-silver-bronze .silver-bronze li.grey,
.price .price-data .price-list.hover-silver-bronze .bronze li.grey {
    background: #BC3FF6;
}


.price .price-data .price-list.hover-bronze .bronze {
    background: #C795DE;
}

.price .price-data .price-list.hover-bronze .bronze li {
    background: #C795DE;
    color: #F3F2EA;
}

.price .price-data .price-list.hover-bronze .bronze li.grey {
    background: #C183DE;
}

.price .price-data .price-data-block .silver-bronze {
    width: calc(100% - 37px);
    background: #AF1FF3;
}

.price .price-data .price-data-block .bronze {
    width: calc(100% - 37px);
    background: #C183DE;
}

.location {
    margin-top: 54px;
    position: relative;
    min-height: 480px;
}

.location .background {
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    height: 100%;
    background: url(../img/mayak.png) no-repeat center, radial-gradient(73.49% 46.33% at 27.06% 80%, #000 0%, rgba(0, 0, 0, 0.00) 100%);
    background-size: cover;
}

.location .container-small {
    padding-top: 62px;
    padding-bottom: 62px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 74px;
}

.location .description {
    width: 100%;
    max-width: 468px;
    height: max-content;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    background: #7000FF;
    padding: 40px 50px;
    box-shadow: 10px 10px 0px 0px #FFE601;
    z-index: 1;
}

.location .description h2 {
    color: #F3F2EA;
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 48px;
    margin: 10px 0;
}

.location .description p {
    color: #F3F2EA;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    margin: 0;
}

.location .locs {
    flex: 1;
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    height: max-content;
    z-index: 1;
}

.location .locs .locs-item {
    display: flex;
    justify-content: flex-start;
    padding: 16px;
    gap: 20px;
    align-items: center;
    width: max-content;
    max-width: 100%;
    text-decoration: none;
    background: rgba(255, 230, 1, 0.80);
    backdrop-filter: blur(10px);
}

.location .locs .locs-item.yellow {
    background: rgba(255, 230, 1, 0.80);
    backdrop-filter: blur(10px);
}

.location .locs .locs-item.green {
    background: rgba(179, 242, 0, 0.50);
    backdrop-filter: blur(10px);
}

.location .locs .locs-item.red {
    background: rgba(255, 92, 0, 0.70);
    backdrop-filter: blur(10px);
}

.location .locs .locs-item.blue {
    background: rgba(80, 192, 255, 0.70);
    backdrop-filter: blur(10px);
}

.location .locs .locs-item img {
    height: 24px;
    width: 24px;
}

.location .locs .locs-item p {
    color: #474747;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 32px;
    margin: 0;
}

.management {
    margin-top: 110px;
}

.management h2 {
    color: #7000FF;
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 48px;
    margin-bottom: 40px;
}

.management .blocks {
    position: relative;
    min-height: 682px;
}

.management .action {
    border: 1px solid #DEE216;
    background: #DEE216;
    padding: 20px 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #6A04ED;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    width: max-content;
    max-width: 100%;
    margin: 0 auto;
}

.management .blocks .management-block {
    position: absolute;
}

.management .blocks .management-block h3 {
    color: #474747;
    font-size: 28px;
    font-style: normal;
    font-weight: 600;
    line-height: 32px;
    margin: 0;
}

.management .blocks .management-block p {
    color: #474747;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 32px;
    margin: 10px 0 0 0;
}

.management .blocks .management-block .desc {
    position: relative;
}

.management .blocks .management-block .desc:before {
    content: '';
    position: absolute;
    height: 21px;
    width: 190px;
    top: -20px;
    left: 0;
    background-color: inherit;
}

.management .blocks .management-block .desc:after {
    content: '';
    position: absolute;
    height: 21px;
    width: 21px;
    top: -20px;
    left: 189px;
    border-color: inherit;
    border-top: 21px solid transparent;
    border-left-width: 21px;
    border-left-style: solid;
}


.management .blocks .management-block .desc {
    padding: 25px 30px;
    background-color: #2EDAF1;
    border-color: #2EDAF1;
    height: 100%;
}

.management .blocks .management-block.blue .desc {
    background-color: #2EDAF1;
    border-color: #2EDAF1;
}

.management .blocks .management-block.red .desc {
    background-color: #EF1E37;
    border-color: #EF1E37;
}

.management .blocks .management-block.red .desc h3,
.management .blocks .management-block.red .desc p {
    color: #F3F2EA;
}

.management .blocks .management-block.green .desc {
    background-color: #B3F200;
    border-color: #B3F200;
}

.management .blocks .management-block.orange .desc {
    background-color: #FFA800;
    border-color: #FFA800;
}

.management .blocks .management-block.purple .desc {
    background-color: #7000FF;
    border-color: #7000FF;
    color: #F3F2EA !important;
}

.management .blocks .management-block.purple .desc h3,
.management .blocks .management-block.purple .desc p {
    color: #F3F2EA;
}

.management .blocks .management-block:nth-child(1) {
    width: 628px;
    left: 48px;
    top: 23px;
}

.management .blocks .management-block:nth-child(2) {
    width: 490px;
    left: 699px;
    top: 20px;
}

.management .blocks .management-block:nth-child(3) {
    width: 434px;
    left: 0px;
    top: 285px;
}

.management .blocks .management-block:nth-child(4) {
    width: 693px;
    left: 457px;
    top: 228px;
}

.management .blocks .management-block:nth-child(5) {
    width: 758px;
    left: 304px;
    bottom: 0;
}

.form {
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99999999;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.3);
    width: 0px;
    height: 0px;
    opacity: 0;
    transition: opacity 0.15s ease-out, width 0s linear 0.15s, height 0s linear 0.15s;
}

.form.visible {
    height: 100vh;
    width: 100vw;
    opacity: 1;
    transition: opacity 0.15s ease-out;
}

.form .block {
    position: relative;
    margin: 140px 0 40px 0;
    border-color: #F3F2EA;
    background-color: #F3F2EA;
}

.form .block .el {
    width: 834px;
    max-width: calc(100vw - 20px);
    border: 2px solid #7000FF;
    background-color: #F3F2EA;
    position: relative;
    padding: 0 40px 26px 40px;
}


.form .block:after {
    content: '';
    position: absolute;
    height: 49px;
    width: 60%;
    top: -46px;
    left: calc(60% - 3px);
    border-color: inherit;
    border-top: 52px solid transparent;
    border-left-width: 52px;
    border-left-style: solid;
}

.form .block .el:after {
    content: '';
    position: absolute;
    height: 54px;
    width: 60%;
    top: -50px;
    left: -2px;
    background-color: inherit;
    border: 2px solid #7000FF;
    border-right-width: 0;
    border-bottom-width: 0;
}

.form .block .el:before {
    content: '';
    position: absolute;
    height: 50px;
    width: 50px;
    top: -50px;
    left: calc(60% - 2px);
    border-color: inherit;
    border-top: 50px solid transparent;
    border-left-width: 50px;
    border-left-style: solid;
}

.form .block .el h2 {
    color: #7000FF;
    font-size: 48px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
}

.form .block .el form {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.form .block .el form .inputs {
    display: flex;
    justify-content: space-between;
    column-gap: 13px;
    row-gap: 10px;
    flex-wrap: wrap;
    padding-top: 20px;
    width: 100%;
}

.form .block .el form input {
    background: #E5E0ED;
    padding: 15px 25px;
    border: 1px solid transparent;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    width: calc(50% - 13px);
}

.form .block .el form input:focus, .form .block .el form input:focus-visible {
    border: 1px solid #7000FF;
}

.form .block .el form input::placeholder {
    color: #7000FF;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.form .block .el form button {
    border: 1px solid #DEE216;
    background: #DEE216;
    color: #6A04ED;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding: 20px 25px;
    margin-top: 20px;
    width: max-content;
    max-width: 100%;
    cursor: pointer;
}

.form .hidden {
    display: none !important;
}

.form .close {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    padding-top: 59px;
}

.form .close p {
    color: #081316;
    text-align: center;
    font-size: 40px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.form .close button {
    color: #6A04ED;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    border: 1px solid #DEE216;
    background: #DEE216;
    padding: 20px 25px;
    max-width: 100%;
    width: max-content;
    margin-top: 59px;
}

@media screen and (max-width: 1500px) {
    .youcan .container:after {
        display: none;
    }
}

@media screen and (max-width: 1400px) {
    .header .header-code > span {
        display: none;
    }

    .about .container:after {
        display: none;
    }

    .about .container-small:after {
        right: 0;
    }

    .youcan {
        padding-top: 20px;
    }

    .youcan .container {
        max-width: 1400px;
        padding: 40px 20px;
    }

    .youcan .youcan-rectangle {
        width: 100%;
        top: 0;
        left: 0;
        transform: unset;
    }


    .youcan .youcan-rectangle .youcan-rectangle__1 {
        left: 0;
    }

    .youcan .youcan-rectangle .youcan-rectangle__2 {
        right: 0;
    }

    .youcan .youcan-rectangle .youcan-rectangle__3 {
        left: 0;
    }

    .youcan .youcan-rectangle .youcan-rectangle__4 {
        right: 0;
    }


    .management .blocks {
        min-height: unset;
        display: flex;
        flex-wrap: wrap;
        column-gap: 20px;
        row-gap: 41px;
    }

    .management .blocks .management-block {
        position: relative;
        top: unset !important;
        left: unset !important;
        right: unset !important;
        bottom: unset !important;
        width: calc(50% - 10px) !important;
    }

    .map .map_content {
        left: 20px;
    }
}

@media screen and (max-width: 1200px) {
    .about {
        padding-bottom: 20px;
        padding-top: 40px;
    }

    .about .container-small:after {
        display: none;
    }

    .about .about-data {
        flex-direction: row;
        flex-wrap: wrap;
        max-width: unset;
        width: 100%;
    }

    .about .about-data .about-text {
        width: calc(50% - 20px);
    }

    .youcan .youcan-data {
        flex-wrap: wrap;
    }

    .youcan .youcan-data .youcan-text {
        width: calc(50% - 10px);
        flex: unset;
        display: flex;
        flex-direction: column;
        justify-content: start;
        align-items: center;
        row-gap: 8px;
    }

    .youcan .youcan-data .youcan-text > div {
        width: 100%;
    }

    .youcan .youcan-data .youcan-text img {
        width: auto;
        max-width: 100%;
        margin: 0 auto;
    }

    .youcan .youcan-data .youcan-text p {
        padding-right: 0;
    }

    .youcan .container {
        padding: 40px 20px 80px 20px;
    }

    .headliner {
        background: url("../img/directory.svg") right -80px top 180px no-repeat,
        url("../img/directory.svg") left -20px top 80px no-repeat;
    }

    .management .blocks .management-block {
        width: 100% !important;
    }

    .price {
        margin-top: 48px;
    }

    .price .price-data .price-data-block {
        width: 460px;
    }

    .price .price-data .price-data-block h4 {
        font-size: 27px;
    }

    .price .price-data .price-data-block p {
        font-size: 17px;
    }

    .price .price-data .price-data-block span {
        font-size: 17px;
    }

    .price .price-data .price-list li {
        font-size: 20px;
        padding: 17px 26px;
    }

    .price .price-data .price-data-block {
        width: 360px;
    }

    .price .price-data .price-data-block > div {
        width: 100% !important;
    }

    .price h2 {
        font-size: 48px;
    }

    .partners .partners-data a {
        width: calc(100% / 4 - 10px);
    }

    .location {
        margin-top: 0;
    }

    .location .locs .locs-item {
        padding: 10px;
        gap: 10px;
    }

    .location .locs .locs-item p {
        font-size: 20px;
    }

    .location .locs .locs-item img {
        width: 16px;
        height: 16px;
    }

    .location .container-small {
        gap: 30px;
    }

    .location .description {
        padding: 40px 20px;
    }
}

@media screen and (max-width: 768px) {
    .container {
        padding: 0 24px;
    }

    .header {
        min-height: 506px;
        padding-bottom: 60px;
    }

    .header .header-rectangle {
        top: 24px;
        width: calc(100% - 48px);
        min-height: 100%;
    }

    .header .application {
        margin-top: 96px;
    }

    .header .main-menu {
        padding: 0 24px
    }

    .header .menu-desktop {
        margin: 48px auto 96px auto;
    }

    .about h2 {
        font-size: 24px;
        font-style: normal;
        font-weight: 600;
        line-height: 28px;
    }

    .about .about-data .about-text {
        width: 100%;
    }

    .about .about-data {
        gap: 32px;
    }

    .about .about-data .about-text h3 {
        font-size: 20px;
        font-style: normal;
        font-weight: 600;
        line-height: 24px;
    }

    .about .about-data .about-text p {
        font-size: 18px;
        font-style: normal;
        font-weight: 400;
        line-height: 24px;
        min-height: unset;
    }

    .youcan h2 {
        font-size: 24px;
        font-style: normal;
        font-weight: 600;
        line-height: 28px;
    }

    .youcan .youcan-data .youcan-text {
        width: 100%;
    }

    .youcan .youcan-data .youcan-text h3 {
        font-size: 20px;
        font-style: normal;
        font-weight: 600;
        line-height: 24px;
        margin-bottom: 8px;
    }

    .youcan .youcan-data .youcan-text p {
        font-size: 16px;
        font-style: normal;
        font-weight: 500;
        line-height: 24px;
    }

    .youcan .action {
        font-size: 24px;
        font-style: normal;
        font-weight: 500;
        line-height: 32px;
    }

    .youcan .youcan-data .youcan-text img {
        height: auto;
    }

    .headliner .headliner-action {
        font-size: 24px;
        font-style: normal;
        font-weight: 500;
        line-height: 32px;
        padding: 16px 40px;
        max-width: 249px;
        text-align: center;
    }

    .management h2 {
        font-size: 24px;
        font-style: normal;
        font-weight: 600;
        line-height: 28px;
    }

    .management .blocks .management-block .desc {
        padding: 24px 16px;
    }

    .management .blocks .management-block h3 {
        font-size: 20px;
        font-style: normal;
        font-weight: 600;
        line-height: 24px;
    }

    .management .blocks .management-block p {
        font-size: 18px;
        font-style: normal;
        font-weight: 500;
        line-height: 24px;
    }

    .partners {
        margin-top: 42px;
    }

    .partners h2 {
        font-size: 24px;
        font-style: normal;
        font-weight: 600;
        line-height: 28px;
    }

    .partners .partners-data img {
        height: 80px;
        top: calc(50% - 40px);
    }

    .partners .partners-data a {
        width: calc(100% / 3 - 10px);
    }

    .location .locs {
        display: none;
    }

    .location .container-small {
        padding: 0;
        flex-direction: column;
    }

    .location .background {
        position: relative;
        height: 480px;
    }

    .location .description {
        max-width: unset;
        width: 100vw;
    }

    .footer .container-small {
        flex-direction: column;
        padding: 0;
    }

}


@media screen and (max-width: 580px) {
    .header .main-menu {
        display: none;
    }

    .header .menu-desktop {
        margin-top: 0;
    }

    .header .container-small {
        padding-top: 24px;
        min-height: unset;
    }

    .header .header-rectangle {
        border: none;
    }

    .header .header-rectangle .header-rectangle__1 {
        display: none;
    }

    .header .logo-desktop {
        display: none;
    }

    .header .logo-mobile {
        display: block;
        width: 100%;
    }

    .header .logo-mobile img {
        width: 100%;
    }

    .header .menu-desktop {
        flex-direction: column;
    }

    .header .menu-desktop > div {
        width: max-content;
        font-size: 16px;
        padding: 8px;
    }

    .header .menu-desktop > div:not(:first-child) {
        border-left-width: 1px;
        border-top-width: 0;
    }

    .header .application .action {
        width: 100%;
        font-size: 24px;
        padding: 16px;
    }

    .header .header-rectangle div {
        background-color: transparent;
    }

    .header .header-rectangle {
        top: 24px;
        min-height: calc(100% + 16px);
    }

    .headliner {
        background: url("../img/directory.svg") left -1px top 74px no-repeat;
        padding-top: 106px;
    }

    .headliner h2 {
        font-size: 24px;
        font-style: normal;
        font-weight: 600;
        line-height: 28px;
    }

    .headliner .headliner-data {
        margin-top: 32px;
    }

    .price h2 {
        font-size: 24px;
        font-style: normal;
        font-weight: 600;
        line-height: 28px;
    }

    .price .price-data {
        margin-top: 16px;
    }

    .price .price-data .price-data-block {
        display: none;
    }

    .partners .partners-data a {
        margin-bottom: 48px;
        height: 42px;
    }

    .partners .partners-data a {
        width: 100%;
    }

    .partners .partners-data a img {
        width: auto;
        max-width: 100%;
        height: 100%;
    }

    .map .map_content {
        left: 20px;
        max-width: calc(100% - 40px);
        padding: 32px 24px;
    }

    .map .map_content .map_address {
        font-size: 20px;
        font-style: normal;
        font-weight: 600;
        line-height: 24px;
    }

    .map .map_content span {
        font-size: 18px;
        font-style: normal;
        font-weight: 500;
        line-height: normal;
        margin-top: 8px;
    }
}
