html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent
}

body {
    line-height: 1
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}

nav ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

blockquote:before, blockquote:after, q:before, q:after {
    content: none
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent
}

ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none
}

mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold
}

del {
    text-decoration: line-through
}

abbr[title], dfn[title] {
    border-bottom: 1px dotted;
    cursor: help
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0
}

input, select {
    vertical-align: middle;
    padding: 0;
}

.clearfix:after {
    content: '';
    display: block;
    clear: both;
}

a, input, button, select, textarea, textarea:focus, input:focus {
    outline: none;
}

input, button, select, textarea {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

textarea {
    overflow: auto;
    resize: none;
}

:required {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

button::-moz-focus-inner {
    border: none;
}

html {
    -webkit-text-size-adjust: 100%;
}

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

@font-face {
    font-family: 'Playfair Display';
    src: url('../fonts/PlayfairDisplay-BoldItalic.woff2') format('woff2'),
    url('../fonts/PlayfairDisplay-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

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

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

html, body {
    min-width: 320px;
    height: 100%;
}

body, input, textarea, select {
    font-family: 'Playfair Display', sans-serif;
}

body:after {
    width: 0;
    height: 0;
    position: absolute;
    overflow: hidden;
    z-index: -1;
    content: url(../img/infinity-red.svg) url(../img/infinity-gray.svg) url(../img/delete-red.svg) url(../img/star-red.svg) url(../img/calendar-picker-gradient.svg) url(../img/arrow-down-gradient.svg) url(../img/seven-gradient.svg) url(../img/tick-circle-gradient.svg) url(../img/plus-circle-gradient.svg) url(../img/tick-circle-gray-gradient.svg) url(../img/facebook-light-gradient.svg) url(../img/instagram-light-gradient.svg) url(../img/cross-gradient.svg);
}

.public-profile .heading .icons a.insta:hover {
    background-image: url('../img/instagram-light-gradient.svg');;
}

a {
    text-decoration: none;
}

html {
    -webkit-text-size-adjust: 100%;
}

button, input[type="text"], input[type="email"], input[type="submit"], input[type="button"], input[type="reset"], input[type="search"], textarea {
    -webkit-appearance: none;
}

@supports (-webkit-overflow-scrolling: touch) {
    textarea {
        margin-left: -3px;
    }
}

::-webkit-input-placeholder {
    color: #909090;
}

:-moz-placeholder {
    color: #909090;
    opacity: 1;
}

::-moz-placeholder {
    color: #909090;
    opacity: 1;
}

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

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

::placeholder {
    color: #909090;
}

.shide {
    display: none;
}

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

.red {
    color: #fe0000;
}

.error, .response {
    font-size: 13px;
    line-height: 1.2;
    text-align: center;
    color: #fe0000;
}

.response {
    color: #000;
}

.underline {
    line-height: 1.2;
    display: inline-block;
    position: relative;
}

.underline:after, .underline:before {
    content: '';
    background: #326365;
    height: 1px;
    width: 0;
    position: absolute;
    bottom: -3px;
    transition: 0.3s;
}

.left-side .service-buttons {
    display: none !important;
}

.underline:before {
    right: 50%;
}

.underline:after {
    left: 50%;
}

.underline:hover:after, .underline:hover:before, a:hover .underline:after, a:hover .underline:before {
    width: 50%;
}

.colored-hover {
    line-height: 1.2;
    display: inline-block;
    position: relative;
}

.colored-hover:hover {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.colored-hover:after, .colored-hover:before {
    content: '';
    background: linear-gradient(90deg, #c872f2, #f772d1);
    height: 1px;
    width: 0;
    position: absolute;
    bottom: -3px;
    transition: 0.3s;
}

.colored-hover:before {
    right: 50%;
}

.colored-hover:after {
    left: 50%;
}

.colored-hover:hover:after, .colored-hover:hover:before {
    width: 50%;
}

.animation-wrap {
    overflow: hidden;
}

.animated-wrap .animated-text:not(.active) {
    position: absolute;
    visibility: hidden;
}

.animated-wrap .animated-text i {
    font-style: normal;
    opacity: 1;
    transition: opacity 0.5s;
}

.animated-wrap .animated-text:not(.active) i {
    transition: none;
}

.animated-wrap .animated-text.triggered i {
    opacity: 0;
}

.animated-wrap .animated-text i {
    font-style: normal;
}

.animated-wrap {
    min-width: 100px;
    display: inline-block;
}

.mwrap, .header .menu li.mmob, .mmob {
    display: none;
}

.mback {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    cursor: pointer;
    background: rgba(0, 0, 0, 0.7);
    opacity: 0;
    z-index: 991;
    transform: translate3d(100%, 0, 0);
}

.mback.unclickable {
    cursor: auto;
}

.header .service-filter .mback, .mback.vertical {
    transform: translate3d(0, -100%, 0);
}

.mback.vertical-bottom {
    transform: translate3d(0, 100%, 0);
}

#popup-password-set + .mback {
    transform: translate3d(0, 100%, 0);
}

.mback.trig {
    transition: 0.3s;
}

.mmenu {
    text-align: left;
    width: 27px;
    height: 19px;
    position: relative;
    cursor: pointer;
}

.mmenu:after, .mmenu:before, .mmenu div {
    content: '';
    background: #000;
    border-radius: 2px;
    height: 3px;
    width: 100%;
    position: absolute;
    transition: 0.2s;
}

.mmenu:before {
    top: 0;
}

.mmenu:after {
    bottom: 0;
}

.mmenu div {
    margin: auto;
    top: 0;
    bottom: 0;
}

.active .mmenu:after, .active .mmenu:before {
    margin: auto;
    top: 0;
    bottom: 0;
}

.active .mmenu:before {
    transform: rotate(-45deg);
}

.active .mmenu:after {
    transform: rotate(45deg);
}

.active .mmenu div {
    transform: scale(0.1);
}

.slick-slider {
    touch-action: auto;
    -ms-touch-action: auto;
}

.nowrap {
    white-space: nowrap;
}

/* Cropper Styles */
.upload-img {
    display: none;
}

.added .upload-info {
    display: none;
}

.added .upload-img {
    display: block;
}

.rotate {
    background: url('../img/rotate-left.svg') no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: middle;
    width: 20px;
    height: 20px;
    margin: 0 5px;
    cursor: pointer;
}

.rotate[data-deg="-90"] {
    background-image: url('../img/rotate-right.svg');
}

.remove-img {
    background: url('../img/trash.svg') no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: middle;
    width: 23px;
    height: 23px;
    cursor: pointer;
}

.save-label {
    display: none;
}

.save-img {
    font-weight: bold;
    font-size: 13px;
    line-height: 30px;
    background: url('../img/success.svg') no-repeat;
    padding-left: 40px;
    display: inline-block;
    margin-left: auto;
    cursor: pointer;
}

.save-img a {
    color: #000;
}

.save-img:hover a {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.croppie-container {
    height: auto;
}

.croppie-container .cr-boundary {
    max-width: 100%;
}

.croppie-container .cr-viewport, .croppie-container .cr-resizer {
    border: none;
}

.croppie-container .cr-slider-wrap {
    width: auto;
    padding: 20px 15px;
    margin: auto;
    display: flex;
    align-items: center;
}

.croppie-container .cr-slider-wrap, .profile-edit .croppie-container .cr-slider-wrap {
    justify-content: center;
}

.cr-slider {
    width: 100px;
    margin: 0 20px;
}

.tick-icon .circ {
    opacity: 0;
    stroke-dasharray: 110;
    stroke-dashoffset: 110;
    transition: all 0.5s;
}

.tick-icon .tick {
    stroke-dasharray: 50;
    stroke-dashoffset: 50;
    transition: stroke-dashoffset 0.5s 0.5s ease-out;
}

.drawn svg.icon .path {
    opacity: 1;
    stroke-dashoffset: 0;
}

svg.icon {
    max-width: 150px;
}

.loader-icon {
    animation: spin 1.5s infinite;
    transform: rotate(315deg);
    transition-timing-function: cubic-bezier(0.9, 0, 0.745, 0.715);
}

.loader-icon .circ {
    transition: all 1s;
    stroke-dasharray: 80;
}

.loader-icon .circ-cover {
    opacity: 0;
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
}

.loader-icon .tick {
    opacity: 0;
    stroke-dasharray: 30;
    stroke-dashoffset: 96;
    transition: stroke-dasharray 1s 0.5s ease-out;
}

.icon-loading svg.loader-icon {
    animation: spin 1.5s 1;
}

.icon-loading svg.icon .circ {
    display: none;
    stroke-dasharray: 80;
    transition: all 1s;
    stroke-dashoffset: 0;
}

.icon-loading svg.icon .circ-cover {
    opacity: 1;
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: linedraw 5s linear forwards;
    transition: all 1s;
}

.icon-loaded svg.loader-icon {
    animation: spin 1.5s 1;
}

.icon-loaded svg.icon .tick {
    opacity: 1;
    stroke-dasharray: 45;
}

@keyframes linedraw {
    to {
        stroke-dashoffset: 0;
    }
}

@keyframes spin {
    0% {
        transform: rotate(-45deg);
    }
    100% {
        transform: rotate(315deg);
    }
}

.verified {
    text-align: center;
}

.verified .tick-icon, .verified.drawn .loader-icon {
    position: absolute;
    opacity: 0;
    visibility: hidden;
}

.verified.drawn .tick-icon {
    position: static;
    opacity: 1;
    visibility: visible;
}

.verified ~ * {
    max-height: 100px;
    opacity: 0;
    visibility: hidden;
    transition: 1s;
    overflow: hidden;
}

.verified:not(.drawn) ~ * {
    max-height: 0;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.verified.drawn ~ * {
    opacity: 1;
    visibility: visible;
}

.verified ~ .progress {
    font-size: 14px;
    line-height: 1.2;
    text-align: center;
    width: 320px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 28px;
    position: absolute;
    left: 0;
    right: 0;
    opacity: 1;
    visibility: visible;
}

.verified.drawn ~ .progress {
    display: none;
}

.verified ~ .success {
    font-size: 14px;
    line-height: 1.2;
    text-align: center;
    max-width: 325px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 28px;
}

.verified ~ .but, .verified ~ a .but {
    width: 325px;
    max-width: 100%;
    margin-top: 50px;
    margin-left: auto;
    margin-right: auto;
}

.popup .verified ~ .but, .popup .verified ~ a .but {
    margin-top: 20px;
}

input.hidden {
    position: absolute;
    left: 0;
    opacity: 0;
    visibility: hidden;
}

/* Webkit autofill trigger hack */
input:-webkit-autofill {
    -webkit-animation-name: autofill;
}

@-webkit-keyframes autofill {
}

.field {
    background: #fff;
    border: 1px solid #dad9d9;
    border-radius: 4px;
    height: 46px;
    padding: 10px 15px;
    box-sizing: border-box;
    line-height: 1;
    position: relative;
}

.field.text {
    height: auto;
}

.field.tel {
    display: flex;
    padding-left: 0;
    padding-right: 0;
}

.field.tel .code, .field.tel div.number {
    display: inline-block;
    vertical-align: middle;
}

.field.tel .code {
    position: relative;
}

.field.tel .code select {
    width: 60px;
    opacity: 0;
}

.field.tel .code .num {
    font-size: 13px;
    color: #000;
    position: absolute;
    top: 5px;
    width: 43px;
    text-align: right;
    cursor: pointer;
}

.field.tel .code .num:after {
    content: '';
    position: absolute;
    right: -12px;
    top: 4px;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 7px solid #969696;
}

.field.tel div.number {
    flex-grow: 1;
    position: relative;
    line-height: 13px;
    padding-left: 10px;
    padding-right: 10px;
    box-sizing: border-box;
}

.field.tel div.number:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    height: 13px;
    width: 1px;
    background: #000;
}

.field.card {
    display: flex;
}

.field.card .expire {
    font-size: 13px;
    flex-shrink: 0;
    margin-left: 10px;
}

.field.card .expire input {
    width: 15px;
}

.field.card .expire input, .field.card .expire span {
    vertical-align: middle;
}

.field.card .expire span {
    margin-right: 1px;
}

.field.card input[type="password"] {
    width: 25px;
    margin-right: 10px;
    margin-left: 10px;
}

.field input, .field textarea, .field select {
    border: none;
    background: none;
    font-size: 13px;
    width: 100%;
    padding: 0;
}

.field input, .field select {
    height: 24px;
    line-height: 24px;
}

.field.active input {
    height: auto;
    line-height: 1.2;
}

.field textarea {
    height: 150px;
    overflow: hidden;
}

.touch .field textarea {
    overflow: auto;
}

.field.active textarea {
    height: 140px;
}

.field.select {
    padding: 0;
}

.field.select select {
    height: 100%;
    padding: 10px 15px;
    padding-right: 35px;
}

.field.select:after {
    content: '';
    position: absolute;
    right: 15px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 7px solid #969696;
}

.field select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-text-fill-color: #000;
}

.field select::-ms-expand {
    display: none;
}

.field .label {
    font-size: 13px;
    line-height: 1.2;
    text-align: left;
    color: #909090;
    padding: 11px 15px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    cursor: text;
    transition: 0.2s;
}

.touch .field .label {
    cursor: pointer;
}

.field .label {
    line-height: 24px;
    white-space: nowrap;
}

.field.active {
    padding-top: 20px;
}

.field.active .label {
    font-size: 11px;
    line-height: 1.2;
    padding-bottom: 0;
    padding-top: 6px;
    bottom: auto;
    right: auto;
    max-width: 100%;
    box-sizing: border-box;
}

.field .counter {
    font-size: 11px;
    color: #909090;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 3px;
    padding: 2px 5px;
    position: absolute;
    right: 5px;
    bottom: 5px;
}

.checkbox input[type="checkbox"], .checkbox input[type="radio"] {
    visibility: hidden;
    position: absolute;
    left: 0;
}

.checkbox label span {
    display: inline-block;
    line-height: 22px;
    position: relative;
    padding-left: 30px;
    user-select: none;
}

.checkbox label span:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    margin: auto;
    width: 22px;
    height: 22px;
    background-color: #fff;
    border: 1px solid #dad9d9;
    box-sizing: border-box;
}

.checkbox input[type="checkbox"]:checked + span:before, .checkbox input[type="radio"]:checked + span:before {
    background: #fff url('../img/tick-black.svg') no-repeat center;
    background-size: 80%;
}

.radio-input {
    font-size: 16px;
}

.radio-input input {
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden;
}

.radio-input span {
    padding-left: 25px;
    display: inline-block;
    margin: 5px 0;
    margin-right: 10px;
    position: relative;
}

.radio-input span:before {
    content: '';
    border: 1px solid #dbdcdb;
    box-shadow: 0px 8px 24px 0px rgba(0, 0, 0, 0.15);
    border-radius: 50%;
    width: 15px;
    height: 15px;
    position: absolute;
    top: 2px;
    left: 0;
}

.radio-input input:checked + span:before {
    content: '•';
    font-size: 25px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.toggle-button {
    user-select: none;
}

.toggle-button input {
    position: absolute;
    opacity: 0;
    visibility: hidden;
}

.toggle-button .icon {
    background: #999;
    border-radius: 50px;
    display: inline-block;
    width: 40px;
    height: 20px;
    margin-right: 6px;
    position: relative;
}

.toggle-button .icon:after {
    content: '';
    background: #fff;
    border-radius: 50%;
    width: 15px;
    height: 15px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 3px;
    transition: 0.2s;
}

.toggle-button span {
    transition: 0.2s;
}

.toggle-button .icon, .toggle-button span {
    vertical-align: middle;
}

.toggle-button input[type="checkbox"]:checked + .icon {
    background: linear-gradient(to bottom, #c872f2, #f772d1);
}

.toggle-button input[type="checkbox"]:checked + .icon:after {
    left: calc(100% - 18px);
}

.toggle-button input[type="checkbox"]:not(:checked) ~ span {
    color: #999;
}

.but {
    color: #fff;
    background: linear-gradient(to bottom, #c872f2, #f772d1);
    font-size: 14px;
    height: 42px;
    line-height: 42px;
    padding: 0 25px;
    display: inline-block;
    text-align: center;
    border-radius: 5px;
    box-sizing: border-box;
    cursor: pointer;
    user-select: none;
    position: relative;
}

.but span {
    position: relative;
    z-index: 1;
}

.but.rounded {
    border-radius: 100px;
}

.but:not(.loading):hover {
    color: #000;
}

.but:not(.loading):hover:after, .but.transp:after {
    content: '';
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 5px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.but.rounded:hover:after {
    border-radius: 100px;
}

.but.transp {
    font-size: 12.5px;
    line-height: 32px;
    color: #000;
    border-radius: 40px;
    height: 32px;
}

.but.transp:after {
    border-radius: 40px;
}

.but.transp.standart {
    font-size: 14px;
    line-height: 42px;
    border-radius: 5px;
    height: 42px;
}

.but.transp.standart:after {
    border-radius: 5px;
}

.but.transp:hover {
    color: #fff;
    background: linear-gradient(29deg, #c872f2, #f772d1) !important;
    opacity: 1;
}

.but.transp:hover:after {
    display: none;
}

.but.small {
    line-height: 32px;
    height: 32px;
    display: inline-block;
    padding: 0 15px;
}

.whatsapp-but .but {
    font-size: 11.25px !important;
    border-radius: 30px !important;
    color: #7ad26d !important;
    border-color: #7ad26d !important;
}

.whatsapp-but .but:not(.loading):hover {
    color: #fff !important;
    background: #7ad26d !important;
}

.but.whatsapp-icon {
    font-weight: bold;
    text-align: center;
    color: #fff;
    background: #23d366 url('../img/whatsapp-icon-white.svg') no-repeat 10px center;
    border: 1px solid #23d366;
    padding-left: 40px;
    padding-right: 10px;
}

.but.whatsapp-icon:hover {
    color: #fff;
    opacity: 0.8;
}

.but.whatsapp-icon:after {
    display: none;
}

.disabled-button {
    background: #909090;
    pointer-events: none;
}

.but.loading {
    pointer-events: none;
}

.but:before {
    content: '•';
    font-size: 2em;
    font-style: normal;
    text-align: center;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    color: rgba(255, 255, 255, 0);
    transition: opacity 0.2s, visibility 0.2s;
    animation-name: loading-dots-animation;
    animation-duration: 1.5s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.but.transp:before {
    color: rgba(174, 44, 241, 0);
    animation-name: loading-dots-animation-colored;
}

.but.loading:before {
    opacity: 1;
    visibility: visible;
}

.but span {
    transition: opacity 0.2s, visibility 0.2s;
}

.but.loading span {
    opacity: 0;
    visibility: hidden;
}


@keyframes loading-dots-animation {
    0% {
        text-shadow: -1em 0 0 rgba(255, 255, 255, .6), 0em 0 0 rgba(255, 255, 255, .2), 1em 0 0 rgba(255, 255, 255, .2);
    }
    20% {
        text-shadow: -1em 0 0 rgba(255, 255, 255, 1), 0em 0 0 rgba(255, 255, 255, .6), 1em 0 0 rgba(255, 255, 255, .2);
    }
    40% {
        text-shadow: -1em 0 0 rgba(255, 255, 255, .6), 0em 0 0 rgba(255, 255, 255, 1), 1em 0 0 rgba(255, 255, 255, 0.6);
    }
    60% {
        text-shadow: -1em 0 0 rgba(255, 255, 255, .2), 0em 0 0 rgba(255, 255, 255, .6), 1em 0 0 rgba(255, 255, 255, 1);
    }
    80% {
        text-shadow: -1em 0 0 rgba(255, 255, 255, .2), 0em 0 0 rgba(255, 255, 255, .2), 1em 0 0 rgba(255, 255, 255, .6);
    }
    100% {
        text-shadow: -1em 0 0 rgba(255, 255, 255, .6), 0em 0 0 rgba(255, 255, 255, .2), 1em 0 0 rgba(255, 255, 255, .2);
    }
}

@keyframes loading-dots-animation-colored {
    0% {
        text-shadow: -1em 0 0 rgba(174, 44, 241, .6), 0em 0 0 rgba(174, 44, 241, .2), 1em 0 0 rgba(174, 44, 241, .2);
    }
    20% {
        text-shadow: -1em 0 0 rgba(174, 44, 241, 1), 0em 0 0 rgba(174, 44, 241, .6), 1em 0 0 rgba(174, 44, 241, .2);
    }
    40% {
        text-shadow: -1em 0 0 rgba(174, 44, 241, .6), 0em 0 0 rgba(174, 44, 241, 1), 1em 0 0 rgba(174, 44, 241, 0.6);
    }
    60% {
        text-shadow: -1em 0 0 rgba(174, 44, 241, .2), 0em 0 0 rgba(174, 44, 241, .6), 1em 0 0 rgba(174, 44, 241, 1);
    }
    80% {
        text-shadow: -1em 0 0 rgba(174, 44, 241, .2), 0em 0 0 rgba(174, 44, 241, .2), 1em 0 0 rgba(174, 44, 241, .6);
    }
    100% {
        text-shadow: -1em 0 0 rgba(174, 44, 241, .6), 0em 0 0 rgba(174, 44, 241, .2), 1em 0 0 rgba(174, 44, 241, .2);
    }
}

.toggle-switch {
    font-size: 0;
    color: #000;
    border-radius: 50px;
    display: inline-block;
    position: relative;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
}

.toggle-switch:after {
    content: '';
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 50px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.toggle-switch label {
    position: relative;
    z-index: 1;
}

.toggle-switch input {
    visibility: hidden;
    position: absolute;
    left: 0;
    top: 0;
}

.toggle-switch span {
    font-size: 11px;
    line-height: 30px;
    text-align: center;
    width: calc(50% + 5px);
    padding: 0 15px;
    box-sizing: border-box;
    display: inline-block;
    position: relative;
    transition: color 0.2s;
}

.toggle-switch span i {
    font-style: normal;
    position: relative;
    z-index: 1;
}

.toggle-switch input:checked + span {
    color: #fff;
}

.toggle-switch label:first-child {
    margin-right: -10px;
}

.toggle-switch label:first-child span:after {
    content: '';
    background: linear-gradient(29deg, #c872f2, #f772d1);
    border-radius: 50px;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    transition: transform 0.2s;
    transform: translateX(0);
}

.toggle-switch label:first-child input:not(:checked) + span:after {
    transform: translateX(calc(100% - 10px));
}

.status-circle {
    width: 160px;
    height: 160px;
    position: relative;
}

.status-circle svg {
    width: 100%;
    height: 100%;
    transform: rotate(-100deg);
}

.status-circle .progress-bar__background {
    fill: none;
    stroke: #fff;
    stroke-width: 4;
}

.status-circle .progress-bar__progress {
    fill: none;
    stroke-dasharray: 100 100;
    stroke-dashoffset: 100;
    stroke-linecap: round;
    stroke-width: 4;
    transition: stroke-dashoffset 1s ease-in-out;
}

.status-circle .content {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.status-circle .timer {
    font-weight: bold;
    font-size: 19px;
}

.status-circle .hint {
    font-size: 13px;
    color: #326365;
    padding: 0 30px;
    margin-top: 2px;
}

.wrap, .inner-wrap {
    max-width: 960px;
    margin: auto;
    padding: 0 40px;
}

.home .header, .join .header {
    max-width: 960px;
    margin: auto;
    padding-left: 40px;
    padding-right: 40px;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
}

.home > .wrap, .join > .wrap {
    max-width: none;
    padding: 0;
}

.dropdown {
    position: absolute;
    z-index: 99;
    min-width: 120px;
    top: 100%;
    right: -8px;
    margin-top: 30px;
    background: #fff;
    border: 1px solid #e5e5e5;
    box-shadow: 0 4px 12px 0 rgba(32, 32, 36, .15);
    border-radius: 3px;
    opacity: 0;
    visibility: hidden;
    text-align: left;
    transition: opacity 0.5s, visibility 0.5s, margin 0.5s;
}

#footer .dropdown {
    margin-top: 0;
    margin-bottom: 30px;
    top: auto;
    bottom: 100%;
}

.dropdown:not(.loaded) {
    display: none;
}

.dropdown:before {
    content: '';
    position: absolute;
    top: -7px;
    right: 12px;
    width: 13px;
    height: 13px;
    background: #fff;
    border-top: 1px solid;
    border-left: 1px solid;
    border-color: #e5e5e5;
    transform: rotate(45deg);
}

#footer .dropdown:before {
    top: auto;
    bottom: -7px;
}

.active .dropdown {
    opacity: 1;
    visibility: visible;
    margin-top: 20px;
}

#footer .active .dropdown {
    margin-bottom: 20px;
}

.dropdown li {
    display: block !important;
    font-size: 13px;
    color: #000;
    background: #fff;
    margin: 0 !important;
    cursor: pointer;
}

.dropdown li a {
    padding: 20px;
    padding-right: 50px;
    display: block;
}

.dropdown li a:before, .dropdown li a:after {
    display: none;
}

.dropdown li:hover, .dropdown li:hover a {
    color: #c872f2;
}

.dropdown li:not(:last-child) {
    border-bottom: 1px solid #dad9d9;
}

.dropdown li.title {
    display: none !important;
}

.dropdown li.active {
    position: relative;
}

.dropdown li.active:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto;
    width: 16px;
    height: 10px;
    background: url('../img/drop-active.svg') no-repeat;
    background-size: contain;
}

.range {
    position: relative;
    width: 230px;
    height: 5px;
}

.range input {
    width: 100%;
    position: absolute;
    z-index: 1;
    height: 0;
    -webkit-appearance: none;
}

.range input::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 15px;
    height: 15px;
    margin: -7px 0 0;
    border-radius: 50%;
    background: #f65151;
    cursor: pointer;
    border: 0 !important;
}

.range input::-moz-range-thumb {
    width: 15px;
    height: 15px;
    margin: -8px 0 0;
    border-radius: 50%;
    background: #f65151;
    cursor: pointer;
    border: 0 !important;
}

.range input::-ms-thumb {
    width: 15px;
    height: 15px;
    margin: -8px 0 0;
    border-radius: 50%;
    background: #f65151;
    cursor: pointer;
    border: 0 !important;
}

.range input::-webkit-slider-runnable-track {
    width: 100%;
    height: 2px;
    cursor: pointer;
    background: #b2b2b2;
}

.range input::-moz-range-track {
    width: 100%;
    height: 2px;
    cursor: pointer;
    background: #b2b2b2;
}

.range input::-ms-track {
    width: 100%;
    height: 2px;
    cursor: pointer;
    background: #b2b2b2;
}

.range input:focus {
    background: none;
    outline: none;
}

.range input::-ms-track {
    width: 100%;
    cursor: pointer;
    background: transparent;
    border-color: transparent;
    color: transparent;
}

.range-labels {
    margin: 9px -38.33px 0;
    padding: 0;
    list-style: none;
}

.range-labels li {
    position: relative;
    float: left;
    width: 76.66px;
    text-align: center;
    color: #b2b2b2;
    font-size: 12px;
    letter-spacing: -0.05em;
    cursor: pointer;
    box-sizing: border-box;
    user-select: none;
}

.range-labels li:first-child {
    padding-left: 30px;
}

.range-labels li:last-child {
    padding-right: 12px;
}

.range-labels li:before {
    position: absolute;
    top: -16px;
    right: 0;
    left: 0;
    content: "";
    margin: 0 auto;
    width: 9px;
    height: 9px;
    background: #b2b2b2;
    border-radius: 50%;
}

.range-labels li:first-child:before {
    left: 13px;
}

.range-labels li:nth-child(2):before {
    left: 10px;
}

.range-labels li:last-child:before {
    right: 5px;
}

.range-labels li i {
    background: url('../img/infinity-gray.svg') no-repeat;
    width: 20px;
    height: 10px;
    display: inline-block;
}

.range-labels li.active i {
    background-image: url('../img/infinity-red.svg');
}

.range-labels .active {
    color: #f65151;
}

.range-labels .selected:before {
    background: #f65151;
}

.range-labels .active.selected:before {
    display: none;
}

.ui-datepicker .ui-datepicker-header {
    display: none;
    text-align: center;
    padding: 0;
    margin-bottom: 15px;
    position: relative;
}

.ui-datepicker-year {
    display: none;
}

.ui-datepicker-prev, .ui-datepicker-next {
    background: url('../img/arrow-down.svg') no-repeat center !important;
    border: none !important;
    width: 20px !important;
    height: 20px !important;
    position: absolute;
    top: -3px !important;
    cursor: pointer;
}

.ui-datepicker-prev:hover, .ui-datepicker-next:hover {
    background-image: url('../img/arrow-down-gradient.svg') !important;
}

.ui-datepicker .ui-datepicker-prev {
    left: 5px;
    transform: rotate(90deg);
}

.ui-datepicker .ui-datepicker-next {
    right: 5px;
    transform: rotate(-90deg);
}

.ui-datepicker-prev span, .ui-datepicker-next span {
    display: none !important;
}

.ui-datepicker .ui-datepicker-title {
    font-weight: bold;
    font-size: 12.5px;
    line-height: 1;
}

.ui-widget {
    font-family: 'Playfair Display', sans-serif;
}

.ui-widget-header {
    border: none;
    background: none;
    color: #000;
    font-weight: normal;
}

.ui-widget.ui-widget-content {
    border: none;
    border-radius: 0;
    padding: 0;
}

.ui-datepicker th {
    font-weight: normal;
    font-size: 12.5px;
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    padding: 8px 0;
}

.ui-datepicker td {
    padding: 1px;
}

.ui-datepicker td span, .ui-datepicker td a {
    font-size: 12.5px;
    line-height: 28px;
    text-align: center;
    padding: 0;
    width: 30px;
    height: 30px;
    box-sizing: border-box;
    display: block;
    margin: auto;
}

.ui-datepicker td a {
    font-weight: bold !important;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
    border: 1px solid transparent;
    background: none;
    color: #000;
}

.ui-datepicker td a.ui-state-active {
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 50%;
}

.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled {
    opacity: 1;
}

.ui-widget-header .ui-state-disabled {
    opacity: 0.2;
    pointer-events: none;
}

.ui-state-disabled .ui-state-default {
    color: #959595;
}

.ui-widget-content {
    background: none;
}

.ui-widget.ui-widget-content {
    width: auto !important;
}

.ui-datepicker-multi-2 .ui-datepicker-group {
    width: auto;
    float: none;
}

.ui-datepicker-multi .ui-datepicker-group table {
    width: 100%;
    margin: 0;
}

.ui-datepicker-multi .ui-datepicker-group {
    display: none !important;
}

.ui-datepicker-multi.month-0 .ui-datepicker-group:nth-child(1), .ui-datepicker-multi.month-1 .ui-datepicker-group:nth-child(2) {
    display: block !important;
}

.calendar-picker-months {
    display: flex;
    margin-bottom: 10px
}

.calendar-picker-months a {
    font-size: 11px;
    text-align: center;
    color: #000;
    border-radius: 5px;
    padding: 7px 20px;
    box-sizing: border-box;
    flex: 1;
    position: relative;
    cursor: pointer;
    user-select: none;
}

.calendar-picker-months a + a {
    margin-left: 5px;
}

.calendar-picker-months a span {
    position: relative;
    z-index: 1;
}

.calendar-picker-months a:after {
    content: '';
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 5px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.calendar-picker-months a:hover, .calendar-picker-months a.active {
    color: #fff;
    background: linear-gradient(to bottom, #c872f2, #f772d1);
}

.calendar-picker-months a:hover:after, .calendar-picker-months a.active:after {
    display: none;
}

.table-rotate-icon {
    display: none;
    text-align: center;
    margin-top: 20px;
}

@media screen and (orientation: portrait) {
    .table-rotate-icon {
        display: block;
    }
}

.header {
    padding-top: 7px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}

#join-page .header {
    margin-bottom: 0;
}

.header .service-buttons, .header .buts {
    display: inline-block;
    vertical-align: middle;
}

.header .service-buttons {
    font-size: 0;
    box-shadow: 0 1px 5px 0 #ecebeb;
    border: 1px solid #ecebeb;
    border-radius: 30px;
    align-self: center;
    overflow: hidden;
}

.header .service-buttons .btn {
    font-size: 13px;
    text-align: center;
    min-width: 80px;
    box-sizing: border-box;
    padding: 8px 15px;
    display: inline-block;
    position: relative;
}

.header .service-buttons .btn:hover {
    color: #fff;
    background: linear-gradient(to bottom, #c872f2, #f772d1);
}

.header .service-buttons .btn:not(:last-child):after {
    content: '';
    background: #ecebeb;
    width: 1px;
    position: absolute;
    top: 3px;
    bottom: 3px;
    right: -1px;
}

.header .service-buttons .btn:hover:after {
    display: none;
}

.header .service-buttons li a, .header .service-buttons li span, .product-list .top-info .btn {
    font-size: 11.5px;
    border: 1px solid #b0b0b0;
    border-radius: 30px;
    color: #000;
    padding: 9px 15px;
    box-sizing: border-box;
    display: inline-block;
}

.header .service-buttons li, .product-list .top-info .btn {
    display: inline-block;
    vertical-align: middle;
    margin-right: 3px;
}

.header .service-buttons .btn, .product-list .top-info .btn {
    cursor: pointer;
}

.header .service-buttons li a:hover, .product-list .top-info .btn:hover {
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
}

.header .service-buttons .btn.active, .header .service-buttons li.active span, .product-list .top-info .btn.active {
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
}

.header .service-filter {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    top: 5px;
}

.header .service-filter .icon {
    background: url('../img/filter.svg') no-repeat;
    width: 28px;
    height: 28px;
    display: inline-block;
    cursor: pointer;
}

.header .service-filter .dropdown {
    width: 340px;
    padding-bottom: 10px;
    left: -157px;
    right: auto;
}

.header .service-filter .dropdown:before {
    margin: auto;
    right: 0;
    left: 0;
}

.header .service-filter .dropdown .row {
    padding: 30px 20px;
}

.header .service-filter .dropdown .row:not(:last-child) {
    border-bottom: 2px solid #ececec;
}

.header .service-filter .dropdown .title {
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 15px;
}

.header .service-filter .dropdown .items {
    margin-bottom: -9px;
}

.header .service-filter .dropdown .item {
    font-size: 11.5px;
    border: 1px solid #d9d9d9;
    border-radius: 20px;
    padding: 6px 15px;
    padding-bottom: 7px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 2px;
    margin-bottom: 9px;
    cursor: pointer;
}

.header .service-filter .dropdown .cities .item {
    text-align: center;
    width: 92px;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
}

.header .service-filter .dropdown .item span {
    color: #f25155;
}

.header .service-filter .dropdown .item.disabled {
    color: #9d9d9d;
    cursor: default;
}

.header .service-filter .dropdown .item.active {
    color: #fff;
    background: #f25155;
    border-color: #f25155;
    cursor: default;
}

.header .service-filter .dropdown .item.active span {
    color: #fff;
}

.header .service-filter .dropdown .item:not(.active):not(.disabled):hover {
    color: #f25155;
    border-color: #f25155;
}

.header .service-filter .dropdown .close {
    width: 25px;
    height: 25px;
    transform: rotate(45deg);
    position: absolute;
    top: 20px;
    right: 10px;
    cursor: pointer;
}

.header .service-filter .dropdown .close:before, .header .service-filter .dropdown .close:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background: #777;
    border-radius: 5px;
}

.header .service-filter .dropdown .close:hover:before, .header .service-filter .dropdown .close:hover:after {
    background: #f65151;
}

.header .service-filter .dropdown .close:before {
    width: 100%;
    height: 2px;
}

.header .service-filter .dropdown .close:after {
    width: 2px;
    height: 100%;
}

.header .heading, .header .button {
    display: inline-block;
    vertical-align: middle;
}

.header .heading {
    margin-right: 10px;
}

.header .button {
    position: relative;
    top: 2px;
}

.header .heading a, .header .heading span, .header .heading h1 {
    font-weight: bold;
    font-size: 18px;
    line-height: 1.2;
    color: #000;
    display: inline-block;
    position: relative;
}

.header .heading a.small, .header .heading span.small {
    font-size: 14px;
}

.header .heading a.big, .header .heading span.big {
    font-size: 24px;
    top: 1px;
}

.header .heading h2 {
    display: inline;
}

.header .heading a:not(.profile):hover {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.header .heading a:hover, #footer .menu li:not(.lang) span:hover {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.header .heading a:first-child, .header .heading span:first-child {
    font-weight: bold;
    font-size: 26px;
    position: relative;
    top: 1px;
}

.header .heading a.regular:first-child {
    font-family: 'Playfair Display', sans-serif;
    letter-spacing: -0.01em;
    font-weight: bold;
    font-size: 21px;
}

.header .heading .arr {
    background: url('../img/arrow-black.svg') no-repeat;
    background-size: contain;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 10px;
    position: relative;
    top: -1px;
}

.homepage .header .left-side {
    margin-left: 39px;
}

.homepage .header .menu {
    margin-right: 32px;
}

.header .toggle-switch {
    width: 232px;
    position: relative;
    top: 3px;
}

.header .menu {
    flex-shrink: 0;
}

.header.profile-menu .menu li.logout a {
    padding-left: 50px;
    position: relative;
}

.header.profile-menu .menu li.logout img {
    position: absolute;
    left: 17px;
    top: 12px;
}

.header .menu li.new-tab {
    position: relative;
}

.header .menu li.new-tab:after {
    content: '';
    background: url('../img/new-tab.svg') no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
}

.header .menu li {
    display: inline-block;
    vertical-align: middle;
    margin-right: -2px;
    margin-left: 28px;
    list-style: none;
}

.header .menu li a, .header .menu li span {
    font-size: 13px;
    color: #000;
    position: relative;
    cursor: pointer;
}

.header .menu li:not(.profile) a:hover, .header .menu li:not(.lang):not(.profile) span:hover, .header .menu li.lang span:hover i {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.header .menu li i {
    position: relative;
}

.header .menu li a:after, .header .menu li a:before, .header .menu li.login span:after, .header .menu li.login span:before, .header .menu li i:after, .header .menu li i:before {
    content: '';
    background: #fff;
    height: 1px;
    width: 0;
    position: absolute;
    bottom: -3px;
    transition: 0.3s;
}

.header .menu li a:after, .header .menu li.login span:after, .header .menu li i:after {
    background: linear-gradient(90deg, #c872f2, #c872f2);
}

.header .menu li a:before, .header .menu li.login span:before, .header .menu li i:before {
    background: linear-gradient(90deg, #c872f2, #f772d1);
}

.header .menu li a:after, .header .menu li i:after, .header .menu li.login span:after {
    left: 50%;
}

.header .menu li a:before, .header .menu li i:before, .header .menu li.login span:before {
    right: 50%;
}

.header .menu li a:hover:after, .header .menu li a:hover:before, .header .menu li span:hover i:after, .header .menu li span:hover i:before, .header .menu li.login span:hover:after, .header .menu li.login span:hover:before {
    width: 50%;
}

.header .menu li.profile {
    position: relative;
    top: 1px;
}

.header .menu li.profile a {
    display: block;
}

.header .menu li.profile:after {
    content: '';
    background: url('../img/user-profile-gradient.svg') no-repeat;
    background-size: contain;
    width: 25px;
    height: 25px;
    position: absolute;
    top: 0;
    right: 0;
}

.header .menu li.profile:hover:after {
    display: none;
}

.header .menu li.profile a:after, .header .menu li.profile a:before {
    display: none;
}

.header .menu li.profile span, .header .menu li.profile svg {
    vertical-align: middle;
}

.header .menu li.profile span {
    margin-right: 5px;
}

.header .menu li.profile svg {
    fill: #fff;
    opacity: 0;
}

.header .menu li.profile:hover svg {
    opacity: 1;
}

.header .menu li.profile svg {
    fill: #000;
}

.header .menu li.lang, #footer .menu li.lang {
    position: relative;
}

.header.profile-menu .menu li.lang {
    top: -1px;
}

.header .menu li.lang img, #footer .menu li.lang img {
    width: 26px;
    height: 26px;
    display: none;
    cursor: pointer;
}

.header .menu li.lang img.active, #footer .menu li.lang img.active {
    display: inline;
}

.header .menu li.lang > span, #footer .menu li.lang > span {
    display: none;
    user-select: none;
}

.header .menu li.lang > span:after, #footer .menu li.lang > span:after {
    content: '';
    background: url('../img/arrow-black.svg') no-repeat;
    background-size: contain;
    width: 10px;
    height: 10px;
    display: inline-block;
    margin-left: 5px;
    transform: rotate(90deg);
    transition: 0.3s;
}

.header .menu li.lang.active > span:after, #footer .menu li.lang.active > span:after {
    transform: rotate(270deg);
}

.header .menu li.lang > span.active, #footer .menu li.lang > span.active {
    display: inline;
}

.header .menu li.lang i, #footer .menu li.lang i {
    font-style: normal;
}

.header .menu li.lang i.short, #footer .menu li.lang i.short {
    display: none;
}

.header .menu li.logout {
    cursor: pointer;
}

.header .menu li.logout img {
    width: 25px;
    height: 25px;
}

#wrapper.login, #wrapper.pass-reset {
    background: url('../img/login-page.jpg') no-repeat right center;
    background-size: cover;
}

#wrapper.login .header, #wrapper.pass-reset .header {
    position: relative;
    z-index: 3;
}

.join-top {
    background: url('../img/join-top.jpg') no-repeat center center;
    background-size: cover;
    height: 100vh;
    min-height: 600px;
    padding-top: 45px;
    box-sizing: border-box;
}

.join-top .wrap {
    height: 100%;
    display: flex;
}

.join-top .text-content {
    line-height: 1.2;
    text-align: right;
    max-width: 470px;
    margin: auto 0;
    margin-left: auto;
    padding: 100px 0;
    position: relative;
    z-index: 1;
}

.join-top .text-content .head {
    font-weight: bold;
    font-size: 44px;
}

.join-top .text-content .sub {
    font-size: 17px;
    margin-top: 25px;
}

.join-top .text-content .but {
    width: 250px;
    margin-top: 20px;
}

.join-screen .wrap {
    max-width: 880px;
}

.join-screen .text-content {
    line-height: 1.2;
}

.join-screen .head {
    font-weight: bold;
    font-size: 38px;
}

.join-screen .sub {
    font-size: 19px;
    margin-top: 20px;
}

.join-screen .cols {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.join-screen .img-preload-item:after {
    display: none;
}

.join-screen .img-wrap {
    flex-shrink: 0;
}

.join-screen .img {
    position: relative;
}

.join-screen .img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: block;
}

.join-screen .text-col + .img-wrap, .join-screen .img-wrap + .text-col {
    margin-left: 120px;
}

.join-screen.join-easy {
    padding-top: 152px;
    overflow: hidden;
}

.join-screen.join-easy .img-wrap {
    width: 322px;
    margin-left: 180px;
    margin-bottom: -150px;
}

.join-screen.join-easy .img {
    padding-top: 201.86%;
}

.join-screen.join-comfortable, .join-screen.join-profitable {
    background: linear-gradient(135deg, rgba(118, 131, 217, 0.17) 0%, rgba(216, 160, 254, 0.17) 100%);
    padding-top: 123px;
}

.join-screen.join-comfortable .img-wrap {
    width: 418px;
    margin-bottom: -32px;
}

.join-screen.join-comfortable .img {
    padding-top: 145.22%;
}

.join-screen.join-safe {
    padding-top: 134px;
}

.join-screen.join-safe .img-wrap {
    width: 340px;
}

.join-screen.join-safe .img {
    padding-top: 168.82%;
}

.join-screen.join-profitable {
    padding-top: 144px;
    padding-bottom: 175px;
}

.join-screen.join-profitable .text-content {
    width: 340px;
}

.join-screen.join-profitable .new-res {
    display: none;
    line-height: 1.2;
    text-align: center;
    background: #fff;
    border: 1px solid #e9e9e9;
    border-radius: 25px;
    box-shadow: 0px 64px 72px 0px rgba(0, 0, 0, 0.1);
    width: 300px;
    max-width: 100%;
    overflow: hidden;
    margin-top: 30px;
}

.join-screen.join-profitable .new-res .cap {
    font-weight: bold;
    font-size: 24px;
}

.join-screen.join-profitable .new-res .sub-cap {
    font-size: 14px;
    color: #8a8a8a;
    margin-top: 5px;
}

.join-screen.join-profitable .new-res .res-text {
    padding: 37px 20px;
    padding-bottom: 33px;
}

.join-screen.join-profitable .new-res .btn {
    font-weight: bold;
    font-size: 16px;
    color: #11af45;
    border-top: 1px solid #5d5d5c;
    padding: 18px;
    cursor: pointer;
}

.join-screen.join-profitable .new-res .btn:hover {
    opacity: 0.7;
}

#join-page {
    position: relative;
    z-index: 1;
}

#join-page .content {
    display: table;
    width: 100%;
}

#join-page .content .cell {
    display: table-cell;
    vertical-align: middle;
}

#join-page .content .cell + .cell {
    text-align: right;
}

#join-page .box {
    display: flex;
    align-items: center;
}

#join-page .text .main-head {
    font-size: 32px;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 20px;
}

#join-page .text ul {
    font-size: 15px;
    line-height: 22px;
    margin-left: 15px;
}

#join-page .text ul:not(:last-child), #join-page .text li:not(:last-child) {
    margin-bottom: 20px;
}

#join-page .text .head {
    font-size: 25px;
    line-height: 1.2;
    font-weight: bold;
}

#join-page .text .head span {
    display: inline-block;
}

#join-page .text .sub {
    font-size: 14px;
    line-height: 1.2;
    margin-top: 5px;
}

#join-page .text .container {
    padding-left: 75px;
    display: inline-block;
    position: relative;
}

#join-page .text .container:not(:last-child) {
    margin-bottom: 90px;
}

#join-page .text .container:after {
    background: url('../img/curve-arrow-gradient.svg') no-repeat;
    background-size: contain;
    width: 90px;
    height: 90px;
}

#join-page .text .container:nth-last-child(2) {
    padding-right: 100px;
}

#join-page .text .container:nth-last-child(2):after {
    content: '';
    transform: scaleX(-1) rotate(-120deg);
    position: absolute;
    right: 0;
    top: 20px;
}

#join-page .text .container:nth-last-child(1):after {
    content: '';
    transform: scale(-1) rotate(-20deg);
    position: absolute;
    right: -40px;
    top: 70px;
}

#join-page .form {
    color: #000;
    background: #fefdff;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.19);
    border-radius: 5px;
    display: inline-block;
    position: relative;
    text-align: left;
    width: 350px;
    height: 450px;
    padding-left: 53px;
    padding-top: 81px;
    padding-right: 48px;
    box-sizing: border-box;
    margin-right: 100px;
    opacity: 0.9;
}

#join-page .form img {
    width: 50px;
    height: 50px;
}

#join-page .form #join3 img {
    width: auto;
    max-width: 100%;
    display: block;
    margin: auto;
    margin-top: -30px;
}

#join-page .form .head {
    font-size: 23px;
    font-weight: bold;
    margin-top: 9px;
    margin-bottom: 11px;
}

#join-page .form #join3 .head {
    font-size: 14px;
    line-height: 1.2;
    text-align: center;
    min-height: 19px;
    margin-top: 30px;
    margin-bottom: 30px;
}

#join-page .form .sub {
    font-size: 13px;
    line-height: 1.2;
    min-height: 35px;
}

#join-page .form #join2 .sub {
    font-size: 14px;
}

#join-page .form .field {
    margin-top: 20px;
    margin-bottom: 10px;
}

#join-page .form .but {
    width: 100%;
}

#join-page .form .but:not(.loading):hover:after {
    background: linear-gradient(#fefdff, #fefdff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
}

#join-page .form .hint {
    color: #969696;
    font-size: 13px;
    line-height: 1.2;
    text-align: center;
    margin-top: 15px;
    display: none;
}

#join-page .form #join2 .hint {
    display: block;
    margin-top: 23px;
    cursor: pointer;
}

#join-page .form #join2 .hint:hover {
    color: #f65151;
}

#join-page .form #join3 .hint {
    margin-top: 30px;
}

#join-page .form .prev {
    position: absolute;
    width: 27px;
    height: 27px;
    left: 0;
    right: 0;
    bottom: 27px;
    margin: auto;
    cursor: pointer;
}

#join-page .form .prev img {
    width: 100%;
}

#join-page .form .verified {
    text-align: center;
}

#join-page .form .auth {
    padding-top: 75px;
}

#join-page .form .auth .but {
    margin-top: 10px;
}

#join2, #join3 {
    display: none;
}

#join-page .login {
    text-align: center;
    max-width: 320px;
    margin: auto;
    position: relative;
}

#join-page .login .heading {
    font-size: 25px;
    font-weight: bold;
    margin-bottom: 25px;
}

#join-page .login .sub {
    font-size: 14px;
    line-height: 1.2;
    text-align: center;
    margin-top: 35px;
    margin-bottom: 35px;
}

#join-page .login .sub a {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

#join-page .login .field {
    margin-bottom: 10px;
}

#join-page .login .but {
    width: 100%;
}

#join-page .login .forgot {
    text-align: right;
    margin-top: 12px;
}

#join-page .login .forgot a {
    font-size: 14px;
    color: #000;
}

#join-page .login .login-link {
    margin-top: 50px;
}

#join-page .login .login-link a {
    font-size: 14px;
    color: #000;
}

#join-page form {
    position: relative;
}

#join-page .error, #join-page .response {
    margin-top: 10px;
    position: absolute;
    left: 0;
    right: 0;
}

#join-page #join2 .error {
    margin-top: 5px;
}

#join-page .login .error, #join-page .login .response {
    top: 100%;
}

.login-page {
    margin-top: 20px;
}

.product-list {
    position: relative;
    margin-top: 50px;
}

.product-list .items {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    margin-left: -5px;
    margin-right: -5px;
    margin-top: 20px;
    margin-bottom: -20px;
}

.product-list.no-text .items {
    margin-bottom: -10px;
}

.homepage .product-list .items {
    margin-top: 20px;
}

.product-list.min .items {
    margin-top: 15px;
}

.product-list .animation-wrap + .items {
    margin-top: 10px;
}

#add-portfolio .product-list .items {
    margin-top: 5px;
    margin-bottom: -70px;
}

.product-list .all .but {
    font-size: 13px;
    line-height: 30px;
    height: 30px;
    padding: 0 15px;
    margin-top: 20px;
}

.product-list .all .but .hide {
    display: none;
}

.product-list.all .all .but .show {
    display: none;
}

.product-list.all .all .but .hide {
    display: block;
}

.product-list.all.hidden .all .but .show {
    display: block;
}

.product-list.all.hidden .all .but .hide {
    display: none;
}

.product-list .item {
    font-size: 13px;
    line-height: 16px;
    width: 25%;
    padding-left: 5px;
    padding-right: 5px;
    box-sizing: border-box;
    margin-bottom: 50px;
    position: relative;
}

#main-cats-text .product-list .item {
    margin-bottom: 20px;
}

.product-list.blog .item {
    margin-bottom: 60px;
}

.product-list.no-text .item {
    margin-bottom: 10px;
}

.product-list .item img {
    border-radius: 4px;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
}

.product-list .item:hover img {
    opacity: 0.8;
}

.product-list .item img[src*="default.png"]:after {
    background: #e9e9e9;
    opacity: 1;
    visibility: hidden;
    animation: none;
}

.product-list .item .img {
    background: #e8e8e8;
    border-radius: 4px;
    padding-top: 100%;
    position: relative;
}

.product-list .item .img .icons {
    font-size: 0;
    position: absolute;
    right: 10px;
    top: 10px;
    display: none;
}

.product-list .item .img.added .icons {
    display: block;
}

.product-list .item .img .icon {
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 43%;
    border-radius: 50%;
    width: 35px;
    height: 35px;
    display: inline-block;
    margin-left: 5px;
    cursor: pointer;
}

.product-list .item .img .icon.remove {
    background-image: url('../img/delete.svg');
}

.product-list .item .img .icon.remove:hover {
    background-image: url('../img/delete-red.svg');
}

.product-list .item .img .icon.main {
    background-image: url('../img/star-empty.svg');
    background-size: 50%;
}

.product-list .item .img .icon.main.selected {
    background-image: url('../img/star.svg');
    cursor: auto;
}

.product-list .item .img .icon.main:not(.selected):hover {
    background-image: url('../img/star-red.svg');
}

.product-list .item .img img {
    height: 100%;
    object-fit: cover;
}

.product-list .item:hover .img img {
    opacity: 1;
}

.product-list .item:not(.full-click) > a, .product-list .item .img-wrap {
    border-radius: 4px;
    display: block;
    position: relative;
    padding-top: 100%;
    overflow: hidden;
}

.product-list .item .title {
    color: #000;
    margin-top: 5px;
}

.product-list .item .title h3 {
    font-weight: normal;
}

.product-list .item .title span {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.product-list .item .name, .product-list .item .date {
    margin-top: 5px;
}

.product-list .item .name span, .product-list .item .date span {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.product-list .item .cats span:not(:last-child):after {
    content: ' • ';
}

.product-list .item .time {
    white-space: nowrap;
    text-overflow: ellipsis;
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-top: 2px;
    overflow: hidden;
}

.product-list .item .time span:not(:last-child):after {
    content: ' ∙ ';
}

.product-list .item .time span:nth-child(3):not(:last-child):after {
    content: ' …';
}

.product-list .item .time span:nth-child(3) ~ span {
    display: none;
}

.product-list .item .time + .price {
    display: inline-block;
    margin-top: 2px;
}

.product-list .item .phone {
    margin-top: 3px;
}

.product-list .item .phone a {
    color: #969696;
}

.product-list .item .address {
    margin-top: 3px;
}

.product-list.insta .item .address {
    color: #7d7d7d;
}

.product-list .item .link {
    position: absolute;
    top: 10px;
    right: 15px;
}

.product-list .item .delete {
    position: absolute;
    top: 50px;
    right: 15px;
}

.product-list .item .link a, .product-list .item .delete a {
    background: #fff url('../img/actions-new-window.svg') no-repeat center;
    border-radius: 50%;
    padding-top: 0;
    width: 35px;
    height: 35px;
    display: block;
}

.product-list .item .delete a {
    background-image: url('../img/cross.svg');
    background-size: 38% auto;
}

.product-list .item .status {
    font-size: 11px;
    margin-top: 2px;
}

.product-list .item .status.pend {
    color: #ff9400;
}

.product-list .item .status.conf {
    color: #008f00;
}

.product-list .item .status.ref {
    color: #ff0c04;
}

.product-list .item.new .title {
    font-weight: normal;
}

.product-list .item.new .box {
    position: relative;
    padding-top: 100%;
    cursor: pointer;
}

.product-list .item.new .box:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    border: 1px solid #f65151;
    border-radius: 4px;
}

.product-list .item.new .box img {
    display: block;
    max-width: 100%;
}

.product-list .item.new .box .plus {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 54px;
    height: 54px;
    border: 2px solid #d6d8d8;
    border-radius: 50%;
    box-sizing: border-box;
}

.product-list .item.new .box .plus:before, .product-list .item.new .box .plus:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background: #d6d8d8;
}

.product-list .item.new .box .plus:before {
    width: 22px;
    height: 2px;
}

.product-list .item.new .box .plus:after {
    width: 2px;
    height: 22px;
}

.product-list .item.start {
    line-height: 1.2;
    width: 75%;
    padding-bottom: 22px;
}

.product-list .item.start:first-child:last-child {
    width: 100%;
}

.product-list .item.start .inner {
    border: 1px solid #dad9d9;
    border-radius: 4px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding: 15px 50px;
}

.product-list .item.start .head {
    font-size: 31px;
    font-weight: bold;
}

.product-list .item.start p {
    font-size: 14px;
    margin-top: 20px;
}

.product-list .item.start p:first-child {
    margin-top: 0;
}

.product-list .slide {
    position: relative;
}

.product-list .item .slick-arrow {
    background: #fff url(../img/arrow-black.svg) no-repeat center;
    background-size: 12px;
    border-radius: 50%;
    box-shadow: transparent 0px 0px 0px 1px, transparent 0px 0px 0px 4px, rgba(0, 0, 0, 0.18) 0px 2px 4px;
    width: 35px;
    height: 35px;
    margin: auto;
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    opacity: 0;
    cursor: pointer;
}

.product-list .item:hover .slick-arrow {
    opacity: 0.8;
}

.product-list .item:hover .slick-arrow:hover {
    opacity: 1;
}

.product-list .item .slick-prev {
    background-image: url('../img/arrow-left-black.svg');
    left: 10px;
}

.product-list .item .slick-next {
    right: 10px;
}

.product-list .item .slick-dots {
    text-align: center;
    position: absolute;
    z-index: 1;
    bottom: 5px;
    left: 0;
    right: 0;
}

.product-list .item .slick-dots li button {
    background: #fff;
    border: none;
    opacity: 0.5;
    width: 7px;
    height: 7px;
}

.product-list .item .slick-dots li.slick-active button {
    background: #fff;
    border: none;
    opacity: 1;
}

.homepage .product-list .all-but {
    margin-top: 20px;
}

.homepage .product-list .but.transp {
    font-size: 13px;
    line-height: 30px;
    height: 30px;
    display: inline-block;
    padding: 0 15px;
}

.header + .product-list, .product-list:first-child {
    margin-top: 15px;
}

#profile .product-list:first-child {
    margin-top: 10px;
}

.homepage .product-list:first-child {
    margin-top: 28px;
}

.product-list .heading-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.product-list .heading-wrap .heading {
    margin-bottom: 0 !important;
}

.product-list .heading {
    font-size: 20px;
    font-weight: bold;
    position: relative;
    margin-bottom: 15px;
}

.product-list.insta .heading {
    font-size: 30px;
    margin-top: 70px;
}

.homepage .product-list .heading {
    font-size: 21px;
    margin-bottom: 8px;
}

.homepage .product-list .heading {
    padding-right: 0;
}

.product-list .heading a {
    color: #000;
}

.product-list .heading a:hover {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.product-list .heading .arr {
    background: url('../img/arrow-black.svg') no-repeat;
    background-size: contain;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 10px;
}

.product-list.profile .heading span {
    font-size: 15px;
}

.product-list.profile .heading img, .product-list.blog .heading img {
    vertical-align: middle;
    width: 40px;
    height: 40px;
    margin-right: 12px;
    position: relative;
    top: -1px;
}

.product-list.profile .upload-but, .profile_error {
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 10px;
}

.product-list.profile .upload-but {
    margin-right: 10px;
}

.product-list.profile .upload-but .but, .header .button .but {
    font-size: 13px;
    line-height: 28px;
    height: 30px;
    padding: 0 15px;
}

.product-list.profile .desc {
    font-size: 14px;
    line-height: 1.2;
}

.product-list .city-drop {
    display: inline-block;
}

.product-list .city-drop .drop {
    position: relative;
    padding-left: 20px;
    padding-right: 15px;
}

.product-list .city-drop .drop:before {
    content: '';
    background: url('../img/location.svg') no-repeat;
    background-size: contain;
    width: 16px;
    height: 22px;
    position: absolute;
    left: 0;
    top: -3px;
}

.product-list .city-drop .drop:after {
    content: '';
    background: url('../img/arrow-black.svg') no-repeat;
    background-size: contain;
    position: absolute;
    top: 4px;
    right: 0;
    width: 10px;
    height: 10px;
    transform: rotate(90deg);
    transition: 0.3s;
}

.product-list .city-drop .drop.active:after {
    transform: rotate(270deg);
}

.product-list .city-drop .drop > span {
    font-size: 15px;
    font-weight: normal;
    position: relative;
    cursor: pointer;
    user-select: none;
}

.product-list .city-drop .drop > span:after {
    content: '';
    background: #fff;
    border-top: 1px solid;
    border-left: 1px solid;
    border-color: #e5e5e5;
    width: 13px;
    height: 13px;
    position: absolute;
    z-index: 991;
    left: 0;
    bottom: -35px;
    transform: rotate(45deg);
    opacity: 0;
    visibility: hidden;
    transition: 0.5s;
}

.product-list .city-drop .drop.active > span:after {
    bottom: -25px;
    opacity: 1;
    visibility: visible;
}

.product-list .city-drop .dropdown {
    font-weight: normal;
    min-width: 160px;
    max-height: 268px;
    overflow-y: auto;
    right: auto;
    left: 0;
}

.product-list .city-drop .dropdown:before {
    right: auto;
    left: 22px;
}

.product-list .sub {
    font-size: 14px;
    color: #969696;
}

.product-list .top-info {
    box-shadow: 0 1px 5px 0 #ecebeb;
    border: 1px solid #ecebeb;
    border-radius: 5px;
    padding: 20px;
}

.product-list .top-info .capt {
    font-size: 17px;
    font-weight: bold;
}

.product-list .top-info .capt.loc {
    display: inline-block;
    position: relative;
}

.product-list .top-info .text {
    font-size: 12px;
    line-height: 1.2;
}

.product-list .top-info .capt + .text {
    margin-top: 10px;
}

.product-list .top-info .buts {
    margin-top: 10px;
}

.product-list .top-info .btn {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
}

.product-list .top-info .btn:hover {
    color: #fff;
    background: linear-gradient(to bottom, #c872f2, #f772d1);
}

.product-list .items.slider {
    display: block;
}

.product-list .slick-dots {
    text-align: right;
    padding-right: 2px;
}

.product-list .slick-dots li {
    margin: 3px;
}

.product-list .slick-dots li button {
    background: none;
    border: 2px solid #e1dfdf;
    width: 11px;
    height: 11px;
}

.product-list .slick-dots li.slick-active button {
    background: #e1dfdf;
}

.tab-items-wrap {
    position: relative;
}

.tab-items-wrap .items:not(.active) {
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    bottom: 100%;
    opacity: 0;
}

.text-description {
    font-size: 14px;
    line-height: 1.2;
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 5px;
    padding: 25px 34px;
    margin-top: 50px;
}

.text-description.small {
    font-size: 12px;
    padding: 20px 12px;
    margin-top: 17px;
    margin-bottom: 17px;
}

.more-services {
    margin-top: 20px;
}

.more-services .row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
}

.more-services .col {
    width: 50%;
    box-sizing: border-box;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 30px;
}

.more-services .col.max {
    width: 100%;
}

.more-services .box {
    line-height: 1.2;
}

.more-services .box .capt {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 10px;
}

.more-services .box .capt a {
    color: #000;
    display: inline-block;
}

.more-services .box .capt a:hover {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.more-services .box li {
    list-style: none;
    padding-left: 10px;
    position: relative;
}

.more-services .box li h3 {
    font-weight: normal;
}

.more-services .box li:not(:last-child) {
    margin-bottom: 7px;
}

.more-services .box li:before {
    content: '';
    background: #676767;
    border-radius: 50%;
    width: 4px;
    height: 4px;
    position: absolute;
    left: 0;
    top: 7px;
}

.more-services .box li a {
    font-size: 14px;
    color: #676767;
    text-decoration: none;
}

.more-services .box li span {
    font-size: 14px;
    font-weight: bold;
}

.more-services .box li a:hover {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.more-services .inner-row {
    display: flex;
}

.more-services .inner-col {
    flex: 1;
}

.more-services .col.max .box .capt {
    margin-bottom: 5px;
}

.more-services .col.max .box li a, .more-services .col.max .box li span {
    font-size: 14px;
}

.more-services .col.max .box li:before {
    top: 9px;
}

.more-services .col.max .box li:not(:last-child) {
    margin-bottom: 7px;
}

.more-services .col.max:not(.service-page) .box ul:not(.opened) li:nth-child(12) ~ li {
    display: none;
}

.more-services .col.max .show-more {
    font-size: 11px;
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    cursor: pointer;
    display: inline-block;
    margin-top: 7px;
}

.more-services .col.max .inner-col:not(.shrinked) .show-more, .more-services .col.max.service-page .show-more {
    display: none;
}

.more-services .col.max .show-more:hover {
    opacity: 0.7;
}

.more-services .col.max .show-more:not(.active) .less {
    display: none;
}

.more-services .col.max .show-more.active .more {
    display: none;
}

.more-services .inner-col.two-cols ul {
    column-count: 4;
    margin: 50px 0;
}

.more-services .inner-col.two-cols li {
    break-inside: avoid;
}

.pagination {
    margin-top: 20px;
    margin-bottom: 30px;
}

.pagination li:first-child {
    margin-left: -15px;
}

.pagination li {
    color: #272727;
    font-size: 18px;
    font-weight: bold;
    display: inline-block;
    width: 37px;
    height: 37px;
    line-height: 37px;
    text-align: center;
    list-style: none;
}

.pagination a {
    display: block;
    color: #272727;
}

.pagination a:hover {
    color: #326365;
}

.pagination li.active a, .pagination li.active {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.profile_error {
    display: none;
    font-size: 13px;
    color: #f65151;
}

.profile_error.vis {
    display: inline-block;
}

#profile {
    margin-top: 10px;
    margin-bottom: -20px;
}

#profile .product-list .sub {
    line-height: 1.2;
    color: #000;
    background: #fff;
    box-shadow: 0 1px 5px 0 #ecebeb;
    border: 1px solid #ecebeb;
    border-radius: 5px;
    padding: 28px 25px;
    padding-right: 35%;
    position: relative;
}

#profile .product-list .profile-calendar ~ .sub {
    margin-bottom: 0;
    margin-top: 20px;
}

#profile .product-list .animation-wrap .sub {
    padding-top: 40px;
    padding-bottom: 40px;
    margin-bottom: 10px;
    transition: margin 0.7s;
}

#profile .product-list .animation-wrap .sub.hidden {
    margin-top: -200px;
}

#profile .product-list .sub.schedule-block, #profile .product-list .sub.text-block {
    padding-top: 50px;
    padding-bottom: 50px;
}

#profile .close-but {
    border: 1px solid #000;
    border-radius: 50%;
    background: url('../img/cross.svg') no-repeat center;
    background-size: 44%;
    width: 20px;
    height: 20px;
    cursor: pointer;
    position: absolute;
    right: 10px;
    top: 10px;
}

#profile .close-but:hover {
    border-color: #c872f2;
    background-image: url('../img/cross-gradient.svg');
}

#profile .product-list .sub-error {
    font-size: 12.5px;
    color: #ff0000;
    position: absolute;
    bottom: 10px;
}

#profile .product-list .sub.full {
    padding-right: 25px;
}

#profile .product-list .items + .sub {
    margin-top: 50px;
}

/*#profile .product-list .sub p:not(:first-child) {*/
/*    margin-top: 15px;*/
/*}*/

#profile .product-list .sub .box {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#profile .product-list .sub .text {
    margin-left: 30px;
    margin-right: 20px;
}

#profile .product-list .sub .box .but {
    font-size: 12px;
    line-height: 32px;
    border-radius: 30px;
    height: 32px;
    min-width: 100px;
    padding: 0 15px;
}

#profile .product-list .sub .box .but:after {
    border-radius: 30px;
}

#profile .product-list .sub .box .but:not(.loading):hover:after {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

#profile .product-list .sub .box .but.transp:after {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

#profile .product-list .sub .box .but + .but, #profile .product-list .sub .box .but + a .but, #profile .product-list .sub .box a + a .but {
    margin-left: 5px;
}

#profile .product-list .sub .act {
    margin-left: auto;
    margin-right: 20px;
    flex-shrink: 0;
}

#profile .product-list .sub .act .but:not(.loading):hover {
    background: linear-gradient(#f8f7f7, #f8f7f7) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

#profile .product-list .sub .text .capt {
    font-weight: bold;
    margin-bottom: 15px;
}

#profile .product-list .sub .text .capt span, #profile .product-list .sub .text .capt img {
    vertical-align: middle;
}

#profile .product-list .sub .text .capt span {
    margin-right: 5px;
}

#profile .product-list .sub .text .capt #logout-button {
    cursor: pointer;
}

#profile .product-list .sub .toggle-button {
    margin-top: 5px;
}

#profile .product-list .sub .text .user-phone {
    margin-top: 3px;
}

#profile .product-list .sub .text .user-phone span {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

#profile .product-list .sub .text .sub-cap {
    font-size: 12.5px;
}

#profile .product-list .sub .text .profile-menu {
    font-size: 12.5px;
    margin-bottom: -10px;
    margin-top: 20px;
}

#profile .product-list .sub .text .profile-menu li {
    display: inline-block;
    margin-bottom: 10px;
    position: relative;
}

#profile .product-list .sub .text .profile-menu li:not(:last-child) {
    margin-right: 20px;
}

#profile .product-list .sub .text .profile-menu li:not(:last-child):after {
    content: '•';
    position: absolute;
    right: -14px;
}

#profile .product-list .sub .text .profile-menu li a {
    color: #000;
}

#profile .product-list .sub .text .profile-menu li.new-tab {
    padding-right: 25px;
}

#profile .product-list .sub .text .profile-menu li.new-tab:before {
    content: '';
    background: url('../img/new-tab.svg') no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    position: absolute;
    top: -4px;
    right: 0;
}

#profile .product-list .sub .text .profile-menu li.logout img {
    margin-left: 5px;
    position: absolute;
    top: -4px;
}

.time-selection .time-list {
    -webkit-tap-highlight-color: transparent;
}

.time-selection .time-list input {
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
}

.time-selection .time-list span {
    font-size: 14px;
    line-height: 23px;
    text-align: center;
    border: 1px solid transparent;
    border-radius: 40px;
    height: 25px;
    min-width: 50px;
    box-sizing: border-box;
    display: inline-block;
    margin-top: 7px;
    cursor: pointer;
}

.time-selection .time-list input:checked + span, .time-selection .time-list span:hover {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

@media (hover: none) {
    .time-selection .time-list span:hover {
        background: none;
    }
}

.time-selection .time-list input:disabled + span {
    color: #fff;
    background: linear-gradient(to bottom, #c872f2, #f772d1);
    border: none;
    cursor: auto;
}

.time-selection.past .time-list label.disabled, .time-selection.past .time-list input:not(:disabled) + span {
    display: none;
    pointer-events: none;
}

.time-selection.past #schedule-save {
    display: none;
}

.time-selection-wrap {
    overflow: hidden;
}

.time-selection .day {
    font-weight: bold;
    margin-bottom: 7px;
}

.time-selection .time-list {
    max-width: 800px;
}

.time-selection .but {
    margin-top: 15px;
}

.time-selection .error {
    display: none;
    text-align: left;
    position: absolute;
    margin-top: 10px;
}

.time-selection:not(.active) .error {
    display: none !important;
}

.profile-calendar {
    border: 1px solid #ecebeb;
    border-radius: 5px;
    box-shadow: 0 1px 5px 0 #ecebeb;
    overflow: hidden;
}

.sub + .profile-calendar {
    margin-top: 20px;
}

.profile-calendar .calendar-head {
    min-height: 25px;
    padding: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}

.profile-calendar .calendar-head .heading {
    font-weight: bold;
    font-size: 19px;
    margin: 10px 0;
    position: relative;
    z-index: 2;
}

.profile-calendar .calendar-head .selector {
    font-size: 12.5px;
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
    user-select: none;
}

.profile-calendar .calendar-head .selector .value {
    font-weight: bold;
    font-size: 12.5px;
    text-align: center;
    min-width: 60px;
    padding: 0 30px;
    display: inline-block;
    position: relative;
}

.profile-calendar .calendar-head .selector .week-type .value {
    min-width: 75px;
}

.profile-calendar .calendar-head .selector .value .prev, .profile-calendar .calendar-head .selector .value .next {
    background: url('../img/arrow-down.svg') no-repeat center;
    width: 20px;
    height: 20px;
    position: absolute;
    top: -4px;
    cursor: pointer;
}

.profile-calendar .calendar-head .selector .value .prev.disabled, .profile-calendar .calendar-head .selector .value .next.disabled {
    opacity: 0.2;
    pointer-events: none;
}

.profile-calendar .calendar-head .selector .value .prev:hover, .profile-calendar .calendar-head .selector .value .next:hover {
    background-image: url('../img/arrow-down-gradient.svg');
}

.profile-calendar .calendar-head .selector .value .prev {
    left: 0;
    transform: rotate(90deg);
}

.profile-calendar .calendar-head .selector .value .next {
    right: 0;
    transform: rotate(-90deg);
}

.profile-calendar .calendar-head .error, .profile-calendar .calendar-head .actions {
    position: relative;
    z-index: 1;
}

.profile-calendar .calendar-head .actions {
    flex-shrink: 0;
    user-select: none;
}

.calendar-foot {
    display: none;
    margin-top: 25px;
}

.calendar-foot .actions {
    border: 1px solid #ecebeb;
    border-radius: 5px;
    padding: 15px;
    display: flex;
    justify-content: space-around;
    user-select: none;
}

.calendar-foot .action-wrap {
    text-align: center;
    flex: 1;
}

.calendar-foot .error {
    font-size: 10px;
    margin-top: 10px;
    margin-bottom: 20px;
}

.profile-calendar .actions div, .calendar-foot .action-wrap div {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 23px 23px;
    display: inline-block;
    width: 25px;
    height: 25px;
    margin-left: 15px;
    cursor: pointer;
}

.calendar-foot .action-wrap div {
    margin-left: 0;
}

.profile-calendar .actions div:hover span, .calendar-foot .action-wrap div:hover span {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.profile-calendar .actions span, .calendar-foot .actions span {
    font-size: 9px;
    display: none;
}

.profile-calendar .actions .month-act, .calendar-foot .actions .month-act {
    background-image: url('../img/calendar.svg');
}

.profile-calendar .actions .month-act:hover, .calendar-foot .actions .month-act:hover {
    background-image: url('../img/calendar-gradient.svg');
}

.profile-calendar .actions .week-act, .calendar-foot .actions .week-act {
    background-image: url('../img/seven.svg');
}

.profile-calendar .actions .week-act:hover, .calendar-foot .actions .week-act:hover {
    background-image: url('../img/seven-gradient.svg');
}

.profile-calendar .actions .reservations-act, .calendar-foot .actions .reservations-act {
    background-image: url('../img/tick-circle.svg');
}

.profile-calendar .actions .reservations-act:hover, .calendar-foot .actions .reservations-act:hover {
    background-image: url('../img/tick-circle-gradient.svg');
}

.profile-calendar .actions .slots-act, .calendar-foot .actions .slots-act {
    background-image: url('../img/tick-circle-gray.svg');
}

.profile-calendar .actions .slots-act:hover, .calendar-foot .actions .slots-act:hover {
    background-image: url('../img/tick-circle-gray-gradient.svg');
}

.profile-calendar .actions .new-record, .calendar-foot .actions .new-record {
    background-image: url('../img/plus-circle-gradient.svg');
}

.profile-calendar .actions .reservations-act, .calendar-foot .actions .reservations-act,
.profile-calendar .actions .slots-act, .calendar-foot .actions .slots-act {
    display: none;
}

.profile-calendar .calendar-picker {
    display: none;
}

.profile-calendar .calendar-head .month-type:not(.active), .profile-calendar .calendar-head .week-type:not(.active), .profile-calendar .calendar-head .day-type:not(.active) {
    display: none;
}

.profile-calendar .calendar-month:not(.active), .profile-calendar .calendar-week:not(.active), .profile-calendar .calendar-day:not(.active) {
    display: none;
}

.profile-calendar .calendar-week tbody tr:not(.active) {
    display: none;
}

.profile-calendar .calendar-month, .profile-calendar .calendar-week {
    margin-left: -1px;
    margin-right: -2px;
    margin-bottom: -1px;
    overflow: hidden;
}

.profile-calendar .ui-datepicker-calendar {
    width: 100%;
    table-layout: fixed;
}

.profile-calendar .ui-datepicker-calendar td, .profile-calendar .ui-datepicker-calendar th {
    border: 1px solid #ecebeb;
}

.profile-calendar .ui-datepicker th {
    font-weight: bold;
    background: none;
    -webkit-text-fill-color: inherit;
    padding: 15px 0;
}

.profile-calendar .ui-datepicker .th-date {
    display: none;
}

.profile-calendar .ui-datepicker td {
    vertical-align: top;
    height: 100px;
    padding: 7px 10px;
    padding-right: 40px;
    box-sizing: border-box;
    position: relative;
}

.profile-calendar .ui-datepicker td.unavailable {
    opacity: 0.3;
    pointer-events: none;
}

#profile .profile-calendar .ui-datepicker td.unavailable {
    opacity: 1;
    pointer-events: auto;
}

#profile .profile-calendar .ui-datepicker td.unavailable .ui-state-default {
    opacity: 0.3;
}

#profile .profile-calendar .ui-datepicker td.unavailable .slot {
    display: none;
}

.public-profile .profile-calendar .ui-datepicker td.unavailable .reservation-data {
    display: none;
}

.profile-calendar .calendar-week .ui-datepicker td {
    height: 500px;
    padding-top: 35px;
    padding-right: 10px;
}

.profile-calendar .ui-datepicker td span, .profile-calendar .ui-datepicker td a {
    line-height: 1;
    width: auto;
    height: auto;
}

.profile-calendar .ui-datepicker td a {
    border: none;
    font-weight: normal !important;
}

.profile-calendar .ui-datepicker td a.ui-state-active {
    background: none;
    border: none;
    border-radius: 0;
}

.profile-calendar .ui-state-disabled .ui-state-default {
    color: #000;
}

.profile-calendar .ui-datepicker td .ui-state-default {
    position: absolute;
    top: 10px;
    right: 10px;
    pointer-events: none;
}

.profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data ul {
    height: 85px;
    column-count: 2;
    column-fill: auto;
}

.profile-calendar .ui-datepicker-calendar .reservation-data li {
    display: block;
}

.profile-calendar .ui-datepicker-calendar .reservation-data li a, .profile-calendar .ui-datepicker-calendar .reservation-data li span {
    font-size: 10.4px;
    line-height: 1.2;
    cursor: pointer;
}

.profile-calendar.info-only .ui-datepicker-calendar .reservation-data li a, .profile-calendar.info-only .ui-datepicker-calendar .reservation-data li span {
    cursor: auto;
}

.profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li {
    margin-bottom: 5px;
}

.profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li.slot {
    margin-bottom: 10px;
}

.profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li a, .profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li span {
    font-size: 12.5px;
}

.profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li a {
    text-align: left;
    border: 1px solid transparent;
    border-radius: 5px;
    padding: 5px;
    max-width: 100%;
    box-sizing: border-box;
    display: inline-block;
}

.profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li.slot a {
    border: none;
    border-radius: 0;
    padding: 0;
}

.profile-calendar:not(.info-only) .calendar-week .ui-datepicker-calendar .reservation-data li a:not(.active):hover {
    color: #000;
    border: 1px solid #ecebeb;
}

.profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li.slot a:hover .time, .profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li.slot a.active .time {
    color: #fff;
    background: linear-gradient(to bottom, #c872f2, #f772d1);
}

.profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li.slot a:hover, .profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li.slot a.active {
    border: none !important;
}

.profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li a.active {
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
}

.profile-calendar .calendar-month .reservation-data .service, .profile-calendar .calendar-month .reservation-data .name {
    display: none;
}

.profile-calendar.info-only .ui-datepicker-calendar .reservation-data li.reservation span {
    text-decoration: line-through;
}

.profile-calendar .calendar-week .reservation-data .service, .profile-calendar .calendar-week .reservation-data .name {
    text-align: left;
    width: 100%;
    display: inline-block;
    margin-top: 3px;
}

.profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data .time {
    font-size: 10.4px;
    line-height: 18px;
    color: #fff;
    background: linear-gradient(to bottom, #c872f2, #f772d1);
    border-radius: 30px;
    height: 20px;
    padding: 0 7px;
    display: inline-block;
}

.profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data .slot .time {
    color: #000;
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
}

.profile-calendar .slide-track {
    font-size: 0;
    white-space: nowrap;
    transform: translate3d(0, 0, 0);
    transition: transform .7s;
}

.profile-calendar .slide-track.transition-off {
    transition: none;
}

.profile-calendar .slide-track .ui-datepicker {
    white-space: normal;
    display: inline-block !important;
    vertical-align: top;
}

.create-reservation {
    border: 1px solid #ecebeb;
    box-shadow: 0 1px 5px 0 #ecebeb;
    border-radius: 5px;
    padding: 50px 40px;
    margin-top: 20px;
}

.create-reservation .head {
    font-weight: bold;
    font-size: 19px;
    margin-bottom: 20px;
}

.create-reservation .fields {
    display: flex;
}

.create-reservation .field:not(:last-child) {
    margin-right: 15px;
}

.create-reservation .field.service {
    width: 300px;
}

.create-reservation .field.name, .create-reservation .field.number {
    flex-grow: 1;
}

.create-reservation .date-time {
    display: flex;
    margin-top: 15px;
}

.create-reservation .date-time .date {
    border: 1px solid #ecebeb;
    border-radius: 5px;
    box-shadow: 0 1px 5px 0 #ecebeb;
    width: 300px;
    padding: 20px;
    box-sizing: border-box;
    flex-shrink: 0;
}

.create-reservation .date-time .ui-datepicker-calendar {
    width: 100%;
}

.create-reservation .date-time .ui-datepicker .ui-datepicker-header {
    display: block;
}

.create-reservation .date-time .ui-datepicker td a {
    font-weight: normal !important;
}

.create-reservation .date-time .ui-datepicker td a.ui-state-active {
    font-weight: bold !important;
}

.create-reservation .date-time .time {
    border: 1px solid #ecebeb;
    border-radius: 5px;
    box-shadow: 0 1px 5px 0 #ecebeb;
    padding: 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: 15px;
}

.create-reservation .date-time .time .capt {
    font-weight: bold;
    font-size: 12.5px;
    margin-bottom: 15px;
    margin-left: 8px;
}

.create-reservation .time .selection input {
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
}

.create-reservation .time .selection span {
    font-size: 11.5px;
    line-height: 26px;
    border: 1px solid transparent;
    border-radius: 40px;
    height: 26px;
    padding: 0 8px;
    box-sizing: border-box;
    display: inline-block;
    margin-bottom: 5px;
    cursor: pointer;
}

.create-reservation .time .selection input:disabled + span {
    text-decoration: line-through;
    cursor: auto;
}

.create-reservation .time .selection input:checked + span, .create-reservation .time .selection input:not(:disabled) + span:hover {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

.create-reservation .time .selection input:checked + span {
    font-weight: bold;
}

.create-reservation .actions {
    display: flex;
    margin-top: 15px;
}

.create-reservation .buttons {
    width: 300px;
}

.create-reservation .checkbox {
    font-size: 13px;
    margin-left: 15px;
}

.create-reservation .but {
    font-size: 11.5px;
    min-width: 130px;
    margin-right: 5px;
}

.create-reservation .error {
    font-size: 11.5px;
    text-align: left;
    margin-top: 10px;
    position: absolute;
}

.promotion-dates {
    border: 1px solid #ecebeb;
    box-shadow: 0 1px 5px 0 #ecebeb;
    border-radius: 5px;
    padding: 50px 40px;
    margin-top: 20px;
}

.promotion-dates .head {
    font-weight: bold;
    font-size: 19px;
    margin-bottom: 20px;
}

.promotion-dates .date-time {
    display: flex;
    margin-top: 15px;
}

.promotion-dates .date-time .date {
    border: 1px solid #ecebeb;
    border-radius: 5px;
    box-shadow: 0 1px 5px 0 #ecebeb;
    width: 300px;
    padding: 20px;
    box-sizing: border-box;
    flex-shrink: 0;
}

.promotion-dates .date-time .time {
    border: 1px solid #ecebeb;
    border-radius: 5px;
    box-shadow: 0 1px 5px 0 #ecebeb;
    padding: 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: 15px;
}

.promotion-dates .date-time .ui-datepicker .ui-datepicker-header {
    display: block;
}

.promotion-dates .date-time .ui-datepicker-calendar {
    width: 100%;
}

.promotion-dates .date-time .time .capt {
    font-weight: bold;
    font-size: 12.5px;
    margin-bottom: 15px;
    margin-left: 8px;
}

.promotion-dates .time .selection input {
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
}

.promotion-dates .time .selection span {
    font-size: 11.5px;
    line-height: 26px;
    border: 1px solid transparent;
    border-radius: 40px;
    height: 26px;
    padding: 0 8px;
    box-sizing: border-box;
    display: inline-block;
    margin-bottom: 5px;
    cursor: pointer;
    user-select: none;
}

.promotion-dates .time .selection input[disabled] + span {
    color: #fff;
    background: linear-gradient(to bottom, #c872f2, #f772d1);
    cursor: auto;
}

.promotion-dates .time .selection input:checked + span, .promotion-dates .time .selection input:not(:disabled) + span:hover {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

.promotion-dates .actions {
    margin-top: 15px;
}

.promotion-dates .but {
    font-size: 11.5px;
    min-width: 130px;
    margin-right: 5px;
}

.promotion-dates .error {
    font-size: 11.5px;
    text-align: left;
    margin-top: 10px;
    position: absolute;
}

.promotion-item {
    margin-top: 15px;
}

.promotion-item .error {
    font-size: 12px;
    text-align: right;
    margin-top: 5px;
}

.promotion-item .box {
    border: 1px solid rgb(236, 235, 235);
    border-radius: 5px;
    background: rgb(255, 255, 255);
    box-shadow: rgb(236, 235, 235) 0px 1px 5px 0px;
    padding: 25px 30px;
    display: flex;
    position: relative;
    flex-wrap: wrap;
}

.promotion-item .promotion-data {
    font-size: 16px;
    margin-bottom: 35px;
}

.promotion-item .id {
    font-size: 14px;
    position: absolute;
    top: 20px;
    right: 20px;
}

.promotion-item .cap {
    font-size: 25px;
    font-weight: bold;
    letter-spacing: -0.025em;
}

.promotion-item .inline-content {
    display: flex;
    align-items: center;
    margin-top: 15px;
}

.promotion-item .time, .promotion-item .price {
    padding-left: 25px;
    position: relative;
}

.promotion-item .time {
    margin-left: 15px;
}

.promotion-item .time:before {
    content: '';
    background: url('../img/clock-gradient.svg') no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 0;
    left: 0;
}

.promotion-item .price {
    font-size: 18px;
}

.promotion-item .price:before {
    content: '';
    background: url('../img/usd-coin-gradient.svg') no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 1px;
    left: 0;
}

.promotion-item .actions {
    flex-shrink: 0;
    margin-left: auto;
    margin-top: auto;
    position: relative;
}

.promotion-item .but {
    font-size: 11.4px;
    line-height: 28px;
    white-space: nowrap;
    vertical-align: top;
    border-radius: 5px;
    height: 30px;
    min-width: 120px;
    padding: 0px 3px;
    margin-left: 5px;
}

.promotion-item .but:after {
    border-radius: 5px;
}

.promotion-item .but.cancel {
    color: rgb(218, 2, 0);
    background: none;
    border: 1px solid rgb(218, 2, 0);
}

.promotion-item .but.cancel:after {
    display: none;
}

.promotion-item .but.cancel:not(.loading):hover {
    color: rgb(255, 255, 255);
    background: rgb(218, 2, 0) !important;
}

.promotion-item .actions .confirm {
    display: none;
    font-weight: bold;
    margin-bottom: 10px;
    position: absolute;
    left: 0;
    bottom: 100%;
}

.promotion-item .actions .confirm a {
    cursor: pointer;
}

.promotion-item .actions .confirm a:hover {
    color: rgb(218, 2, 0);
}

.profile-bg {
    line-height: 1.2;
    border: 1px solid #ecebeb;
    box-shadow: 0 1px 5px 0 #ecebeb;
    border-radius: 5px;
    padding: 30px 40px;
    margin-bottom: 17px;
}

.profile-bg .but.transp:after {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

.schedule-rules .head, .schedule-balance .head {
    font-size: 25px;
    font-weight: bold;
}

.reserve-conditions {
    font-size: 15px;
    padding: 40px 50px;
}

.reserve-conditions .desc {
    margin-top: 5px;
}

.reserve-conditions form {
    margin-top: 5px;
    margin-right: -20px;
}

.reserve-conditions form span {
    padding-left: 25px;
    display: inline-block;
    margin: 10px 0;
    margin-right: 20px;
    position: relative;
}

.reserve-conditions form span:before {
    content: '';
    border: 1px solid #dbdcdb;
    box-shadow: 0px 8px 24px 0px rgba(0, 0, 0, 0.15);
    border-radius: 50%;
    width: 15px;
    height: 15px;
    position: absolute;
    top: 2px;
    left: 0;
}

.reserve-conditions form input:checked + span:before {
    content: '•';
    font-size: 25px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.reserve-conditions form input {
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden;
}

.reserve-conditions form ~ .head {
    margin-top: 20px;
}

.reserve-conditions .head {
    font-weight: bold;
    font-size: 25px;
}

.reserve-conditions .head ~ .head {
    margin-top: 30px;
}

.reserve-conditions .tab-head {
    margin-top: 10px;
}

.reserve-conditions .tab-head li {
    padding-left: 25px;
    display: inline-block;
    position: relative;
    margin: 10px 0;
    margin-right: 20px;
    cursor: default;
}

.reserve-conditions .tab-head li:before {
    content: '';
    border: 1px solid #dbdcdb;
    box-shadow: 0px 8px 24px 0px rgba(0, 0, 0, 0.15);
    border-radius: 50%;
    width: 15px;
    height: 15px;
    position: absolute;
    top: 2px;
    left: 0;
}

.reserve-conditions .tab-head li.active:before {
    content: '•';
    font-size: 25px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.reserve-conditions .tab-content {
    margin-top: 10px;
}

.reserve-conditions .tab-content ul {
    margin-left: 15px;
}

.reserve-conditions .tab-content li:not(:last-child) {
    margin-bottom: 5px;
}

.reserve-conditions .tab-item:not(.active) {
    display: none;
}

.reserve-conditions .checkbox {
    margin-top: 10px;
}

.schedule-form .head {
    font-size: 17px;
    font-weight: bold;
}

.schedule-form .head {
    margin-right: 7px;
}

.schedule-balance .head {
    margin-right: 12px;
}

.schedule-form .head, .schedule-form .toggle-button {
    display: inline-block;
    vertical-align: middle;
}

.schedule-form .toggle-button .icon {
    margin-right: 2px;
}

.schedule-form .toggle-button span {
    font-size: 11.5px;
}

.schedule-form .capt {
    font-size: 12.5px;
    font-weight: bold;
}

.schedule-form .description {
    font-size: 12px;
    margin-top: 12px;
}

.schedule-form .sel-service, .schedule-form .sel-day, .schedule-form .sel-time, .schedule-form .sel-month, .schedule-form .sel-date {
    margin-top: 35px;
}

.schedule-form .sel-cols {
    display: flex;
}

.schedule-form .sel-date {
    border: 1px solid #ecebeb;
    box-shadow: 0 1px 5px 0 #ecebeb;
    border-radius: 5px;
    width: 310px;
    box-sizing: border-box;
    padding: 20px;
    flex-shrink: 0;
}

.schedule-form .sel-date .ui-datepicker .ui-datepicker-header {
    background: none;
    border: none;
    display: block;
}

.schedule-form .sel-date .ui-datepicker td a {
    font-weight: normal !important;
}

.schedule-form .sel-date .ui-datepicker td a.ui-state-active {
    font-weight: bold !important;
}

.schedule-form .sel-time {
    border: 1px solid #ecebeb;
    box-shadow: 0 1px 5px 0 #ecebeb;
    border-radius: 5px;
    padding: 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: 20px;
}

.schedule-form .sel-time .capt {
    margin-bottom: 5px;
    margin-left: 7px;
}

.schedule-form .calendar-picker-months {
    max-width: 250px;
    margin-top: 7px;
}

.schedule-form .calendar-picker-schedule {
    margin-top: 7px;
}

.schedule-form .calendar-picker-months a:after, .schedule-form .ui-datepicker td a.ui-state-active {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

.schedule-form .selection input {
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
}

.schedule-form .selection span {
    font-size: 11.5px;
    line-height: 28px;
    background: linear-gradient(#f8f7f7, #f8f7f7) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 40px;
    height: 28px;
    padding: 0 15px;
    box-sizing: border-box;
    display: inline-block;
    margin-top: 7px;
    cursor: pointer;
}

.schedule-form .sel-service .selection span {
    background: none;
    border: none;
    position: relative;
}

.schedule-form .sel-service .selection span:after {
    content: '';
    background: linear-gradient(#f7f8f8, #f7f8f8) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 30px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.schedule-form .sel-service .selection span:hover:after, .schedule-form .sel-service .selection input:checked + span:after {
    display: none;
}

.schedule-form .selection span i {
    font-style: normal;
    position: relative;
    z-index: 1;
}

.schedule-form .sel-day .selection span {
    text-align: center;
    background: none;
    border-radius: 40px;
    min-width: 28px;
    padding: 0 5px;
    margin-top: 5px;
}

.schedule-form .sel-time .selection span {
    line-height: 24px;
    background: none;
    height: 26px;
    padding: 0 8px;
    margin-top: 5px;
}

.schedule-form .selection input:checked + span, .schedule-form .selection span:hover {
    color: #fff;
    background: linear-gradient(to bottom, #c872f2, #f772d1);
}

.schedule-form .sel-day .selection input:checked + span, .schedule-form .sel-day .selection span:hover,
.schedule-form .sel-time .selection input:checked + span, .schedule-form .sel-time .selection span:hover {
    color: #000;
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

.schedule-form .sel-day .selection input:checked + span, .schedule-form .sel-time .selection input:checked + span {
    font-weight: bold;
}

.schedule-form .bottom-block {
    margin-top: 20px;
}

.schedule-form .bottom-block .but {
    font-size: 11.5px;
    width: 130px;
}

.schedule-form .bottom-block .error {
    position: absolute;
    margin-top: 5px;
}

.schedule-form .error {
    font-size: 11.5px;
    color: #ff0000;
}

.schedule-available {
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 5px;
    padding: 50px;
    margin-top: 30px;
}

.schedule-available .head-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 15px;
}

.schedule-available .head {
    font-weight: bold;
    font-size: 23px;
    margin-bottom: 15px;
}

.schedule-available .head-wrap .head {
    margin-bottom: 0;
}

.schedule-available .head-wrap .months {
    margin-left: 10px;
}

.schedule-available .head-wrap .months a {
    font-size: 11px;
    text-align: center;
    color: #000;
    border-radius: 5px;
    min-width: 120px;
    padding: 9px 20px;
    box-sizing: border-box;
    display: inline-block;
    position: relative;
    cursor: pointer;
    user-select: none;
}

.schedule-available .head-wrap .months a + a {
    margin-left: 5px;
}

.schedule-available .head-wrap .months a span {
    position: relative;
    z-index: 1;
}

.schedule-available .head-wrap .months a:after {
    content: '';
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 5px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.schedule-available .head-wrap .months a:hover, .schedule-available .head-wrap .months a.active {
    color: #fff;
    background: linear-gradient(to bottom, #c872f2, #f772d1);
}

.schedule-available .head-wrap .months a:hover:after, .schedule-available .head-wrap .months a.active:after {
    display: none;
}

.schedule-available .sub {
    font-size: 12.5px;
    width: 100%;
    margin-top: 15px;
}

.schedule-available .calendar .month:not(.active) {
    display: none;
}

.schedule-available .row {
    display: flex;
}

.schedule-available .col:first-child {
    min-width: 40%;
}

.schedule-available .col + .col {
    margin-left: 45px;
}

.schedule-available .day {
    font-size: 12.5px;
    color: #505050;
}

.schedule-available .day {
    margin-top: 5px;
}

.schedule-available .day span, .schedule-available .day a {
    display: inline-block;
    margin-top: 5px;
}

.schedule-available .day a:hover, .schedule-available .day a.active {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    cursor: pointer;
}

.schedule-available .day a.active {
    font-weight: bold;
}

.schedule-available .but.sign-up {
    font-size: 12.5px;
    min-width: 270px;
    margin-top: 20px;
}

.schedule-available .error {
    display: none;
    text-align: left;
    font-size: 12.5px;
    position: absolute;
    margin-top: 10px;
}

.schedule-rules {
    background: #f6f6f6;
    border: none;
    padding: 40px 50px;
}

.schedule-rules ul {
    font-size: 12.5px;
    margin-left: 15px;
    margin-top: 20px;
}

.schedule-rules .checkbox {
    font-size: 13.5px;
    margin-top: 20px;
}

.schedule-balance .box {
    display: flex;
    align-items: center;
}

.schedule-balance .withdraw {
    position: relative;
}

.schedule-balance .withdraw .but {
    width: 132px;
}

.schedule-balance .withdraw .error {
    font-size: 12.5px;
    white-space: nowrap;
    color: #fe0000;
    margin-top: 8px;
    position: absolute;
    left: 50%;
    top: 100%;
    transform: translateX(-50%);
}

.schedule-balance .invoices {
    padding-left: 25px;
    margin-left: auto;
}

.schedule-balance .invoices li {
    font-size: 14.5px;
    list-style: none;
    margin: 10px 0;
}

.schedule-balance .invoices img, .schedule-balance .invoices span {
    vertical-align: middle;
}

.schedule-balance .invoices img {
    margin-right: 5px;
}

.schedule-balance .invoices .status {
    font-size: 11.5px;
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-left: 6px;
}

.schedule-balance {
    margin-bottom: 0;
    position: relative;
    z-index: 2;
}

.schedule-response {
    display: none;
    font-size: 12.5px;
    line-height: 1.2;
    position: relative;
    top: -10px;
    transition: margin-top 0.5s;
}

.schedule-balance.response + .schedule-response {
    margin-top: 15px !important;
}

.customer-reservations {
    margin-top: 40px;
}

.customer-reservations:first-child {
    margin-top: 0;
}

.customer-request-item {
    padding-bottom: 5px;
    margin-bottom: 15px;
    overflow: hidden;
}

.customer-request-item + .sub {
    margin-top: 25px;
}

.customer-request {
    border: 1px solid #ecebeb;
    background: #fff;
    box-shadow: 0 1px 5px 0 #ecebeb;
    border-radius: 5px;
    padding: 25px 30px;
    position: relative;
    z-index: 2;
}

.customer-request .box {
    display: flex;
    align-items: center;
    position: relative;
}

.customer-request .image, .reservation-request .image {
    border: 4px solid #fff;
    border-radius: 3px;
    box-sizing: border-box;
    width: 180px;
    height: 180px;
    flex-shrink: 0;
}

.customer-request .image img, .reservation-request .image img {
    border-radius: 3px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.customer-request .request-data {
    flex-shrink: 0;
}

.customer-request .cap {
    font-size: 25px;
    font-weight: bold;
    letter-spacing: -0.025em;
    margin-right: 10px;
}

.customer-request .cap, .customer-request .inline, .customer-request .date, .customer-request .time {
    display: inline-block;
    vertical-align: middle;
}

.customer-request .date, .customer-request .time {
    font-size: 13.5px;
    font-weight: bold;
    letter-spacing: -0.025em;
    padding-left: 22px;
    margin-top: 10px;
    margin-bottom: 5px;
    position: relative;
}

.customer-request .date {
    margin-right: 7px;
}

.customer-request .date:before {
    content: '';
    background: url('../img/calendar-gradient.svg') no-repeat;
    background-size: contain;
    width: 16px;
    height: 16px;
    position: absolute;
    top: -1px;
    left: 0;
}

.customer-request .time {
    padding-left: 20px;
}

.customer-request .time:before {
    content: '';
    background: url('../img/clock-gradient.svg') no-repeat;
    background-size: contain;
    width: 17px;
    height: 17px;
    position: absolute;
    top: -1px;
    left: 0;
}

.customer-request .price {
    font-size: 14.5px;
    line-height: 1.2;
    padding-left: 22px;
    margin-top: 18px;
    position: relative;
}

.customer-request .price:before {
    content: '';
    background: url('../img/usd-coin-gradient.svg') no-repeat;
    background-size: contain;
    width: 17px;
    height: 17px;
    position: absolute;
    top: 1px;
    left: 0;
}

.customer-request .middle-content {
    margin-top: 8px;
}

.customer-request .title, .customer-request .phone, .customer-request .address {
    display: inline-block;
    vertical-align: middle;
}

.customer-request .title .img, .customer-request .title .link {
    display: inline-block;
    vertical-align: middle;
}

.customer-request .title, .customer-request .phone {
    margin-right: 15px;
}

.customer-request .title .img {
    border: 3px solid #fff;
    border-radius: 50%;
    width: 37px;
    height: 37px;
    box-sizing: border-box;
    overflow: hidden;
}

.customer-request .title .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.customer-request .title .link {
    font-size: 14.5px;
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.customer-request .phone {
    font-size: 14.5px;
    padding-left: 24px;
    position: relative;
}

.customer-request .phone:before {
    content: '';
    background: url('../img/phone-number-gradient.svg') no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    position: absolute;
    top: -2px;
    left: 0;
}

.customer-request .phone a {
    color: #000;
}

.customer-request .address {
    font-size: 13.5px;
    color: #3f3f3f;
    padding-left: 25px;
    position: relative;
}

.customer-request .address:before {
    content: '';
    background: url('../img/location-gradient.svg') no-repeat;
    background-size: contain;
    width: 21px;
    height: 21px;
    position: absolute;
    top: -4px;
    left: 0;
}

.customer-request .time-control {
    text-align: center;
    margin-left: auto;
    margin-right: 15px;
}

.customer-request .status-circle {
    width: 95px;
    height: 95px;
    margin: auto;
}

.customer-request .status-circle .content {
    font-size: 11px;
    font-weight: bold;
    line-height: 1.2;
}

.customer-request .time-control .but {
    font-size: 11px;
    line-height: 23px;
    color: #da0200;
    background: none;
    border: 1px solid #da0200;
    height: 25px;
    margin-top: 10px;
}

.customer-request .time-control .but:after {
    display: none;
}

.customer-request .time-control .but:not(.loading):hover {
    color: #fff;
    background: #da0200 !important;
}

.customer-request .top-right {
    text-align: right;
    position: absolute;
    top: -5px;
    right: 0;
}

.customer-request .id {
    font-size: 12.5px;
}

.customer-request .but.cancel {
    font-size: 11.25px;
    line-height: 21px;
    background: none;
    border: 1px solid #da0200;
    color: #da0200;
    min-width: 85px;
    height: 23px;
    padding: 0 10px;
}

.customer-request .top-right .but.cancel {
    margin-top: 5px;
}

.customer-request .but.cancel:hover {
    color: #fff;
    background: #da0200 !important;
}

.customer-request .but.cancel:after {
    display: none;
}

.customer-request .buttons {
    position: absolute;
    right: 0;
    bottom: -7px;
}

.customer-request .buttons .but {
    vertical-align: top;
    min-width: 120px;
    padding: 0 10px;
    margin-left: 3px;
}

.customer-request .buttons .but:after {
    border-radius: 5px;
}

.customer-request .buttons .but:not(.loading):hover {
    border-radius: 5px;
}

.customer-request .buttons .but.whatsapp {
    background: none;
    color: #7ad26d;
    border: 1px solid #7ad26d;
    border-radius: 5px;
}

.customer-request .buttons .but.whatsapp:hover {
    color: #fff;
    background: #7ad26d !important;
}

.customer-request .buttons .but.whatsapp:after {
    display: none;
}

.customer-request-cancel, .reservation-request-cancel {
    border: 1px solid #ecebeb;
    border-radius: 10px;
    padding: 20px;
    position: relative;
    top: -10px;
}

.animation-cancel-wrap {
    overflow: hidden;
}

.reservation-request-cancel, .customer-request-cancel {
    margin-top: -150px;
    transition: margin 0.5s;
}

.cancel-confirm .customer-request-cancel, .cancel-confirm .reservation-request-cancel {
    margin-bottom: -10px;
    margin-top: 20px !important;
}

.customer-request-cancel .box, .reservation-request-cancel .box {
    display: flex;
}

.customer-request-cancel .text, .reservation-request-cancel .text {
    margin-right: 70px;
}

.customer-request-cancel .cap, .reservation-request-cancel .cap {
    font-size: 17px;
    font-weight: bold;
    letter-spacing: -0.025em;
}

.customer-request-cancel p, .reservation-request-cancel p {
    font-size: 13.5px;
    line-height: 1.2;
    margin-top: 5px;
}

.customer-request-cancel .actions, .reservation-request-cancel .actions {
    flex-shrink: 0;
    margin-top: auto;
    margin-left: auto;
    margin-bottom: 17px;
    position: relative;
}

.customer-request-cancel .but, .reservation-request-cancel .but,
.customer-request-cancel .but.transp.standart, .reservation-request-cancel .but.transp.standart {
    font-size: 11.5px;
    line-height: 30px;
    white-space: nowrap;
    vertical-align: top;
    height: 30px;
    min-width: 120px;
    padding: 0 15px;
    margin-left: 3px;
}

.customer-request-cancel .but.cancel, .reservation-request-cancel .but.cancel {
    line-height: 28px;
    background: #da0200;
    border: 1px solid transparent;
}

.customer-request-cancel .but.cancel:after, .reservation-request-cancel .but.cancel:after {
    display: none;
}

.customer-request-cancel .but.cancel:hover, .reservation-request-cancel .but.cancel:hover {
    color: #da0200;
    border: 1px solid #da0200;
    background: none;
}

.customer-request-cancel .error, .reservation-request-cancel .error {
    display: none;
    text-align: center;
    line-height: 1.2;
    font-size: 12px;
    color: #000;
    width: 100%;
    margin-top: 5px;
    position: absolute;
}

.customer-request-cancel .error a, .reservation-request-cancel .error a {
    cursor: pointer;
}

.customer-request-cancel .error a:hover, .reservation-request-cancel .error a:hover {
    color: #da0200;
}

.reservations {
    margin-top: 30px;
}

.active-reservations {
    margin-top: -250px;
    transition: margin 0.7s;
}

.active-reservations.active {
    margin-top: 0;
}

.reservations .head {
    font-weight: bold;
    font-size: 21px;
    margin-bottom: 15px;
}

.reservation-item {
    padding-bottom: 5px;
    overflow: hidden;
    margin-top: 15px;
}

.reservation-request {
    border: 1px solid #ecebeb;
    border-radius: 5px;
    background: #fff;
    box-shadow: 0 1px 5px 0 #ecebeb;
    padding: 25px 30px;
    position: relative;
    z-index: 2;
}

.reservation-request .box {
    display: flex;
    align-items: center;
}

.reservation-request .status-circle {
    font-size: 19px;
    line-height: 1.2;
    font-weight: bold;
    margin-left: auto;
    margin-right: 20px;
}

.reservation-request .actions {
    text-align: right;
    margin-left: auto;
}

.reservation-request .inline-content:not(:last-child) {
    margin-top: 5px;
    margin-bottom: 5px;
}

.reservation-request .inline-content div {
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
}

.reservation-request .nowrap {
    display: inline-block;
}

.reservation-request .request-data {
    line-height: 1.2;
}

.reservation-request .cap {
    font-size: 25px;
    font-weight: bold;
    letter-spacing: -0.025em;
}

.reservation-request .id {
    font-size: 14.5px;
    color: #3f3f3f;
}

.reservation-request .id:after {
    content: '•';
    margin-left: 8px;
}

.reservation-request .name a {
    font-size: 14.5px;
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.reservation-request .phone {
    font-size: 14.5px;
    padding-left: 22px;
    position: relative;
}

.reservation-request .phone:before {
    content: '';
    background: url('../img/phone-number-gradient.svg') no-repeat;
    background-size: contain;
    width: 18px;
    height: 18px;
    position: absolute;
    top: 0;
    left: 0;
}

.reservation-request .phone a {
    font-size: 14.5px;
    color: #000;
}

.reservation-request .date, .reservation-request .time {
    font-size: 13.5px;
    font-weight: bold;
    letter-spacing: -0.025em;
    padding-left: 22px;
    position: relative;
}

.reservation-request .date:before {
    content: '';
    background: url('../img/calendar-gradient.svg') no-repeat;
    background-size: contain;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 0;
    left: 0;
}

.reservation-request .time:before {
    content: '';
    background: url('../img/clock-gradient.svg') no-repeat;
    background-size: contain;
    width: 17px;
    height: 17px;
    position: absolute;
    top: 0;
    left: 0;
}

.reservation-request .price {
    font-size: 14.5px;
    padding-left: 22px;
    position: relative;
}

.reservation-request .price:before {
    content: '';
    background: url('../img/usd-coin-gradient.svg') no-repeat;
    background-size: contain;
    width: 17px;
    height: 17px;
    position: absolute;
    top: 1px;
    left: 0;
}

.reservation-request .price u {
    font-weight: bold;
}

.reservation-request .but {
    font-size: 11px;
    line-height: 23px;
    color: #da0200;
    background: none;
    border: 1px solid #da0200;
    height: 25px;
}

.reservation-request .whatsapp-but .but {
    min-width: 100px;
}

.reservation-request .but:after {
    display: none;
}

.reservation-request .but:not(.loading):hover {
    color: #fff;
    background: #da0200 !important;
}

.reservation-request .whatsapp-but .but:not(.loading):hover {
    background: #7ad26d !important;
}

.reservation-request .but, .customer-request .time-control .but {
    font-size: 11.4px;
    line-height: 28px;
    white-space: nowrap;
    border-radius: 5px;
    height: 30px;
    min-width: 120px;
    padding: 0 3px;
    margin: 5px 0;
    margin-left: 5px;
}

.reservation-request .whatsapp-but .but {
    margin: 0;
}

.reservation-request .but.hide {
    color: #fff;
    border-color: #95ceab;
    background: #95ceab;
    padding: 0 15px;
}

.reservation-request .but.confirm {
    color: #fff;
    border-color: #25d366;
    background: #25d366;
}

.reservation-request .but.hide:hover {
    color: #95ceab;
    background: #fff !important;
}

.reservation-request .but.confirm:hover {
    color: #25d366;
    background: #fff !important;
}

.customer-request-cancel .but:after, .reservation-request-cancel .but:after {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

.profile-services {
    padding: 40px 60px;
}

.profile-services .head {
    font-weight: bold;
    font-size: 19px;
    margin-left: 10px;
}

.profile-services .category:not(:last-child) {
    padding-bottom: 20px;
    margin-bottom: 20px;
    position: relative;
}

.profile-services .category:not(:last-child):before {
    content: '';
    border-bottom: 1px solid #ecebeb;
    position: absolute;
    bottom: 0;
    left: 10px;
    right: 10px;
}

.profile-services .items {
    column-count: 2;
    column-gap: 10%;
    margin-top: 10px;
}

.profile-services .item {
    width: 100%;
    break-inside: avoid;
}

.profile-services .item .name {
    font-size: 13.5px;
    line-height: 1.2;
    max-width: 300px;
    margin-bottom: 5px;
}

.profile-services .item .time {
    font-size: 14.5px;
    color: #939393;
}

.profile-services .item .time:after {
    content: '•';
    color: #000;
    margin-left: 5px;
    margin-right: 5px;
}

.profile-services .item .price {
    font-weight: bold;
    font-size: 14.5px;
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.profile-services .item .time, .profile-services .item .price {
    display: inline-block;
}

.profile-services .item a {
    border: 1px solid transparent;
    border-radius: 5px;
    display: block;
    padding: 20px 10px;
    cursor: pointer;
    position: relative;
}

.profile-services .item a:before {
    content: '';
    border-top: 1px solid #ecebeb;
    position: absolute;
    max-width: 300px;
    left: 10px;
    right: 10px;
    top: -1px;
}

.profile-services .item a > * {
    position: relative;
    z-index: 10;
}

.profile-services .items {
    position: relative;
}

.profile-services .items:before {
    content: '';
    height: 5px;
    background: #fff;
    position: absolute;
    z-index: 1;
    left: 10px;
    right: 10px;
    top: -1px;
}

#profile .profile-services .item:hover a:not(.active):before {
    border: 1px solid #ecebeb;
    border-radius: 5px;
    max-width: none;
    top: -1px;
    bottom: -1px;
    left: 0;
    right: 0;
    z-index: 2;
}

#profile .profile-services .item:hover + .item a:before {
    opacity: 0;
}

.profile-services .item a.active:after {
    content: '';
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 5px;
    position: absolute;
    z-index: 3;
    top: -1px;
    bottom: -1px;
    left: 0;
    right: 0;
}

.profile-service-edit {
    height: 300px;
    padding-top: 50px;
    padding-bottom: 50px;
    margin-bottom: 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.profile-service-edit .head {
    font-weight: bold;
    font-size: 19px;
}

.profile-service-edit .sub {
    font-size: 14.5px;
    line-height: 1.2;
    margin-top: 7px;
}

.profile-service-edit .form {
    display: flex;
    margin-top: 20px;
}

.profile-service-edit .form .col {
    flex: 1;
    position: relative;
}

.profile-service-edit .form .col:not(:first-child) {
    margin-left: 30px;
}

.profile-service-edit .form .field {
    margin-bottom: 10px;
}

.profile-service-edit .form .field-cols {
    display: flex;
}

.profile-service-edit .form .field-cols .field {
    flex: 1;
}

.profile-service-edit .form .field-cols .field:not(:first-child),
.profile-service-edit .form .field-cols .but:not(:first-child) {
    margin-left: 12px;
}

.profile-service-edit .form .but {
    line-height: 46px;
    height: 46px;
    width: 100%;
}

.profile-service-edit .form .error {
    text-align: right;
    margin-top: 5px;
    position: absolute;
    right: 0;
}

.profile-service-edit .remove, .profile-service-edit .remove-confirm {
    font-weight: bold;
    font-size: 12.5px;
    padding-left: 30px;
    height: 18px;
    display: inline-block;
    position: relative;
    cursor: pointer;
}

.profile-service-edit .remove-confirm {
    display: none;
    font-weight: normal;
    cursor: auto;
}

.profile-service-edit .remove.confirm {
    display: none;
}

.profile-service-edit .remove.confirm + .remove-confirm {
    display: inline-block;
}

.profile-service-edit .remove-confirm a {
    font-weight: bold;
    cursor: pointer;
}

.profile-service-edit .remove-confirm a:hover {
    color: #fe0000;
}

.profile-service-edit .remove:before, .profile-service-edit .remove-confirm:before {
    content: '';
    background: url('../img/delete.svg') no-repeat;
    background-size: contain;
    width: 24px;
    height: 24px;
    position: absolute;
    left: 0;
    top: -5px;
}

.profile-service-edit .remove:hover {
    color: #fe0000;
}

.service-edit-wrap {
    position: relative;
}

.profile-service-edit.edit-service {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

.profile-service-edit.new-service {
    background: #fff;
    position: relative;
    z-index: 1;
}

.profile-service-edit.edit-service, .profile-service-edit.new-service {
    transition: opacity 0.7s, visibility 0.7s;
}

.profile-service-edit.edit-service.active {
    opacity: 1;
    visibility: visible;
    position: static;
}

.profile-service-edit.edit-service.active + .new-service {
    opacity: 0;
    visibility: hidden;
    margin-bottom: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

.transactions {
    border: 1px solid #ecebeb;
    border-radius: 5px;
    box-shadow: 0 1px 5px 0 #ecebeb;
    overflow: hidden;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.transactions table {
    width: 100%;
}

.transactions table td, .transactions table th {
    border: 1px solid #ecebeb;
    font-size: 12.5px;
    line-height: 1.2;
    white-space: nowrap;
    vertical-align: top;
    padding: 10px;
}

.transactions table th {
    border-right-color: transparent;
    font-weight: bold;
    text-align: left;
    padding: 15px 10px;
}

.transactions table td {
    height: 50px;
    box-sizing: border-box;
}

.transactions table td:last-child {
    border-right-color: transparent;
}

.transactions table tbody tr.hl td {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    background-clip: border-box;
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.transactions table tbody tr:not(.empty):hover {
    background: linear-gradient(135deg, rgba(119, 118, 255, 0.1) 0%, rgba(174, 44, 241, 0.1) 100%);
}

.transactions table td a {
    color: #000;
}

.transactions table th:last-child, .transactions table td:last-child {
    width: 120px;
}

.transactions .payment {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 5px;
}

.transactions .payment .download {
    margin-left: 5px;
    cursor: pointer;
}

.transactions .pay-status {
    cursor: pointer;
    user-select: none;
}

.transactions .pay-status.payed .no, .transactions .pay-status:not(.payed) .yes {
    display: none;
}

.transactions .hl .payment svg .st0 {
    stroke: url(#gradient-download);
}

.transactions .hl .payment svg .st0 + .st0 {
    stroke: #c872f2;
}

.transactions .status.cancelled {
    color: #ff0000;
}

.text-page {
    color: #222;
    font-size: 14px;
    line-height: 1.2;
    margin-top: 15px;
}

.text-page .heading {
    font-size: 31px;
    font-weight: bold;
}

.text-page .heading.line {
    padding-bottom: 24px;
    position: relative;
}

.text-page .heading.line:after {
    content: '';
    background: #000;
    width: 110px;
    height: 2px;
    position: absolute;
    left: 0;
    bottom: 0;
}

.text-page .heading.line + .heading {
    margin-top: 50px;
}

.text-page .sub {
    font-size: 25px;
    font-weight: bold;
}

.text-page .heading, .text-page .sub, .text-page p {
    margin-bottom: 20px;
}

.text-page p:last-child {
    margin-bottom: 0;
}

.text-page img {
    border-radius: 4px;
    max-width: 100%;
}

.text-page a {
    color: #f65151;
}

.text-page a:hover {
    color: #f65151;
    text-decoration: underline;
}

.text-page .row {
    display: flex;
    align-items: center;
    margin-bottom: 70px;
}

.text-page .row:first-child:last-child {
    margin-bottom: 0;
}

.text-page .cell p:last-child {
    margin-bottom: 0;
}

.text-page .cell.img {
    flex-shrink: 0;
    position: relative;
}

.text-page .cell.img img {
    display: block;
}

.text-page .cell.text {
    padding-left: 70px;
}

.text-page .cell.text .sub {
    margin-top: 70px;
}

.text-page .cell.text p:last-child, .text-page .cell.text .but {
    margin-top: 40px;
}

.text-page .cell.text .but {
    width: 250px;
}

.text-page .cols {
    overflow: hidden;
}

.text-page .cols p, .text-page .cols ul {
    color: #969696;
    margin-top: 5px;
    margin-bottom: 35px;
}

.text-page .cols ul {
    list-style: none;
}

.text-page .cols ul li:not(:last-child) {
    margin-bottom: 2px;
}

.text-page .cols p b {
    color: #222;
    display: block;
}

.text-page .feedback {
    background: #f8f7f7;
    box-shadow: 0 1px 5px 0 #ecebeb;
    border: 1px solid #ecebeb;
    border-radius: 5px;
    padding: 50px;
    padding-bottom: 30px;
}

.text-page .feedback .but.transp:after {
    background: linear-gradient(#f8f7f7, #f8f7f7) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

.text-page .feedback.cols p, .text-page .feedback.cols ul {
    margin-bottom: 15px;
}

.text-page .feedback .mail {
    line-height: 30px;
    background: url('../img/envelope.svg') no-repeat left center;
    background-size: 18px 18px;
    padding-left: 25px;
    display: none;
}

#feedback-contact.active {
    display: none;
}

#feedback-contact.active + #feedback-mail {
    display: block;
}

.text-page .feedback .mail a {
    font-size: 13px;
    color: #000;
}

.text-page .feedback .mail a:hover {
    text-decoration: none;
    color: #f65151;
}

.text-page .col {
    float: left;
    width: 47%;
    box-sizing: border-box;
}

.text-page .col + .col {
    float: right;
}

.text-page .cols ~ .heading {
    margin-top: 150px;
}

.text-page .fields .col {
    width: 50%;
    margin-bottom: 7px;
}

.text-page .fields .col:first-child {
    padding-right: 5px;
}

.text-page .fields .col:last-child {
    padding-left: 5px;
}

.text-page .fields textarea {
    height: 53px;
}

.text-page .fields .field.active textarea {
    height: 43px;
}

.error-page {
    color: #222;
    font-size: 14px;
    line-height: 1.2;
    border-bottom: 1px solid #dad9d9;
    position: relative;
    min-height: 555px;
    box-sizing: border-box;
    padding-right: 415px;
    padding-top: 50px;
    padding-bottom: 91px;
    margin: auto;
}

.error-page .heading {
    font-size: 31px;
    font-weight: bold;
    max-width: 330px;
    margin-bottom: 60px;
}

.error-page .sub {
    font-size: 18px;
}

.error-page .err {
    font-weight: bold;
    margin-top: 29px;
    margin-bottom: 29px;
}

.error-page ul {
    margin-top: 20px;
}

.error-page li {
    list-style: none;
    margin-bottom: 5px;
}

.error-page a, .error-page li span {
    background: -webkit-linear-gradient(90deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    cursor: pointer;
    display: inline-block;
    position: relative;
}

.error-page a:after, .error-page a:before, .error-page li span:after, .error-page li span:before {
    content: '';
    background: linear-gradient(29deg, yellow, #f772d1);
    height: 1px;
    width: 0;
    position: absolute;
    bottom: -3px;
    transition: 0.3s;
}

.error-page a:before, .error-page li span:before {
    background: linear-gradient(90deg, #c872f2, #c872f2);
}

.error-page a:after, .error-page li span:after {
    background: linear-gradient(90deg, #c872f2, #f772d1);
}

.error-page a:after, .error-page li span:after {
    left: 50%;
}

.error-page a:before, .error-page li span:before {
    right: 50%;
}

.error-page a:hover:after, .error-page a:hover:before, .error-page li span:hover:after, .error-page li span:hover:before {
    width: 50%;
}

.error-page img {
    position: absolute;
    right: 0;
    bottom: 0;
}

#list {
    text-align: center;
    padding-bottom: 187px;
}

.text-page #list {
    padding-bottom: 0;
    margin-top: 110px;
    margin-bottom: 150px;
}

#list .heading {
    font-size: 50px;
    line-height: 1.2;
    font-weight: bold;
    position: relative;
    padding-top: 161px;
    margin-bottom: 77px;
}

.text-page #list .heading {
    padding-top: 80px;
}

#list .heading:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 675px;
    max-width: 100%;
    height: 1px;
    margin: auto;
    background: #dad9d9;
}

#list .but {
    width: 250px;
}

#list .more {
    text-align: center;
    margin-top: 50px;
}

#list .more a {
    font-size: 13px;
    color: #000;
}

#list .more a:hover {
    color: #f65151;
    text-decoration: underline;
}

#service {
    display: flex;
    justify-content: space-between;
}

#service {
    margin-top: 20px;
}

#service .img {
    flex-shrink: 0;
    width: 440px;
}

#service .img-wrap {
    border-radius: 5px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    height: 520px;
    will-change: transform; /* Safari border radius fix */
    overflow: hidden;
}

#service .img-wrap div {
    height: 100%;
}

#service .img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#service .img img[src*="default.png"] {
    border: 1px solid #e4e4e4;
    border-radius: 5px;
    box-sizing: border-box;
}

#service .img-wrap .slick-list, #service .img-wrap .slick-track {
    height: 100%;
}

#service .img-wrap .slick-arrow {
    background: #fff url(../img/arrow-black.svg) no-repeat center;
    background-size: 12px;
    border-radius: 50%;
    box-shadow: transparent 0px 0px 0px 1px, transparent 0px 0px 0px 4px, rgba(0, 0, 0, 0.18) 0px 2px 4px;
    width: 35px;
    height: 35px;
    margin: auto;
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    opacity: 0;
    cursor: pointer;
}

#service .img-wrap:hover .slick-arrow {
    opacity: 0.8;
}

#service .img-wrap .slick-arrow:hover {
    opacity: 1;
}

#service .img-wrap .slick-prev {
    background-image: url('../img/arrow-left-black.svg');
    left: 10px;
}

#service .img-wrap .slick-next {
    right: 10px;
}

#service .img-wrap .slick-dots {
    position: absolute;
    z-index: 1;
    bottom: 10px;
    left: 0;
    right: 0;
}

#service .img-wrap .slick-dots li {
    margin: 3px;
}

#service .img-wrap .slick-dots li button {
    background: #fff;
    opacity: 0.5;
    width: 7px;
    height: 7px;
}

#service .img-wrap .slick-dots li.slick-active button {
    background: #fff;
    opacity: 1;
}

#service .content {
    color: #3f3f3f;
    font-size: 14px;
    line-height: 1.2;
    position: relative;
    width: 100%;
    padding: 30px 60px;
}

#service .heading {
    font-size: 25px;
    font-weight: bold;
    color: #000;
    padding-bottom: 15px;
    padding-right: 70px;
    margin-bottom: 20px;
    position: relative;
}

#service .profile .heading {
    font-size: 21px;
    padding-bottom: 0;
    margin-bottom: 15px;
}

#service .profile .heading h1 {
    margin-bottom: 0;
}

#service .heading:after {
    content: '';
    background: #000;
    height: 2px;
    width: 110px;
    position: absolute;
    left: 0;
    bottom: 0;
}

#service .profile .heading:after {
    display: none;
}

#service .heading span, #service .heading h1, #service .price {
    vertical-align: top;
}

#service .heading span, #service .heading h1 {
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 5px;
}

#service #service2 .heading {
    font-size: 19px;
    border: none;
    padding: 0;
    margin-bottom: 14px;
}

#service #service2 .heading:after {
    display: none;
}

#service .info {
    margin-top: 10px;
}

#service .name {
    text-decoration: none;
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 21px;
    display: inline-block;
    cursor: pointer;
}

#service .name, #service .photo {
    display: inline-block;
    vertical-align: middle;
}

#service .photo {
    border: 3px solid #fff;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    overflow: hidden;
}

#service .photo img {
    border-radius: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#service section {
    position: absolute;
    top: 20px;
    right: 20px;
}

#service .discount {
    font-weight: bold;
    font-size: 45px;
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

#service .discount-timer {
    position: absolute;
    left:50%;
    transform: translate(-50%, -50%);
    top: 70px;
    font-size: 19px;
}

#promotion .reserve-time.selected-dates span {
    font-size: 11.5px;
    line-height: 28px;
    text-align: center;
    border-radius: 30px;
    min-width: 90px;
    padding: 0 10px;
    display: inline-block;
    height: 28px;
    box-sizing: border-box;
    margin-right: 1px;
    margin-top: 8px;
    cursor: pointer;
    user-select: none;
    position: relative;
    background: white;
}

#promotion .reserve-time.selected-dates span i {
    color: black;
    position: relative;
    z-index: 100;
    font-style: normal !important;
}

#promotion .reserve-time.selected-dates span:after {
    content: '';
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 30px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

#service .price {
    font-size: 14px;
    font-weight: normal;
    position: relative;
    display: inline-block;
}

.discount #service .price {
    display: block;
    margin-bottom: 10px;
}

#service .heading {
    margin-top: 40px;
}

#service .heading h1 {
    vertical-align: bottom;
}

#service .price span {
    font-size: 48px;
    /*background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);*/
    background-clip: border-box;
    color: black;
    /*-webkit-background-clip: text;*/
    /*-webkit-text-fill-color: transparent;*/
    margin: 0;
}

#service .price s {
    vertical-align: top;
    font-size: 23px;
    color: #969696;
}

#service .price s {
    display: inline-block;
    margin-bottom: 5px;
}

#service .desc {
    color: #000;
    margin-top: 10px;
    margin-bottom: 20px;
    overflow: hidden;
}

#service .param {
    overflow: hidden;
}

#service .param.no-schedule {
    display: none;
}

#service.no-schedule .param {
    display: none;
}

#service.no-schedule .param.no-schedule {
    display: block;
    margin-top: -10px;
    margin-bottom: -10px;
}

#service .param .cell:first-child {
    float: left;
    width: 185px;
}

#service .param .cell:first-child:last-child {
    width: 100%;
}

#service .param .cell + .cell {
    overflow: hidden;
}

#service .param.no-schedule .cell {
    display: inline-block;
    vertical-align: middle;
    margin-top: 10px;
    margin-bottom: 10px;
}

#service .param.no-schedule .cell:first-child {
    float: none;
    width: 180px;
    margin-right: 20px;
}

#service .param.no-schedule .title {
    margin: 0 !important;
}

#service .param .title {
    position: relative;
    line-height: 23px;
    padding-left: 22px;
    margin-bottom: 11px;
}

#service .param .title.avail {
    padding-left: 30px;
}

#service .param .title.visit {
    margin-top: 18px;
    margin-bottom: 17px;
}

#service .param .title.loc {
    line-height: 1.2;
    padding-top: 4px;
    padding-bottom: 4px;
    color: #3f3f3f;
}

#service .param .title.get-number {
    line-height: 1.2;
    padding-left: 30px;
    cursor: pointer;
    user-select: none;
}

#service .param .title:before {
    content: '';
    position: absolute;
    left: 0;
    top: 4px;
    bottom: 0;
    margin: auto;
    background-color: #f65151;
}

#service .param .title.avail:before {
    width: 20px;
    height: 20px;
    background: url('../img/calendar-tool-red.svg') no-repeat;
    background-size: contain;
}

#service .param .title.loc:before {
    width: 15px;
    height: 23px;
    background: url('../img/location-gradient.svg') no-repeat;
    background-size: contain;
}

#service .param .title.visit:before {
    width: 17px;
    height: 17px;
    background: url('../img/tick.svg') no-repeat;
    background-size: contain;
}

#service .param .title.get-number:before {
    width: 20px;
    height: 20px;
    background: url('../img/phone-number.svg') no-repeat;
    background-size: contain;
}

#service .param .title.loc + p {
    margin-bottom: 13px;
}

#service .param .schedule li {
    list-style: none;
    margin-bottom: 1px;
}

#service .param .schedule li span {
    display: inline-block;
    min-width: 50px;
}

#service .bottom-wrap {
    margin-top: 20px;
    position: relative;
}

#service .but-cols {
    display: flex;
}

#service .but-cols .but {
    font-size: 12.5px;
    white-space: nowrap;
}

#service .but-cols .get-contacts {
    margin-right: 10px;
}

#service .but-cols .get-contacts, #service .but-cols .whatsapp {
    flex: 1;
}

#service .but-cols .whatsapp .but {
    color: #fff;
    background: #23d366 url('../img/whatsapp-icon-white.svg') no-repeat 10px center;
    padding-left: 40px;
}

#service .but-cols .whatsapp .but:not(.loading):hover:after {
    display: none;
}

#service .but-cols .but {
    width: 100%;
}

#service .reserve {
    margin-top: 20px;
}

#service .reserve-type .cap {
    font-size: 19px;
    letter-spacing: -0.025em;
    font-weight: bold;
}

#service .reserve-type .reserve .cap {
    font-size: 15px;
}

#service .reserve-type .reserve .cap p {
    float: right;
}

#service .reserve .cap span, #service .reserve .cap s {
    font-weight: normal;
    background: -webkit-linear-gradient(-90deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

#service .reserve .cap s {
    text-decoration: none;
    position: relative;
}

#service .reserve .cap s:after {
    content: '';
    background: linear-gradient(to bottom, #c872f2, #f772d1);
    height: 1px;
    margin: auto;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}

.reserve-time span.disabled:after {
    color: #858585;
    border: 1px solid #858585 !important;
}

.progress-bar {
    background: white;
    height: 6px;
    border-radius: 10px;
    margin-top: 10px;
    position: relative;
}

.progress-bar span, .progress-discount span {
    background: linear-gradient(to bottom, #c872f2, #f772d1);
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    display: block;
}


#service .reserve-time {
    margin-top: 5px;
}

#service .reserve-time span {
    font-size: 10.5px;
    line-height: 28px;
    text-align: center;
    border-radius: 30px;
    /*min-width: 90px;*/
    padding: 0 8px;
    display: inline-block;
    height: 28px;
    box-sizing: border-box;
    margin-right: 1px;
    margin-top: 8px;
    cursor: pointer;
    user-select: none;
    position: relative;
}

#service .reserve-time span:after {
    content: '';
    background: linear-gradient(#f7f8f8, #f7f8f8) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 30px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

#service .reserve-time span i {
    font-style: normal;
    position: relative;
    z-index: 1;
}

#service .reserve-time span:not(.disabled):hover {
    color: #fff;
    background: linear-gradient(to bottom, #c872f2, #f772d1);
}

#service .reserve-time span:not(.disabled):hover:after {
    display: none;
}



#service .date {
    border: 1px solid #dad9d9;
    border-radius: 4px;
    padding: 9px;
    padding-left: 40px;
    margin-bottom: 7px;
    position: relative;
}

#service .date .picker {
    position: absolute;
    left: -1px;
    right: -1px;
    bottom: 100%;
    margin-bottom: 10px;
    display: none;
}

#service .date .choose {
    color: #000;
    font-size: 13px;
    line-height: 22px;
    display: block;
    cursor: pointer;
    user-select: none;
}

#service .date .choose:hover {
    color: #f65151;
}

#service .date:before {
    content: '';
    position: absolute;
    left: 11px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 22px;
    height: 22px;
    background: url('../img/calendar-tool-gray.svg') no-repeat;
    background-size: contain;
}

#service1 .but {
    padding: 0 15px;
    width: 340px;
    max-width: 100%;
}

#service2 .but, #service3 .but {
    width: 100%;
}

#service .but + .but, #service .but-wrap a + a .but {
    margin-top: 10px;
}

#service .hint {
    color: #969696;
    font-size: 13px;
    text-align: center;
    margin-top: 7px;
}

#service .hint b {
    color: #000;
}

#service .hint.left {
    text-align: left;
    position: static;
    margin-top: 0;
    margin-bottom: 20px;
}

#service .middle-wrap {
    margin-top: 30px;
    margin-bottom: 20px;
}

#service .error {
    color: #f65151;
    font-size: 13px;
    text-align: center;
    margin: 10px 0;
    display: none;
}

#card-errors {
    color: #f65151;
    font-size: 13px;
    text-align: center;
    margin-top: -3px;
    margin-bottom: 10px;
}

#service .claim {
    display: inline-block;
    margin-top: 10px;
}

#service .claim span {
    color: #969696;
    font-size: 13px;
    cursor: pointer;
}

#service .claim span:hover {
    color: #f65151;
}

#service2 form {
    max-width: 320px;
    margin: auto;
    position: relative;
}

#service2:not(.get-number) .get-number {
    display: none;
}

#service2.get-number .middle-wrap {
    display: none;
}

#service2.get-number .hint:not(.get-number), #service2.get-number .but:not(.get-number) {
    display: none;
}

#service .check {
    overflow: hidden;
    margin-top: 20px;
}

#service .check .cell {
    float: left;
    width: 50%;
}

#service .checkbox:not(:last-child) {
    margin-bottom: 20px;
}

#service .checkbox label {
    font-size: 13px;
}

#service .field {
    margin-bottom: 12px;
}

#service .prev {
    width: 27px;
    height: 27px;
    margin: 10px auto;
    cursor: pointer;
}

#service .reserve-type .prev {
    margin-bottom: 0;
}

#service .prev img {
    width: 100%;
}

#service3 {
    text-align: center;
    justify-content: flex-end;
    max-width: 320px;
    margin: auto;
}

#service .sent {
    margin-top: 25px;
    margin-bottom: 25px;
}

#service .sent b {
    display: block;
}

#service3:not(.get-number) .get-number {
    display: none;
}

#service3.get-number .sent:not(.get-number) {
    display: none;
}

#service1, #service2, #service3 {
    display: none;
}

#service1.vis, #service2.vis, #service2.vis form, #service3.vis {
    display: block;
}

#service .center-content {
    max-width: 340px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

#service .reserve-type .sub {
    font-size: 13.5px;
    margin-top: 10px;
}

#service .reserve-type .chosen-time {
    padding-bottom: 12px;
    margin-top: 10px;
    position: relative;
}

#service .reserve-type .chosen-time:after {
    content: '';
    background: #000;
    width: 110px;
    height: 2px;
    position: absolute;
    left: 0;
    bottom: 0;
}

#service .reserve-type .ch-date, #service .reserve-type .ch-time {
    font-size: 13.5px;
    padding-left: 22px;
    display: inline-block;
    margin-right: 7px;
    position: relative;
}

#service .reserve-type .ch-time {
    padding-left: 20px;
}

#service .reserve-type .ch-date:before {
    content: '';
    background: url('../img/calendar-gradient.svg') no-repeat;
    background-size: contain;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 0;
    left: 0;
}

#service .reserve-type .ch-time:before {
    content: '';
    background: url('../img/clock-gradient.svg') no-repeat;
    background-size: contain;
    width: 17px;
    height: 17px;
    position: absolute;
    top: 0;
    left: 0;
}

#service .reserve-type .info-list {
    margin-top: 15px;
}

#service .reserve-type .info-list li {
    font-size: 13.5px;
    line-height: 1.2;
    font-weight: bold;
    margin-left: 15px;
}

#service .reserve-type form {
    margin-top: 15px;
}

#service .reserve-type .checkbox {
    margin-top: 10px;
}

#service .reserve-type .checkbox a {
    color: #000;
    text-decoration: underline;
}

#service .reserve-type .checkbox a:hover {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

#service .reserve-type .buttons {
    margin-top: 10px;
}

#service .reserve-type .buttons .but {
    margin-top: 10px;
}

#service .reserve-type .error {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
}

.promotion-conditions {
    border: 1px solid rgb(236, 235, 235);
    border-radius: 5px;
    box-shadow: rgb(236, 235, 235) 0px 1px 5px 0px;
    padding: 50px;
    margin-top: 50px;
}

.promotion-conditions .cap {
    font-weight: bold;
    font-size: 25px;
    margin-bottom: 15px;
}

.promotion-conditions ul {
    line-height: 1.2;
    margin-left: 15px;
}

#service-edit, .upload-form {
    margin-top: 15px;
}

#add-post {
    margin-bottom: 70px;
}

#service-edit .heading, .upload-form .heading {
    font-size: 19px;
    font-weight: bold;
}

.upload-form .heading {
    margin-bottom: 15px;
}

#service-edit .heading img, #service-edit .heading span, .upload-form .heading span {
    display: inline-block;
    vertical-align: middle;
}

#service-edit .heading img, .upload-form .heading img {
    width: 39px;
    height: 36px;
    margin-right: 10px;
}

#service-edit .sub, .upload-form .sub {
    font-size: 14px;
    line-height: 1.2;
    margin-top: 9px;
    margin-bottom: 25px;
}

#service-edit .row, .upload-form .row {
    display: table;
    table-layout: fixed;
    width: 100%;
}

#add-post .row {
    display: flex;
    margin-bottom: 30px;
}

#service-edit > .row > .cell, .upload-form > .row > .cell {
    display: table-cell;
    vertical-align: middle;
    position: relative;
}

#service-edit > .row > .cell:first-child, .upload-form > .row > .cell:first-child {
    width: 440px;
    height: 520px;
    vertical-align: middle;
    text-align: center;
    background: #f7f8f8;
    border: 1px solid #dad9d9;
    border-radius: 5px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    box-sizing: border-box;
}

#add-post .row > .cell:first-child {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#service-edit > .row > .cell.added:first-child, .upload-form > .row > .cell.added:first-child {
    vertical-align: top;
    background: none;
    border: none;
    height: auto;
}

.added .upload-img {
    background: #f7f8f8;
    border: 1px solid #dad9d9;
    border-radius: 5px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    overflow: hidden;
    box-sizing: border-box;
    transform: translateZ(0);
}

#service-edit .img-ready, .upload-form .img-ready {
    display: none;
}

#wrapper.profile.step2 .cr-slider-wrap {
    display: none;
}

#wrapper.profile.step2 .img-ready {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

#wrapper.profile.step2 .img-ready img {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

#wrapper.profile.step2 .added .upload-img {
    display: none;
}

#service-edit label[for^="file"], .upload-form label[for^="file"] {
    cursor: pointer;
}

#service-edit label[for^="file"] img, .upload-form label[for^="file"] img {
    width: 122px;
    height: 99px;
    margin-bottom: 10px;
}

#service-edit label[for^="file"] span, .upload-form label[for^="file"] span {
    color: #363636;
    font-size: 14px;
    line-height: 1.2;
    display: block;
    max-width: 115px;
    margin: auto;
}

.upload-form .insta {
    font-size: 14px;
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 40px;
}

.upload-form .insta div {
    display: inline-block;
    cursor: pointer;
}

.upload-form .insta img, .upload-form .insta span {
    vertical-align: middle;
}

.upload-form .insta img {
    margin-right: 5px;
}

.upload-form .insta div:hover span {
    color: #326365;
}

#verify.upload-form label[for^="file"] span {
    font-weight: bold;
    max-width: 270px;
}

#promotion .upload-form label[for^="file"] span {
    font-weight: bold;
    max-width: 150px;
}

#service-edit label[for^="file"] span:first-child, .upload-form label[for^="file"] span:first-child {
    width: 270px;
    max-width: 80%;
    margin-bottom: 70px;
}

#service-edit label[for^="file"] span.bold, .upload-form label[for^="file"] span.bold {
    font-weight: bold;
}

#service-edit input[type="file"], .upload-form input[type="file"] {
    display: none;
}

#service-edit .hint, .upload-form .hint {
    color: #969696;
    font-size: 13px;
    line-height: 1.2;
    margin-bottom: 20px;
}

#service-edit .hint.bottom, .upload-form .hint.bottom {
    font-size: 14px;
    position: absolute;
    bottom: 56px;
    left: 40px;
    right: 40px;
    margin-bottom: 0;
}

#service-edit.profile-edit .hint ul, .upload-form .hint ul {
    margin-left: 15px;
}

.upload-form .hint ul li::marker {
    color: #000
}

#service-edit > .row > .cell:last-child, #add-post .row > .cell:last-child, .upload-form > .row > .cell:last-child {
    padding-left: 50px;
    padding-right: 50px;
}

#service-edit > .row > .cell:last-child, #promotion .upload-form > .row > .cell:last-child {
    padding-left: 30px;
    padding-right: 30px;
}

#service-edit > .row > .cell:last-child .step1 {
    max-width: 320px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.upload-form .inner {
    position: relative;
}

.upload-form .inner-centered {
    max-width: 340px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

#service-edit .head {
    color: #000;
    font-size: 19px;
    font-weight: bold;
    margin-bottom: 16px;
}

#service-edit .head.margin {
    margin-top: 45px;
}

#service-edit .field, .upload-form .field {
    margin-bottom: 10px;
}

#service-edit .field textarea {
    height: 100px;
}

#service-edit .field.active textarea {
    height: 90px;
}

#service-edit .cols {
    overflow: hidden;
    margin-right: -10px;
}

#service-edit .col {
    float: left;
    width: 50%;
    padding-right: 10px;
    box-sizing: border-box;
}

#service-edit .schedule li {
    list-style: none;
}

#service-edit .schedule li span, #service-edit .schedule li .field {
    display: inline-block;
    vertical-align: middle;
}

#service-edit .schedule li span {
    font-size: 13px;
    width: 60px;
}

#service-edit .schedule li .field {
    width: 104px;
    height: 28px;
    padding: 4px 10px;
    margin: 4px 0;
}

#service-edit .schedule li .field select {
    height: 17px;
    line-height: 17px;
}

#service-edit .but, .upload-form .but {
    border-radius: 5px;
    display: block;
}

#service-edit .but + .but {
    margin-top: 10px;
}

#service-edit .but-wrap {
    display: flex;
}

#service-edit .but-wrap .but {
    flex: 1;
}

#service-edit .but-wrap .but + .but {
    margin-top: 0;
    margin-left: 10px;
}

#service-edit .error, #service-edit .response, .upload-form .error, .upload-form .response {
    color: #f65151;
    font-size: 13px;
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    margin-top: 10px;
    display: none;
}

#service-edit .response, .upload-form .response {
    color: #000;
}

#service-edit.profile-edit .error, #service-edit.profile-edit .response {
    margin-top: 7px;
}

#service-edit .error, #service-edit .edit-success {
    left: 0;
    right: 0;
}

#service-edit .confirm {
    display: none;
    font-size: 13.5px;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
    color: #db0200;
    margin-top: 10px;
    margin-bottom: -20px;
}

#service-edit .confirm a:hover {
    color: #000;
    cursor: pointer;
}

#service-edit .delete-confirmation {
    text-align: center;
    height: 42px;
    padding-top: 5px;
    box-sizing: border-box;
    margin-top: 10px;
    display: none;
}

#service-edit .delete-confirmation img, #service-edit .delete-confirmation span {
    display: inline-block;
    vertical-align: middle;
}

#service-edit .delete-confirmation img {
    width: 27px;
    height: 29px;
    margin-right: 7px;
}

#service-edit .delete-confirmation span {
    font-size: 14px;
}

#service-edit .delete-confirmation a {
    color: #f65151;
    cursor: pointer;
}

#service-edit .delete-confirmation a:hover {
    opacity: 0.7;
}

#service-edit .checkbox {
    font-size: 13px;
}

#service-edit .check {
    overflow: hidden;
    margin-bottom: 10px;
}

#service-edit .check .cell {
    float: left;
    width: 50%;
}

#service-edit .descr {
    font-size: 14px;
    line-height: 1.2;
    margin-top: 25px;
    margin-bottom: 35px;
}

#service-edit .descr ul, #service-edit .descr ol {
    padding-left: 15px;
}

#service-edit .descr p:not(:last-child), #service-edit .descr ul:not(:last-child), #service-edit .descr ol:not(:last-child) {
    margin-bottom: 15px;
}

#service-edit .step3 {
    text-align: center;
}

#service-edit .step3 .but {
    position: relative;
    width: 325px;
    max-width: 100%;
    margin-top: 50px;
    margin-left: auto;
    margin-right: auto;
}

.published #service-edit > .row > .cell:first-child, .published #service-edit .del, .published #booking3, .published #service-edit .product-list {
    display: none;
}

.published #service-edit > .row > .cell:last-child, .published #service-edit.profile-edit > .row > .cell:last-child {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
}

.published #service-edit > .row {
    border: none;
    border-radius: 0;
}

#service-edit .step2, #service-edit .step3 {
    display: none;
}

#service-edit .product-list {
    margin-top: 45px;
}

.delete-profile {
    font-size: 13.5px;
    text-align: right;
    color: #db0200;
    margin-top: 10px;
}

.delete-profile svg, .delete-profile span {
    vertical-align: middle;
}

.delete-profile svg {
    fill: #db0200;
}

#delete-profile {
    display: inline-block;
    cursor: pointer;
}

#delete-profile:hover svg {
    fill: #000;
}

#delete-profile:hover span {
    color: #000;
}

.delete-profile .delete-confirm {
    display: none;
    font-weight: bold;
    margin-top: 15px;
}

.delete-profile .delete-confirm a {
    cursor: pointer;
}

.delete-profile .delete-confirm a:hover {
    color: #000;
}

.upload-last-step {
    display: none;
}

.published .upload-last-step {
    display: block;
}

.published .upload-form {
    margin: auto;
}

#add-portfolio .inner-centered .heading {
    font-size: 15px;
}

#add-portfolio .services-list {
    margin: 15px 0;
}

#add-portfolio .inlined .services-list, .inlined .heading, .upload-form .inlined .heading, #masterPage.services-list {
    display: inline-block;
    vertical-align: middle;
    margin-top: 8px;
    margin-bottom: 8px;
}

#add-portfolio .inlined .services-list, #add-portfolio.upload-form .inlined .heading {
    margin-top: 3px;
    margin-bottom: 3px;
}

#add-portfolio.upload-form .inlined .heading {
    margin-top: 10px;
    margin-bottom: 10px;
}

.product-list .inlined {
    overflow: hidden;
}

.product-list .inlined .heading {
    float: left;
    margin-top: 6px;
}

#add-portfolio .inlined .services-list, .product-list .inlined #masterPage.services-list {
    display: block;
    margin: 0;
}

#add-portfolio .inlined .services-list li, .product-list .inlined #masterPage.services-list li {
    float: left;
    margin-right: 7px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.inlined .heading {
    margin-right: 10px;
}

.inlined + .items {
    margin-top: 5px;
}

#add-portfolio .services-list li, #masterPage.services-list li {
    font-size: 11.5px;
    border: 1px solid #b0b0b0;
    border-radius: 30px;
    padding: 9px 20px;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: middle;
    margin-right: 3px;
    margin-top: 3px;
    margin-bottom: 3px;
    cursor: pointer;
}

#add-portfolio .services-list li:hover,
#add-portfolio .services-list li.active,
#masterPage.services-list li:hover,
#masterPage.services-list li.active {
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
}

#add-portfolio .form-loader {
    display: none;
}

#add-portfolio.loading .form-loader {
    display: block !important;
}

#add-portfolio.loading .form-content {
    display: none;
}

#wrapper {
    min-height: 100%;
    padding-bottom: 53px;
    box-sizing: border-box;
    position: relative;
}

#wrapper.profile {
    padding-bottom: 546px;
}

#wrapper.home, #wrapper.join {
    padding-bottom: 0 !important;
}

.home #footer {
    position: static;
}

#wrapper.center, #wrapper.published {
    display: flex;
    flex-direction: column;
}

#wrapper.center > .wrap, #wrapper.published > .wrap {
    width: 100%;
    max-width: 1040px;
    box-sizing: border-box;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

#wrapper.center #service-edit, #wrapper.published #service-edit, #wrapper.published #add-post {
    padding: 60px;
    margin: auto;
}

.public-profile .user-card {
    display: flex;
    margin-top: 20px;
    overflow: hidden;
}

.public-profile .user-card .img img {
    border-radius: 10px;
    border: 1px solid #ecebeb;
    width: 265px;
    height: 265px;
    box-sizing: border-box;
    object-fit: cover;
    display: block;
}

.public-profile .user-card .content {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: 30px;
    opacity: 0;
    transition: opacity 0.5s;
}

.public-profile .user-card .content.visible {
    opacity: 1;
}

.public-profile .user-card.no-photo .content {
    margin-left: 0;
}

.public-profile .user-card .heading {
    font-size: 31px;
}

.public-profile .user-card .heading.font-adjust {
    white-space: nowrap;
}

.public-profile .user-card .heading-wrap {
    display: inline-block;
}

.public-profile .user-card .heading h1 {
    display: inline-block;
    vertical-align: middle;
}

.public-profile .user-card .icons {
    display: inline-block;
    vertical-align: middle;
    margin-left: 5px;
}

.public-profile .user-card .icons a {
    background-repeat: no-repeat;
    background-size: contain;
    width: 23px;
    height: 23px;
    display: inline-block;
}

.public-profile .user-card.no-photo .heading .icons a {
    height: 33px;
    width: 33px;
}

.public-profile .user-card .icons a.fb {
    background-image: url('../img/facebook-light.svg');
}

.public-profile .user-card .icons a.insta {
    background-image: url('../img/instagram-light.svg');
}

.public-profile .user-card .icons a.fb:hover {
    background-image: url('../img/facebook-light-gradient.svg');
}

.public-profile .user-card .icons a.insta:hover {
    background-image: url('../img/instagram-light-gradient.svg');
}

.public-profile .user-card .details {
    font-size: 12.5px;
    margin-top: 5px;
}

.public-profile .user-card .details .icons {
    display: none;
}

.public-profile .user-card .desc {
    font-size: 12.5px;
    line-height: 1.2;
    margin-top: 15px;
}

.public-profile .user-card.no-photo .desc {
    font-size: 13.5px;
    margin-top: 20px;
}

.public-profile .user-card .location {
    font-size: 13.5px;
    line-height: 1.2;
    color: #3f3f3f;
    padding-left: 23px;
    margin: 25px 0;
    position: relative;
}

.public-profile .user-card.no-photo .location {
    margin-top: 25px;
    margin-bottom: 25px;
}

.public-profile .user-card .location:before {
    content: '';
    background: url('../img/location-gradient.svg') no-repeat;
    background-size: contain;
    width: 15px;
    height: 23px;
    position: absolute;
    left: 0;
    top: -2px;
}

.public-profile .user-card .actions .but {
    font-size: 12.5px;
    vertical-align: top;
    min-width: 170px;
    margin-right: 10px;
}

.public-profile .user-card .actions .but.transp:after, .public-profile .user-card .actions .but:not(.loading):hover:after {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

.public-profile .product-list {
    margin-top: 70px;
}

.public-profile .heading {
    font-weight: bold;
    font-size: 25px;
}

.public-profile .sub {
    font-size: 12.5px;
    line-height: 1.2;
    margin-top: 5px;
}

.public-profile .profile-services {
    padding: 50px;
}

.public-profile .profile-services .category {
    margin-top: 50px;
    margin-left: -10px;
    margin-right: -10px;
}

.public-profile .profile-services .category + .category {
    margin-top: 30px;
}

.public-profile .profile-services .item a {
    cursor: auto;
}

.public-profile .profile-services .item a:after {
    display: none;
}

.public-profile .profile-services .item a:before {
    max-width: none;
}

.public-profile .profile-services .item a.active {
    background: none;
}

.public-profile .profile-services .box {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.public-profile .profile-services .item-discount .box {
    align-items: initial;
}

.right-part-description-discount .but {
    color: rgb(255, 255, 255);
    opacity: 1;
    background: linear-gradient(29deg, rgb(200, 114, 242), rgb(247, 114, 209)) !important;
}

.right-part-description-discount .but:after {
    display: none;
}

.public-profile .profile-services .item-discount .box .name {
    font-weight: bold;
}

.public-profile .profile-services .item-discount .box .content {
    width:40%;
}

.public-profile .profile-services .item-discount .box .name {
    width:100%;
}

.public-profile .profile-services .item-discount section {
    position: absolute;
    bottom: 0;
}

.public-profile .profile-services .action {
    margin-left: 20px;
}

.public-profile .profile-services .action .but {
    font-size: 11px;
    line-height: 26px;
    height: 27px;
}

.public-profile .profile-services a.active .action .but.transp {
    color: #fff;
    background: linear-gradient(29deg, #c872f2, #f772d1) !important;
}

.public-profile .profile-services a.active .action .but.transp:after {
    display: none;
}

.public-profile .schedule-available-wrap {
    margin-top: 70px;
    position: relative;
}

.public-profile .schedule-available {
    height: 430px;
    padding: 60px 70px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: 0;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.5s, visibility 0.5s;
}

.public-profile .reservation-slider {
    font-size: 0;
    white-space: nowrap;
    transition: transform .7s;
    position: relative;
}

.public-profile .online-reservation.step0 .reservation-slider {
    transform: translate3d(0, 0, 0);
}

.public-profile .online-reservation.step1 .reservation-slider {
    transform: translate3d(calc(-100% - 15px), 0, 0);
}

.public-profile .online-reservation.step2 .reservation-slider {
    transform: translate3d(calc(-200% - 30px), 0, 0);
}

.public-profile .online-reservation.step3 .reservation-slider {
    transform: translate3d(calc(-300% - 45px), 0, 0);
}

.public-profile .online-reservation.step0 .reservation-step.step0,
.public-profile .online-reservation.step1 .reservation-step.step1,
.public-profile .online-reservation.step2 .reservation-step.step2,
.public-profile .online-reservation.step3 .reservation-step.step3 {
    height: auto;
}

.public-profile .reservation-step {
    white-space: normal;
    height: 0;
    width: 100%;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
    margin-right: 15px;
    position: relative;
    transition: opacity 0.5s, visibility 0.5s;
}

.public-profile .schedule-available.hidden {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    opacity: 0;
    visibility: hidden;
}

.public-profile .schedule-available .cols {
    display: flex;
}

.public-profile .schedule-available .col {
    flex-grow: 1;
    position: relative;
}

.public-profile .schedule-available .reserve .col + .col {
    padding: 0 20px;
    margin-left: 0;
}

.public-profile .schedule-available form, .public-profile .reservation-form {
    max-width: 340px;
    margin: auto;
}

.public-profile .schedule-available .reserve .cap, .public-profile .reservation-form .cap {
    font-weight: bold;
    font-size: 25px;
}

.public-profile .schedule-available .reserve .chosen-time, .public-profile .reservation-form .chosen-time {
    padding-bottom: 12px;
    margin-top: 10px;
    position: relative;
}

.public-profile .schedule-available .reserve .chosen-time:after, .public-profile .reservation-form .chosen-time:after {
    content: '';
    background: #000;
    width: 110px;
    height: 2px;
    position: absolute;
    left: 0;
    bottom: 0;
}

.public-profile .schedule-available .reserve .ch-date, .public-profile .schedule-available .reserve .ch-time, .public-profile .reservation-form .ch-date, .public-profile .reservation-form .ch-time {
    font-size: 13.5px;
    padding-left: 22px;
    display: inline-block;
    margin-right: 7px;
    position: relative;
}

.public-profile .schedule-available .reserve .ch-date:before, .public-profile .reservation-form .ch-date:before {
    content: '';
    background: url('../img/calendar-gradient.svg') no-repeat;
    background-size: contain;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 0;
    left: 0;
}

.public-profile .schedule-available .reserve .ch-time:before, .public-profile .reservation-form .ch-time:before {
    content: '';
    background: url('../img/clock-gradient.svg') no-repeat;
    background-size: contain;
    width: 17px;
    height: 17px;
    position: absolute;
    top: 0;
    left: 0;
}

.public-profile .schedule-available .reserve .info-list, .public-profile .reservation-form .info-list {
    margin-top: 15px;
}

.public-profile .online-reservation {
    padding: 10px;
    margin: -10px;
    margin-top: 20px;
    position: relative;
    overflow: hidden;
}

.public-profile .reservation-form .info-list {
    margin-bottom: 20px;
}

.public-profile .schedule-available .reserve .info-list li, .public-profile .reservation-form .info-list li {
    font-size: 13.5px;
    line-height: 1.2;
    margin-left: 15px;
}

.public-profile .schedule-available .reserve .field, .public-profile .reservation-form .field {
    margin-bottom: 12px;
}

.public-profile .schedule-available .reserve .but, .public-profile .reservation-form .but {
    width: 100%;
}

.public-profile .reservation-form .but i {
    font-style: normal;
}

.public-profile .schedule-available .reserve .checkbox, .public-profile .reservation-form .checkbox {
    margin-top: 10px;
}

.public-profile .schedule-available .reserve .checkbox label, .public-profile .reservation-form .checkbox label {
    font-size: 13px;
}

.public-profile .schedule-available .reserve .checkbox a, .public-profile .reservation-form .checkbox a {
    color: #000;
    text-decoration: underline;
}

.public-profile .schedule-available .reserve .checkbox a:hover, .public-profile .reservation-form .checkbox a:hover {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.public-profile .schedule-available .reserve .error, .public-profile .reservation-form .error {
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
}

.public-profile .reservation-form .error {
    margin-top: 60px;
}

.public-profile .schedule-available .reserve .prev, .public-profile .reservation-form .prev {
    width: 27px;
    height: 27px;
    margin: auto;
    cursor: pointer;
    margin-top: 30px;
    position: absolute;
    left: 0;
    right: 0;
}

.public-profile .calendar-day .prev {
    width: 27px;
    height: 27px;
    margin: auto;
    cursor: pointer;
    margin-top: 30px;
    margin-bottom: 30px;
}

.public-profile .reservation-form .prev {
    margin-top: 25px;
}

.public-profile .reservation-form .prev.disabled {
    opacity: 0.2;
    pointer-events: none;
}

.public-profile .schedule-available .reserve .prev img, .public-profile .reservation-form .prev img, .public-profile .calendar-day .prev img {
    width: 100%;
}

.public-profile .schedule-available .confirmation {
    max-width: 690px;
    margin-left: auto;
    margin-right: auto;
}

.public-profile .schedule-available .confirmation .cap, .public-profile .reservation-confirmation .cap {
    font-weight: bold;
    font-size: 19px;
}

.public-profile .schedule-available .confirmation .sub, .public-profile .reservation-confirmation .sub {
    font-size: 13.5px;
    margin-top: 10px;
    margin-bottom: 40px;
}

.public-profile .schedule-available .confirmation .buttons {
    display: flex;
}

.public-profile .schedule-available .confirmation .buttons a {
    flex: 1;
}

.public-profile .schedule-available .confirmation .buttons a + a {
    margin-left: 10px;
}

.public-profile .schedule-available .confirmation .buttons .but {
    width: 100%;
}

.public-profile .reservation-confirmation .buttons {
    margin-top: 40px;
}

.public-profile .reservation-confirmation .buttons a {
    display: block;
}

.public-profile .reservation-confirmation .buttons a + a {
    margin-top: 10px;
}

.public-profile .reservation-step:not(.step1) {
    border: 1px solid #ecebeb;
    border-radius: 5px;
    box-shadow: 0 1px 5px 0 #ecebeb;
}

.public-profile .reservation-step .go-back {
    font-size: 12.5px;
    padding-left: 15px;
    display: inline-block;
    position: relative;
    cursor: pointer;
    margin-top: 15px;
}

.public-profile .reservation-step .go-back:hover {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.public-profile .reservation-step .go-back:before {
    content: '';
    background: url('../img/arrow-down.svg') no-repeat;
    width: 10px;
    height: 10px;
    transform: rotate(90deg);
    position: absolute;
    top: 1px;
    left: 0;
}

.public-profile .reservation-form {
    padding: 100px 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#main-offers-light {
    background: url('../img/main-offers-back.webp') no-repeat center;
    background-size: cover;
    box-shadow: 0px 20px 32px 0px rgba(0, 0, 0, 0.13);
    padding-top: 190px;
    padding-bottom: 175px;
    margin-bottom: 70px;
    position: relative;
}

#main-offers-light .inner {
    line-height: 1.2;
    max-width: 592px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 1;
}

#main-offers-light .head {
    font-size: 25px;
    font-weight: bold;
}

#main-offers-light .sub {
    font-size: 18px;
    margin-top: 8px;
}

#main-offers-light .sub a i, #main-offers-light .head a i, #footer .more-offers a i {
    background: -webkit-linear-gradient(90deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

#main-offers-light .animated-wrap, #footer .more-offers .animated-wrap {
    min-width: 85px;
}

#main-offers-light .cats {
    margin-top: 9px;
}

#main-offers-light .cats li {
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
    margin-top: 5px;
    margin-bottom: 5px;
}

#main-offers-light .cats li a {
    font-size: 11px;
    color: #000;
    border-radius: 30px;
    padding: 7px 20px;
    box-sizing: border-box;
    display: inline-block;
    user-select: none;
    position: relative;
}

#main-offers-light .cats li a span {
    position: relative;
    z-index: 1;
}

#main-offers-light .cats li a:after {
    content: '';
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 30px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

#main-offers-light .cats li a:hover {
    color: #fff;
    background: linear-gradient(to bottom, #c872f2, #f772d1);
}

#main-offers-light .cats li a:hover:after {
    display: none;
}

#main-offers-light .calendar-wrap, #footer .more-offers .calendar-wrap {
    margin-top: 25px;
}

#main-offers-light .calendar-title {
    display: flex;
}

#footer .more-offers .calendar-title {
    display: flex;
}

#main-offers-light .calendar-date, #main-offers-light .calendar-but,
#footer .more-offers .calendar-date, #footer .more-offers .calendar-but {
    flex: 1;
}

#main-offers-light .calendar-date, #footer .more-offers .calendar-date {
    margin-right: 7px;
    position: relative;
}

#main-offers-light .calendar-but .but, #footer .more-offers .calendar-but .but {
    width: 100%;
}

#main-offers-light .calendar-but .but, #main-offers-light .calendar-input input,
#footer .more-offers .calendar-but .but, #footer .more-offers .calendar-input input {
    font-size: 15px;
}

#main-offers-light .calendar-input input, #footer .more-offers .calendar-input input {
    background: url('../img/calendar-picker.svg') no-repeat 15px center;
    border: none;
    width: 100%;
    height: 42px;
    padding-left: 42px;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
    cursor: pointer;
}

#main-offers-light .calendar-input input:hover, #footer .more-offers .calendar-input input:hover {
    background-image: url('../img/calendar-picker-gradient.svg');
}

#main-offers-light .calendar-input, #footer .more-offers .calendar-input {
    background: #fff;
    border-radius: 5px;
    position: relative;
    z-index: 2;
}

#main-offers-light .calendar-date:after, #footer .more-offers .calendar-date:after {
    content: '';
    border-radius: 5px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

#main-offers-light .calendar-date:after, #main-offers-light .calendar-but .but,
#footer .more-offers .calendar-date:after, #footer .more-offers .calendar-but .but {
    box-shadow: 0px 12px 16px 0px rgba(0, 0, 0, 0.1);
}

#main-offers-light .calendar-picker-wrap, #footer .more-offers .calendar-picker-wrap {
    padding-bottom: 320px;
    margin-left: -12px;
    margin-right: -12px;
    margin-top: -5px;
    margin-bottom: -320px;
    overflow: hidden;
    position: relative;
}

#footer .more-offers .calendar-picker-wrap {
    padding-bottom: 0;
    padding-top: 320px;
    margin-bottom: -5px;
    margin-top: -315px;
}

#main-offers-light .calendar-picker-outer, #footer .more-offers .calendar-picker-outer {
    background: #fff;
    box-shadow: 0px 2px 16px 0px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
    padding: 25px 36px;
    margin-left: 12px;
    margin-right: 12px;
    position: absolute;
    z-index: 1;
    left: 1px;
    right: 1px;
    top: 0;
    transform: translateY(calc(-100% - 20px));
    transition: transform 0.5s;
}

#main-offers-light .calendar-picker-outer.active {
    transform: translateY(15px);
}

#footer .more-offers .calendar-picker-outer {
    top: auto;
    bottom: 0;
    transform: translateY(100%);
}

#footer .more-offers .calendar-picker-outer.active {
    transform: translateY(-15px);
}

#main-offers-light .ui-datepicker .ui-datepicker-header, #footer .more-offers .ui-datepicker-header {
    display: block;
}

#main-offers-light .ui-datepicker .ui-datepicker-prev, #footer .more-offers .ui-datepicker .ui-datepicker-prev {
    left: 2px;
    transform: rotate(90deg);
}

#main-offers-light .ui-datepicker .ui-datepicker-next, #footer .more-offers .ui-datepicker .ui-datepicker-next {
    right: 0;
    transform: rotate(-90deg);
}

#main-cats {
    margin-top: 50px;
}

#main-cats .head {
    font-weight: bold;
    font-size: 75px;
}

#main-cats .sub, #main-cats-text .sub {
    font-weight: bold;
    font-size: 25px;
}

#main-cats-text {
    margin-top: 50px;
}

#main-cats-text .text {
    font-size: 14px;
    line-height: 1.2;
}

#main-cats-text h1, #main-discounts h1 {
    font-size: 25px;
    line-height: 1.2;
    letter-spacing: -0.025em;
}

#main-discounts h1 {
    margin-bottom: 20px;
}

#main-cats-text h1 span, #main-discounts h1 span {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
}

#main-cats-text h1 + .text {
    margin-top: 15px;
}

#main-cats-text .all {
    display: none;
}

#main-cats .product-list {
    margin: 0;
}

#main-cats .product-list .item .title {
    font-weight: bold;
    font-size: 13.5px;
}

#main-cats .product-list .item .info {
    color: #676767;
    margin-top: 1px;
}

.info-new-clients {
    box-shadow: 0 1px 5px 0 #ecebeb;
    border: 1px solid #ecebeb;
    border-radius: 5px;
    overflow: hidden;
    margin: 100px 0;
}

.info-new-clients .box {
    display: flex;
    align-items: center;
}

.info-new-clients .img {
    width: 50%;
    flex-shrink: 0;
    align-self: stretch;
}

.info-new-clients .img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.info-new-clients .text {
    line-height: 1.2;
    padding: 50px;
}

.info-new-clients .text .cap {
    font-weight: bold;
    font-size: 25px;
}

.info-new-clients .text .desc {
    font-size: 15px;
    margin-top: 25px;
}

.info-new-clients .text .but {
    min-width: 140px;
    margin-top: 20px;
}

.product-categories {
    padding: 50px;
}

.product-categories .heading {
    font-weight: bold;
    font-size: 19px;
}

.product-categories .cols {
    font-size: 14px;
    line-height: 1.2;
    padding-right: 20px;
    display: flex;
    justify-content: space-between;
    margin-top: 25px;
}

.product-categories .col {
    padding-right: 20px;
    box-sizing: border-box;
}

.product-categories .col:nth-child(1) {
    order: 3;
}

.product-categories .col:nth-child(2) {
    order: 4;
}

.product-categories .col:nth-child(3) {
    order: 2;
}

.product-categories .col:nth-child(4) {
    order: 1;
}

.product-categories .parent, .product-categories li {
    margin-bottom: 7px;
}

.product-categoriest .parent {
    font-weight: bold;
}

.product-categories .parent a {
    color: #000;
    display: inline-block;
}

.product-categories ul {
    overflow: hidden;
    transition: max-height 0.5s;
}

.product-categories li {
    list-style: none;
    padding-left: 10px;
    position: relative;
}

.product-categories li:before {
    content: '';
    background: #676767;
    border-radius: 50%;
    width: 4px;
    height: 4px;
    position: absolute;
    left: 0;
    top: 5px;
}

.product-categories li a {
    color: #676767;
    display: inline-block;
}

.product-categories .cols a:hover {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.product-categories li h3 {
    font-weight: normal;
}

.product-categories .show-all {
    display: none;
}

.product-categories .show-all span {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    cursor: pointer;
    user-select: none;
}

.product-categories .show-all span:hover {
    opacity: 0.8;
}

.product-categories ul:not(.full) + .show-all .hide, .product-categories ul.full + .show-all .show {
    display: none;
}

.info-block {
    background: #f8f7f7;
    border-radius: 10px;
    padding: 45px 55px;
    margin-bottom: 50px;
}

.info-block.big-padding {
    padding-top: 70px;
    padding-bottom: 70px;
}

.info-block .heading {
    font-weight: bold;
    font-size: 31px;
    letter-spacing: -0.025em;
    padding-bottom: 15px;
    position: relative;
}

.info-block .heading:after {
    content: '';
    background: #000;
    width: 110px;
    height: 2px;
    position: absolute;
    left: 0;
    bottom: 0;
}

.info-block .desc {
    font-size: 15px;
    line-height: 1.2;
    color: #969696;
    margin-top: 20px;
}

.info-block .box .desc {
    margin-bottom: 20px;
}

.info-block .but {
    font-size: 12.5px;
    line-height: 32px;
    white-space: nowrap;
    border-radius: 50px;
    height: 32px;
    min-width: 115px;
    margin-right: 15px;
}

.info-block .but, .info-block .error {
    display: inline-block;
    vertical-align: middle;
}

.info-block .error {
    font-size: 12.5px;
    letter-spacing: -0.025em;
    color: #f65151;
    margin: 10px 0;
}

#footer {
    opacity: 0;
    font-size: 13px;
    padding-top: 20px;
    padding-bottom: 20px;
    margin-top: 30px;
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;
    right: 0;
}

#footer.overflow, .insta #footer {
    overflow: hidden;
}

.pass-reset #footer, .login #footer {
    margin-top: 0;
}

#footer .box {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.home #footer .box {
    padding-left: 50px;
    padding-right: 50px;
}

#footer .menu li {
    margin-right: 17px;
    display: inline-block;
    position: relative;
}

#footer .menu > ul > li:not(:last-child):after {
    content: '•';
    color: #505050;
    position: absolute;
    right: -12px;
}

#footer .menu li a, #footer .menu li span {
    color: #505050;
    position: relative;
    cursor: pointer;
}

#footer .menu li a:hover, #footer .menu li:not(.lang) span:hover, #footer .menu li.lang span:hover i {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

#footer .menu li i {
    position: relative;
}

#footer .menu li a:after, #footer .menu li a:before, #footer .menu li i:before, #footer .menu li i:after {
    content: '';
    height: 1px;
    width: 0;
    position: absolute;
    bottom: -3px;
    transition: 0.3s;
}

#footer .menu li a:before, #footer .menu li i:before {
    background: linear-gradient(90deg, #c872f2, #c872f2);
}

#footer .menu li a:after, #footer .menu li i:after {
    background: linear-gradient(90deg, #c872f2, #f772d1);
}

#footer .menu li a:after, #footer .menu li i:after {
    left: 50%;
}

#footer .menu li a:before, #footer .menu li i:before {
    right: 50%;
}

#footer .menu li a:hover:after, #footer .menu li a:hover:before,
#footer .menu li i:hover:after, #footer .menu li i:hover:before {
    width: 50%;
}

#footer .copy {
    font-weight: bold;
    font-size: 25px;
    color: #505050;
}

#footer .copy span {
    color: #f65151;
}

#footer .copy a {
    color: #000;
}

#footer .copy a:hover {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

#footer .more-offers {
    background: url('../img/main-offers-back-bottom.jpg') no-repeat center top;
    background-size: auto;
    background-size: cover;
    padding-top: 130px;
    padding-bottom: 140px;
    position: relative;
}

#footer .more-offers .inner {
    line-height: 1.2;
    max-width: 592px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 1;
}

#footer .more-offers .head {
    font-size: 25px;
    font-weight: bold;
}

#footer .more-offers .sub {
    font-size: 18px;
    margin-top: 8px;
}

#footer .more-offers .head, #footer .more-offers .sub {
    position: relative;
    z-index: 1;
}

#footer .more-services .box {
    display: block;
}

.insta #footer {
    padding-top: 60px;
    padding-bottom: 0;
    margin-top: -20px;
}

.insta #footer .wrap {
    padding-bottom: 20px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
}

.home #footer, .category #footer, .discount #footer {
    background: #f0f0f0;
}

.popup-back {
    position: fixed;
    z-index: 999;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    cursor: pointer;
    display: none;
}

.popup-back.visible {
    display: block;
}

.popup {
    position: fixed;
    z-index: 9991;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 422px;
    height: 442px;
    box-sizing: border-box;
    background: #f7f8f8;
    border: 1px solid #dad9d9;
    border-radius: 4px;
    padding: 20px 50px;
    display: none;
}

.popup.popup-service {
    background: #fff;
    border-color: #9e9e9e;
    border-radius: 10px;
    width: 365px;
    height: auto;
    padding: 35px 20px;
}

.popup.visible {
    display: flex;
    align-items: center;
}

.popup .cell {
    width: 100%;
}

.popup .heading {
    font-size: 25px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 25px;
}

#popup-password-set .heading {
    margin-bottom: 20px;
}

.popup .sub {
    font-size: 14px;
    line-height: 1.2;
    text-align: center;
    margin-top: 35px;
    margin-bottom: 35px;
}

#popup-password-set .sub {
    margin-top: 20px;
    margin-bottom: 25px;
}

#popup-listing .step1 .sub {
    margin-top: 0;
}

.popup .sub a {
    color: #f65151;
    position: relative;
}

.popup .sub a:after, .popup .sub a:before {
    content: '';
    background: #f65151;
    height: 1px;
    width: 0;
    position: absolute;
    bottom: -3px;
    transition: 0.3s;
}

.popup .sub a:after {
    left: 50%;
}

.popup .sub a:before {
    right: 50%;
}

.popup .sub a:hover:after, .popup .sub a:hover:before {
    width: 50%;
}

.popup .sub p {
    margin-bottom: 20px;
    text-align: center;
}

.popup .sub p.center {
    text-align: center;
}

.popup .sub p .listing {
    color: #f65151;
    font-size: 19px;
    display: block;
}

.popup .field {
    margin-bottom: 10px;
}

.popup .field textarea {
    height: 60px;
}

.popup .field.active textarea {
    height: 50px;
}

.popup .cols {
    margin-right: -7px;
}

.popup .col {
    float: left;
    width: 40%;
    padding-right: 7px;
    box-sizing: border-box;
}

.popup .col + .col {
    width: 60%;
}

.popup .but {
    width: 100%;
}

.popup .but:not(.loading):hover:after {
    background: linear-gradient(#f7f8f8, #f7f8f8) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
}

.popup .buts .but {
    margin-bottom: 10px;
}

.popup .forgot {
    margin-top: 12px;
}

.popup .forgot span {
    font-size: 14px;
    line-height: 1.2;
    color: #000;
    float: right;
    position: relative;
    cursor: pointer;
}

.popup .forgot span:after, .popup .forgot span:before {
    content: '';
    background: #000;
    height: 1px;
    width: 0;
    position: absolute;
    bottom: -3px;
    transition: 0.3s;
}

.popup .forgot span:after {
    left: 50%;
}

.popup .forgot span:before {
    right: 50%;
}

.popup .forgot span:hover:after, .popup .forgot span:hover:before {
    width: 50%;
}

.popup .error, .popup .response {
    color: #f65151;
    font-size: 13px;
    text-align: center;
    margin-top: 10px;
    position: absolute;
    left: 0;
    right: 0;
    display: none;
}

.popup .response {
    color: #000;
}

.popup .prev {
    position: absolute;
    width: 27px;
    height: 27px;
    left: 0;
    right: 0;
    margin: auto;
    margin-top: 55px;
    cursor: pointer;
}

.popup .prev img {
    max-width: 100%;
}

.popup .close {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 25px;
    height: 25px;
    transform: rotate(45deg);
    cursor: pointer;
}

.popup .close:before, .popup .close:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background: #777;
}

.popup .close:before {
    width: 100%;
    height: 2px;
}

.popup .close:after {
    width: 2px;
    height: 100%;
}

.popup .close:hover:before, .popup .close:hover:after {
    background: linear-gradient(to bottom, #c872f2, #f772d1);
}

.popup .g-recaptcha {
    margin-bottom: 8px;
}

.popup .g-recaptcha > div {
    margin: auto;
    max-width: 100%;
}

.popup .g-recaptcha iframe {
    max-width: 100%;
}

.popup .verified {
    margin-top: 30px;
}

#popup-forget .step2, #popup-forget .step1.hidden, #popup-listing .step2, #popup-listing .step1.hidden {
    display: none;
}

#popup-forget .step1.hidden + .step2, #popup-listing .step1.hidden + .step2 {
    display: block;
}

.popup.popup-service .heading {
    font-size: 18px;
    text-align: left;
    margin-bottom: 20px;
}

.popup.popup-service .list {
    border-bottom: 2px solid #ededed;
    padding-bottom: 22px;
}

.popup.popup-service .list li {
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
    margin-bottom: 10px;
}

.popup.popup-service .list li a, .popup.popup-service .list li.active {
    font-size: 11.5px;
    color: #000;
    border: 1px solid #b0b0b0;
    border-radius: 30px;
    padding: 9px 20px;
    box-sizing: border-box;
    display: inline-block;
}

.popup.popup-service .list li a {
    cursor: pointer;
}

.popup.popup-service .list li a:hover {
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
}

.popup.popup-service .list li.active {
    font-weight: bold;
    border-color: #000;
}

#popup-profile-type.visible + .mback {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.popup.get-contacts .sub {
    text-align: left;
    color: #969696;
    font-size: 13px;
    margin-top: 25px;
    margin-bottom: 25px;
}

.popup.get-contacts .sub b {
    color: #000;
}

.popup.get-contacts .step1 {
    margin-top: 20px;
}

.popup.get-contacts .step2 {
    display: none;
}

.popup.get-contacts .sent {
    font-size: 14px;
    line-height: 1.2;
    text-align: center;
    margin-top: 25px;
    margin-bottom: 25px;
}

.popup.get-contacts .sent b {
    display: block;
}

.popup.popup-service .ui-datepicker {
    margin-top: 10px;
}

.popup.popup-service .ui-datepicker .ui-datepicker-header {
    display: block;
}

/* Images Preloading */

.img-preload-item, .img-preload-bg {
    position: relative;
}

.img-preload-bg:after, .img-preload-item:after, .product-list .item:not(.full-click) a:after, .product-list .item .img-wrap:after, #service .img-wrap:after, .public-profile .img-wrap:after, .text-page .cell.img:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s, visibility 0.5s;
    animation-duration: 1.8s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

.big-background-preload, .img-preload-item:after, .product-list .item:not(.full-click) a:after, .product-list .item .img-wrap:after, #service .img-wrap:after, .public-profile .img-wrap:after, .text-page .cell.img:after {
    background: linear-gradient(to right, #f4f4f4 8%, #f3f3f3 38%, #f4f4f4 54%);
    background-size: 1000px 640px;
    animation-name: gradient;
    transition: opacity 1s, visibility 1s;
}

.product-list .item:not(.full-click) a:after, .product-list .item .img-wrap:after, .text-page .cell.img:after {
    border-radius: 4px;
}

#service .photo.img-preload-item:after {
    border-radius: 50%;
}

.big-background-preload, .img-preload-bg:after {
    background: linear-gradient(to right, #ccc 8%, #ddd 38%, #ccc 54%);
    background-size: 4000px;
    animation-name: gradient_big;
    animation-duration: 1.8s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

@keyframes gradient {
    0% {
        background-position: -468px 0;
    }
    100% {
        background-position: 468px 0;
    }
}

@keyframes gradient_big {
    0% {
        background-position: -2000px 0;
    }
    100% {
        background-position: 2000px 0;
    }
}

.img-preload-bg:not(.loaded):after, .img-preload-block:not(.loaded) .img-preload-item:after, .product-list:not(.loaded) .item:not(.full-click) a:after, .product-list:not(.loaded) .item .img-wrap:after, #service .img-wrap:not(.loaded):after, .public-profile .img-wrap:not(.loaded):after, .text-page:not(.loaded) .cell.img:after {
    opacity: 1;
    visibility: visible;
}

.img-preload-item img, .product-list .item img, #service .img-wrap img, .public-profile .img-wrap img, .image-cropper img, .error-page img, .text-page img {
    transition: opacity 0.2s;
}

.img-preload-block:not(.loaded) .img-preload-item img, .product-list:not(.loaded) .item img, #service .img-wrap:not(.loaded) img, .public-profile .img-wrap:not(.loaded) img, .image-cropper:not(.loaded) img, .error-page:not(.loaded) img, .text-page:not(.loaded) img {
    opacity: 0;
}

.product-list:not(.loaded) .item:not(.full-click) a, .product-list:not(.loaded) .item .img-wrap {
    padding-top: 100%;
}

.text-page:not(.loaded) .cell.img {
    width: 400px;
    padding-top: 62.39%;
}

.product-list:not(.loaded) .item.new .box {
    border: none;
    box-shadow: inset 0px 0px 0px 1px #f00;
    padding-top: 100%;
}

.product-list:not(.loaded) .item img, .text-page:not(.loaded) img {
    position: absolute;
    visibility: hidden;
}

body:not(.no-scroll) #join-page .header, body:not(.no-scroll) #join-page .text .head, body:not(.no-scroll) #join-page .text .sub, body:not(.no-scroll) #join-page .form {
    position: relative;
    z-index: 1;
}

body:not(.no-scroll) #join-page .header {
    z-index: 2;
}

#service .img-wrap, .public-profile .img-wrap {
    border-radius: 10px;
    overflow: hidden;
    position: relative;
}

#service .img-wrap {
    height: 100%;
}

@media screen and (min-width: 769px) {
    .mobile {
        display: none;
    }

    .header.profile-menu .mwrap {
        display: flex;
        align-items: center;
        position: relative;
        top: 3px;
    }

    .header.profile-menu .menu {
        position: absolute;
        z-index: 99;
        min-width: 120px;
        top: 100%;
        right: -8px;
        margin-top: 30px;
        background: #fff;
        border: 1px solid #e5e5e5;
        box-shadow: 0 4px 12px 0 rgba(32, 32, 36, .15);
        border-radius: 3px;
        opacity: 0;
        visibility: hidden;
        text-align: left;
        transition: opacity 0.5s, visibility 0.5s, margin 0.5s;
        user-select: none;
    }

    .home .header.profile-menu .menu, .join .header.profile-menu .menu {
        right: 33px;
    }

    .header.profile-menu .menu:before {
        content: '';
        position: absolute;
        top: -7px;
        right: 12px;
        width: 13px;
        height: 13px;
        background: #fff;
        border-top: 1px solid;
        border-left: 1px solid;
        border-color: #e5e5e5;
        transform: rotate(45deg);
    }

    .header.profile-menu .mwrap.active ~ .menu {
        opacity: 1;
        visibility: visible;
        margin-top: 15px;
    }

    .header.profile-menu .menu li:not(.mmob) {
        display: block;
        font-size: 13px;
        color: #000;
        background: #fff;
        margin: 0;
        cursor: pointer;
    }

    .header.profile-menu .menu li:not(:last-child) {
        border-bottom: 1px solid #dad9d9;
    }

    .header.profile-menu .menu li a {
        padding: 20px;
        padding-right: 50px;
        display: block;
    }

    .header.profile-menu .menu li a:before, .header.profile-menu .menu li a:after {
        display: none;
    }

    #wrapper.public-profile, #wrapper.category, #wrapper.insta, #wrapper.service {
        overflow: hidden;
    }

    .public-profile .header, .category .header, .insta .header, .service .header {
        padding-bottom: 12px;
        margin-bottom: 15px;
    }

    .public-profile .header:after, .category .header:after, .insta .header:after, .service .header:after {
        content: '';
        height: 15px;
        box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.04);
        position: absolute;
        bottom: 0;
        left: -9999px;
        right: -9999px;
    }

    #service .content {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    #service1.vis, #service2.vis, #service2.vis form, #service3.vis {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    #service2.vis, #service3.vis {
        padding-right: 40px;
    }

    .no-schedule #service1.vis {
        display: block;
    }

    #service.no-schedule .desc {
        margin-top: 60px;
        margin-bottom: 60px;
    }

    #service.no-schedule .bottom-wrap {
        margin-top: 60px;
    }

    #wrapper.login, #wrapper.pass-reset {
        display: flex;
        flex-direction: column;
        overflow: hidden;
    }

    #wrapper.login > .wrap, #wrapper.pass-reset > .wrap {
        flex-grow: 1;
        display: flex;
        flex-direction: column;
    }

    #join-page .login .login-link ~ .error, #join-page .login .login-link ~ .response {
        top: auto;
        bottom: 40px;
    }

    .join .header .heading a:first-child {
        font-size: 31px;
        background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    .login-page {
        box-sizing: border-box;
        flex-grow: 1;
        display: flex;
        flex-direction: column;
        position: relative;
    }

    .login-page .wrap {
        width: 1040px;
        max-width: 100%;
        margin: 0 auto;
        box-sizing: border-box;
    }

    .login-page .wrap.center {
        padding-top: 30px;
        padding-bottom: 30px;
        padding-left: 0;
        padding-right: 0;
        margin: auto;
    }

    #join-page .form .more {
        font-size: 14px;
        text-align: center;
        margin-top: 15px;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
    }

    #join-page .form .more a {
        color: #fff;
    }

    #join-page .form .more a:hover {
        color: #f65151;
    }

    #join-page .img-preload-bg:after {
        display: none;
    }

    #service {
        background: #f7f8f8;
        border-radius: 5px;
    }

    #service .but.transp:after, #service .but:not(.loading):hover:after {
        background: linear-gradient(#f7f8f8, #f7f8f8) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    }

    #service-edit .row, .upload-form .row {
        border: 1px solid #ecebeb;
        box-shadow: 0 1px 5px 0 #ecebeb;
        border-radius: 5px;
        overflow: hidden;
    }

    #add-post .row {
        overflow: visible;
    }

    #service-edit > .row > .cell:last-child, .upload-form > .row > .cell:last-child {
        padding-top: 25px;
        padding-bottom: 30px;
    }

    #service-edit > .row > .cell:first-child, .added .upload-img, .upload-form > .row > .cell:first-child {
        border-left: none;
        border-top: none;
        border-bottom: none;
    }

    #service-edit .head.margin {
        margin-top: 20px;
    }

    .product-list .top-info .buts {
        display: none;
    }

    #service.no-photo .center-content {
        max-width: none;
    }

    #service.no-photo .content {
        padding: 45px;
    }

    .no-photo #service2 form {
        margin: 0;
    }

    .no-photo #service3 {
        margin: 0;
    }

    .calendar-foot {
        display: none;
    }

    .profile-calendar .calendar-week:not(.active) + .calendar-month:not(.active), .profile-calendar .calendar-head .week-type:not(.active) + .month-type:not(.active) {
        display: block;
    }

    .profile-calendar .calendar-day.active, .profile-calendar .calendar-head .day-type.active {
        display: none;
    }

    .public-profile .profile-calendar .calendar-month {
        display: block;
    }

    .profile-calendar:not(.info-only) .calendar-month .ui-datepicker-calendar .reservation-data li a:hover span, .profile-calendar:not(.info-only) .calendar-month .ui-datepicker-calendar .reservation-data li a.active span {
        background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
        background-clip: border-box;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li a.active span {
        font-weight: bold;
    }

    .public-profile .profile-calendar .calendar-head .selector, .profile-calendar .calendar-head .heading + .selector {
        text-align: center;
        position: absolute;
        left: 0;
        right: 0;
    }

    .public-profile .profile-calendar .calendar-head .selector .month-type, .profile-calendar .calendar-head .heading + .selector .month-type.active, .profile-calendar .calendar-head .heading + .selector .week-type.active {
        display: inline-block;
    }

    .profile-calendar .calendar-month .ui-datepicker td {
        padding: 5px;
    }

    #profile .profile-calendar .calendar-month .ui-datepicker td:not(.unavailable):hover .ui-state-default {
        color: #c872f2;
    }

    .profile-calendar .calendar-month .ui-datepicker td .ui-state-default {
        height: 20px;
        margin-top: 2px;
        margin-bottom: 2px;
        margin-right: 5px;
        position: static;
        float: right;
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data ul {
        height: auto;
        columns: auto;
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li {
        width: calc(33.33% - 4px);
        float: left;
        margin-top: 2px;
        margin-bottom: 2px;
        margin-left: 2px;
        margin-right: 2px;
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li a {
        border-radius: 30px;
        height: 20px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li.reservation a {
        color: #fff;
        background: linear-gradient(to bottom, #c872f2, #f772d1);
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li.reservation a:hover {
        background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
        border: 1px solid transparent;
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li.reservation a:hover span {
        -webkit-text-fill-color: #000;
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li.reservation a.active {
        background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
        border: 1px solid transparent;
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li.reservation a.active span {
        -webkit-text-fill-color: #000;
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li.slot a {
        background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
        border: 1px solid transparent;
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li.slot a:hover, .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li.slot a.active {
        background: linear-gradient(to bottom, #c872f2, #f772d1);
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li.slot a:hover span, .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li.slot a.active span {
        -webkit-text-fill-color: #fff;
    }

    .profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li.slot {
        display: inline-block;
        margin-left: 6px;
    }

    .popup.get-contacts .prev {
        margin-top: 25px;
    }

    .popup.get-contacts .error {
        margin-top: 5px;
    }
}

@media screen and (min-width: 769px) and (max-width: 1023px) {
    #service-edit.profile-edit > .row > .cell.added:first-child {
        padding: 10px;
    }

    #service-edit.profile-edit .added .upload-img {
        border: 1px solid #dad9d9;
        border-radius: 5px;
    }

    .profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li a, .profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li span {
        font-size: 10px;
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data li {
        width: calc(50% - 4px);
        max-width: 50px;
    }

    #service-edit .but-wrap {
        display: block;
    }

    #service-edit .but-wrap .but + .but {
        margin-top: 10px;
        margin-left: 0;
    }
}

@media screen and (max-width: 1100px) {
    #wrapper {
        overflow: hidden;
    }

    .product-list .sub {
        padding-right: 80px;
    }

    .error-page {
        padding-right: 45%;
    }

    .error-page img {
        max-width: 40%;
    }

    #join-page .text {
        padding-right: 30px;
    }

    #join-page .text .sub {
        line-height: 1.2;
    }

    #service .img, #blog .img {
        max-width: 50%;
    }

    #service .slick-slide {
        overflow: hidden;
    }

    #service .content, #blog .content {
        width: 50%;
        padding-left: 30px;
        padding-right: 30px;
        box-sizing: border-box;
    }

    #service.no-photo .content {
        width: auto;
        padding-left: 45px;
    }

    #service .hint {
        position: static;
        margin-top: 10px;
    }

    #service-edit > .row > .cell, .upload-form > .row > .cell {
        width: 50% !important;
        box-sizing: border-box;
    }

    .text-page .cell.img {
        max-width: 40%;
    }

    .text-page .cell.text {
        padding-left: 40px;
    }

    .text-page:not(.loaded) .cell.img {
        padding-top: 59.9%;
    }
}

@media screen and (min-width: 1025px) {
    .header .center-content {
        text-align: center;
        position: absolute;
        left: 0;
        right: 0;
        top: 10px;
    }

    .header .left-side {
        position: relative;
        z-index: 1;
    }
}

@media screen and (max-width: 1024px) {
    .header .toggle-switch {
        margin-top: 10px;
    }

    .product-list .item.start .inner {
        padding: 15px 30px;
    }

    .product-list .item.start p {
        margin-top: 10px;
    }

    #service .param .cell:first-child {
        width: 160px;
    }

    #service .param .title.loc br {
        display: none;
    }

    #service .param .title.loc br ~ br {
        display: inline;
    }

    .join-top {
        background-position: 70% center;
    }

    .join-screen .text-col + .img-wrap, .join-screen .img-wrap + .text-col, .join-screen.join-easy .img-wrap {
        margin-left: 50px;
    }

    .join-screen .img-wrap {
        max-width: 40%;
    }

    .join-screen.join-easy .img-wrap {
        margin-bottom: -18%;
    }

    .join-screen.join-comfortable .img-wrap {
        margin-bottom: -3%;
    }

    .join-screen .sub br {
        display: none;
    }

    #join-page .text .container:not(:last-child) {
        margin-bottom: 60px;
    }

    #join-page .text .container:nth-last-child(1):after {
        right: 0;
        top: 116px;
    }

    #join-page .text .main-head {
        font-size: 28px;
    }

    #service-edit.profile-edit .hint {
        max-height: none;
    }

    .product-categories .cols {
        padding-right: 0;
    }

    .customer-request .time-control {
        margin-right: 0;
    }

    .customer-request-cancel p br, .reservation-request-cancel p br {
        display: none;
    }

    .schedule-balance .withdraw {
        text-align: center;
    }

    .schedule-balance .withdraw .error {
        position: static;
        transform: none;
    }

    .schedule-balance .invoices .status {
        display: inline-block;
    }

    .reservation-request .status-circle {
        margin-right: 0;
    }

    #join-page .form {
        margin-right: 30px;
    }

    #join-page .wrap.center {
        padding-left: 0;
    }

    #join-page .text .container {
        padding-left: 0;
    }

    #wrapper.join > .wrap, #wrapper.login > .wrap, #wrapper.pass-reset > .wrap {
        width: 100%;
        box-sizing: border-box;
    }

    .profile-calendar .ui-datepicker td .ui-state-default {
        font-size: 11px;
        top: 8px;
        right: 8px;
    }

    .profile-calendar .ui-datepicker td {
        padding-right: 20px;
    }

    .profile-calendar .calendar-head .selector {
        padding: 0 5px;
        position: static;
    }

    .customer-request .box {
        display: block;
    }

    .customer-request .buttons {
        margin-top: 15px;
        position: static;
    }

    .public-profile .user-card .actions .but {
        margin-bottom: 10px;
    }

    .public-profile .user-card .heading {
        font-size: 28px;
    }

    .public-profile .schedule-available {
        padding: 50px;
    }

    .product-categories {
        padding: 30px 0;
    }

    .home #footer .box {
        padding-left: 0;
        padding-right: 0;
    }
}

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

    .center-content #service-type {
        display: none;
    }


    .desktop {
        display: none;
    }

    .header.mobile-rows {
        margin-bottom: 60px;
    }

    .wrap, .inner-wrap, .home .header, .join .header {
        padding-left: 10px;
        padding-right: 10px;
    }

    .public-profile .wrap {
        padding-left: 20px;
        padding-right: 20px;
    }

    .header .menu li a:after, .header .menu li a:before, .header .menu li.login span:after, .header .menu li.login span:before, .header .menu li i:after, .header .menu li i:before, .header .heading a:after, .header .heading a:before, #footer .menu li a:after, #footer .menu li a:before {
        display: none;
    }

    .header .service-buttons.mdesk {
        display: none;
    }

    .homepage .header .left-side {
        margin-left: 0;
    }

    .whatsapp-but .but {
        height: 25px !important;
        line-height: 25px !important;
        min-width: 90px !important;
    }

    #main-offers-light {
        background-image: url('../img/main-offers-back-mobile.jpg');
        box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.1);
        padding-top: 160px;
        margin-bottom: 40px;
    }

    #main-offers-light .inner, #footer .more-offers .inner {
        max-width: 292px;
    }

    #main-offers-light .inner {
        max-width: none;
        padding-left: 10%;
        padding-right: 10%;
    }

    #main-offers-light .calendar-but .but, #main-offers-light .calendar-input input, #footer .more-offers .calendar-but .but, #footer .more-offers .calendar-input input {
        font-size: 14px;
    }

    #main-offers-light .calendar-title, #footer .more-offers .calendar-title {
        display: block;
    }

    #main-offers-light .sub, #footer .more-offers .sub {
        font-size: 14px;
    }

    #main-offers-light .animated-wrap, #footer .more-offers .animated-wrap {
        min-width: 100%;
    }

    #footer .more-offers {
        padding-top: 180px;
        padding-bottom: 200px;
    }

    #main-offers-light .calendar-date {
        height: 35px;
        margin-right: 0;
        margin-bottom: 17px;
    }

    #footer .more-offers .calendar-date:after {
        top: auto;
        height: 40px;
    }

    #footer .more-offers .calendar-date {
        margin-right: 0;
        margin-bottom: 10px;
    }

    #main-offers-light .calendar-picker-outer, #footer .more-offers .calendar-picker-outer {
        left: 0;
        right: 0;
    }

    #main-offers-light .calendar-but .but, #footer .more-offers .calendar-but .but {
        z-index: 0;
    }

    .product-list {
        margin-top: 50px;
        margin-bottom: 20px;
    }

    .public-profile .product-list {
        margin-bottom: -20px;
    }

    .product-list .heading + .items {
        margin-top: 15px;
    }

    .product-list .item {
        margin-bottom: 30px;
    }

    #add-portfolio .product-list {
        margin-top: 100px;
    }

    #add-portfolio.loading .form-loader {
        margin-top: 50px;
    }

    .product-list .heading, .homepage .product-list .heading, .product-list.insta .heading {
        font-size: 17px;
    }

    .public-profile .product-list .heading {
        font-size: 22px;
        margin-top: 8px;
    }

    .product-list.insta .heading {
        margin-top: 50px;
    }

    .product-list .sub {
        font-size: 13px;
    }

    .dropdown, .header .menu li.lang > span:after {
        transition: none;
    }

    .dropdown, .product-list .city-drop .dropdown {
        width: auto;
        position: fixed;
        z-index: 9999;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        border-radius: 0;
        border: none;
        transform: none;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        max-height: none;
        margin: 0;
    }

    .header .service-filter .dropdown, .popup.popup-service {
        border-radius: 0;
        width: auto;
        height: auto;
        left: 0;
        right: 0;
        bottom: auto;
        transform: translate3d(0, -100%, 0);
        opacity: 0;
        visibility: visible;
        transition: transform 0.3s, opacity 0.3s;
    }

    #footer .dropdown {
        margin: 0;
        bottom: 0;
        visibility: visible;
        transform: translate3d(0, 100%, 0);
        transition: transform 0.3s, opacity 0.3s;
    }

    #footer .active .dropdown {
        margin-bottom: 0;
        transform: translate3d(0, 0, 0);
    }

    #footer .active .dropdown li.title {
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        padding-right: 10px;
    }

    #footer .active .dropdown li.title span {
        width: 20px;
        height: 20px;
    }

    #footer .menu li.lang i.full {
        display: none;
    }

    #footer .menu li.lang i.short {
        display: inline;
    }

    .popup.popup-service {
        display: block;
    }

    #popup-password-set, #popup-profile-type {
        display: block;
        top: auto;
        transform: translate3d(0, 100%, 0);
        opacity: 0;
        transition: transform 0.3s, opacity 0.3s;
    }

    .header .service-filter.active .dropdown, .popup.popup-service.visible, #popup-password-set.visible, #popup-profile-type.visible {
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }

    .active .dropdown {
        display: block;
        margin-top: 0;
        margin-left: 0;
    }

    .active .dropdown:before {
        display: none;
    }

    .active .dropdown li.title {
        font-size: 19px !important;
        font-weight: bold;
        padding: 16px 20px;
        display: block !important;
        position: relative;
        cursor: auto;
    }

    .active .dropdown li.title span {
        height: 100%;
        width: 40px;
        position: absolute;
        top: 0;
        right: 0;
        cursor: pointer;
    }

    .header .active .dropdown li.title span {
        display: none;
    }

    .active .dropdown li.title span:before, .active .dropdown li.title span:after {
        content: '';
        height: 2px;
        width: 20px;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
        transform: rotate(45deg);
        background: #000;
    }

    .active .dropdown li.title span:after {
        transform: rotate(-45deg);
    }

    .active .dropdown li.title:hover {
        color: #000;
    }

    .product-list .city-drop .drop.active > span:after {
        display: none;
    }

    .product-list .city-drop {
        margin: 10px 0;
    }

    .popup {
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        transform: none;
        width: auto;
        height: auto;
        border: none;
        border-radius: 0;
        padding-left: 20px;
        padding-right: 20px;
        min-width: 320px;
    }

    .popup .cell {
        max-width: 340px;
        margin: 20px auto;
    }

    .popup.popup-service .cell {
        max-width: none;
        margin: 0;
    }

    .popup-back.visible {
        display: none;
    }

    .homepage .product-list .items {
        margin-top: 10px;
    }

    .product-list .top-info {
        padding: 20px 15px;
    }

    .product-list .top-info .text {
        font-size: 11.5px;
    }

    .public-nav {
        margin-bottom: 50px;
    }

    .product-list + .public-nav {
        margin-top: -20px;
    }

    .text-description {
        font-size: 12.5px;
        padding: 25px 15px;
        margin-top: 80px;
        margin-bottom: 80px;
    }

    .text-description.small {
        background: none;
        border: none;
        padding: 0;
    }

    .product-list .text-description:first-child {
        margin-top: -13px;
    }

    .text-description .toggle-switch {
        margin-top: 15px;
    }

    #service + .text-description {
        margin-top: 30px;
    }

    .text-page .feedback {
        padding: 30px 20px;
    }

    .text-page .heading {
        font-size: 21px;
    }

    .text-page .feedback .heading {
        font-size: 25px;
    }

    .text-page .cell.text .heading, .text-page .cell.text .sub {
        font-size: 23px;
    }

    .text-page .sub {
        font-size: 18px;
    }

    .error-page {
        padding-top: 30px;
        padding-bottom: 20px;
        padding-right: 30%;
    }

    .error-page .heading {
        font-size: 21px;
        margin-bottom: 30px;
    }

    .error-page .sub {
        font-size: 14px;
    }

    .error-page li {
        margin-bottom: 10px;
    }

    .error-page img {
        max-width: 25%;
    }

    #list {
        padding-bottom: 140px;
    }

    #list .heading {
        font-size: 37px;
        line-height: 1.2;
        padding-top: 120px;
        margin-bottom: 45px;
    }

    #list .heading:before {
        top: -20px;
    }

    .text-page #list .heading {
        padding-top: 120px;
    }

    .text-page #list .wrap {
        padding-bottom: 50px;
    }

    #service {
        display: block;
        position: relative;
    }

    #service .img, #service .content {
        width: auto;
    }

    #service .img {
        max-width: none;
        text-align: center;
    }

    #service .img-wrap {
        border-radius: 5px;
        height: auto;
        width: 100%;
        height: 520px;
        display: inline-block;
    }

    #service .img-wrap img {
        width: 100%;
        height: 100%;
        max-height: 520px;
    }

    #service .img-wrap .slick-list, #service .img-wrap .slick-track, #service .img-wrap .slick-slide {
        height: auto;
    }

    #service .photo {
        border: none;
        margin-right: 3px;
    }

    #service .content, #service.no-photo .content {
        padding: 0;
        padding-top: 20px;
    }

    #service .top-wrap, #service .desc, #service .param, #service .bottom-wrap, #service2 form {
        margin-left: auto;
        margin-right: auto;
        display: block;
        box-sizing: border-box;
    }

    #service .discount {
        top: 8px;
        right: 0;
    }

    #service .heading {
        padding-right: 0;
        margin-top: 0;
    }

    #service1 .but {
        width: 100%;
    }

    #service3 {
        max-width: 340px;
        margin-left: auto;
        margin-right: auto;
    }

    #service .bottom-wrap {
        margin-top: 10px;
    }

    #service .middle-wrap {
        margin-top: 50px;
    }

    #service .but-cols .but {
        font-size: 12px;
    }

    #service .desc {
        max-height: none;
        margin-bottom: 20px;
    }

    #service .check {
        margin-bottom: 40px;
    }

    #service3 {
        padding-top: 20px;
    }

    #service .verified {
        margin-top: 0;
    }

    #service .sent {
        margin-bottom: 30px;
    }

    #service .claim {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
    }

    #service .prev {
        margin-top: 35px;
        position: static;
    }

    #service .center-wrap {
        padding-right: 0;
        margin-top: auto;
        margin-bottom: auto;
    }

    #service .center-content {
        max-width: none;
    }

    #service .reserve-time span {
        font-size: 10.75px;
        line-height: 24px;
        min-width: 82px;
        height: 26px;
    }

    #service .reserve-time span:after {
        content: '';
        background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    }

    #service .reserve-type .step2 .but.transp, #service .reserve-type .step3 .but.transp {
        background: linear-gradient(#f7f8f8, #f7f8f8) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    }

    #service2 .error {
        bottom: 38px;
    }

    #service2.vis, #service3.vis, #service .reserve-type .step2, #service .reserve-type .step3 {
        background: #f7f8f8;
        display: flex;
        flex-direction: column;
        position: fixed;
        z-index: 9991;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        min-width: 320px;
        padding: 20px;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        box-sizing: border-box;
    }

    #service2.vis form {
        margin: auto;
    }

    #service3.vis {
        max-width: none;
        justify-content: center;
    }

    #service3.vis > div {
        width: 320px;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .promotion-conditions {
        /*border: none;*/
        /*box-shadow: none;*/
        /*padding: 0;*/
        padding:20px;
    }

    .product-list .item.new .box .plus {
        width: 40px;
        height: 40px;
    }

    .product-list .item.new .box .plus:before {
        width: 15px;
    }

    .product-list .item.new .box .plus:after {
        height: 15px;
    }

    #service-edit, .upload-form {
        padding-left: 0;
        padding-right: 0;
    }

    #wrapper.center #service-edit, #wrapper.published #service-edit {
        padding-left: 0;
        padding-right: 0;
        padding-top: 40px;
        padding-bottom: 80px;
    }

    #service-edit > .row > .cell:last-child, #service-edit.profile-edit > .row > .cell:last-child, #promotion .upload-form > .row > .cell:last-child, .upload-form > .row > .cell:last-child {
        padding-left: 0;
        padding-right: 0;
    }

    #service-edit > .row > .cell:last-child .step1, .upload-form .inner-centered {
        max-width: none;
    }

    #service-edit .row, .upload-form .row {
        display: flex;
        flex-direction: column;
        position: relative;
    }

    #service-edit > .row > .cell, .upload-form > .row > .cell {
        display: block;
        width: auto !important;
    }

    #service-edit > .row > .cell:first-child, .upload-form > .row > .cell:first-child {
        height: auto;
        padding-top: 140px;
        padding-bottom: 120px;
    }

    #service-edit > .row > .cell.added:first-child, .upload-form > .row > .cell.added:first-child {
        padding-top: 0;
        padding-bottom: 0;
        position: static;
    }

    .added .upload-img {
        border-radius: 5px;
    }

    .step2 #service-edit > .row > .cell:first-child {
        display: none;
    }

    #service-edit > .row > .cell:last-child, .upload-form > .row > .cell:last-child {
        margin-top: 15px;
    }

    .step2 #service-edit > .row > .cell:last-child, .published #service-edit > .row > .cell:last-child {
        margin-top: 0;
    }

    #service-edit .heading, .upload-form .heading {
        font-size: 21px;
    }

    .upload-form .heading:not(:first-child) {
        margin-top: 30px;
    }

    #add-portfolio.upload-form .heading {
        margin-bottom: 5px;
    }

    #add-portfolio .services-list {
        margin-top: 7px;
    }

    #service-edit .heading img, .upload-form .heading img {
        margin-right: 5px;
    }

    .step2 #service-edit .mobile .heading, .step2 #service-edit .mobile .sub, .published #service-edit .mobile .heading, .published #service-edit .mobile .sub {
        display: none;
    }

    #service-edit label[for^="file"] span, .upload-form label[for^="file"] span {
        font-size: 13px;
    }

    #service-edit label[for^="file"] span:first-child, .upload-form label[for^="file"] span:first-child {
        margin-bottom: 50px;
    }

    #service-edit > .row > .cell:first-child, .upload-form > .row > .cell:first-child {
        border-radius: 5px;
    }

    #service-edit.profile-edit > .row > .cell:not(.added):first-child {
        padding-top: 60px;
        padding-bottom: 90px;
        min-height: 300px;
    }

    #service-edit .hint.bottom {
        font-size: 13px;
        position: static;
        padding-left: 10px;
        padding-right: 10px;
        margin-top: 30px;
    }

    #service-edit, .upload-form {
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .upload-form .insta {
        font-size: 13px;
        bottom: 20px;
    }

    #service-edit .head {
        margin-top: 30px;
    }

    #service-edit .head:first-child {
        margin-top: 0;
    }

    #service-edit .sub {
        margin-top: -15px;
        margin-bottom: 20px;
    }

    #service-edit .error, #service-edit.profile-edit .error, #service-edit .response, .upload-form .error, .upload-form .response {
        left: 0;
        right: 0;
        top: 100%;
        margin-top: 12px;
    }

    #service-edit .error, #service-edit .repsonse {
        top: auto;
    }

    #service-edit .descr {
        margin-bottom: 15px;
    }

    #service-edit .step3, #add-post .step2 {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .profile-complete {
        padding: 10px 5px;
    }

    .profile-complete .chart-container svg {
        transform: scale(0.5);
        transform-origin: left top;
    }

    .profile-complete .chart-container {
        width: 50px;
        height: 50px;
    }

    .profile-complete .text {
        font-size: 13px;
        width: calc(100% - 80px);
    }

    .profile-complete .text .head {
        font-size: 16px;
    }

    body.no-scroll {
        width: 100%;
        position: fixed;
        overflow: hidden;
    }

    .popup .prev {
        position: static;
        margin-top: 60px;
    }

    .product-list .item.start {
        width: 100%;
        padding-bottom: 0;
    }

    .product-list .item.start:first-child:last-child {
        margin-top: -20px;
        margin-bottom: 80px;
    }

    .product-list .item.start .inner {
        border: none;
        border-radius: 0;
        padding: 0;
    }

    .product-list .item.start .head {
        font-size: 26px;
    }

    .product-list .item.start p {
        margin-top: 20px;
    }

    .product-list .heading .arr {
        margin: 0 5px;
    }

    .product-list.profile .upload-but {
        margin-right: 0;
    }

    .profile_error.vis {
        display: block;
    }

    .text-page .cell.img {
        display: none;
    }

    .text-page .cell.text {
        padding-left: 0;
        max-width: 340px;
    }

    .text-page .cell.text .heading, .text-page .cell.text .sub {
        margin-bottom: 15px;
    }

    .text-page .cell.text .sub {
        margin-top: 50px;
    }

    .text-page .cell.text .button {
        text-align: center;
    }

    .text-page #list {
        margin-top: 70px;
        margin-bottom: 70px;
    }

    .text-page .cols ~ .heading {
        margin-top: 70px;
    }

    .text-page .cols ~ .heading + .heading {
        margin-top: 10px;
    }

    .product-list.min + #footer {
        padding-top: 0;
    }

    #wrapper.join {
        background: none;
        padding-bottom: 0 !important;
    }

    #wrapper.join:after {
        display: none;
    }

    .join-top .text-content {
        padding-top: 180px;
        padding-bottom: 290px;
    }

    .join-screen.join-profitable .cols {
        flex-direction: column;
    }

    .join-screen.join-profitable .cols .join-form {
        background: #fff;
        text-align: center;
        align-self: stretch;
        order: 1;
        margin-left: -10px;
        margin-right: -10px;
        margin-top: 180px;
    }

    .join-screen.join-profitable .text-col {
        text-align: center;
    }

    .join-screen.join-profitable .new-res {
        display: block;
    }

    #join-page {
        padding-top: 180px;
        padding-bottom: 0;
    }

    #join-page.login-page {
        padding-top: 0;
    }

    #join-page .wrap.center {
        width: 100%;
        padding-right: 0;
    }

    #join-page .box {
        flex-direction: column;
        margin-top: 70px;
    }

    #join-page .box .cell:last-child {
        order: -1;
        margin-bottom: 70px;
    }

    #join-page .box .cell:first-child {
        background: url('../img/join-page-mobile.jpg') no-repeat left bottom;
        background-size: cover;
        text-align: center;
        align-self: stretch;
        margin-left: -10px;
        margin-right: -10px;
        position: relative;
        overflow: hidden;
    }

    #join-page .box .cell:first-child:before {
        content: '';
        height: 20px;
        box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.19);
        position: absolute;
        bottom: 100%;
        left: 0;
        right: 0;
    }

    #join-page .form {
        background: none;
        box-shadow: none;
        padding-top: 200px;
        height: 700px;
        margin-right: 0;
        opacity: 1;
    }

    #join-page .form .prev {
        bottom: auto;
        margin-top: 20px;
    }

    #join-page .form .but {
        margin-top: 0;
    }

    #join-page .text {
        padding-left: 30px;
        padding-right: 30px;
    }

    #join-page .text .main-head {
        font-size: 21px;
    }

    #join-page .text .main-head br {
        display: none;
    }

    #join-page .login .login-link {
        margin-top: 10px;
        text-align: right;
    }

    .pagination {
        margin-top: 40px;
    }

    .more-services {
        margin-top: 0;
    }

    .more-services .row {
        margin-left: -10px;
        margin-right: -10px;
    }

    .more-services .col {
        padding-left: 10px;
        padding-right: 10px;
        margin-top: 20px;
    }

    .more-services .box li a {
        font-size: 12.5px;
    }

    .more-services .col.max .box {
        background: none;
        padding: 0;
    }

    .more-services .inner-row {
        flex-wrap: wrap;
        margin-left: -10px;
        margin-right: -10px;
        margin-bottom: -30px;
    }

    .more-services .inner-col {
        width: 25%;
        padding-left: 10px;
        padding-right: 10px;
        box-sizing: border-box;
        flex: 0 1 auto;
        margin-bottom: 30px;
    }

    .more-services .service-page .inner-col {
        width: 100%;
    }

    .more-services .col.max .box .capt {
        font-size: 19px;
    }

    .more-services .inner-col.two-cols ul {
        margin-top: 30px;
        margin-bottom: 35px;
        column-count: 2;
    }

    #main-cats-text .sub {
        font-size: 19px;
    }

    #main-cats-text h1 {
        font-size: 19px;
    }

    #main-cats-text .text {
        font-size: 13px;
    }

    #main-cats-text h1 + .text {
        margin-top: 5px;
    }

    .info-new-clients .box {
        display: block;
    }

    .info-new-clients .img {
        width: auto;
        height: 230px;
    }

    .info-new-clients .text {
        padding: 25px;
    }

    .info-new-clients .text .cap {
        font-size: 20px;
    }

    .info-new-clients .text .desc {
        font-size: 13px;
        margin-top: 20px;
    }

    .info-new-clients .text .but {
        margin-top: 25px;
    }

    .product-categories .cols {
        font-size: 12.5px;
        flex-wrap: wrap;
        margin-top: 30px;
        margin-bottom: -30px;
    }

    .product-categories .col {
        width: 25%;
        padding-right: 10px;
        margin-bottom: 35px;
    }

    .product-categories .parent, .product-categories li {
        margin-bottom: 10px;
    }

    .product-categories h1 {
        font-size: 21px;
    }

    .product-categories h1 + .text {
        margin-top: 10px;
    }

    .product-categories .text {
        font-size: 12.5px;
    }

    .product-categories .heading {
        font-size: 17px;
    }

    .header .service-buttons li a, .header .service-buttons li span, .product-list .top-info .btn {
        font-size: 10px;
        padding: 9px 15px;
    }

    .header .service-buttons {
        position: relative;
        top: 4px;
    }

    .header .service-buttons .btn, .header .service-buttons li {
        margin-right: 0;
    }

    .header .menu {
        position: fixed;
        right: 0;
        top: 0 !important;
        bottom: 0;
        z-index: 991;
        margin: 0;
        width: 270px;
        color: #000;
        background: #fff;
        transform: translate3d(100%, 0, 0);
        opacity: 0;
        overflow-y: auto;
        overflow-x: hidden;
        -webkit-overflow-scrolling: touch;
        transition: transform 0.3s, opacity 0.3s;
    }

    .header .menu:not(.trig), .header .menu li.lang .dropdown:not(.trig) {
        visibility: hidden !important;
    }

    .header .mwrap.active ~ .menu {
        transform: translate3d(0, 0, 0);
        opacity: 1;
        box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.5);
        transition: transform 0.3s;
    }

    .mwrap.active + .mback, .header .service-filter.active .mback, .mback.visible, #popup-password-set.visible + .mback {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }

    .mwrap {
        display: block;
        float: right;
        position: relative;
        z-index: 999;
        top: 4px;
        opacity: 0;
        transition: opacity 0.2s;
    }

    .mwrap.loaded {
        opacity: 1;
    }

    .homepage .header .menu {
        margin-right: 0;
    }

    .header .menu li, .header .menu li.mmob {
        border-bottom: 1px solid #dad9d9;
        display: block;
        margin: 0;
    }

    .header .menu li.mmob {
        font-size: 19px;
        font-weight: bold;
        padding: 16px 20px;
    }

    .header .menu > ul > li > a, .header .menu > ul > li > span, .header .menu li.lang > span.active {
        color: #000;
        padding: 20px;
        display: block;
    }

    .header .menu li.lang > span:not(.active) {
        display: none;
    }

    .header .menu li.lang > span:after {
        background-image: url('../img/arrow-black.svg');
    }

    .header .menu li.lang .dropdown {
        display: block;
        margin: 0;
        box-shadow: none;
        transform: translate3d(0, -100%, 0);
        opacity: 1;
        visibility: visible;
        transition: transform 0.5s;
    }

    .header .menu li.lang.active .dropdown {
        transform: translate3d(0, 0, 0);
    }

    .service-filter .dropdown li.title span {
        display: block;
    }

    .header .service-filter .dropdown li.title {
        padding-right: 40px;
    }

    .header .menu > ul > li.logout > span.mmob {
        display: inline-block;
        vertical-align: middle;
        margin-left: 10px;
        padding: 0;
    }

    .header .menu li.logout img {
        vertical-align: middle;
    }

    .header .menu li.logout span:hover {
        color: #f65151;
    }

    .header .heading, .header .button {
        margin-top: 0;
    }

    .header .button {
        top: 4px;
    }

    .header .left-side {
        max-width: none;
        margin-right: 5px;
        position: relative;
    }

    .header .heading {
        margin-right: 0;
        position: relative;
        top: 3px;
    }

    .header .heading .arr {
        margin: 0 5px;
    }

    .header .heading a:first-child, .header .heading span:first-child {
        font-size: 25px !important;
    }

    .header .heading a.regular:first-child {
        font-size: 20px !important;
    }

    .header .heading a, .header .heading span {
        font-size: 14px;
    }

    .header .heading a.big, .header .heading span.big {
        font-size: 19px;
    }

    .text-description .toggle-switch {
        border-radius: 5px;
        width: auto;
        display: block;
    }

    .text-description .toggle-switch:after {
        border-radius: 5px;
    }

    .toggle-switch label:first-child span:after {
        border-radius: 5px;
    }

    #service .img-wrap .slick-arrow {
        background: none;
        border-radius: none;
        box-shadow: none;
        width: 40px;
        height: auto;
        opacity: 0.8 !important;
    }

    #service .img-wrap .slick-arrow:after {
        content: '';
        background: #fff url(../img/arrow-black.svg) no-repeat center;
        background-size: 12px;
        border-radius: 50%;
        box-shadow: transparent 0px 0px 0px 1px, transparent 0px 0px 0px 4px, rgba(0, 0, 0, 0.18) 0px 2px 4px;
        width: 35px;
        height: 35px;
        margin: auto;
        position: absolute;
        z-index: 1;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
    }

    #service .img-wrap .slick-prev {
        background-image: none;
        left: 0;
    }

    #service .img-wrap .slick-prev:after {
        background-image: url('../img/arrow-left-black.svg');
    }

    #service .img-wrap .slick-next {
        right: 0;
    }

    #profile {
        margin-bottom: -40px;
    }

    #profile .product-list .sub {
        padding: 19px 14px;
    }

    #profile .product-list .sub.full {
        padding: 19px;
        padding-right: 12px;
    }

    #profile .product-list .sub .text {
        margin-left: 0;
    }

    #profile .product-list .sub .box .but {
        font-size: 11.4px;
        line-height: 28px;
        height: 28px;
        min-width: 70px;
    }

    #profile .close-but {
        width: 17px;
        height: 17px;
        right: 7px;
        top: 7px;
    }

    .time-selection .error {
        position: static;
    }

    #profile .product-list .sub-error {
        margin-top: 10px;
        position: static;
    }

    .header .left-side.mmob {
        display: block;
    }

    .header .heading .no-link {
        font-weight: bold;
        font-size: 19px;
    }

    .homepage .header .heading h1, .homepage .header .heading span {
        font-size: 17px;
    }

    .homepage #main-cats {
        margin-top: 45px;
    }

    .info-block, .info-block.big-padding {
        padding: 20px 19px;
        padding-right: 12px;
    }

    .info-block .box {
        display: flex;
        align-items: flex-end;
    }

    .info-block .error {
        display: block;
        margin-bottom: 0;
    }

    .info-block .text {
        margin-right: 15px;
    }

    .info-block .heading {
        font-size: 17px;
        padding-bottom: 0;
    }

    .info-block .heading:after {
        display: none;
    }

    .info-block .desc {
        font-size: 13px;
        color: #000;
        margin-top: 12px;
    }

    .info-block .box .desc {
        margin-bottom: 12px;
    }

    .customer-request {
        padding: 20px 15px;
    }

    .customer-request .cap {
        font-size: 19px;
    }

    .customer-request .price, .customer-request .address {
        font-size: 12.5px;
    }

    .customer-request .title .link, .customer-request .phone {
        font-size: 13px;
    }

    .customer-request .address {
        padding-left: 22px;
    }

    .customer-request .address:before {
        top: -5px;
    }

    .customer-request .price:before {
        top: -1px;
    }

    .customer-request .phone {
        padding-left: 22px;
    }

    .customer-request .phone:before {
        width: 18px;
        height: 18px;
        top: -2px;
    }

    .customer-request .middle-content {
        margin-top: 5px;
    }

    .customer-request .title, .customer-request .phone, .customer-request .address {
        margin-top: 5px;
        margin-bottom: 5px;
    }

    .customer-request-cancel, .reservation-request-cancel {
        padding: 20px 15px;
        top: 0;
    }

    .reservation-request-cancel, .customer-request-cancel {
        margin-top: -250px;
    }

    .cancel-confirm .customer-request-cancel, .cancel-confirm .reservation-request-cancel {
        margin-top: 10px !important;
        margin-bottom: 15px;
    }

    .customer-request-cancel .box, .reservation-request-cancel .box {
        display: block;
    }

    .customer-request-cancel .text, .reservation-request-cancel .text {
        margin-right: 0;
    }

    .customer-request-cancel .actions, .reservation-request-cancel .actions {
        margin-top: 14px;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        margin-bottom: 0;
    }

    .customer-request-cancel .error, .reservation-request-cancel .error {
        position: static;
    }

    .customer-request-cancel .but, .reservation-request-cancel .but {
        width: calc(50% - 5px);
        margin-left: 0;
    }

    .profile-bg {
        padding: 30px 15px;
    }

    .reserve-conditions.profile-bg {
        padding: 30px 25px;
    }

    #profile .schedule .heading {
        font-weight: bold;
        font-size: 19px;
        margin-top: 30px;
    }

    .schedule-form .head, .schedule-rules .head, .schedule-balance .head {
        font-size: 17px;
    }

    .schedule-form .top-block {
        margin-bottom: -5px;
    }

    .schedule-form .head, .schedule-form .toggle-button {
        margin-bottom: 5px;
    }

    .schedule-form .error {
        margin: 7px 0;
    }

    .schedule-form .sel-time .selection span:hover {
        background: none;
    }

    .schedule-rules li:not(:last-child) {
        margin-bottom: 10px;
    }

    .schedule-balance .box {
        display: block;
        position: relative;
    }

    .schedule-balance .invoices {
        padding-left: 0;
        margin-top: 25px;
    }

    .schedule-balance .head, .schedule-balance .withdraw {
        display: inline-block;
    }

    .schedule-balance .head {
        position: relative;
        top: 2px;
    }

    .schedule-balance .withdraw {
        position: static;
    }

    .schedule-balance .withdraw .error {
        position: absolute;
        left: 0;
        top: 30px;
    }

    .schedule-balance .withdraw .but {
        width: auto;
    }

    .schedule-response {
        margin-top: -120px;
    }

    .active-reservations {
        margin-top: -260px;
    }

    .reservation-request {
        padding: 20px 15px;
        padding-top: 40px;
    }

    .reservation-request .box {
        display: block;
    }

    .reservation-request .request-data {
        margin-left: 0;
        margin-right: 0;
    }

    .reservation-request .actions {
        display: flex;
        justify-content: space-between;
    }

    .reservation-request .actions .but {
        width: 100%;
    }

    .reservation-request .but.hide {
        padding: 0;
    }

    .reservation-request .but, .customer-request .time-control .but {
        margin-left: 0;
    }

    .reservation-request .inline-content-wrap {
        display: flex;
        flex-direction: column;
    }

    .reservation-request .inline-content:first-child {
        order: 1;
    }

    .reservation-request .inline-content {
        margin-top: 5px;
        margin-bottom: 5px;
    }

    .reservation-request .inline-content > div {
        margin-top: 7px;
        margin-bottom: 7px;
    }

    .reservation-request .nowrap {
        margin: 0 !important;
    }

    .reservation-request .id {
        margin: 0 !important;
        position: absolute;
        top: 20px;
    }

    .reservation-request .id:after {
        display: none;
    }

    .reservation-request .phone a {
        font-size: 12.5px;
    }

    .reservation-request .cap {
        font-size: 19px;
    }

    .reservation-request .price {
        font-size: 12.5px;
        font-weight: normal;
    }

    .reservation-request .price:before {
        top: -1px;
    }

    .reservation-request .status-circle {
        font-size: 11px;
        width: 95px;
        height: 95px;
        margin-left: auto;
        margin-right: 0;
        flex-shrink: 0;
    }

    .reservation-request .request-data {
        margin-right: 20px;
    }

    .schedule-available {
        padding: 30px 20px;
    }

    .schedule-available .head {
        font-size: 19px;
    }

    .delete-profile {
        text-align: center;
        margin-top: 40px;
    }

    .delete-profile .delete-confirm {
        margin-top: 10px;
    }

    .profile-calendar .calendar-month .ui-datepicker-calendar .reservation-data ul {
        columns: 1;
        height: auto;
    }

    .profile-calendar .ui-datepicker-calendar .reservation-data li a, .profile-calendar .ui-datepicker-calendar .reservation-data li span {
        font-weight: bold;
    }

    .profile-calendar .ui-datepicker-calendar .bigger-font .reservation-data li a, .profile-calendar .ui-datepicker-calendar .bigger-font .reservation-data li span {
        font-size: 12px;
    }

    .profile-calendar .calendar-head .actions {
        order: -1;
        flex-grow: 1;
        display: flex;
    }

    .profile-calendar .calendar-head .selector {
        position: absolute;
        left: 0;
        right: 0;
    }

    .profile-calendar .calendar-head .selector .value, .profile-calendar .calendar-head .actions > div {
        position: relative;
        z-index: 2;
    }

    .profile-calendar .actions .new-record {
        margin-left: auto;
    }

    .profile-calendar .calendar-head .error {
        display: none;
    }

    .profile-calendar .month-day-slider {
        font-size: 0;
        white-space: nowrap;
        transition: transform .7s;
    }

    .profile-calendar .month-day-slider.active {
        transform: translate3d(-100%, 0px, 0px);
    }

    .profile-calendar .month-day-slider .calendar-month, .profile-calendar .month-day-slider .calendar-day {
        white-space: normal;
        width: 100%;
        box-sizing: border-box;
        display: inline-block;
        vertical-align: top;
    }

    .profile-calendar .month-day-slider .calendar-month {
        background: #fff;
        width: calc(100% + 1px);
        position: relative;
        z-index: 1;
    }

    .profile-calendar:not(.info-only) .calendar-month .ui-datepicker td {
        cursor: pointer;
    }

    .profile-calendar .calendar-month .ui-datepicker .reservation-data {
        pointer-events: none;
    }

    .profile-calendar .calendar-month .reservation-data li span.time {
        display: inline-block;
    }

    .profile-calendar .calendar-month .reservation-data li.reservation span.time {
        background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
        background-clip: border-box;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    .profile-calendar .calendar-week .ui-datepicker {
        width: 100% !important;
    }

    .profile-calendar .calendar-week .ui-datepicker-calendar {
        display: block;
        position: relative;
        padding-left: 50px;
    }

    .profile-calendar .calendar-week .ui-datepicker-calendar thead {
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
    }

    .profile-calendar .calendar-week .ui-datepicker-calendar thead tr {
        display: block;
    }

    .profile-calendar .calendar-week .ui-datepicker-calendar thead th {
        border-bottom: none;
        height: 90px;
        width: 50px;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .profile-calendar .calendar-week .ui-datepicker-calendar tbody {
        display: block;
    }

    .profile-calendar .calendar-week .ui-datepicker-calendar tbody tr.active {
        width: 100%;
        box-sizing: border-box;
        display: block;
    }

    .profile-calendar .calendar-week .ui-datepicker-calendar tbody td {
        border-left: none;
        border-bottom: none;
        height: 90px;
        padding: 0;
        display: flex;
        align-items: center;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .profile-calendar .calendar-week .ui-datepicker td.unavailable {
        opacity: 1;
        pointer-events: auto;
    }

    .profile-calendar .calendar-week .ui-datepicker td.unavailable .reservation-data li {
        opacity: 0.3;
        pointer-events: none;
    }

    #profile .profile-calendar .calendar-week .ui-datepicker td.unavailable .reservation-data li {
        opacity: 1;
        pointer-events: auto;
    }

    .profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data ul {
        display: table;
    }

    .profile-calendar .calendar-week .ui-datepicker-calendar .reservation-data li {
        vertical-align: middle;
        padding-left: 10px;
        display: table-cell;
        white-space: nowrap;
    }

    .profile-calendar .calendar-week .reservation-data li span.service, .profile-calendar .calendar-week .reservation-data li span.name {
        font-size: 11px;
        width: auto;
        display: block;
    }

    .profile-calendar .ui-datepicker .th-date {
        font-size: 11px;
        font-weight: normal;
        color: #757575;
        display: block;
        margin-top: 7px;
    }

    .profile-calendar .calendar-week .ui-datepicker td .ui-state-default {
        visibility: hidden;
    }

    .profile-calendar .calendar-week .ui-datepicker td .ui-state-default:not(:last-child) {
        display: none;
    }

    .profile-calendar .calendar-day .day-slide {
        border-top: 1px solid #ecebeb;
    }

    .profile-calendar .calendar-day .row {
        border-bottom: 1px solid #ecebeb;
        display: flex;
        align-items: center;
        cursor: pointer;
    }

    .profile-calendar .calendar-day .time {
        font-size: 12.5px;
        font-weight: bold;
        text-align: center;
        min-width: 35px;
    }

    .profile-calendar .calendar-day .content {
        font-size: 12px;
        border-left: 1px solid #ecebeb;
        white-space: normal;
    }

    .profile-calendar .calendar-day .time, .profile-calendar .calendar-day .content {
        padding: 30px 10px;
    }

    .profile-calendar .calendar-day .content span {
        line-height: 1.2;
        display: block;
    }

    .profile-calendar .calendar-day .day-slide {
        width: 100%;
        /*min-height: 100%;*/
        display: inline-block;
        vertical-align: top;
    }

    .profile-calendar .calendar-day .day-slide.unavailable .row {
        opacity: 0.3;
        pointer-events: none;
    }

    .profile-calendar .calendar-day .day-row-layout, .profile-calendar .calendar-day .day-slide .date {
        display: none;
    }

    .profile-calendar .calendar-day .slide-track:not(.active) {
        display: none;
    }

    .profile-calendar .calendar-day .row.active .time, .profile-calendar .calendar-day .row.active .content {
        font-weight: bold;
        background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
        background-clip: border-box;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    .time-selection .time-list input:disabled + span {
        cursor: pointer;
    }

    .create-reservation {
        border: none;
        box-shadow: none;
        padding: 0;
        margin-top: 40px;
    }

    .create-reservation .date-time {
        display: block;
        margin-top: 10px;
    }

    .create-reservation .date-time .date {
        width: auto;
    }

    .create-reservation .date-time .time {
        margin-left: 0;
        margin-top: 10px;
    }

    .create-reservation .date-time .date, .create-reservation .date-time .time {
        border: 1px solid #ecebeb;
        box-shadow: 0 1px 5px 0 #ecebeb;
        border-radius: 5px;
        padding: 25px 15px;
    }

    .create-reservation .date-time .time .selection {
        font-size: 0;
    }

    .create-reservation .date-time .time label {
        text-align: center;
        width: calc(100% / 7);
        display: inline-block;
    }

    .create-reservation .actions {
        flex-direction: column;
        margin-top: 8px;
    }

    .create-reservation .buttons {
        width: auto;
        order: 1;
    }

    .create-reservation .checkbox {
        font-size: 13px;
        margin: 10px 0;
    }

    .create-reservation .but {
        border-radius: 5px;
        width: 100%;
        margin-top: 8px;
    }

    .create-reservation .but:after, .create-reservation .but.rounded:hover:after {
        border-radius: 5px;
    }

    .create-reservation .but + .but {
        margin-top: 5px;
    }

    .create-reservation .error {
        text-align: center;
        position: static;
    }

    .promotion-dates {
        border: none;
        box-shadow: none;
        padding: 0;
        margin-top: 40px;
    }

    .promotion-dates .date-time {
        display: block;
        margin-top: 10px;
    }

    .promotion-dates .date-time .date, .promotion-dates .date-time .time {
        padding: 25px 15px;
    }

    .promotion-dates .date-time .date {
        width: auto;
    }

    .promotion-dates .date-time .time {
        margin-left: 0;
        margin-top: 10px;
    }

    .promotion-dates .date-time .time .selection {
        font-size: 0;
    }

    .promotion-dates .date-time .time label {
        text-align: center;
        width: calc(100% / 7);
        display: inline-block;
    }

    .promotion-dates .actions {
        margin-top: 0;
    }

    .promotion-dates .but {
        border-radius: 5px;
        width: 100%;
        margin-top: 8px;
    }

    .promotion-dates .but:after {
        border-radius: 5px !important;
    }

    .promotion-dates .error {
        text-align: center;
        position: static;
    }

    .promotion-item .box {
        padding: 20px 15px;
        display: block;
    }

    .promotion-item .id {
        position: static;
    }

    .promotion-item .cap {
        font-size: 19px;
        margin-top: 10px;
    }

    .promotion-item .promotion-data {
        font-size: 13px;
    }

    .promotion-item .price {
        font-size: 15px;
    }

    .promotion-item .price:before, .promotion-item .time:before {
        width: 17px;
        height: 17px;
    }

    .promotion-item .but {
        width: 100%;
        margin-left: 0;
        margin-top: 8px;
    }

    .promotion-item .actions .confirm {
        text-align: center;
        margin-bottom: 0;
        right: 0;
    }

    .promotion-item .error {
        text-align: center;
    }

    .profile-services {
        padding: 30px 10px;
    }

    .profile-service-edit {
        height: 250px;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    /*.profile-service-edit.new-service {
        margin-top: -250px;
    }*/
    .transactions table td, .transactions table th {
        font-size: 11px;
    }

    .public-profile .online-reservation .heading {
        font-size: 22px;
        margin-bottom: 20px;
    }

    .public-profile .online-reservation .reservation-step.step1, .public-profile .online-reservation.step1 .reservation-step.step0 {
        opacity: 0;
        visibility: hidden;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
    }

    .public-profile .online-reservation.step1 .reservation-step.step1 {
        opacity: 1;
        visibility: visible;
        transform: translate3d(0, 0, 0);
        position: static;
    }

    .public-profile .online-reservation.step2 .reservation-step.step1 {
        opacity: 1;
        visibility: visible;
    }

    .public-profile .online-reservation.step2 .reservation-step.step0 {
        opacity: 0;
        visibility: hidden;
    }

    .public-profile .online-reservation.step1 .reservation-slider {
        transform: translate3d(0, 0, 0);
    }

    .public-profile .online-reservation.step2 .reservation-slider {
        transform: translate3d(calc(-100% - 15px), 0, 0);
    }

    .public-profile .online-reservation.step3 .reservation-slider {
        transform: translate3d(calc(-200% - 30px), 0, 0);
    }

    .public-profile .reservation-stage {
        margin-bottom: 20px;
    }

    .public-profile .reservation-stage .line {
        background: #efefef;
        height: 3px;
        display: flex;
        justify-content: space-between;
        position: relative;
    }

    .public-profile .reservation-stage .line:after {
        content: '';
        background: linear-gradient(to bottom, #c872f2, #f772d1);
        width: 0;
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        transition: width 0.5s;
    }

    .public-profile .reservation-stage .dot {
        border-radius: 50%;
        background: #efefef;
        width: 13px;
        height: 13px;
        margin-top: -5px;
        transition-property: background;
        transition-duration: 0.2s;
        position: relative;
        z-index: 1;
    }

    .public-profile .reservation-stage .dot:first-child {
        background: linear-gradient(to bottom, #c872f2, #f772d1);
    }

    .public-profile .reservation-stage .labels {
        font-size: 10px;
        display: flex;
        margin-top: 10px;
    }

    .public-profile .reservation-stage .labels span {
        flex: 1;
    }

    .public-profile .reservation-stage .labels span:nth-child(2) {
        text-align: center;
    }

    .public-profile .reservation-stage .labels span:nth-child(3) {
        text-align: right;
    }

    .public-profile .step0 .reservation-stage {
        display: none;
    }

    .public-profile .step-day .reservation-stage .line:after {
        width: 50%;
    }

    .public-profile .step-day .reservation-stage .dot:nth-child(2) {
        background: #c872f2;
        transition-delay: 0.3s;
    }

    .public-profile .step2 .reservation-stage .line:after, .public-profile .step3 .reservation-stage .line:after {
        width: 100%;
    }

    .public-profile .step2 .reservation-stage .dot:nth-child(3), .public-profile .step3 .reservation-stage .dot:nth-child(3) {
        background: #c872f2;
        transition-delay: 0.3s;
    }

    .public-profile .reservation-confirmation .sub {
        margin-bottom: 60px
    }

    .public-profile .reservation-confirmation .buttons {
        margin-top: 60px;
    }

    .public-profile .user-card, .public-profile .user-card.no-photo {
        background: none;
        border-radius: 0;
        padding: 0;
        display: block;
        margin-top: 20px;
    }

    .public-profile .user-card.no-photo {
        padding-top: 1px;
        overflow: visible;
        margin-top: 15px;
        position: relative;
    }

    .public-profile .user-card.no-photo:before {
        content: '';
        height: 15px;
        box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.04);
        position: absolute;
        left: -20px;
        right: -20px;
        bottom: 100%;
    }

    .public-profile .user-card .img-wrap {
        padding-top: 100%;
    }

    .public-profile .user-card .img img {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }

    .public-profile .user-card .content {
        margin-left: 0;
        margin-top: 20px;
    }

    .public-profile .user-card .heading {
        font-size: 25px;
    }

    .public-profile .user-card.no-photo .heading .icons a {
        height: 23px;
        width: 23px;
    }

    .public-profile .user-card .mobile {
        opacity: 0;
        transition: opacity 0.5s;
    }

    .public-profile .user-card .mobile.visible {
        opacity: 1;
    }

    .public-profile .user-card .mobile .heading {
        height: 25px;
        padding-right: 50px;
    }

    .public-profile .user-card .mobile .heading.done {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .public-profile .user-card.no-photo .desc {
        font-size: 12.5px;
        margin-top: 15px;
    }

    .public-profile .user-card .location {
        margin-top: 20px;
        margin-bottom: 25px;
    }

    .public-profile .user-card .actions .but {
        font-size: 11px;
        padding: 0;
    }

    .public-profile .user-card .actions .but.whatsapp-icon {
        padding-left: 30px;
    }

    .public-profile .user-card .actions .but.transp:after, .public-profile .user-card .actions .but:not(.loading):hover:after {
        background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    }

    .public-profile .user-card .details, .public-profile .user-card .icons {
        display: inline-block;
        vertical-align: middle;
    }

    .public-profile .user-card .details .text, .public-profile .user-card .details .icons {
        display: inline-block;
        vertical-align: middle;
        margin: 5px 0;
    }

    .public-profile .user-card .details .text {
        margin-right: 10px;
    }

    .profile-services .items {
        column-count: 1;
    }

    .profile-services .item a:before {
        max-width: none;
    }

    .profile-services .item .name {
        max-width: none;
    }

    .public-profile .schedule-available {
        padding: 50px 20px;
    }

    .public-profile .schedule-available .reserve .cap, .public-profile .reservation-form .cap {
        font-size: 20px;
    }

    .product-list .item .slick-arrow {
        display: none !important;
    }

    #footer.info-reserve {
        margin-top: 100px;
    }

    #footer .copy {
        font-size: 22px;
    }

    .home #footer .wrap {
        padding-left: 20px;
        padding-right: 20px;
    }

    #wrapper.login, #wrapper.pass-reset {
        display: flex;
        flex-direction: column;
        overflow: hidden;
    }

    #wrapper.login > .wrap, #wrapper.pass-reset > .wrap {
        flex-grow: 1;
        display: flex;
        flex-direction: column;
    }

    .login-page {
        flex-grow: 1;
        display: flex;
        flex-direction: column;
        position: relative;
    }

    #wrapper.login, #wrapper.pass-reset {
        background: url('../img/main-offers-back-mobile.jpg') no-repeat left center;
        background-size: auto;
        background-size: cover;
    }

    .insta #footer, .login #footer, .pass-reset #footer, .join #footer {
        background: none;
    }

    #footer .box {
        align-items: center;
    }

    #add-portfolio .services-list li, #masterPage.services-list li {
        font-size: 11px;
        padding: 8px 15px;
    }

    .reserve-conditions .tab-content li:not(:last-child) {
        margin-bottom: 15px;
    }

    .reserve-conditions form ~ .head, .reserve-conditions .tab-head ~ .head {
        margin-top: 30px;
    }

    .reserve-conditions form span, .reserve-conditions .tab-head li {
        margin-right: 10px;
    }

    .reserve-conditions .tab-head {
        margin-right: -20px;
    }
}

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


    .join-top {
        background: url('../img/main-offers-back-mobile.jpg') no-repeat left 70%;
        background-size: cover;
        text-align: center;
        height: auto;
        min-height: 0;
    }

    .join-top .text-content .head {
        font-size: 30px;
    }

    .join-top .text-content {
        max-width: 320px;
        margin: auto;
    }

    .join-top .text-content .sub {
        font-size: 14px;
        margin-top: 10px;
    }

    .join-top .text-content .but {
        margin-top: 50px;
    }

    .join-screen .head {
        font-size: 30px;
    }

    .join-screen .sub {
        font-size: 14px;
        margin-top: 15px;
    }

    .join-screen .cols {
        flex-direction: column;
    }

    .join-screen .text-content {
        text-align: center;
    }

    .join-screen .img-wrap {
        max-width: 90%;
        order: 1;
        margin-top: 40px;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .join-screen .img-wrap + .text-col {
        margin-left: 0;
    }

    .join-screen.join-easy, .join-screen.join-comfortable, .join-screen.join-profitable, .join-screen.join-safe {
        padding-top: 120px;
    }

    .join-screen.join-easy .img-wrap {
        width: 225px;
        max-width: 70%;
        margin-bottom: -100px;
    }

    .join-screen.join-comfortable .img-wrap {
        width: 376px;
        margin-bottom: -27px;
    }

    .join-screen.join-safe .img-wrap {
        width: 306px;
    }

    .join-screen.join-profitable .sub {
        font-size: 18px;
    }

    .product-list .item {
        width: 33.33%;
    }

    .product-list .item {
        width: 25%;
    }

    .product-list .items {
        position: static;
    }

    .product-list .sub {
        padding-right: 0;
        line-height: 1.2;
    }

    .product-list .heading-wrap {
        display: block;
    }

    .product-list .heading-wrap .but {
        margin-top: 10px;
    }

    #profile .product-list .sub .box, .info-block .box {
        display: block;
    }

    #profile .product-list .sub .act, .info-block .act {
        margin-top: 15px;
    }

    #profile .product-list .sub .act {
        margin-bottom: -10px;
    }

    #profile .product-list .sub .box .but {
        margin-left: 0 !important;
        margin-right: 5px;
        margin-bottom: 10px;
    }

    .schedule-form.profile-bg {
        border: none;
        box-shadow: none;
        padding: 0;
    }

    .schedule-form .border-wrap {
        border: 1px solid #ecebeb;
        border-radius: 5px;
        box-shadow: 0 1px 5px 0 #ecebeb;
    }

    .schedule-form .sel-cols {
        display: block;
    }

    .schedule-form .sel-date {
        width: auto;
        margin-top: 10px;
    }

    .schedule-form .sel-time {
        margin-left: 0;
        margin-top: 10px;
    }

    .schedule-form .border-wrap, .schedule-form .sel-date, .schedule-form .sel-time {
        padding: 25px 15px;
    }

    .schedule-form .sel-time .selection {
        font-size: 0;
    }

    .schedule-form .sel-time label {
        text-align: center;
        width: calc(100% / 7);
        display: inline-block;
    }

    .schedule-form .bottom-block {
        margin-top: 10px;
    }

    .schedule-form .bottom-block .but {
        border-radius: 5px;
        width: 100%;
    }

    .schedule-form .bottom-block .but.transp:after {
        border-radius: 5px;
    }

    .schedule-form .bottom-block .error {
        position: static;
    }

    .product-categories .col {
        width: 50%;
    }

    .product-categories .col:nth-child(1) {
        order: 1;
    }

    .product-categories .col:nth-child(2) {
        order: 4;
    }

    .product-categories .col:nth-child(3) {
        order: 3;
    }

    .product-categories .col:nth-child(4) {
        order: 2;
    }

    #main-cats-text .product-list .heading-wrap .but {
        display: none;
    }

    #main-cats-text .all {
        display: block;
    }

    .customer-request .box, .reservation-request .box {
        flex-wrap: wrap;
    }

    .customer-request .image, .reservation-request .image {
        width: 150px;
        height: 150px;
    }

    .reservation-request .request-data {
        width: 100%;
        order: 1;
        margin-left: 0;
        margin-right: 0;
        margin-top: 10px;
    }

    .customer-request {
        background: #f8f7f7;
        padding-top: 15px;
        padding-bottom: 0;
    }

    .customer-request .top-right {
        position: static;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .customer-request .top-right .but.cancel {
        margin-top: 0;
    }

    .customer-request .request-data {
        display: flex;
        flex-direction: column;
    }

    .customer-request .middle-content {
        padding-top: 15px;
        order: 1;
    }

    .customer-request .middle-content, .customer-request .buttons {
        background: #fff;
        margin-left: -15px;
        margin-right: -15px;
        padding-left: 15px;
        padding-right: 15px;
    }

    .customer-request .buttons {
        border-bottom-right-radius: 10px;
        border-bottom-left-radius: 10px;
        padding-top: 20px;
        padding-bottom: 20px;
        display: flex;
        margin-top: 0;
    }

    .customer-request .buttons a {
        flex: 1;
    }

    .customer-request .buttons a:not(:last-child) {
        margin-right: 10px;
    }

    .customer-request .buttons .but {
        font-size: 11.5px;
        line-height: 29px;
        border-radius: 30px;
        width: 100%;
        height: 30px;
        min-width: 0;
        padding: 0;
        margin: 0;
    }

    .customer-request .buttons .but.whatsapp, .customer-request .buttons .but:after, .customer-request .buttons .but:not(.loading):hover {
        border-radius: 30px;
    }

    .customer-request .title, .customer-request .phone, .customer-request .address {
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .customer-request .title .link {
        font-size: 15px;
        line-height: 1.2;
    }

    .customer-request .price {
        margin-top: 10px;
        margin-bottom: 20px;
    }

    .customer-request .date:before, .customer-request .time:before {
        top: -3px;
    }

    .customer-request .top-content {
        margin-top: 10px;
    }

    .customer-request .cap, .customer-request .date, .customer-request .time {
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .schedule-available .row {
        display: block;
    }

    .schedule-available .col + .col {
        margin-left: 0;
    }

    .schedule-available .head-wrap .months a {
        min-width: 100px;
        padding: 8px 20px;
    }

    .schedule-available .head-wrap .months {
        width: 100%;
        margin-left: 0;
        margin-top: 10px;
        order: 2;
    }

    .schedule-available .sub {
        order: 1;
    }

    .create-reservation .fields {
        display: block;
    }

    .create-reservation .field.service, .create-reservation .field.name, .create-reservation .field.number {
        width: 100%;
    }

    .create-reservation .field {
        margin-right: 0;
        margin-bottom: 10px;
    }

    .profile-service-edit .form {
        display: block;
    }

    .profile-service-edit .form .col:not(:first-child) {
        margin-left: 0;
    }

    .profile-service-edit {
        height: 350px;
    }

    /*.profile-service-edit.new-service {
        margin-top: -350px;
    }*/
    .profile-service-edit .remove-wrap {
        margin-top: 10px;
    }

    .public-profile .schedule-available {
        height: auto;
        padding: 40px 20px;
    }

    .public-profile .schedule-available .reserve .cols {
        display: block;
    }

    .public-profile .schedule-available .reserve .col, .public-profile .schedule-available .reserve .col + .col {
        max-width: 340px;
        margin-left: auto;
        margin-right: auto;
    }

    .public-profile .schedule-available .reserve .col + .col {
        padding: 0;
        margin-top: 40px;
    }

    .public-profile .schedule-available .confirmation .buttons {
        display: block;
        margin-top: 100px;
    }

    .public-profile .schedule-available .confirmation {
        max-width: 340px;
    }

    .public-profile .schedule-available .confirmation .buttons a + a {
        display: block;
        margin-left: 0;
        margin-top: 10px;
    }

    .public-profile .schedule-available .confirmation .buttons .but, .public-profile .schedule-available .reserve .but {
        font-size: 12.5px;
    }

    .public-profile .schedule-available .reserve .prev {
        position: static;
        margin-bottom: -10px;
        margin-top: 25px;
    }

    .public-profile .schedule-available .confirmation .buttons {
        margin-top: 50px;
    }

    .public-profile .online-reservation {
        margin-top: 70px;
    }

    .public-profile .reservation-step.step0 {
        background: none;
        border: none;
        border-radius: 0;
        box-shadow: none;
    }

    .public-profile .profile-services {
        padding: 0;
    }

    .public-profile .reservation-form {
        min-height: 0;
        padding: 50px 20px;
        position: relative;
    }

    .public-profile .reservation-form form {
        padding-bottom: 50px;
    }
}

@media screen and (max-width: 480px) {
    .croppie-container .cr-slider-wrap {
        padding: 10px 15px;
        flex-wrap: wrap;
    }

    .cr-slider, .save-img {
        margin: 10px 20px;
    }

    .header .logo a {
        padding-left: 0;
    }

    .header .logo a:before {
        display: none;
    }

    .insta .header {
        flex-wrap: wrap;
    }

    .insta .header .center-content {
        width: 100%;
        order: 1;
        margin-top: 10px;
    }

    .insta .header .service-buttons {
        border-radius: 5px;
        display: flex;
    }

    .insta .header .service-buttons .btn {
        flex: 1;
    }

    .product-list .item {
        width: 50%;
    }

    #main-cats-text .product-list .items {
        font-size: 0;
        white-space: nowrap;
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

    #main-cats-text .product-list .items::-webkit-scrollbar {
        display: none;
    }

    #main-cats-text .product-list .item {
        white-space: normal;
        width: 165px;
        display: inline-block;
        vertical-align: top;
    }

    #main-cats-text .product-list .item .title, #main-cats-text .product-list .item .address {
        font-size: 11px;
    }

    .more-services .col {
        width: 100%;
    }

    #footer li.mhide {
        display: none;
    }

    .error-page {
        padding-right: 0;
    }

    .error-page img {
        max-width: none;
        width: 120px;
    }

    .error-page .sub ~ p, .error-page .sub ~ ul {
        padding-right: 140px;
    }

    #service .img {
        padding: 0;
    }

    #service .img-wrap {
        max-width: none;
        height: auto;
        padding-top: 119%;
        position: relative;
    }

    #service .img-wrap img {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
    }

    #service .content {
        padding-left: 0;
        padding-right: 0;
    }

    .text-page .col {
        width: 100%;
    }

    .text-page .feedback .col:first-child {
        margin-bottom: 30px;
    }

    .profile-calendar .calendar-head {
        padding: 10px;
    }

    .profile-calendar .actions div {
        margin-left: 5px;
        margin-right: 5px;
    }

    .profile-calendar .ui-datepicker td {
        padding: 5px;
        padding-left: 20px;
    }

    .profile-calendar .calendar-month .ui-datepicker td {
        padding-top: 18px;
        padding-left: 6px;
    }

    .calendar-month .ui-datepicker td span, .calendar-month .ui-datepicker td a {
        text-align: left;
    }

    .profile-calendar .ui-datepicker td .ui-state-default {
        font-size: 11px;
        top: 5px;
        left: 5px;
        right: auto;
    }

    .profile-calendar .ui-datepicker-calendar .reservation-data li {
        text-align: right;
    }

    #service-edit .but-wrap {
        flex-direction: column;
    }

    #service-edit .but-wrap .but + .but {
        margin-bottom: 10px;
        margin-left: 0;
        order: -1;
    }

    .profile-service-edit {
        height: 420px;
    }

    /*.profile-service-edit.new-service {
        margin-top: -330px;
    }*/
    .profile-service-edit .sub {
        font-size: 12.5px;
    }

    .profile-service-edit .form .error {
        text-align: center;
        position: static;
        margin-top: 5px;
    }

    .profile-service-edit .form .field-cols.buts {
        display: block;
    }

    .profile-service-edit .form .field-cols .but:not(:first-child) {
        margin-left: 0;
        margin-top: 10px;
    }

    .profile-service-edit .remove-wrap {
        text-align: center;
    }

    .public-profile .user-card .actions {
        display: flex;
        justify-content: space-between;
    }

    .public-profile .user-card .actions > .but, .public-profile .user-card .actions > a {
        width: calc(50% - 5px);
    }

    .public-profile .user-card .actions .but {
        min-width: 0;
        margin: 0;
    }

    .public-profile .user-card .actions a .but {
        width: 100%;
    }

    .public-profile .user-card .actions .but.reservation {
        width: 100%;
        order: 1;
        margin-top: 10px;
    }

    .schedule-available .but.sign-up {
        width: 100%;
        min-width: 0;
    }

    .public-profile .schedule-available .step1 {
        position: relative;
    }

    .public-profile .schedule-available .error {
        text-align: center;
        left: 0;
        right: 0;
    }

    #profile .product-list .schedule-block .text {
        max-width: 320px;
        margin-left: auto;
        margin-right: auto;
    }

    .more-services .inner-col {
        width: 50%;
    }

    .more-services .col:not(.service-page) .inner-col:nth-child(3) {
        order: 1;
    }

    .more-services .col:not(.service-page) .inner-col:nth-child(2) {
        order: 2;
    }

    .more-services .col:not(.service-page) .inner-col:nth-child(1) {
        order: 3;
    }

    .more-services .col:not(.service-page) .inner-col:nth-child(4) {
        order: 4;
    }

    .more-services .service-page .inner-col {
        width: 100%;
    }

    .more-services .col.max .box li a, .more-services .col.max .box li span {
        font-size: 12px;
    }

    .more-services .inner-col.two-cols ul {
        margin-bottom: 0;
    }

    .more-services .service-page .inner-row {
        margin-bottom: -20px;
    }

    .more-services .service-page .inner-col {
        margin-bottom: 20px;
    }

    .more-services .col.max.service-page .box li, .more-services .col.max.service-page .box li:not(:last-child) {
        margin-bottom: 7px;
    }

    .more-services .col.max.service-page .inner-col.shrinked .show-more {
        display: inline-block;
    }

    .more-services .col.max.service-page .box ul:not(.opened) li:nth-child(12) ~ li {
        display: none;
    }

    .more-services .col.max .show-more {
        font-size: 13px;
        margin-bottom: 55px;
    }

    #wrapper.category {
        padding-bottom: 0 !important;
    }

    .category #footer {
        position: static;
        margin-top: 50px;
    }
}

@media screen and (max-width: 440px) {
    .join-screen.join-comfortable .img-wrap {
        margin-bottom: -6.5%;
    }
}

@media screen and (max-width: 400px) {
    .pagination li:not(.active) {
        width: 30px;
    }

    #footer .menu li {
        margin-right: 13px;
    }

    .text-page .fields .col {
        width: 100%;
        padding: 0 !important;
    }

    .customer-request .image, .reservation-request .image {
        width: 110px;
        height: 110px;
    }

    .customer-request .time-control .but {
        position: absolute;
        left: 0;
        bottom: 0;
    }

    .customer-request .title .img {
        display: none;
    }

    .schedule-form .sel-time label, .create-reservation .date-time .time label, .promotion-dates .date-time .time label {
        text-align: center;
        width: calc(100% / 6);
        display: inline-block;
    }

    .schedule-form .sel-time .selection span, .create-reservation .date-time .time .selection span {
        padding: 0 6px;
    }

    .active-reservations {
        margin-top: -350px;
    }
}

@media screen and (max-width: 375px) {
    #profile .product-list .schedule-block .text {
        max-width: 270px;
    }
}

@media screen and (max-width: 360px) {
    #main-offers-light .calendar-picker-outer {
        padding: 20px 15px;
    }

    .header .service-buttons .btn {
        font-size: 12px;
        min-width: 0;
        padding: 8px 10px;
    }

    .promotion-dates .date-time .time label {
        width: 20%;
    }
}


.hide {
    display: none !important;
}


#verification-add {
    height: 90vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.grecaptcha-badge {
    display: none !important;
}

.list-discounts {
    display:flex;
    gap:7px;
    flex-wrap:wrap;
}

.list-discounts .one-discount {
    width: 234px;
    border-radius: 5px 5px 0 0;
}

.list-discounts .one-discount .img-discount {
    height: 228px;
    border-radius:10px 10px 0 0;
    overflow:hidden;
}

.description-discount {
    min-height: 180px;
    background: #f3d2e0;
    border-radius: 0 0 10px 10px;
    position: relative;
}

.percent-discount {
    text-align: center;
    font-size: 75px;
    /*font-family: "PlayfairDisplay";*/
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: bold;
    height: 75px;
    line-height: 75px;
    position: relative;
    border-bottom: 2px solid white;
    padding: 15px 0 25px;

}

.count-places {
    padding: 10px;
}

.count-places span.caption-places {
    display: block;
    color: rgb(0, 0, 0);
    font-weight: bold;
    line-height: 1.6;
    font-size: 14px;
    padding-bottom:5px;
}

.progress-discount {
    background: white;
    height: 4px;
    width:100%;
    border-radius:5px;
    position:relative;
    overflow:hidden;
}


.counter-places {
    text-align:right;
    font-weight:bold;
    display:block;
    padding-top:5px;
    color:black;
}

.discount-timer {
    display:block;
    padding:5px 20px;
    border-radius:10px;
    color:black;
    width:max-content;
}

.name-discount-service {
    font-size: 16px;
    line-height: 1.333;
    padding-top:10px;
    padding-bottom:5px;

}

.name-discount-service a {
    color: rgb(0, 0, 0) !important;
}

.name-master-service {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size:14px;
    padding-bottom:20px;
}

.price-discount {
    font-size:45px;
    color: rgb(63, 63, 63);
    position:relative;
}

.price-discount span {
    position:relative;
    font-size: 27px;
    color: rgb(150, 150, 150);
    text-decoration: line-through;
    top:-25px;
    margin-left:-5px;
}

.one-discount.hidden {
    display:none;
}

.item-discount {
    position:relative;
    z-index:10;
}

.item-discount a {
    padding:10px !important;
}

.item-discount:before {
    display:none;
}

.item-discount:after {
    content: '';
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 5px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.item-discount .name {
    position:relative;
    width:max-content;
}

.item-discount .name:after {
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size:30px;
    font-weight:bold;
    display:block;
    content: attr(data-discount);
    position:absolute;
    right:-90px;
    top:-10px;
}

.item-discount .price {
    color: rgb(63, 63, 63) !important;
    background:initial !important;
    -webkit-text-fill-color: initial !important;
    font-size:24px !important;
}

.item-discount .price span {
    text-decoration: line-through;
    color: rgb(150, 150, 150);
    font-size:16px;
}

.profile-discount-block b {
    font-size:20px;
}



.caption-active-discount {
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.caption-active-discount h3 {
    font-weight: bold;
    font-size: 20px;
}

.active-discount {
    width:50%;
    margin-top:0;
}

.active-discount a {
    margin-top:0;
}

.description-active-discount {
    border-radius:10px;
    position:relative;
    padding:10px 15px;
    margin-top:5px;
    display:flex;
    justify-content:space-between;
}

.name-service-discount {
    font-weight: bold;
}

.description-active-discount:after {
    content: '';
    background: linear-gradient(white, white) padding-box, linear-gradient(to bottom, #c872f2, #f772d1) border-box;
    border: 1px solid transparent;
    border-radius: 5px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.left-part-description-discount {
    max-width:60%;
}

.description-active-discount > div {
    position:relative;
    z-index:3;
}

.discount-price-information {
    display:flex;
    gap:10px;
    position: absolute;
    bottom: -5px;
}

.price-without-discount {
    color:rgb(150, 150, 150);
    font-size:18px;
    text-decoration: line-through;
    position:relative;
    top:15px;
}

.price-with-discount {
    font-size:24px;
    color: rgb(63, 63, 63);
    position:relative;
    top:7px;
}

.percent-discount-for-service {
    font-size: 30px;
    background: -webkit-linear-gradient(29deg, #c872f2, #f772d1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: bold;
    padding-left:10px;
}

.right-part-description-discount {
    text-align:center;
}

.discount-places {
    margin-bottom:5px;
    font-size:18px;
}

.timer-discount {
    margin-top:5px;
    color:rgb(150, 150, 150);
}

.discount-archived {
    position:absolute;
    right:20px;
    top:20px;
    font-size:35px;
    color: rgb(63, 63, 63);
}

.profile-services .timer-discount {
    font-size:15px;
}

.mobile-info-discount {
    display:none;
}

#wrapper .reserve .discount, #wrapper .reserve .discount-timer {
    display: none;
}

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

    .profile-discount-block .text {
        max-width:100% !important;
    }


    .profile .reservation-request .actions {
        margin-top: -20px;
    }

    .profile .reservation-request .actions .but {
        width: max-content;
        min-width: initial !important;
    }

    .list-discounts {
        margin-left:-60px;
    }
    .list-discounts .one-discount {
        font-size: 0;
        white-space: nowrap;
        display: block ;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: none;
        scrollbar-width: none;
        margin: 0 10px;
    }

    #wrapper .discount, #wrapper .discount-timer {
        display: none;
    }

    .discount #service .top-wrap .price {
        display: none !important;
    }

    #wrapper .reserve .discount, #wrapper .reserve .discount-timer {
        display: block;
    }

    #wrapper .reserve .discount-timer {
        background: white;
        border-radius: 40px;
    }

    #wrapper .reserve .discount {
        right:20px;
        font-size: 60px;
    }

    #wrapper .reserve .discount-timer {
        font-size: 16px;
        padding: 5px 10px;
        left:50%;
        transform: translate(-50%, -50%);
        top: 94px;
    }

    #wrapper .reserve {
        background: #FFD2E0;
        padding: 20px 0;
        position: relative;
        border-radius: 20px;
    }

    #service .reserve-time span i {
        font-size: 16px;
        padding: 0 8px;
    }

    .mobile-info-discount {
        display: block;
        border-bottom: 1px solid white;
        padding: 0 20px 25px;
        margin-bottom: 45px;
    }

    #wrapper .reserve .cap, #wrapper .reserve .progress-bar, #wrapper .reserve .reserve-time {
        margin: 0 20px;
    }

    .discount .promotion-conditions {
        padding:30px 20px;
    }

    .discount .promotion-conditions li {
        margin-bottom: 15px;
    }

    #wrapper .reserve .cap {
        margin-bottom: 10px;
    }

    .active-discount {
        width:100%;
        margin-top: 30px;
    }

    .caption-active-discount .but {
        margin-bottom: 0 !important;
    }
}

.btn-delete-discount {
    display: block;
    text-align: right;
    width: max-content;
    margin-top: 10px !important;
    margin-left: auto;
}

.active-discount .actions .error {
    text-align: right;
}


.active-discount .actions .error a {
    display: inline-block;
    cursor:pointer
}
