* {
    border: 0;
    margin: 0;
    padding: 0;
}

*,:after,:before {
    box-sizing: border-box;
}

:after,:before {
    display: inline-block
}

body,html {
    height: 100%
}

body {
    line-height: 1;
    scrollbar-gutter: stable;
    -ms-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

button,input,textarea {
    background-color: transparent;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}

input,textarea {
    /* width: 100%; */
}

label {
    display: inline-block;
    margin: 0;
}

button,option,select {
    cursor: pointer
}

a {
    display: inline-block;
    text-decoration: none
}

header ul li, footer ul li{
    list-style: none
}

img {
    height: auto;
    max-width: 100%;
    vertical-align: middle
}

h1,h2,h3,h4,h5,h6 {
    font-size: inherit;
    font-weight: inherit;
    font-weight: 600;
}

body {
    color: #000;
    font-family: Roboto;
    font-size: 1rem;
}

[data-fls-scrolllock] body {
    overflow: hidden;
    overscroll-behavior: none;
    touch-action: none
}

.wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: clip
}

.wrapper>main {
    flex: 1 1 auto
}

.wrapper>* {
    min-width: 0
}

[class*=__container] {
    margin: 0 auto;
    max-width: 87rem;
    padding-left: 1.9375rem;
    padding-right: 1.9375rem
}

.border {
    border: .0625rem solid #ddd
}

.title {
    font-weight: 600;
    letter-spacing: -.03em;
    line-height: 130%;
    margin-bottom: 4.375rem
}

.button {
    background-color: #fff;
    border: .0625rem solid #ddd;
    border-radius: 1rem;
    color: #333;
    display: inline-flex;
    font-size: .875rem;
    font-weight: 500;
    line-height: 140%;
    padding: 1.125rem 1.875rem;
    transition: color .3s ease-in-out,background-color .3s ease-in-out,border-color .3s ease-in-out
}

.button__red {
    background-color: #66000e;
    color: #fff
}

.next,.prev {
    background-color: #fff;
    border-radius: 1rem;
    padding: 1.1875rem;
    transition: color .3s ease-in-out,background-color .3s ease-in-out,border-color .3s ease-in-out
}

.next svg path,.prev svg path {
    transition: stroke .3s ease-in-out
}

.next svg {
    transform: rotate(180deg)
}

.quote {
    position: relative
}

.quote:before {
    background: url(../assets/img/reviews/quote.webp) 0 0/contain no-repeat;
    content: "";
    height: 4rem;
    left: 0;
    position: absolute;
    top: 0;
    width: 4rem;
    z-index: -1
}

.img-decor__img-wrapper {
    flex: 0 0 34.814815%;
    position: relative
}

.img-decor__img:before {
    background: #f7f7f7;
    border-radius: 10rem 0 2.5rem 2.5rem;
    height: 84%;
    width: 100%
}

.img-decor__img:after {
    background-color: #66000e;
    border-radius: 7.5rem 0 0 0;
    height: 74%;
    left: 8.5%;
    width: 83%
}

.img-decor__img:after,.img-decor__img:before {
    bottom: 0;
    content: "";
    position: absolute;
    z-index: -1;
}

.img-decor__img img {
    object-fit: cover
}

.words-content {
    align-items: flex-end;
    display: flex;
    justify-content: space-between
}

.words {
    color: #565656;
    font-weight: 300;
    line-height: 150%
}
.words.cname {
    text-align: left;
    color: #565656;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 20px;
    margin-left: 30px;
}
.label {
    backdrop-filter: blur(.9375rem);
    background: rgba(0,0,0,.7);
    border-radius: 1rem;
    bottom: 3.75rem;
    box-shadow: 0 1.25rem 1.25rem 0 rgba(0,0,0,.5);
    left: 50%;
    padding: 1.25rem 1.5rem;
    position: absolute;
    transform: translateX(-50%);
    width: max-content
}

.name {
    color: #fff
}

.age-position,.name {
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: -.03em;
    line-height: 130%;
    text-align: center
}

.age-position {
    color: #b30019
}

[data-fls-spollers] summary {
    list-style: none
}

[data-fls-spollers] summary::-webkit-details-marker,[data-fls-spollers] summary::marker {
    display: none
}

.spollers {
    display: grid;
    gap: 1.875rem
}

.spollers__item {
    font-size: 1rem
}

.spollers__title {
    align-items: center;
    border: .0625rem solid #ddd;
    border-radius: 1rem;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    list-style: none;
    padding: 1.5rem 1.875rem;
    position: relative;
    text-align: left;
    transition: color .5s,border-color .5s;
    width: 100%
}

.spollers__title.--spoller-active {
    border-color: #b30019;
    color: #b30019
}

.spollers__title.--spoller-active svg {
    transform: rotate(45deg)
}

.spollers__title.--spoller-active svg path {
    fill: #b30019
}

.spollers__title svg {
    transition: transform .5s
}

.spollers__title svg path {
    transition: fill .5s
}

.spollers__title::-webkit-details-marker,.spollers__title::marker {
    display: none
}

.spollers__body {
    background-color: #f7f7f7;
    border-radius: 1rem;
    color: #565656;
    line-height: 180%;
    margin-top: .625rem;
    padding: 1.875rem
}

.swiper {
    overflow: hidden;
}

.swiper-initialized {
    touch-action: pan-y
}

.swiper-wrapper {
    box-sizing: content-box;
    display: flex;
    height: 100%;
    position: relative;
    width: 100%;
}

.swiper-vertical .swiper-wrapper {
    flex-direction: column
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start
}

.swiper-initialized .swiper-slide {
    flex-shrink: 0;
    position: relative
}

.swiper-android .swiper-slide,.swiper-android .swiper-wrapper {
    transform: translateZ(0)
}

.swiper-button-lock {
    display: none!important
}

.main__slider {
    position: relative
}

.main__actions {
    align-items: center;
    display: flex;
    gap: 2.5rem
}

.main__navigation {
    display: inline-flex;
    gap: .625rem;
}

.main__slide {
    width: 99.98% !important;
    border-radius: 1.5rem;
    position: relative;
    overflow: hidden;
    background: rgba(226, 226, 226, 1.0);
    background: linear-gradient(90deg, #fbf8f8, rgba(255, 255, 255, 1.0),  #fbf8f8);
}

@media (min-width: 600px) {
.main__slide:after {
    background-color: #66000e;
    border-radius: 9.5rem 0px 0 0;
    height: 61%;
    right: 0;
    width: 48%;
    bottom: 0;
    content: "";
    position: absolute;
    z-index: 0;
}
}
@media (min-width: 1000px) {
    .footer__list {
    column-count: 3;
    gap: 7.5rem;
}

.main__slide:before {
    transform: rotate(
355deg);
    background-color: #66000e;
    border-radius: 0;
    height: 61%;
    right: -20px;
    width: 39%;
    bottom: 0;
    content: "";
    position: absolute;
    z-index: 0;
}
}
.main__bg {
    height: 100%;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1;/*
* Created with https: //www.css-gradient.com
* Gradient link: https://www.css-gradient.com/?c1=e2e2e2&c2=ffffff&gt=l&gd=dcr
*/
    /* background: rgba(226, 226, 226, 1.0); */
    /* background: linear-gradient(90deg, rgba(226, 226, 226, 1.0), rgba(255, 255, 255, 1.0)); */
}

.main__title {
    font-weight: 600;
    letter-spacing: -.03em;
    line-height: 130%;
}

.main__button {
    font-size: 1.125rem;
    padding: 1.375rem 2.25rem
}

.main__img {
    border-bottom-right-radius: 1.5rem;
    bottom: 0;
    position: absolute;
    right: 0;
    width: 50.1%;
    z-index: 1;
}

.menu {
    flex: 1
}

.menu__body {
    background: #f7f7f7;
    border-radius: 1rem
}

.menu__list {
    margin-bottom: 0;
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .625rem;
    justify-content: space-between;
    padding-block:1.125rem;
    }

.menu__link {
    color: #333;
    font-weight: 500;
    line-height: 140%;
    transition: color .3s
}

.icon-menu {
    display: none
}

.header {
    padding-block:3.125rem}

.header__container {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.header__logo {
    flex: 0 0 10.885rem;
}

.header__actions {
    display: flex;
    gap: 1.25rem;
    position: relative
}

.header__human {
    display: none;
    z-index: 0;
}

.header__mobile-button {
    border: .0625rem solid #ddd;
    border-radius: 1rem;
    padding: 1.3125rem 1.25rem;
    position: relative;
    z-index: 2
}

.footer {
    padding-block:2.5rem;
    background: #f7f7f7;
    }

.footer__container {
    align-items: center;
    display: flex;
    gap: 1.25rem;
}

.footer__list {
    column-count: 3;
    gap: 7.5rem;
}

.footer__item:not(:last-child) {
    margin-bottom: .9375rem
}

.footer .header__logo {
    margin-right: 7.5rem
}

.footer .menu__link {
    font-size: 1rem
}

.faq__content {
    align-items: flex-start;
    display: flex;
    justify-content: space-between
}

.faq__spollers {
    flex: 1
}

.faq__questions {
    font-size: 1.25rem;
    font-weight: 600;
    letter-spacing: -.03em;
    line-height: 130%;
    margin: 0;
}

.faq__form {
    flex: 0 0 24.25rem
}

.faq-form {
    background-color: #66000e;
    border-radius: 1.5rem;
    display: flex;
    flex-direction: column;
    padding: 2.5rem;
    width: 100%
}

.faq-form__title {
    color: #fff;
    font-size: 2rem;
    font-weight: 600;
    letter-spacing: -.03em;
    line-height: 130%;
    margin-bottom: .9375rem
}

.faq-form__subtitle {
    color: #e8b0b0;
    font-size: 1.125rem;
    line-height: 130%;
    margin: 0 0 2.5rem
}

.faq-form__field {
    display: flex;
    flex-direction: column;
    margin-bottom: 1.875rem;
    position: relative
}

.faq-form__input,.faq-form__textarea {
    background-color: #fff;
    border: .125rem solid transparent;
    border-radius: 1rem;
    color: #000;
    font-size: 1rem;
    outline: none;
    padding: 1.375rem 1.5rem;
    transition: border-color .3s ease;
    width: 100%
}

.faq-form__input::placeholder,.faq-form__textarea::placeholder {
    color: #999
}

.faq-form__input.is-invalid,.faq-form__textarea.is-invalid {
    border-color: #000
}

.faq-form__textarea {
    min-height: 8.75rem;
    resize: none
}

.faq-form__footer {
    display: flex;
    justify-content: space-between;
    padding-top: .3125rem
}

.faq-form__error {
    bottom: -1.25rem;
    color: #fff;
    font-size: .875rem;
    left: 0;
    position: absolute
}

.faq-form__count {
    color: hsla(0,0%,100%,.6);
    font-size: .75rem
}

.faq-form__button {
    background-color: #ffad33;
    border: none;
    border-radius: 1rem;
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 135%;
    padding: 1.375rem 1.875rem;
    transition: color .3s ease-in-out,background-color .3s ease-in-out
}

@media (width <= 62em) {
    .next,.prev {
        padding: .875rem
    }

    .age-position,.name {
        font-size: 1.25rem
    }

    .main__slider {
        margin-top: 0
    }

    .main__actions {
        gap: 1.25rem
    }

    .main__button {
        font-size: 1rem;
        padding: 1.125rem 1.875rem
    }

    .header {
        padding-block:2.625rem}

    .header__actions {
        margin-right: 2.5rem;
        z-index: 2
    }

    .faq__content {
        align-items: stretch;
        flex-direction: column;
        row-gap: 3.75rem
    }
}

@media (max-width: 62em) and (width <= 48em) {
    .menu__body {
        padding-top:9.25rem
    }

    .menu__body:before {
        height: 9.25rem
    }
}

@media (max-width: 62em) and (width <= 35em) {
    .menu__body {
        padding:7.375rem .125rem 1.875rem 1.25rem
    }

    .menu__body:before {
        height: 7.375rem
    }
}

@media (max-width: 62em) and (any-hover:none) {
    .icon-menu {
        cursor:default
    }
}

@media (max-width: 62em) {
    .menu {
        margin-inline:1.5625rem
    }

    .menu__body {
        height: 100svh;
        overflow: auto;
        padding: 9.875rem 1.9375rem 1.875rem;
        z-index: 1
    }

    .menu__body,.menu__body:before {
        background: #fff;
        left: -100%;
        position: fixed;
        top: 0;
        transition: left .3s;
        width: 100%
    }

    .menu__body:before {
        content: "";
        height: 9.875rem;
        z-index: 2
    }

    [data-fls-menu-open] .menu__body,[data-fls-menu-open] .menu__body:before {
        left: 0
    }

    .menu__list {
        align-items: flex-start;
        flex-direction: column;
        padding-inline:1.25rem;
        padding: 0;
        row-gap: 2rem;
    }

    .menu__link {
        font-size: 1.2rem;
    }

    .icon-menu {
        display: block;
        height: .875rem;
        position: relative;
        width: 1.125rem;
        z-index: 5
    }

    .icon-menu span,.icon-menu:after,.icon-menu:before {
        background-color: #333;
        content: "";
        height: .125rem;
        position: absolute;
        right: 0;
        transition: all .3s ease 0s;
        width: 100%
    }

    .icon-menu:before {
        top: 0
    }

    .icon-menu:after {
        bottom: 0
    }

    .icon-menu span {
        top: calc(50% - .0625rem)
    }

    [data-fls-menu-open] .icon-menu span {
        width: 0
    }

    [data-fls-menu-open] .icon-menu:before {
        top: calc(50% - .0625rem);
        transform: rotate(-45deg)
    }

    [data-fls-menu-open] .icon-menu:after {
        bottom: calc(50% - .0625rem);
        transform: rotate(45deg)
    }

    .faq__content {
        column-gap: 1.875rem
    }
}

@media (width <= 56.25rem) {
    .label {
        display: none
    }

    .name {
        color: #b30019
    }

    .age-position,.name {
        font-size: 1.5rem
    }
}

@media (width <= 48em) {
    [class*=__container] {
        padding-inline: 2.4375rem;
    }

    .title {
        text-align: center
    }

    .next,.prev {
        display: none
    }

    .quote:before {
        /* left: -1rem; */
        top: -0.75rem;
        height: 2rem;
    }

    .img-decor__img-wrapper {
        aspect-ratio: 1/1;
        background-color: #f7f7f7;
        border-radius: 100%;
        display: grid;
        flex: 0 0 14.375rem;
        place-items: center
    }

    .img-decor__img:after,.img-decor__img:before {
        display: none
    }

    .img-decor__img {
        aspect-ratio: 1/1;
        background-color: #66000e;
        border-radius: 100%;
        overflow: hidden;
        width: 85%
    }

    .img-decor__img img {
       /* object-position: -1.25rem .8125rem*/
    }

    .words-content {
        flex-direction: row-reverse
    }

    .main__content {
        margin: 2.5rem
    }

    .header {
        padding-block:2rem}

    .header__actions {
        margin-right: 1.25rem
    }

    .footer__list {
        gap: 5rem;
        column-count: 2;
    }

    .footer .header__logo {
        margin-right: 5rem;
        order: 0
    }

    .faq-form__subtitle,.faq-form__title,.faq__title {
        text-align: center
    }
}

@media (max-width: 48em) {
    .words {
        font-size:1.25rem;
        margin-bottom: 2.375rem
    }

    .main__content {
        margin-bottom: 3.125rem;
        margin-top: 3.125rem;
        margin-inline:2.5rem}

    .main__title {
        font-size: 1.5rem
    }
}

@media (width <= 42.5rem) {
    .quote: before {
        height:2.5rem;
        left: 50%;
        top: 0;
        transform: translateX(-50%);
        width: 2.5rem
    }

    .img-decor__img-wrapper {
        flex-basis: auto;
        width: 11.25rem
    }

    .words-content {
        align-items: center;
        flex-direction: column-reverse
    }
}

@media (width <= 35em) and (max-width: 23.75em) {
    .age-position,.name {
        font-size:1.25rem
    }
}

@media (width <= 35em) {
    [class*=__container] {
        padding-inline: 1.25rem;
    }

    .words {
        font-size: 1.125rem;
        margin-bottom: 1.875rem
    }

    .spollers {
        gap: 1.25rem
    }

    .main__actions {
        justify-content: center
    }

    .main__content {
        margin: 1.875rem
    }

    .main__img {
        display: none
    }

    .menu {
        position: absolute
    }

    .header {
        padding-block:1.375rem}

    .header__logo {
        order: 1
    }

    .header__actions {
        left: 6.25rem;
        margin-right: 0;
        position: absolute;
        top: 1.875rem
    }

    .header__button[class] {
        padding: 1.125rem 1rem;
    }

    .header__human {
        /* border: .0625rem solid #ddd; */
        border-radius: 1rem;
        display: block;
        order: 2;
        /* padding: 1.0625rem; */
    }

    .footer .header__logo {
        display: none;
    }

    .faq__content {
        row-gap: 3.125rem
    }

    .faq-form {
        padding: 1.875rem
    }

    .faq-form__title {
        font-size: 1.5rem
    }

    .faq-form__subtitle {
        font-size: 1rem
    }

    .faq-form__field {
        margin-bottom: 1.25rem
    }
}

@media (max-width: 35em) {
    .title {
        font-size:2rem
    }

    .main__title {
        margin-bottom: 1.25rem;
    }
}

@media (width <= 35em) and (min-width: 35em) {
    .age-position,.name {
        font-size:1.5rem
    }
}

@media (width > 35em) and (width <= 48em) {
    .main__img {
        width: 59.1%
    }
}

@media (width > 35em) {
    .main__content {
        max-width: 46.925926%
    }

    .header__logo {
        position: relative;
        z-index: 2
    }
}

@media (width <= 35em) and (min-width: 23.75em) and (max-width:35em) {
    .age-position,.name {
        font-size:clamp(1.25rem,.722222222225rem + 2.2222222222vw,1.5rem)
    }
}

@media (min-width: 35em) and (max-width:84.375em) {
    .title {
        font-size:clamp(2rem,.5822784810125rem + 4.0506329114vw,4rem)
    }

    .main__title {
        margin-bottom: clamp(1.25rem,.36392405063125rem + 2.5316455696vw,2.5rem)
    }
}

@media (width > 48em) and (width <= 88.25em) {
    .faq-form__button,.faq-form__input {
        width: 20.625rem
    }
}

@media (width > 48em) {
    .img-decor__img img {
        aspect-ratio: 467/600;
        padding-left: 2.625rem;
        width: 86.9%
    }

    .words {
        padding-left: 1.875rem
    }
}

@media (min-width: 48em) and (max-width:84.375em) {
    .words {
        font-size:clamp(1.25rem,.59020618556875rem + 1.3745704467vw,1.75rem);
        margin-bottom: clamp(2.375rem,1.55025773195625rem + 1.7182130584vw,3rem)
    }

    .main__content {
        margin-bottom: clamp(3.125rem,.15592783505rem + 6.1855670103vw,5.375rem);
        margin-top: clamp(3.125rem,-.99871134020625rem + 8.5910652921vw,6.25rem);
        margin-inline:clamp(2.5rem,-2.44845360825rem + 10.3092783505vw,6.25rem)}

    .main__title {
        font-size: clamp(1.5rem,-.4793814433rem + 4.1237113402vw,3rem)
    }
}

@media (width > 62em) {
    .main__slider {
        margin-top: -2.125rem
    }

    .main__wrapper {
        padding-top: 2.125rem
    }

    .header__mobile-button {
        display: none
    }
}

@media (min-width: 62em) and (max-width:84.375em) {
    .menu {
        margin-inline:clamp(1.5625rem,-8.3090083798875rem + 15.9217877095vw,5.125rem)
    }

    .menu__list {
        padding-inline:clamp(1.25rem,-3.94553072625625rem + 8.3798882682vw,3.125rem)}

    .faq__content {
        column-gap: clamp(1.875rem,-5.3987430167625rem + 11.7318435754vw,4.5rem)
    }
}

@media (min-width: 84.375em) {
    .title {
        font-size:4rem
    }

    .words {
        font-size: 1.75rem;
        margin-bottom: 3rem
    }

    .main__content {
        margin-bottom: 5.25rem;
        margin-top: 6.25rem;
        margin-inline:6.25rem
        }

    .main__title {
        font-size: 2.7rem;
        margin-bottom: 2.5rem;
        letter-spacing: -.04em;
    }

    .menu {
        margin-inline: 2.125rem;
        }

    .menu__list {
        padding-inline:3.125rem;
        margin: 0;
        }

    .faq__content {
        column-gap: 4.5rem;
    }
}

@media (any-hover: hover) and (any-pointer:fine) {
    .button:hover {
        border-color:#b30019;
        color: #b30019
    }

    .button__red:hover {
        background-color: #b30019;
        color: #fff
    }

    .next:hover,.prev:hover {
        background-color: #b30019;
        border-color: #b30019
    }

    .next:hover svg path,.prev:hover svg path {
        stroke: #fff
    }

    .menu__link:hover {
        color: #b30019
    }

    .header__human:hover {
        border-color: #b30019
    }

    .header__human:hover svg path {
        stroke: #b30019
    }

    .faq-form__button:hover {
        background-color: #b30019;
        color: #fff
    }
}

@media (any-hover: none) and (any-pointer:coarse) {
    .button:active {
        border-color:#b30019;
        color: #b30019
    }

    .button__red:active {
        background-color: #b30019;
        color: #fff
    }

    .next:active,.prev:active {
        background-color: #b30019;
        border-color: #b30019
    }

    .next:active svg path,.prev:active svg path {
        stroke: #fff
    }

    .menu__link:active {
        color: #b30019
    }

    .header__human:active {
        border-color: #b30019
    }

    .header__human:active svg path {
        stroke: #b30019
    }

    .faq-form__button:active {
        background-color: #b30019;
        color: #fff
    }
}
