@charset "UTF-8";

:root {
    --swiper-theme-color: #007aff;
    --swiper-navigation-size: 44px
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.swiper-android .swiper-slide,
.swiper-wrapper {
    transform: translate3d(0, 0, 0)
}

.swiper-pointer-events {
    touch-action: pan-y
}

.swiper-pointer-events.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    backface-visibility: hidden
}

.swiper-3d,
.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

.swiper-centered>.swiper-wrapper::before {
    content: "";
    flex-shrink: 0;
    order: 9999
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-horizontal>.swiper-wrapper::before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-vertical>.swiper-wrapper::before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after)
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center
}

.swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    transform: translateZ(0)
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
    height: 1px;
    width: var(--swiper-virtual-size)
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
    width: 1px;
    height: var(--swiper-virtual-size)
}

.swiper-button-next,
.swiper-button-prev {
    position: absolute;
    top: 50%;
    width: calc(var(--swiper-navigation-size)/ 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - var(--swiper-navigation-size)/ 2);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none
}

.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
    display: none !important
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
    left: 10px;
    right: auto
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
    content: "prev"
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
    right: 10px;
    left: auto
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
    content: "next"
}

.swiper-button-lock {
    display: none
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: opacity .3s;
    transform: translate3d(0, 0, 0);
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-pagination-disabled>.swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
    display: none !important
}

.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(.33);
    position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}

.swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
    display: inline-block;
    border-radius: 50%;
    background: var(--swiper-pagination-bullet-inactive-color, #000);
    opacity: var(--swiper-pagination-bullet-inactive-opacity, .2)
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet:only-child {
    display: none !important
}

.swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: var(--swiper-pagination-color, var(--swiper-theme-color))
}

.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical>.swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0, -50%, 0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: transform .2s, top .2s
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, left .2s
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, right .2s
}

.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, .25);
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical>.swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0, 0, 0, .1)
}

.swiper-scrollbar-disabled>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
    display: none !important
}

.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%
}

.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical>.swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, .5);
    border-radius: 10px;
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center
}

.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
    animation: 1s linear infinite swiper-preloader-spin
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(360deg)
    }
}

.swiper .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-free-mode>.swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-grid>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-grid-column>.swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube {
    overflow: visible
}

.swiper-cube .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-next+.swiper-slide,
.swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-top {
    z-index: 0;
    backface-visibility: hidden
}

.swiper-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    opacity: .6;
    z-index: 0
}

.swiper-cube .swiper-cube-shadow:before {
    content: "";
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    filter: blur(50px)
}

.swiper-flip {
    overflow: visible
}

.swiper-flip .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-flip .swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-top {
    z-index: 0;
    backface-visibility: hidden
}

.swiper-creative .swiper-slide {
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height
}

.swiper-cards {
    overflow: visible
}

.swiper-cards .swiper-slide {
    transform-origin: center bottom;
    backface-visibility: hidden;
    overflow: hidden
}

@font-face {
    src: url(../fonts/Inter18pt-Regular.woff2) format("woff2"), url(../fonts/Inter18pt-Regular.woff) format("woff");
    font-family: Inter;
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    src: url(../fonts/Inter18pt-Bold.woff2) format("woff2"), url(../fonts/Inter18pt-Bold.woff) format("woff");
    font-family: Inter;
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

@font-face {
    src: url(../fonts/Manrope-Light.woff2) format("woff2"), url(../fonts/Manrope-Light.woff) format("woff");
    font-family: Manrope;
    font-weight: 300;
    font-style: normal;
    font-display: swap
}

@font-face {
    src: url(../fonts/Manrope-Regular.woff2) format("woff2"), url(../fonts/Manrope-Regular.woff) format("woff");
    font-family: Manrope;
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    src: url(../fonts/Manrope-Medium.woff2) format("woff2"), url(../fonts/Manrope-Medium.woff) format("woff");
    font-family: Manrope;
    font-weight: 500;
    font-style: normal;
    font-display: swap
}

@font-face {
    src: url(../fonts/Manrope-SemiBold.woff2) format("woff2"), url(../fonts/Manrope-SemiBold.woff) format("woff");
    font-family: Manrope;
    font-weight: 600;
    font-style: normal;
    font-display: swap
}

@font-face {
    src: url(../fonts/Manrope-Bold.woff2) format("woff2"), url(../fonts/Manrope-Bold.woff) format("woff");
    font-family: Manrope;
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
body {
    margin: 0;
    position: relative;
    overflow-x: hidden;
    width: 100%;
    height: 100%;
    color: #333;
    background: #fff
}

details,
main {
    display: block
}

h1 {
    font-size: 2em
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent;
    text-decoration: none;
    color: inherit
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: bolder
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
    outline: ButtonText dotted 1px
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=checkbox],
[type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

summary {
    display: list-item
}

[hidden],
template {
    display: none
}

.noUi-target,
.noUi-target * {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    touch-action: none;
    -moz-user-select: none;
    user-select: none;
    box-sizing: border-box
}

.noUi-target {
    position: relative;
    background: #fafafa;
    border-radius: 4px;
    border: 1px solid #d3d3d3;
    box-shadow: inset 0 1px 1px #f0f0f0, 0 3px 6px -5px #bbb
}

.noUi-base,
.noUi-connects {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1
}

.noUi-connects {
    overflow: hidden;
    z-index: 0;
    border-radius: 3px
}

.noUi-connect,
.noUi-origin {
    will-change: transform;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    height: 100%;
    width: 100%;
    -ms-transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
    -webkit-transform-style: preserve-3d;
    transform-origin: 0 0;
    transform-style: flat
}

.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
    left: 0;
    right: auto
}

.noUi-vertical .noUi-origin {
    top: -100%;
    width: 0
}

.noUi-horizontal .noUi-origin {
    height: 0
}

.noUi-touch-area {
    height: 100%;
    width: 100%
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
    transition: transform .3s
}

.noUi-state-drag * {
    cursor: inherit !important
}

.noUi-horizontal {
    height: 18px
}

.noUi-horizontal .noUi-handle {
    width: 34px;
    height: 28px;
    right: -17px;
    top: -6px
}

.noUi-vertical {
    width: 18px
}

.noUi-vertical .noUi-handle {
    width: 28px;
    height: 34px;
    right: -6px;
    bottom: -17px
}

.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {
    left: -17px;
    right: auto
}

.noUi-connect {
    background: #3fb8af
}

.noUi-draggable {
    cursor: ew-resize
}

.noUi-vertical .noUi-draggable {
    cursor: ns-resize
}

.noUi-handle {
    backface-visibility: hidden;
    position: absolute;
    border: 1px solid #d9d9d9;
    border-radius: 3px;
    background: #fff;
    cursor: default;
    box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ebebeb, 0 3px 6px -3px #bbb
}

.noUi-active {
    box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ddd, 0 3px 6px -3px #bbb
}

.noUi-handle:after,
.noUi-handle:before {
    content: "";
    display: block;
    position: absolute;
    height: 14px;
    width: 1px;
    background: #e8e7e6;
    left: 14px;
    top: 6px
}

.noUi-handle:after {
    left: 17px
}

.noUi-vertical .noUi-handle:after,
.noUi-vertical .noUi-handle:before {
    width: 14px;
    height: 1px;
    left: 6px;
    top: 14px
}

.noUi-vertical .noUi-handle:after {
    top: 17px
}

[disabled] .noUi-connect {
    background: #b8b8b8
}

[disabled] .noUi-handle,
[disabled].noUi-handle,
[disabled].noUi-target {
    cursor: not-allowed
}

.noUi-pips,
.noUi-pips * {
    box-sizing: border-box
}

.noUi-pips {
    position: absolute;
    color: #999
}

.noUi-value {
    position: absolute;
    white-space: nowrap;
    text-align: center
}

.noUi-value-sub {
    color: #ccc;
    font-size: 10px
}

.noUi-marker {
    position: absolute;
    background: #ccc
}

.noUi-marker-large,
.noUi-marker-sub {
    background: #aaa
}

.noUi-pips-horizontal {
    padding: 10px 0;
    height: 80px;
    top: 100%;
    left: 0;
    width: 100%
}

.noUi-value-horizontal {
    transform: translate(-50%, 50%)
}

.noUi-rtl .noUi-value-horizontal {
    transform: translate(50%, 50%)
}

.noUi-marker-horizontal.noUi-marker {
    margin-left: -1px;
    width: 2px;
    height: 5px
}

.noUi-marker-horizontal.noUi-marker-sub {
    height: 10px
}

.noUi-marker-horizontal.noUi-marker-large {
    height: 15px
}

.noUi-pips-vertical {
    padding: 0 10px;
    height: 100%;
    top: 0;
    left: 100%
}

.noUi-value-vertical {
    transform: translate(0, -50%);
    padding-left: 25px
}

.noUi-rtl .noUi-value-vertical {
    transform: translate(0, 50%)
}

.noUi-marker-vertical.noUi-marker {
    width: 5px;
    height: 2px;
    margin-top: -1px
}

.noUi-marker-vertical.noUi-marker-sub {
    width: 10px
}

.noUi-marker-vertical.noUi-marker-large {
    width: 15px
}

.noUi-tooltip {
    display: block;
    position: absolute;
    border: 1px solid #d9d9d9;
    border-radius: 3px;
    background: #fff;
    color: #000;
    padding: 5px;
    text-align: center;
    white-space: nowrap
}

.noUi-horizontal .noUi-tooltip {
    transform: translate(-50%, 0);
    left: 50%;
    bottom: 120%
}

.noUi-vertical .noUi-tooltip {
    transform: translate(0, -50%);
    top: 50%;
    right: 120%
}

.noUi-horizontal .noUi-origin>.noUi-tooltip {
    transform: translate(50%, 0);
    left: auto;
    bottom: 10px
}

.noUi-vertical .noUi-origin>.noUi-tooltip {
    transform: translate(0, -18px);
    top: auto;
    right: 28px
}

.nice-select {
    -webkit-tap-highlight-color: transparent;
    background-color: #fff;
    border-radius: 5px;
    border: 1px solid #e8e8e8;
    box-sizing: border-box;
    clear: both;
    cursor: pointer;
    display: block;
    float: left;
    font-family: inherit;
    font-size: 14px;
    font-weight: 400;
    height: 38px;
    line-height: 36px;
    outline: 0;
    padding-left: 18px;
    padding-right: 30px;
    position: relative;
    text-align: left !important;
    transition: .2s ease-in-out;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    white-space: nowrap;
    width: auto
}

.nice-select:hover {
    border-color: #dbdbdb
}

.nice-select.open,
.nice-select:active,
.nice-select:focus {
    border-color: #999
}

.nice-select:after {
    border-bottom: 2px solid #999;
    border-right: 2px solid #999;
    content: "";
    display: block;
    height: 5px;
    margin-top: -4px;
    pointer-events: none;
    position: absolute;
    right: 12px;
    top: 50%;
    transform-origin: 66% 66%;
    transform: rotate(45deg);
    transition: .15s ease-in-out;
    width: 5px
}

.nice-select.open:after {
    transform: rotate(-135deg)
}

.nice-select.open .nice-select-dropdown {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1) translateY(0)
}

.nice-select.disabled {
    border-color: #ededed;
    color: #999;
    pointer-events: none
}

.nice-select.disabled:after {
    border-color: #ccc
}

.nice-select.wide {
    width: 100%
}

.nice-select.wide .nice-select-dropdown {
    left: 0 !important;
    right: 0 !important
}

.nice-select.right {
    float: right
}

.nice-select.right .nice-select-dropdown {
    left: auto;
    right: 0
}

.nice-select.small {
    font-size: 12px;
    height: 36px;
    line-height: 34px
}

.nice-select.small:after {
    height: 4px;
    width: 4px
}

.nice-select.small .option {
    line-height: 34px;
    min-height: 34px
}

.nice-select .nice-select-dropdown {
    margin-top: 4px;
    background-color: #fff;
    border-radius: 5px;
    box-shadow: 0 0 0 1px rgba(68, 68, 68, .11);
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 0;
    transform-origin: 50% 0;
    transform: scale(.75) translateY(19px);
    transition: .2s cubic-bezier(.5, 0, 0, 1.25), opacity .15s ease-out;
    z-index: 9;
    opacity: 0
}

.nice-select .list {
    border-radius: 5px;
    box-sizing: border-box;
    overflow: hidden;
    padding: 0;
    max-height: 210px;
    overflow-y: auto
}

.nice-select .list:hover .option:not(:hover) {
    background-color: rgba(0, 0, 0, 0) !important
}

.nice-select .option {
    cursor: pointer;
    font-weight: 400;
    line-height: 40px;
    list-style: none;
    outline: 0;
    padding-left: 18px;
    padding-right: 29px;
    text-align: left;
    transition: .2s
}

.nice-select .option.focus,
.nice-select .option.selected.focus,
.nice-select .option:hover {
    background-color: #f6f6f6
}

.nice-select .option.selected {
    font-weight: 700
}

.nice-select .option.disabled {
    background-color: rgba(0, 0, 0, 0);
    color: #999;
    cursor: default
}

.nice-select .optgroup {
    font-weight: 700
}

.no-csspointerevents .nice-select .nice-select-dropdown {
    display: none
}

.no-csspointerevents .nice-select.open .nice-select-dropdown {
    display: block
}

.nice-select .list::-webkit-scrollbar {
    width: 0
}

.nice-select .has-multiple {
    white-space: inherit;
    height: auto;
    padding: 7px 12px;
    min-height: 36px;
    line-height: 22px
}

.nice-select .has-multiple span.current {
    border: 1px solid #ccc;
    background: #eee;
    padding: 0 10px;
    border-radius: 3px;
    display: inline-block;
    line-height: 24px;
    font-size: 14px;
    margin-bottom: 3px;
    margin-right: 3px
}

.nice-select .has-multiple .multiple-options {
    display: block;
    line-height: 24px;
    padding: 0
}

.nice-select .nice-select-search-box {
    box-sizing: border-box;
    width: 100%;
    padding: 5px;
    pointer-events: none;
    border-radius: 5px 5px 0 0
}

.nice-select .nice-select-search {
    box-sizing: border-box;
    background-color: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 3px;
    color: #444;
    display: inline-block;
    vertical-align: middle;
    padding: 7px 12px;
    margin: 0 10px 0 0;
    width: 100%;
    min-height: 36px;
    line-height: 22px;
    height: auto;
    outline: 0 !important;
    font-size: 14px
}

*,
::after,
::before {
    margin: 0;
    padding: 0;
    box-sizing: border-box
}

html {
    -webkit-text-size-adjust: 100%;
    font-family: Manrope, sans-serif;
    font-weight: 400;
    font-size: 1.25vw;
    line-height: 1.4;
    scroll-behavior: smooth;
    --custom-main: #098594 !important;
    --custom-main-dark: #0C4644 !important
}

@media (max-width:800px) {
    html {
        font-size: 3.2vw
    }
}

ol,
ul {
    list-style: none;
    padding: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    padding: 0
}

button {
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
    border: none;
    background: 0 0;
    cursor: pointer;
    outline: 0
}

.sr-only {
    position: absolute;
    clip-path: inset(50%);
    overflow: hidden;
    margin: -1px;
    border: 0;
    padding: 0;
    width: 1px;
    height: 1px;
    white-space: nowrap;
    clip: rect(0 0 0 0)
}

.chromeperfectpixel-panel img {
    height: 100%;
    max-height: 100%;
    -o-object-fit: contain !important;
    object-fit: contain !important
}

.grecaptcha-badge {
    opacity: 0 !important
}

@media (min-width:1023px) {
    body #hr-widget .custom-calendar .search__calendar {
        width: auto !important;
        border-right: .07vw solid rgba(51, 51, 51, .45) !important;
        padding: .21vw 1.6vw .07vw 0 !important
    }

    body #hr-widget .custom-calendar .search__container {
        max-width: 100% !important;
        padding: .83vw 1.53vw .9vw 1.74vw !important;
        height: 6.11vw !important;
        box-shadow: 2px 2px 7px rgba(0, 0, 0, .05);
        background: #fff !important
    }

    body #hr-widget .custom-calendar .search__input,
    body #hr-widget .custom-calendar .select__input {
        position: relative;
        border-radius: .21vw !important;
        margin: 1.88vw 0 0 !important;
        padding: .49vw 2.08vw .63vw .69vw !important;
        width: 10.69vw !important;
        background: rgba(12, 70, 68, .2) !important;
        white-space: nowrap
    }

    body #hr-widget .custom-calendar .search__input svg:first-child,
    body #hr-widget .custom-calendar .select__input svg:first-child {
        margin-right: .42vw
    }

    body #hr-widget .custom-calendar .search__input .search__input-text,
    body #hr-widget .custom-calendar .select__input .search__input-text {
        position: absolute;
        top: -.63vw;
        left: 0;
        transform: translateY(-100%)
    }

    body #hr-widget .custom-calendar .search__input::after,
    body #hr-widget .custom-calendar .select__input::after {
        content: "";
        position: absolute;
        top: 50%;
        right: .69vw;
        transform: translateY(-50%);
        width: 1.18vw;
        height: .49vw;
        background: url(../img/arrow-down.png) center center/contain no-repeat
    }

    body #hr-widget .custom-calendar .select__input {
        padding: .52vw 2.36vw .54vw .69vw !important;
        align-self: flex-end;
        margin-left: 1.6vw !important
    }

    body #app .custom-calendar .search__container .search__input .search__input-text,
    body #hr-modal .custom-calendar .search__container .search__input .search__input-text,
    body #hr-widget .custom-calendar .search__container .search__input .search__input-text {
        font-family: Manrope, sans-serif !important;
        font-size: 1.04vw !important;
        color: #333 !important
    }

    body #app .custom-calendar .search__container .search__input svg,
    body #hr-modal .custom-calendar .search__container .search__input svg,
    body #hr-widget .custom-calendar .search__container .search__input svg {
        width: 1.11vw;
        height: 1.11vw
    }

    body #app .custom-calendar .search__container .search__input .search__input-value,
    body #hr-modal .custom-calendar .search__container .search__input .search__input-value,
    body #hr-widget .custom-calendar .search__container .search__input .search__input-value {
        font-family: Manrope, sans-serif !important;
        font-weight: 600 !important;
        font-size: .83vw !important;
        color: #333 !important
    }

    body #app .search__container .select__input .select__input-value,
    body #hr-modal .search__container .select__input .select__input-value,
    body #hr-widget .search__container .select__input .select__input-value {
        font-family: Manrope, sans-serif !important;
        font-weight: 600 !important;
        font-size: .83vw !important;
        line-height: 1.4 !important;
        color: #333 !important
    }

    .search__hyphen {
        font-family: Manrope, sans-serif !important;
        font-weight: 700;
        font-size: 1.46vw !important;
        line-height: 1.8;
        margin: 0 .69vw !important;
        width: 1.25vw;
        align-self: flex-end;
        flex-shrink: 0;
        color: #333
    }

    body #hr-widget .custom-calendar .select__input .select__arrow {
        display: none
    }

    body #hr-widget .custom-calendar .select__input::before {
        content: "Кол-во гостей";
        position: absolute;
        top: -.56vw;
        left: 0;
        transform: translateY(-100%);
        font-family: Manrope, sans-serif;
        font-weight: 500;
        font-size: 1.04vw;
        line-height: .83vw;
        color: #333
    }

    body #hr-widget .search__container .select__input>svg {
        width: 1.11vw;
        height: 1.11vw
    }

    body #hr-widget .search .search__container .button-primary.big,
    body #hr-widget .search .search__container .button-secondary.big {
        margin-left: 1.6vw !important;
        border-radius: .35vw !important;
        background: #0c4644 !important;
        font-size: 1.11vw !important;
        flex: 1
    }

    body #hr-widget .search .search__container .button-primary.big:hover,
    body #hr-widget .search .search__container .button-secondary.big:hover {
        background: #098594 !important
    }

    body #hr-widget .select__dropdown {
        min-width: 240% !important
    }
}

@media (max-width:1023px) and (min-width:800px) {
    body #hr-widget .custom-calendar .search__container .search__input svg {
        margin-right: 12px;
        width: 24px;
        height: 24px;
        align-self: center
    }
}

.rent-page .contact-us {
    padding-bottom: 10.42vw
}

@media (max-width:800px) {
    body #hr-widget .custom-calendar .search__container .search__input svg {
        margin-right: 3.2vw;
        width: 6.4vw;
        height: 6.4vw;
        align-self: center
    }

    .rent-page .contact-us {
        padding-bottom: 16vw
    }
}

.earn-page .objects--released {
    padding-top: 4.2vw
}

.earn-page .objects__items {
    margin-top: 2.5vw
}

.earn-page .banner {
    padding-bottom: 6.94vw
}

.loading {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 102%;
    z-index: 100;
    background: #fff;
    visibility: hidden;
    opacity: 0;
    transition: opacity .3s, visibility .3s;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    pointer-events: none
}

.loading::after {
    content: "";
    position: absolute;
    top: 19.1vw;
    left: 50%;
    transform: translateX(-50%);
    width: 11.11vw;
    height: 11.11vw;
    background: url(../img/spinner.gif) center center/contain no-repeat
}

@media (max-width:800px) {
    .earn-page .objects--released {
        padding-top: 6.2vw
    }

    .earn-page .objects__items {
        margin-top: 7vw
    }

    .earn-page .banner {
        padding-bottom: 75px
    }

    .loading {
        top: 25vw;
        width: 31.11vw;
        height: 31.11vw
    }
}

.ajax {
    opacity: 0;
    transform: translateX(-20px) scale(.95);
    transition: opacity .75s, transform .75s
}

.ajax.show {
    opacity: 1;
    transform: translate(0) scale(1)
}

.container {
    margin: 0 auto;
    width: 100%;
    max-width: 87.29vw;
}

.container--md {
    max-width: 87.85vw
}

.components__arrow {
    position: absolute;
    top: 50%;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: .42vw;
    width: 2.08vw;
    height: 2.08vw;
    background: #098594
}

.components__arrow img {
    width: .76vw;
    height: auto
}

.components__arrow::after,
.components__arrow::before {
    display: none
}

.components__arrow.next img {
    transform: rotate(180deg)
}

.components__tag,
.components__tags {
    display: flex;
    align-items: center
}

.components__tag img {
    margin-right: .83vw;
    max-width: 1.32vw;
    max-height: 1.25vw;
    flex-shrink: 0
}

.components__pagination {
    bottom: 0 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    --swiper-pagination-bullet-horizontal-gap: 0.28vw;
    --swiper-pagination-bullet-size: 0.83vw;
    --swiper-pagination-bullet-inactive-color: #C4D0CF;
    --swiper-pagination-bullet-inactive-opacity: 0.55;
    --swiper-theme-color: #098594
}

.components__pagination .swiper-pagination-bullet {
    border-radius: 50%;
    transition: .3s
}

.components__pagination .swiper-pagination-bullet-active {
    border-radius: .28vw;
    width: 2.92vw
}

.components__more {
    display: block;
    font-size: 1.6vw;
    letter-spacing: .03vw;
    text-decoration: underline;
    text-decoration-thickness: .07vw;
    text-underline-offset: .21vw;
    color: #333;
    transition: opacity .3s
}

.components__more:hover {
    opacity: .7
}

.social-link {
    width: 2.36vw;
    height: 2.36vw
}

.social-link a {
    border-radius: .21vw;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #098594;
    transition: background .3s
}

.social-link a img {
    width: 1.18vw
}

.social-link a:hover {
    background: #069fb2
}

@media (max-width:800px) {
    .container {
        max-width: 92vw
    }

    .components__tag img {
        margin-right: 2.67vw;
        max-width: 4vw;
        max-height: 4vw
    }

    .components__pagination {
        --swiper-pagination-bullet-horizontal-gap: 1.33vw;
        --swiper-pagination-bullet-size: 3.2vw
    }

    .components__pagination .swiper-pagination-bullet-active {
        border-radius: 1.07vw;
        width: 11.2vw
    }

    .components__more {
        font-weight: 500;
        font-size: 4.27vw;
        letter-spacing: .09vw;
        text-decoration-thickness: 1px;
        text-underline-offset: .8vw
    }

    .social-link {
        width: 9.07vw;
        height: 9.07vw
    }

    .social-link a {
        border-radius: .8vw
    }

    .social-link a img {
        width: 4.53vw
    }
}

.title {
    font-family: Manrope, sans-serif;
    font-weight: 400;
    font-size: 2.78vw;
    line-height: 1.1
}

.title span {
    display: inline-block;
    border-radius: 2.78vw;
    padding: .28vw .83vw;
    background: rgba(9, 133, 148, .3)
}

.title b {
    font-weight: 500
}

.title--md {
    font-size: 2.43vw
}

.title--lg {
    font-size: 3.13vw
}

.title--xlg {
    font-size: 3.47vw
}

.title--xl {
    font-size: 3.82vw
}

@media (max-width:800px) {
    .title {
        font-size: 7.2vw
    }

    .title span {
        border-radius: 8vw;
        padding: .53vw 1.07vw 1.07vw
    }

    .title--lg,
    .title--md {
        font-size: 6.67vw
    }
}

.btn {
    position: relative;
    z-index: 10;
    font-weight: 400;
    font-size: 1.04vw;
    line-height: 1.3;
    color: #fff;
    transition: opacity .3s;
    background: linear-gradient(20deg, #098594 -20%, #098594 20%, #30a4b3 50%, #098594 80%, #098594 120%)
}

.btn::before {
    content: "";
    position: absolute;
    z-index: -3;
    bottom: -.69vw;
    left: 50%;
    transform: translate(-50%);
    width: 9.17vw;
    height: 1.94vw;
    background: rgba(9, 133, 148, .45);
    filter: blur(25px);
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    pointer-events: none
}

@media (max-width:800px) {
    .btn {
        font-size: 4vw
    }

    .btn::before {
        bottom: -2.93vw;
        width: 50.67vw;
        height: 8.8vw
    }
}

.btn__borders {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    pointer-events: none
}

.btn__borders::after,
.btn__borders::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: .07vw;
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude
}

.btn__borders::before {
    background: radial-gradient(circle at 5% 30%, rgba(255, 255, 255, .45), transparent)
}

.btn__borders::after {
    background: radial-gradient(circle at 95% 30%, rgba(255, 255, 255, .45), transparent)
}

.btn__inner {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.39vw 3.47vw 1.6vw;
    width: 100%
}

.btn__inner img {
    margin-right: .21vw;
    width: .83vw;
    height: auto
}

.btn__inner::after {
    content: "";
    position: absolute;
    top: -2.36vw;
    left: 50%;
    z-index: -1;
    transform: translateX(-50%);
    width: 6.94vw;
    height: 3.47vw;
    background: radial-gradient(circle at 50% 0, #fff, rgba(255, 237, 217, 0));
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    pointer-events: none;
    filter: blur(12px)
}

@media (max-width:800px) {

    .btn__borders::after,
    .btn__borders::before {
        padding: 1px
    }

    .btn__inner {
        padding: 5.33vw 10.67vw
    }

    .btn__inner img {
        margin-right: 1.07vw;
        width: 3.2vw
    }

    .btn__inner::after {
        top: -9.33vw;
        width: 32vw;
        height: 13.33vw
    }
}

.btn:hover {
    opacity: .8
}

.hamburger {
    flex-direction: column;
    align-items: center;
    font-size: 2.67vw;
    color: #000
}

.hamburger__lines {
    position: relative;
    margin-bottom: 1.07vw;
    width: 8vw;
    height: 2.67vw
}

.hamburger__line {
    position: absolute;
    left: 0;
    border-radius: 1.6vw;
    width: 100%;
    height: .53vw;
    background: #098594
}

.hamburger__line:nth-child(1) {
    top: 0
}

.hamburger__line:nth-child(2) {
    bottom: 0
}

.header-menu {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1002;
    padding: 10.67vw 8.53vw 6.4vw;
    width: 100%;
    height: 100%;
    background: #f9f9f9;
    visibility: hidden;
    opacity: 0;
    transition: opacity .3s, visibility .3s
}

.header-menu .header__logo {
    width: 58.67vw
}

.header-menu .header__address {
    display: block
}

.header-menu .header__links {
    margin-top: 1.33vw;
    font-size: 4.27vw;
    display: block
}

.header-menu .header__link {
    display: flex
}

.header-menu .header__link a {
    width: 100%;
    padding: 1.87vw 0
}

.header-menu .header__flats,
.header-menu .header__profile,
.header-menu .header__social-block {
    display: flex
}

.header-menu .header__social-item {
    width: 12.27vw;
    height: 12.27vw
}

.header-menu .header__social-item a {
    background: #069fb2
}

.header-menu .header__social-item img {
    width: 5.87vw
}

.header-menu__bottom {
    position: relative;
    margin-top: 4.8vw;
    padding-top: 4.27vw
}

.header-menu__bottom::before {
    content: "";
    position: absolute;
    top: 0;
    left: -.8vw;
    width: calc(100% + 1.6vw);
    height: 1px;
    background: #333
}

.header-menu__close {
    position: absolute;
    top: 2.67vw;
    right: 2.67vw;
    display: flex;
    width: 4.27vw;
    z-index: 10
}

.header-menu__close img {
    width: 100%;
    height: auto
}

.header-menu.open {
    visibility: visible;
    opacity: 1
}

.header {
    padding: .69vw 0
}

@media (max-width:800px) {
    .header {
        position: sticky;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 10000;
        margin-top: 1.6vw;
        padding: 1.6vw 0;
        background: #fff
    }
}

.header__container {
    display: flex;
    align-items: center;
    border-radius: 3.06vw;
    padding: .21vw 1.11vw .63vw 2.08vw;
    font-size: .83vw;
    background: #f9f9f9
}

.header__logo {
    display: flex;
    margin-right: 1.74vw;
    width: 9.58vw;
    transition: opacity .3s
}

.header__logo img {
    width: 100%;
    height: auto
}

.header__logo:hover {
    opacity: .7
}

@media (max-width:800px) {
    .header__container {
        justify-content: space-between;
        border-radius: 200px;
        padding: 3.47vw 5.87vw 4vw 4.8vw;
        font-size: 3.2vw
    }

    .header__logo {
        margin-right: 0;
        width: 33.33vw
    }
}

.header__address {
    margin-right: .83vw;
    font-style: normal;
    font-size: .76vw
}

@media (max-width:800px) {
    .header__address {
        display: none;
        margin-top: 5.33vw;
        margin-right: 0;
        font-size: 4.27vw;
        text-decoration: underline;
        text-underline-offset: .53vw;
        text-decoration-thickness: 1px
    }

    .header__address br {
        display: none
    }
}

.header__links {
    margin-right: .9vw;
    display: flex;
    align-items: center
}

.header__link {
    display: flex;
    font-size: inherit
}

.header__link a {
    padding: .28vw .9vw;
    color: #333;
    transition: color .3s ease-in
}

.header__link a:hover {
    color: #098594
}

@media (max-width:800px) {
    .header__link {
        display: none
    }

    .header__link--mob {
        display: flex
    }
}

.header__flats {
    display: flex;
    border-radius: 4.17vw;
    padding: .14vw .9vw .14vw .69vw;
    line-height: 1.1;
    max-width: 9.72vw;
    background: #b1dfe5;
    align-items: center;
}

.header__flats b {
    margin-right: .42vw;
    font-weight: 400;
    font-size: 1.74vw;
    transition: transform .3s
}

.header__flats:hover b {
    transform: scale(1.1)
}

@media (max-width:800px) {
    .header__flats {
        display: none;
        margin-top: 2.67vw;
        padding: 1.07vw 6.4vw 1.07vw 3.47vw;
        border-radius: 200px;
        max-width: unset;
        width: -moz-fit-content;
        width: fit-content;
        align-items: center;
        font-size: 4vw
    }

    .header__flats b {
        margin-right: 1.6vw;
        font-size: 7.2vw
    }
}

.header__social-block {
    margin-left: auto;
    margin-right: .42vw;
    display: flex;
    align-items: center
}

@media (max-width:800px) {
    .header__social-block {
        display: none
    }
}

.header__social-links {
    margin-right: .83vw;
    display: flex
}

@media (max-width:800px) {
    .header__social-links {
        margin-right: 5.33vw
    }
}

.header__social-item {
    margin-right: .42vw
}

.header__social-item:last-child {
    margin-right: 0
}

.header__social-text {
    max-width: 6.25vw;
    font-size: .76vw
}

.header__menu-trigger {
    display: none
}

.header__profile {
    display: flex;
    align-items: center
}

.header__profile-img {
    position: relative;
    z-index: 5;
    overflow: hidden;
    margin-right: .28vw;
    border-radius: 50%;
    width: 3.47vw;
    height: 3.47vw;
    flex-shrink: 0;
    background: #daf4f7
}

.header__profile-img img {
    position: relative;
    top: .14vw;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media (max-width:800px) {
    .header__social-text {
        font-size: 4vw;
        max-width: 33.33vw
    }

    .header__menu-trigger {
        display: flex
    }

    .header__profile {
        margin-top: 5.33vw;
        display: none
    }

    .header__profile-img {
        margin-right: 2.67vw;
        width: 15.47vw;
        height: 15.47vw
    }

    .header__profile-img img {
        top: .53vw
    }
}

.header__profile-phone {
    font-weight: 600;
    font-size: 1.11vw;
    transition: opacity .3s
}

.header__profile-phone:hover {
    opacity: .7
}

.header__profile-caption {
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.header__profile-caption::before {
    content: "";
    margin-right: .35vw;
    border-radius: 50%;
    width: .28vw;
    height: .28vw;
    background: #069fb2;
    flex-shrink: 0
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10001;
    padding: 6.94vw 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .1);
    -webkit-backdrop-filter: blur(40px);
    backdrop-filter: blur(40px);
    opacity: 0;
    overflow: auto;
    visibility: hidden;
    transition: opacity .3s, visibility .3s
}

.modal__window {
    position: relative;
    display: block;
    margin: 0 auto;
    width: 100%;
    max-width: 69.44vw
}

.modal__close {
    position: absolute;
    top: .83vw;
    right: .83vw;
    display: flex;
    width: 1.25vw;
    transition: opacity .3s
}

.modal__close img {
    width: 100%;
    height: auto
}

.modal__close:hover {
    opacity: .6
}

.modal.open {
    opacity: 1;
    visibility: visible
}

.hero {
    padding: .28vw 0 3.47vw
}

@media (max-width:800px) {
    .header__profile-phone {
        font-size: 5.07vw
    }

    .header__profile-caption {
        font-size: 4vw
    }

    .header__profile-caption::before {
        margin-right: 1.07vw;
        width: 1.33vw;
        height: 1.33vw
    }

    .modal__window {
        max-width: 86vw
    }

    .modal__close {
        top: 1.6vw;
        right: 1.87vw;
        width: 3.47vw
    }

    .hero {
        padding: 3.2vw 0 3.47vw
    }
}

.hero__window {
    position: relative;
    padding: 5vw 2.22vw 1.39vw
}

@media (max-width:800px) {
    .hero__window {
        padding: 6.67vw 4vw 14.93vw
    }
}

.hero__content {
    border-radius: 1.04vw;
    padding: 2.22vw 2.36vw 1.94vw 2.78vw;
    max-width: 57.64vw;
    background: #fff
}

@media (max-width:800px) {
    .hero__content {
        border-radius: 2.67vw;
        padding: 7.47vw 4.27vw 8.53vw;
        max-width: unset
    }
}

.hero__title {
    max-width: 43.75vw
}

.hero__form {
    margin-top: 1.25vw;
    height: 6.11vw
}

@media (max-width:1023px) and (min-width:800px) {
    .hero__form {
        margin-top: 18px;
        height: 66px
    }
}

@media (max-width:800px) {
    .hero__title {
        max-width: unset
    }

    .hero__form {
        margin-top: 4vw;
        height: 17.6vw
    }
}

.hero__features {
    margin-top: 1.25vw;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto auto;
    grid-auto-flow: column;
    gap: 2.08vw 4.58vw
}

.hero__feature {
    position: relative
}

.hero__feature b {
    display: block
}

.hero__feature::before {
    content: "";
    position: absolute;
    top: 1.6vw;
    left: 0;
    border-radius: 50%;
    width: 1.33vw;
    height: 1.33vw;
    background: #098594;
    display: none
}

@media (max-width:800px) {
    .hero__features {
        margin-top: 5.33vw;
        display: block;
        width: calc(100% + 5.33vw)
    }

    .hero__feature {
        margin-bottom: 3.73vw;
        padding-left: 5.33vw;
        font-size: 2.93vw
    }

    .hero__feature::before {
        display: block
    }

    .hero__feature:last-child {
        margin-bottom: 0
    }
}

.hero__request {
    margin-top: .42vw;
    margin-left: auto;
    border-radius: 1.04vw;
    padding: .83vw 1.32vw 1.32vw 1.81vw;
    max-width: 18.75vw;
    background: #fff;
    transition: opacity .3s, visibility .3s;
    opacity: 0;
    visibility: hidden;
    animation: .5s ease-in 3s forwards showWindow
}

.hero__request-text {
    font-size: .97vw
}

.hero__request-text b {
    font-weight: 800;
    display: block
}

@media (max-width:800px) {
    .hero__request {
        margin-top: 16vw;
        border-radius: 2.67vw;
        padding: 3.2vw 4.8vw 5.07vw 6.67vw;
        max-width: 72vw
    }

    .hero__request-text {
        font-size: 3.73vw
    }
}

.hero__request-btn {
    display: block;
    margin-top: .42vw;
    max-width: 12.85vw;
    width: 100%;
    font-weight: 500;
    font-size: .76vw
}

.hero__request-btn .btn__inner {
    padding: 1.1vw 1.9vw 1.3vw
}

.hero__profile {
    position: absolute;
    right: -1.53vw;
    bottom: -2.22vw;
    transform: translateX(100%);
    width: 5.97vw;
    height: 5.97vw
}

.hero__profile::before {
    display: block;
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    border-radius: 50%;
    width: 100%;
    height: 100%;
    background: rgba(6, 159, 178, .35);
    animation: 4s infinite pulse
}

.hero__profile-inner {
    position: absolute;
    overflow: hidden;
    border-radius: 50%;
    border: .07vw solid #069fb2;
    width: 100%;
    height: 100%;
    background: #daf4f7
}

.hero__profile-inner img {
    position: relative;
    z-index: 2;
    top: .14vw;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.hero__bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    overflow: hidden;
    border-radius: 1.04vw;
    width: 100%;
    height: 100%
}

.hero__bg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 1
    }

    70% {
        transform: scale(1.3);
        opacity: 0
    }

    100% {
        transform: scale(1);
        opacity: 0
    }
}

@keyframes showWindow {
    0% {
        visibility: hidden;
        opacity: 0
    }

    100% {
        visibility: visible;
        opacity: 1
    }
}

.discounts {
    position: relative;
    overflow: hidden;
    padding: 1.81vw 0 1.39vw
}

@media (max-width:800px) {
    .hero__request-btn {
        margin-top: 2.13vw;
        max-width: 49.33vw;
        font-size: 2.93vw
    }

    .hero__request-btn .btn__inner {
        padding: 3.73vw 5.87vw 4.8vw
    }

    .hero__profile {
        display: none
    }

    .hero__bg {
        border-radius: 4vw
    }

    .discounts {
        padding: 6.67vw 0 20vw
    }
}

.discounts__container {
    max-width: 90vw
}

.discounts__title {
    text-align: center
}

.discounts__slider-wrapper {
    position: relative;
    padding-bottom: 3.47vw
}

.discounts__slider-wrapper .discounts__slider {
    padding-top: 2.08vw
}

.discounts__slider-wrapper .discounts__slide {
    width: 66.67vw
}

.discounts__slider {
    position: relative;
    width: calc(100% + 8.89vw)
}

.discounts__item {
    border-radius: .69vw;
    padding: 2.08vw 2.78vw 1.67vw;
    background: rgba(226, 248, 251, .3)
}

.discounts__gallery {
    display: grid;
    grid-template-columns: 66.4% 31.9%;
    grid-template-rows: auto auto;
    gap: 2% 1%
}

.discounts__gallery--onlyimage .discounts__img {
    max-height: 24.65vw;
    grid-column: 1/-1
}

@media (max-width:800px) {
    .discounts__container {
        max-width: 92vw
    }

    .discounts__slider-wrapper .discounts__slider {
        padding-top: 3.2vw
    }

    .discounts__slider-wrapper .discounts__slide {
        width: 100%;
        height: auto
    }

    .discounts__slider {
        width: 100%
    }

    .discounts__item {
        border-radius: 2.67vw;
        padding: 3.47vw 2.67vw 11.2vw
    }

    .discounts__gallery {
        grid-template-columns: 1fr 1fr;
        gap: 3.5% 2%
    }

    .discounts__gallery--onlyimage .discounts__img {
        max-height: 86.67vw;
        grid-column: 1/-1
    }
}

.discounts__img {
    position: relative;
    overflow: hidden;
    border-radius: .69vw
}

.discounts__img--lg {
    grid-row: 1/3
}

.discounts__img::before {
    content: "";
    display: block;
    padding-top: 60.64%
}

.discounts__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.discounts__content {
    margin-top: .83vw;
    display: flex
}

.discounts__subtitle {
    font-weight: 600
}

.discounts__text-content {
    width: 66.4%
}

@media (max-width:800px) {
    .discounts__img {
        border-radius: 1.33vw
    }

    .discounts__img::before {
        padding-top: 62.5%
    }

    .discounts__img--lg {
        border-radius: 2.67vw;
        grid-column: 1/3;
        grid-row: initial
    }

    .discounts__img--lg::before {
        padding-top: 68%
    }

    .discounts__content {
        margin-top: 6.67vw;
        display: block
    }

    .discounts__text-content {
        width: 100%
    }
}

.discounts__text {
    margin-top: .83vw;
    font-size: 1.04vw
}

@media (max-width:800px) {
    .discounts__text {
        margin-top: 1.33dvw;
        font-size: 3.2vw
    }
}

.discounts__control {
    margin-left: 1%;
    margin-top: .83vw;
    max-width: 18.33vw;
    width: 100%
}

@media (max-width:800px) {
    .discounts__control {
        margin-top: 6.67vw;
        margin-left: 0;
        max-width: 70.67vw
    }
}

.discounts__tags {
    margin-top: 1.25vw
}

.discounts__tags .components__tag {
    margin-right: 1.67vw;
    min-width: 7.15vw
}

.discounts__tags .components__tag:last-child {
    margin-right: 0
}

@media (max-width:800px) {
    .discounts__tags {
        justify-content: space-between;
        margin-top: 4.8vw;
        padding-right: 6.67vw;
        font-size: 4vw
    }

    .discounts__tags .components__tag {
        margin-right: 0;
        min-width: 21.33vw
    }
}

.discounts__price {
    font-family: Inter, sans-serif;
    font-weight: 700;
    font-size: 2.01vw;
    line-height: 1.1
}

.discounts__price--sm {
    font-weight: 400;
    font-size: 1.18vw;
    text-decoration: line-through;
    text-decoration-thickness: .07vw
}

@media (max-width:800px) {
    .discounts__price {
        font-size: 6.67vw
    }

    .discounts__price--sm {
        font-size: 3.73vw;
        text-decoration-thickness: 1px
    }
}

.discounts__btn {
    margin-top: .83vw;
    width: 100%;
    font-size: 1.04vw
}

.discounts__banner {
    color: #fff
}

.discounts__overlay {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    padding: 6.53vw 2.08vw 6.53vw 4.65vw;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end
}

.discounts__overlay .discounts__subtitle span {
    padding: .14vw .35vw;
    background: #098594
}

.discounts__overlay .discounts__text {
    font-size: 1.25vw
}

.discounts__overlay .discounts__btn {
    max-width: 18.06vw
}

.discounts__bg {
    position: relative;
    overflow: hidden;
    z-index: 1;
    border-radius: .69vw;
    width: 100%;
    height: 100%
}

.discounts__bg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.discounts__bg::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60%;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0), #000)
}

.discounts__arrow {
    top: 45%
}

.discounts__arrow.prev {
    left: -1.25vw;
    transform: translateY(-50%) translateX(-100%)
}

.discounts__arrow.next {
    right: -1.25vw;
    transform: translateY(-50%) translateX(100%)
}

@media (max-width:800px) {
    .discounts__btn {
        margin-top: 2.13vw;
        font-size: 4vw
    }

    .discounts__overlay {
        padding: 10.67vw;
        height: 100%
    }

    .discounts__overlay .discounts__content {
        margin-top: 2.67vw
    }

    .discounts__overlay .discounts__text {
        font-size: 4.27vw
    }

    .discounts__overlay .discounts__btn {
        margin-left: 0;
        margin-top: 4vw;
        max-width: 73.33vw
    }

    .discounts__bg {
        border-radius: 4vw
    }

    .discounts__arrow {
        display: none
    }

    .discounts__pagination {
        transform: translateY(10.67vw)
    }

    .discounts__circle {
        display: none
    }
}

.discounts__circle {
    position: absolute;
    top: -1.67vw;
    left: 7.5vw;
    z-index: 10;
    border-radius: 50%;
    padding: .28vw;
    width: 7.5vw;
    height: 7.5vw;
    background: #fff
}

.discounts__circle-item {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    width: 100%;
    height: 100%;
    background: #333;
    animation: 28s linear infinite rotate
}

.discounts__circle-img {
    display: flex;
    align-items: flex-start;
    width: 6.32vw
}

.discounts__circle-img img {
    width: 100%;
    height: auto
}

.discounts__circle-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: flex-start;
    width: 1.94vw;
    height: 1.94vw;
    z-index: 10
}

.discounts__circle-icon img {
    width: 100%;
    height: auto
}

@keyframes rotate {
    0% {
        transform: rotate(-360deg)
    }

    100% {
        transform: rotate(360deg)
    }
}

.features {
    padding: 3.47vw 0
}

.features__title {
    margin: 0 auto;
    max-width: 69.44vw;
    text-align: center
}

.features__items {
    margin-top: 3.13vw;
    display: grid;
    grid-template-columns: 29.25% 19.75% 19.75% 25.69%;
    grid-template-rows: auto auto;
    gap: 1.9%
}

@media (max-width:800px) {
    .features {
        padding: 4vw 0
    }

    .features__title {
        max-width: unset;
        font-size: 6.67vw
    }

    .features__items {
        margin-top: 6.67vw;
        display: block
    }
}

.features__item {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 2.78vw 1.46vw;
    border-radius: .56vw;
    color: #fff;
    background: #098594
}

.features__item:first-child {
    padding-right: 2.08vw;
    padding-left: 2.08vw
}

.features__item:nth-child(2) {
    grid-column-end: span 2
}

.features__item:nth-child(4) {
    grid-column: 4/5;
    grid-row: 1/3
}

.features__item:nth-child(4) .features__img {
    padding-top: 148%
}

.features__item:nth-child(4) .features__content {
    padding: 1.94vw 2.92vw 2.92vw;
    text-align: center
}

.features__item:nth-child(5) {
    grid-column: 3/4
}

.features__item:nth-child(6) {
    grid-column: 2/3;
    grid-row: 2/3
}

.features__item--gray {
    color: #333;
    background: #f3fcfd
}

.features__item--col {
    display: block;
    padding: 0
}

.features__item--row {
    padding: 0;
    flex-direction: row;
    justify-content: stretch
}

.features__item--row .features__content {
    padding: 3.33vw 1.67vw
}

.features__item--row .features__img {
    width: 43%;
    padding-top: 54.5%
}

@media (max-width:800px) {
    .features__item {
        margin-bottom: 5.33vw;
        padding: 8.8vw 5.33vw 10.67vw;
        border-radius: 2.13vw
    }

    .features__item:first-child {
        padding-right: 26.67vw;
        padding-left: 5.33vw
    }

    .features__item:first-child .features__icon {
        margin-bottom: 7.47vw
    }

    .features__item:nth-child(4) .features__img {
        padding-top: 100%
    }

    .features__item:nth-child(4) .features__content {
        padding: 5.87vw 2.67vw 6.67vw;
        text-align: left
    }

    .features__item:nth-child(4) .features__subtitle {
        max-width: 65%
    }

    .features__item:nth-child(4) .features__text {
        margin-top: 2.67vw
    }

    .features__item--col,
    .features__item--row {
        padding: 0
    }

    .features__item--row .features__content {
        padding: 11.47vw 1.6vw 8vw 5.33vw
    }

    .features__item--row .features__img {
        width: 37%;
        padding-top: 66.5%
    }

    .features__item--row .features__text {
        margin-top: 4vw
    }

    .features__item:last-child {
        margin-bottom: 0
    }
}

.features__icon {
    display: flex;
    align-items: flex-start;
    margin-bottom: .97vw;
    width: 2.5vw
}

.features__icon img {
    width: 100%;
    height: auto
}

.features__icon--sm {
    width: 1.67vw
}

.features__img {
    position: relative;
    overflow: hidden;
    border-radius: .56vw;
    padding-top: 73%;
    display: flex;
    align-items: flex-start;
    flex-shrink: 0
}

.features__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media (max-width:800px) {
    .features__icon {
        width: 6.67vw;
        margin-bottom: 5.33vw
    }

    .features__img {
        border-radius: 2.13vw;
        padding-top: 66%
    }
}

.features__content {
    padding: 1.11vw 2.01vw 1.53vw
}

.features__subtitle {
    font-weight: 700;
    font-size: 1.46vw
}

.features__subtitle--lg {
    font-size: 1.88vw
}

.features__subtitle .mob {
    display: none
}

@media (max-width:800px) {
    .features__content {
        padding: 3.73vw 7.47vw 8.53vw
    }

    .features__subtitle {
        font-size: 5.33vw
    }

    .features__subtitle .mob {
        display: block
    }
}

.features__text {
    margin-top: 1.04vw;
    font-weight: 300;
    font-size: 1.18vw
}

.features__text b {
    font-weight: 600
}

.features__text--sm {
    font-size: 1.04vw
}

.features__text--lg {
    margin-top: 1.74vw;
    font-size: 1.32vw
}

@media (max-width:800px) {
    .features__text {
        margin-top: 1.33vw;
        font-size: 4vw
    }
}

.features__trigger-btn {
    margin: 3.47vw auto 0;
    display: none
}

.features--tb .features__trigger-btn {
    font-size: 1.25vw;
    display: flex
}

.features--tb .features__trigger-btn .btn__inner {
    padding: 1.81vw 6.11vw
}

@media (max-width:800px) {
    .features__trigger-btn {
        display: flex;
        margin: 8.53vw auto 0;
        width: 100%;
        max-width: 70.67vw
    }

    .features--tb .features__trigger-btn {
        font-size: 4vw
    }

    .features--tb .features__trigger-btn .btn__inner {
        padding: 5.33vw 10.67vw
    }
}

.layout-price__settings {
    margin-top: .56vw
}

.layout-price__setting-content {
    position: relative;
    border-radius: .83vw;
    padding: .21vw;
    font-weight: 300;
    font-size: 1.32vw;
    background: rgba(255, 255, 255, .2)
}

.layout-price__setting-content--sqms {
    padding: 1.04vw 1.25vw;
    min-width: 13.89vw;
    font-weight: 400;
    font-size: 1.39vw
}

.object {
    position: relative;
    transition: .4s
}

.object__mark {
    position: absolute;
    top: 1.11vw;
    left: 0;
    z-index: 10;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 80%;
    border-radius: 3px;
    padding: 2px .97vw 2px 1.11vw;
    color: #fff;
    background: #098594
}

@media (max-width:800px) {
    .layout-price__settings {
        margin-top: 6.67vw
    }

    .layout-price__select-wrapper .nice-select {
        border-radius: 2.4vw;
        padding: 3.73vw 12vw 3.73vw 4.53vw;
        min-width: 42.67vw;
        font-size: 4.53vw
    }

    .layout-price__select-wrapper .nice-select::after {
        right: 3.2vw;
        width: 4.8vw;
        height: 4.8vw
    }

    .layout-price__select-wrapper .nice-select .nice-select-dropdown {
        border-radius: 2.4vw
    }

    .layout-price__select-wrapper .nice-select .option {
        height: 11.2vw
    }

    .layout-price__select-wrapper .nice-select .list {
        max-height: 93.33vw
    }

    .object__mark {
        top: 4vw;
        padding: .53vw 3.47vw .53vw 4.27vw;
        font-size: 4.27vw
    }
}

.object__gallery {
    position: relative;
    overflow: hidden;
    border-radius: 8px
}

.object__gallery-item {
    position: relative;
    overflow: hidden
}

.object__gallery-item::before {
    content: "";
    display: block;
    padding-top: 76.5%
}

.object__gallery-item img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.object__gallery-item--onlyimage {
    border-radius: 8px
}

.object__pagination {
    width: 100%;
    padding-bottom: 1.25vw;
    --swiper-pagination-bullet-size: 0.42vw;
    --swiper-pagination-bullet-horizontal-gap: 0.14vw;
    --swiper-pagination-bullet-inactive-opacity: 1;
    --swiper-theme-color: #C4D0CF;
    --swiper-pagination-bullet-inactive-color: #fff
}

.object__pagination .swiper-pagination-bullet-active {
    width: 2.29vw
}

.object__content {
    margin-top: .69vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 15vw
}

.object__title {
    font-size: 1.4vw;
    text-align: center;
    margin-bottom: 1vw
}

@media (max-width:800px) {
    .object__pagination {
        padding-bottom: 4.8vw;
        --swiper-pagination-bullet-size: 1.6vw;
        --swiper-pagination-bullet-horizontal-gap: 0.53vw
    }

    .object__pagination .swiper-pagination-bullet-active {
        width: 8.53vw
    }

    .object__content {
        margin-top: 2.13vw;
        min-height: unset
    }

    .object__title {
        font-size: 6.67vw
    }
}

.object__text-wrapper {
    margin-top: .56vw;
    position: relative;
    overflow: hidden;
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: calc(4.2em + 1vw)
}

@media (max-width:800px) {
    .object__text-wrapper {
        min-height: calc(4.2em + 2vw)
    }
}

.object__text {
    margin: 0;
    padding-right: 2.78vw;
    font-weight: 300;
    font-size: .97vw;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: .4s cubic-bezier(.4, 0, .2, 1);
    min-height: 4.2em
}

.object__text--expanded {
    -webkit-line-clamp: unset !important;
    display: block !important;
    max-height: 500px !important;
    overflow: visible !important;
    min-height: auto !important
}

@media (max-width:800px) {
    .object__text {
        padding-right: 0;
        font-size: 3.73vw;
        min-height: 4.2em
    }

    .object__text--expanded {
        max-height: 800px !important;
        min-height: auto !important
    }
}

.object__toggle {
    background: 0 0;
    border: none;
    color: #098594;
    text-decoration: underline;
    cursor: pointer;
    padding: .5vw 0 0;
    font: inherit;
    display: none;
    width: 100%;
    text-align: left;
    transition: .3s;
    margin-top: .5vw
}

.object__toggle:hover {
    opacity: .8;
    text-decoration: none
}

.object__toggle--active {
    display: block
}

@media (max-width:800px) {
    .object__toggle {
        padding: 2vw 0 0;
        margin-top: 2vw
    }
}

.object__toggle-text--read {
    display: inline
}

.object--expanded .object__toggle-text--read,
.object__toggle-text--hide {
    display: none
}

.object--expanded .object__toggle-text--hide {
    display: inline
}

.object--expanded .object__content {
    min-height: auto
}

.object__tags {
    margin-top: 1vw;
    display: flex;
    padding-right: 1.39vw;
    font-size: 1.11vw;
    justify-content: space-between
}

.object__tags img {
    margin-right: .56vw;
    max-width: 1.53vw;
    max-height: 1.53vw
}

@media (max-width:800px) {
    .object__tags {
        margin-top: 5.33vw;
        padding-right: 4vw;
        font-size: 3.73vw
    }

    .object__tags img {
        margin-right: 1.6vw;
        max-width: 4.8vw;
        max-height: 4.8vw
    }
}

.object__info {
    margin-top: 1.39vw;
    display: flex
}

.object__price {
    font-weight: 700;
    font-size: 1.67vw;
    line-height: 1.1
}

.object__price--sm {
    font-weight: 400;
    font-size: .97vw;
    text-decoration: line-through;
    text-decoration-thickness: .07vw
}

@media (max-width:800px) {
    .object__info {
        margin-top: 5.33vw
    }

    .object__price {
        font-size: 5.07vw
    }

    .object__price--sm {
        font-size: 3.2vw;
        text-decoration-thickness: 1px
    }
}

.object__learn-more {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 2.43vw;
    border-radius: .28vw;
    border: .07vw solid #098594;
    padding: .97vw 2vw 1.11vw;
    font-size: .83vw;
    letter-spacing: .02vw;
    color: #333;
    background: 0 0;
    transition: .3s;
    flex: 1
}

.object__learn-more img {
    margin-left: .35vw;
    width: 1.46vw;
    height: auto
}

.object__learn-more:hover {
    color: #fff;
    background: #098594
}

@media (max-width:800px) {
    .object__learn-more {
        margin-left: 5.33vw;
        border-radius: .53vw;
        border-width: 1px;
        padding: 3.47vw 5.33vw;
        font-size: 3.2vw;
        letter-spacing: .06vw
    }

    .object__learn-more img {
        margin-right: 2.13vw;
        width: 5.33vw
    }
}

.object__loading {
    margin-top: .28vw;
    display: flex;
    align-items: center;
    font-weight: 300;
    font-size: 1.25vw
}

.object__loading img {
    margin-right: .42vw;
    width: 1.81vw;
    flex-shrink: 0
}

.object__loading b {
    font-weight: 500
}

.object-modal__window {
    border-radius: 1.04vw;
    padding: 2.22vw 1.39vw 1.81vw;
    background: #f3fcfd
}

@media (max-width:800px) {
    .object__loading {
        margin-top: 1.33vw;
        font-size: 4.27vw
    }

    .object__loading img {
        margin-right: 1.33vw;
        width: 6.4vw
    }

    .object-modal__window {
        border-radius: 2.67vw;
        padding: 6.4vw 4.27vw 5.33vw
    }
}

.object-modal__gallery {
    position: relative;
    overflow: hidden;
    border-radius: .83vw;
    width: 100%
}

.object-modal__gallery--onlyone .components__arrow {
    display: none
}

@media (max-width:800px) {
    .object-modal__gallery {
        border-radius: 2.13vw
    }
}

.object-modal__gallery-img {
    position: relative;
    display: flex
}

.object-modal__gallery-img::before {
    content: "";
    display: block;
    padding-top: 51.5%
}

.object-modal__gallery-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.object-modal__pagination {
    padding-bottom: 2.43vw;
    --swiper-pagination-bullet-size: 0.9vw;
    --swiper-pagination-bullet-horizontal-gap: 0.49vw;
    --swiper-pagination-bullet-inactive-opacity: 1;
    --swiper-theme-color: #069FB2;
    --swiper-pagination-bullet-inactive-color: #fff
}

.object-modal__pagination .swiper-pagination-bullet-active {
    width: 5.35vw
}

.object-modal__arrow.prev {
    left: .69vw
}

.object-modal__arrow.next {
    right: .69vw
}

.object-modal__content {
    position: relative;
    z-index: 10;
    top: -1.04vw;
    display: flex;
    border-radius: .69vw;
    padding: 1.39vw 1.67vw 1.94vw 3.33vw;
    background: #fff
}

@media (max-width:800px) {
    .object-modal__content {
        top: 0;
        margin-top: 2.67vw;
        display: block;
        padding: 3.73vw 4.27vw
    }
}

.object-modal__text-content {
    padding-right: 1.6vw
}

.object-modal__text {
    margin-top: 1.39vw;
    font-size: 1.11vw
}

.object-modal__control {
    position: relative;
    padding-top: .69vw;
    padding-left: 3.82vw;
    max-width: 26.25vw;
    width: 100%;
    flex-shrink: 0
}

.object-modal__control::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: .07vw;
    height: 100%;
    background: rgba(51, 51, 51, .45)
}

@media (max-width:800px) {
    .object-modal__text-content {
        padding-right: 0
    }

    .object-modal__text {
        margin-top: 3.2vw;
        font-size: 3.2vw
    }

    .object-modal__control {
        margin-top: 3.2vw;
        padding-top: 0;
        padding-left: 0;
        max-width: unset
    }

    .object-modal__control::before {
        display: none
    }
}

.object-modal__tags {
    justify-content: space-between;
    padding-right: .69vw;
    font-size: 1.11vw
}

.object-modal__tags .components__tag img {
    max-width: 1.53vw;
    max-height: 1.53vw;
    margin-right: .49vw
}

@media (max-width:800px) {
    .object-modal__tags {
        padding-right: 2.67vw;
        font-size: 3.2vw
    }

    .object-modal__tags .components__tag img {
        margin-right: 1.6vw;
        max-width: 4.8vw;
        max-height: 4.8vw
    }
}

.object-modal__price {
    margin-top: 1.39vw;
    font-weight: 700;
    font-size: 2.08vw
}

@media (max-width:800px) {
    .object-modal__price {
        margin-top: 3.2vw;
        font-size: 5.33vw
    }
}

.object-modal__btn {
    margin-top: .56vw;
    margin-left: 0;
    justify-content: center;
    max-width: 18.75vw;
    width: 100%;
    font-size: .97vw;
    color: #fff;
    background: #069fb2
}

@media (max-width:800px) {
    .object-modal__btn {
        margin-top: 3.2vw;
        padding: 4.27vw 8.53vw;
        font-size: 3.2vw;
        max-width: 53.33vw
    }
}

.objects {
    padding: 6.6vw 0 4.17vw
}

.objects--released {
    padding: 3.1vw 0 4.17vw
}

.objects__wrapper {
    position: relative
}

.objects__wrapper.load .loading {
    opacity: 1;
    visibility: visible
}

.objects__top {
    display: flex;
    align-items: flex-end
}

@media (max-width:800px) {
    .objects {
        padding: 17.33vw 0 8vw
    }

    .objects--released {
        padding: 13.33vw 0 5.33vw
    }

    .objects--released .objects__title {
        font-size: 8.53vw
    }

    .objects__top {
        display: block
    }
}

.objects__controls {
    display: flex;
    justify-content: flex-end;
    margin-left: auto;
    flex: 1
}

.objects__control {
    margin-right: 1.67vw;
    width: 100%;
    max-width: 13.33vw
}

.objects__control--guests .nice-select::before {
    background: url(../img/guests.png) center center/contain no-repeat
}

.objects__control--room {
    max-width: 15.28vw
}

.objects__control--room .nice-select::before {
    background: url(../img/rooms.png) center center/contain no-repeat
}

.objects__control:last-child {
    margin-right: 0
}

.objects__control-title {
    margin-bottom: .42vw;
    font-weight: 500;
    font-size: 1.46vw
}

@media (max-width:800px) {
    .objects__controls {
        display: grid;
        margin-top: 4.8vw;
        grid-template-columns: 43% 49%;
        gap: 4vw 4.5%;
        justify-content: start;
        grid-auto-flow: dense
    }

    .objects__control {
        margin-right: 0;
        padding-bottom: .53vw;
        max-width: unset
    }

    .objects__control--room {
        max-width: unset
    }

    .objects__control--guests {
        grid-column: 1/2
    }

    .objects__control-title {
        margin-bottom: 1.33vw;
        font-size: 4.53vw
    }
}

.objects__range {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: .35vw;
    padding: .56vw .97vw;
    width: 100%;
    max-width: 13.89vw;
    background: #e2f8fb
}

.objects__range .objects__range-text {
    min-width: 4.17vw
}

.objects__range .objects__range-text.end {
    text-align: right
}

.objects__range-text {
    font-weight: 400;
    color: rgba(51, 51, 51, .55)
}

.objects__range-divider {
    margin: 0 auto;
    display: block;
    width: 1.67vw;
    height: .07vw;
    flex-shrink: 0;
    background: rgba(51, 51, 51, .45)
}

@media (max-width:800px) {
    .objects__range {
        border-radius: 1.07vw;
        padding: 1.6vw 3.2vw;
        max-width: unset
    }

    .objects__range .objects__range-text {
        min-width: 12vw;
        font-size: 4vw
    }

    .objects__range-divider {
        width: 5.33vw;
        height: 1px
    }
}

.objects__range-line {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    border: 0;
    width: calc(100% - 1.39vw);
    height: .07vw;
    background: 0 0;
    box-shadow: none
}

.objects__range-line .noUi-connect {
    background: #098594
}

.objects__range-line .noUi-handle {
    top: -.28vw;
    right: -.49vw;
    border-radius: 50%;
    border: 0;
    width: .63vw;
    height: .63vw;
    background: #098594;
    box-shadow: none
}

.objects__range-line .noUi-handle::after,
.objects__range-line .noUi-handle::before {
    display: none
}

.objects__range-line .noUi-connects {
    border-radius: 0
}

@media (max-width:800px) {
    .objects__range-line {
        width: calc(100% - 4.27vw);
        height: 1px
    }

    .objects__range-line .noUi-handle {
        top: -.8vw;
        right: -.53vw;
        width: 1.87vw;
        height: 1.87vw
    }
}

.objects__select-wrapper select {
    position: absolute
}

.objects__select-wrapper .nice-select {
    float: initial;
    border: 0;
    border-radius: .35vw;
    padding: .56vw 1.25vw .56vw 3.47vw;
    min-width: 13.33vw;
    height: auto;
    font-weight: 600;
    font-size: 1.39vw;
    line-height: 1.3;
    color: #333;
    background: #e2f8fb
}

.objects__select-wrapper .nice-select::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 1.11vw;
    transform: translateY(-50%);
    width: 1.46vw;
    height: 1.46vw
}

.objects__select-wrapper .nice-select::after {
    margin: 0;
    border: 0;
    right: 1.25vw;
    width: 1.67vw;
    height: .69vw;
    transform-origin: initial;
    background: url(../img/arrow-down.png) center center/contain no-repeat;
    transform: translateY(-50%)
}

.objects__select-wrapper .nice-select .nice-select-dropdown {
    margin-top: .63vw;
    border-radius: .35vw;
    width: 100%;
    color: #333;
    background: #fff;
    box-shadow: 0 4px 9px rgba(0, 0, 0, .25)
}

.objects__select-wrapper .nice-select .option {
    padding-right: 2.08vw;
    padding-left: 1.74vw;
    height: 2.78vw;
    display: flex;
    align-items: center
}

.objects__select-wrapper .nice-select .option.focus,
.objects__select-wrapper .nice-select .option.selected.focus,
.objects__select-wrapper .nice-select .option:hover {
    background: #e2f8fb
}

.objects__select-wrapper .nice-select .list {
    max-height: 16.81vw
}

.objects__select-wrapper .nice-select.open::after {
    transform: translateY(-50%) rotate(180deg)
}

.objects__clean-filter {
    border-radius: .28vw;
    padding: .56vw .97vw;
    font-weight: 500;
    font-size: 1.05vw;
    gap: 4px;
    width: auto;
    max-width: unset;
    background: #e2f8fb;
    align-self: flex-end
}

.objects__clean-filter img {
    width: .9vw;
    height: auto
}

.objects__items {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2vw;
    align-items: start;
    margin-top: 2.08vw;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2.08vw
}

.objects__item {
    transition: transform .4s, opacity .4s
}

.objects__item.hidden {
    display: none
}

.objects__item--shifted {
    transform: translateY(20px);
    opacity: .7
}

@media (max-width:800px) {
    .objects__select-wrapper .nice-select {
        border-radius: 1.07vw;
        padding: 2.13vw 8vw 2.13vw 10.67vw;
        min-width: 39.47vw;
        font-weight: 600;
        font-size: 4.27vw
    }

    .objects__select-wrapper .nice-select::before {
        left: 3.47vw;
        width: 4.27vw;
        height: 4.27vw
    }

    .objects__select-wrapper .nice-select::after {
        right: 4.27vw;
        width: 5.07vw;
        height: 2.13vw
    }

    .objects__select-wrapper .nice-select .nice-select-dropdown {
        margin-top: 1.07vw;
        border-radius: 2.13vw
    }

    .objects__select-wrapper .nice-select .option {
        padding-right: 2.67vw;
        padding-left: 2.67vw;
        height: 8.8vw
    }

    .objects__select-wrapper .nice-select .list {
        max-height: 58.67vw
    }

    .objects__clean-filter {
        border-radius: 1.07vw;
        padding: .53vw 2.13vw;
        font-size: 2.93vw
    }

    .objects__clean-filter img {
        width: 3.2vw
    }

    .objects__items {
        grid-template-columns: 1fr;
        gap: 4vw;
        margin-top: 9.33vw;
        display: block
    }

    .objects__item {
        margin-top: 8vw
    }

    .objects__item.hidden-mob {
        display: none
    }

    .objects__item:first-child {
        margin-top: 0
    }
}

.objects__more {
    display: block !important;
    margin: 3.82vw auto 0
}

.objects__more--onlymob,
.objects__more.hidden {
    display: none
}

.objects__more--expanded {
    background-color: #f8f8f8;
    border-color: #098594;
    color: #098594
}

.objects__more--expanded:hover {
    background-color: #e0e0e0
}

@media (max-width:800px) {
    .objects__more {
        margin-top: 8.53vw;
        color: #098594
    }

    .objects__more--onlymob {
        display: flex
    }
}

.objects__no-data {
    grid-column: 1/-1;
    padding: 6.94vw 0;
    font-size: 2.22vw;
    line-height: 1.4;
    color: rgba(0, 0, 0, .5);
    text-align: center
}

@media (max-width:800px) {
    .objects__no-data {
        padding: 16vw 0;
        font-size: 6.4vw
    }
}

.partners {
    padding: 2.78vw 0 5.56vw
}

.partners__slider-wrapper {
    position: relative;
    margin-top: 2.5vw
}

.partners__slider-wrapper .partners__slide {
    display: flex;
    height: 15.63vw
}

.partners__slide {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f3fcfd
}

.partners__slide img {
    max-width: 11.88vw;
    max-height: 8.33vw
}

.partners__slide--lg img {
    max-width: 18.47vw;
    max-height: 9.72vw
}

.partners__slide--sm img {
    max-width: 9.72vw;
    max-height: 7.85vw
}

.partners__arrow.prev {
    left: -1.94vw;
    transform: translateX(-100%) translateY(-50%)
}

.partners__arrow.next {
    right: -1.94vw;
    transform: translateX(100%) translateY(-50%)
}

.partners__pagination {
    transform: translateY(4.86vw)
}

@media (max-width:800px) {
    .partners {
        padding: 5.33vw 0 20vw
    }

    .partners__title {
        font-size: 8vw;
        text-align: center
    }

    .partners__slider-wrapper {
        margin-top: 8vw
    }

    .partners__slider-wrapper .partners__slide {
        height: 60vw
    }

    .partners__slide img {
        max-width: 45.87vw;
        max-height: 37.33vw
    }

    .partners__slide--lg img {
        max-width: 70.93vws;
        max-height: 42.67vw
    }

    .partners__slide--sm img {
        max-width: 30.13vw;
        max-height: 30.13vw
    }

    .partners__arrow {
        display: none
    }

    .partners__pagination {
        transform: translateY(10.67vw);
        --swiper-pagination-bullet-horizontal-gap: 0.8vw;
        --swiper-pagination-bullet-size: 2.67vw
    }
}

.contact-us {
    padding: 6.94vw 0 3.47vw
}

@media (max-width:800px) {
    .contact-us {
        padding: 4vw 0 6.67vw
    }
}

.contact-us__wrapper {
    position: relative;
    border-radius: .69vw;
    padding: 3.06vw 5.28vw;
    background: linear-gradient(100deg, #e2f8fb -40%, #b9e4ea 140%)
}

.contact-us__content {
    margin-left: auto;
    max-width: 39.93vw
}

.contact-us__title {
    font-weight: 500
}

.contact-us__title br {
    display: none
}

@media (max-width:800px) {
    .contact-us__wrapper {
        border-radius: 2.67vw;
        padding: 9.07vw 3.73vw 54.67vw
    }

    .contact-us__content {
        max-width: unset;
        text-align: center
    }

    .contact-us__title {
        line-height: 1.3
    }

    .contact-us__title br {
        display: block
    }
}

.contact-us__text {
    margin-top: 1.74vw;
    font-weight: 300;
    font-size: 1.39vw;
    line-height: 1.45
}

@media (max-width:800px) {
    .contact-us__text {
        margin-top: 4vw;
        font-size: 4.27vw
    }
}

.contact-us__btn {
    display: block;
    margin-top: 2.43vw;
    font-size: 1.18vw
}

.contact-us__btn .btn__inner {
    padding: 1.67vw 6.11vw
}

@media (max-width:800px) {
    .contact-us__btn {
        margin-top: 2.67vw;
        font-size: 4.27vw;
        width: 100%;
        max-width: 75.2vw
    }

    .contact-us__btn .btn__inner {
        padding: 5.87vw 8vw 6.4vw
    }
}

.contact-us__img {
    position: absolute;
    left: .97vw;
    bottom: 0;
    display: flex;
    align-items: flex-start;
    width: 36.67vw
}

.contact-us__img img {
    width: 100%;
    height: auto
}

.contact-us--rent .contact-us__wrapper {
    padding: 3vw 2.5vw
}

.contact-us--rent .contact-us__content {
    max-width: 46vw
}

.contact-us--rent .contact-us__title {
    padding-right: 3vw
}

.contact-us--rent .contact-us__text {
    font-size: 1.74vw
}

.contact-us--rent .contact-us__btn {
    margin-top: 1.5vw;
    font-size: 1.25vw
}

.contact-us--rent .btn__inner {
    padding: 1.67vw 6.7vw
}

.contact-us--rent .contact-us__img {
    left: 0;
    width: 32.5vw
}

.reviews {
    position: relative;
    overflow: hidden;
    padding: 3.47vw 0 11.11vw
}

.reviews__title {
    max-width: 43.06vw
}

.reviews__content {
    position: relative;
    margin-top: 2.78vw;
    font-weight: 500;
    font-size: 1.18vw;
    display: flex;
    align-items: flex-start
}

@media (max-width:800px) {
    .contact-us__img {
        z-index: 10;
        left: 50%;
        transform: translateX(-50%);
        width: 68vw;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none;
        pointer-events: none
    }

    .contact-us--rent .contact-us__wrapper {
        padding: 8.53vw 5.33vw 55.47vw
    }

    .contact-us--rent .contact-us__content {
        max-width: unset
    }

    .contact-us--rent .contact-us__title {
        padding-right: 0
    }

    .contact-us--rent .contact-us__text {
        font-size: 4.27vw
    }

    .contact-us--rent .contact-us__btn {
        margin-top: 4.27vw;
        font-size: 4.27vw
    }

    .contact-us--rent .btn__inner {
        padding: 5.87vw 10.67vw 6.4vw
    }

    .contact-us--rent .contact-us__img {
        left: 50%;
        width: 68.27vw
    }

    .reviews {
        padding: 8vw 0 9.33vw
    }

    .reviews__title {
        text-align: center;
        padding: 0 4vw;
        max-width: unset
    }

    .reviews__content {
        margin-top: 0;
        font-size: 4.53vw;
        display: block
    }
}

.reviews__platform {
    width: 22.92vw;
    flex-shrink: 0
}

.reviews__platform-window {
    position: relative;
    overflow: hidden;
    border-radius: .56vw;
    width: 100%
}

.reviews__platform-window .reviews__platform-item {
    display: flex;
    height: auto
}

.reviews__platform-item {
    width: 100%
}

.reviews__platform-item>img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.reviews__pagination {
    padding-bottom: 1.11vw;
    --swiper-pagination-bullet-horizontal-gap: 0.21vw;
    --swiper-pagination-bullet-size: 0.49vw;
    --swiper-pagination-bullet-inactive-color: #fff;
    --swiper-pagination-bullet-inactive-opacity: 1;
    --swiper-theme-color: #098594
}

.reviews__pagination .swiper-pagination-bullet-active {
    border-radius: .14vw;
    width: 2.92vw
}

@media (max-width:800px) {
    .reviews__platform {
        width: 100%
    }

    .reviews__platform-window {
        border-radius: 2.67vw
    }

    .reviews__pagination {
        padding-bottom: 4.27vw;
        --swiper-pagination-bullet-horizontal-gap: 0.8vw;
        --swiper-pagination-bullet-size: 1.87vw
    }

    .reviews__pagination .swiper-pagination-bullet-active {
        border-radius: .53vw;
        width: 11.2vw
    }
}

.reviews__rating {
    position: absolute;
    z-index: 2;
    right: 1.11vw;
    bottom: 4.17vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    width: 6.11vw;
    height: 6.11vw;
    color: #fff;
    background: #333
}

@media (max-width:800px) {
    .reviews__rating {
        right: 4.27vw;
        bottom: 16vw;
        width: 23.47vw;
        height: 23.47vw
    }
}

.reviews__rating-stars {
    display: flex
}

.reviews__rating-star {
    position: relative;
    display: flex;
    margin-right: -.14vw;
    width: .56vw
}

.reviews__rating-star img {
    width: 100%;
    height: auto
}

.reviews__rating-star:nth-child(1) {
    z-index: 5
}

.reviews__rating-star:nth-child(2) {
    z-index: 4
}

.reviews__rating-star:nth-child(3) {
    z-index: 3
}

.reviews__rating-star:nth-child(4) {
    z-index: 2
}

.reviews__rating-star:nth-child(5) {
    margin-right: 0;
    z-index: 1
}

.reviews__rating-text {
    margin-top: .35vw;
    font-family: Inter, sans-serif;
    font-size: 1.46vw;
    text-align: center
}

@media (max-width:800px) {
    .reviews__rating-star {
        margin-right: -.8vw;
        width: 2.13vw
    }

    .reviews__rating-text {
        margin-top: .53vw;
        font-size: 5.6vw
    }
}

.reviews__platform-link {
    margin-top: 1.67vw;
    display: block;
    text-decoration: underline;
    text-decoration-thickness: .07vw;
    text-underline-offset: .18vw;
    text-align: center;
    transition: opacity .3s
}

.reviews__platform-link:hover {
    opacity: .8
}

.reviews__awards {
    margin-left: 4.44vw;
    width: 14.44vw;
    flex-shrink: 0
}

@media (max-width:800px) {
    .reviews__platform-link {
        margin-top: 6.4vw;
        text-decoration-thickness: 1px;
        text-underline-offset: .8vw
    }

    .reviews__awards {
        margin: 6.67vw auto 0;
        width: 49.6vw
    }
}

.reviews__awards-list {
    position: relative;
    overflow: hidden;
    border-radius: .56vw;
    width: 100%
}

.reviews__awards-list .reviews__awards-item {
    display: flex;
    align-items: flex-start;
    height: auto
}

.reviews__awards-item {
    width: 100%
}

.reviews__awards-item img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.reviews__awards-title {
    margin-top: .9vw;
    display: block;
    text-align: center
}

.reviews__decor {
    position: absolute;
    top: -14.58vw;
    right: -5.56vw;
    display: flex;
    align-items: flex-start;
    width: 44.1vw
}

.reviews__decor img {
    width: 100%;
    height: auto
}

.footer {
    position: relative;
    font-size: 1.04vw;
    color: #fff;
    background: #333
}

.footer__container {
    position: relative;
    z-index: 5;
    display: flex;
    flex-direction: row-reverse
}

@media (max-width:800px) {
    .reviews__awards-list {
        border-radius: 2.4vw
    }

    .reviews__awards-title {
        margin-top: 1.6vw
    }

    .reviews__decor {
        position: relative;
        top: unset;
        right: unset;
        margin-bottom: -2.67vw;
        left: -4vw;
        width: 98.67vw
    }

    .footer {
        font-size: 4vw
    }

    .footer__container {
        display: block
    }
}

.footer__main {
    display: flex;
    flex: 1;
    padding: 3.13vw 0
}

.footer__main-col {
    margin-right: 4.17vw
}

.footer__main-col:last-child {
    margin-right: 0
}

.footer__main-col:last-child .footer__link-title {
    margin-bottom: .28vw
}

.footer__main-col:last-child .footer__link a {
    padding: .35vw 0
}

.footer__link-title {
    margin-bottom: .83vw;
    font-weight: 600
}

@media (max-width:800px) {
    .footer__main {
        padding: 10.67vw 4.27vw 12vw;
        display: block
    }

    .footer__main-col {
        margin-top: 8vw;
        margin-right: 0
    }

    .footer__main-col:first-child {
        margin-top: 0
    }

    .footer__main-col:last-child .footer__link-title {
        margin-bottom: 2.13vw
    }

    .footer__main-col:last-child .footer__link a {
        padding: 1.07vw 0
    }

    .footer__link-title {
        margin-bottom: 4vw
    }
}

.footer__link {
    display: flex;
    align-items: center
}

.footer__link a {
    width: 100%;
    font-weight: 400;
    padding: .42vw 0;
    color: rgba(255, 255, 255, .8);
    transition: color .3s
}

.footer__link a:hover {
    color: #fff
}

.footer__logo {
    margin-bottom: 4.17vw;
    display: flex;
    align-items: flex-start;
    width: 13.89vw
}

.footer__logo img {
    width: 100%;
    height: auto
}

.footer__contacts {
    margin-right: -3.82vw;
    padding: 6.25vw 0 5.9vw;
    max-width: 36.81vw;
    flex: 1;
    display: flex
}

@media (max-width:800px) {
    .footer__link a {
        padding: 1.33vw 0
    }

    .footer__logo {
        margin-bottom: 8vw;
        width: 46.93vw
    }

    .footer__contacts {
        position: relative;
        margin-right: 0;
        padding: 4vw 6.13vw 10.67vw;
        display: block;
        max-width: unset
    }

    .footer__contacts::before {
        content: "";
        position: absolute;
        top: -15px;
        left: -4vw;
        z-index: -1;
        border-radius: 17px;
        width: calc(100% + 8vw);
        height: calc(100% + 2.67vw);
        background: #098594
    }
}

.footer__contacts-col {
    margin-right: 5.56vw
}

.footer__contacts-col:last-child {
    padding-top: .69vw;
    margin-right: 0
}

.footer__title {
    display: block;
    margin-bottom: .56vw;
    font-weight: 600;
    font-size: 1.39vw
}

.footer__info-socials {
    margin-top: .42vw;
    display: flex
}

@media (max-width:800px) {
    .footer__contacts-col {
        margin-right: 0
    }

    .footer__contacts-col:last-child {
        margin-top: 5.33vw;
        padding-top: 0
    }

    .footer__title {
        margin-bottom: 1.87vw;
        font-size: 5.33vw
    }

    .footer__info-socials {
        margin-top: 1.6vw
    }
}

.footer__info-social {
    margin-right: .69vw
}

.footer__info-social a {
    background: #333
}

.footer__info-social a:hover {
    background: rgb(25.5, 25.5, 25.5)
}

.footer__info-social:last-child {
    margin-right: 0
}

.footer__info-block {
    margin-bottom: .97vw
}

.footer__info-block:last-child {
    margin-bottom: 0
}

.footer__info-title {
    font-weight: 300;
    font-size: .83vw;
    color: rgba(255, 255, 255, .7)
}

@media (max-width:800px) {
    .footer__info-social {
        margin-right: 2.67vw
    }

    .footer__info-block {
        margin-bottom: 5.33vw
    }

    .footer__info-title {
        font-size: 3.2vw;
        line-height: 1
    }
}

.footer__info-link {
    font-weight: 500;
    font-size: 1.32vw;
    color: #fff;
    transition: color .3s
}

.footer__info-link:hover {
    color: rgba(255, 255, 255, .7)
}

@media (max-width:800px) {
    .footer__info-link {
        font-size: 5.07vw
    }
}

.footer__info-text {
    font-style: normal;
    font-weight: 400;
    font-size: .9vw
}

.footer::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    border-top-left-radius: 1.32vw;
    width: 45.5vw;
    height: calc(100% - 1.39vw);
    background: #098594
}

.request-modal__window {
    display: flex;
    overflow: hidden;
    border-radius: .69vw;
    max-width: 55.56vw;
    background: #fff
}

@media (max-width:800px) {
    .footer__info-text {
        font-size: 3.73vw
    }

    .footer::after {
        display: none
    }

    .request-modal__window {
        border-radius: 2.67vw;
        max-width: 92vw
    }
}

.request-modal__img {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: flex-start;
    border-radius: .69vw;
    max-width: 15.76vw;
    width: 100%;
    flex-shrink: 0
}

.request-modal__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.request-modal__content {
    padding: 5vw 2.78vw;
    flex: 1
}

.request-modal__text {
    margin-top: 1.04vw;
    max-width: 29.17vw;
    font-size: 1.11vw
}

@media (max-width:800px) {
    .request-modal__img {
        display: none
    }

    .request-modal__content {
        padding: 8.53vw 6.4vw
    }

    .request-modal__text {
        margin-top: 3.73vw;
        max-width: 80vw;
        font-size: 3.2vw
    }
}

.request-modal__form {
    margin-top: 1.74vw
}

.request-modal__input-wrapper {
    position: relative;
    max-width: 22.22vw
}

.request-modal__input-icon {
    position: absolute;
    top: 50%;
    left: .14vw;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    border-left: .07vw solid transparent;
    border-right: .07vw solid rgba(51, 51, 51, .55);
    width: 3.68vw;
    height: 3.13vw
}

.request-modal__input-icon img {
    width: 1.25vw;
    height: auto;
    opacity: .55
}

@media (max-width:800px) {
    .request-modal__form {
        margin-top: 4vw
    }

    .request-modal__input-wrapper {
        max-width: 58.67vw
    }

    .request-modal__input-icon {
        left: .53vw;
        border-left-width: 1px;
        border-right-width: 1px;
        width: 8.53vw;
        height: 6.67vw
    }

    .request-modal__input-icon img {
        width: 2.93vw
    }
}

.request-modal__input {
    border: 0;
    border-radius: .28vw;
    padding: 1.6vw 1.39vw 1.81vw 5.28vw;
    width: 100%;
    font-weight: 400;
    font-size: 1.46vw;
    color: rgba(51, 51, 51, .55);
    background: rgba(7, 57, 55, .05)
}

.request-modal__input:focus {
    outline: 0
}

@media (max-width:800px) {
    .request-modal__input {
        padding: 4.27vw 3.73vw 4.27vw 11.2vw;
        font-size: 3.2vw
    }
}

.request-modal__btn {
    margin-top: .83vw;
    border-radius: .28vw;
    padding: 1.81vw 2.78vw;
    width: 100%;
    max-width: 22.22vw;
    font-weight: 400;
    font-size: 1.25vw;
    color: #fff;
    background: rgba(6, 159, 178, .6)
}

@media (max-width:800px) {
    .request-modal__btn {
        margin-top: 1.6vw;
        border-radius: 1.07vw;
        padding: 4vw 8.53vw;
        max-width: 58.67vw;
        font-size: 3.2vw
    }
}

.request-modal__caption {
    margin-top: 1.74vw;
    max-width: 24.65vw;
    font-size: 1.04vw;
    color: rgba(38, 38, 38, .5)
}

.request-modal__caption a {
    color: rgba(38, 38, 38, .8)
}

.hero-rent {
    position: relative;
    overflow: hidden;
    padding: .42vw 0 2.78vw
}

@media (max-width:800px) {
    .request-modal__caption {
        margin-top: 2.67vw;
        max-width: 74.67vw;
        font-size: 2.67vw
    }

    .hero-rent {
        padding: 2.67vw 0 5.33vw
    }
}

.hero-rent__window {
    display: flex;
    border-radius: .69vw;
    padding: 4.17vw 3.82vw 3.06vw;
    background: linear-gradient(140deg, #ecfdff -20%, #098594 110%)
}

@media (max-width:800px) {
    .hero-rent__window {
        border-radius: 2.67vw;
        padding: 5.33vw 4vw 6.4vw;
        display: block
    }
}

.hero-rent__content {
    position: relative;
    display: flex;
    border-radius: 1.04vw;
    padding: 2.78vw 1.74vw 3.47vw;
    width: 100%;
    background: #fbfbfb
}

.hero-rent__img {
    position: absolute;
    left: 0;
    bottom: 0;
    display: flex;
    width: 27.36vw
}

.hero-rent__img img {
    width: 100%;
    height: auto
}

@media (max-width:800px) {
    .hero-rent__content {
        border-radius: 4vw;
        padding: 9.07vw 4.27vw 4.27vw
    }

    .hero-rent__img {
        left: unset;
        right: 2.67vw;
        bottom: -6.4vw;
        width: 44.8vw
    }
}

.hero-rent__text-content {
    margin-left: auto;
    width: 100%;
    max-width: 44.1vw;
    flex-shrink: 0
}

.hero-rent__text {
    margin-top: 1.04vw;
    font-size: 1.25vw
}

.hero-rent__text span {
    font-weight: 500
}

@media (max-width:800px) {
    .hero-rent__text-content {
        max-width: unset
    }

    .hero-rent__text {
        margin-top: 5.6vw;
        font-size: 4vw;
        line-height: 1.25
    }
}

.hero-rent__btn {
    margin-top: 1.39vw;
    font-size: .97vw
}

.hero-rent__btn .btn__inner {
    padding: 1.32vw 3.75vw
}

@media (max-width:800px) {
    .hero-rent__btn {
        margin-top: 5.07vw;
        font-size: 3.47vw
    }

    .hero-rent__btn .btn__inner {
        padding: 4.8vw 13.33vw
    }
}

.hero-rent__features {
    margin-top: 2.08vw;
    display: flex;
    justify-content: space-between;
    color: #000
}

.hero-rent__feature {
    max-width: 10.07vw;
    font-weight: 300;
    font-size: .9vw
}

.hero-rent__feature b {
    font-weight: 400;
    font-size: 2.08vw;
    display: block
}

.hero-rent__feature:nth-child(3) {
    max-width: 11.11vw
}

@media (max-width:800px) {
    .hero-rent__features {
        margin-top: 5.33vw;
        flex-wrap: wrap;
        justify-content: flex-start;
        row-gap: 4.8vw;
        -moz-column-gap: 2.67vw;
        column-gap: 2.67vw
    }

    .hero-rent__feature {
        max-width: 33.33vw;
        font-size: 2.93vw
    }

    .hero-rent__feature b {
        font-size: 5.87vw
    }

    .hero-rent__feature:nth-child(3) {
        order: 1;
        max-width: unset;
        margin-top: -2.67vw;
        width: 100%
    }

    .hero-rent__feature:nth-child(3) p {
        max-width: 26.67vw
    }
}

.hero-rent__decor {
    position: absolute;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: flex-start;
    width: 53.89vw
}

.hero-rent__decor picture {
    display: contents
}

.hero-rent__decor img {
    width: 100%;
    height: auto
}

.hero-rent__companies {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 2.43vw;
    gap: .69vw;
    max-width: 35.76vw
}

.hero-rent__company {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: .69vw;
    height: 5.14vw;
    background: #dde3e3
}

.hero-rent__company img {
    max-width: 5vw;
    max-height: 3.75vw
}

.hero-rent__company--lg img {
    max-width: 6.25vw;
    max-height: 4.17vw
}

.hero-rent__company--sm img {
    max-width: 2.5vw;
    max-height: 3.47vw
}

.hero-rent__company--xl img {
    max-width: 6.67vw;
    max-height: 4.44vw
}

.hero-rent--decored .hero-rent__window {
    padding: 4.17vw 3.32vw 3.06vw
}

.hero-rent--decored .hero-rent__content {
    max-width: 45.69vw
}

.hero-rent--decored .hero-rent__btn {
    font-size: 1.04vw
}

.hero-rent--decored .discounts__circle {
    top: unset;
    left: unset;
    right: -1.25vw;
    bottom: 8.33vw;
    padding: .35vw;
    width: 10.21vw;
    height: 10.21vw;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .15)
}

.hero-rent--decored .discounts__circle-img {
    width: 8.75vw
}

.hero-rent--decored .discounts__circle-icon {
    width: 5.35vw;
    height: auto
}

.traits {
    padding: 4.86vw 0 3.13vw
}

@media (max-width:800px) {
    .hero-rent__decor {
        width: 77vw;
        bottom: 10.67vw
    }

    .hero-rent__companies {
        margin-top: 7.47vw;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1.87vw;
        max-width: 48.53vw
    }

    .hero-rent__company {
        border-radius: 1.6vw;
        height: 13.87vw
    }

    .hero-rent__company img {
        max-width: 13.6vw;
        max-height: 10.67vw
    }

    .hero-rent__company--lg img {
        max-width: 17.07vw;
        max-height: 13.33vw
    }

    .hero-rent__company--sm img {
        max-width: 6.67vw;
        max-height: 10.67vw
    }

    .hero-rent__company--xl img {
        max-width: 18.67vw;
        max-height: 16vw
    }

    .hero-rent--decored .hero-rent__window {
        padding-bottom: 16vw
    }

    .hero-rent--decored .hero-rent__content {
        padding: 11.07vw 4.27vw 40vw;
        max-width: unset
    }

    .hero-rent--decored .hero-rent__title {
        font-size: 7.47vw
    }

    .hero-rent--decored .hero-rent__text {
        display: none
    }

    .hero-rent--decored .hero-rent__btn {
        font-size: 3.73vw
    }

    .hero-rent--decored .discounts__circle {
        display: flex;
        right: unset;
        left: 14.93vw;
        bottom: 8.53vw;
        padding: 1.07vw;
        width: 27.73vw;
        height: 27.73vw
    }

    .hero-rent--decored .discounts__circle-img {
        width: 23.47vw
    }

    .hero-rent--decored .discounts__circle-icon {
        width: 14.4vw
    }

    .traits {
        padding: 8vw 0
    }

    .traits__title {
        font-size: 8vw
    }
}

.traits__items {
    margin-top: 1.94vw;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25vw
}

.traits__item {
    border-radius: 1.04vw;
    padding: 3.89vw 3.75vw 3.13vw;
    font-weight: 400;
    font-size: 1.74vw;
    background: #f3fcfd
}

@media (max-width:800px) {
    .traits__items {
        margin-top: 6.4vw;
        display: block
    }

    .traits__item {
        margin-top: 2.13vw;
        border-radius: 1.33vw;
        padding: 8vw 6.67vw 6.4vw;
        font-size: 4.8vw
    }

    .traits__item:first-child {
        margin-top: 0
    }
}

.traits__icon {
    display: flex;
    align-items: flex-start;
    margin-bottom: 2.08vw;
    width: 2.92vw
}

.traits__icon img {
    width: 100%;
    height: auto
}

.traits__text {
    display: flex;
    align-items: center;
    max-width: 28.82vw;
    min-height: 4.72vw
}

.team {
    padding: 2.78vw 0
}

.team__title {
    text-align: center
}

.team__items {
    margin-top: 3.13vw
}

.team__items .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.39vw
}

@media (max-width:800px) {
    .traits__icon {
        margin-bottom: 3.2vw;
        width: 6.4vw
    }

    .traits__text {
        max-width: 80vw;
        min-height: 12.8vw
    }

    .team {
        padding: 5.33vw 0
    }

    .team__title {
        font-size: 8vw
    }

    .team__items {
        margin-top: 6.4vw;
        padding-bottom: 8.53vw
    }

    .team__items .swiper-wrapper {
        display: flex;
        gap: initial
    }
}

.team__item {
    position: relative;
    overflow: hidden;
    border-radius: 1.04vw;
    background: #f3fcfd
}

.team__item:nth-child(n+4) {
    display: none
}

@media (max-width:800px) {
    .team__item {
        border-radius: 3.73vw
    }
}

.team__img {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    border-radius: 1.04vw;
    width: 100%;
    height: 20.63vw;
    background: #f9f9f9
}

.team__img img {
    max-width: 100%;
    max-height: 100%
}

.team__content {
    padding: 1.74vw 2.08vw 3.82vw;
    text-align: center
}

.team__subtitle {
    font-weight: 400;
    font-size: 2.43vw
}

@media (max-width:800px) {
    .team__img {
        border-radius: 3.73vw;
        height: 72vw
    }

    .team__content {
        padding: 6.4vw 5.33vw 9.33vw
    }

    .team__subtitle {
        font-size: 8.53vw
    }
}

.team__text {
    margin-top: .35vw;
    font-weight: 300;
    font-size: 1.74vw
}

.map {
    padding: 1.74vw 0
}

@media (max-width:800px) {
    .team__text {
        margin-top: 0;
        font-size: 6.13vw
    }

    .team__pagination {
        --swiper-pagination-bullet-size: 2.4vw
    }

    .team__pagination .swiper-pagination-bullet-active {
        width: 9.07vw
    }

    .map {
        padding: 12.27vw 0
    }

    .map__title {
        font-size: 8.27vw
    }
}

.map__item {
    position: relative;
    overflow: hidden;
    margin-top: 1.74vw;
    border-radius: 1.74vw;
    height: 51.53vw
}

.quiz {
    padding: 4.03vw 0 4vw
}

@media (max-width:800px) {
    .map__item {
        margin-top: 5.33vw;
        border-radius: 2.67vw;
        height: 109.33vw
    }

    .quiz {
        padding: 6.67vw 0
    }
}

.quiz__main-title {
    margin: 0 auto;
    text-align: center;
    max-width: 80%
}

.quiz__descr {
    font-weight: 300;
    font-size: 1.74vw
}

.quiz__wrapper {
    position: relative;
    margin-top: 2.55vw;
    padding-right: 1.5vw;
    transition: .25s linear;
    display: flex
}

@media (max-width:800px) {
    .quiz__main-title {
        max-width: 98%;
        line-height: 1.2
    }

    .quiz__descr {
        font-size: 3.73vw
    }

    .quiz__wrapper {
        margin-top: 8vw;
        padding-right: 0
    }
}

.quiz__item {
    width: 100%;
    max-width: unset;
    display: none
}

.quiz__item.active {
    display: flex
}

.quiz__item--last {
    border-radius: 1.74vw;
    background: #fff
}

.quiz__item--last .quiz__content {
    position: relative;
    padding: 1.39vw 3.82vw 2.08vw;
    max-width: 100%;
    opacity: 0;
    transition: opacity .25s linear
}

.quiz__item--last .quiz__progress-active {
    background: #098594
}

.quiz__item--last .quiz__progress {
    color: #fff
}

@media (max-width:800px) {
    .quiz__item.active {
        display: block
    }

    .quiz__item--last {
        border-radius: 4vw
    }

    .quiz__item--last .quiz__content {
        padding: 4.8vw
    }
}

.quiz__content {
    display: flex;
    flex-direction: column;
    border-radius: 1.74vw;
    padding: 1.39vw 2.64vw 3.75vw;
    min-height: 34.03vw;
    width: 100%;
    background: #f3fcfd
}

@media (max-width:800px) {
    .quiz__content {
        border-radius: 4vw;
        padding: 4.8vw 4.8vw 9.07vw;
        max-width: 100%;
        min-height: 104vw
    }
}

.quiz__progress {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 1.74vw;
    height: 2.64vw;
    font-weight: 300;
    font-size: 1.04vw;
    color: #252f38;
    background: #f8f8f8
}

.quiz__progress-active {
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 1.74vw;
    height: 100%;
    background: #098594;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    pointer-events: none;
    transition: background .3s .15s, width .3s .15s;
    opacity: 1 !important
}

.quiz__progress span:last-child {
    position: relative;
    z-index: 10
}

@media (max-width:800px) {
    .quiz__progress {
        border-radius: 3vw;
        padding: 1vw 3vw;
        font-size: 3.4vw;
        height: 8vw
    }
}

.quiz__title {
    margin-top: 2.08vw;
    padding: 0 1.39vw;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-weight: 400;
    font-size: 1.74vw;
    opacity: 0;
    transition: opacity .45s .15s
}

.quiz__title.active {
    opacity: 1
}

@media (max-width:800px) {
    .quiz__title {
        margin-top: 8vw;
        font-size: 4.7vw;
        align-items: center;
        flex-direction: column
    }
}

.quiz__question {
    margin-right: 1.67vw;
    border: 1px solid #098594;
    border-radius: 1.74vw;
    padding: .28vw 1.39vw;
    font-weight: 300;
    font-size: .9vw
}

@media (max-width:800px) {
    .quiz__question {
        margin-right: 0;
        margin-bottom: 2.25vw;
        border-radius: 4vw;
        padding: 1.2vw 3.5vw;
        font-size: 3.15vw
    }
}

.quiz__checkboxes {
    margin-top: 2.43vw;
    margin-bottom: 2.43vw;
    padding: 0 1.39vw;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: .7vw 1.2vw;
    opacity: 0;
    transition: opacity .45s .15s
}

.quiz__checkboxes.active {
    opacity: 1
}

@media (max-width:800px) {
    .quiz__checkboxes {
        margin-top: 8vw;
        margin-bottom: 3vw;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 2vw
    }
}

.quiz__checkbox {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-weight: 300;
    font-size: 1.18vw;
    cursor: pointer
}

.quiz__checkbox .quiz__checkbox-check {
    background: #e7eaf6
}

.quiz__checkbox input {
    position: absolute;
    opacity: 0;
    transform: scale(0)
}

.quiz__checkbox input:checked~.quiz__checkbox-img {
    border-color: #098594
}

.quiz__checkbox input:checked~.quiz__checkbox-check {
    background: #098594
}

.quiz__checkbox span {
    text-align: center
}

.quiz__checkbox:last-child {
    margin-right: 0
}

@media (max-width:800px) {
    .quiz__checkbox {
        margin: 0;
        font-size: 3vw
    }
}

.quiz__checkbox-img {
    position: relative;
    overflow: hidden;
    margin-bottom: 1.04vw;
    border: .14vw solid transparent;
    border-radius: .42vw;
    width: 15.97vw;
    height: 10.42vw;
    filter: drop-shadow(7px 4px 15px rgba(0, 0, 0, .03));
    transition: border-color .3s;
    display: flex;
    align-items: flex-start
}

.quiz__checkbox-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media (max-width:800px) {
    .quiz__checkbox-img {
        margin-bottom: 1.6vw;
        border-radius: 3.04vw;
        border-width: .53vw;
        width: 38vw;
        height: 25vw
    }
}

.quiz__checkbox-check {
    position: absolute;
    top: 9.38vw;
    border-radius: 50%;
    width: 1.81vw;
    height: 1.81vw;
    background: #098594;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .3s
}

.quiz__checkbox-check img {
    width: 43.48%;
    height: auto
}

.quiz__controls {
    margin-top: auto;
    display: flex;
    opacity: 0;
    transition: opacity .45s .15s
}

.quiz__controls.active {
    opacity: 1
}

.quiz__control-wrapper {
    position: relative;
    margin-left: auto;
    cursor: pointer
}

@media (max-width:800px) {
    .quiz__checkbox-check {
        top: 22vw;
        width: 5vw;
        height: 5vw
    }

    .quiz__control-wrapper {
        padding-left: 2.67vw;
        padding-right: 2.67vw
    }

    .quiz__control-caption {
        display: none
    }
}

.quiz__control-caption {
    position: absolute;
    top: -.69vw;
    left: 50%;
    transform: translateX(-50%) translateY(-100%);
    width: 120%;
    padding: .78125vw;
    border-radius: 1.81vw;
    background-color: #fff;
    box-shadow: 0 0 .5208333333vw rgba(0, 0, 0, .25);
    font-size: .8333333333vw;
    line-height: .9375vw;
    pointer-events: none;
    text-align: center;
    visibility: hidden;
    opacity: 0;
    transition: opacity .3s, visibility .3s
}

.quiz__control {
    border-radius: .35vw;
    padding: 1.11vw 2.64vw;
    font-size: 1.04vw;
    line-height: 1;
    color: #fff;
    background: #098594;
    display: flex;
    align-items: center;
    transition: background .3s
}

.quiz__control img {
    margin-left: 1.39vw;
    width: .69vw;
    fill: #fff;
    transform: rotate(180deg)
}

.quiz__control--prev img {
    margin-left: 0;
    margin-right: 1.39vw;
    transform: rotate(0)
}

.quiz__control--next[disabled]:hover~.quiz__control-caption {
    visibility: visible;
    opacity: 1
}

.quiz__choices {
    margin-top: 2.43vw;
    margin-bottom: 2.43vw;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5vw 2vw;
    opacity: 0;
    transition: opacity .45s .15s
}

.quiz__choices.active {
    opacity: 1
}

.quiz__choices--col {
    grid-template-columns: 1fr;
    gap: .8vw
}

@media (max-width:800px) {
    .quiz__control {
        border-radius: 1.33vw;
        padding: 3.47vw 7.73vw;
        font-size: 2.93vw
    }

    .quiz__control img {
        margin-left: 2.67vw;
        width: 2.13vw;
        flex-shrink: 0
    }

    .quiz__control--prev img {
        margin-left: 0;
        margin-right: 5.33vw
    }

    .quiz__choices {
        margin-top: 9.33vw;
        margin-bottom: 9.33vw;
        display: block
    }

    .quiz__choice {
        margin-bottom: 3vw
    }
}

.quiz__choice {
    position: relative;
    display: flex;
    align-items: center
}

.quiz__choice input {
    position: absolute;
    top: 0;
    left: 0;
    transform: scale(0);
    opacity: 0
}

.quiz__choice input:checked~span {
    border-color: #e7eaf6
}

.quiz__choice input:checked~span .quiz__checkbox-check {
    background: #098594
}

.quiz__choice-inner {
    display: flex;
    align-items: center;
    border: .07vw solid transparent;
    border-radius: 1.74vw;
    padding: .8vw 2.01vw;
    width: 100%;
    font-weight: 300;
    font-size: 1.04vw;
    color: #000;
    background: #fff;
    cursor: pointer;
    transition: border-color .3s
}

.quiz__choice-inner .quiz__checkbox-check {
    position: static;
    margin-right: 1.67vw;
    width: 2.08vw;
    height: 2.08vw;
    background: #e7eaf6
}

@media (max-width:800px) {
    .quiz__choice-inner {
        border-radius: 3.5vw;
        padding: 1.8vw 3.5vw;
        font-size: 3.2vw
    }

    .quiz__choice-inner .quiz__checkbox-check {
        width: 5vw;
        height: 5vw
    }
}

.quiz__loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fbfbfb;
    border-radius: 1.94vw;
    box-shadow: 0 0 1.0416666667vw rgba(0, 0, 0, .25);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    transition: .15s;
    z-index: 100;
    opacity: 0;
    visibility: hidden
}

.quiz__loader.open {
    visibility: visible;
    opacity: 1
}

.quiz__loader-circle {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10.4166666667vw;
    height: 10.4166666667vw;
    border-radius: 50%;
    margin-bottom: 2.6041666667vw;
    border: .5208333333vw solid #098594;
    border-top: .5208333333vw solid transparent;
    animation: 1s linear infinite rotation
}

.quiz__profile {
    border-radius: .69vw;
    margin-left: 2.08vw;
    padding: 1.81vw 1.32vw 3.47vw;
    width: 100%;
    max-width: 17.22vw;
    color: #fff;
    text-align: center;
    background: #098594;
    display: flex;
    flex-direction: column;
    align-items: center
}

.quiz__profile-img {
    position: relative;
    overflow: hidden;
    border-radius: 50%;
    width: 10.42vw;
    height: 10.42vw;
    background: #fff
}

.quiz__profile-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media (max-width:800px) {
    .quiz__profile {
        margin-top: 4vw;
        margin-left: 0;
        padding: 4vw;
        max-width: 100%;
        display: none
    }

    .quiz__profile-img {
        width: 33.01vw;
        height: 33.01vw
    }
}

.quiz__profile-title {
    margin-top: 1.04vw;
    font-weight: 400;
    font-size: 1.74vw;
    line-height: 1.1
}

@media (max-width:800px) {
    .quiz__profile-title {
        font-size: 4vw
    }
}

.quiz__profile-text {
    margin-top: 0;
    font-size: .97vw
}

.quiz__profile-journal {
    margin-top: -.69vw;
    width: 12.08vw;
    display: flex;
    align-items: flex-start
}

.quiz__profile-journal img {
    position: relative;
    width: 100%;
    height: auto
}

@media (max-width:800px) {
    .quiz__profile-journal {
        justify-content: center;
        height: 25vw
    }

    .quiz__profile-journal img {
        top: -5%;
        width: 40vw
    }
}

.quiz__ready {
    margin-top: 3vw;
    display: flex;
    align-items: center;
    font-size: 1.46vw;
    font-weight: 300
}

.quiz__ready .quiz__checkbox-check {
    margin-right: .97vw;
    position: static;
    width: 2.08vw;
    height: 2.08vw
}

@media (max-width:800px) {
    .quiz__ready {
        margin-top: 7vw;
        justify-content: center;
        font-size: 4vw
    }

    .quiz__ready .quiz__checkbox-check {
        width: 6vw;
        height: 6vw;
        margin-right: 2vw
    }
}

.quiz__final-title {
    margin-top: 3vw;
    font-weight: 400;
    font-size: 2.43vw
}

@media (max-width:800px) {
    .quiz__final-title {
        margin-top: 5.5vw;
        padding: 0 2vw;
        text-align: center;
        font-size: 5.5vw
    }
}

.quiz__final-choices {
    margin-top: 2vw;
    display: flex
}

@media (max-width:800px) {
    .quiz__final-choices {
        margin-top: 4.5vw;
        justify-content: center
    }
}

.quiz__send-phone {
    position: relative;
    margin-top: 2.5vw
}

.quiz__final-choice {
    position: relative;
    margin-right: 1.39vw;
    cursor: pointer
}

.quiz__final-choice input {
    position: absolute;
    transform: scale(0);
    opacity: 0;
    visibility: hidden
}

.quiz__final-choice input:checked~.quiz__final-label {
    border-color: #098594
}

.quiz__final-choice input:checked~.quiz__final-label .quiz__final-social {
    background: #098594
}

.quiz__final-choice:last-child {
    margin-right: 0
}

@media (max-width:800px) {
    .quiz__send-phone {
        margin-top: 4vw;
        padding: 0 3vw
    }

    .quiz__send-phone .consult__language-flag {
        top: 6vw;
        left: 4.5vw;
        width: 6vw;
        height: 6vw
    }

    .quiz__final-choice {
        margin-right: 4vw
    }
}

.quiz__final-label {
    border: .07vw solid #e7eaf6;
    border-radius: 2.43vw;
    padding: .49vw 1.46vw;
    min-width: 15.07vw;
    font-weight: 300;
    font-size: 1.46vw;
    display: flex;
    align-items: center;
    transition: border-color .3s
}

@media (max-width:800px) {
    .quiz__final-label {
        border-radius: 10.67vw;
        padding: 1.6vw 4.27vw;
        font-size: 3vw
    }
}

.quiz__final-social {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: .9vw;
    border-radius: 50%;
    width: 3.89vw;
    height: 3.89vw;
    background: #e7eaf6;
    transition: background .3s
}

.quiz__final-social img {
    width: 1.8vw;
    height: auto
}

.quiz__send-phone {
    display: flex;
    align-items: center
}

@media (max-width:800px) {
    .quiz__final-social {
        margin-right: 2vw;
        width: 8.5vw;
        height: 8.5vw
    }

    .quiz__final-social img {
        width: 4vw
    }

    .quiz__send-phone {
        display: block
    }

    .quiz__send-field {
        max-width: unset
    }
}

.quiz__send-btn {
    margin: 0 0 0 1.04vw;
    max-width: 18.75vw;
    color: #fff
}

@media (max-width:800px) {
    .quiz__send-btn {
        margin-top: 3vw;
        margin-left: 0;
        max-width: unset;
        width: 100%;
        line-height: 1.5
    }
}

.quiz__decor-wrapper {
    position: absolute;
    right: 2vw;
    bottom: 0;
    width: 25.69vw
}

@media (max-width:800px) {
    .quiz__decor-wrapper {
        display: none;
        width: 30vw
    }
}

.quiz__decor {
    display: flex;
    align-items: flex-start;
    width: 100%;
    height: auto
}

.quiz__decor img {
    width: 100%;
    height: auto
}

.quiz__permission {
    margin-top: 1.39vw;
    max-width: 25.35vw;
    font-size: 1.04vw;
    color: grey
}

.quiz__permission a {
    color: #343434;
    transition: opacity .3s
}

.quiz__permission a:hover {
    opacity: .7
}

@media (max-width:800px) {
    .quiz__permission {
        margin-top: 3.5vw;
        padding: 0 8vw;
        font-size: 2.75vw;
        max-width: 80vw;
        text-align: center
    }
}

@keyframes progress_bar {
    0% {
        background-position: -52.0833333333vw center
    }

    50% {
        background-position: 0 center
    }

    100% {
        background-position: 52.0833333333vw center
    }
}

@keyframes rotation {
    0% {
        transform: translate(-50%, -50%) rotate(0)
    }

    100% {
        transform: translate(-50%, -50%) rotate(360deg)
    }
}

.our-work {
    padding: 1.04vw 0
}

.our-work__title {
    font-size: 3.82vw
}

.our-work__items {
    margin-top: 1.74vw;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2.36vw 1.67vw
}

@media (max-width:800px) {
    .our-work {
        padding: 8vw 0
    }

    .our-work__title {
        font-size: 8.53vw
    }

    .our-work__items {
        margin-top: 5.33vw;
        display: block
    }
}

.our-work__item {
    display: flex;
    flex-direction: column;
    border-radius: .69vw;
    padding: 2.78vw 1.39vw 2.64vw 1.18vw;
    font-size: 1.25vw;
    color: #333;
    background: rgba(226, 248, 251, .4);
    transition: color .3s, background .3s
}

.our-work__item:nth-child(n+4) {
    padding-bottom: 3.75vw
}

.our-work__item--start .our-work__text {
    margin-top: 0
}

.our-work__item:hover {
    color: #fff;
    background: #098594
}

@media (max-width:800px) {
    .our-work__item {
        margin-top: 4.8vw;
        border-radius: 2.4vw;
        padding: 9.07vw 6.13vw 6.4vw 6.4vw;
        font-size: 4.27vw
    }

    .our-work__item:first-child {
        margin-top: 0
    }

    .our-work__item:nth-child(n+3) {
        padding-bottom: 12.8vw
    }

    .our-work__item:nth-child(n+3) .our-work__subtitle {
        margin-bottom: 4vw
    }

    .our-work__item:last-child {
        padding-right: 4vw
    }

    .our-work__item:last-child .our-work__text {
        min-height: unset
    }

    .our-work__item:hover .our-work__link {
        transform: translate(0);
        background: #fff
    }

    .our-work__item:hover .our-work__link img {
        opacity: 1
    }
}

.our-work__subtitle {
    margin-bottom: 1.25vw;
    font-weight: 600;
    font-size: 1.74vw;
    line-height: 1.05
}

@media (max-width:800px) {
    .our-work__subtitle {
        margin-bottom: 3.2vw;
        font-size: 6.13vw;
        line-height: 1.3
    }
}

.our-work__text {
    margin-top: auto;
    margin-bottom: 1.04vw;
    min-height: 3.82vw
}

.our-work__text:last-child {
    margin-bottom: 0
}

@media (max-width:800px) {
    .our-work__text {
        margin-bottom: 0;
        min-height: 10.67vw
    }

    .our-work__text br {
        display: none
    }
}

.our-work__link {
    font-weight: 400;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
    display: flex;
    min-height: 2.43vw;
    transition: transform .3s, background .3s
}

.our-work__link img {
    display: none;
    margin-left: 2.67vw;
    width: 4.8vw;
    opacity: 0;
    transition: opacity .3s
}

@media (max-width:800px) {
    .our-work__link {
        margin-top: 2.67vw;
        border-radius: 1.07vw;
        padding: 4.53vw 8.53vw;
        transform: translateX(-8.53vw);
        font-size: 4vw;
        color: #098594;
        min-height: unset;
        text-decoration: underline;
        align-self: flex-start
    }

    .our-work__link img {
        display: block
    }
}

.earn-more {
    padding: 2.78vw 0
}

.earn-more__title {
    position: relative;
    max-width: 51.39vw
}

.earn-more__title span {
    padding: 0 .56vw
}

@media (max-width:800px) {
    .earn-more {
        margin-top: -2.67vw;
        padding: 2.67vw 0 8vw
    }

    .earn-more__title {
        padding: 0 1.33vw;
        max-width: unset;
        text-align: center
    }

    .earn-more__title br {
        display: none
    }

    .earn-more__title span {
        padding: 0 1.6vw
    }
}

.earn-more__wrapper {
    display: flex;
    align-items: flex-start;
    margin-top: 3.13vw
}

@media (max-width:800px) {
    .earn-more__wrapper {
        margin-top: 5.33vw;
        display: block
    }
}

.earn-more__img {
    display: flex;
    align-items: flex-start;
    margin-right: 3.89vw;
    width: 36.11vw;
    flex-shrink: 0;
    filter: drop-shadow(2px 2px 17px rgba(0, 0, 0, .15))
}

.earn-more__img img {
    width: 100%;
    height: auto
}

.earn-more__content {
    padding: 3.75vw 0 0
}

.earn-more__subtitle {
    line-height: 1.3
}

@media (max-width:800px) {
    .earn-more__img {
        margin-right: 0;
        width: 100%;
        height: auto
    }

    .earn-more__content {
        padding: 6.13vw 0 0
    }

    .earn-more__subtitle {
        font-size: 5.33vw;
        text-align: center
    }
}

.earn-more__btn {
    margin-top: 1.39vw;
    width: 100%;
    max-width: 23.61vw;
    font-size: 1.46vw
}

.earn-more__btn .btn__inner {
    padding: 1.94vw 3.61vw
}

.tarifs {
    padding: 4.86vw 0 1.39vw
}

@media (max-width:800px) {
    .earn-more__btn {
        display: block;
        margin: 7.47vw auto 0;
        max-width: 65.33vw;
        font-size: 4.27vw
    }

    .earn-more__btn .btn__inner {
        padding: 5.6vw 8vw 6.4vw
    }

    .tarifs {
        position: relative;
        overflow: hidden;
        padding: 15.47vw 0
    }
}

.tarifs__title {
    font-size: 3.82vw;
    text-align: center
}

.tarifs__items {
    overflow: initial;
    padding-top: 2.08vw
}

.tarifs__items .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.39vw
}

@media (max-width:800px) {
    .tarifs__title {
        font-size: 8.53vw
    }

    .tarifs__items {
        position: relative;
        left: -2.13vw;
        width: calc(100% + 4.27vw);
        overflow: hidden;
        padding: 8vw 2.13vw 10.67vw
    }

    .tarifs__items .swiper-wrapper {
        display: flex;
        gap: initial
    }

    .tarifs__items .swiper-slide {
        height: auto
    }
}

.tarifs__item {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: .69vw;
    padding: 1.67vw 1.94vw 2.22vw;
    font-size: 1.11vw;
    background: #f3fcfd
}

.tarifs__item--special {
    color: #fff;
    background: #098594
}

@media (max-width:800px) {
    .tarifs__item {
        border-radius: 2.67vw;
        padding: 5.87vw 6.93vw 5.33vw;
        font-size: 4vw
    }
}

.tarifs__top {
    border-bottom: 1px solid #333;
    padding-bottom: 1.39vw;
    text-align: center
}

.tarifs__subtitle {
    line-height: 1.45
}

.tarifs__text {
    margin-top: .83vw
}

@media (max-width:800px) {
    .tarifs__top {
        padding-bottom: 4.27vw
    }

    .tarifs__subtitle {
        font-size: 8.53vw
    }

    .tarifs__text {
        margin-top: 2.67vw;
        font-size: 3.73vw
    }
}

.tarifs__content {
    margin-bottom: .69vw;
    padding: 1.39vw .56vw
}

.tarifs__content p {
    margin: .83vw 0
}

.tarifs__content p:first-child {
    margin-top: 0
}

.tarifs__content p:last-child {
    margin-bottom: 0
}

.tarifs__content b {
    font-weight: 600
}

.tarifs__content ul {
    margin: 1.25vw 0
}

.tarifs__content li {
    margin: .83vw 0
}

.tarifs__content li:last-child {
    margin-bottom: 0
}

.tarifs__bottom {
    margin-top: auto;
    min-height: 8.33vw
}

@media (max-width:800px) {
    .tarifs__content {
        margin-bottom: 0;
        padding: 4.8vw 2.13vw
    }

    .tarifs__content p {
        margin: 2.13vw 0
    }

    .tarifs__content p:last-child {
        margin-bottom: 0
    }

    .tarifs__content ul {
        margin: 3.73vw 0
    }

    .tarifs__content li {
        margin: 2.13vw 0
    }

    .tarifs__content li:last-child {
        margin-bottom: 0
    }

    .tarifs__bottom {
        min-height: 29.33vw
    }
}

.tarifs__btn {
    border-radius: 4px;
    border: 1px solid transparent;
    padding: 1.74vw 2.08vw;
    width: 100%;
    font-size: 1.39vw;
    text-align: center;
    background: #fff;
    transition: background .3s, color .3s, border-color .3s
}

.tarifs__btn:hover {
    border-color: #fff;
    color: #fff;
    background: #098594
}

@media (max-width:800px) {
    .tarifs__btn {
        padding: 5.87vw 8vw;
        font-size: 4.8vw
    }
}

.tarifs__link {
    margin-top: 1.25vw;
    display: block;
    font-weight: 600;
    font-size: 1.11vw;
    text-align: center;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    transition: opacity .3s
}

.tarifs__link:hover {
    opacity: .7
}

.tarifs__discount {
    top: -2.08vw;
    right: -1.94vw;
    left: unset;
    padding: .28vw;
    width: 8.33vw;
    height: 8.33vw
}

.tarifs__discount .discounts__circle-img {
    width: 7.22vw
}

.tarifs__discount .discounts__circle-icon {
    width: 2.22vw
}

@media (max-width:800px) {
    .tarifs__link {
        margin-top: 4.8vw;
        font-size: 4.27vw
    }

    .tarifs__discount {
        display: flex;
        top: -4vw;
        right: -2.93vw;
        padding: 1.07vw;
        width: 24vw;
        height: 24vw
    }

    .tarifs__discount .discounts__circle-img {
        width: 19.73vw
    }

    .tarifs__discount .discounts__circle-icon {
        width: 8.53vw;
        height: 8.53vw
    }
}

.tarifs__caption {
    margin-top: 2.78vw;
    display: block;
    font-size: 1.46vw;
    text-align: center
}

.banner {
    padding: 2.78vw 0
}

@media (max-width:800px) {
    .tarifs__caption {
        margin-top: 6.67vw;
        font-size: 4.27vw
    }

    .banner {
        position: relative;
        overflow: hidden;
        padding: 24vw 0
    }
}

.banner__wrapper {
    position: relative;
    border-radius: 1.11vw;
    padding: 3.47vw 2.5vw;
    background: #78c0c9
}

.banner__img {
    position: absolute;
    top: -1.25vw;
    left: -6.25vw;
    display: flex;
    align-items: flex-start;
    width: 27.5vw;
    transform: rotate(5deg)
}

.banner__img img {
    width: 100%;
    height: auto
}

.banner__content {
    margin-left: auto;
    font-size: 1.25vw;
    max-width: 57.5vw;
    color: #fff
}

.banner__title {
    line-height: 1.2
}

.banner__title>span {
    padding: 0 .56vw;
    background: #098594
}

.banner__title>span span {
    padding: 0;
    background: 0 0
}

.banner__list {
    margin-top: 1.94vw
}

@media (max-width:800px) {
    .banner__wrapper {
        border-radius: 4vw;
        padding: 62.67vw 5.07vw 13.33vw
    }

    .banner__wrapper::before {
        content: "";
        position: absolute;
        left: 50%;
        top: 0;
        border-radius: 50%;
        width: 89.87vw;
        height: 62.67vw;
        background: radial-gradient(circle at 50% 50%, #fff, transparent);
        transform: translateX(-50%);
        filter: blur(45px)
    }

    .banner__img {
        top: -20vw;
        left: 8vw;
        width: 65.33vw;
        transform: rotate(0)
    }

    .banner__content {
        max-width: unset;
        font-size: 4vw
    }

    .banner__title {
        padding: 0 2.67vw
    }

    .banner__title>span {
        padding: 0;
        background: 0 0
    }

    .banner__title>span span {
        margin: .53vw 0;
        padding: 0 1.6vw;
        background: #098594
    }

    .banner__list {
        margin-top: 4.27vw
    }
}

.banner__list-item {
    position: relative;
    margin-top: .83vw;
    padding-left: 1.6vw
}

.banner__list-item::before {
    content: "";
    position: absolute;
    top: .56vw;
    left: 0;
    border-radius: 50%;
    width: .35vw;
    height: .35vw;
    background: #098594
}

.banner__list-item b {
    font-weight: 600
}

.banner__list-item:first-child {
    margin-top: 0
}

@media (max-width:800px) {
    .banner__list-item {
        margin-top: 5.33vw;
        padding-left: 4.8vw;
        line-height: 1.2
    }

    .banner__list-item::before {
        top: 1.87vw;
        width: 1.33vw;
        height: 1.33vw
    }
}

.banner__bottom {
    margin-top: 2.08vw;
    display: flex;
    align-items: center
}

.banner__link {
  position: relative;
  z-index: 10;
  margin-right: 2.08vw;
  border-radius: .28vw;
  padding: 1.67vw 4.31vw;
  font-size: 1.25vw;
  color: #333;
  background: #fff;
  flex-shrink: 0;
  transition: opacity .3s,background .3s,color .3s,border-color .3s;
}

.banner__link::before {
  content: "";
  position: absolute;
  z-index: -3;
  bottom: -.69vw;
  left: 50%;
  transform: translate(-50%);
  width: 9.17vw;
  height: 1.94vw;
  background: rgba(9,133,148,.45);
  filter: blur(25px);
  pointer-events: none;
}

.banner__link:hover {
  opacity: .8;
  border-color: #fff;
  color: #fff;
  background: #098594;
}


.banner__caption {
    max-width: 29.17vw
}

@media (max-width:800px) {
    .banner__bottom {
        margin-top: 8vw;
        display: block
    }

    .banner__link {
        display: block;
        margin-top: 8vw;
        margin-right: 0;
        border-radius: 1.07vw;
        width: 100%;
        padding: 6.13vw 8vw;
        font-size: 4.8vw;
        text-align: center
    }

    .banner__caption {
        display: none
    }

    .text-page__title {
        font-size: 9.33vw
    }
}

.text-page {
    padding: 4.86vw 0 6.25vw
}

.text-page__title {
    font-weight: 600;
    word-break: break-all
}

.text-page__content {
    margin-top: 3.47vw;
    font-size: 1.25vw
}

.text-page__content h2 {
    margin: 2.08vw 0;
    font-weight: 500;
    font-size: 2.78vw
}

.text-page__content h3 {
    margin: 1.74vw 0;
    font-size: 2.36vw
}

.text-page__content h4 {
    margin: 1.74vw 0;
    font-size: 1.94vw
}

.text-page__content h5 {
    font-size: 1.67vw
}

.text-page__content p {
    margin: 1.39vw 0
}

.text-page__content q {
    quotes: "«""»""“""”"
}

.text-page__content q::before {
    content: open-quote
}

.text-page__content q::after {
    content: close-quote
}

.text-page__content blockquote {
    border-left: 4px solid #ccc;
    padding: .5em 1em;
    margin: 1em 0;
    background-color: #f9f9f9
}

.text-page__content table {
    border-collapse: collapse;
    width: 100%;
    margin: 1em 0;
    font-family: Arial, sans-serif
}

.text-page__content table td,
.text-page__content table th {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: left
}

.text-page__content table th {
    background-color: #f2f2f2;
    font-weight: 700
}

.text-page__content ol,
.text-page__content ul {
    margin: 1em 0;
    padding-left: 2em
}

.text-page__content ul li {
    list-style-type: disc;
    margin: .5em 0
}

.text-page__content ol li {
    list-style-type: decimal;
    margin: .5em 0
}

.text-page__content hr {
    border: 0;
    border-top: 1px solid #ccc;
    margin: 2em 0
}

.text-page__content a {
    color: #098594;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: color .3s
}

.text-page__content a:hover {
    color: #0c4644
}

@media (max-width:800px) {
    .text-page__content {
        margin-top: 9.33vw;
        font-size: 4.27vw
    }

    .text-page__content h2 {
        margin: 6.4vw 0;
        font-weight: 500;
        font-size: 7.47vw
    }

    .text-page__content h3 {
        margin: 5.33vw 0;
        font-size: 6.4vw
    }

    .text-page__content h4 {
        margin: 4.8vw 0;
        font-size: 5.33vw
    }

    .text-page__content h5 {
        font-size: 4.8vw
    }

    .text-page__content p {
        margin: 4.8vw 0
    }

    .text-page {
        padding: 10vw 0 16vw
    }
}

/* === blog.css === */
/* ============================================
   БЛОГ - СТИЛЬ КАК В КАТАЛОГЕ КВАРТИР
   ============================================ */

.blog-page {
    padding: 60px 0;
    min-height: 100vh;
    background: #fafafa;
}

.blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-bottom: 50px;
}

.blog-card {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 8px;
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}

.blog-card:hover {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

.blog-card__gallery {
    width: 100%;
    height: 200px;
    overflow: hidden;
    position: relative;
}

.blog-card__gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-card__content {
    padding: 20px;
}

.blog-card__title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 12px;
    line-height: 1.3;
    min-height: 46px;
}

.blog-card__title a {
    color: #333;
    text-decoration: none;
}

.blog-card__title a:hover {
    color: #098594;
}

.blog-card__text {
    font-size: 14px;
    line-height: 1.5;
    color: #666;
    margin-bottom: 16px;
    min-height: 63px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-card__meta {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    font-size: 13px;
    color: #999;
}

.blog-card__category {
    color: #098594;
    font-weight: 600;
}

.blog-card__category a {
    color: #098594;
    text-decoration: none;
}

.blog-card__link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #098594;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    padding: 10px 0;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    width: 100%;
    justify-content: center;
    transition: gap 0.2s ease;
}

.blog-card__link:hover {
    gap: 12px;
    color: #0C4644;
}

.blog-card__link svg {
    width: 16px;
    height: 16px;
}

/* Пагинация */
.blog-pagination {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 40px;
}

.blog-pagination .page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    background: #fff;
    border-radius: 8px;
    color: #333;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.2s ease;
    border: 1px solid rgba(0, 0, 0, 0.08);
}

.blog-pagination .page-numbers:hover {
    background: #098594;
    color: #fff;
    border-color: #098594;
}

.blog-pagination .page-numbers.current {
    background: #098594;
    color: #fff;
    border-color: #098594;
}

/* Адаптив */
@media (max-width: 1024px) {
    .blog-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 768px) {
    .blog-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .blog-card__gallery {
        height: 180px;
    }
}

@media (max-width: 480px) {
    .blog-card__gallery {
        height: 160px;
    }

    .blog-card__content {
        padding: 16px;
    }
}

/* Одиночная статья */
.single-post {
    padding: 40px 0;
}

.single-post__container {
    max-width: 900px;
    margin: 0 auto;
}

.single-post__featured-image {
    width: 100%;
    margin-bottom: 40px;
    border-radius: 12px;
    overflow: hidden;
}

.single-post__featured-image img {
    width: 100%;
    height: auto;
    display: block;
}

.single-post__title {
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 20px;
    line-height: 1.2;
    color: #333;
}

.single-post__meta {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
    font-size: 14px;
    color: #999;
}

.single-post__text {
    font-size: 16px;
    line-height: 1.8;
    color: #333;
}

.single-post__text p {
    margin-bottom: 20px;
}

.single-post__text h2 {
    font-size: 28px;
    font-weight: 700;
    margin: 40px 0 20px;
}

.single-post__text h3 {
    font-size: 22px;
    font-weight: 700;
    margin: 30px 0 15px;
}

.single-post__tags {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.single-post__tags a {
    display: inline-block;
    padding: 6px 12px;
    background: #f5f5f5;
    border-radius: 20px;
    color: #666;
    text-decoration: none;
    font-size: 13px;
    margin-right: 8px;
    margin-bottom: 8px;
    transition: all 0.2s ease;
}

.single-post__tags a:hover {
    background: #098594;
    color: #fff;
}

.single-post__nav-links {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: 50px;
}

.single-post__prev,
.single-post__next {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    background: #fff;
    border-radius: 8px;
    text-decoration: none;
    color: #333;
    font-weight: 600;
    font-size: 14px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    transition: all 0.2s ease;
}

.single-post__prev:hover,
.single-post__next:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
    border-color: #098594;
}

@media (max-width: 768px) {
    .single-post__title {
        font-size: 28px;
    }

    .single-post__nav-links {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .single-post__title {
        font-size: 24px;
    }
}


/* === single-blog mobile padding === */
@media (max-width: 768px) {
    .single-post__container {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* === modal arrows color === */
.object-modal__arrow.prev,
.object-modal__arrow.next {
    background: #098594;
}

.object-modal__arrow.prev:hover,
.object-modal__arrow.next:hover {
    background: #0C4644;
}

/* === discounts overlay mobile fix === */
@media (max-width: 1023px) {
    .discounts__img {
        overflow: hidden;
        position: relative;
    }

    .discounts__overlay {
        overflow: hidden;
        padding: 4vw;
    }

    .discounts__price {
        font-size: 4.8vw;
        line-height: 1.1;
    }

    .discounts__price--sm {
        font-size: 2.8vw;
    }

    .discounts__overlay .discounts__text {
        font-size: 3vw;
        line-height: 1.3;
    }

    .discounts__overlay .discounts__content {
        margin-top: 1.5vw;
    }

    .discounts__overlay .discounts__btn {
        margin-top: 2vw;
        font-size: 3vw;
        padding: 1.5vw 3vw;
        max-width: 60vw;
    }

    .discounts__subtitle {
        font-size: 3.2vw;
    }
}

/* === discounts btn mobile fix === */
@media (max-width: 1023px) {
    .discounts__overlay .discounts__btn {
        font-size: 3vw !important;
        padding: 1vw 2vw !important;
        margin-top: 1.5vw !important;
        max-width: 55vw !important;
        min-height: unset !important;
        height: auto !important;
    }
}

/* === discounts btn x2 smaller + shadow fix === */
@media (max-width: 1023px) {
    .discounts__overlay .discounts__btn {
        font-size: 2.5vw !important;
        margin-top: 1.5vw !important;
        max-width: 45vw !important;
    }

    .discounts__overlay .discounts__btn .btn__inner {
        padding: 2.67vw 5.33vw !important;
    }

    .discounts__overlay .discounts__btn .btn__inner::after {
        top: -4.67vw !important;
        width: 16vw !important;
        height: 6.67vw !important;
    }
}

/* === object-modal pagination center === */
.object-modal__pagination {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 15px !important;
    width: 100% !important;
    text-align: center !important;
    transform: none !important;
}

/* === btn glow shadow fix === */
@media (max-width: 1023px) {
    .btn::before {
        display: none;
    }
}

/* === discounts btn uniform height === */
.discounts__item .btn__inner,
.discounts__overlay .btn__inner {
    height: 3.47vw;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    box-sizing: border-box;
}

@media (max-width: 1023px) {
    .discounts__item .btn__inner,
    .discounts__overlay .btn__inner {
        height: 10.67vw;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}

/* === discounts btn height normalize final === */
@media (max-width: 1023px) {
    .discounts__item .discounts__btn .btn__inner,
    .discounts__banner .discounts__btn .btn__inner {
        height: 10.67vw !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        box-sizing: border-box !important;
    }
}
