.catcher * {
    box-sizing: border-box
}

.catcher a {
    color: unset
}

.catcher html {
    overflow-x: hidden;
    width: 100%
}

.catcher {
    box-sizing: border-box;
    display: none;
    font-family: OnestCatcher, sans-serif;
    position: fixed;
    z-index: 9999
}

.catcher, .catcher__underlay {
    height: 100%;
    left: 0;
    top: 0;
    width: 100%
}

.catcher__underlay {
    -webkit-animation: fadein .5s;
    animation: fadein .5s;
    background-color: rgba(0, 0, 0, .5);
    cursor: pointer;
    position: absolute
}

.catcher__block {
    align-items: center;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    margin: auto;
    max-width: 600px;
    padding: 0
}

.catcher__block, .catcher__content {
    position: relative;
    width: 100%
}

.catcher__tag {
    background: #ac6548;
    border: 1px solid #f4ece6;
    color: #f4ece6;
    font-size: 18px;
    font-weight: 500;
    line-height: 100%;
    padding: 6px 18px;
    position: absolute;
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.catcher__tag:before {
    content: "";
    display: flex
}

.catcher__close {
    align-items: center;
    background: #f4ece6;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    height: 46px;
    justify-content: center;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    width: 46px;
    z-index: 3
}

.catcher__close:before {
    background: url(../images/icons.svg) -15px -1px no-repeat;
    background-size: auto 28px;
    content: "";
    flex-shrink: 0;
    height: 26px;
    width: 26px
}

.catcher__close:hover:before {
    background: url(../images/icons.svg) -43px -1px no-repeat;
    background-size: auto 28px;
    height: 26px;
    width: 26px
}

.catcher__top {
    position: relative
}

.catcher__image-wrapper {
    margin-bottom: -10px;
    width: 100%
}

.catcher__image {
    height: 100%;
    max-height: 400px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.catcher__wrapper {
    background: #f4ece6;
    display: flex;
    flex-direction: column;
    padding: 30px 52px;
    position: relative
}

.catcher__title {
    color: #442b23;
    font-family: Bitter, sans-serif;
    font-size: 35px;
    font-style: normal;
    font-weight: 400;
    line-height: 100%;
    margin-bottom: 24px;
    text-align: center
}

.catcher__action {
    display: flex;
    flex-wrap: wrap
}

.catcher__input-label {
    display: flex;
    flex-shrink: 0;
    margin-right: 12px;
    width: calc(50% - 8px)
}

.catcher__input {
    background: #fff;
    border: 1px solid #dadada;
    border-radius: 30px;
    font-family: OnestCatcher, sans-serif;
    height: 50px;
    outline: none;
    padding-left: 20px;
    width: 100%
}

.catcher__input.-error {
    border: 1px solid #f04c36
}

.catcher__input::-webkit-input-placeholder {
    font-family: Wix, sans-serif;
    opacity: .5
}

.catcher__input:-ms-input-placeholder {
    font-family: Wix, sans-serif;
    opacity: .5
}

.catcher__input::-ms-input-placeholder {
    font-family: Wix, sans-serif;
    opacity: .5
}

.catcher__input::placeholder {
    font-family: Wix, sans-serif;
    opacity: .5
}

.catcher__btn {
    align-items: center;
    border: none;
    cursor: pointer;
    display: flex;
    font-family: OnestCatcher, sans-serif;
    justify-content: center;
    outline: none;
    padding: 3px 30px;
    text-align: center;
    text-decoration: none;
    transition: .3s;
    white-space: nowrap
}

.catcher__btn_main {
    background: #bb623e;
    border-radius: 30px;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    height: 50px;
    line-height: 16px;
    width: 100%
}

.catcher__btn_main:hover {
    background: #ce5a2b
}

.catcher__button {
    display: flex;
    font-family: OnestCatcher, sans-serif;
    width: calc(50% - 8px);
    z-index: 2
}

.catcher__checkbox {
    display: block;
    margin: 10px 0 0
}

.catcher__checkbox.-error .catcher__checkbox-wrapper:before {
    border: 1px solid #f04c36
}

.catcher__check {
    opacity: 0;
    position: absolute;
    z-index: -1
}

.catcher__check:checked + .catcher__checkbox-wrapper:after {
    background: url(../images/icons.svg) -1px -1px no-repeat;
    background-size: auto 28px;
    content: "";
    display: block;
    height: 9px;
    left: 5px;
    position: absolute;
    top: 7px;
    width: 12px
}

.catcher__checkbox-wrapper {
    align-items: flex-start;
    cursor: pointer;
    display: flex;
    position: relative
}

.catcher__checkbox-wrapper:before {
    background-color: #fff;
    border: 1px solid #ceccca;
    content: "";
    cursor: pointer;
    flex-shrink: 0;
    height: 20px;
    margin-right: 12px;
    width: 20px
}

.catcher__text {
    color: #7a655d;
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
    line-height: 100%;
    text-align: initial
}

.catcher__data {
    margin-left: 3px;
    text-decoration: underline
}

@font-face {
    font-display: swap;
    font-family: Bitter;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/Bitter.woff2)
}

@font-face {
    font-display: swap;
    font-family: OnestCatcher;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/Onest-Regular.woff2)
}