
/* = Hero */
.hero {
    display: block;
    margin-top: 16px;
}
.hero__inner {
    display: block;
    position: relative;
    min-height: 580px;
    border-radius: 0 40px 40px 40px;
    overflow: hidden;
}


.hero__inner.hero__contacts {
    border-radius: 0 40px 0px 40px!important;
}

.hero__inner.hero__service, .hero__inner.hero__about {
    border-radius: 0 40px 0px 40px!important;
}


.hero__inner:after {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    width: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(185.61deg, rgba(42, 42, 42, 0) -0.8%, rgba(42, 42, 42, 0.8) 61.11%);
}

.hero__content {
    position: absolute;
    z-index: 2;
    /* top: -35px; */
    height: 100%;
    /* border: solid 1px red; */
    top:  0;
    bottom: 0;
    left: 0;
    right: 0;
}

.hero__content  .bubble {
    display: block;
    max-width: 885px;
    position: relative;
    left:0;
    top: 0;
}

.hero__content .bubble-right-bottom {
    position: absolute;
    bottom: 0!important;
    right: 0!important;
    top: unset !important;
    left: unset !important;
    background-color: white;
    border-radius: 40px 0 0 0;
    display: block;
    padding-left: 20px;
}

.hero__content .bubble-right-bottom .button-wrapper {
    background-color: unset!important;
}

.hero__content  .bubble .text-top-wrapper {
    background-color: #fffcf6;
    display: block;
    border-radius:  0 0 40px 0;
    position: relative;
}

.hero__content  .bubble .text-top-wrapper:after {
    width: 40px;
    height: 40px;
    content: "";
    position: absolute;
    background-image: url("../images/shape.svg");
    transform: rotate(180deg);
    /* border: solid 1px aqua; */
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    top: 0;
    right: -40px;
}


.hero__content  .bubble.bubble-line-1 .text-top-wrapper {
    background-color: #fffcf6;
    display: block;
    border-radius:  0 0 40px 0;
    position: relative;
    float: left;
    padding-right: 20px;
    padding-bottom: 14px;
}



.hero__content  .bubble.bubble-line-1 .text-top-wrapper:after {
    width: 40px;
    height: 40px;
    content: "";
    position: absolute;
    background-image: url("../images/shape.svg");
    transform: rotate(180deg);
    /* border: solid 1px aqua; */
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    top: 0;
    right: -40px;
}




.hero__content .bubble.bubble-line-1 .text-top-wrapper:before {
    width: 40px;
    height: 40px;
    content: "";
    position: absolute;
    background-image: url("../images/shape.svg");
    transform: rotate(
            180deg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    bottom: -40px;
    left: 0;
}



.hero__content  .bubble-line-1:first-child .text-top-wrapper {
    padding-top: 10px;
}




.hero__content .bubble.bubble-right-bottom .button-wrapper:before {
    bottom: 0!important;
    left: -60px!important;
    transform: rotate(0deg);
}



.hero__content  .bubble .button-wrapper {
    background-color: var(--bg);
    display: block;
    border-radius: 0 0 40px 0;
    max-width: 240px;
    padding: 20px 20px 20px 0!important;
    /* top: -35px; */
    position: relative;
    float: left;
}


.hero__content  .bubble .button-wrapper:after {
    width: 40px;
    height: 40px;
    content: "";
    position: absolute;
    background-image: url("../images/shape.svg");
    transform: rotate(180deg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    top: 0;
    right: -40px;
}

.hero__content .bubble.bubble-right-bottom .button-wrapper:after
{
    top: -40px!important;
    right: -0px!important;
    transform: rotate(360deg);
}


.hero__content .bubble.bubble-left-bottom
{
    bottom: 0;
    left: 0;
    top: unset;
    position: absolute;
    z-index: 1;
    display: block;
    padding: 18px 20px 0 10px;
    background: #fffcf6;
    border-radius: 0 40px 0 0;
}

.hero__content .bubble.bubble-left-bottom-nobg {
    background: unset;
}

.hero__content .bubble.bubble-left-bottom:before {
    width: 40px;
    height: 40px;
    content: "";
    position: absolute;
    background-image: url("../images/shape.svg");
    transform: rotate(
            90deg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    /* bottom: -40px; */
    top: -40px;
    left: 0;
}

.hero__content .bubble.bubble-left-bottom:after {
    width: 40px;
    height: 40px;
    content: "";
    position: absolute;
    background-image: url("../images/shape.svg");
    transform: rotate(
            90deg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    /* top: 40px; */
    right: -40px;
    bottom: 0;
}

.hero__content .bubble.bubble-left-bottom-nobg:after,
.hero__content .bubble.bubble-left-bottom-nobg:before {
    display: none;
}

.stats {
    display: flex;
    gap: 20px;
    font-family: Arial, sans-serif;
    max-width: 70%;
    position: relative;
    top: -70px;
    z-index: 2;
    left: 65px;
}

.stat-item {
    flex: 1;
    background: #f6f6f4;
    padding: 20px;
    border-radius: 20px;
    text-align: center;
}

.stat-value {
    margin-bottom: 8px;
    font-family: Manrope;
    font-weight: 800;
    font-size: 40px;
    line-height: 120%;
    text-align: center;
    color: var(--red)

}

.stat-text {
    font-weight: 500;
    font-size: 16px;
    line-height: 120%;
    text-align: center;
    color: var(--black);

}




.features {
    display: flex;
    gap: 20px;
    font-family: Arial, sans-serif;
}

.feature-item {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #f6f6f4;
    padding: 14px 20px;
    border-radius: 20px;
}

.feature-icon {
    width: 32px;
    height: 32px;
    background: #a6322a;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-size: 16px;
}




.hero__content  .bubble .button-wrapper:before {
    width: 40px;
    height: 40px;
    content: "";
    position: absolute;
    background-image: url("../images/shape.svg");
    transform: rotate(
            180deg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    bottom: -40px;
    left: 0;
}

.hero__title {
    font-weight: 700;
    font-size: 42px;
    line-height: 120%;
    text-transform: uppercase;
    /*max-width: 795px;*/
    padding: 0;
    margin: 0;
    padding-bottom: 20px;
}

.hero__cta {
    max-width: 200px;
    text-align: center;
}

.hero__badge-subtitle-wrapper {
    position: absolute;
    font-weight: 500;
    font-size: 16px;
    line-height: 120%;
    color: var(--bg);
    left: 40px;
    bottom: 40px;
    max-width: 1020px;
}

.hero__badge-subtitle-wrapper .hero__badge {
    font-weight: 600;
    font-size: 18px;
}

.hero__badge-subtitle-wrapper .hero__subtitle {

}


.hero__image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    min-height: 580px;
    border-radius: 30px;
    overflow: hidden;
    z-index: 0;
}

.hero__image img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

/* = Breadcrumbs */
.breadcrumbs {}
.breadcrumbs__list {}
.breadcrumbs__item {}
.breadcrumbs__link {}

/* = Advantages */
.advantages {
    display: block;
}

.advantages .container {
    display: flex;
    gap: 40px;
}

.advantages .container .col {
    display: flex;
    width: 100%;
    flex-direction: column;
    justify-content: space-between;
}

.advantages .container .col:first-child {
    max-width: 400px;
}

.advantages .container .col .img-wrapper {
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: 40px;
    max-width: 400px;
    width:100%;
}

.advantages .container .col .img-wrapper img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.advantages .container .col h2 {
    font-weight: 600;
    font-size: 32px;
    line-height: 120%;
    text-transform: uppercase;
    padding: 0;
    margin: 20px 0 40px 0;
}

.advantages .container .col ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 30px;
    justify-content: space-between;
}

.advantages .container .col ul li {
    display: flex;
    font-weight: 600;
    font-size: 20px;
    line-height: 120%;
    background-image: url("../images/check-red.svg");
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 24px 24px;
    padding-left: 40px;
    width: 33%;
}

.advantages__grid {
    display: flex;
    justify-content: space-between;
}

.advantages__item {
    display: flex;
    width: 33%;
    flex-direction: column;
    align-content: flex-start;
    gap: 20px;
}


.advantages__stat {
    font-weight: 800;
    font-size: 60px;
    line-height: 120%;
    text-align: center;
    color: var(--red);
}
.advantages__desc {
    font-weight: 500;
    font-size: 18px;
    line-height: 120%;
    text-align: center;
}
.advantages__cta-wrap {
    display: flex;
    width: 100%;
    justify-content: flex-end;
    margin-bottom: 20px;
}
.advantages__cta {
    max-width: 227px;
    min-width: 180px;
    text-align: center;
    display: block;
}



/* = Services */
.services {
    display: block;
    margin: 100px 0;
}

.services .container {
    display: flex;
    gap: 20px;
    align-items: center;
}

.services .section__title {
    font-weight: 600;
    font-size: 32px;
    line-height: 120%;
    text-transform: uppercase;
    padding: 0;
    margin: 0;
}

.services__grid {
    display: flex;
    gap: 24px;
}

.services__card {}

.services__link {
    position: relative;
    display: block;
    width: 265px;
    height: 180px;
}
.services__image {
    display: block;
    position: relative;
    overflow: hidden;
    z-index: 0;
    width: 100%;
    border-radius: 10px;
    height: 100%;
}
.services__image:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2A2A2A80;
    z-index: 1;
    display: block;
}

.services__image img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.services__name {
    font-weight: 800;
    font-size: 24px;
    line-height: 120%;
    position: absolute;
    z-index: 2;
    bottom: 10px;
    left: 14px;
    color: white;
    padding: 0;
    margin: 0;
}

.services__link .services__link-icon {
    position: absolute;
    z-index: 5;
    background-color: white;
    border-radius: 0 0 0 10px;
    background-image: url("../images/arrow-sq-right.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 40px 40px;
    width: 60px;
    height: 60px;
    display: block;
    top: -10px;
    right: -10px;
}


.services__link .services__link-icon:after {
    width: 10px;
    height: 10px;
    content: "";
    position: absolute;
    background-image: url(../images/shape.svg);
    transform: rotate(270deg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    top: 10px;
    left: -10px;
}

.services__link .services__link-icon:before {
    width: 10px;
    height: 10px;
    content: "";
    position: absolute;
    background-image: url(../images/shape.svg);
    transform: rotate(270deg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    bottom: -10px;
    right: 10px;
}


/* = Reviews (slider) */
.reviews {
    display: block;
}

.reviews .container {
    background-color: var(--grey-soft);
    border-radius: 40px;
    padding-left: 40px;
    padding-right: 40px;
}

.reviews .container.inner_reviews {
    background-color: transparent;
}

.reviews .container .section__title {
    font-weight: 600;
    font-size: 32px;
    line-height: 120%;
    text-transform: uppercase;
    display: block;
    text-align: center;
    margin: 0 auto;
    padding: 40px 0;
}

.reviews__img {
    /*width: 253px;*/
    height: 268px;
    border-radius: 35px 35px 0 0;
    padding: 20px;
    border: solid 1px var(--grey-d9);
    border-bottom: none;
    display: block;
    position: relative;
    overflow: hidden;
    background-color: white;
    z-index: 1;
}

.reviews__img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    border-radius: 20px;
}

/*.splide__list {*/
/*    gap: 20px!important;*/
/*}*/

.reviews__info {
    background-color: white;
    display: none;
    position:absolute;
    z-index: 2;
    top: 20px;
    left: 20px;
    right: 20px;
    bottom: 26px;
    font-size: 18px;
    line-height: 120%;
}

.reviews__info .reviews__info-header {
    display: flex;
    justify-content: space-between;
}

.reviews__author {
    display: flex;
    position: relative;
    z-index: 3;
    background-color: white;
    border-radius: 0 0 35px 35px;
    padding: 0 20px 20px 20px;
    border: solid 1px var(--grey-d9);
    border-top: none;
    gap: 10px;
    align-items: center;
}

.reviews__author .icon {
    display: block;
    width: 42px;
    min-width: 42px;
    height: 42px;
    background-color: var(--grey-d9);
    border-radius: 50%;
}

.author_info {
    display: flex;
    flex-direction: column;
    font-weight: 600;
    font-size: 16px;
    line-height: 120%;
}

.author_info span:first-child {

}

.author_info span:last-child {
    color: var(--grey);
}

.reviews__slide {}
.reviews__slide:hover  .reviews__info {
    display: block;
    cursor: pointer;
}

.reviews__slide-footer {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 40px 0;
    align-items: center;
}

.inner_reviews .reviews__slide-footer .btn{
    display: none;
}


.inner_reviews .reviews__slide-footer   .reviews__arrows-wrapper {
    display: flex;
    gap: 10px;
    width: 100%;
    justify-content: space-between;
}


.reviews__track {}
.reviews__slide {}

.reviews__arrows-wrapper {
    display: flex;
    gap: 10px;
}

.reviews__arrow {
    display: block;
    background-color: var(--bg);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 10px 20px;
    background-image: url("../images/arrow-left.svg");
    border:none;
}
.reviews__arrow--prev {
}
.reviews__arrow--next {
    transform: rotate(180deg);
}

.reviews__arrow:hover {
    opacity: 0.8;
    cursor: pointer;
}

/* = Workflow */
.workflow {
    display: block;
    margin: 100px 0;
}
.workflow .section__title {
    font-weight: 600;
    font-size: 32px;
    line-height: 120%;
    text-transform: uppercase;
    display: block;
    margin: 0 auto;
    text-align: center;
    padding: 0 0 40px 0;
}

.workflow__grid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}

.workflow__step {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
    position: relative;
    width: 25%;
}
.workflow__icon {}

.workflow__num {
    display: flex;
    margin: 0 auto;
    width: 48px;
    height: 48px;
    background-color: var(--grey-soft);
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 20px;
    line-height: 120%;
    text-align: center;
}

.workflow__step:before {
    content: "";
    display: block;
    height: 1px;
    width: 60%;
    background-color: var(--grey-soft);
    position: absolute;
    top: 150px;
    right: -80px;
}


.workflow__step:last-child:before{
    display: none;
}


.workflow__caption {
    font-weight: 600;
    font-size: 18px;
    line-height: 120%;
    text-align: center;
}
.workflow__links {}
.workflow__link {
    font-weight: 800;
    font-size: 16px;
    line-height: 120%;
    text-align: center;
    text-transform: uppercase;
    color: var(--red);
}



/* ====== Секция ====== */
.pricing.section {
    background: var(--bg);
    padding: clamp(32px, 4vw, 56px) 0;
    font-family: var(--font);
    color: var(--black);
}

.pricing .section__title {
    font-weight: 600;
    font-size: 32px;
    line-height: 120%;
    text-transform: uppercase;
    display: block;
    margin: 0 auto;
    text-align: center;
    padding: 0 0 40px 0;
}

.pricing__tabs-wrapper {
    display: flex;
    justify-content: space-between;
    padding: 30px 0;
    align-items: center;
}


/* ====== Табы ====== */
.pricing__tabs {
    display: inline-flex;
    gap: 20px;
    background: var(--grey-soft);
    padding: 6px;
    border-radius: 999px;
    /* margin: 0 auto clamp(18px, 3vw, 28px); */
    margin-top: 30px 0;
    margin: 0;
}

.pricing__tab {
    border: 0;
    background: transparent;
    padding: 16px 24px;
    border-radius: 999px;
    font-size: clamp(14px, 1.7vw, 16px);
    color: var(--black);
    cursor: pointer;
    font-family: var(--font-roboto);
    transition: transform .15s ease, background-color .15s ease;
    white-space: nowrap;
}

.pricing__tab:is(:hover,:focus-visible) {
    transform: translateY(-1px);
}

.pricing__tab.is-active {
    background: var(--blue);
    color: #fff;
}

/* ====== Сетка контента ====== */
.pricing__inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(16px, 3.5vw, 32px);
    align-items: start;
}

@media (min-width: 992px) {
    .pricing__inner {
        grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
        gap: clamp(24px, 3vw, 40px);
    }
}

/* ====== Медиа (картинка) ====== */
.pricing__media {
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

.pricing__media img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    aspect-ratio: 4 / 3;
}

@media (min-width: 992px) {
    .pricing__media img { aspect-ratio: auto; }
}

/* ====== Контент ====== */
.pricing__content {
    display: grid;
    align-content: start;
    gap: clamp(14px, 2vw, 18px);
}

.pricing__list {
    list-style: none;
    margin: 20px 0 0 0;
    padding: 0;
    display: grid;
    gap: 10px;
}

.pricing__list h3 {
    position: relative;
    padding: 12px 20px 12px 20px;
    background: var(--grey-soft);
    border-radius: 999px;
    font-size: clamp(14px, 1.8vw, 16px);
    line-height: 1.45;
    font-weight: 600;
    text-align: left;
    margin: 0;

}

.price__button_wrapper {
    display: flex;
    width: 100%;
    justify-content: flex-end;
    padding-top: 20px;
}


.pricing__list  ul{
    list-style: none;
    margin: 7px 0;
    padding: 0;
    display: grid;
    gap: 10px;
}

.pricing__list  ul li {
    display: flex;
    position: relative;
    align-items: flex-start;
    padding-left: 16px;
}

.pricing__list ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--red);
}

.pricing__note {
    font-weight: 500;
    font-size: 16px;
    line-height: 120%;
    max-width: 777px;
}




/* = Tips / Blog */

/* секция */
.tips.section{ background:var(--bg); padding:clamp(28px,4vw,56px) 0; color:var(--black); }
.tips .section__title{
    font-weight: 600;
    font-size: 32px;
    line-height: 120%;
    text-transform: uppercase;
    display: block;
    margin: 0 auto;
    text-align: center;
    padding: 0 0 70px 0;
}

/* сетка */
.tips__grid, .tips__grid-3{
    display:grid;
    gap:clamp(14px,2.5vw,24px);
    grid-template-columns: 1fr;
}
@media (min-width: 640px){ .tips__grid{ grid-template-columns: repeat(2,1fr); } }
@media (min-width: 992px){
    .tips__grid{ grid-template-columns: repeat(4,1fr); }
    .tips__grid-3{ grid-template-columns: repeat(3,1fr)!important; }
}

/* карточка */
.tips__card{
    background: var(--grey-soft);
    border-radius: 40px;
    padding: 24px;
}
.tips__card-link{
    display:grid;
    gap:10px;
    color:inherit;
    text-decoration:none;
    grid-template-rows: auto auto 1fr auto; /* кнопка прижимается вниз */
    height:100%;
}

/* изображение */
.tips__image{
    border-radius: 20px;
    overflow:hidden;
    background:var(--grey-soft);
}
.tips__image img{ display:block; width:100%; height:auto; object-fit:cover; aspect-ratio:16/9; }
.tips__image--placeholder{ width:100%; aspect-ratio:16/9; background:var(--grey-d9); }

/* текст */
.tips__title{
    font:700 clamp(16px,2vw,18px)/1.25 var(--font);
    color:var(--black);
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    padding: 0;
    margin: 0;
}
.tips__excerpt{
    color:#4a4a4a;
    font-size:clamp(13px,1.8vw,15px);
    line-height:1.5;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    margin-bottom:6px;
    padding: 0;
}

/* кнопка в карточке */
.tips__more{
    text-align: center;
}

/* нижняя кнопка */
.tips__footer{
    display:flex; justify-content:flex-end; margin-top:clamp(16px,3vw,24px);
}



/* = FAQ */
/* секция */
.faq.section{ background:var(--bg); padding:clamp(28px,4vw,56px) 0; color:var(--black); font-family:var(--font); }
.faq .section__title{
    font-weight: 600;
    font-size: 32px;
    line-height: 120%;
    text-transform: uppercase;
    display: block;
    margin: 0 auto;
    text-align: center;
    padding: 0 0 40px 0;
}

/* сетка */
.faq__grid{ display:grid; gap:clamp(12px,2.5vw,18px); grid-template-columns:1fr; }
@media (min-width: 900px){ .faq__grid{ grid-template-columns:1fr 1fr; column-gap:clamp(20px,3vw,28px); } }

/* пункт */
.faq__item{border-radius:22px;background:var(--grey-soft);/* box-shadow:0 2px 10px rgba(0,0,0,.04); */overflow:hidden;min-height: 92px;}

/* кнопка-вопрос */
.faq__btn{
    width:100%; display:flex; align-items:center; justify-content:space-between; gap:16px;
    padding:clamp(14px,2.2vw,20px) clamp(16px,2.5vw,24px);
    background:transparent; border:0; cursor:pointer; text-align:left; color:var(--black);
    font:600 clamp(15px,2vw,18px)/1.35 var(--font);
}
.faq__btn:focus-visible{ outline:2px solid var(--blue); outline-offset:2px; border-radius:18px; }

/* стрелка */
.faq__icon{ width:24px; height:24px; flex:0 0 auto; color:var(--red); transition:transform .2s ease; }
.faq__btn[aria-expanded="true"] .faq__icon{ transform: rotate(90deg); }

/* панель-ответ */
.faq__panel{
    max-height:0;
    overflow:hidden;
    transition:max-height .28s ease;
    will-change:max-height;
    background:var(--grey-soft);
    /* border-top:1px solid rgba(0,0,0,.06); */
}
.faq__panel-inner{
    padding:0 clamp(16px,2.5vw,24px) clamp(14px,2vw,18px);
    color:#4a4a4a;
    font-size:clamp(14px,1.9vw,16px);
    line-height:1.6;
    /* display: none; */
}

/* мелкие улучшения */
.faq__btn:hover{ filter:brightness(.98); }



/* = Lead form */
.lead.section {
    background: var(--bg);
    padding: clamp(28px, 4vw, 56px) 0;
    color: var(--black);
    font-family: var(--font);
}

.lead__inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(16px, 3vw, 28px);
    align-items: start;
}

@media (min-width: 992px) {
    .lead__inner {
        grid-template-columns: minmax(260px, .6fr) 1.1fr;
        gap: clamp(24px, 3vw, 40px);
    }
}

/* Left text */
.lead__text {
    max-width: 480px;
}
.lead__title {
    font-weight: 600;
    font-size: 32px;
    line-height: 120%;
    text-transform: uppercase;
}
.lead__desc {
    font-weight: 600;
    font-size: 18px;
    line-height: 120%;
}

/* Form card */
.lead__form {
    background: var(--red);
    border-radius: 22px;
    padding: clamp(14px, 2.5vw, 20px);
    color: #fff;
    width: 100;
}
.lead__row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin-bottom: 12px;
}
@media (min-width: 640px) {
    .lead__row {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
}

/* Fields */
.lead__field {
    display: block;
}
.lead__field input,
.lead__field textarea {
    width: calc(100% - 28px);
    display: block;
    background: #fff;
    color: var(--black);
    border: 0;
    border-radius: 16px;
    padding: 12px 14px;
    font: 500 14px/1.4 var(--font);
    outline: none;

    font-family: Manrope;
    font-weight: 400;
    font-style: Regular;
    font-size: 14px;
    leading-trim: NONE;
    line-height: 140%;
    letter-spacing: 0%;

}
.lead__field textarea {
    resize: vertical;
    min-height: 92px;
}
.lead__field--full {
    margin-top: 8px;
}

/* Footer row */
.lead__footer {
    margin-top: 12px;
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content: space-between;
    flex-wrap: wrap;
}

/* Agree */
.lead__agree {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-weight: 400;
    font-style: Regular;
    font-size: 16px;
    line-height: 140%;

}
.lead__agree a {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 2px;
    opacity: .95;
    font-family: Manrope;
    font-weight: 700;
    font-style: Bold;
    font-size: 16px;
    leading-trim: NONE;
    line-height: 140%;
    letter-spacing: 0%;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-offset: 0%;
    text-decoration-thickness: 0%;
    text-decoration-skip-ink: auto;

}
.lead__agree input {
    width: 18px;
    height: 18px;
    accent-color: var(--red-darck);
    border-radius: 4px;
}

/* Submit button */
.lead__submit {
    background: var(--red-darck);
    color: #fff;
    border: 0;
    cursor: pointer;
    padding: 12px 24px;
    border-radius: 22px;
    font: 700 15px/1 var(--font);
    transition: .15s ease;

    font-family: Manrope;
    font-weight: 500;
    font-style: Medium;
    font-size: 18px;
    leading-trim: NONE;
    line-height: 120%;
    letter-spacing: 0%;
    min-width: 250px;

}
.lead__submit:hover {
    transform: translateY(-1px);
    background: #5e1b1b;
}

/* Accessibility helper */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}



/* ====== ticker with dot separators ====== */
.ticker-dots{
    --speed: 28s;           /* скорость (меньше — быстрее) */
    --space: 28px;          /* интервал между элементами */
    --dot: 8px;             /* диаметр точки */
    --dot-color: #b9716f;   /* цвет точки */
    --text-color: #2a2a2a;  /* цвет текста */
    --bg: transparent;      /* фон полосы */
    overflow: hidden;
    width: 100%;
    background: var(--bg);
    margin-top: 80px;
    margin-bottom: 80px;
}

.ticker-dots__track{
    display: flex;
    width: max-content;
    animation: ticker-marquee var(--speed) linear infinite;
}

.ticker-dots__list{
    display: flex;
    margin: 0;
    padding: 8px 0;
    list-style: none;
}

.ticker-dots__item{
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    color: var(--text-color);
    font-weight: 500;
    line-height: 1.3;
}

/* точка-разделитель */
.ticker-dots__item:not(:first-child)::before{
    content: "";
    width: var(--dot);
    height: var(--dot);
    border-radius: 50%;
    background: var(--dot-color);
    margin: 0 var(--space);
    flex: none;
    box-shadow: 0 0 0 2px rgba(0,0,0,0); /* чтобы не было «слипания» в некоторых браузерах */
}

/* пауза при наведении (по желанию) */
.ticker-dots:hover .ticker-dots__track{ animation-play-state: paused; }

/* уважение reduce-motion */
@media (prefers-reduced-motion: reduce){
    .ticker-dots__track{ animation: none; }
}

@keyframes ticker-marquee{
    to { transform: translateX(-50%); } /* двигаем на ширину первого списка */
}
