.wrapper {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 50px
}

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

    .wrapper--no-mobile {
        padding: 0
    }
}

@media screen and (max-width: 480px) {
    .wrapper {
        padding:0 10px;
        margin-top:70px;
    }

    .wrapper--no-mobile {
        padding: 0
    }
}

.main__title {
    margin: 1em 0;
    padding: 0 1em;
    text-align: center;
    font-size: 28px;
    line-height: 143%;
    font-weight: 700;
    color: #000;
    transition: .7s,opacity .5s
}

@media screen and (max-width: 767px) {
    .main__title {
        font-size:18px !important;
        line-height: 1.4;
        padding: 0
    }
}

@media (max-width: 480px) {
    .main__title {
        font-size:16px !important;
    }
}
.chat__container {
    position: relative;
    margin-top: 4em;
    border-radius: 30px;
    box-shadow: 0px 4px 12px rgba(60,60,60,0.2);;
}
.chat__header {
    display: flex;
    justify-content: space-between;
    grid-gap: 30px;
    border-radius: 30px 30px 0 0;
    padding: 30px;
    background: #fff;
}
@media screen and (max-width: 767px) {
    .chat__header {
        display:block;
        grid-gap: 0;
        padding: 18px
    }
}

@media screen and (max-width: 450px) {
    .chat__header-block {
        margin-bottom:10px;
    }
}

@media screen and (max-width: 767px) {
    .chat__body {
        padding:18px
    }
}
@media screen and (max-width: 450px) {
    .chat__body {
        padding:10px !important;
    }
}
@media (max-width: 480px) {
    .chat__container {
        margin-top:2em
    }
}
.chat__header-block {
    display: flex;
    align-items: flex-start;
    flex: 1 1;
}
.chat__header-ico {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    margin: auto 16px auto 0;
    border-radius: 100%;
    overflow: hidden;
    background-color: #f8f8f8;
}

.chat__header-ico img,.chat__header-ico svg {
    width: 36px;
    height: 36px
}

@media screen and (max-width: 450px) {
    .chat__header-ico {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        width: 32px;
        height: 32px;
        margin: auto 16px auto 0;
        border-radius: 100%;
        overflow: hidden;
        background-color: #f8f8f8;
    }
}


.chat__header-text {
    color: #333;
    font-size: 14px;
    line-height: 145%;
    margin: auto 0;
}

.chat__body {
    background: rgba(242,242,242,.9);
    border-radius: 0 0 30px 30px;
    padding: 30px;
}
.message-group:first-child {
    margin-top: 0;
}
.message-group {
    display: flex;
    grid-gap: 16px;
    margin-top: 24px;
    min-height: 60px;
}
.message__img {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    overflow: hidden;
    width: 60px;
    height: 60px;
    flex-shrink: 0;
    margin-top: 12px;
}
.message__img img {
    display: block;
}
.message:not(:first-child) {
    margin-top: 16px;
}
.message__cont:first-child {
    margin-top: 0;
}

.message__cont {
    margin-top: 16px;
    max-width: 700px;
}
.message--bot .message__cont .message__text {
    border-radius: 0 12px 12px;
}
.message__text {
    display: inline-block;
    vertical-align: top;
    position: relative;
    padding: 16px 24px;
    border-radius: 1em;
    background: #fff;
    max-width: 700px;
    color: #666;
    font-size: 15px;
    line-height: 1.6;
    box-shadow: 0px 4px 12px rgba(60,60,60,0.2);;
}
.message__text {
    border-radius: 0 12px 12px;
}


@media (max-width: 600px) {
    .message:not(:first-child) {
        margin-top:10px
    }

    .message-group {
        grid-gap: 10px;
        margin-top: 20px
    }

    .message-group:first-child {
        margin-top: 0
    }

    .message__cont {
        margin-top: 10px
    }

    .message__cont:first-child {
        margin-top: 0
    }

    .message__img {
        width: 32px;
        height: 32px
    }

    .message__text {
        padding: 10px 12px;
        font-size: 13px;
        line-height: 140%
    }

    .message__status {
        bottom: 13px;
        right: 20px
    }
}


.card-selector__container--x3 {
    grid-template-columns: 1fr 1fr 1fr;
}

.card-selector__container {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 16px;
}
.card-selector {
    display: block;
    position: relative;
    padding: 1em 1.5em;
    border-radius: 1em;
    box-shadow: 0px 4px 12px rgba(60,60,60,0.2);
    background-color: #fff;
    cursor: pointer;
    transition: background .4s,box-shadow .4s;
}
.card-selector:hover {
    box-shadow: 0 4px 24px rgb(60 60 60 / 40%);
}

@media (max-width: 450px) {
    .card-selector {
        padding: .8em;
        text-align:center;
    }
}

label {
    display: inline-block;
    vertical-align: top;
}
.card-selector__input {
    position: absolute;
    visibility: hidden;
    width: 0;
    height: 0;
    top: 0;
    left: 0;
}
.card-selector__input:checked~.card-selector__border {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}
.card-selector__border {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    border-radius: 1em;
    border: 3px solid #00baee;
    opacity: 0;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    transition: opacity .3s,transform .2s,-webkit-transform .2s;
}
.card-selector__input:checked~.card-selector__border:after {
    content: '';
    position: absolute;
    top: -1em;
    right: -1em;
    width: 2em;
    height: 2em;
    border-radius: 100%;
    background: url(/static/chat-landing/check-white.svg) center center/1em no-repeat;
    background-color: #00baee;
}
.card-selector__bgimage {
    display: block;
    position: relative;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 1em;
    margin-bottom: 0.5em;
    /*height:200px;*/
}
.card-selector--ratio-1x1 .card-selector__bgimage::before {
    padding-bottom: 100%;
}

.card-selector__bgimage::before {
    content: '';
    width: 100%;
    display: block;
    padding-bottom: 75%;
}
.card-selector:hover {
    box-shadow: 0 4px 24px rgba(60,60,60,.4)
}

@media (max-width: 800px) {
    .card-selector__container--x4 {
        grid-template-columns:1fr 1fr 1fr
    }
}

@media (max-width: 540px) {
    .card-selector {
        margin-bottom:.5em
    }

    .card-selector__container {
        display: block;
        grid-gap: 0
    }

    .card-selector__container--x3,.card-selector__container--x4 {
        display: grid;
        grid-gap: 0 .5em;
        grid-template-columns: 1fr 1fr
    }

    .card-selector__img {
        width: 100%;
        /*max-width: 165px;*/
        margin: 0 auto .2em
    }

    .card-selector__name {
        font-size: 13px
    }
    .chat__header-text {
        font-size: 12px
    }
}

@media (max-width: 360px) {
    .card-selector {
        padding:1em
    }

    .card-selector__name {
        font-size: 13px
    }
    .card-selector__img {
        width: 100%;
        /*max-width: 165px;*/
        margin: 0 auto .2em
    }
}










.message__write {
    margin: 0.75em;
    max-width: 700px;
    color: #999;
    font-size:12px;
}
@-webkit-keyframes blink {
    50% {
        fill: transparent
    }
}

@keyframes blink {
    50% {
        fill: transparent
    }
}
.message__write .dots {
    vertical-align: bottom;
    color: grey;
}
.message__write .dot {
    -webkit-animation: 1s infinite blink;
    animation: 1s infinite blink;
    fill: grey;
}
.message__write .dot:nth-child(2) {
    -webkit-animation-delay: 250ms;
    animation-delay: 250ms
}

.message__write .dot:nth-child(3) {
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}
.input-group-type {
    margin: 0.66em 0;
}
.custom-radio {
    display: flex;
    cursor: pointer;
    padding: 3px 0;
}
.custom-radio input:checked~.custom-radio__ico {
    border-color: #00baee;
}
.custom-radio input:checked~.custom-radio__ico:after {
    -webkit-transform: scale(1);
    transform: scale(1)
}
.custom-radio input:checked~.custom-radio__ico_2 {
    border-color: #00baee;
}
.custom-radio input:checked~.custom-radio__ico_2:after {
    -webkit-transform: scale(1);
    transform: scale(1)
}
.custom-radio input {
    position: absolute;
    visibility: hidden;
    width: 0;
    height: 0;
    top: 0;
    left: 0;
}
.custom-radio__ico {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-top: 5px;
    width: 14px;
    min-width: 14px;
    height: 14px;
    border: 1px solid #aaa;
    border-radius: 100%;
    overflow: hidden;
    transition: border-color .1s ease-out,background .1s;
}
.custom-radio__ico:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    margin: -4px 0 0 -4px;
    border-radius: 100%;
    background-color: #00baee;
    transition: transform .1s ease-out;
    transition: transform .1s ease-out,-webkit-transform .1s ease-out;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: scale(0);
    transform: scale(0);
}
.custom-radio__ico_2 {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-top: 5px;
    width: 14px;
    min-width: 14px;
    height: 14px;
    border: 1px solid #aaa;
    /*border-radius: 100%;*/
    overflow: hidden;
    transition: border-color .1s ease-out,background .1s;
}
.custom-radio__ico_2:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    margin: -4px 0 0 -4px;
    /*border-radius: 100%;*/
    background-color: #00baee;
    transition: transform .1s ease-out;
    transition: transform .1s ease-out,-webkit-transform .1s ease-out;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: scale(0);
    transform: scale(0);
}
.custom-radio:hover .custom-radio__ico {
    border-color: #000
}
.custom-radio__text {
    margin-left: 8px;
    font-size: 14px;
    line-height: 24px;
}
.custom-input {
    padding: 14px 24px;
    border-radius: 32px;
    font-size: 18px;
    line-height: 1.35;
    border: 1px solid #eee;
    resize: none;
    outline: 0;
    transition: border-color .2s;
    -webkit-appearance: none;
    appearance: none;
}

@media (max-width: 480px) {
    .custom-input {
        width: 100%;
        font-size: 14px;
    }
}

button::-moz-focus-inner,input::-moz-focus-inner {
    border: 0;
    padding: 0
}

button {
    line-height: 1.4em;
    cursor: pointer
}

::-moz-focus-inner {
    padding: 0;
    border-style: none
}

.btn,.button {
    position: relative;
    --webkit-apperance: none;
    display: inline-flex;
    font-weight: 500;
    font-size: 14px;
    line-height: 24px;
    text-align: center;
    cursor: pointer;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    transition: color .2s ease-out,background-color .2s ease-out,border-color .2s ease-out;
    color: #fff;
    background: #00baee;
    border: none;
    outline: 0;
    padding: .75em 1.5em;
    border-radius: 1em
}

.message--user {
    flex-direction: row-reverse;
}

.message-group {
    display: flex;
    grid-gap: 16px;
    margin-top: 24px;
    min-height: 60px;
}
.message--user .message__cont .message__text {
    border-radius: 12px 0 12px 12px;
}
.message--user .message__text {
    background: #e9ffe2;
    padding-right: 40px;
}

.message__status {
    position: absolute;
    right: 24px;
    bottom: 20px;
    height: 12px;
    width: 12px
}

.message__status:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 12px;
    height: 12px;
    background: url(/static/chat-landing/check.svg)
}

.message__status--readed:after {
    content: '';
    position: absolute;
    left: 5px;
    bottom: 0;
    width: 12px;
    height: 12px;
    background: url(/static/chat-landing/check.svg)
    /* background: url(/static/chat-landing/check-white.svg) center center/1em no-repeat; */
}

@media (max-width: 600px){
    .message__status {
        bottom: 13px;
        right: 20px;
    }
}

@keyframes fadeInLeft {
    from {
        /* opacity: 0; */
        transform: translate3d(-12px, 0, 0);
    }

    to {
        /* opacity: 1; */
        transform: none;
    }
}
@keyframes fadeInRight {
    from {
        /* opacity: 0; */
        transform: translate3d(12px, 0, 0);
    }

    to {
        /* opacity: 1; */
        transform: none;
    }
}


@media (min-width: 768px) {
    .add-service-wrapper {
        min-width:370px;
        border-bottom:1px dashed lightgray;
    }
}
@media (max-width: 767px) {
    .service-left-block {
        margin-bottom:20px;
        border-bottom:1px dashed lightgray;
        padding-bottom:10px;
    }
}
@media (min-width: 768px) {
    .service-left-block {
        border-right:1px dashed lightgray;
        border-bottom:1px dashed lightgray;
        padding-bottom:10px;
    }
}
@media (min-width: 768px) {
    .service-right-block {
        border-bottom:1px dashed lightgray;
        padding-left:30px;
    }
}
@media (max-width: 767px) {
    .service-right-block {
        border-bottom:1px dashed lightgray;
        padding-bottom:10px;
    }
}
html {
    scroll-behavior: smooth;
}
