/* ======== container ======== */
.container {
    max-width: 1200px;
    width: 100%;
    box-sizing: border-box;
    margin: 0 auto;
}

@media (max-width: 1230px) {
    .container {
        max-width: calc(100% - 30px);
    }
}

/* ======== breadcrumbs ======== */
.breadcrumbs {
    background: linear-gradient(90deg, #ffffff 0%, #ddf1fa 100%);
    padding: 32px 0;
}

.breadcrumbs .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}

.breadcrumbs ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    font: 400 14px/21px 'PT Sans', sans-serif;
    color: #6e6e6e;
}

.breadcrumbs ul li {
    display: flex;
    align-items: center;
    gap: 10px;
}

.breadcrumbs ul li:not(:last-child)::after {
    content: "›";
    color: #6e6e6e;
}

.breadcrumbs ul a {
    color: #3c3c3c;
    text-decoration: none;
}

.breadcrumbs ul a:hover {
    color: #0b5cad;
}

.breadcrumbs .slogan {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #0b5cad;
    font: 700 14px/21px 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .breadcrumbs {
        padding: 20px 0;
        background: #fff;
    }
    .breadcrumbs .container {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
}

/* ======== section ======== */
.firstscreen {
    background: linear-gradient(90deg, #ffffff 0%, #ddf1fa 100%);
    padding-bottom: 72px;
}

@media (max-width: 900px) {
    .firstscreen {
        padding: 20px 0 40px;
        background: linear-gradient(180deg, #ffffff 0%, #ddf1fa 100%);
    }
}

/* ======== main row ======== */
.firstscreen__main {
    display: flex;
    gap: 90px;
}

@media (max-width: 900px) {
    .firstscreen__main {
        flex-direction: column;
        align-items: stretch;
        gap: 20px;
    }
}

/* ======== content ======== */
.firstscreen__content {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 28px;
}

@media (max-width: 900px) {
    .firstscreen__content {
        gap: 20px;
    }
}

/* ======== img ======== */
.firstscreen__img {
    position: relative;
    flex: 0 0 auto;
    align-self: center;
    order: 2;
    margin-right: 50px;
    line-height: 0;
}

@media (max-width: 900px) {
    .firstscreen__img {
        order: -1;
        align-self: center;
        margin: 0 auto;
    }
}

.firstscreen__img > div {
    position: relative;
    display: inline-block;
    line-height: 0;
}

.firstscreen__img > div::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    aspect-ratio: 1 / 1;
    width: 115%;
    height: auto;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 12px 40px rgba(13, 64, 89, .10);
    z-index: 0;
}

@media (max-width: 600px) {
    .firstscreen__img > div::before {
        display: none;
    }
}

.firstscreen__img img {
    position: relative;
    z-index: 1;
    display: block;
    height: auto;
}

@media (max-width: 900px) {
    .firstscreen__img img {
        max-width: 200px;
    }
}

@media (max-width: 600px) {
    .firstscreen__img img {
        max-width: 165px;
    }
}

/* ======== h1 ======== */
.firstscreen__content h1 {
    margin: 0;
    color: #1e1e1e;
    font: 700 52px/1.1 'Play', sans-serif;
}

@media (max-width: 1024px) {
    .firstscreen__content h1 {
        font-size: 40px;
    }
}

@media (max-width: 900px) {
    .firstscreen__content h1 {
        font-size: 30px;
        line-height: 1.1;
    }
}

/* ======== list ======== */
.firstscreen__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

@media (max-width: 900px) {
    .firstscreen__list {
        gap: 10px;
    }
}

.firstscreen__list li {
    position: relative;
    padding-left: 22px;
    color: #3c3c3c;
    font: 400 20px/30px 'PT Sans', sans-serif;
}

@media (max-width: 1024px) {
    .firstscreen__list li {
        font-size: 18px;
        line-height: 26px;
    }
}

@media (max-width: 900px) {
    .firstscreen__list li {
        font-size: 16px;
        line-height: 24px;
    }
}

.firstscreen__list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 11px;
    width: 8px;
    height: 8px;
    background: #2a9290;
    border-radius: 2px;
}

/* ======== form ======== */
.firstscreen__form {
    background: #fff;
    border-radius: 16px;
    padding: 32px;
    box-shadow: 0 12px 40px rgba(13, 64, 89, .10);
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 30px;
    row-gap: 16px;
    align-items: center;
}

@media (max-width: 1200px) {
    .firstscreen__form {
        padding: 20px;
        display: flex;
        flex-direction: column;
        gap: 16px;
        align-items: stretch;
    }
}

/* ======== form head ======== */
.firstscreen__form-head {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

/* ======== form title ======== */
.firstscreen__form-title {
    color: #1e1e1e;
    font: 400 22px/1.2 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .firstscreen__form-title {
        width: auto;
        font-size: 20px;
    }
}

/* ======== form sale ======== */
.firstscreen__form-sale {
    color: #13a6e0;
    font: 700 30px/1.2 'Play', sans-serif;
    text-transform: uppercase;
    white-space: nowrap;
}

@media (max-width: 900px) {
    .firstscreen__form-sale {
        font-size: 26px;
    }
}

/* ======== form row ======== */
.firstscreen__form-row {
    display: flex;
    gap: 12px;
    align-items: center;
    min-width: 0;
}

@media (max-width: 900px) {
    .firstscreen__form-row {
        flex-direction: column;
        align-items: stretch;
        gap: 14px;
    }
}

/* ======== form input ======== */
.firstscreen__form-row input[type="tel"] {
    flex: 1 1 auto;
    min-width: 0;
    padding: 17px 20px;
    border: 1px solid #d5dadd;
    border-radius: 8px;
    font: 400 16px/24px 'PT Sans', sans-serif;
    color: #1e1e1e;
    box-sizing: border-box;
}

.firstscreen__form-row input[type="tel"]::placeholder {
    color: #8a8a8a;
}

/* ======== form button ======== */
.firstscreen__form-btn {
    flex: 0 0 auto;
    padding: 18px 32px;
    background: #ee2e35;
    border: none;
    border-radius: 8px;
    color: #fff;
    font: 400 16px/1.2 'Play', sans-serif;
    text-transform: uppercase;
    cursor: pointer;
}

.firstscreen__form-btn:hover {
    background: #d4232a;
}

/* ======== form policy ======== */
.firstscreen__form-policy {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #6e6e6e;
    font: 400 14px/21px 'PT Sans', sans-serif;
}

.firstscreen__form-policy a {
    text-decoration: underline;
}

.firstscreen__form-policy a:hover {
    color: #000;
}

@media (max-width: 900px) {
    .firstscreen__form-policy {
        font-size: 13px;
        line-height: 19.5px;
    }
}

.firstscreen__form-policy input {
    appearance: none;
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    border: 1px solid #2a9290;
    border-radius: 4px;
    background: #2a9290;
    position: relative;
    flex: 0 0 auto;
    cursor: pointer;
    margin: 0;
}

.firstscreen__form-policy input::after {
    content: "";
    position: absolute;
    left: 5px;
    top: 2px;
    width: 6px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.firstscreen__form-policy input:not(:checked) {
    background: #fff;
}

.firstscreen__form-policy input:not(:checked)::after {
    display: none;
}











/* ======== section ======== */
.benefits {
    background: #fff;
    border-bottom: 1px solid #e2e2e2;
    padding: 56px 0;
}

@media (max-width: 900px) {
    .benefits {
        padding: 32px 0;
    }
}

/* ======== list ======== */
.benefits__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
}

@media (max-width: 1024px) {
    .benefits__list {
        grid-template-columns: repeat(2, 1fr);
        gap: 28px;
    }
}

@media (max-width: 900px) {
    .benefits__list {
        grid-template-columns: 1fr;
        gap: 24px;
    }
}

/* ======== item ======== */
.benefits__item {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

@media (max-width: 900px) {
    .benefits__item {
        flex-direction: row;
        align-items: flex-start;
        gap: 16px;
    }
}

/* ======== icon ======== */
.benefits__icon {
    padding: 14px;
    background: #e6f3f2;
    border-radius: 28px;
    display: inline-flex;
    flex: 0 0 auto;
    align-self: flex-start;
    line-height: 0;
}

.benefits__icon svg {
    display: block;
    width: 28px;
    height: 28px;
}

/* ======== text ======== */
.benefits__text {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
}

/* ======== title ======== */
.benefits__title {
    color: #0b5cad;
    font: 700 28px/1.2 'PT Sans', sans-serif;
}

@media (max-width: 1024px) {
    .benefits__title {
        font-size: 24px;
    }
}

@media (max-width: 900px) {
    .benefits__title {
        font-size: 22px;
        line-height: 1.2;
    }
}

/* ======== desc ======== */
.benefits__desc {
    color: #6e6e6e;
    font: 400 14px/1.55 'PT Sans', sans-serif;
}

































/* ======== section ======== */
.poproblems {
    padding: 80px 0;
}

@media (max-width: 900px) {
    .poproblems {
        padding: 48px 0;
    }
}

/* ======== head ======== */
.poproblems__head {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 32px;
}

@media (max-width: 900px) {
    .poproblems__head {
        gap: 16px;
        margin-bottom: 20px;
    }
}

/* ======== head icon ======== */
.poproblems__head-icon {
    flex: 0 0 auto;
    line-height: 0;
    align-self: flex-start;
}

.poproblems__head-icon svg {
    display: block;
    width: 44px;
    height: 44px;
}

@media (max-width: 900px) {
    .poproblems__head-icon svg {
        width: 32px;
        height: 32px;
    }
}

/* ======== title ======== */
.poproblems__title {
    margin: 0 !important;
    flex: 1 1 auto;
    min-width: 0;
    color: #1e1e1e;
    font: 700 40px/1.2 'Play', sans-serif;
}

@media (max-width: 900px) {
    .poproblems__title {
        font-size: 24px;
        line-height: 1.2;
    }
}

/* ======== list ======== */
.poproblems__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

@media (max-width: 1024px) {
    .poproblems__list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .poproblems__list {
        grid-template-columns: 1fr;
        gap: 12px;
    }
}

/* ======== item ======== */
.poproblems__item {
    min-height: 272px;
    text-decoration: none !important;
    padding: 24px;
    background: #f2f2f2;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 20px;
    box-sizing: border-box;
}

@media (max-width: 900px) {
    .poproblems__item {
        min-height: 0;
        padding: 20px;
    }
}

/* ======== item top ======== */
.poproblems__item-top {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* ======== item head ======== */
.poproblems__item-head {
    display: flex;
    align-items: center;
    gap: 14px;
}

/* ======== item icon ======== */
.poproblems__item-icon {
    flex: 0 0 auto;
    line-height: 0;
}

.poproblems__item-icon svg {
    display: block;
    width: 40px;
    height: 40px;
}

@media (max-width: 900px) {
    .poproblems__item-icon svg {
        width: 36px;
        height: 36px;
    }
}

/* ======== item title ======== */
.poproblems__item-title {
    flex: 1 1 auto;
    min-width: 0;
    color: #1e1e1e;
    font: 700 18px/1.2 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .poproblems__item-title {
        font-size: 17px;
    }
}

/* ======== item desc ======== */
.poproblems__item-desc {
    color: #3c3c3c;
    font: 400 14px/1.55 'PT Sans', sans-serif;
}

/* ======== item price ======== */
.poproblems__item-price {
    color: #8c8c8c;
    font: 700 18px/1.2 'PT Sans', sans-serif;
}

/* ======== item accent ======== */
.poproblems__item--accent {
    background: #2a9290;
}

.poproblems__item-title--accent,
.poproblems__item-desc--accent {
    color: #fff;
}

.poproblems__item-icon--accent svg {
    /* цвета уже белые внутри SVG */
}

/* ======== item button ======== */
.poproblems__item-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 14px 20px;
    background: #fff;
    border-radius: 8px;
    color: #2a9290;
    font: 400 14px/1.2 'PT Sans', sans-serif;
    text-transform: uppercase;
    text-decoration: none;
    transition: background .2s, color .2s;
}

.poproblems__item-btn:hover {
    background: #e6f3f2;
}














/* ======== section ======== */
.tservices {
    background: #fafafa;
    padding: 80px 0;
}

@media (max-width: 900px) {
    .tservices {
        padding: 48px 0;
    }
}

/* ======== title ======== */
.tservices__title {
    margin: 0 0 32px !important;
    color: #1e1e1e;
    font: 700 40px/1.2 'Play', sans-serif;
}

@media (max-width: 900px) {
    .tservices__title {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 20px !important;
    }
}

/* ======== table wrapper ======== */
.tservices__table {
    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 12px;
    overflow: hidden;
}

/* ======== table ======== */
.tservices__table table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

/* ======== th ======== */
.tservices__table th {
    padding: 22px 32px;
    text-align: left;
    font: 400 18px/1.2 'PT Sans', sans-serif;
    color: #1e1e1e;
    border-bottom: 1px solid #e2e2e2;
}

.tservices__table th:last-child {
    text-align: right;
    width: 70px;
   /* width: 200px;*/
   white-space: nowrap;
}

@media (max-width: 900px) {
    .tservices__table th {
        padding: 16px;
        font-size: 16px;
    }
    .tservices__table th:last-child {
       /* width: 110px;*/
    }
}

/* ======== td ======== */
.tservices__table td {
    padding: 20px 32px;
    text-align: left;
    font: 400 16px/1.5 'PT Sans', sans-serif;
    color: #3c3c3c;
    vertical-align: middle;
}

.tservices__table td:last-child {
    text-align: right;
    color: #0b5cad;
    font-size: 18px;
    white-space: nowrap;
}

@media (max-width: 900px) {
    .tservices__table td {
        padding: 14px 16px;
        font-size: 14px;
        line-height: 1.5;
    }
    .tservices__table td:last-child {
        font-size: 16px;
    }
}

/* ======== zebra ======== */
.tservices__table tbody tr:nth-child(odd) {
    background: #fff;
}

.tservices__table tbody tr:nth-child(even) {
    background: #f4f4f4;
}

/* ======== note ======== */
.tservices__note {
    margin-top: 32px;
    color: #6e6e6e;
    font: 400 14px/1.5 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .tservices__note {
        margin-top: 20px;
    }
}

















/* ======== section ======== */
.formtimes {
    margin: 48px 0;
}

@media (max-width: 900px) {
    .formtimes {
        margin: 32px 0;
    }
}

/* ======== box ======== */
.formtimes__box {
    background: #2a9290;
    border-radius: 12px;
    padding: 44px 56px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}

@media (max-width: 1100px) {
    .formtimes__box {
        padding: 32px;
        gap: 32px;
    }
}

@media (max-width: 900px) {
    .formtimes__box {
        padding: 28px 20px;
        flex-direction: column;
        align-items: stretch;
        gap: 24px;
    }
}

/* ======== info ======== */
.formtimes__info {
    width: 380px;
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

@media (max-width: 1100px) {
    .formtimes__info {
        width: auto;
        flex: 1 1 auto;
    }
}

@media (max-width: 900px) {
    .formtimes__info {
        width: auto;
        flex: 0 0 auto;
    }
}

/* ======== title ======== */
.formtimes__title {
    color: #fff;
    font: 700 32px/1.2 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .formtimes__title {
        font-size: 26px;
    }
}

/* ======== subtitle ======== */
.formtimes__subtitle {
    color: #fff;
    font: 400 21px/1.2 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .formtimes__subtitle {
        font-size: 18px;
    }
}

/* ======== timer ======== */
.formtimes__timer {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.formtimes__timer-label {
    color: #fff;
    opacity: .75;
    font: 400 14px/1.2 'Play', sans-serif;
}

.formtimes__timer-value {
    padding: 3px 8px;
    background: #ee2e35;
    border-radius: 4px;
    color: #fff;
    font: 400 14px/1.2 'PT Sans', sans-serif;
}

/* ======== form ======== */
.formtimes__form {
    width: 400px;
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

@media (max-width: 1100px) {
    .formtimes__form {
        width: auto;
        flex: 1 1 auto;
    }
}

@media (max-width: 900px) {
    .formtimes__form {
        width: auto;
        flex: 0 0 auto;
    }
}

/* ======== form row ======== */
.formtimes__form-row {
    display: flex;
    gap: 12px;
    align-items: center;
}

@media (max-width: 900px) {
    .formtimes__form-row {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }
}

/* ======== form input ======== */
.formtimes__form-row input[type="tel"] {
    flex: 1 1 auto;
    min-width: 0;
    padding: 17px 20px;
    background: #fff;
    border: 1px solid #d5dadd;
    border-radius: 8px;
    font: 400 16px/24px 'PT Sans', sans-serif;
    color: #1e1e1e;
    box-sizing: border-box;
}

.formtimes__form-row input[type="tel"]::placeholder {
    color: #8a8a8a;
}

/* ======== form button ======== */
.formtimes__form-btn {
    flex: 0 0 auto;
    padding: 18px 32px;
    background: #ee2e35;
    border: 1px solid #fff;
    border-radius: 8px;
    color: #fff;
    font: 400 16px/1.2 'Play', sans-serif;
    text-transform: uppercase;
    cursor: pointer;
    transition: background .2s;
}

.formtimes__form-btn:hover {
    background: #d4232a;
}

/* ======== policy ======== */
.formtimes__policy {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    color: #fff;
    font: 400 13px/1.5 'PT Sans', sans-serif;
}

.formtimes__policy a {
    color: #fff;
    text-decoration: underline;
}

.formtimes__policy input {
    appearance: none;
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    border: 1.5px solid #fff;
    border-radius: 4px;
    background: transparent !important;
    position: relative;
    flex: 0 0 auto;
    cursor: pointer;
    margin: 0;
}

.formtimes__policy input:checked {
    background: #fff;
}

.formtimes__policy input:checked::after {
    content: "";
    position: absolute;
    left: 5px;
    top: 1px;
    width: 6px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

/* ======== phone ======== */
.formtimes__phone {
    width: 260px;
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    gap: 6px;
    text-align: right;
}

@media (max-width: 1100px) {
    .formtimes__phone {
        width: auto;
        flex: 1 1 auto;
    }
}

@media (max-width: 900px) {
    .formtimes__phone {
        width: auto;
        flex: 0 0 auto;
        text-align: left;
    }
}

/* ======== phone link ======== */
.formtimes__phone-link {
    display: inline-flex;
    align-items: baseline;
    gap: 8px;
    color: #fff;
    text-decoration: none;
}

.formtimes__phone-code {
    opacity: .6;
    font: 400 20px/1.2 'Play', sans-serif;
}

.formtimes__phone-number {
    font: 700 40px/1.2 'Play', sans-serif;
}

@media (max-width: 900px) {
    .formtimes__phone-number {
        font-size: 32px;
    }
}

/* ======== phone note ======== */
.formtimes__phone-note {
    color: #fff;
    font: 400 14px/1.5 'PT Sans', sans-serif;
}






/* ======== section ======== */
.seotext {
    padding: 80px 0;
}

@media (max-width: 900px) {
    .seotext {
        padding: 48px 0;
    }
}

/* ======== grid ======== */
.seotext__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: start;
}

@media (max-width: 900px) {
    .seotext__grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
}

/* ======== col ======== */
.seotext__col {
    display: flex;
    flex-direction: column;
    gap: 20px;
    min-width: 0;
}

/* ======== title ======== */
.seotext__title {
    margin: 0;
    color: #1e1e1e;
    font: 700 32px/1.2 'Play', sans-serif;
}

@media (max-width: 900px) {
    .seotext__title {
        font-size: 24px;
        line-height: 1.2;
    }
}

/* ======== text ======== */
.seotext__text {
    margin: 0;
    color: #3c3c3c;
    font: 400 16px/1.75 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .seotext__text {
        font-size: 15px;
        line-height: 1.75;
    }
}

/* ======== list ======== */
.seotext__list {
    list-style: none;
    margin: 0;
    padding: 0 0 0 8px;
    display: flex;
    flex-direction: column;
}

.seotext__list--dot {
    gap: 10px;
}

.seotext__list--check {
    gap: 14px;
}

.seotext__list li {
    position: relative;
    padding-left: 24px;
    font: 400 16px/1.75 'PT Sans', sans-serif;
}

.seotext__list--dot li {
    color: #3c3c3c;
}

.seotext__list--check li {
    color: #6e6e6e;
}

/* точки */
.seotext__list--dot li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 12px;
    width: 6px;
    height: 6px;
    background: #13a6e0;
    border-radius: 50%;
}

/* галочки */
.seotext__list--check li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 13px;
    width: 9px;
    height: 4px;
    border-left: 2px solid #13a6e0;
    border-bottom: 2px solid #13a6e0;
    transform: rotate(-45deg);
}

@media (max-width: 900px) {
    .seotext__list li {
        font-size: 15px;
        line-height: 1.75;
    }
    .seotext__list--dot li::before {
        top: 11px;
    }
}

/* ======== image ======== */
.seotext__image {
    margin-top: 4px;
    border-radius: 12px;
    overflow: hidden;
    background: #e9edf0;
}

.seotext__image img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}
















/* ======== section ======== */
.whatwedo {
    background: #fafafa;
    padding: 80px 0;
}

@media (max-width: 900px) {
    .whatwedo {
        padding: 48px 0;
    }
}

/* ======== title ======== */
.whatwedo__title {
    margin: 0 0 24px;
    color: #1e1e1e;
    font: 700 40px/1.2 'Play', sans-serif;
}

@media (max-width: 900px) {
    .whatwedo__title {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 20px;
    }
}

/* ======== subtitle ======== */
.whatwedo__subtitle {
    margin: 0 0 24px;
    color: #6e6e6e;
    font: 400 18px/1.5 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .whatwedo__subtitle {
        font-size: 15px;
        line-height: 1.75;
        margin-bottom: 20px;
    }
}

/* ======== table wrapper ======== */
.whatwedo__table {
    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 12px;
    overflow: hidden;
}

/* ======== table ======== */
.whatwedo__table table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

/* ======== th ======== */
.whatwedo__table th {
    padding: 20px 32px;
    background: #2a9290;
    color: #fff;
    text-align: left;
    font: 400 17px/1.2 'PT Sans', sans-serif;
    vertical-align: middle;
}

.whatwedo__table th:nth-child(1) { width: 300px; }
.whatwedo__table th:nth-child(2) { width: auto; }
.whatwedo__table th:nth-child(3) { width: 360px; }

/* ======== td ======== */
.whatwedo__table td {
    padding: 22px 32px;
    color: #3c3c3c;
    font: 400 16px/1.5 'PT Sans', sans-serif;
    vertical-align: top;
    border-bottom: 1px solid #e2e2e2;
}

.whatwedo__table td:first-child {
    color: #1e1e1e;
    font-weight: 700;
}

/* ======== zebra ======== */
.whatwedo__table tbody tr:nth-child(odd) {
    background: #fff;
}

.whatwedo__table tbody tr:nth-child(even) {
    background: #f7f7f7;
}

/* убираем бордер у последней строки */
.whatwedo__table tbody tr:last-child td {
    border-bottom: none;
}

/* =====================================================
   МОБАЙЛ — превращаем таблицу в карточки
   ===================================================== */
@media (max-width: 900px) {

    .whatwedo__table {
        background: transparent;
        border: none;
        border-radius: 0;
        overflow: visible;
    }

    .whatwedo__table table,
    .whatwedo__table thead,
    .whatwedo__table tbody,
    .whatwedo__table tr,
    .whatwedo__table th,
    .whatwedo__table td {
        display: block;
        width: 100% !important;
        box-sizing: border-box;  
        max-width: 100%;   
    }

    /* прячем thead */
    .whatwedo__table thead {
        display: none;
    }

    /* карточка */
    .whatwedo__table tbody tr {
        background: #fff !important;
        border: 1px solid #e2e2e2;
        border-radius: 12px;
        padding: 20px;
        margin-bottom: 12px;
    }

    .whatwedo__table tbody tr:last-child {
        margin-bottom: 0;
    }

    /* ячейки */
    .whatwedo__table td {
        padding: 0;
        border: none;
        font-size: 15px;
        line-height: 1.75;
    }

    /* заголовок-лейбл */
    .whatwedo__table td::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 4px;
        color: #2A9290;
        font: 700 12px/1.5 'PT Sans', sans-serif;
        text-transform: uppercase;
        letter-spacing: .02em;
    }

    /* название детали — как заголовок карточки */
    .whatwedo__table td:first-child {
        margin-bottom: 12px;
        padding-bottom: 12px;
        border-bottom: 1px solid #e2e2e2;
        color: #1E1E1E;
        font-size: 17px;
        font-weight: 400;
        line-height: 1.3;
    }

    .whatwedo__table td:first-child::before {
        display: none;
    }

    .whatwedo__table td + td {
        margin-top: 12px;
    }
}




/* ======== section ======== */
.howwedo {
    padding: 80px 0;
}

@media (max-width: 900px) {
    .howwedo {
        padding: 48px 0;
    }
}

/* ======== title ======== */
.howwedo__title {
    margin: 0 0 48px !important;
    color: #1e1e1e;
    font: 700 40px/1.2 'Play', sans-serif;
}

@media (max-width: 900px) {
    .howwedo__title {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 24px !important;
    }
}

/* ======== list (desktop: 5 columns) ======== */
.howwedo__list {
    display: flex;
    gap: 20px;
}

@media (max-width: 900px) {
    .howwedo__list {
        flex-direction: column;
        gap: 0;
    }
}

/* ======== item ======== */
.howwedo__item {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

@media (max-width: 900px) {
    .howwedo__item {
        display: grid;
        grid-template-columns: 32px 1fr;
        column-gap: 16px;
        row-gap: 0;
        /*padding-bottom: 28px;*/
    }
    .howwedo__item:last-child {
        padding-bottom: 0;
    }
}

/* ======== head (обёртка icon + name) ======== */
/* На desktop «разворачиваем» через display:contents, чтобы icon и name вели себя как отдельные flex-элементы */
.howwedo__head {
    display: contents;
}

@media (max-width: 900px) {
    .howwedo__head {
        display: flex;
        grid-column: 2;
        grid-row: 1;
        align-items: center;
        gap: 12px;
        margin-bottom: 10px;
    }
}

/* ======== icon ======== */
.howwedo__icon {
    order: 1;
    align-self: flex-start;
    padding: 20px;
    background: #f0f2f4;
    border-radius: 20px;
    line-height: 0;
}

.howwedo__icon svg {
    display: block;
    width: 36px;
    height: 36px;
}

@media (max-width: 900px) {
    .howwedo__icon {
        order: unset;
        padding: 10px;
        border-radius: 12px;
        flex: 0 0 auto;
    }
    .howwedo__icon svg {
        width: 24px;
        height: 24px;
    }
}

/* ======== step (номер + линия) ======== */
.howwedo__step {
    order: 2;
    display: flex;
    align-items: center;
    gap: 10px;
}

@media (max-width: 900px) {
    .howwedo__step {
        order: unset;
        grid-column: 1;
        grid-row: 1 / span 2;
        flex-direction: column;
        align-items: center;
        gap: 8px;
    }
}

/* ======== num ======== */
.howwedo__num {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    background: #d81e4a;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font: 400 15px/1 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .howwedo__num {
        flex: 0 0 32px;
        width: 32px;
        height: 32px;
        font-size: 13px;
    }
}

/* ======== line ======== */
.howwedo__line {
    flex: 1 1 auto;
    /*
    height: 2px;
    background: #c9ced3;*/
    border-bottom: 2px dashed #c9ced3;
}

.howwedo__item:last-child .howwedo__line {
    opacity: 0;
}

@media (max-width: 900px) {
    .howwedo__line {
        width: 2px;
        height: auto;
        flex: 1 1 auto;
        min-height: 20px;
        background: #d3d8dc;
    }
    .howwedo__item:last-child .howwedo__line {
        display: none;
    }
}

/* ======== name ======== */
.howwedo__name {
    order: 3;
    color: #0b5cad;
    font: 400 19px/1.2 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .howwedo__name {
        order: unset;
        flex: 1 1 auto;
        min-width: 0;
        font-size: 17px;
        line-height: 1.2;
    }
}

/* ======== desc ======== */
.howwedo__desc {
    order: 4;
    color: #6e6e6e;
    font: 400 14px/1.6 'PT Sans', sans-serif;
    
}

@media (max-width: 900px) {
    .howwedo__desc {
        order: unset;
        grid-column: 2;
        grid-row: 2;
        padding-bottom: 28px;
    }
}























/* ======== section ======== */
.errorcodes {
    background: #fafafa;
    padding: 80px 0;
}

@media (max-width: 900px) {
    .errorcodes {
        padding: 48px 0;
    }
}

/* ======== title ======== */
.errorcodes__title {
    margin: 0 0 16px;
    color: #1e1e1e;
    font: 700 40px/1.2 'Play', sans-serif;
}

@media (max-width: 900px) {
    .errorcodes__title {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 12px;
    }
}

/* ======== subtitle ======== */
.errorcodes__subtitle {
    margin: 0 0 40px;
    color: #6e6e6e;
    font: 400 18px/1.5 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .errorcodes__subtitle {
        font-size: 15px;
        line-height: 1.5;
        margin-bottom: 20px;
    }
}

/* ======== list ======== */
.errorcodes__list {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
}

@media (max-width: 900px) {
    .errorcodes__list {
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
    }
}

/* ======== item ======== */
.errorcodes__item {
    position: relative;
}

/* ======== code button ======== */
.errorcodes__code {
    width: 100%;
    height: 80px;
    background: #eaeff3;
    border: none;
    border-radius: 8px;
    color: #2a9290;
    font: 400 28px/1 'PT Sans', sans-serif;
    cursor: pointer;
    transition: background .2s, color .2s;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-tap-highlight-color: transparent;
}

.errorcodes__code:hover,
.errorcodes__item.is-active .errorcodes__code {
    background: #2a9290;
    color: #fff;
}

@media (max-width: 900px) {
    .errorcodes__code {
        height: 60px;
        font-size: 22px;
    }
}

/* ======== popup ======== */
.errorcodes__popup {
    --shift: 0px;
    --arrow-shift: 0px;

    position: absolute;
    bottom: calc(100% + 16px);
    left: 50%;
    transform: translateX(calc(-50% + var(--shift))) translateY(6px);

    width: 360px;
    max-width: calc(100vw - 32px);
    box-sizing: border-box;
    padding: 20px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 12px 32px rgba(13, 51, 76, .18);

    display: flex;
    flex-direction: column;
    gap: 8px;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .18s, transform .18s, visibility .18s;
    z-index: 20;
}

/* невидимый мостик через зазор 16px — чтобы курсор доходил до попапа */
.errorcodes__popup::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    height: 16px;
}

/* стрелочка */
.errorcodes__popup::after {
    content: "";
    position: absolute;
    bottom: -8px;
    left: calc(50% + var(--arrow-shift));
    width: 16px;
    height: 16px;
    background: #fff;
    transform: translateX(-50%) rotate(45deg);
    border-radius: 0 0 4px 0;
}

/* показ при hover или при клике (is-active) */
.errorcodes__item:hover .errorcodes__popup,
.errorcodes__item.is-active .errorcodes__popup {
    opacity: 1;
    visibility: visible;
    transform: translateX(calc(-50% + var(--shift))) translateY(0);
    pointer-events: auto;
}

/* ======== popup head ======== */
.errorcodes__popup-head {
    display: flex;
    align-items: center;
    gap: 10px;
}

.errorcodes__popup-code {
    padding: 4px 10px;
    background: #2a9290;
    border-radius: 6px;
    color: #fff;
    font: 400 16px/1.2 'PT Sans', sans-serif;
    white-space: nowrap;
}

.errorcodes__popup-title {
    flex: 1 1 auto;
    min-width: 0;
    color: #1e1e1e;
    font: 400 18px/1.2 'PT Sans', sans-serif;
}

/* ======== popup desc ======== */
.errorcodes__popup-desc {
    color: #3c3c3c;
    font: 400 14px/1.55 'PT Sans', sans-serif;
}

/* ======== popup btn ======== */
.errorcodes__popup-btn {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #ee2e35;
    font: 400 14px/1.2 'PT Sans', sans-serif;
    text-decoration: none;
    cursor: pointer;
    transition: color .2s;
    background: none;
    border: none;
    padding: 0;
}

.errorcodes__popup-btn:hover {
    color: #c61e24;
}

/* =====================================================
   MOBILE — bottom sheet
   ===================================================== */
@media (max-width: 900px) {

    .errorcodes__popup {
        position: fixed;
        top: auto;
        left: 16px;
        right: 16px;
        bottom: 16px;
        width: auto;
        max-width: none;
        transform: translateY(20px);
    }

    .errorcodes__popup::before,
    .errorcodes__popup::after {
        display: none;
    }

    .errorcodes__item:hover .errorcodes__popup {
        /* на тач-устройствах :hover не должен открывать попап */
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translateY(20px);
    }

    .errorcodes__item.is-active .errorcodes__popup {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }
}








/* ======== section ======== */
.modelist {
    padding: 80px 0;
}

@media (max-width: 900px) {
    .modelist {
        padding: 48px 0;
    }
}

/* ======== title ======== */
.modelist__title {
    margin: 0 0 16px;
    color: #1e1e1e;
    font: 700 40px/1.2 'Play', sans-serif;
}

@media (max-width: 900px) {
    .modelist__title {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 12px;
    }
}

/* ======== subtitle ======== */
.modelist__subtitle {
    margin: 0 0 32px;
    color: #3c3c3c;
    font: 400 22px/1.2  sans-serif;
}

@media (max-width: 900px) {
    .modelist__subtitle {
        font-size: 18px;
        margin-bottom: 20px;
    }
}

/* ======== grid ======== */
.modelist__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

@media (max-width: 1024px) {
    .modelist__grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 900px) {
    .modelist__grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }
}

/* ======== item ======== */
.modelist__item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 8px;
    box-sizing: border-box;
    transition: border-color .2s;
    cursor: pointer;
}

.modelist__item:hover {
    border-color: #2a9290;
}

@media (max-width: 900px) {
    .modelist__item {
        padding: 12px 16px;
    }
}

/* ======== check ======== */
.modelist__check {
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    position: relative;
}

.modelist__check::before {
    content: "";
    position: absolute;
    left: 3px;
    top: 4px;
    width: 11px;
    height: 7px;
    border-left: 2px solid #2a9290;
    border-bottom: 2px solid #2a9290;
    transform: rotate(-45deg);
}

/* ======== name ======== */
.modelist__name {
    flex: 1 1 auto;
    min-width: 0;
    color: #1e1e1e;
    font: 400 17px/1.2 'Play', sans-serif;
    overflow-wrap: break-word;
}

@media (max-width: 900px) {
    .modelist__name {
        font-size: 15px;
        line-height: 1.2;
    }
}

/* ======== CTA блок ======== */
.modelist__cta {
    margin-top: 48px;
    padding: 32px 40px;
    background: #f3f2f5;
    border-radius: 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 32px;
}

@media (max-width: 1100px) {
    .modelist__cta {
        padding: 24px;
        gap: 24px;
    }
}

@media (max-width: 900px) {
    .modelist__cta {
        margin-top: 24px;
        padding: 20px;
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
    }
}

/* ======== info (avatar + текст) ======== */
.modelist__cta-info {
    display: flex;
    align-items: center;
    gap: 28px;
    flex: 1 1 auto;
    min-width: 0;
}

@media (max-width: 900px) {
    .modelist__cta-info {
        gap: 16px;
        align-items: flex-start;
    }
}

/* ======== avatar ======== */
.modelist__cta-avatar {
    flex: 0 0 100px;
    width: 100px;
    height: 100px;
    background: #bfe3f2;
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    line-height: 0;
}

.modelist__cta-avatar img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: bottom center;
}

@media (max-width: 900px) {
    .modelist__cta-avatar {
        flex: 0 0 65px;
        width: 65px;
        height: 65px;
    }
}

/* ======== text ======== */
.modelist__cta-text {
    color: #3c3c3c;
    font: 400 19px/1.5 'PT Sans', sans-serif;
}

.modelist__cta-text strong {
    color: #1e1e1e;
    font-weight: 700;
}

@media (max-width: 900px) {
    .modelist__cta-text {
        font-size: 16px;
        line-height: 1.5;
    }
}

/* ======== форма ======== */
.modelist__cta-form {
    flex: 0 0 auto;
    display: flex;
    gap: 12px;
    align-items: center;
    min-width: 0;
}

@media (max-width: 900px) {
    .modelist__cta-form {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }
}

/* ======== input ======== */
.modelist__cta-form input[type="tel"] {
    width: 280px;
    padding: 17px 20px;
    background: #fff;
    border: 1px solid #d5dadd;
    border-radius: 8px;
    font: 400 16px/24px 'PT Sans', sans-serif;
    color: #1e1e1e;
    box-sizing: border-box;
}

.modelist__cta-form input[type="tel"]::placeholder {
    color: #8a8a8a;
}

@media (max-width: 1100px) {
    .modelist__cta-form input[type="tel"] {
        width: 220px;
    }
}

@media (max-width: 900px) {
    .modelist__cta-form input[type="tel"] {
        width: 100%;
    }
}

/* ======== button ======== */
.modelist__cta-btn {
    flex: 0 0 auto;
    padding: 18px 32px;
    background: #ee2e35;
    border: none;
    border-radius: 8px;
    color: #fff;
    font: 400 17px/1.2 'Play', sans-serif;
    cursor: pointer;
    white-space: nowrap;
    transition: background .2s;
}

.modelist__cta-btn:hover {
    background: #d4232a;
}

@media (max-width: 900px) {
    .modelist__cta-btn {
        width: 100%;
    }
}




















/* ======== section ======== */
.steps {
    padding: 80px 0;
}

@media (max-width: 900px) {
    .steps {
        padding: 48px 0;
    }
}

/* ======== title ======== */
.steps__title {
    margin: 0 0 40px;
    color: #1e1e1e;
    font: 700 40px/1.2 'Play', sans-serif;
}

@media (max-width: 900px) {
    .steps__title {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 20px;
    }
}

/* ======== track (grid desktop / swiper mobile) ======== */
.steps__track {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

@media (max-width: 1024px) {
    .steps__track {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* ======== MOBILE — scroll-snap карусель ======== */
@media (max-width: 900px) {
    .steps__wrapper {
        margin-right: -16px;   /* выпускаем карусель за правый край container */
    }

    .steps__track {
        display: flex;
        grid-template-columns: none;
        gap: 12px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        padding-right: 16px;   /* отступ справа, чтобы последняя карточка не прилипала к краю */
        padding-bottom: 4px;   /* чтобы box-shadow/скроллбар не обрезались */
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none; /* Firefox */
    }

    .steps__track::-webkit-scrollbar {
        display: none;         /* Chrome/Safari */
    }
}

/* ======== item ======== */
.steps__item {
    background: #e4f4fb;
    border-radius: 12px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-height: 300px;
    box-sizing: border-box;
    min-width: 0;
}

@media (max-width: 900px) {
    .steps__item {
        flex: 0 0 290px;
        width: 290px;
        padding: 20px;
        scroll-snap-align: start;
        min-height: 300px;
    }
}

/* ======== item head ======== */
.steps__item-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* ======== icon ======== */
.steps__icon {
    flex: 0 0 auto;
    padding: 16px;
    background: #fff;
    border-radius: 32px;
    line-height: 0;
    display: inline-flex;
}

.steps__icon svg {
    display: block;
    width: 32px;
    height: 32px;
}

/* ======== num ======== */
.steps__num {
    color: #b7dcec;
    font: 700 44px/1.2 'Play', sans-serif;
}

/* ======== name ======== */
.steps__name {
    color: #1e1e1e;
    font: 700 19px/1.2 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .steps__name {
        font-size: 18px;
    }
}

/* ======== desc ======== */
.steps__desc {
    color: #3c3c3c;
    font: 400 15px/1.55 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .steps__desc {
        font-size: 14px;
        line-height: 1.55;
    }
}

/* ======== accent ======== */
.steps__item--accent {
    background: #2a9290;
    justify-content: space-between;
    gap: 16px;
}

.steps__accent-top {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.steps__accent-title {
    color: #fff;
    font: 700 22px/1.2 'PT Sans', sans-serif;
}

.steps__accent-desc {
    color: #fff;
    font: 400 15px/1.55 'PT Sans', sans-serif;
}

.steps__accent-phone {
    color: #fff;
    font: 700 26px/1.2 'Play', sans-serif;
    text-decoration: none;
    white-space: nowrap;
}

.steps__accent-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 14px 20px;
    background: #fff;
    border: none;
    border-radius: 8px;
    color: #2a9290;
    font: 400 14px/1.2 'PT Sans', sans-serif;
    text-transform: uppercase;
    cursor: pointer;
    transition: background .2s;
}

.steps__accent-btn:hover {
    background: #e6f3f2;
}

/* ======== nav (dots + arrows) ======== */
.steps__nav {
    display: none;
}

@media (max-width: 900px) {
    .steps__nav {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-top: 24px;
        padding-right: 16px;
    }
}

/* ======== dots ======== */
.steps__dots {
    display: flex;
    align-items: center;
    gap: 6px;
}

.steps__dot {
        all: unset;
    width: 8px;
    height: 8px;
    background: #c9d6de;
    border-radius: 4px;
    transition: width .25s, background .25s;
    cursor: pointer;
}

.steps__dot.is-active {
    width: 20px;
    background: #0b5cad;
}

/* ======== arrows ======== */
.steps__arrows {
    display: flex;
    gap: 8px;
}

.steps__arrow {
    width: 40px;
    height: 40px;
    padding: 10px;
    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 50%;
    box-shadow: 0 8px 24px rgba(13, 51, 76, .10);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: border-color .2s, opacity .2s;
}

.steps__arrow:hover {
    border-color: #0b5cad;
}

.steps__arrow:disabled {
    opacity: .35;
    cursor: default;
}





















/* ======== section ======== */
.ourbenefits {
    padding: 80px 0;
}

@media (max-width: 900px) {
    .ourbenefits {
        padding: 48px 0;
    }
}

/* ======== title ======== */
.ourbenefits__title {
    margin: 0 0 40px;
    color: #1e1e1e;
    font: 700 40px/1.2 'Play', sans-serif;
}

@media (max-width: 900px) {
    .ourbenefits__title {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 20px;
    }
}

/* ======== grid ======== */
.ourbenefits__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

@media (max-width: 900px) {
    .ourbenefits__grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }
}

/* ======== item ======== */
.ourbenefits__item {
    background: #f0f0f0;
    border-radius: 4px;
    padding: 40px 32px 40px 48px;
    display: flex;
    align-items: center;
    gap: 24px;
    min-height: 262px;
    box-sizing: border-box;
}

@media (max-width: 900px) {
    .ourbenefits__item {
        padding: 20px;
        border-radius: 10px;
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
        min-height: 0;
    }
}

/* ======== content (текст + ссылка) ======== */
.ourbenefits__content {
    flex: 1 1 auto;
    min-width: 0;
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 20px;
}

@media (max-width: 900px) {
    .ourbenefits__content {
        gap: 14px;
        align-self: auto;
    }
}

/* ======== text ======== */
.ourbenefits__text {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* ======== name ======== */
.ourbenefits__name {
    color: #1e1e1e;
    font: 700 22px/1.2 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .ourbenefits__name {
        font-size: 18px;
        line-height: 1.2;
    }
}

/* ======== desc ======== */
.ourbenefits__desc {
    color: #7a7a7a;
    font: 700 15px/1.55 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .ourbenefits__desc {
        font-size: 14px;
        line-height: 1.55;
    }
}

/* ======== link ======== */
.ourbenefits__link {
    align-self: flex-start;
    color: #0b5cad;
    font: 400 18px/1.2 'PT Sans', sans-serif;
    text-decoration: underline;
    transition: color .2s;
}

.ourbenefits__link:hover {
    color: #084a8a;
}

@media (max-width: 900px) {
    .ourbenefits__link {
        font-size: 16px;
    }
}

/* ======== icon circle ======== */
.ourbenefits__icon {
    flex: 0 0 auto;
    padding: 34px;
    background: #fff;
    border-radius: 50%;
    line-height: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.ourbenefits__icon svg {
    display: block;
    width: 72px;
    height: 72px;
}

/* мобильное состояние — иконка сверху, уменьшенная */
@media (max-width: 900px) {
    .ourbenefits__icon {
        padding: 16px;
        order: -1;
    }
    .ourbenefits__icon svg {
        width: 32px;
        height: 32px;
    }
}














/* ======== seotext — серый модификатор ======== */
.seotext--gray {
    background: #fafafa;
}

/* ======== заголовок больше, чем в обычном seotext ======== */
.seotext--gray .seotext__title {
    font-size: 40px;
    line-height: 1.2;
    margin-bottom: 24px;
}

@media (max-width: 900px) {
    .seotext--gray .seotext__title {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 16px;
    }
}

/* ======== текст больше (18px, а не 16px) ======== */
.seotext--gray .seotext__text {
    font-size: 18px;
    line-height: 1.65;
    margin-bottom: 24px;
}

@media (max-width: 900px) {
    .seotext--gray .seotext__text {
        font-size: 15px;
        line-height: 1.65;
        margin-bottom: 16px;
    }
}

/* ======== checklist (список с галочками в квадрате) ======== */
.seotext__checklist {
    list-style: none;
    margin: 0 0 24px;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

@media (max-width: 900px) {
    .seotext__checklist {
        gap: 10px;
        margin-bottom: 16px;
    }
}

.seotext__checklist li {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 20px;
    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 8px;
    color: #3c3c3c;
    font: 400 17px/1.5 'PT Sans', sans-serif;
    box-sizing: border-box;
}

@media (max-width: 900px) {
    .seotext__checklist li {
        padding: 12px 14px;
        font-size: 15px;
        line-height: 1.5;
    }
}

.seotext__checklist li::before {
    content: "";
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    background: #e6f3f2;
    border-radius: 50%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18' fill='none'%3E%3Cpath d='M4 9.5L7.5 12.5L14 5.5' stroke='%232A9290' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 18px 18px;
    box-sizing: border-box;
}

/* ======== warning (жёлтая плашка) ======== */
.seotext__warning {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 20px 24px;
    background: #fff5e6;
    border-left: 4px solid #f5a524;
    border-radius: 8px;
    box-sizing: border-box;
}

@media (max-width: 900px) {
    .seotext__warning {
        padding: 16px;
    }
}

.seotext__warning-icon {
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    line-height: 0;
}

.seotext__warning-icon svg {
    display: block;
    width: 28px;
    height: 28px;
}

@media (max-width: 900px) {
    .seotext__warning-icon {
        flex: 0 0 24px;
        width: 24px;
        height: 24px;
    }
    .seotext__warning-icon svg {
        width: 24px;
        height: 24px;
    }
}

.seotext__warning-text {
    flex: 1 1 auto;
    min-width: 0;
    color: #3c3c3c;
    font: 400 17px/1.65 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .seotext__warning-text {
        font-size: 15px;
        line-height: 1.65;
    }
}





/* ======== section ======== */
.faque {
    padding: 80px 0;
}

@media (max-width: 900px) {
    .faque {
        padding: 48px 0;
    }
}

/* ======== title ======== */
.faque__title {
    margin: 0 0 40px;
    color: #1e1e1e;
    font: 700 40px/1.2 'Play', sans-serif;
}

@media (max-width: 900px) {
    .faque__title {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 20px;
    }
}

/* ======== list ======== */
.faque__list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

@media (max-width: 900px) {
    .faque__list {
        gap: 10px;
    }
}

/* ======== item ======== */
.faque__item {
    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 12px;
    transition: background .2s, border-color .2s;
    box-sizing: border-box;
}

.faque__item--active {
    background: #f4fafa;
    border-color: #2a9290;
}

/* ======== head (кнопка) ======== */
.faque__head {
    all: unset;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    padding: 24px 32px;
    cursor: pointer;
}

@media (max-width: 900px) {
    .faque__head {
        padding: 18px 16px;
        gap: 16px;
    }
}

/* ======== name ======== */
.faque__name {
    flex: 1 1 auto;
    min-width: 0;
    color: #1e1e1e;
    font: 700 20px/1.2 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .faque__name {
        font-size: 17px;
        line-height: 1.2;
    }
}

/* ======== icon (плюс/минус в круге) ======== */
.faque__icon {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #f0f0f0;
    position: relative;
    transition: background .2s;
}

@media (max-width: 900px) {
    .faque__icon {
        flex: 0 0 34px;
        width: 34px;
        height: 34px;
    }
}

/* горизонтальная черта плюса */
.faque__icon::before,
.faque__icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: #1e1e1e;
    transition: background .2s, transform .25s;
}

/* горизонтальная */
.faque__icon::before {
    width: 12px;
    height: 1.67px;
    transform: translate(-50%, -50%);
}

/* вертикальная — исчезает в активном состоянии */
.faque__icon::after {
    width: 1.67px;
    height: 12px;
    transform: translate(-50%, -50%);
}

/* активное состояние — иконка меняется на минус, круг зелёный */
.faque__item--active .faque__icon {
    background: #2a9290;
}

.faque__item--active .faque__icon::before,
.faque__item--active .faque__icon::after {
    background: #fff;
}

.faque__item--active .faque__icon::after {
    transform: translate(-50%, -50%) scaleY(0);
}

/* ======== body ======== */
.faque__body {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows .3s ease;
}

.faque__item--active .faque__body {
    grid-template-rows: 1fr;
}

.faque__body-inner {
    overflow: hidden;
    padding: 0 32px;
    color: #3c3c3c;
    font: 400 17px/1.65 'PT Sans', sans-serif;
}

/* добавляем отступ снизу только когда открыто, чтобы не мешало закрытому */
.faque__item--active .faque__body-inner {
    padding-bottom: 24px;
}

@media (max-width: 900px) {
    .faque__body-inner {
        padding: 0 16px;
        font-size: 15px;
        line-height: 1.65;
    }
    .faque__item--active .faque__body-inner {
        padding-bottom: 18px;
    }
}














/* ======== section ======== */
.zones {
    background: #fafafa;
    padding: 80px 0;
}

@media (max-width: 900px) {
    .zones {
        padding: 48px 0;
    }
}

/* ======== grid ======== */
.zones__grid {
    display: grid;
    grid-template-columns: 1fr 640px;
    gap: 56px;
    align-items: start;
}

@media (max-width: 1100px) {
    .zones__grid {
        grid-template-columns: 1fr 480px;
        gap: 40px;
    }
}

@media (max-width: 900px) {
    .zones__grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }
}

/* ======== content ======== */
.zones__content {
    display: flex;
    flex-direction: column;
    gap: 20px;
    min-width: 0;
}

@media (max-width: 900px) {
    .zones__content {
        gap: 16px;
    }
}

/* ======== title ======== */
.zones__title {
    margin: 0;
    color: #1e1e1e;
    font: 700 40px/1.2 'Play', sans-serif;
}

@media (max-width: 900px) {
    .zones__title {
        font-size: 24px;
        line-height: 1.2;
    }
}

/* ======== text ======== */
.zones__text {
    margin: 0;
    color: #3c3c3c;
    font: 400 17px/1.65 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .zones__text {
        font-size: 15px;
        line-height: 1.65;
    }
}

/* ======== subhead (иконка + заголовок) ======== */
.zones__subhead {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 8px;
}

.zones__subhead-icon {
    flex: 0 0 26px;
    width: 26px;
    height: 26px;
    line-height: 0;
}

.zones__subhead-icon svg {
    display: block;
    width: 100%;
    height: 100%;
}

@media (max-width: 900px) {
    .zones__subhead-icon {
        flex: 0 0 22px;
        width: 22px;
        height: 22px;
    }
}

.zones__subhead-text {
    flex: 1 1 auto;
    min-width: 0;
    color: #1e1e1e;
    font: 400 24px/1.2 'PT Sans', sans-serif;
}

@media (max-width: 900px) {
    .zones__subhead-text {
        font-size: 20px;
    }
}

/* ======== chips ======== */
.zones__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.zones__chip {
    display: inline-flex;
    align-items: center;
    padding: 6px 14px;
    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 20px;
    color: #2a9290;
    font: 400 14px/1.2 'Play', sans-serif;
    white-space: nowrap;
}

/* ======== actions ======== */
.zones__actions {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-top: 8px;
}

@media (max-width: 900px) {
    .zones__actions {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }
}

/* ======== button ======== */
.zones__btn {
    flex: 0 0 auto;
    padding: 18px 32px;
    background: #ee2e35;
    border: none;
    border-radius: 8px;
    color: #fff;
    font: 400 16px/1.2 'Play', sans-serif;
    text-transform: uppercase;
    cursor: pointer;
    transition: background .2s;
}

.zones__btn:hover {
    background: #d4232a;
}

@media (max-width: 900px) {
    .zones__btn {
        width: 100%;
    }
}

/* ======== phone ======== */
.zones__phone {
    color: #1e1e1e;
    font: 700 24px/1.2 'Play', sans-serif;
    text-decoration: none;
    white-space: nowrap;
    transition: color .2s;
}

.zones__phone:hover {
    color: #0b5cad;
}

@media (max-width: 900px) {
    .zones__phone {
        font-size: 22px;
        text-align: center;
    }
}

/* ======== map ======== */
.zones__map {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    min-width: 0;
    align-self: center;
}

/* ======== map label ======== */
.zones__map-label {
    color: #0b5cad;
    font: 400 18px/1.2 'PT Sans', sans-serif;
    text-align: center;
}

@media (max-width: 900px) {
    .zones__map-label {
        font-size: 16px;
    }
}

/* ======== map image ======== */
.zones__map-img {
    width: 100%;
    border-radius: 16px;
    overflow: hidden;
    background: #eef3f5;
    line-height: 0;
}

.zones__map-img img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}











/* ======== section ======== */
.footerredis {
    background: #1f1f1f;
    padding: 64px 0 32px;
}

@media (max-width: 900px) {
    .footerredis {
        padding: 40px 0 24px;
    }
}

/* ======== top (3 колонки) ======== */
.footerredis__top {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 48px;
    align-items: start;
}

@media (max-width: 1100px) {
    .footerredis__top {
        gap: 32px;
    }
}

@media (max-width: 900px) {
    .footerredis__top {
        grid-template-columns: 1fr;
        gap: 28px;
    }
}

/* ======== brand ======== */
.footerredis__brand {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 0;
}

.footerredis__logo {
    color: #fff;
    font: 700 32px/1 'Play', sans-serif;
}

.footerredis__brand-sub {
    color: #fff;
    opacity: .6;
    font: 400 13px/1.5 'PT Sans', sans-serif;
}

.footerredis__brand-text {
    color: #fff;
    opacity: .8;
    font: 400 14px/1.5 'PT Sans', sans-serif;
}

/* ======== nav (2 колонки) ======== */
.footerredis__nav {
    display: grid;
    grid-template-columns: 240px 160px;
    gap: 48px;
}

@media (max-width: 1100px) {
    .footerredis__nav {
        grid-template-columns: 1fr 1fr;
        gap: 24px;
    }
}

@media (max-width: 900px) {
    .footerredis__nav {
        grid-template-columns: 1fr 1fr;
        gap: 16px;
    }
}

.footerredis__col {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
}

.footerredis__col-title {
    color: #fff;
    font: 400 17px/1.2 'PT Sans', sans-serif;
    margin-bottom: 2px;
}

.footerredis__link {
    color: #fff;
    opacity: .7;
    font: 400 14px/1.5 'PT Sans', sans-serif;
    text-decoration: none;
    transition: opacity .2s;
}

.footerredis__link:hover {
    opacity: 1;
}

/* ======== contact ======== */
.footerredis__contact {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    min-width: 0;
}

@media (max-width: 900px) {
    .footerredis__contact {
        align-items: stretch;
    }
}

.footerredis__phone {
    color: #fff;
    font: 700 28px/1.2 'Play', sans-serif;
    text-decoration: none;
    white-space: nowrap;
    transition: color .2s;
}

.footerredis__phone:hover {
    color: #2a9290;
}

.footerredis__contact-sub {
    color: #fff;
    opacity: .7;
    font: 400 14px/1.5 'PT Sans', sans-serif;
}

/* ======== button ======== */
.footerredis__btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 14px 24px;
    background: #ee2e35;
    border: none;
    border-radius: 8px;
    color: #fff;
    font: 400 14px/1.2 'Play', sans-serif;
    text-transform: uppercase;
    cursor: pointer;
    transition: background .2s;
}

.footerredis__btn:hover {
    background: #d4232a;
}

@media (max-width: 900px) {
    .footerredis__btn {
        width: 100%;
    }
}

/* ======== pay chips ======== */
.footerredis__pay {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.footerredis__pay-item {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    background: #fff;
    border-radius: 6px;
    color: #333;
    font: 400 12px/1.2 'PT Sans', sans-serif;
    white-space: nowrap;
}

/* ======== bottom ======== */
.footerredis__bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    margin-top: 48px;
    padding-top: 24px;
    border-top: 1px solid #3a3a3a;
}

@media (max-width: 900px) {
    .footerredis__bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        margin-top: 28px;
    }
}

.footerredis__copy {
    color: #fff;
    opacity: .5;
    font: 400 13px/1.5 'PT Sans', sans-serif;
}

.footerredis__policy {
    color: #fff;
    opacity: .5;
    font: 400 13px/1.5 'PT Sans', sans-serif;
    text-decoration: underline;
    transition: opacity .2s;
}

.footerredis__policy:hover {
    opacity: .8;
}
/* ======== contact link (Контакты) ======== */
.footerredis__contact-link {
    color: #fff;
    opacity: .7;
    font: 400 14px/1.5 'PT Sans', sans-serif;
    text-decoration: none;
    transition: opacity .2s;
}

.footerredis__contact-link:hover {
    opacity: 1;
}

/* ======== pay-item с картинками ======== */
.footerredis__pay-item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 10px;
    background: #fff;
    border-radius: 6px;
    min-height: 28px;
    box-sizing: border-box;
}

.footerredis__pay-item img {
    display: block;
    height: 16px;
    width: auto;
}

/* ======== legal (дисклеймер) ======== */
.footerredis__legal {
    margin-top: 16px;
    color: #fff;
    opacity: .35;
    font: 400 12px/1.5 'PT Sans', sans-serif;
}

