.faq {
    background: #fafafa;
    border-bottom: 12px solid #fff;
    padding: 0 0 36px
}

.faq__container {
    max-width: 770px
}

.faq__title-desc {
    max-width: none
}

.faq__sections {
    display: flex;
    flex-direction: column;
    margin-top: 36px;
    position: relative;
    row-gap: 36px
}

.faq__section-title {
    color: #303030;
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.5
}

.faq__list {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    margin-top: 20px;
    row-gap: 14px
}

.faq__item {
    background-color: #fff;
    border: 1px solid #aef0ae;
    border-radius: 27px;
    box-shadow: 0 0 20px 0 rgba(12, 158, 15, .15);
    overflow: hidden;
    position: relative;
    z-index: 5
}

.faq__question {
    align-items: center;
    background: none;
    border: none;
    color: #01c102;
    display: flex;
    font-size: .75rem;
    font-weight: 600;
    line-height: 1.2;
    min-height: 52px;
    padding: 10px 20px;
    text-align: left;
    text-decoration: none
}

.faq__plus {
    display: block;
    flex-shrink: 0;
    font-size: .8125rem;
    height: 1em;
    line-height: 0;
    margin-right: 15px;
    position: relative;
    width: 1em
}

.faq__plus:after,
.faq__plus:before {
    background: #01c102;
    content: "";
    display: block;
    height: 3px;
    left: 50%;
    margin: -.1em 0 0 -.5em;
    position: absolute;
    top: 50%;
    width: 100%
}

.faq__plus:after {
    transform: rotate(90deg);
    transition-duration: .15s;
    transition-property: opacity, transform;
    transition-timing-function: ease-in-out
}

.faq__item_active .faq__plus:after {
    opacity: 0;
    transform: rotate(0)
}

.faq__answer {
    color: #7b7a7a;
    display: none;
    font-size: .75rem;
    line-height: 1.5714285714;
    padding: 2px 20px 26px 50px
}

.faq__actions {
    align-items: center;
    display: flex;
    flex-direction: column;
    margin-top: 46px;
    row-gap: 50px
}

.faq__actions-title {
    color: #303030;
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.5
}

.faq-btn {
    align-items: center;
    background: #07b108;
    border: none;
    border-radius: 10rem;
    box-shadow: 0 0 0 6px rgba(195, 255, 142, .259);
    color: #fff;
    display: flex;
    font-size: .8125rem;
    font-weight: 600;
    line-height: 3.8181818182;
    padding: 0 8px 0 26px;
    text-decoration: none;
    text-transform: uppercase;
    transition-duration: .15s;
    transition-property: background-color, box-shadow;
    transition-timing-function: ease-in-out;
    white-space: nowrap
}

.faq-btn:hover {
    background-color: #01c102;
    box-shadow: 0 0 0 6px rgba(195, 255, 142, .4)
}

.faq-btn__icon-bg {
    align-items: center;
    background-color: hsla(0, 0%, 100%, .17);
    border-radius: 50%;
    display: flex;
    font-size: .8125rem;
    height: 2.6153846154em;
    justify-content: center;
    margin-left: 1.0769230769em;
    width: 2.6153846154em
}

.faq-form__controls {
    display: flex;
    flex-direction: column;
    row-gap: 13px
}

.faq-form__btn {
    margin-top: 32px;
    width: 100%
}

@media only screen and (min-width:48em) {
    .faq__sections:before {
        background: transparent url(../img/bg-dots.png) repeat 0 0;
        content: "";
        display: block;
        height: 166px;
        left: -244px;
        position: absolute;
        top: -32px;
        width: 275px;
        z-index: 2
    }

    body.no-js .faq__sections:before,
    body.no-webp .faq__sections:before {
        background-image: url(../img/bg-dots.png)
    }

    body.webp .faq__sections:before {
        background-image: url(../img/bg-dots.webp)
    }

    .faq-btn {
        box-shadow: 0 0 0 11px rgba(195, 255, 142, .259);
        font-size: .9375rem;
        line-height: 3.4666666667;
        padding: 0 8px 0 50px
    }

    .faq-btn:hover {
        box-shadow: 0 0 0 11px rgba(195, 255, 142, .4)
    }

    .faq-btn__icon-bg {
        margin-left: 1.6923076923em
    }
}

@media only screen and (min-width:62em) {
    .faq {
        padding: 0 0 60px
    }

    .faq__sections {
        margin-top: 46px
    }

    .faq__sections:before {
        top: -84px
    }

    .faq__question {
        font-size: .875rem
    }

    .faq__plus {
        font-size: .9375rem
    }

    .faq__answer {
        font-size: .875rem
    }
}

@media only screen and (min-width:75em) {
    .faq {
        padding: 0 0 142px
    }

    .faq__actions {
        margin-top: 82px
    }
}