/* ===========================================================
 * Services v3 — палитра auto108.ru (v2-совместимая)
 * Primary: #238EE3 · Success: #25D366 · Dark: #021138/#031239
 * Light accents: #EDF2F8 · #E3F0FB · #F9F9FA
 * Text: #4A4A4A
 * =========================================================== */

.svc-v3 {
    color: #4A4A4A;
    line-height: 1.5;
    font-size: 15px;
}
.svc-v3 * { box-sizing: border-box; }
.svc-v3 ul { list-style: none; padding: 0; margin: 0; }
.svc-v3 a { color: #238EE3; text-decoration: none; }
.svc-v3 a:hover { text-decoration: underline; }

/* Section base */
.svc-v3-section { padding: 80px 20px; }
.svc-v3-section__in { max-width: 1170px; margin: 0 auto; }
.svc-v3-section--white  { background: #ffffff; }
.svc-v3-section--grey   { background: #F9F9FA; }
.svc-v3-section--dark {
    background: linear-gradient(270deg, #828FAF 0%, #021138 50%, #031239 100%);
    color: #fff;
}
.svc-v3-section--accent {
    background: linear-gradient(135deg, #238EE3 0%, #1A6DB8 100%);
    color: #fff;
}

/* Заголовки */
.svc-v3-h2 {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.2;
    color: #333333;
    margin: 0 0 28px;
}
.svc-v3-h2--white { color: #fff; }

/* ===== Buttons (v2-стиль: UPPERCASE, 6px radius, 13px) ===== */
.svc-v3-btn {
    display: inline-block;
    padding: 12px 25px;
    border: none;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .3px;
    text-align: center;
    cursor: pointer;
    text-decoration: none;
    color: #fff;
    transition: background .2s, transform .15s;
    font-family: inherit;
}
.svc-v3-btn:hover { text-decoration: none; transform: translateY(-1px); }
.svc-v3-btn--accent { background: #238EE3; color: #fff; }
.svc-v3-btn--accent:hover { background: #1A6DB8; }
.svc-v3-btn--dark   { background: #021138; color: #fff; }
.svc-v3-btn--dark:hover { background: #031239; }
.svc-v3-btn--wa     { background: #25D366; color: #fff; }
.svc-v3-btn--wa:hover { background: #1ebe5a; }
.svc-v3-btn--ghost  { background: transparent; color: #fff; border: 2px solid #fff; padding: 10px 23px; }
.svc-v3-btn--ghost:hover { background: #fff; color: #021138; }

/* Перебиваем глобальное `.svc-v3 a { color: #238EE3 }` для кнопок-ссылок */
.svc-v3 a.svc-v3-btn--accent,
.svc-v3 a.svc-v3-btn--dark,
.svc-v3 a.svc-v3-btn--wa,
.svc-v3 a.svc-v3-btn--ghost { color: #fff; }
.svc-v3 a.svc-v3-btn--ghost:hover { color: #021138; }
.svc-v3-btn--wide   { display: block; width: 100%; }

/* ===== 1. HERO (v2 banner-second gradient) ===== */
/* Full-bleed: растягиваем заливку до краёв viewport, контент внутри
   остаётся центрированным 1170px через .svc-v3-hero__in. */
.svc-v3-hero,
.svc-v3-quick-cta {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}
.svc-v3-hero {
    background: linear-gradient(270deg, #828FAF 0%, #021138 50%, #031239 100%);
    color: #fff;
    padding: 80px 20px 90px;
}
.svc-v3-hero__in {
    max-width: 1170px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 50px;
    align-items: center;
}
.svc-v3-hero__in--no-price { grid-template-columns: 1fr; }
.svc-v3-hero__content { min-width: 0; }
.svc-v3-hero__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
}
.svc-v3-hero__badge {
    background: rgba(35, 142, 227, .2);
    color: #fff;
    border: 1px solid rgba(35, 142, 227, .5);
    padding: 6px 14px;
    border-radius: 3px;
    font-size: 12px;
    font-weight: 500;
}
.svc-v3-hero__h1 {
    font-size: 38px;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 16px;
    color: #fff;
}
.svc-v3-hero__bluf {
    font-size: 15px;
    line-height: 1.65;
    opacity: .85;
    margin: 0 0 24px;
    max-width: 620px;
}
.svc-v3-hero__trust {
    display: flex;
    gap: 30px;
    margin-bottom: 28px;
    flex-wrap: wrap;
}
.svc-v3-hero__trust-item strong {
    display: block;
    font-size: 26px;
    color: #238EE3;
    font-weight: 700;
    line-height: 1.1;
}
.svc-v3-hero__trust-item {
    font-size: 12px;
    opacity: .8;
}
.svc-v3-hero__buttons {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}
.svc-v3-hero__price-card {
    background: #fff;
    color: #4A4A4A;
    padding: 26px;
    border-radius: 6px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, .3);
}
.svc-v3-hero__price-card h3 {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: #888;
    margin: 0 0 14px;
}
.svc-v3-hero__price-card ul { margin: 0 0 16px; }
.svc-v3-hero__price-card li {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid #eee;
    font-size: 14px;
}
.svc-v3-hero__price-card li:last-child { border-bottom: none; }
.svc-v3-hero__price-card li b { color: #238EE3; white-space: nowrap; font-weight: 700; }

/* ===== 2. QUICK CTA ===== */
.svc-v3-quick-cta {
    background: #238EE3;
    color: #fff;
    padding: 16px 20px;
}
.svc-v3-quick-cta__in {
    max-width: 1170px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    font-size: 14px;
    font-weight: 500;
}
.svc-v3-quick-cta a { color: #fff; font-weight: 700; text-decoration: underline; }
.svc-v3-quick-cta .svc-v3-btn { background: #fff; color: #238EE3; }
.svc-v3-quick-cta .svc-v3-btn:hover { background: #EDF2F8; }

/* ===== 3. Проблемы (HTML-блок: <ul><li><span>icon</span><strong>title</strong></li></ul>) ===== */
.svc-v3-problems-html ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}
.svc-v3-problems-html li {
    background: #fff;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.09);
    border-radius: 6px;
    padding: 24px 14px;
    text-align: center;
    line-height: 1.35;
    color: #4A4A4A;
    transition: transform .2s, box-shadow .2s;
}
.svc-v3-problems-html li:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 28px rgba(35, 142, 227, .15);
}
.svc-v3-problems-html li span {
    font-size: 30px;
    display: block;
    line-height: 1;
    margin-bottom: 10px;
}
.svc-v3-problems-html li strong {
    display: block;
    font-weight: 700;
    font-size: 13px;
    color: #333333;
    line-height: 1.35;
}

/* ===== 4. Карточки услуг (HTML-блок: <section><h3>N</h3><p>D</p><strong>price</strong></section>) ===== */
.svc-v3-cards-html {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.svc-v3-cards-html section {
    background: #fff;
    border-radius: 6px;
    padding: 28px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.09);
    display: flex;
    flex-direction: column;
    transition: transform .2s, box-shadow .2s;
    cursor: pointer;
}
.svc-v3-cards-html section:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 32px rgba(35, 142, 227, .15);
}
.svc-v3-cards-html h3 {
    font-size: 17px;
    font-weight: 700;
    color: #333333;
    margin: 0 0 12px;
    line-height: 1.3;
}
.svc-v3-cards-html p {
    font-size: 13px;
    color: #4A4A4A;
    line-height: 1.6;
    margin: 0 0 16px;
    flex: 1;
}
.svc-v3-cards-html strong {
    font-size: 18px;
    font-weight: 700;
    color: #238EE3;
}

/* ===== 5. Сравнительная таблица ===== */
.svc-v3-comparison { border-radius: 6px; overflow: hidden; box-shadow: 0 4px 20px rgba(0,0,0,.09); }
.svc-v3-comparison table { width: 100%; border-collapse: collapse; font-size: 14px; }
.svc-v3-comparison th {
    background: #021138;
    color: #fff;
    padding: 14px 18px;
    text-align: left;
    font-weight: 700;
}
.svc-v3-comparison td {
    padding: 12px 18px;
    background: #fff;
    border-bottom: 1px solid #EDF2F8;
}
.svc-v3-comparison tr:last-child td { border-bottom: none; }
.svc-v3-comparison tr:nth-child(even) td { background: #EDF2F8; }

/* ===== 6. Workflow (HTML-блок: <ol><li><strong>title</strong> — desc</li></ol>) ===== */
.svc-v3-workflow-html ol {
    list-style: none;
    counter-reset: wf;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 18px;
}
.svc-v3-workflow-html li {
    counter-increment: wf;
    background: #fff;
    border-radius: 6px;
    padding: 76px 18px 22px;
    text-align: center;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.09);
    font-size: 12.5px;
    color: #4A4A4A;
    line-height: 1.5;
    position: relative;
}
.svc-v3-workflow-html li::before {
    content: counter(wf);
    position: absolute;
    top: 22px;
    left: 50%;
    transform: translateX(-50%);
    width: 50px;
    height: 50px;
    background: #238EE3;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    font-weight: 700;
}
.svc-v3-workflow-html li strong {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #333333;
    margin-bottom: 6px;
}

/* ===== 7. Before/After ===== */
.svc-v3-ba {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 14px;
}
.svc-v3-ba__compare {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: 6px;
    cursor: col-resize;
    user-select: none;
    background: #EDF2F8;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.09);
    touch-action: none;
}
.svc-v3-ba__img {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    pointer-events: none;
    -webkit-user-drag: none;
    user-drag: none;
}
.svc-v3-ba__img--after { clip-path: inset(0 0 0 50%); }
.svc-v3-ba__handle {
    position: absolute;
    top: 0; bottom: 0;
    left: 50%;
    width: 3px;
    background: #fff;
    transform: translateX(-50%);
    z-index: 2;
}
.svc-v3-ba__handle::after {
    content: '';
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 42px; height: 42px;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 3px 12px rgba(0,0,0,.4);
}
.svc-v3-ba__handle::before {
    content: '\2194';
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    font-size: 18px;
    font-weight: 700;
    color: #238EE3;
}
.svc-v3-ba__label {
    position: absolute;
    bottom: 14px;
    padding: 4px 12px;
    background: rgba(2, 17, 56, .75);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 3px;
    z-index: 1;
}
.svc-v3-ba__label--before { left: 14px; }
.svc-v3-ba__label--after  { right: 14px; }
.svc-v3-ba__hint {
    text-align: center;
    font-size: 13px;
    color: #999;
    margin: 0;
}

/* ===== 8. Inline CTA (accent gradient blue) ===== */
.svc-v3-section--compact { padding: 36px 20px; }

.svc-v3-inline-cta__title {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
}
.svc-v3-inline-cta__sub {
    font-size: 15px;
    line-height: 1.4;
    opacity: .9;
    margin-top: 6px;
}
.svc-v3-inline-cta__buttons {
    display: flex;
    gap: 12px;
    flex-shrink: 0;
    flex-wrap: wrap;
}

.svc-v3-inline-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
    font-size: 18px;
    font-weight: 600;
    color: #fff;
}
.svc-v3-section--accent .svc-v3-btn--dark {
    background: #fff;
    color: #238EE3;
}
.svc-v3-section--accent .svc-v3-btn--dark:hover {
    background: #EDF2F8;
}

/* ===== 9. Гарантии (HTML-блок: <ul><li><span>icon</span><strong>title</strong> — desc</li></ul>) ===== */
.svc-v3-guarantees-html ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}
.svc-v3-guarantees-html li {
    background: #fff;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.09);
    border-radius: 6px;
    padding: 26px 22px;
    font-size: 13px;
    line-height: 1.5;
    color: #4A4A4A;
}
.svc-v3-guarantees-html li span {
    font-size: 28px;
    display: block;
    line-height: 1;
    margin-bottom: 10px;
}
.svc-v3-guarantees-html li strong {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #333333;
    margin-bottom: 6px;
    line-height: 1.3;
}

/* ===== 10. Эксперт ===== */
.svc-v3-expert {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 30px;
    align-items: start;
    background: #fff;
    padding: 36px;
    border-radius: 6px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.09);
}
.svc-v3-expert__photo {
    width: 240px;
    height: 240px;
    border-radius: 6px;
    overflow: hidden;
    background: #EDF2F8;
}
.svc-v3-expert__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.svc-v3-expert__name {
    font-size: 20px;
    font-weight: 700;
    color: #333333;
    margin-bottom: 6px;
}
.svc-v3-expert__meta {
    font-size: 13px;
    color: #888;
    margin-bottom: 18px;
}
.svc-v3-expert__quote {
    border-left: 4px solid #238EE3;
    background: #EDF2F8;
    padding: 14px 20px;
    font-size: 14px;
    font-style: italic;
    color: #4A4A4A;
    line-height: 1.7;
    border-radius: 0 6px 6px 0;
    margin: 0;
}

/* ===== 11. Прайс (v2 стиль — #EDF2F8 фон) ===== */
.svc-v3-price {
    margin: 0 0 20px;
}
.svc-v3-price__item {
    background: #EDF2F8;
    border-radius: 6px;
    padding: 16px 20px 16px 30px;
    margin-bottom: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
}
.svc-v3-price__item:last-child { margin-bottom: 0; }
.svc-v3-price__name { font-size: 14px; color: #4A4A4A; }
.svc-v3-price__value {
    font-size: 15px;
    font-weight: 700;
    color: #238EE3;
    white-space: nowrap;
}

/* ===== 14. Lead CTA (dark bg, без формы — просто кнопка → попап) ===== */
.svc-v3-section--dark .svc-v3-h2 { color: #fff; }
.svc-v3-lead-cta {
    text-align: center;
    max-width: 640px;
    margin: 0 auto;
}
.svc-v3-lead-cta .svc-v3-h2 { margin: 0 0 14px; }
.svc-v3-lead-cta__subtitle {
    font-size: 16px;
    line-height: 1.55;
    color: rgba(255, 255, 255, .85);
    margin: 0 0 28px;
}
.svc-v3-lead-cta__btn {
    min-width: 280px;
    padding: 16px 32px;
    font-size: 14px;
}
.svc-v3-lead-cta__privacy {
    font-size: 12px;
    color: rgba(255, 255, 255, .55);
    margin: 18px 0 0;
}
.svc-v3-lead-cta__privacy a { color: rgba(255, 255, 255, .75); text-decoration: underline; }

/* ===== 13. FAQ (HTML-блок: <details><summary><h3>Q</h3></summary><p>A</p></details>) ===== */
.svc-v3-faq-html {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.svc-v3-faq-html details {
    background: #fff;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.09);
    border-radius: 6px;
    overflow: hidden;
}
.svc-v3-faq-html summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 18px 24px;
    cursor: pointer;
    list-style: none;
    position: relative;
}
.svc-v3-faq-html summary::-webkit-details-marker { display: none; }
.svc-v3-faq-html summary::after {
    content: '▾';
    font-size: 16px;
    color: #238EE3;
    transition: transform .2s;
    flex-shrink: 0;
    margin-left: auto;
}
.svc-v3-faq-html details[open] summary::after { transform: rotate(180deg); }
.svc-v3-faq-html summary h3 {
    font-size: 15px;
    font-weight: 700;
    color: #333333;
    margin: 0;
    line-height: 1.3;
    flex: 1;
}
.svc-v3-faq-html details > p,
.svc-v3-faq-html details > div {
    padding: 0 24px 20px;
    font-size: 14px;
    line-height: 1.65;
    color: #4A4A4A;
    margin: 0;
}
.svc-v3-faq-html details > p + p {
    padding-top: 10px;
}
.svc-v3-faq-html details a {
    color: #238EE3;
}

/* ===== 14. Reviews ===== */
.svc-v3-reviews {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 20px;
}

/* ===== 15. Gallery (swiper) ===== */
/* Галерея в стиле v2 (centeredSlides + loop, активный слайд крупнее боковых) */
.svc-v3-gallery {
    position: relative;
    overflow: hidden;
    max-width: 100%;
    padding: 80px 0;     /* место для scale(1.4) активного слайда — иначе он обрезается соседними секциями */
}
.svc-v3-gallery .swiper-wrapper { display: flex; }
.svc-v3-gallery__item {
    display: block !important;
    aspect-ratio: 3 / 2;
    transform: scale(0.6);
    transition: transform .3s, opacity .3s;
    opacity: .6;
    border-radius: 6px;
    overflow: hidden;
    background: #EDF2F8;
}
.svc-v3-gallery__item.swiper-slide-active {
    transform: scale(1.4);
    opacity: 1;
    z-index: 2;
}
.svc-v3-gallery__item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Fallback: если Swiper не инициализировался — обычная горизонтальная прокрутка */
.svc-v3-gallery:not(.swiper-initialized) { padding: 0; overflow-x: auto; }
.svc-v3-gallery:not(.swiper-initialized) .swiper-wrapper { gap: 14px; width: max-content; }
.svc-v3-gallery:not(.swiper-initialized) .svc-v3-gallery__item {
    transform: none;
    opacity: 1;
    width: 280px;
    aspect-ratio: 4 / 3;
}
.svc-v3-gallery:not(.swiper-initialized) .svc-v3-gallery__prev,
.svc-v3-gallery:not(.swiper-initialized) .svc-v3-gallery__next { display: none; }
.svc-v3-gallery__prev,
.svc-v3-gallery__next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px; height: 44px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .15);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 5;
}
.svc-v3-gallery__prev { left: 8px; }
.svc-v3-gallery__next { right: 8px; }
.svc-v3-gallery__prev::before,
.svc-v3-gallery__next::before {
    content: '';
    width: 10px; height: 10px;
    border-top: 2px solid #238EE3;
    border-right: 2px solid #238EE3;
}
.svc-v3-gallery__prev::before { transform: rotate(-135deg); margin-left: 4px; }
.svc-v3-gallery__next::before { transform: rotate(45deg); margin-right: 4px; }
.svc-v3-gallery__prev.swiper-button-disabled,
.svc-v3-gallery__next.swiper-button-disabled { opacity: .3; cursor: default; }

/* ===== 16. Videos ===== */
.svc-v3-videos {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 16px;
}
.svc-v3-video iframe {
    width: 100%;
    aspect-ratio: 16/9;
    border-radius: 6px;
    border: none;
}

/* ===== 17. Бренды (v2 grey card) ===== */
.svc-v3-brands { position: relative; overflow: hidden; padding-bottom: 0; }
.svc-v3-brand {
    background: #F9F9FA;
    border-radius: 6px;
    padding: 30px 10px 20px;
    text-align: center;
    transition: transform .2s, box-shadow .2s;
    display: block;
    color: #333333;
    text-decoration: none !important;
    height: auto;
}
.svc-v3-brand:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(35, 142, 227, .12);
}
.svc-v3-brand__img {
    margin: 0 auto 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.svc-v3-brand__img img {
    max-width: 65px;
    width: 100%;
    object-fit: contain;
}
.svc-v3-brand__name {
    font-size: 18px;
    font-weight: 700;
    color: #4A4A4A;
    margin-bottom: 6px;
    text-transform: uppercase;
}
.svc-v3-brand__more {
    display: block;
    font-size: 13px;
    color: #888;
}
.svc-v3-brands__scrollbar {
    width: 100%;
    height: 4px;
    background: #EDF2F8;
    border-radius: 2px;
    margin-top: 40px;
    position: relative !important;
    left: 0 !important;
    bottom: auto !important;
}
.svc-v3-brands__scrollbar .swiper-scrollbar-drag {
    background: #238EE3;
    border-radius: 2px;
    cursor: pointer;
}
.svc-v3-brands__prev,
.svc-v3-brands__next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px; height: 44px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .15);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 5;
}
.svc-v3-brands__prev { left: 8px; }
.svc-v3-brands__next { right: 8px; }
.svc-v3-brands__prev::before,
.svc-v3-brands__next::before {
    content: '';
    width: 10px; height: 10px;
    border-top: 2px solid #238EE3;
    border-right: 2px solid #238EE3;
}
.svc-v3-brands__prev::before { transform: rotate(-135deg); margin-left: 4px; }
.svc-v3-brands__next::before { transform: rotate(45deg); margin-right: 4px; }

/* ===== 18. Контакты ===== */
.svc-v3-contacts {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 24px;
}
.svc-v3-contacts__info {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px 28px;
    background: #fff;
    padding: 26px;
    border-radius: 6px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.09);
}
.svc-v3-contacts__block {
    font-size: 14px;
    line-height: 1.7;
    color: #4A4A4A;
}
.svc-v3-contacts__block strong {
    display: block;
    color: #333333;
    margin-bottom: 4px;
    font-weight: 700;
}
.svc-v3-contacts__block a { color: #238EE3; font-weight: 700; }
.svc-v3-contacts__map {
    background: #EDF2F8;
    border-radius: 6px;
    overflow: hidden;
    min-height: 320px;
}

/* ===== 19. Final CTA (dark) ===== */
.svc-v3-final-cta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
}
.svc-v3-final-cta__text h2 { margin-bottom: 10px; }
.svc-v3-final-cta__text p { opacity: .85; margin: 0; font-size: 15px; }
.svc-v3-final-cta__buttons {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

/* ===== 20. Похожие услуги (слайдер с overlay) ===== */
.svc-v3-other__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 30px;
    flex-wrap: wrap;
}
.svc-v3-other__head .svc-v3-h2 { margin: 0; }
.svc-v3-other__arrows {
    display: flex;
    gap: 12px;
}
.svc-v3-other__prev,
.svc-v3-other__next {
    width: 48px; height: 48px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid #EDF2F8;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background .2s;
}
.svc-v3-other__prev:hover,
.svc-v3-other__next:hover { background: #EDF2F8; }
.svc-v3-other__prev::before,
.svc-v3-other__next::before {
    content: '';
    width: 10px; height: 10px;
    border-top: 2px solid #888;
    border-right: 2px solid #888;
}
.svc-v3-other__prev::before { transform: rotate(-135deg); margin-left: 4px; }
.svc-v3-other__next::before { transform: rotate(45deg); margin-right: 4px; }
.svc-v3-other__prev.swiper-button-disabled,
.svc-v3-other__next.swiper-button-disabled { opacity: .4; cursor: default; }

.svc-v3-other { position: relative; overflow: hidden; }
.svc-v3-other__item {
    border-radius: 10px;
    overflow: hidden;
    position: relative;
    display: block;
    color: #fff;
    text-decoration: none !important;
    aspect-ratio: 4 / 3;
    background: #EDF2F8;
}
.svc-v3-other__img { width: 100%; height: 100%; }
.svc-v3-other__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.svc-v3-other__item::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(360deg, #010101 0%, rgba(1, 1, 1, 0) 55%);
    border-radius: 10px;
    pointer-events: none;
}
.svc-v3-other__title {
    position: absolute;
    bottom: 18px;
    left: 0;
    right: 0;
    padding: 0 18px;
    color: #fff;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.35;
    text-align: center;
    z-index: 5;
}
.svc-v3-other__scrollbar {
    width: 100%;
    height: 4px;
    background: #EDF2F8;
    border-radius: 2px;
    margin-top: 30px;
    position: relative !important;
    left: 0 !important;
    bottom: auto !important;
}
.svc-v3-other__scrollbar .swiper-scrollbar-drag {
    background: #238EE3;
    border-radius: 2px;
    cursor: pointer;
}

/* ===========================================================
 * Responsive
 * =========================================================== */
@media (max-width: 1100px) {
    .svc-v3-hero__in { grid-template-columns: 1fr; }
    .svc-v3-problems-html ul { grid-template-columns: repeat(3, 1fr); }
    .svc-v3-cards-html { grid-template-columns: repeat(2, 1fr); }
    .svc-v3-workflow-html ol { grid-template-columns: repeat(3, 1fr); }
    .svc-v3-guarantees-html ul { grid-template-columns: repeat(2, 1fr); }
    .svc-v3-contacts { grid-template-columns: 1fr; }
    .svc-v3-contacts__info { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 768px) {
    .svc-v3-section { padding: 50px 16px; }
    .svc-v3-hero { padding: 50px 16px; }
    .svc-v3-hero__h1 { font-size: 28px; }
    .svc-v3-hero__bluf { font-size: 14px; }
    .svc-v3-hero__trust { gap: 18px; }
    .svc-v3-hero__trust-item strong { font-size: 22px; }
    .svc-v3-h2 { font-size: 24px; }

    .svc-v3-quick-cta__in { flex-direction: column; align-items: flex-start; gap: 10px; }

    .svc-v3-problems-html ul { grid-template-columns: repeat(2, 1fr); gap: 10px; }
    .svc-v3-problems-html li { padding: 14px 10px; }
    .svc-v3-problems-html li span { font-size: 24px; }

    .svc-v3-cards-html { grid-template-columns: 1fr; }
    .svc-v3-workflow-html ol { grid-template-columns: 1fr 1fr; }
    .svc-v3-guarantees-html ul { grid-template-columns: 1fr; }

    .svc-v3-ba { grid-template-columns: 1fr; }

    .svc-v3-inline-cta { flex-direction: column; align-items: stretch; text-align: center; }
    .svc-v3-inline-cta__buttons { flex-direction: column; }
    .svc-v3-inline-cta__buttons .svc-v3-btn { width: 100%; }

    .svc-v3-expert { grid-template-columns: 1fr; text-align: center; padding: 24px; }
    .svc-v3-expert__photo { margin: 0 auto; width: 180px; height: 180px; }

    .svc-v3-lead-cta__btn { width: 100%; min-width: 0; }

    .svc-v3-comparison table { font-size: 13px; }
    .svc-v3-comparison th,
    .svc-v3-comparison td { padding: 10px 12px; }

    .svc-v3-contacts__info { grid-template-columns: 1fr; }

    .svc-v3-final-cta { flex-direction: column; align-items: stretch; }
    .svc-v3-final-cta__buttons { flex-direction: column; }

    .svc-v3-price__item { flex-direction: column; align-items: flex-start; gap: 4px; padding: 14px 16px; }
}

/* Override any legacy v2 container styles that might leak in */
.svc-v3 .container-services-new { max-width: none; margin: 0; padding: 0; }
