﻿:root {
    --text: #0f172a;
    --muted: #64748b;
    --green: #22c55e;
    --green2: #16a34a;
    --line: rgba(226,232,240,.9);
    --glass: rgba(255,255,255,.58);
    --glass2: rgba(255,255,255,.35);
    --shadow: 0 22px 60px rgba(15,23,42,.14);
    --shadow2: 0 12px 34px rgba(15,23,42,.10);
    --r: 22px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: "Segoe UI Variable Text", "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    color: var(--text);
    line-height: 1.5;
    background: radial-gradient(900px 500px at 15% 10%, rgba(56,189,248,.18), transparent 60%), radial-gradient(900px 600px at 80% 25%, rgba(34,197,94,.12), transparent 55%), linear-gradient(180deg, #fff, #f8fafc);
}

/* ===== Hero final overrides ===== */
.lp-title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .04em;
    max-width: none;
    font-size: clamp(30px, 3.8vw, 54px);
    line-height: .94;
    letter-spacing: -.05em;
    color: #183b67;
}

.lp-title__line {
    display: block;
    white-space: nowrap;
}

.lp-subtitle {
    max-width: 34ch;
    color: #517196;
}

.lp-metric strong,
.lp-profile__chip {
    white-space: nowrap;
}

.lp-hero__supportItem {
    border-color: rgba(121, 196, 94, .18);
    background:
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(244,250,255,.94)),
        linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,0));
    color: #315576;
    box-shadow: 0 16px 28px rgba(57,92,136,.08);
}

.lp-hero__supportItem::before {
    background:
        radial-gradient(circle at 50% 50%, #1f5f94 24%, transparent 26%),
        linear-gradient(135deg, #8fd84e, #3ca7ff);
    box-shadow: 0 0 0 8px rgba(143,216,78,.12);
}

.lp-profile {
    border-color: rgba(198,220,241,.82);
    box-shadow: 0 24px 48px rgba(57,92,136,.10);
    background:
        radial-gradient(520px 260px at 16% 12%, rgba(60,167,255,.16), transparent 58%),
        radial-gradient(440px 220px at 86% 10%, rgba(143,216,78,.18), transparent 46%),
        linear-gradient(180deg, #eef8ff 0%, #f8fcff 100%);
}

.lp-profile__image {
    border-color: rgba(198,220,241,.82);
    background:
        radial-gradient(circle at 50% 14%, rgba(255,255,255,.64), transparent 28%),
        radial-gradient(48% 56% at 50% 76%, rgba(21,37,59,.16), transparent 72%),
        linear-gradient(160deg, #2456a6 0%, #3ca7ff 54%, #7bd84c 100%);
}

.lp-profile__caption {
    justify-self: center;
    width: min(100%, 320px);
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(244,250,255,.94));
    border-color: rgba(198,220,241,.86);
    box-shadow: 0 14px 24px rgba(57,92,136,.08);
}

.lp-profile__caption strong {
    color: #183b67;
}

.lp-profile__caption span {
    color: #5f7f9f;
}

.lp-profile__copy {
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(243,250,244,.94));
    border-color: rgba(198,220,241,.82);
}

.lp-profile__eyebrow {
    color: #2e9953;
}

.lp-profile__chip {
    background: rgba(60,167,255,.08);
    border-color: rgba(60,167,255,.18);
    color: #1d4c76;
}

.lp-list li {
    background: rgba(255,255,255,.92);
    border-color: rgba(198,220,241,.82);
}

@media (max-width: 1180px) {
    .lp-title {
        font-size: clamp(28px, 4.6vw, 46px);
    }
}

@media (max-width: 720px) {
    .lp-title {
        gap: .05em;
        font-size: clamp(24px, 6.4vw, 34px);
        line-height: .98;
    }

    .lp-title__line {
        white-space: normal;
    }
}

/* ===== Hero redesign v2 ===== */
.lp-home {
    padding: 34px 0 18px;
}

.lp-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(340px, .88fr) minmax(0, 1.12fr);
    grid-template-areas: "aside content";
    gap: 24px;
    padding: 30px;
    border-radius: 40px;
    overflow: hidden;
    border: 1px solid rgba(196, 219, 240, .96);
    box-shadow: 0 34px 72px rgba(29, 56, 90, .14);
    background:
        radial-gradient(920px 460px at 100% 0%, rgba(210, 255, 108, .14), transparent 54%),
        radial-gradient(760px 520px at -8% 100%, rgba(99, 201, 255, .18), transparent 52%),
        linear-gradient(135deg, #eef7ff 0%, #f8fbff 58%, #f5fbf4 100%);
}

.lp-hero::before,
.lp-hero::after {
    content: "";
    position: absolute;
    pointer-events: none;
}

.lp-hero::before {
    inset: 22px 22px auto auto;
    width: 220px;
    height: 220px;
    border-radius: 32px;
    background: linear-gradient(145deg, rgba(255, 255, 255, .48), rgba(255, 255, 255, 0));
    opacity: .66;
    transform: rotate(11deg);
}

.lp-hero::after {
    left: 50%;
    bottom: -110px;
    width: 520px;
    height: 220px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(59, 130, 246, .14), rgba(59, 130, 246, 0) 70%);
    transform: translateX(-50%);
    filter: blur(24px);
}

.lp-hero__aside,
.lp-hero__content {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.lp-hero__aside {
    grid-area: aside;
}

.lp-hero__content {
    grid-area: content;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 220px;
    grid-template-areas:
        "kicker support"
        "title support"
        "subtitle support"
        "actions support"
        "metrics metrics";
    align-content: start;
    gap: 18px 18px;
    padding: 10px 0 0;
}

.lp-kicker {
    grid-area: kicker;
    justify-self: start;
    margin: 0;
    padding: 11px 18px;
    border-color: rgba(20, 35, 57, .08);
    background: rgba(255, 255, 255, .84);
    color: #18314b;
    box-shadow: 0 16px 32px rgba(37, 66, 103, .08);
}

.lp-title {
    grid-area: title;
    max-width: 8.8ch;
    margin: 0;
    font-size: clamp(52px, 6.2vw, 88px);
    line-height: .9;
    letter-spacing: -.068em;
    color: #15263b;
}

.lp-subtitle {
    grid-area: subtitle;
    max-width: 34ch;
    margin: 0;
    color: #3d5878;
    font-size: 20px;
    line-height: 1.62;
}

.lp-hero__actions {
    grid-area: actions;
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin: 0;
}

.lp-hero__actions .btnA {
    min-height: 58px;
    padding: 15px 22px;
    border-radius: 18px;
    box-shadow: 0 18px 34px rgba(23, 48, 76, .10);
}

.lp-hero__support {
    grid-area: support;
    display: grid;
    gap: 12px;
    align-content: start;
    margin: 2px 0 0;
}

.lp-hero__supportItem {
    position: relative;
    display: flex;
    align-items: flex-start;
    min-height: 104px;
    padding: 20px 18px 18px 54px;
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .88), rgba(244, 249, 255, .84));
    border: 1px solid rgba(196, 219, 240, .9);
    color: #28435f;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.45;
    box-shadow: 0 18px 28px rgba(37, 66, 103, .08);
}

.lp-hero__supportItem::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 22px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background:
        radial-gradient(circle at 50% 50%, #17304c 20%, transparent 23%),
        linear-gradient(135deg, #d9ff47, #63c9ff);
    box-shadow: 0 0 0 7px rgba(217, 255, 71, .14);
}

.lp-metrics {
    grid-area: metrics;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin: 6px 0 0;
    padding: 10px;
    border-radius: 30px;
    background: rgba(255, 255, 255, .52);
    border: 1px solid rgba(196, 219, 240, .72);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.lp-metric {
    position: relative;
    min-height: 132px;
    padding: 20px 18px 18px;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(245, 250, 255, .9));
    border: 1px solid rgba(196, 219, 240, .9);
    box-shadow: 0 14px 24px rgba(37, 66, 103, .06);
    overflow: hidden;
}

.lp-metric::after {
    left: 18px;
    right: 18px;
}

.lp-metric strong {
    font-size: 38px;
    color: #16283f;
}

.lp-metric span {
    margin-top: 10px;
    color: #5c7491;
    font-size: 14px;
    font-weight: 800;
}

.lp-profile {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas:
        "image"
        "caption"
        "copy";
    gap: 16px;
    height: 100%;
    padding: 18px;
    border-radius: 34px;
    overflow: hidden;
    border: 1px solid rgba(196, 219, 240, .92);
    box-shadow: 0 28px 54px rgba(18, 35, 56, .14);
    background:
        linear-gradient(180deg, rgba(18, 35, 56, .98) 0%, rgba(14, 28, 44, .98) 46%, rgba(244, 249, 255, .98) 46%, rgba(248, 251, 255, .98) 100%);
}

.lp-profile::before {
    content: "";
    position: absolute;
    inset: auto -42px -42px auto;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(217, 255, 71, .16), rgba(217, 255, 71, 0) 74%);
    pointer-events: none;
}

.lp-profile__image,
.lp-profile__caption,
.lp-profile__copy {
    position: relative;
    z-index: 1;
}

.lp-profile__image {
    grid-area: image;
    min-height: 420px;
    margin: 0;
    border-radius: 28px;
    border: 1px solid rgba(255, 255, 255, .08);
    background:
        radial-gradient(circle at 50% 16%, rgba(255, 255, 255, .20), transparent 24%),
        radial-gradient(58% 72% at 50% 58%, rgba(0, 0, 0, .30), transparent 74%),
        linear-gradient(180deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, .02)),
        linear-gradient(180deg, #101b2a 0%, #09121d 100%);
}

.lp-profile__image::before {
    left: 50%;
    bottom: 22px;
    width: 62%;
    height: 40px;
    background: radial-gradient(circle, rgba(0, 0, 0, .48), rgba(0, 0, 0, 0) 70%);
    opacity: .82;
}

.lp-profile__image img {
    bottom: -6px;
    width: min(430px, 102%);
    filter: drop-shadow(0 30px 44px rgba(0, 0, 0, .34));
    -webkit-mask-image: none;
    mask-image: none;
}

.lp-profile__caption {
    grid-area: caption;
    display: flex;
    flex-direction: column;
    gap: 5px;
    max-width: none;
    padding: 16px 18px;
    border-radius: 22px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .10);
    color: #dbe9f8;
}

.lp-profile__caption strong {
    color: #fff;
    font-size: 21px;
    font-weight: 800;
    letter-spacing: -.03em;
}

.lp-profile__caption span {
    color: #b9cee3;
    font-size: 15px;
    line-height: 1.55;
}

.lp-profile__copy {
    grid-area: copy;
    max-width: none;
    padding: 20px;
    border-radius: 26px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(244, 249, 255, .92));
    border: 1px solid rgba(196, 219, 240, .92);
    box-shadow: 0 18px 28px rgba(37, 66, 103, .08);
}

.lp-profile__eyebrow {
    margin-bottom: 10px;
    color: #4f6e90;
    font-size: 12px;
    letter-spacing: .14em;
}

.lp-profile__top {
    margin-bottom: 14px;
}

.lp-profile__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.lp-profile__chip {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(24, 48, 76, .06);
    border: 1px solid rgba(196, 219, 240, .92);
    color: #1b3652;
    font-size: 13px;
    font-weight: 800;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.lp-list {
    gap: 10px;
    color: #274462;
}

.lp-list li {
    padding: 15px 16px 15px 48px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid rgba(196, 219, 240, .82);
    color: #2f4864;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.55;
    box-shadow: 0 12px 22px rgba(37, 66, 103, .05);
}

.lp-list li::before {
    left: 16px;
    top: 17px;
    width: 18px;
    height: 18px;
    box-shadow: 0 0 0 6px rgba(99, 201, 255, .10);
}

@media (max-width: 1260px) {
    .lp-hero__content {
        grid-template-columns: minmax(0, 1fr) 200px;
    }

    .lp-title {
        max-width: 9.3ch;
    }
}

@media (max-width: 1180px) {
    .lp-hero {
        grid-template-columns: 1fr;
        grid-template-areas:
            "content"
            "aside";
    }

    .lp-hero__content {
        grid-template-columns: minmax(0, 1fr) 220px;
    }

    .lp-title,
    .lp-subtitle {
        max-width: none;
    }

    .lp-profile {
        grid-template-columns: minmax(260px, .88fr) minmax(0, 1fr);
        grid-template-areas:
            "image copy"
            "caption copy";
        align-items: stretch;
        background:
            linear-gradient(90deg, rgba(18, 35, 56, .98) 0%, rgba(14, 28, 44, .98) 44%, rgba(244, 249, 255, .98) 44%, rgba(248, 251, 255, .98) 100%);
    }

    .lp-profile__image {
        min-height: 360px;
    }
}

@media (max-width: 940px) {
    .lp-home {
        padding: 22px 0 8px;
    }

    .lp-hero {
        padding: 18px;
        border-radius: 28px;
    }

    .lp-hero__content {
        grid-template-columns: 1fr;
        grid-template-areas:
            "kicker"
            "title"
            "subtitle"
            "actions"
            "support"
            "metrics";
        gap: 16px;
        padding-top: 0;
    }

    .lp-title {
        font-size: clamp(40px, 8vw, 66px);
    }

    .lp-subtitle {
        font-size: 17px;
    }

    .lp-hero__support {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin-top: 2px;
    }

    .lp-hero__supportItem {
        min-height: 100%;
        padding: 18px 16px 16px 46px;
    }

    .lp-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lp-profile {
        grid-template-columns: 1fr;
        grid-template-areas:
            "image"
            "caption"
            "copy";
        padding: 16px;
        border-radius: 26px;
        background:
            linear-gradient(180deg, rgba(18, 35, 56, .98) 0%, rgba(14, 28, 44, .98) 42%, rgba(244, 249, 255, .98) 42%, rgba(248, 251, 255, .98) 100%);
    }

    .lp-profile__image {
        min-height: 340px;
        border-radius: 24px;
    }
}

@media (max-width: 720px) {
    .lp-hero {
        padding: 16px;
        border-radius: 24px;
    }

    .lp-kicker {
        padding: 8px 12px;
        font-size: 12px;
    }

    .lp-title {
        max-width: 8.8ch;
        font-size: clamp(34px, 11vw, 52px);
        line-height: .95;
    }

    .lp-subtitle {
        font-size: 16px;
        line-height: 1.58;
    }

    .lp-hero__actions {
        flex-direction: column;
    }

    .lp-hero__actions .btnA {
        width: 100%;
        justify-content: center;
    }

    .lp-hero__support {
        grid-template-columns: 1fr;
    }

    .lp-hero__supportItem {
        min-height: auto;
        padding: 16px 15px 15px 42px;
        border-radius: 18px;
        font-size: 14px;
    }

    .lp-hero__supportItem::before {
        left: 14px;
        top: 18px;
        width: 16px;
        height: 16px;
    }

    .lp-metrics {
        grid-template-columns: 1fr;
        padding: 0;
        background: transparent;
        border: 0;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    .lp-metric {
        min-height: auto;
        padding: 16px 16px 14px;
        border-radius: 18px;
    }

    .lp-metric strong {
        font-size: 30px;
    }

    .lp-profile {
        padding: 14px;
        border-radius: 24px;
        gap: 12px;
    }

    .lp-profile__image {
        min-height: 292px;
        border-radius: 20px;
    }

    .lp-profile__image img {
        width: min(332px, 106%);
    }

    .lp-profile__caption,
    .lp-profile__copy {
        border-radius: 18px;
    }

    .lp-profile__caption {
        padding: 14px 16px;
    }

    .lp-profile__caption strong {
        font-size: 19px;
    }

    .lp-profile__copy {
        padding: 16px;
    }

    .lp-list li {
        padding: 13px 14px 13px 42px;
        border-radius: 16px;
        font-size: 14px;
    }

    .lp-list li::before {
        left: 14px;
        top: 15px;
        width: 16px;
        height: 16px;
    }
}

/* ===== Hero tune ===== */
.lp-hero {
    background:
        radial-gradient(920px 460px at 100% 0%, rgba(126, 212, 71, .18), transparent 54%),
        radial-gradient(760px 520px at -8% 100%, rgba(46, 154, 255, .18), transparent 52%),
        linear-gradient(135deg, #f2f9ff 0%, #fbfdff 58%, #f5fcf1 100%);
}

.lp-title {
    max-width: 13ch;
    font-size: clamp(42px, 4.8vw, 72px);
    line-height: .94;
    color: #163d68;
}

.lp-subtitle {
    color: #4d6d90;
}

.lp-hero__supportItem {
    background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(241, 250, 245, .92));
    border-color: rgba(130, 191, 255, .34);
    color: #28506f;
}

.lp-metric strong {
    white-space: nowrap;
}

.lp-profile {
    border-color: rgba(196, 219, 240, .86);
    box-shadow: 0 24px 48px rgba(35, 78, 126, .10);
    background:
        radial-gradient(240px 220px at 100% 0%, rgba(126, 212, 71, .18), transparent 60%),
        radial-gradient(220px 220px at 0% 100%, rgba(46, 154, 255, .16), transparent 56%),
        linear-gradient(145deg, rgba(239, 248, 255, .98) 0%, rgba(248, 252, 255, .98) 58%, rgba(243, 252, 242, .98) 100%);
}

.lp-profile::before {
    background: radial-gradient(circle, rgba(126, 212, 71, .16), rgba(126, 212, 71, 0) 74%);
}

.lp-profile__image {
    border-color: rgba(255, 255, 255, .22);
    background:
        radial-gradient(circle at 22% 16%, rgba(255, 255, 255, .32), transparent 22%),
        radial-gradient(circle at 80% 20%, rgba(200, 255, 113, .28), transparent 22%),
        radial-gradient(58% 72% at 50% 68%, rgba(19, 57, 110, .20), transparent 74%),
        linear-gradient(160deg, #2f80ff 0%, #4bb5ff 48%, #6fd05d 100%);
}

.lp-profile__caption {
    background: rgba(255, 255, 255, .88);
    border-color: rgba(130, 191, 255, .30);
    color: #557495;
    box-shadow: 0 14px 24px rgba(35, 78, 126, .08);
}

.lp-profile__caption strong {
    color: #163d68;
}

.lp-profile__caption span {
    color: #5f7f9f;
}

.lp-profile__copy {
    background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(240, 250, 245, .94));
    border-color: rgba(130, 191, 255, .28);
}

.lp-profile__eyebrow {
    color: #3aa759;
}

.lp-profile__chip {
    background: rgba(126, 212, 71, .12);
    border-color: rgba(126, 212, 71, .22);
    color: #1d4f72;
    white-space: nowrap;
}

.lp-list li {
    background: rgba(255, 255, 255, .9);
    border-color: rgba(130, 191, 255, .28);
}

@media (max-width: 1260px) {
    .lp-title {
        max-width: 12.5ch;
        font-size: clamp(40px, 4.4vw, 64px);
    }
}

@media (max-width: 940px) {
    .lp-title {
        max-width: 12.8ch;
        font-size: clamp(34px, 6.1vw, 50px);
    }

    .lp-hero__supportItem {
        min-height: 86px;
    }
}

@media (max-width: 720px) {
    .lp-title {
        max-width: 13ch;
        font-size: clamp(28px, 7.6vw, 38px);
        line-height: .98;
    }

    .lp-metric strong {
        font-size: 28px;
    }

    .lp-profile__chip {
        font-size: 12px;
    }
}

.container {
    width: min(1380px, 94vw);
    margin: 0 auto;
}

.section {
    padding: 74px 0;
}

h1 {
    font-size: 46px;
    line-height: 1.05;
    margin: 12px 0 14px;
    letter-spacing: -.02em;
}

h2 {
    font-size: 34px;
    line-height: 1.12;
    margin: 0 0 16px;
    letter-spacing: -.02em;
}

h3 {
    font-size: 22px;
    margin: 0 0 12px;
}

.thin {
    font-weight: 500;
    color: var(--muted);
}

.lead {
    font-size: 18px;
    color: var(--muted);
    max-width: 62ch;
}

.small {
    font-size: 12px;
}

.muted {
    color: var(--muted);
}

.topbar {
    position: sticky;
    top: 0;
    z-index: 10;
    background: rgba(255,255,255,.72);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-bottom: 1px solid rgba(255,255,255,.45);
}

.topbar__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 0;
    gap: 16px;
}

.brand {
    font-weight: 900;
    color: var(--text);
    text-decoration: none;
    letter-spacing: -.02em;
}

.nav {
    display: flex;
    gap: 14px;
    align-items: center;
}

.nav__link {
    color: var(--muted);
    text-decoration: none;
    font-weight: 700;
}

    .nav__link:hover {
        color: var(--text);
    }

.glass {
    background: var(--glass);
    border: 1px solid rgba(255,255,255,.55);
    box-shadow: var(--shadow2);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-radius: var(--r);
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.55);
    background: var(--glass2);
    color: var(--text);
    text-decoration: none;
    font-weight: 800;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

    .btn:hover {
        transform: translateY(-1px);
        box-shadow: var(--shadow2);
    }

.btn--primary {
    background: linear-gradient(135deg, var(--green), var(--green2));
    border-color: transparent;
    color: #052e12;
    box-shadow: 0 16px 30px rgba(34,197,94,.18);
}

    .btn--primary:hover {
        box-shadow: var(--shadow);
    }

.btn--ghost {
    background: var(--glass2);
}

.btn--wide {
    width: 100%;
}

.btn--pill {
    border-radius: 999px;
    padding: 10px 14px;
}

.badge {
    display: inline-flex;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.65);
    border: 1px solid rgba(255,255,255,.75);
    box-shadow: var(--shadow2);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    font-weight: 800;
    font-size: 12px;
}

.hero__grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 24px;
    align-items: stretch;
}

.ctaRow {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin: 16px 0 12px;
}

.quickstats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    padding: 12px;
}

.q {
    padding: 10px 12px;
    border-radius: 16px;
    background: rgba(255,255,255,.6);
    border: 1px solid rgba(255,255,255,.65);
}

.q__v {
    font-weight: 900;
    letter-spacing: -.02em;
}

.q__t {
    color: var(--muted);
    font-size: 12px;
    margin-top: 2px;
    font-weight: 700;
}

.heroPremium {
    padding: 16px;
    overflow: hidden;
    position: relative;
}

.heroPremium__scene {
    position: relative;
    height: 440px;
}

.hero3d {
    position: absolute;
    left: -24px;
    top: 88px;
    width: 580px;
    max-width: none;
    filter: drop-shadow(0 30px 44px rgba(15,23,42,.20));
}

.heroPerson {
    position: absolute;
    right: -12px;
    bottom: -10px;
    width: 360px;
    max-width: none;
    filter: drop-shadow(0 28px 44px rgba(15,23,42,.22));
}

.stepGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-top: 16px;
}

.step {
    padding: 18px;
}

.step__top {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
    margin-bottom: 8px;
}

.step__n {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 12px;
    background: rgba(34,197,94,.18);
    border: 1px solid rgba(34,197,94,.25);
}

.sectionHead {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 16px;
}

.linkArrow {
    text-decoration: none;
    font-weight: 900;
    color: var(--text);
}

    .linkArrow:hover {
        opacity: .85;
    }

.serviceGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-top: 16px;
}

.service {
    padding: 18px;
}

.service__title {
    font-weight: 900;
    font-size: 18px;
    margin-bottom: 8px;
}

.service__price {
    font-weight: 900;
    font-size: 28px;
    letter-spacing: -.02em;
    margin-bottom: 10px;
}

.list {
    margin: 0 0 14px;
    padding-left: 18px;
    color: var(--muted);
    font-weight: 700;
}

    .list li {
        margin: 8px 0;
    }

.caseGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-top: 16px;
}

.caseCard {
    display: block;
    padding: 16px;
    text-decoration: none;
    color: inherit;
}

    .caseCard:hover {
        transform: translateY(-2px);
        box-shadow: var(--shadow);
    }

.caseCard__title {
    font-weight: 900;
    margin-bottom: 6px;
}

.caseCard__meta {
    color: var(--muted);
    font-weight: 700;
    font-size: 12px;
    margin-bottom: 10px;
}

.caseCard__stat {
    font-weight: 900;
    color: #14532d;
}

.caseCard__hint {
    margin-top: 10px;
    color: var(--muted);
    font-weight: 800;
    font-size: 12px;
}

.ctaBox {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 16px;
    padding: 18px;
}

.form {
    margin-top: 6px;
}

.field {
    display: block;
    margin-bottom: 12px;
}

    .field span {
        display: block;
        font-weight: 900;
        font-size: 14px;
        color: var(--muted);
        margin-bottom: 6px;
    }

input, textarea, select {
    width: 100%;
    padding: 12px 12px;
    border: 1px solid rgba(255,255,255,.75);
    border-radius: 14px;
    outline: none;
    font: inherit;
    background: rgba(255,255,255,.7);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

    input:focus, textarea:focus, select:focus {
        border-color: rgba(56,189,248,.65);
        box-shadow: 0 0 0 5px rgba(56,189,248,.18);
    }

.err {
    color: #ef4444;
}

.formError {
    margin-top: 10px;
    font-weight: 900;
    color: #ef4444;
}

.filters {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    padding: 12px;
    margin-top: 14px;
}

.detailTop {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 12px;
    margin-top: 14px;
}

.detailBottom {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-top: 12px;
}

.panel {
    padding: 16px;
}

.panel__title {
    font-weight: 900;
    margin-bottom: 10px;
}

.kv {
    display: grid;
    gap: 8px;
}

.kv__row {
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

.kv__k {
    color: var(--muted);
    font-weight: 900;
}

.kv__v {
    font-weight: 900;
}

.bigStat {
    margin-top: 12px;
    font-weight: 900;
    font-size: 18px;
    color: #14532d;
}

.screens {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 12px;
}

.screen img {
    width: 100%;
    height: auto;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,.65);
}

.footer {
    border-top: 1px solid rgba(255,255,255,.55);
    padding: 24px 0;
    background: rgba(255,255,255,.6);
    backdrop-filter: blur(16px);
}

.footer__inner {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}

.footer__title {
    font-weight: 900;
    margin-bottom: 6px;
}

.footer__links a {
    color: var(--text);
    text-decoration: none;
    font-weight: 900;
}

    .footer__links a:hover {
        opacity: .85;
    }

@media (max-width: 940px) {
    .hero__grid, .ctaBox, .detailTop, .detailBottom {
        grid-template-columns: 1fr;
    }

    .quickstats {
        grid-template-columns: 1fr 1fr;
    }

    .stepGrid {
        grid-template-columns: 1fr;
    }

    .serviceGrid {
        grid-template-columns: 1fr;
    }

    .caseGrid {
        grid-template-columns: 1fr;
    }

    .screens {
        grid-template-columns: 1fr;
    }

    h1 {
        font-size: 38px;
    }

    h2 {
        font-size: 28px;
    }

    .heroPremium__scene {
        height: 380px;
    }

    .hero3d {
        width: 520px;
        top: 86px;
        left: -36px;
    }

    .heroPerson {
        width: 310px;
        right: -10px;
    }
}
/* ====== TOP NAV (как на скрине) ====== */
.topnav {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(255,255,255,.86);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(226,232,240,.9);
}

.topnav__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 16px 0;
}

/* ===== Floating contact dock ===== */
.floatingContacts {
    position: fixed;
    right: max(18px, calc(env(safe-area-inset-right) + 18px));
    bottom: max(18px, calc(env(safe-area-inset-bottom) + 18px));
    z-index: 140;
    display: grid;
    gap: 12px;
}

.floatingContacts__item {
    position: relative;
    width: 60px;
    height: 60px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #14314c;
    text-decoration: none;
    border: 1px solid rgba(255,255,255,.76);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.72),
        0 18px 34px rgba(68,94,131,.18);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease, filter .24s ease;
}

.floatingContacts__item::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(180deg, rgba(255,255,255,.58), rgba(255,255,255,.16));
    opacity: .82;
    pointer-events: none;
}

.floatingContacts__item:hover,
.floatingContacts__item:focus-visible {
    transform: translateY(-3px) scale(1.05);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.8),
        0 24px 42px rgba(68,94,131,.24);
    outline: none;
}

.floatingContacts__item:hover .floatingContacts__icon,
.floatingContacts__item:focus-visible .floatingContacts__icon {
    animation-play-state: paused;
}

.floatingContacts__item--telegram {
    background: linear-gradient(180deg, rgba(125,215,255,.92), rgba(65,188,255,.72));
}

.floatingContacts__item--channel {
    background: linear-gradient(180deg, rgba(255,214,156,.96), rgba(255,183,113,.78));
    color: #6b3d0f;
}

.floatingContacts__item--max {
    background: linear-gradient(180deg, rgba(220,236,255,.96), rgba(158,213,255,.82));
    color: #234f7d;
}

.floatingContacts__item--phone {
    background: linear-gradient(180deg, rgba(201,239,125,.96), rgba(169,223,71,.78));
    color: #2d4410;
}

.floatingContacts__item--mail {
    background: linear-gradient(180deg, rgba(255,225,196,.94), rgba(255,184,118,.78));
    color: #5d3410;
}

.floatingContacts__icon {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    animation: floatingContactsPulse 3.6s ease-in-out infinite;
    transform-origin: center;
}

.floatingContacts__icon svg {
    width: 24px;
    height: 24px;
}

.floatingContacts__tooltip {
    position: absolute;
    top: 50%;
    right: calc(100% + 14px);
    transform: translateY(-50%) translateX(8px);
    min-width: max-content;
    max-width: min(280px, calc(100vw - 120px));
    padding: 10px 14px;
    border-radius: 14px;
    background: rgba(18,35,58,.92);
    color: #f8fbff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: -.01em;
    box-shadow: 0 18px 32px rgba(15,23,42,.2);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .22s ease, transform .22s ease, visibility .22s ease;
    white-space: nowrap;
}

.floatingContacts__tooltip::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -6px;
    width: 12px;
    height: 12px;
    background: inherit;
    transform: translateY(-50%) rotate(45deg);
    border-radius: 2px;
}

.floatingContacts__item:hover .floatingContacts__tooltip,
.floatingContacts__item:focus-visible .floatingContacts__tooltip {
    opacity: 1;
    visibility: visible;
    transform: translateY(-50%) translateX(0);
}

@keyframes floatingContactsPulse {
    0%, 100% {
        transform: scale(1);
    }

    12% {
        transform: scale(1.08);
    }

    24% {
        transform: scale(1.02);
    }

    36% {
        transform: scale(1.06);
    }

    48% {
        transform: scale(1);
    }
}

@media (max-width: 720px) {
    .floatingContacts {
        right: max(10px, calc(env(safe-area-inset-right) + 10px));
        bottom: max(10px, calc(env(safe-area-inset-bottom) + 10px));
        gap: 8px;
    }

    .floatingContacts__item {
        width: 48px;
        height: 48px;
        border-radius: 16px;
    }

    .floatingContacts__icon svg {
        width: 20px;
        height: 20px;
    }

    .floatingContacts__tooltip {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .floatingContacts__item,
    .floatingContacts__tooltip,
    .floatingContacts__icon {
        transition: none;
        animation: none;
    }
}

.logo {
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    color: #0f172a;
    font-weight: 900;
}

.logo__dots {
    display: inline-flex;
    gap: 4px;
    align-items: center;
}

    .logo__dots .d {
        width: 8px;
        height: 8px;
        border-radius: 999px;
        display: inline-block;
    }

    .logo__dots .d1 {
        background: #22c55e;
    }

    .logo__dots .d2 {
        background: #38bdf8;
    }

    .logo__dots .d3 {
        background: #f59e0b;
    }

    .logo__dots .d4 {
        background: #a855f7;
    }

.logo__text {
    font-family: "Segoe UI Variable Display", "Manrope", system-ui, sans-serif;
    font-size: 19px;
    font-weight: 800;
    letter-spacing: -.04em;
    line-height: 1;
}

.menu {
    display: flex;
    gap: 10px;
    align-items: center;
}

.menu--desktop {
    padding: 7px;
    border-radius: 999px;
    background: rgba(255,255,255,.62);
    border: 1px solid rgba(210,224,240,.9);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 14px 32px rgba(68,94,131,.08);
}

.menu__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 12px 18px;
    border-radius: 999px;
    text-decoration: none;
    color: #34465f;
    font-family: "Segoe UI Variable Display", "Manrope", system-ui, sans-serif;
    font-weight: 800;
    font-size: 16px;
    letter-spacing: -.025em;
    line-height: 1;
    white-space: nowrap;
    opacity: 1;
    transition: color .18s ease, background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

    .menu__link:hover,
    .menu__link:focus-visible {
        color: #12233a;
        background: rgba(255,255,255,.96);
        box-shadow: 0 12px 24px rgba(68,94,131,.14);
        transform: translateY(-1px);
        outline: none;
    }

    .menu__link:active {
        transform: translateY(0);
    }

.iconBtn {
    width: 46px;
    height: 46px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #0ea5e9;
    background: rgba(14,165,233,.10);
    border: 1px solid rgba(14,165,233,.18);
    text-decoration: none;
}

    .iconBtn:hover {
        background: rgba(14,165,233,.14);
    }

/* ====== HERO (как на скрине) ====== */
.heroA {
    padding: 44px 0 34px;
    background: radial-gradient(900px 420px at 10% 10%, rgba(56,189,248,.18), transparent 60%), radial-gradient(900px 520px at 80% 30%, rgba(34,197,94,.12), transparent 55%), linear-gradient(180deg, #ffffff, #f8fafc);
}

.heroA__grid {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 26px;
    align-items: center;
}

.heroA__title {
    font-size: 42px;
    line-height: 1.08;
    letter-spacing: -.02em;
    margin: 0 0 10px;
}

.heroA__thin {
    font-weight: 600;
    color: #0f172a;
}

.heroA__sub {
    margin: 0 0 18px;
    font-size: 16px;
    color: #334155;
    line-height: 1.45;
}

.heroA__accent {
    color: #0ea5e9;
    font-weight: 800;
}

.heroA__accent2 {
    color: #0ea5e9;
    font-weight: 800;
}

.heroA__buttons {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin: 0 0 18px;
}

.btnA {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 10px;
    font-weight: 800;
    text-decoration: none;
    border: 1px solid transparent;
    box-shadow: 0 10px 20px rgba(15,23,42,.08);
}

.btnA--green {
    background: linear-gradient(135deg, #22c55e, #16a34a);
    color: #062a14;
}

.btnA--blue {
    background: linear-gradient(135deg, #38bdf8, #2563eb);
    color: #07223a;
}

.btnA:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(15,23,42,.12);
}

.btnA__tg {
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.heroA__stats {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
    padding-top: 6px;
    border-top: 1px solid rgba(226,232,240,.9);
}

.statA {
    display: flex;
    align-items: baseline;
    gap: 8px;
    padding-top: 10px;
}

.statA__v {
    font-weight: 900;
    letter-spacing: -.02em;
}

.statA__t {
    font-size: 12px;
    color: #64748b;
    font-weight: 700;
}

.statA__v--green {
    color: #16a34a;
}

.statA__v--blue {
    color: #2563eb;
}

.heroA__right {
    display: flex;
    justify-content: flex-end;
}

.heroA__photoWrap {
    width: 340px;
    height: 340px;
    border-radius: 18px;
    background: rgba(255,255,255,.55);
    border: 1px solid rgba(226,232,240,.9);
    box-shadow: 0 18px 50px rgba(15,23,42,.10);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    overflow: hidden;
}

.heroA__photo {
    width: 100%;
    height: auto;
    object-fit: contain;
    transform: translateY(8px);
}

/* mobile */
@media (max-width: 940px) {
    .menu {
        display: none;
    }
    /* как часто делают в мобиле; потом добавим бургер */
    .heroA__grid {
        grid-template-columns: 1fr;
    }

    .heroA__right {
        justify-content: center;
    }

    .heroA__title {
        font-size: 34px;
    }

    .heroA__photoWrap {
        width: 300px;
        height: 300px;
    }
}
/* ====== SECTION LIKE ON SCREENSHOT ====== */
.sectionLite {
    padding: 44px 0;
    background: transparent;
}

.h2Lite {
    font-size: 28px;
    font-weight: 900;
    margin: 0 0 14px;
    letter-spacing: -.01em;
    line-height: 1.15;
}

/* ====== STEPS (3 cards in a row) ====== */
.stepsRow {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

.stepCard {
    position: relative;
    background: #fff;
    border: 1px solid rgba(226,232,240,.95);
    border-radius: 14px;
    padding: 14px 14px 16px;
    box-shadow: 0 10px 26px rgba(15,23,42,.08);
    min-height: 98px;
    overflow: hidden;
}

.stepCard__head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}

.stepBadge {
    width: 30px;
    height: 30px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    font-size: 13px;
    color: #fff;
    background: linear-gradient(135deg, #38bdf8, #2563eb);
    box-shadow: 0 10px 18px rgba(37,99,235,.20);
}

.stepCard__title {
    font-weight: 900;
    font-size: 18px;
    color: #0f172a;
    line-height: 1.25;
}

.stepCard__text {
    font-size: 16px;
    line-height: 1.5;
    color: #64748b;
    font-weight: 700;
    padding-right: 72px; /* место под иконку */
}

.stepCard__icon {
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: 64px;
    height: 48px;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    opacity: .95;
}

    .stepCard__icon img {
        max-width: 64px;
        max-height: 48px;
        object-fit: contain;
    }

/* ====== TARIFFS ====== */
.tariffRow {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

.tariffCard {
    background: #fff;
    border: 1px solid rgba(226,232,240,.95);
    border-radius: 14px;
    padding: 16px;
    box-shadow: 0 10px 26px rgba(15,23,42,.08);
}

.tariffCard__title {
    text-align: center;
    font-weight: 900;
    color: #0f172a;
    margin-bottom: 10px;
}

.tariffCard__price {
    text-align: center;
    font-weight: 900;
    font-size: 22px;
    color: #0f172a;
    letter-spacing: -.02em;
    margin-bottom: 12px;
}

    .tariffCard__price span {
        font-size: 18px;
    }

    .tariffCard__price small {
        font-size: 12px;
        color: #64748b;
        font-weight: 800;
    }

.checkList {
    list-style: none;
    padding: 0;
    margin: 0 0 14px;
    display: grid;
    gap: 10px;
}

    .checkList li {
        position: relative;
        padding-left: 20px;
        color: #64748b;
        font-weight: 700;
        font-size: 15px;
        line-height: 1.55;
    }

        .checkList li::before {
            content: "✓";
            position: absolute;
            left: 0;
            top: 0;
            color: #16a34a;
            font-weight: 900;
        }

.btnTariff {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    border-radius: 10px;
    background: linear-gradient(135deg, #22c55e, #16a34a);
    color: #062a14;
    text-decoration: none;
    font-weight: 900;
    font-size: 12px;
    box-shadow: 0 12px 18px rgba(34,197,94,.18);
}

    .btnTariff:hover {
        transform: translateY(-1px);
        box-shadow: 0 18px 28px rgba(34,197,94,.22);
    }

/* ====== RESPONSIVE ====== */
@media (max-width: 940px) {
    .stepsRow, .tariffRow {
        grid-template-columns: 1fr;
    }

    .stepCard__text {
        padding-right: 0;
    }

    .stepCard__icon {
        position: static;
        width: auto;
        height: auto;
        justify-content: flex-start;
        margin-top: 10px;
    }
}
/* Делает 3D-иконки "дороже" */
.stepCard__icon img {
    filter: drop-shadow(0 12px 18px rgba(15,23,42,.14));
    transform: translateZ(0);
}
/* ===== Mobile-first helpers ===== */
:root {
    --container: 1380px;
    --pad: 16px;
}

.container {
    width: min(var(--container), calc(100vw - (var(--pad) * 2)));
    margin: 0 auto;
}

@media (max-width: 420px) {
    :root {
        --pad: 14px;
    }
}

/* ===== Topnav actions ===== */
.topnav__actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

.topnav__adminLink {
    min-height: 48px;
    padding: 12px 18px;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: -.02em;
    white-space: nowrap;
}

.topnav__phone {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 12px 18px;
    border-radius: 999px;
    text-decoration: none;
    color: #18314e;
    font-family: "Segoe UI Variable Display", "Manrope", system-ui, sans-serif;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: -.025em;
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(210,224,240,.92);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 14px 28px rgba(68,94,131,.08);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, color .18s ease;
}

.topnav__phone:hover,
.topnav__phone:focus-visible {
    transform: translateY(-1px);
    color: #10263e;
    border-color: rgba(125,215,255,.7);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.82), 0 18px 30px rgba(68,94,131,.14);
    outline: none;
}

.topnav__drawerPhone {
    font-variant-numeric: tabular-nums;
}

@media (max-width: 1180px) {
    .menu {
        gap: 6px;
    }

    .menu__link {
        padding: 10px 14px;
        font-size: 15px;
    }

    .topnav__phone {
        display: none;
    }
}

/* Desktop / mobile menu visibility */
.menu--desktop {
    display: flex;
}

.burger {
    display: none;
}

@media (max-width: 940px) {
    .menu--desktop {
        display: none;
    }

    .topnav__adminLink {
        display: none;
    }

    .burger {
        display: inline-flex;
    }
}

/* Burger button */
.burger {
    position: relative;
    width: 52px;
    height: 52px;
    border-radius: 18px;
    border: 1px solid rgba(197,214,233,.86);
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(241,248,255,.86));
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.84), 0 16px 30px rgba(68,94,131,.14);
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease;
}

.burger:hover,
.burger:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(125,215,255,.76);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.88), 0 20px 34px rgba(68,94,131,.18);
    outline: none;
}

.burger span {
    position: absolute;
    left: 15px;
    width: 20px;
    height: 2.5px;
    background: #14314c;
    border-radius: 999px;
    transform-origin: center;
    transition: transform .22s ease, opacity .22s ease, top .22s ease, background-color .22s ease;
}

.burger span:nth-child(1) {
    top: 18px;
}

.burger span:nth-child(2) {
    top: 25px;
}

.burger span:nth-child(3) {
    top: 32px;
}

.burger[aria-expanded="true"] {
    background: linear-gradient(180deg, rgba(233,245,255,.98), rgba(220,238,255,.88));
}

.burger[aria-expanded="true"] span:nth-child(1) {
    top: 25px;
    transform: rotate(45deg);
}

.burger[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
    transform: scaleX(.4);
}

.burger[aria-expanded="true"] span:nth-child(3) {
    top: 25px;
    transform: rotate(-45deg);
}

/* Drawer overlay */
.drawer {
    position: fixed;
    inset: 0;
    background: rgba(15,23,42,.24);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .28s ease, visibility .28s ease;
    z-index: 100;
}

.drawer.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.drawer__panel {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: min(392px, 100vw);
    background:
        radial-gradient(circle at top right, rgba(125,215,255,.24), transparent 32%),
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,249,255,.94));
    border-left: 1px solid rgba(197,214,233,.84);
    box-shadow: -28px 0 70px rgba(15,23,42,.16);
    padding: 20px 18px 22px;
    transform: translateX(24px);
    opacity: 0;
    transition: transform .32s cubic-bezier(.22,.61,.36,1), opacity .28s ease;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.drawer.is-open .drawer__panel {
    transform: translateX(0);
    opacity: 1;
}

.drawer__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0;
}

.drawer__heading {
    display: grid;
    gap: 4px;
}

.drawer__eyebrow {
    color: #6b7a90;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.drawer__title {
    font-size: 24px;
    line-height: 1;
    font-weight: 900;
    color: #10263e;
    letter-spacing: -.04em;
}

.drawer__close {
    width: 46px;
    height: 46px;
    border-radius: 16px;
    border: 1px solid rgba(197,214,233,.8);
    background: rgba(255,255,255,.84);
    cursor: pointer;
    font-weight: 900;
    color: #16324f;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.82), 0 12px 24px rgba(68,94,131,.10);
    transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.drawer__close:hover,
.drawer__close:focus-visible {
    transform: translateY(-1px);
    background: rgba(255,255,255,.98);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.86), 0 16px 28px rgba(68,94,131,.14);
    outline: none;
}

.drawer__intro {
    display: grid;
    gap: 14px;
    padding: 16px;
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(236,245,255,.82));
    border: 1px solid rgba(197,214,233,.76);
    box-shadow: 0 18px 34px rgba(68,94,131,.10);
}

.drawer__text {
    margin: 0;
    color: #506178;
    font-size: 14px;
    line-height: 1.55;
    font-weight: 700;
}

.drawer__quickActions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.drawer__quickAction {
    display: grid;
    gap: 4px;
    padding: 14px 14px 15px;
    border-radius: 18px;
    text-decoration: none;
    border: 1px solid rgba(197,214,233,.72);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.drawer__quickAction span {
    color: #6b7a90;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.drawer__quickAction strong {
    color: #16324f;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 900;
    letter-spacing: -.02em;
}

.drawer__quickAction:hover,
.drawer__quickAction:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(125,215,255,.76);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.84), 0 14px 24px rgba(68,94,131,.12);
    outline: none;
}

.drawer__quickAction--telegram {
    background: linear-gradient(180deg, rgba(125,215,255,.36), rgba(255,255,255,.86));
}

.drawer__quickAction--phone {
    background: linear-gradient(180deg, rgba(201,239,125,.34), rgba(255,255,255,.86));
}

.menu--mobile {
    display: grid;
    gap: 10px;
    padding: 4px 0;
}

.menu--mobile .menu__link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 58px;
    padding: 16px 18px;
    border-radius: 18px;
    background: rgba(255,255,255,.7);
    border: 1px solid rgba(197,214,233,.72);
    opacity: 1;
    color: #16324f;
    font-family: "Segoe UI Variable Display", "Manrope", system-ui, sans-serif;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: -.025em;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}

.menu--mobile .menu__link::after {
    content: "→";
    color: #1697e7;
    font-size: 16px;
    font-weight: 900;
    transition: transform .18s ease, color .18s ease;
}

.menu--mobile .menu__link:hover,
.menu--mobile .menu__link:focus-visible {
    background: rgba(255,255,255,.95);
    border-color: rgba(125,215,255,.72);
    box-shadow: 0 12px 24px rgba(68,94,131,.10);
    transform: translateX(2px);
    outline: none;
}

.menu--mobile .menu__link:hover::after,
.menu--mobile .menu__link:focus-visible::after {
    transform: translateX(2px);
}

.drawer__cta {
    display: grid;
    gap: 10px;
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px solid rgba(197,214,233,.68);
}

/* Prevent body scroll when drawer open */
body.no-scroll {
    overflow: hidden;
}

/* ===== HERO adaptive improvements ===== */

/* Better section spacing on mobile */
@media (max-width: 940px) {
    .sectionLite {
        padding: 34px 0;
    }

    .heroA {
        padding: 34px 0 26px;
    }
}

/* Typography scaling */
@media (max-width: 600px) {
    .heroA__title {
        font-size: 30px;
    }

    .heroA__sub {
        font-size: 14px;
    }

    .h2Lite {
        font-size: 24px;
    }
}

/* Buttons full width on mobile */
@media (max-width: 600px) {
    .heroA__buttons {
        flex-direction: column;
    }

    .btnA {
        width: 100%;
        justify-content: center;
    }
}

/* Stats nicer stacking */
@media (max-width: 600px) {
    .heroA__stats {
        gap: 12px;
    }

    .statA {
        width: calc(50% - 6px);
    }
}

/* Photo scaling */
@media (max-width: 600px) {
    .heroA__photoWrap {
        width: 280px;
        height: 280px;
        margin: 10px auto 0;
    }
}

/* Fix steps/tariffs spacing + tap targets */
@media (max-width: 600px) {
    .stepCard {
        padding: 16px;
    }

    .tariffCard {
        padding: 16px;
    }

    .menu__link {
        padding: 10px 0;
    }
}

/* Optional: smooth tap highlight */
a, button {
    -webkit-tap-highlight-color: transparent;
}
/* ===== Cases block (like screenshot) ===== */
.casesHead {
    display: flex;
    align-items: end;
    justify-content: space-between;
    margin-bottom: 12px;
}

.casesGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

.caseHero {
    position: relative;
    display: block;
    height: 132px;
    border-radius: 14px;
    overflow: hidden;
    text-decoration: none;
    color: #fff;
    background-size: cover;
    background-position: center;
    border: 1px solid rgba(226,232,240,.85);
    box-shadow: 0 10px 26px rgba(15,23,42,.10);
}

    .caseHero:hover {
        transform: translateY(-2px);
        box-shadow: 0 18px 40px rgba(15,23,42,.14);
    }

.caseHero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(15,23,42,.55), rgba(15,23,42,.15) 60%, rgba(15,23,42,.00));
}

.caseHero__top {
    position: absolute;
    left: 14px;
    top: 12px;
    z-index: 2;
}

.caseHero__title {
    font-weight: 900;
    font-size: 14px;
}

.caseHero__meta {
    opacity: .92;
    font-size: 11px;
    margin-top: 2px;
    font-weight: 700;
}

.caseHero__badges {
    position: absolute;
    left: 12px;
    bottom: 12px;
    display: flex;
    gap: 10px;
    z-index: 2;
}

.caseBadge {
    border-radius: 10px;
    padding: 8px 10px;
    line-height: 1;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255,255,255,.25);
}

.caseBadge--white {
    background: rgba(255,255,255,.92);
    color: #0f172a;
    border-color: rgba(255,255,255,.75);
}

.caseBadge--blue {
    background: rgba(37,99,235,.88);
    color: #fff;
    border-color: rgba(37,99,235,.55);
}

.caseBadge__big {
    font-weight: 900;
    font-size: 14px;
    letter-spacing: -.02em;
}

.caseBadge__small {
    font-size: 10px;
    opacity: .92;
    font-weight: 800;
    margin-bottom: 4px;
}

.casesCta {
    display: flex;
    justify-content: center;
    margin-top: 12px;
}

.btnCases {
    height: 34px;
    padding: 0 16px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-weight: 900;
    font-size: 12px;
    color: #fff;
    background: linear-gradient(135deg, #38bdf8, #2563eb);
    box-shadow: 0 12px 18px rgba(37,99,235,.18);
}

    .btnCases:hover {
        transform: translateY(-1px);
        box-shadow: 0 18px 28px rgba(37,99,235,.22);
    }

/* mobile */
@media (max-width: 940px) {
    .casesGrid {
        grid-template-columns: 1fr;
    }

    .caseHero {
        height: 150px;
        background-size: cover;
        background-position: center;
    }
}
/* ===== Premium cases ===== */
.casesHead {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.casesHead__link {
    text-decoration: none;
    font-weight: 900;
    font-size: 15px;
    color: #0f172a;
    opacity: .75;
}

    .casesHead__link:hover {
        opacity: 1;
    }

.casesGrid--premium {
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.caseHeroP {
    position: relative;
    display: block;
    height: 160px;
    border-radius: 16px;
    overflow: hidden;
    text-decoration: none;
    color: #fff;
    border: 1px solid rgba(226,232,240,.85);
    box-shadow: 0 12px 30px rgba(15,23,42,.12);
    transform: translateZ(0);
    isolation: isolate;
    background: #0b1220;
}

.caseHeroP__bg {
    position: absolute;
    inset: 0;
    background-image: var(--bg);
    background-size: cover;
    background-position: center;
    transform: scale(1.03);
    filter: saturate(1.05) contrast(1.05);
    transition: transform .35s ease;
}

/* gradient overlay (premium, not too dark) */
.caseHeroP::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(15,23,42,.72), rgba(15,23,42,.20) 65%, rgba(15,23,42,.02)), linear-gradient(180deg, rgba(15,23,42,.15), rgba(15,23,42,.65));
    z-index: 1;
}

/* subtle glow */
.caseHeroP__glow {
    position: absolute;
    inset: -40px -40px auto auto;
    width: 220px;
    height: 220px;
    background: radial-gradient(circle at 30% 30%, rgba(56,189,248,.28), transparent 60%);
    z-index: 1;
    opacity: .9;
}

.caseHeroP__top {
    position: absolute;
    left: 14px;
    top: 12px;
    z-index: 2;
}

.caseHeroP__title {
    font-weight: 900;
    font-size: 14px;
    letter-spacing: -.01em;
}

.caseHeroP__meta {
    margin-top: 3px;
    font-size: 11px;
    font-weight: 700;
    opacity: .9;
}

.caseHeroP__badges {
    position: absolute;
    left: 12px;
    bottom: 12px;
    display: flex;
    gap: 10px;
    z-index: 2;
}

.casePBadge {
    border-radius: 12px;
    padding: 9px 11px;
    line-height: 1;
    border: 1px solid rgba(255,255,255,.22);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.casePBadge--light {
    background: rgba(255,255,255,.92);
    color: #0f172a;
    border-color: rgba(255,255,255,.65);
}

.casePBadge--blue {
    background: rgba(37,99,235,.82);
    color: #fff;
    border-color: rgba(37,99,235,.45);
}

.casePBadge__small {
    font-size: 12px;
    font-weight: 900;
    opacity: .92;
    margin-bottom: 4px;
}

.casePBadge__big {
    font-size: 16px;
    font-weight: 900;
    letter-spacing: -.02em;
}

/* CTA line inside card */
.caseHeroP__cta {
    position: absolute;
    right: 12px;
    bottom: 12px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 12px;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.18);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    font-weight: 900;
    font-size: 11px;
    opacity: .95;
}

.caseHeroP__arrow {
    width: 22px;
    height: 22px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.18);
}

/* Hover */
.caseHeroP:hover {
    box-shadow: 0 20px 50px rgba(15,23,42,.16);
    transform: translateY(-2px);
}

    .caseHeroP:hover .caseHeroP__bg {
        transform: scale(1.08);
    }

/* Mobile */
@media (max-width: 940px) {
    .casesGrid--premium {
        grid-template-columns: 1fr;
    }

    .caseHeroP {
        height: 178px;
    }

    .caseHeroP__cta {
        left: 12px;
        right: auto;
        bottom: 12px;
        margin-top: 10px;
    }
}

@media (max-width: 420px) {
    .caseHeroP {
        height: 190px;
    }

    .caseHeroP__badges {
        gap: 8px;
    }

    .casePBadge {
        padding: 8px 10px;
    }
}
/* ===== Cases: page + details (premium) ===== */
.pageTitle {
    margin: 0;
    font-size: 28px;
    font-weight: 900;
    letter-spacing: -.02em;
}

.casesPageHead {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
}

/* Catalog grid */
.casesCatalogGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

.caseCardP {
    position: relative;
    display: block;
    height: 220px;
    border-radius: 16px;
    overflow: hidden;
    text-decoration: none;
    color: #fff;
    border: 1px solid rgba(226,232,240,.85);
    box-shadow: 0 12px 30px rgba(15,23,42,.12);
    background: #0b1220;
    transform: translateZ(0);
}

.caseCardP__bg {
    position: absolute;
    inset: 0;
    background-image: var(--bg);
    background-size: cover;
    background-position: center;
    transform: scale(1.03);
    filter: saturate(1.05) contrast(1.06);
    transition: transform .35s ease;
}

.caseCardP__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(15,23,42,.72), rgba(15,23,42,.18) 65%, rgba(15,23,42,.02)), linear-gradient(180deg, rgba(15,23,42,.10), rgba(15,23,42,.70));
    z-index: 1;
}

.caseCardP__content {
    position: absolute;
    inset: 0;
    z-index: 2;
    padding: 14px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.caseCardP__title {
    font-weight: 900;
    font-size: 15px;
    letter-spacing: -.01em;
}

.caseCardP__meta {
    font-size: 11px;
    font-weight: 700;
    opacity: .9;
    margin-top: 3px;
}

.caseCardP__badges {
    display: flex;
    gap: 10px;
    align-items: flex-end;
    margin-top: auto;
}

.caseCardP__footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
}

.caseCardP__cta {
    margin-top: 10px;
    align-self: flex-end;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 12px;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.18);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    font-weight: 900;
    font-size: 11px;
}

.caseCardP__arrow {
    width: 22px;
    height: 22px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.18);
}

.caseCardP:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 50px rgba(15,23,42,.16);
}

    .caseCardP:hover .caseCardP__bg {
        transform: scale(1.08);
    }

.caseCardP__footer .caseCardP__badges {
    margin-top: 0;
}

.caseCardP__footer .caseCardP__cta {
    margin-top: 0;
    align-self: auto;
    flex: 0 0 auto;
}

/* Details hero */
.caseHeroD {
    position: relative;
    padding: 52px 0 34px;
    background: #0b1220;
    overflow: hidden;
}

.caseHeroD__bg {
    position: absolute;
    inset: 0;
    background-image: var(--bg);
    background-size: cover;
    background-position: center;
    filter: saturate(1.05) contrast(1.07);
    transform: scale(1.05);
}

.caseHeroD__overlay {
    position: absolute;
    inset: 0;
    background: radial-gradient(800px 420px at 20% 10%, rgba(56,189,248,.22), transparent 60%), radial-gradient(800px 520px at 80% 20%, rgba(34,197,94,.18), transparent 60%), linear-gradient(90deg, rgba(15,23,42,.78), rgba(15,23,42,.20) 65%, rgba(15,23,42,.02)), linear-gradient(180deg, rgba(15,23,42,.20), rgba(15,23,42,.80));
}

.caseHeroD__inner {
    position: relative;
    z-index: 2;
    color: #fff;
}

.backLink {
    display: inline-flex;
    margin-bottom: 10px;
    text-decoration: none;
    font-weight: 900;
    color: rgba(255,255,255,.9);
}

    .backLink:hover {
        opacity: .9;
    }

.caseHeroD__title {
    font-size: 34px;
    font-weight: 900;
    letter-spacing: -.02em;
    margin: 0 0 6px;
}

.caseHeroD__meta {
    font-weight: 800;
    font-size: 12px;
    opacity: .9;
}

.caseHeroD__badges {
    display: flex;
    gap: 10px;
    margin-top: 14px;
}

/* Detail content */
.caseDetailGrid {
    display: grid;
    grid-template-columns: 1fr 1fr 1.1fr;
    gap: 14px;
}

.panelP {
    background: rgba(255,255,255,.85);
    border: 1px solid rgba(226,232,240,.95);
    border-radius: 16px;
    padding: 16px;
    box-shadow: 0 12px 30px rgba(15,23,42,.08);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.panelP__title {
    font-weight: 900;
    margin-bottom: 10px;
}

.panelP__text {
    margin: 0;
    color: #334155;
    font-weight: 700;
    line-height: 1.45;
}

.kpiRow {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.kpi {
    border-radius: 14px;
    padding: 12px;
    background: rgba(248,250,252,.9);
    border: 1px solid rgba(226,232,240,.9);
}

.kpi__v {
    font-weight: 900;
    letter-spacing: -.02em;
}

.kpi__t {
    margin-top: 2px;
    font-size: 12px;
    color: #64748b;
    font-weight: 800;
}

.detailCta {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 12px;
}

    .detailCta .btnA {
        box-shadow: none;
    }

/* Screens */
.screensGridP {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 10px;
}

.screenP {
    display: block;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid rgba(226,232,240,.95);
    box-shadow: 0 10px 24px rgba(15,23,42,.08);
}

    .screenP img {
        width: 100%;
        height: auto;
        display: block;
    }

    .screenP:hover {
        transform: translateY(-2px);
        box-shadow: 0 18px 36px rgba(15,23,42,.12);
    }

/* Responsive */
@media (max-width: 1060px) {
    .casesCatalogGrid {
        grid-template-columns: repeat(2, 1fr);
    }

    .caseDetailGrid {
        grid-template-columns: 1fr;
    }

    .kpiRow {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 940px) {
    .casesCatalogGrid {
        grid-template-columns: 1fr;
    }

    .caseCardP {
        height: 230px;
    }

    .caseHeroD__title {
        font-size: 28px;
    }

    .screensGridP {
        grid-template-columns: 1fr;
    }
}

body {
    font-family: "Segoe UI Variable Text", "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.logo__dots .d4 {
    background: #0f172a;
}

.footer__links {
    display: grid;
    gap: 6px;
}

.lp-home {
    padding: 34px 0 10px;
}

.lp-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
    gap: 20px;
    align-items: stretch;
}

.lp-kicker,
.lp-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(226,232,240,.95);
    box-shadow: 0 10px 24px rgba(15,23,42,.06);
    color: #0f172a;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .01em;
    text-transform: uppercase;
}

.lp-title {
    margin: 0;
    max-width: 10.8ch;
    font-family: "Segoe UI Variable Display", "Bahnschrift SemiBold", "Trebuchet MS", sans-serif;
    font-size: clamp(44px, 5.6vw, 74px);
    font-weight: 800;
    line-height: .95;
    letter-spacing: -.055em;
    text-wrap: balance;
    text-rendering: optimizeLegibility;
    color: #132237;
}

.lp-subtitle {
    margin: 16px 0 0;
    max-width: 62ch;
    color: #334155;
    font-size: 19px;
    line-height: 1.65;
}

.lp-subtitle--small {
    margin-top: 0;
}

.lp-hero__actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 24px;
}

.lp-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 28px;
}

.lp-metric,
.lp-review,
.lp-serviceCard,
.lp-profile,
.lp-formCard {
    background: rgba(255,255,255,.8);
    border: 1px solid rgba(226,232,240,.95);
    box-shadow: 0 14px 34px rgba(15,23,42,.08);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.lp-metric {
    border-radius: 18px;
    padding: 18px;
}

.lp-metric strong {
    display: block;
    font-size: 28px;
    line-height: 1;
}

.lp-metric span {
    display: block;
    margin-top: 8px;
    color: #64748b;
    font-size: 15px;
    font-weight: 700;
}

.lp-profile {
    position: relative;
    border-radius: 28px;
    padding: 24px 24px 0;
    display: grid;
    gap: 18px;
    height: 100%;
    overflow: hidden;
    background:
        radial-gradient(circle at top right, rgba(56,189,248,.16), transparent 36%),
        linear-gradient(180deg, rgba(255,255,255,.86), rgba(241,245,249,.88));
}

.lp-profile__copy {
    position: relative;
    z-index: 1;
    max-width: 34ch;
}

.lp-profile__eyebrow {
    display: block;
    margin-bottom: 12px;
    color: #0ea5e9;
    font-size: 14px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.lp-list {
    margin: 0;
    padding-left: 18px;
    display: grid;
    gap: 10px;
    color: #334155;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.55;
}

.lp-profile__image {
    position: relative;
    min-height: 390px;
    margin: -4px -12px 0;
    border-radius: 0 0 28px 28px;
    background:
        radial-gradient(circle at 50% 14%, rgba(255,255,255,.72), transparent 24%),
        radial-gradient(56% 72% at 50% 52%, rgba(24,37,56,.12), transparent 74%),
        linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(244,249,255,.18) 34%, rgba(214,228,241,.86) 100%);
    overflow: hidden;
}

.lp-profile__image::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 18px;
    width: 56%;
    height: 34px;
    transform: translateX(-50%);
    background: radial-gradient(circle, rgba(24,37,56,.30), rgba(24,37,56,0) 72%);
    filter: blur(16px);
    opacity: .62;
}

.lp-profile__image img {
    position: absolute;
    left: 50%;
    bottom: -16px;
    width: min(470px, 114%);
    height: auto;
    max-height: none;
    object-fit: initial;
    object-position: center bottom;
    transform: translateX(-50%);
    filter: drop-shadow(0 24px 40px rgba(15,23,42,.28));
    -webkit-mask-image:
        radial-gradient(72% 92% at 50% 34%, #000 58%, rgba(0,0,0,.92) 72%, transparent 90%),
        linear-gradient(180deg, transparent 0, #000 14%, #000 92%, transparent 100%);
    mask-image:
        radial-gradient(72% 92% at 50% 34%, #000 58%, rgba(0,0,0,.92) 72%, transparent 90%),
        linear-gradient(180deg, transparent 0, #000 14%, #000 92%, transparent 100%);
}

.lp-sectionHead {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.lp-about {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
    gap: 16px;
}

.lp-about__panel,
.lp-about__image,
.lp-about__facts {
    border-radius: 24px;
    border: 1px solid rgba(226,232,240,.95);
    background: rgba(255,255,255,.82);
    box-shadow: 0 14px 34px rgba(15,23,42,.08);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.lp-about__panel {
    padding: 24px;
}

.lp-about__panel p {
    margin: 0 0 14px;
    color: #334155;
    font-size: 17px;
    line-height: 1.7;
}

.lp-about__leader {
    margin-top: 20px;
    font-weight: 800;
    color: #0f172a;
}

.lp-about__side {
    display: grid;
    gap: 16px;
}

.lp-about__image {
    overflow: hidden;
    min-height: 280px;
}

.lp-about__image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.lp-about__facts {
    display: grid;
    gap: 12px;
    padding: 20px;
}

.lp-about__fact strong {
    display: block;
    font-size: 22px;
    line-height: 1.1;
}

.lp-about__fact span {
    display: block;
    margin-top: 6px;
    color: #64748b;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.5;
}

.lp-note {
    max-width: 36ch;
    margin: 0;
    color: #64748b;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.65;
}

.lp-channel {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(300px, .92fr);
    gap: 16px;
    align-items: stretch;
}

.lp-channel__content,
.lp-channel__card {
    border-radius: 24px;
    border: 1px solid rgba(226,232,240,.95);
    background: rgba(255,255,255,.84);
    box-shadow: 0 16px 36px rgba(15,23,42,.08);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.lp-channel__content {
    padding: 24px;
    background:
        radial-gradient(circle at top left, rgba(65,188,255,.16), transparent 34%),
        radial-gradient(circle at bottom right, rgba(255,184,118,.14), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.92), rgba(244,249,255,.84));
}

.lp-channel__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.lp-channel__chip {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.76);
    border: 1px solid rgba(210,224,240,.88);
    color: #213247;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: -.01em;
    box-shadow: 0 10px 22px rgba(68,94,131,.08);
}

.lp-channel__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 22px;
}

.lp-channel__side {
    display: flex;
}

.lp-channel__card {
    width: 100%;
    padding: 22px;
    background:
        radial-gradient(circle at top right, rgba(169,223,71,.12), transparent 28%),
        linear-gradient(180deg, rgba(255,255,255,.92), rgba(244,249,255,.82));
}

.lp-channel__cardTitle {
    font-size: 18px;
    font-weight: 900;
    color: #132237;
    letter-spacing: -.02em;
}

.lp-channel__list {
    list-style: none;
    padding: 0;
    margin: 18px 0 0;
    display: grid;
    gap: 14px;
}

.lp-channel__list li {
    position: relative;
    padding-left: 20px;
    color: #334155;
    font-weight: 700;
    line-height: 1.6;
}

.lp-channel__list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .62em;
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--avito-blue), var(--avito-green));
    box-shadow: 0 0 0 4px rgba(125,215,255,.12);
}

.lp-channel__content,
.lp-channel__card,
.thanksCard,
.thanksChannel {
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease, background-color .28s ease;
}

.lp-channel__content:hover,
.lp-channel__card:hover,
.thanksCard:hover,
.thanksChannel:hover {
    transform: translateY(-4px);
    box-shadow: 0 24px 46px rgba(68,94,131,.14);
}

.thanksPage {
    padding: 34px 0 64px;
}

.thanksCard {
    max-width: 900px;
    margin: 0 auto;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(210,224,240,.9);
    background:
        radial-gradient(circle at top left, rgba(65,188,255,.14), transparent 32%),
        radial-gradient(circle at bottom right, rgba(169,223,71,.12), transparent 30%),
        linear-gradient(180deg, rgba(255,255,255,.94), rgba(244,249,255,.86));
    box-shadow: 0 20px 46px rgba(68,94,131,.10);
}

.thanksCard__title {
    margin: 0;
    font-size: clamp(34px, 5vw, 52px);
    line-height: .98;
    letter-spacing: -.05em;
    color: #132237;
}

.thanksCard__eyebrow {
    margin-bottom: 16px;
    padding: 11px 18px;
    font-size: 16px;
    font-weight: 900;
    letter-spacing: .02em;
}

.thanksCard__lead {
    margin: 14px 0 0;
    max-width: 56ch;
    color: #3d4f68;
    font-size: 18px;
    line-height: 1.65;
}

.thanksChannel {
    margin-top: 24px;
    padding: 22px;
    border-radius: 22px;
    border: 1px solid rgba(210,224,240,.88);
    background: rgba(255,255,255,.78);
}

.thanksChannel__title {
    font-size: 22px;
    font-weight: 900;
    color: #132237;
    letter-spacing: -.02em;
}

.thanksChannel__text {
    margin: 10px 0 0;
    color: #475569;
    line-height: 1.7;
    font-weight: 700;
    font-size: 17px;
}

.thanksActions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 24px;
}

.thanksActions__back {
    min-height: 52px;
    padding-inline: 20px;
}

.lp-serviceGrid,
.lp-reviewGrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.lp-serviceCard {
    border-radius: 20px;
    padding: 22px;
    display: flex;
    flex-direction: column;
}

.lp-serviceCard img {
    width: 52px;
    height: 52px;
    object-fit: contain;
    margin-bottom: 18px;
    filter: drop-shadow(0 10px 14px rgba(15,23,42,.12));
}

.lp-serviceCard__top {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}

.lp-serviceCard__top h3 {
    margin: 0;
    font-size: 20px;
}

.lp-serviceCard__top span {
    color: #16a34a;
    font-size: 15px;
    font-weight: 900;
}

.lp-serviceCard p,
.lp-review p {
    margin: 0 0 16px;
    color: #334155;
    font-size: 16px;
    line-height: 1.6;
}

.lp-serviceCard .btnTariff {
    margin-top: auto;
}

.lp-review {
    border-radius: 20px;
    padding: 22px;
}

.lp-review strong {
    display: block;
    font-size: 16px;
}

.lp-faq {
    display: grid;
    gap: 12px;
}

.lp-faq__item {
    border-radius: 18px;
    border: 1px solid rgba(226,232,240,.95);
    background: rgba(255,255,255,.8);
    box-shadow: 0 10px 24px rgba(15,23,42,.06);
    padding: 18px 20px;
}

.lp-faq__item summary {
    cursor: pointer;
    list-style: none;
    font-weight: 800;
}

.lp-faq__item summary::-webkit-details-marker {
    display: none;
}

.lp-faq__item p {
    margin: 12px 0 0;
    color: #475569;
    line-height: 1.6;
}

.lp-ctaSection {
    padding: 8px 0 56px;
}

.lp-cta {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(320px, .85fr);
    gap: 16px;
    align-items: stretch;
}

.lp-cta__content,
.lp-formCard {
    border-radius: 24px;
    padding: 24px;
}

.lp-cta__content {
    background:
        radial-gradient(circle at top left, rgba(56,189,248,.14), transparent 40%),
        linear-gradient(180deg, rgba(255,255,255,.86), rgba(240,253,244,.8));
    border: 1px solid rgba(226,232,240,.95);
    box-shadow: 0 16px 40px rgba(15,23,42,.08);
}

.lp-contactList {
    display: grid;
    gap: 10px;
    margin-top: 18px;
    color: #334155;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.65;
}

.lp-contactList a {
    color: #0f172a;
    text-decoration: none;
    font-size: 16px;
    font-weight: 800;
}

.lp-form {
    display: grid;
    gap: 2px;
}

.lp-form__submit {
    width: 100%;
    justify-content: center;
    margin-top: 10px;
}

.lp-formAlert {
    margin-bottom: 14px;
    padding: 12px 14px;
    border-radius: 14px;
    color: #991b1b;
    background: rgba(254,226,226,.92);
    border: 1px solid rgba(252,165,165,.6);
    font-weight: 700;
}

.lp-hp {
    position: absolute;
    left: -9999px;
}

@media (max-width: 1060px) {
    .lp-hero,
    .lp-about,
    .lp-cta,
    .lp-serviceGrid,
    .lp-reviewGrid {
        grid-template-columns: 1fr;
    }

    .lp-title {
        max-width: 11.5ch;
    }
}

@media (max-width: 720px) {
    .lp-home {
        padding-top: 20px;
    }

    .lp-sectionHead {
        align-items: start;
        flex-direction: column;
    }

    .lp-metrics {
        grid-template-columns: 1fr;
    }

    .lp-hero__actions {
        flex-direction: column;
    }

    .lp-hero__actions .btnA {
        width: 100%;
        justify-content: center;
    }

    .lp-title {
        max-width: 9.8ch;
        font-size: clamp(36px, 11vw, 52px);
        line-height: .97;
    }

    .lp-profile__image {
        min-height: 320px;
    }
}

.lp-serviceSupport,
.lp-caseFooter {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 18px;
    padding: 18px 20px;
    border-radius: 22px;
    border: 1px solid rgba(226,232,240,.95);
    background: rgba(255,255,255,.82);
    box-shadow: 0 14px 34px rgba(15,23,42,.08);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.lp-serviceSupport__title,
.lp-caseFooter__title,
.lp-ctaList__title {
    font-weight: 800;
    color: #0f172a;
}

.lp-serviceSupport__text,
.lp-caseFooter__text,
.lp-caseIntro {
    margin: 6px 0 0;
    color: #475569;
    font-size: 17px;
    line-height: 1.6;
}

.lp-caseIntro {
    max-width: 62ch;
}

.lp-caseFooter__actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.lp-benefitsGrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.lp-benefitCard {
    border-radius: 20px;
    padding: 22px;
    border: 1px solid rgba(226,232,240,.95);
    background: rgba(255,255,255,.82);
    box-shadow: 0 14px 34px rgba(15,23,42,.08);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.lp-benefitCard h3 {
    margin: 0 0 10px;
    font-size: 20px;
}

.lp-benefitCard p {
    margin: 0;
    color: #334155;
    font-size: 16px;
    line-height: 1.6;
}

.lp-ctaList {
    margin-top: 18px;
}

@media (max-width: 1060px) {
    .lp-benefitsGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .lp-serviceSupport,
    .lp-caseFooter {
        flex-direction: column;
        align-items: stretch;
    }

    .lp-caseFooter__actions {
        flex-direction: column;
    }

    .lp-caseFooter__actions .btnA,
    .lp-serviceSupport .btnA {
        width: 100%;
        justify-content: center;
    }

    .lp-benefitsGrid {
        grid-template-columns: 1fr;
    }
}

/* ===== Unified visual theme ===== */
:root {
    --avito-blue-light: #7dd7ff;
    --avito-blue: #41bcff;
    --avito-blue-deep: #1697e7;
    --avito-green-light: #c9ef7d;
    --avito-green: #a9df47;
    --avito-green-deep: #86c72b;
    --surface-soft: rgba(255,255,255,.70);
    --surface-strong: rgba(255,255,255,.84);
    --surface-line: rgba(197,214,233,.72);
    --shadow-soft: 0 18px 40px rgba(68,94,131,.10);
    --shadow-hover: 0 26px 56px rgba(68,94,131,.16);
}

body {
    color: #182538;
    background:
        radial-gradient(circle at top left, rgba(65,188,255,.16), transparent 26%),
        radial-gradient(circle at top right, rgba(169,223,71,.14), transparent 24%),
        radial-gradient(circle at bottom center, rgba(255,163,82,.12), transparent 24%),
        linear-gradient(180deg, #edf4fb 0%, #f7faff 42%, #eef5fb 100%);
}

main {
    position: relative;
}

.topnav {
    background: rgba(244,249,255,.74);
    border-bottom: 1px solid rgba(210,224,240,.84);
    box-shadow: 0 12px 30px rgba(68,94,131,.08);
}

.footer {
    background: rgba(244,249,255,.8);
    border-top: 1px solid rgba(210,224,240,.76);
}

.lp-kicker,
.lp-eyebrow,
.lp-metric,
.lp-review,
.lp-serviceCard,
.lp-profile,
.lp-about__panel,
.lp-about__image,
.lp-about__facts,
.lp-serviceSupport,
.lp-caseFooter,
.lp-benefitCard,
.lp-cta__content,
.lp-formCard,
.stepCard,
.panelP,
.kpi,
.lp-faq__item,
.caseHeroP,
.caseCardP,
.screenP {
    border-color: var(--surface-line);
    box-shadow: var(--shadow-soft);
}

.lp-kicker,
.lp-eyebrow {
    background: rgba(255,255,255,.76);
    border-color: rgba(201,220,239,.86);
}

.lp-profile,
.lp-about__panel,
.lp-about__image,
.lp-about__facts,
.lp-serviceSupport,
.lp-caseFooter,
.lp-benefitCard,
.lp-cta__content,
.lp-formCard,
.lp-serviceCard,
.lp-review,
.lp-metric,
.stepCard,
.panelP,
.lp-faq__item {
    background: linear-gradient(180deg, rgba(255,255,255,.88), rgba(245,250,255,.72));
}

.lp-profile {
    background:
        radial-gradient(circle at top right, rgba(125,215,255,.18), transparent 34%),
        radial-gradient(circle at bottom left, rgba(169,223,71,.12), transparent 32%),
        linear-gradient(180deg, rgba(255,255,255,.90), rgba(243,249,255,.80));
}

.lp-cta__content {
    background:
        radial-gradient(circle at top left, rgba(125,215,255,.18), transparent 34%),
        radial-gradient(circle at bottom right, rgba(169,223,71,.12), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.92), rgba(243,250,255,.82));
}

.menu__link,
.btnA,
.btnTariff,
.btnCases,
.iconBtn,
.lp-serviceCard,
.lp-review,
.lp-benefitCard,
.lp-metric,
.stepCard,
.lp-about__panel,
.lp-about__image,
.lp-about__facts,
.lp-serviceSupport,
.lp-caseFooter,
.caseHeroP,
.caseCardP,
.screenP,
.lp-faq__item {
    transition:
        transform .28s ease,
        box-shadow .28s ease,
        border-color .28s ease,
        background-color .28s ease,
        color .28s ease,
        opacity .28s ease;
}

.btnA,
.btnTariff,
.btnCases {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.52);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.55),
        0 16px 28px rgba(68,94,131,.16);
}

.btnA::before,
.btnTariff::before,
.btnCases::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, transparent 20%, rgba(255,255,255,.38) 50%, transparent 80%);
    transform: translateX(-130%);
    transition: transform .55s ease;
}

.btnA:hover::before,
.btnTariff:hover::before,
.btnCases:hover::before {
    transform: translateX(130%);
}

.btnA:hover,
.btnTariff:hover,
.btnCases:hover {
    transform: translateY(-3px) scale(1.01);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.58),
        0 22px 38px rgba(68,94,131,.22);
}

.btnA:active,
.btnTariff:active,
.btnCases:active {
    transform: translateY(-1px) scale(.995);
}

.btnA--blue,
.btnCases {
    background: linear-gradient(135deg, var(--avito-blue-light), var(--avito-blue));
    color: #08314e;
}

.btnA--green,
.btnTariff {
    background: linear-gradient(135deg, var(--avito-green-light), var(--avito-green));
    color: #2a4210;
}

.iconBtn {
    color: var(--avito-blue-deep);
    background: linear-gradient(180deg, rgba(125,215,255,.26), rgba(65,188,255,.16));
    border: 1px solid rgba(65,188,255,.30);
    box-shadow: 0 10px 20px rgba(65,188,255,.14);
}

.iconBtn:hover {
    transform: translateY(-2px) scale(1.04);
    box-shadow: 0 16px 28px rgba(65,188,255,.18);
}

.topnav__actions .iconBtn {
    width: 48px;
    height: 48px;
    border-radius: 16px;
}

.topnav__actions .iconBtn svg {
    width: 20px;
    height: 20px;
}

.topnav__actions .iconBtn--tgProfile {
    color: #0f5f96;
    background: linear-gradient(180deg, rgba(125,215,255,.42), rgba(65,188,255,.22));
    border-color: rgba(65,188,255,.38);
    box-shadow: 0 12px 24px rgba(65,188,255,.16);
}

.topnav__actions .iconBtn--tgChannel {
    color: #6a4211;
    background: linear-gradient(180deg, rgba(255,211,146,.52), rgba(255,184,118,.26));
    border-color: rgba(255,184,118,.44);
    box-shadow: 0 12px 24px rgba(255,184,118,.16);
}

.menu__link {
    position: relative;
}

.menu__link::after {
    content: none;
}

.menu__link:hover {
    color: #0c2942;
    opacity: 1;
}

.menu__link:hover::after {
    transform: none;
}

.lp-serviceCard:hover,
.lp-review:hover,
.lp-benefitCard:hover,
.lp-metric:hover,
.stepCard:hover,
.lp-about__panel:hover,
.lp-about__image:hover,
.lp-about__facts:hover,
.lp-serviceSupport:hover,
.lp-caseFooter:hover,
.lp-faq__item:hover,
.screenP:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-hover);
    border-color: rgba(125,215,255,.56);
}

.caseHeroP:hover,
.caseCardP:hover {
    box-shadow: 0 28px 56px rgba(40,61,94,.22);
}

.stepCard,
.lp-serviceCard,
.lp-benefitCard,
.lp-review,
.lp-metric {
    position: relative;
    overflow: hidden;
}

.stepCard::after,
.lp-serviceCard::after,
.lp-benefitCard::after,
.lp-review::after,
.lp-metric::after {
    content: "";
    position: absolute;
    inset: auto 0 0 0;
    height: 4px;
    background: linear-gradient(90deg, var(--avito-blue-light), var(--avito-green));
    opacity: .72;
    transform: scaleX(.72);
    transform-origin: left center;
    transition: transform .28s ease, opacity .28s ease;
}

.stepCard:hover::after,
.lp-serviceCard:hover::after,
.lp-benefitCard:hover::after,
.lp-review:hover::after,
.lp-metric:hover::after {
    transform: scaleX(1);
    opacity: 1;
}

.caseHeroP::before {
    background:
        linear-gradient(90deg, rgba(18,36,60,.68), rgba(18,36,60,.22) 65%, rgba(18,36,60,.05)),
        linear-gradient(180deg, rgba(65,188,255,.08), rgba(18,36,60,.58));
}

.caseCardP__overlay {
    background:
        linear-gradient(90deg, rgba(18,36,60,.68), rgba(18,36,60,.20) 65%, rgba(18,36,60,.03)),
        linear-gradient(180deg, rgba(65,188,255,.06), rgba(18,36,60,.66));
}

.caseHeroD__overlay {
    background:
        radial-gradient(800px 420px at 20% 10%, rgba(125,215,255,.22), transparent 60%),
        radial-gradient(800px 520px at 80% 20%, rgba(169,223,71,.16), transparent 60%),
        linear-gradient(90deg, rgba(18,36,60,.76), rgba(18,36,60,.20) 65%, rgba(18,36,60,.04)),
        linear-gradient(180deg, rgba(18,36,60,.18), rgba(18,36,60,.80));
}

.field input,
.field textarea,
input,
textarea,
select {
    border: 1px solid rgba(194,214,236,.88);
    background: rgba(255,255,255,.88);
    font-size: 16px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.75);
    transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.field input:focus,
.field textarea:focus,
input:focus,
textarea:focus,
select:focus {
    border-color: rgba(65,188,255,.62);
    box-shadow:
        0 0 0 5px rgba(125,215,255,.22),
        0 10px 20px rgba(65,188,255,.10);
    transform: translateY(-1px);
}

.lp-profile__image img,
.lp-about__image img,
.caseHeroP__bg,
.caseCardP__bg {
    transition: transform .45s ease, filter .45s ease;
}

.lp-profile:hover .lp-profile__image img {
    transform: translateX(-50%) scale(1.03);
}

.lp-about__image:hover img {
    transform: scale(1.03);
}

.lp-kicker,
.lp-eyebrow {
    animation: badgeFloat 5.5s ease-in-out infinite;
}

@keyframes badgeFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-2px);
    }
}

.casesGrid--premium {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.caseHeroP,
.caseCardP {
    height: auto;
    aspect-ratio: 4 / 3;
}

.caseHeroP__top,
.caseCardP__content {
    padding-top: 4px;
}

.caseHeroP__title,
.caseCardP__title {
    font-size: 18px;
    line-height: 1.25;
    max-width: 18ch;
}

.caseHeroP__meta,
.caseCardP__meta {
    margin-top: 6px;
    font-size: 13px;
}

.caseHeroP__cta,
.caseCardP__cta {
    font-size: 12px;
}

@media (max-width: 1180px) {
    .casesGrid--premium {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.casesHead__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 14px;
    flex-wrap: wrap;
}

.caseCarousel {
    --case-gap: 18px;
    position: relative;
}

.caseCarousel__viewport {
    overflow: hidden;
    padding: 4px 0 8px;
}

.caseCarousel__track {
    display: flex;
    gap: var(--case-gap);
    will-change: transform;
    transition: transform .52s cubic-bezier(.22,.61,.36,1);
}

.caseCarousel__slide {
    flex: 0 0 calc((100% - (var(--case-gap) * 2)) / 3);
    min-width: 0;
    display: flex;
}

.caseCarousel__nav {
    position: absolute;
    inset-inline: -22px;
    top: 38%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    transform: translateY(-50%);
    pointer-events: none;
    z-index: 3;
}

.caseCarousel__button {
    width: 68px;
    height: 68px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(197,214,233,.88);
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(236,245,255,.92));
    color: #1697e7;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.82),
        0 14px 28px rgba(68,94,131,.14);
    font-size: 34px;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
    pointer-events: auto;
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease, color .24s ease, opacity .24s ease;
}

.caseCarousel__button:hover:not(:disabled) {
    transform: translateY(-2px);
    border-color: rgba(125,215,255,.72);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.86),
        0 18px 32px rgba(68,94,131,.18);
}

.caseCarousel__button:disabled {
    opacity: .44;
    cursor: default;
    transform: none;
    box-shadow: none;
}

.casePreviewCard {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    width: 100%;
    height: 100%;
    border-radius: 24px;
    border: 1px solid rgba(197,214,233,.72);
    background: linear-gradient(180deg, rgba(255,255,255,.88), rgba(245,250,255,.74));
    box-shadow: 0 18px 40px rgba(68,94,131,.10);
    overflow: hidden;
    transition: transform .28s ease, filter .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.casePreviewCard__media {
    position: relative;
    aspect-ratio: 4 / 3;
    background: #eef4fb;
    border-bottom: 1px solid rgba(197,214,233,.72);
}

.casePreviewCard__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .35s ease;
}

.casePreviewCard__body {
    padding: 18px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.casePreviewCard__meta {
    color: #6b7a90;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.casePreviewCard__title {
    margin-top: 10px;
    min-height: 76px;
    font-size: 21px;
    line-height: 1.35;
    font-weight: 800;
    color: #182538;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.casePreviewCard__desc {
    margin-top: 10px;
    color: #475569;
    line-height: 1.55;
    min-height: 72px;
}

.casePreviewCard__stats {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 14px;
}

.casePreviewCard__link {
    margin-top: auto;
    padding-top: 14px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
    font-weight: 800;
    color: #1697e7;
}

.casePreviewCard:hover {
    transform: translateY(-6px);
    box-shadow: 0 26px 56px rgba(68,94,131,.16);
    border-color: rgba(125,215,255,.56);
}

.casePreviewCard:hover .casePreviewCard__media img {
    transform: scale(1.02);
}

@media (max-width: 1180px) {
    .caseCarousel__slide {
        flex-basis: calc((100% - var(--case-gap)) / 2);
    }
}

@media (max-width: 720px) {
    .casesHead {
        align-items: start;
        flex-direction: column;
    }

    .casesHead__actions {
        width: 100%;
        justify-content: flex-start;
    }

    .caseCarousel {
        --case-gap: 14px;
    }

    .caseCarousel__slide {
        flex-basis: 100%;
    }

    .caseCarousel__nav {
        inset-inline: 8px;
        top: 34%;
    }

    .caseCarousel__button {
        width: 54px;
        height: 54px;
        border-radius: 14px;
        font-size: 28px;
    }

    .casePreviewCard__body {
        padding: 16px;
    }

    .casePreviewCard__title {
        min-height: auto;
        font-size: 18px;
    }

    .casePreviewCard__desc {
        min-height: auto;
    }
}

/* ===== Mobile priority refinements ===== */
.caseCarousel__viewport {
    touch-action: pan-y pinch-zoom;
}

@media (max-width: 940px) {
    .topnav__inner {
        padding: 10px 0;
        gap: 12px;
    }

    .logo__text {
        font-size: 15px;
    }

    .drawer {
        overscroll-behavior: contain;
    }

    .drawer__panel {
        width: min(420px, 100vw);
        padding: 18px 16px calc(24px + env(safe-area-inset-bottom));
        overflow-y: auto;
    }

    .drawer__cta .btnA {
        width: 100%;
        justify-content: center;
    }

    .lp-home {
        padding: 22px 0 6px;
    }

    .lp-hero {
        gap: 16px;
    }

    .lp-kicker,
    .lp-eyebrow {
        margin-bottom: 10px;
        padding: 7px 10px;
        font-size: 12px;
    }

    .lp-subtitle {
        font-size: 16px;
        line-height: 1.55;
    }

    .lp-note {
        max-width: none;
        font-size: 16px;
        line-height: 1.6;
    }

    .lp-profile {
        padding: 18px 18px 0;
        gap: 14px;
    }

    .lp-profile__copy {
        max-width: none;
    }

    .lp-list {
        gap: 8px;
        font-size: 16px;
        line-height: 1.5;
    }

    .lp-profile__image {
        min-height: 300px;
        margin: 0 -8px 0;
    }

    .lp-profile__image img {
        width: min(400px, 108%);
        bottom: -10px;
    }

    .lp-about__panel,
    .lp-about__facts,
    .lp-serviceCard,
    .lp-benefitCard,
    .lp-cta__content,
    .lp-formCard,
    .lp-serviceSupport,
    .lp-caseFooter,
    .stepCard,
    .panelP {
        padding: 18px;
    }

    .lp-about__image {
        min-height: 220px;
    }

    .lp-serviceCard__top {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
    }

    .lp-serviceCard p,
    .lp-about__panel p,
    .lp-benefitCard p,
    .stepCard__text,
    .panelP__text {
        font-size: 16px;
        line-height: 1.55;
    }

    .checkList {
        gap: 8px;
    }

    .checkList li {
        font-size: 15px;
        line-height: 1.45;
    }

    .lp-caseIntro,
    .lp-serviceSupport__text,
    .lp-caseFooter__text {
        max-width: none;
        font-size: 16px;
    }

    .casePreviewCard__media {
        aspect-ratio: 16 / 11;
    }

    .casePreviewCard__title {
        font-size: 18px;
        line-height: 1.32;
    }

    .casePreviewCard__link {
        font-size: 15px;
    }

    .field {
        margin-bottom: 0;
    }

    input,
    textarea,
    select {
        min-height: 52px;
        font-size: 16px;
        border-radius: 16px;
    }

    textarea {
        min-height: 132px;
    }

    .btnA,
    .btnTariff,
    .lp-form__submit {
        min-height: 52px;
    }

    .footer__inner {
        flex-direction: column;
    }

    .casesPageHead {
        align-items: flex-start;
        flex-direction: column;
    }

    .casesPageHead .btnA {
        width: 100%;
        justify-content: center;
    }

    .casesCatalogGrid {
        gap: 12px;
    }

    .caseCardP {
        height: 260px;
        border-radius: 18px;
    }

    .caseCardP__content {
        padding: 12px;
    }

    .caseCardP__title {
        max-width: 16ch;
        line-height: 1.25;
    }

    .caseCardP__badges {
        gap: 8px;
        flex-wrap: wrap;
    }

    .caseCardP__cta {
        align-self: flex-start;
    }

    .caseHeroD {
        padding: 34px 0 24px;
    }

    .caseHeroD__title {
        font-size: 24px;
        line-height: 1.08;
    }

    .caseHeroD__meta {
        font-size: 11px;
        line-height: 1.45;
    }

    .caseHeroD__badges {
        flex-wrap: wrap;
    }

    .kpiRow,
    .detailCta {
        gap: 10px;
    }

    .detailCta .btnA {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 720px) {
    .sectionLite {
        padding: 28px 0;
    }

    .topnav__inner {
        padding: 8px 0;
    }

    .lp-hero {
        gap: 14px;
    }

    .lp-title {
        max-width: 10ch;
        font-size: clamp(34px, 10vw, 46px);
        line-height: .96;
        letter-spacing: -.05em;
    }

    .lp-subtitle {
        margin-top: 12px;
        font-size: 16px;
    }

    .lp-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        margin-top: 20px;
    }

    .lp-metric {
        padding: 14px;
        border-radius: 16px;
    }

    .lp-metric strong {
        font-size: 22px;
    }

    .lp-metric span {
        margin-top: 6px;
        font-size: 14px;
    }

    .lp-hero__actions {
        margin-top: 18px;
        gap: 10px;
    }

    .lp-profile {
        border-radius: 24px;
    }

    .lp-profile__image {
        min-height: 260px;
        border-radius: 0 0 24px 24px;
    }

    .lp-profile__image::before {
        width: 66%;
        bottom: 12px;
    }

    .lp-profile__image img {
        width: min(340px, 106%);
    }

    .lp-serviceGrid,
    .lp-benefitsGrid {
        gap: 12px;
    }

    .lp-serviceCard img {
        width: 44px;
        height: 44px;
        margin-bottom: 14px;
    }

    .lp-serviceSupport,
    .lp-caseFooter,
    .lp-cta__content,
    .lp-formCard {
        padding: 16px;
        border-radius: 18px;
    }

    .casesHead__actions {
        width: 100%;
        justify-content: space-between;
    }

    .caseCarousel {
        --case-gap: 12px;
    }

    .caseCarousel__viewport {
        padding: 2px 0 8px;
    }

    .caseCarousel__nav {
        inset-inline: 4px;
        top: 34%;
    }

    .caseCarousel__button {
        width: 46px;
        height: 46px;
        font-size: 24px;
        border-radius: 14px;
        background: rgba(255,255,255,.94);
    }

    .casePreviewCard {
        border-radius: 20px;
    }

    .casePreviewCard__title {
        min-height: auto;
        font-size: 19px;
    }

    .casePBadge {
        padding: 8px 10px;
        border-radius: 10px;
    }

    .casePBadge__big {
        font-size: 14px;
    }

    .casePBadge__small {
        font-size: 11px;
    }

    .lp-contactList {
        gap: 8px;
        margin-top: 14px;
        font-size: 15px;
    }

    .lp-ctaSection {
        padding: 4px 0 34px;
    }

    .field input,
    .field textarea,
    input,
    textarea,
    select {
        padding: 13px 14px;
    }

    .pageTitle {
        font-size: 24px;
    }

    .caseCardP__title {
        font-size: 16px;
    }

    .kpiRow {
        grid-template-columns: 1fr;
    }

    .detailCta {
        display: grid;
        grid-template-columns: 1fr;
    }
}

@media (max-width: 420px) {
    .logo__text {
        font-size: 14px;
    }

    .lp-title {
        max-width: 9.2ch;
        font-size: clamp(31px, 10.5vw, 40px);
    }

    .lp-metrics {
        grid-template-columns: 1fr;
    }

    .lp-profile__image {
        min-height: 230px;
    }

    .lp-profile__image img {
        width: min(300px, 104%);
    }

    .caseCarousel__button {
        width: 42px;
        height: 42px;
        font-size: 22px;
    }

    .casePreviewCard__stats {
        flex-wrap: nowrap;
    }

    .casePBadge {
        flex: 1 1 0;
    }

    .h2Lite {
        font-size: 24px;
    }
}

/* ===== Lead inbox ===== */
.leadInboxStatusGrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 14px;
}

.leadInboxStatusCard {
    padding: 16px 18px;
    border-radius: 18px;
    border: 1px solid rgba(197,214,233,.72);
    background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(245,250,255,.76));
    box-shadow: 0 18px 40px rgba(68,94,131,.10);
}

.leadInboxStatusCard__label,
.leadInboxCard__label {
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #6b7a90;
}

.leadInboxStatusCard__value,
.leadInboxCard__name {
    margin-top: 8px;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 900;
    color: #182538;
}

.leadInboxStatusCard__value.is-ok,
.leadInboxBadge.is-ok {
    color: #1e7a32;
}

.leadInboxStatusCard__value.is-warn,
.leadInboxBadge.is-warn {
    color: #9a6700;
}

.leadInboxEmpty {
    padding: 18px;
}

.leadInboxFlash {
    margin-bottom: 12px;
    padding: 16px 18px;
    border-radius: 16px;
    background: rgba(236,253,245,.92);
    border: 1px solid rgba(134,198,102,.42);
    color: #1e7a32;
    font-weight: 800;
}

.leadInboxList {
    display: grid;
    gap: 12px;
}

.leadInboxHeadActions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.leadInboxCard {
    display: grid;
    gap: 14px;
}

.leadInboxCard__top {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 14px;
}

.leadInboxCard__meta {
    margin-top: 6px;
    color: #6b7a90;
    font-size: 13px;
    font-weight: 700;
}

.leadInboxDelivery {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}

.leadInboxCard__actions {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.leadInboxBadge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(248,250,252,.96);
    border: 1px solid rgba(197,214,233,.72);
    font-size: 13px;
    font-weight: 900;
}

.leadInboxDeleteButton {
    min-height: 34px;
    padding: 8px 14px;
    border: 1px solid rgba(248,113,113,.36);
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(254,226,226,.96), rgba(254,242,242,.94));
    color: #b91c1c;
    box-shadow: 0 10px 22px rgba(185,28,28,.10);
    font: inherit;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.leadInboxDeleteButton:hover {
    transform: translateY(-1px);
    border-color: rgba(239,68,68,.48);
    box-shadow: 0 14px 28px rgba(185,28,28,.14);
}

.leadInboxCard__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.leadInboxCard__message,
.leadInboxCard__notes {
    padding: 14px 16px;
    border-radius: 16px;
    background: rgba(248,250,252,.82);
    border: 1px solid rgba(226,232,240,.92);
}

.leadInboxCard__text {
    margin-top: 8px;
    color: #334155;
    line-height: 1.6;
    word-break: break-word;
}

.adminAuth {
    min-height: calc(100vh - 180px);
    display: flex;
    align-items: center;
}

.adminAuth .container {
    width: min(640px, 100%);
}

.adminAuth__card {
    padding: 28px;
    border-radius: 24px;
    border: 1px solid rgba(197,214,233,.72);
    background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(243,249,255,.82));
    box-shadow: 0 18px 40px rgba(68,94,131,.12);
}

.adminAuth__form {
    margin-top: 16px;
}

.adminAuth__submit {
    width: 100%;
    justify-content: center;
}

.adminAuth__back {
    margin-top: 12px;
}

.adminAuth__back .btnA {
    width: 100%;
    justify-content: center;
}

@media (max-width: 940px) {
    .leadInboxStatusGrid {
        grid-template-columns: 1fr;
    }

    .leadInboxCard__top {
        flex-direction: column;
    }

    .leadInboxCard__actions,
    .leadInboxDelivery {
        justify-content: flex-start;
    }
}

@media (max-width: 720px) {
    .leadInboxHeadActions {
        width: 100%;
        flex-direction: column;
    }

    .leadInboxHeadActions .btnA,
    .leadInboxHeadActions button.btnA {
        width: 100%;
        justify-content: center;
    }

    .leadInboxStatusCard,
    .leadInboxCard {
        padding: 16px;
    }

    .leadInboxCard__grid {
        grid-template-columns: 1fr;
    }

    .leadInboxStatusCard__value,
    .leadInboxCard__name {
        font-size: 20px;
    }

    .leadInboxDeleteButton {
        width: 100%;
        justify-content: center;
    }

    .adminAuth {
        min-height: auto;
    }

    .adminAuth__card {
        padding: 18px;
        border-radius: 18px;
    }
}

@media (max-width: 1060px) {
    .lp-channel {
        grid-template-columns: 1fr;
    }
}

/* ===== Hero redesign ===== */
.lp-home {
    padding: 28px 0 14px;
}

.lp-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
    gap: 22px;
    padding: 28px;
    border-radius: 36px;
    overflow: hidden;
    border: 1px solid rgba(198,220,241,.92);
    box-shadow: 0 28px 62px rgba(37,66,103,.12);
    background:
        radial-gradient(1200px 620px at -10% 8%, rgba(92,184,255,.24), transparent 60%),
        radial-gradient(840px 540px at 110% 10%, rgba(216,255,118,.20), transparent 46%),
        linear-gradient(135deg, #edf7ff 0%, #f8fbff 48%, #edf6ee 100%);
}

.lp-hero::before,
.lp-hero::after {
    content: "";
    position: absolute;
    pointer-events: none;
}

.lp-hero::before {
    inset: auto auto -140px -100px;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(56,189,248,.22), rgba(56,189,248,0) 72%);
    filter: blur(18px);
    opacity: .8;
}

.lp-hero::after {
    top: 18px;
    right: 18px;
    width: 180px;
    height: 180px;
    border-radius: 32px;
    background:
        linear-gradient(135deg, rgba(255,255,255,.52), rgba(255,255,255,0)),
        radial-gradient(circle at 30% 30%, rgba(169,223,71,.24), rgba(169,223,71,0) 68%);
    opacity: .72;
    transform: rotate(10deg);
}

.lp-hero__content,
.lp-hero__aside {
    position: relative;
    z-index: 1;
}

.lp-hero__content {
    padding: 6px 4px 4px;
}

.lp-kicker {
    margin-bottom: 16px;
    padding: 10px 16px;
    border-color: rgba(20,35,57,.08);
    background: rgba(255,255,255,.72);
    color: #17304c;
    box-shadow: 0 14px 28px rgba(37,66,103,.08);
}

.lp-title {
    max-width: 8.2ch;
    font-size: clamp(48px, 6vw, 86px);
    font-weight: 900;
    line-height: .92;
    letter-spacing: -.065em;
    color: #14243a;
}

.lp-subtitle {
    margin-top: 18px;
    max-width: 34ch;
    color: #36506f;
    font-size: 20px;
    line-height: 1.62;
}

.lp-hero__actions {
    gap: 14px;
    margin-top: 28px;
}

.lp-hero__actions .btnA {
    min-height: 58px;
    padding: 15px 22px;
    border-radius: 18px;
    font-size: 16px;
    box-shadow: 0 18px 32px rgba(23,48,76,.10);
}

.lp-hero__support {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.lp-hero__supportItem {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.62);
    border: 1px solid rgba(198,220,241,.9);
    color: #314962;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.3;
    box-shadow: 0 12px 22px rgba(37,66,103,.06);
}

.lp-metrics {
    gap: 14px;
    margin-top: 26px;
}

.lp-metric {
    position: relative;
    padding: 20px 20px 18px;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255,255,255,.94), rgba(245,250,255,.88));
    border: 1px solid rgba(198,220,241,.88);
    box-shadow: 0 18px 34px rgba(37,66,103,.08);
    overflow: hidden;
}

.lp-metric::after {
    content: "";
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 0;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, #63c9ff 0%, #c6f16f 100%);
}

.lp-metric strong {
    font-size: 40px;
    letter-spacing: -.05em;
    color: #18283f;
}

.lp-metric span {
    margin-top: 10px;
    color: #5f7692;
    font-size: 15px;
    font-weight: 800;
}

.lp-profile {
    position: relative;
    display: grid;
    grid-template-rows: auto auto minmax(360px, 1fr);
    gap: 16px;
    height: 100%;
    padding: 22px;
    border-radius: 30px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.08);
    box-shadow: 0 30px 60px rgba(12,22,35,.24);
    background:
        radial-gradient(circle at 18% 16%, rgba(193,255,77,.18), transparent 30%),
        radial-gradient(circle at 82% 10%, rgba(89,184,255,.22), transparent 28%),
        linear-gradient(180deg, #122338 0%, #0b1624 100%);
}

.lp-profile::before {
    content: "";
    position: absolute;
    inset: 16px 16px auto auto;
    width: 128px;
    height: 128px;
    border-radius: 28px;
    background: linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,0));
    opacity: .5;
    transform: rotate(10deg);
}

.lp-profile__copy,
.lp-profile__caption {
    position: relative;
    z-index: 1;
}

.lp-profile__copy {
    max-width: none;
}

.lp-profile__eyebrow {
    margin-bottom: 10px;
    color: #d9ff47;
    font-size: 13px;
    letter-spacing: .12em;
}

.lp-profile__top {
    margin-bottom: 14px;
}

.lp-profile__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.lp-profile__chip {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.12);
    color: #eff7ff;
    font-size: 13px;
    font-weight: 800;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.lp-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 10px;
    color: #e8f1fb;
}

.lp-list li {
    position: relative;
    padding: 14px 16px 14px 48px;
    border-radius: 18px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.10);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.55;
}

.lp-list li::before {
    content: "";
    position: absolute;
    left: 16px;
    top: 16px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background:
        radial-gradient(circle at 50% 50%, #17304c 22%, transparent 24%),
        linear-gradient(135deg, #d9ff47, #63c9ff);
    box-shadow: 0 0 0 6px rgba(217,255,71,.08);
}

.lp-profile__caption {
    display: inline-flex;
    flex-direction: column;
    gap: 4px;
    max-width: 300px;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.1);
    color: #dbe9f8;
}

.lp-profile__caption strong {
    color: #fff;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: -.03em;
}

.lp-profile__caption span {
    color: #b8cae0;
    font-size: 14px;
    line-height: 1.5;
}

.lp-profile__image {
    min-height: 380px;
    margin: 0;
    border-radius: 26px;
    border: 1px solid rgba(255,255,255,.10);
    background:
        radial-gradient(circle at 50% 18%, rgba(255,255,255,.22), transparent 26%),
        radial-gradient(56% 72% at 50% 56%, rgba(0,0,0,.28), transparent 74%),
        linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02)),
        linear-gradient(180deg, #0e1a28 0%, #08111c 100%);
}

.lp-profile__image::before {
    left: 50%;
    bottom: 20px;
    width: 58%;
    height: 36px;
    background: radial-gradient(circle, rgba(0,0,0,.50), rgba(0,0,0,0) 70%);
    opacity: .78;
}

.lp-profile__image img {
    bottom: -10px;
    width: min(460px, 112%);
    filter: drop-shadow(0 30px 44px rgba(0,0,0,.34));
    -webkit-mask-image:
        radial-gradient(74% 92% at 50% 34%, #000 58%, rgba(0,0,0,.92) 72%, transparent 90%),
        linear-gradient(180deg, transparent 0, #000 16%, #000 94%, transparent 100%);
    mask-image:
        radial-gradient(74% 92% at 50% 34%, #000 58%, rgba(0,0,0,.92) 72%, transparent 90%),
        linear-gradient(180deg, transparent 0, #000 16%, #000 94%, transparent 100%);
}

.lp-profile:hover .lp-profile__image img {
    transform: translateX(-50%) scale(1.02);
}

@media (max-width: 1180px) {
    .lp-hero {
        grid-template-columns: minmax(0, 1fr);
    }

    .lp-title {
        max-width: 9.4ch;
    }

    .lp-subtitle {
        max-width: 42ch;
    }

    .lp-profile {
        grid-template-columns: minmax(0, 1fr) minmax(300px, .84fr);
        grid-template-rows: auto auto;
        align-items: end;
    }

    .lp-profile__copy {
        grid-column: 1 / 2;
    }

    .lp-profile__caption {
        grid-column: 1 / 2;
        align-self: start;
    }

    .lp-profile__image {
        grid-column: 2 / 3;
        grid-row: 1 / 3;
        min-height: 340px;
    }
}

@media (max-width: 940px) {
    .lp-home {
        padding: 22px 0 8px;
    }

    .lp-hero {
        padding: 18px;
        border-radius: 28px;
        gap: 18px;
    }

    .lp-title {
        max-width: 9.6ch;
        font-size: clamp(40px, 8vw, 64px);
    }

    .lp-subtitle {
        max-width: 38ch;
        font-size: 17px;
    }

    .lp-hero__actions .btnA {
        min-height: 54px;
    }

    .lp-hero__support {
        gap: 8px;
    }

    .lp-hero__supportItem {
        min-height: 38px;
        font-size: 13px;
    }

    .lp-metrics {
        gap: 12px;
    }

    .lp-metric {
        padding: 18px 18px 16px;
    }

    .lp-metric strong {
        font-size: 32px;
    }

    .lp-profile {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto minmax(300px, 1fr);
        padding: 18px;
        border-radius: 24px;
    }

    .lp-profile__image {
        grid-column: auto;
        grid-row: auto;
        min-height: 320px;
        border-radius: 22px;
    }

    .lp-profile__caption {
        max-width: none;
    }
}

@media (max-width: 720px) {
    .lp-hero {
        padding: 16px;
        border-radius: 24px;
    }

    .lp-kicker {
        margin-bottom: 12px;
        padding: 8px 12px;
        font-size: 12px;
    }

    .lp-title {
        max-width: 8.8ch;
        font-size: clamp(34px, 11vw, 52px);
        line-height: .95;
    }

    .lp-subtitle {
        margin-top: 14px;
        font-size: 16px;
        line-height: 1.58;
    }

    .lp-hero__actions {
        margin-top: 20px;
        flex-direction: column;
    }

    .lp-hero__actions .btnA {
        width: 100%;
        justify-content: center;
    }

    .lp-hero__support {
        display: grid;
        grid-template-columns: 1fr;
        margin-top: 14px;
    }

    .lp-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin-top: 18px;
    }

    .lp-metric {
        padding: 16px 16px 14px;
        border-radius: 18px;
    }

    .lp-metric strong {
        font-size: 28px;
    }

    .lp-metric span {
        font-size: 14px;
    }

    .lp-profile__top {
        margin-bottom: 12px;
    }

    .lp-profile__chip {
        min-height: 32px;
        padding: 7px 10px;
        font-size: 12px;
    }

    .lp-list li {
        padding: 13px 14px 13px 42px;
        border-radius: 16px;
        font-size: 14px;
    }

    .lp-list li::before {
        left: 14px;
        top: 15px;
        width: 16px;
        height: 16px;
    }

    .lp-profile__caption {
        padding: 12px 14px;
    }

    .lp-profile__image {
        min-height: 280px;
    }

    .lp-profile__image img {
        width: min(360px, 108%);
    }
}

@media (max-width: 420px) {
    .lp-title {
        max-width: 8.6ch;
        font-size: clamp(31px, 10.8vw, 42px);
    }

    .lp-metrics {
        grid-template-columns: 1fr;
    }

    .lp-profile__image {
        min-height: 240px;
    }

    .lp-profile__image img {
        width: min(310px, 106%);
    }
}

/* ===== Hero redesign v2 ===== */
.lp-home {
    padding: 30px 0 18px;
}

.lp-hero {
    display: grid;
    grid-template-columns: minmax(340px, .9fr) minmax(0, 1.1fr);
    gap: 24px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    overflow: visible;
    align-items: stretch;
}

.lp-hero::before,
.lp-hero::after {
    display: none;
}

.lp-hero__aside {
    order: -1;
}

.lp-hero__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 228px;
    grid-template-areas:
        "kicker support"
        "title support"
        "subtitle support"
        "actions support"
        "metrics metrics";
    gap: 0 18px;
    align-content: start;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(198,220,241,.92);
    box-shadow: 0 26px 54px rgba(37,66,103,.10);
    background:
        radial-gradient(720px 320px at 0% 8%, rgba(125,215,255,.22), transparent 70%),
        radial-gradient(560px 280px at 100% 12%, rgba(169,223,71,.14), transparent 58%),
        linear-gradient(180deg, rgba(255,255,255,.97), rgba(247,250,255,.95));
}

.lp-kicker {
    grid-area: kicker;
    margin-bottom: 14px;
    width: fit-content;
    padding: 10px 16px;
    border-radius: 999px;
    background: rgba(255,255,255,.86);
    border: 1px solid rgba(198,220,241,.92);
    color: #18314c;
    box-shadow: 0 12px 22px rgba(37,66,103,.08);
}

.lp-title {
    grid-area: title;
    max-width: none;
    margin: 0;
    font-size: clamp(56px, 7vw, 92px);
    font-weight: 900;
    line-height: .9;
    letter-spacing: -.07em;
    color: #14243a;
}

.lp-subtitle {
    grid-area: subtitle;
    max-width: 26ch;
    margin: 18px 0 0;
    color: #3d5878;
    font-size: 20px;
    line-height: 1.62;
}

.lp-hero__actions {
    grid-area: actions;
    margin-top: 26px;
    gap: 14px;
}

.lp-hero__actions .btnA {
    min-height: 58px;
    padding: 15px 24px;
    border-radius: 18px;
    box-shadow: 0 16px 28px rgba(37,66,103,.10);
}

.lp-hero__support {
    grid-area: support;
    display: grid;
    gap: 10px;
    align-content: start;
    margin-top: 2px;
}

.lp-hero__supportItem {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 92px;
    padding: 16px 16px 16px 54px;
    border-radius: 22px;
    border: 1px solid rgba(255,255,255,.08);
    background:
        linear-gradient(180deg, rgba(18,35,58,.96), rgba(12,26,44,.96)),
        linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,0));
    color: #eef5ff;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.45;
    box-shadow: 0 22px 36px rgba(12,22,35,.16);
}

.lp-hero__supportItem::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 50%;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    transform: translateY(-50%);
    background:
        radial-gradient(circle at 50% 50%, #17304c 24%, transparent 26%),
        linear-gradient(135deg, #d9ff47, #63c9ff);
    box-shadow: 0 0 0 8px rgba(217,255,71,.10);
}

.lp-metrics {
    grid-area: metrics;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 26px;
}

.lp-metric {
    padding: 18px 18px 16px;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255,255,255,.94), rgba(243,249,255,.88));
    border: 1px solid rgba(198,220,241,.9);
    box-shadow: 0 18px 32px rgba(37,66,103,.08);
}

.lp-metric::after {
    left: 18px;
    right: 18px;
}

.lp-metric strong {
    font-size: 34px;
    letter-spacing: -.05em;
}

.lp-metric span {
    margin-top: 10px;
    color: #647b96;
}

.lp-profile {
    display: grid;
    grid-template-areas:
        "image"
        "caption"
        "copy";
    grid-template-rows: minmax(430px, 1fr) auto auto;
    gap: 14px;
    height: 100%;
    padding: 18px;
    border-radius: 34px;
    border: 1px solid rgba(16,30,46,.08);
    box-shadow: 0 28px 56px rgba(12,22,35,.14);
    background:
        radial-gradient(540px 280px at 20% 10%, rgba(125,215,255,.16), transparent 60%),
        radial-gradient(420px 220px at 84% 12%, rgba(169,223,71,.14), transparent 46%),
        linear-gradient(180deg, #eef5fb, #f8fbff);
}

.lp-profile__image,
.lp-profile__caption,
.lp-profile__copy {
    position: relative;
    z-index: 1;
}

.lp-profile__image {
    grid-area: image;
    min-height: 430px;
    margin: 0;
    border-radius: 28px;
    border: 1px solid rgba(198,220,241,.70);
    overflow: hidden;
    background:
        radial-gradient(circle at 50% 14%, rgba(255,255,255,.74), transparent 26%),
        radial-gradient(48% 56% at 50% 76%, rgba(21,37,59,.18), transparent 72%),
        linear-gradient(180deg, #17273c 0%, #0c1727 100%);
}

.lp-profile__image::before {
    width: 52%;
    height: 34px;
    bottom: 20px;
    background: radial-gradient(circle, rgba(0,0,0,.38), rgba(0,0,0,0) 72%);
    opacity: .82;
}

.lp-profile__image img {
    bottom: -8px;
    width: min(430px, 104%);
    filter: drop-shadow(0 26px 40px rgba(0,0,0,.30));
}

.lp-profile__caption {
    grid-area: caption;
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 16px 18px;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(18,35,58,.96), rgba(12,26,44,.96));
    border: 1px solid rgba(255,255,255,.08);
    box-shadow: 0 20px 34px rgba(12,22,35,.16);
}

.lp-profile__caption strong {
    color: #fff;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -.04em;
}

.lp-profile__caption span {
    color: #bcd0e7;
    font-size: 15px;
    line-height: 1.55;
}

.lp-profile__copy {
    grid-area: copy;
    padding: 24px;
    border-radius: 26px;
    background: linear-gradient(180deg, rgba(255,255,255,.90), rgba(244,249,255,.92));
    border: 1px solid rgba(198,220,241,.82);
    box-shadow: 0 16px 28px rgba(37,66,103,.08);
}

.lp-profile__eyebrow {
    margin-bottom: 14px;
    color: #17304c;
}

.lp-profile__top {
    margin-bottom: 14px;
}

.lp-profile__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.lp-profile__chip {
    min-height: 34px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(24,48,76,.08);
    border: 1px solid rgba(198,220,241,.88);
    color: #17304c;
    font-weight: 800;
}

.lp-list {
    gap: 12px;
    color: #1d3049;
}

.lp-list li {
    background: rgba(24,48,76,.04);
    border: 1px solid rgba(198,220,241,.78);
    color: #1d3049;
}

@media (max-width: 1180px) {
    .lp-hero {
        grid-template-columns: 1fr;
    }

    .lp-hero__aside {
        order: 0;
    }

    .lp-hero__content {
        grid-template-columns: 1fr;
        grid-template-areas:
            "kicker"
            "title"
            "subtitle"
            "support"
            "actions"
            "metrics";
    }

    .lp-title,
    .lp-subtitle {
        max-width: none;
    }

    .lp-hero__support {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin-top: 18px;
    }

    .lp-hero__supportItem {
        min-height: 100%;
    }
}

@media (max-width: 940px) {
    .lp-home {
        padding: 22px 0 10px;
    }

    .lp-hero {
        gap: 18px;
    }

    .lp-hero__content {
        padding: 24px;
        border-radius: 28px;
    }

    .lp-title {
        font-size: clamp(42px, 8vw, 64px);
    }

    .lp-subtitle {
        font-size: 17px;
    }

    .lp-hero__support {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-hero__supportItem {
        min-height: 76px;
        padding-left: 50px;
        border-radius: 18px;
        font-size: 14px;
    }

    .lp-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lp-profile {
        padding: 16px;
        border-radius: 28px;
    }

    .lp-profile__image {
        min-height: 360px;
        border-radius: 22px;
    }

    .lp-profile__caption,
    .lp-profile__copy {
        border-radius: 20px;
    }
}

@media (max-width: 720px) {
    .lp-hero__content {
        padding: 18px;
        border-radius: 24px;
    }

    .lp-title {
        font-size: clamp(34px, 11vw, 48px);
        line-height: .94;
    }

    .lp-subtitle {
        margin-top: 14px;
        font-size: 16px;
    }

    .lp-hero__actions {
        flex-direction: column;
        margin-top: 18px;
    }

    .lp-hero__actions .btnA {
        width: 100%;
        justify-content: center;
    }

    .lp-metrics {
        grid-template-columns: 1fr;
        margin-top: 20px;
    }

    .lp-metric {
        border-radius: 18px;
    }

    .lp-profile {
        gap: 12px;
        padding: 14px;
        border-radius: 24px;
    }

    .lp-profile__image {
        min-height: 290px;
    }

    .lp-profile__image img {
        width: min(340px, 106%);
    }

    .lp-profile__caption {
        padding: 14px 16px;
    }

    .lp-profile__caption strong {
        font-size: 20px;
    }

    .lp-profile__copy {
        padding: 18px;
    }

    .lp-list li {
        padding: 13px 14px 13px 42px;
        font-size: 14px;
    }
}

@media (max-width: 940px) {
    .topnav__phone {
        display: none;
    }

    .topnav__actions {
        gap: 10px;
    }

    .topnav__actions .iconBtn {
        display: none;
    }

    .lp-channel__content,
    .lp-channel__card,
    .thanksCard,
    .thanksChannel {
        padding: 18px;
    }

    .lp-channel__actions,
    .thanksActions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .thanksCard__lead {
        font-size: 16px;
    }

    .thanksChannel__title {
        font-size: 20px;
    }
}

@media (max-width: 720px) {
    .menu__link {
        min-height: 46px;
        font-size: 15px;
    }

    .burger {
        width: 48px;
        height: 48px;
        border-radius: 16px;
    }

    .burger span {
        left: 14px;
        width: 18px;
    }

    .drawer__panel {
        padding: 16px 14px calc(20px + env(safe-area-inset-bottom));
        gap: 14px;
    }

    .drawer__intro {
        padding: 14px;
        border-radius: 20px;
    }

    .drawer__quickActions {
        grid-template-columns: 1fr;
    }

    .drawer__title {
        font-size: 22px;
    }

    .menu--mobile .menu__link {
        min-height: 54px;
        padding: 14px 16px;
        border-radius: 16px;
        font-size: 16px;
    }

    .lp-channel__chips {
        gap: 8px;
    }

    .lp-channel__chip {
        width: 100%;
        justify-content: center;
    }

    .thanksPage {
        padding: 24px 0 48px;
    }

    .thanksCard__title {
        font-size: clamp(30px, 10vw, 40px);
    }

    .thanksCard__eyebrow {
        padding: 10px 16px;
        font-size: 15px;
    }
}

/* ===== Hero final overrides ===== */
.lp-hero__content {
    grid-template-columns: 1fr;
    grid-template-areas:
        "kicker"
        "title"
        "subtitle"
        "actions"
        "metrics";
    gap: 0;
}

.lp-hero__support {
    display: none;
}

.lp-title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .06em;
    max-width: none;
    font-size: clamp(28px, 3.15vw, 42px);
    line-height: .94;
    letter-spacing: -.05em;
    color: #183b67;
}

.lp-title__line {
    display: block;
    position: relative;
    white-space: nowrap;
}

.lp-title__accent {
    color: #2d6fff;
    text-shadow: 0 10px 24px rgba(60,167,255,.16);
}

.lp-title__line--emphasis {
    z-index: 0;
    padding-inline: .08em .14em;
}

.lp-title__line--emphasis::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: .08em;
    height: .28em;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(60,167,255,.16), rgba(143,216,78,.20));
    z-index: -1;
}

.lp-subtitle {
    max-width: 34ch;
    margin-top: 16px;
    color: #517196;
}

.lp-hero__actions {
    margin-top: 22px;
}

.lp-metrics {
    margin-top: 22px;
}

.lp-metric strong {
    white-space: nowrap;
}

.lp-profile {
    border-color: rgba(198,220,241,.82);
    box-shadow: 0 24px 48px rgba(57,92,136,.10);
    background:
        radial-gradient(520px 260px at 16% 12%, rgba(60,167,255,.16), transparent 58%),
        radial-gradient(440px 220px at 86% 10%, rgba(143,216,78,.18), transparent 46%),
        linear-gradient(180deg, #eef8ff 0%, #f8fcff 100%);
}

.lp-profile__image {
    border-color: rgba(198,220,241,.82);
    background:
        radial-gradient(circle at 50% 14%, rgba(255,255,255,.64), transparent 28%),
        radial-gradient(48% 56% at 50% 76%, rgba(21,37,59,.16), transparent 72%),
        linear-gradient(160deg, #2456a6 0%, #3ca7ff 54%, #7bd84c 100%);
}

.lp-profile__caption {
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(244,250,255,.94));
    border-color: rgba(198,220,241,.86);
    box-shadow: 0 14px 24px rgba(57,92,136,.08);
}

.lp-profile__caption strong {
    color: #183b67;
}

.lp-profile__caption span {
    color: #5f7f9f;
}

.lp-profile__copy {
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(243,250,244,.94));
    border-color: rgba(198,220,241,.82);
}

.lp-profile__eyebrow {
    margin-bottom: 14px;
    color: #2e9953;
}

.lp-profile__support {
    display: grid;
    gap: 10px;
    margin-bottom: 14px;
}

.lp-profile__supportItem {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 72px;
    padding: 14px 16px 14px 52px;
    border-radius: 20px;
    border: 1px solid rgba(198,220,241,.82);
    background: rgba(255,255,255,.92);
    color: #2f5478;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.45;
    box-shadow: 0 12px 24px rgba(57,92,136,.06);
}

.lp-profile__supportItem::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 50%;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    transform: translateY(-50%);
    background:
        radial-gradient(circle at 50% 50%, #1f5f94 24%, transparent 26%),
        linear-gradient(135deg, #8fd84e, #3ca7ff);
    box-shadow: 0 0 0 8px rgba(143,216,78,.12);
}

.lp-list li {
    background: rgba(255,255,255,.92);
    border-color: rgba(198,220,241,.82);
}

@media (max-width: 1180px) {
    .lp-hero__content {
        grid-template-columns: 1fr;
        grid-template-areas:
            "kicker"
            "title"
            "subtitle"
            "actions"
            "metrics";
    }

    .lp-title {
        font-size: clamp(26px, 3.9vw, 36px);
    }
}

@media (max-width: 720px) {
    .lp-title {
        gap: .05em;
        font-size: clamp(22px, 5.8vw, 28px);
        line-height: .98;
    }

    .lp-title__line {
        white-space: normal;
    }

    .lp-title__line--emphasis {
        padding-inline: 0;
    }

    .lp-title__line--emphasis::after {
        left: -2px;
        right: -2px;
    }

    .lp-profile__supportItem {
        min-height: 64px;
        padding: 13px 14px 13px 44px;
        border-radius: 18px;
        font-size: 14px;
    }

    .lp-profile__supportItem::before {
        left: 14px;
        width: 16px;
        height: 16px;
    }
}

/* ===== Hero layout swap ===== */
.lp-hero {
    grid-template-columns: minmax(0, 1.1fr) minmax(340px, .9fr);
}

.lp-hero__aside {
    order: 0;
}

@media (min-width: 1181px) {
    .lp-hero {
        grid-template-columns: minmax(0, 1.1fr) minmax(340px, .9fr);
        grid-template-areas: "content aside";
    }
}

@media (max-width: 1180px) {
    .lp-hero {
        grid-template-columns: 1fr;
        grid-template-areas:
            "content"
            "aside";
    }
}

/* ===== Footer, policy and CTA refinements ===== */
.lp-profile__caption {
    justify-self: center;
    align-items: center;
    width: fit-content;
    max-width: min(100%, 560px);
    padding-inline: 30px;
    text-align: center;
}

.lp-profile__caption strong {
    font-size: clamp(20px, 1.45vw, 24px);
    white-space: nowrap;
}

.lp-profile__caption span {
    max-width: 28ch;
}

.btnTariff {
    min-height: 54px;
    padding: 14px 18px;
    font-size: 17px;
    font-weight: 900;
    letter-spacing: -.01em;
}

.lp-serviceSupport {
    align-items: center;
}

.lp-serviceSupport__actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.lp-serviceSupport__actions .btnA {
    min-height: 52px;
    padding-inline: 22px;
    font-size: 16px;
}

.flipPhone {
    perspective: 1000px;
}

.flipPhone__button {
    appearance: none;
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    font: inherit;
}

.flipPhone__inner {
    position: relative;
    width: 220px;
    height: 52px;
    transform-style: preserve-3d;
    transition: transform .65s cubic-bezier(.22,.61,.36,1);
}

.flipPhone.is-flipped .flipPhone__inner {
    transform: rotateX(180deg);
}

.flipPhone__face {
    position: absolute;
    inset: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border-radius: 16px;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    border: 1px solid rgba(255,255,255,.52);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.55),
        0 16px 28px rgba(68,94,131,.16);
    font-size: 16px;
    font-weight: 900;
    letter-spacing: -.01em;
}

.flipPhone__face--front {
    background: linear-gradient(135deg, var(--avito-green-light), var(--avito-green));
    color: #2a4210;
}

.flipPhone__face--back {
    background: linear-gradient(135deg, var(--avito-blue-light), var(--avito-blue));
    color: #08314e;
    transform: rotateX(180deg);
}

.lp-form__legal {
    margin-top: 12px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.6;
    font-weight: 600;
}

.lp-form__legal a {
    color: #0f5f96;
    font-weight: 800;
    text-decoration: none;
}

.lp-form__legal a:hover {
    text-decoration: underline;
}

.footer--enhanced {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(125,215,255,.20), transparent 28%),
        radial-gradient(circle at top right, rgba(169,223,71,.16), transparent 24%),
        linear-gradient(180deg, rgba(244,249,255,.96), rgba(236,244,252,.98));
    border-top: 1px solid rgba(198,220,241,.82);
}

.footer--enhanced::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 1px;
    background: linear-gradient(90deg, rgba(60,167,255,0), rgba(60,167,255,.32), rgba(143,216,78,.32), rgba(60,167,255,0));
}

.footer__shell {
    position: relative;
    z-index: 1;
    padding: 32px 0 22px;
}

.footer__top {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) repeat(3, minmax(180px, .6fr));
    gap: 24px;
    align-items: start;
}

.footer__brand {
    padding: 0;
}

.footer__brandName {
    display: inline-block;
    color: #17385e;
    font-size: 28px;
    font-weight: 900;
    letter-spacing: -.03em;
    text-decoration: none;
}

.footer__brandLead {
    max-width: 38ch;
    margin: 12px 0 0;
    color: #516f90;
    font-size: 16px;
    line-height: 1.7;
    font-weight: 600;
}

.footer__col {
    min-width: 0;
    padding: 0;
}

.footer__title {
    margin: 0 0 12px;
    color: #17385e;
    font-size: 15px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.footer__links {
    display: grid;
    gap: 10px;
}

.footer__links a,
.footer__links span {
    color: #567393;
    font-size: 15px;
    line-height: 1.55;
    font-weight: 700;
    text-decoration: none;
}

.footer__links a:hover {
    color: #0f5f96;
}

.footer__contactLink {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.footer__contactIcon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    color: #2f6a9d;
    flex: 0 0 auto;
}

.footer__col--docs .footer__links {
    gap: 12px;
}

.footer__col--docs .footer__links a {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 0 0 28px;
}

.footer__col--docs .footer__links a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    transform: translateY(-50%);
    background:
        radial-gradient(circle at 50% 50%, #1f5f94 24%, transparent 26%),
        linear-gradient(135deg, #8fd84e, #3ca7ff);
    box-shadow: 0 0 0 6px rgba(143,216,78,.10);
}

.footer__col--docs .footer__links a:hover {
    color: #17385e;
}

.footer__legal {
    display: grid;
    gap: 8px;
    margin-top: 24px;
    padding-top: 18px;
    border-top: 1px solid rgba(198,220,241,.72);
    color: #677f9a;
    font-size: 13px;
    line-height: 1.65;
    font-weight: 600;
}

.policyPage {
    padding: 36px 0 64px;
}

.policyPage__hero {
    max-width: 74ch;
    margin-bottom: 24px;
}

.policyPage__lead {
    max-width: 62ch;
    margin: 14px 0 0;
    color: #516f90;
    font-size: 17px;
    line-height: 1.7;
    font-weight: 600;
}

.policyPage__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.policyCard {
    border-radius: 24px;
    padding: 24px;
    border: 1px solid rgba(198,220,241,.84);
    background:
        radial-gradient(circle at top right, rgba(125,215,255,.14), transparent 28%),
        linear-gradient(180deg, rgba(255,255,255,.92), rgba(244,249,255,.86));
    box-shadow: 0 16px 32px rgba(57,92,136,.08);
}

.policyCard h2 {
    margin: 0 0 12px;
    color: #16385f;
    font-size: 22px;
    line-height: 1.2;
}

.policyCard p {
    margin: 0 0 12px;
    color: #506b88;
    font-size: 16px;
    line-height: 1.75;
}

.policyCard p:last-child {
    margin-bottom: 0;
}

.policyList {
    margin: 0;
    padding-left: 18px;
    color: #506b88;
    display: grid;
    gap: 10px;
    font-size: 16px;
    line-height: 1.7;
    font-weight: 600;
}

.policyCard--contacts {
    grid-column: span 2;
}

.policyContacts {
    display: grid;
    gap: 10px;
}

.policyContacts a {
    color: #0f5f96;
    font-size: 16px;
    font-weight: 800;
    text-decoration: none;
}

.policyContacts a:hover {
    text-decoration: underline;
}

.policyPage__note {
    margin-top: 14px;
    color: #6a8199;
    font-size: 14px;
    line-height: 1.65;
    font-weight: 600;
}

@media (max-width: 1060px) {
    .footer__top,
    .policyPage__grid {
        grid-template-columns: 1fr 1fr;
    }

    .footer__brand {
        grid-column: span 2;
    }

    .policyCard--contacts {
        grid-column: span 2;
    }
}

@media (max-width: 720px) {
    .lp-profile__caption {
        width: 100%;
        padding-inline: 18px;
    }

    .lp-profile__caption strong {
        white-space: normal;
    }

    .btnTariff {
        min-height: 50px;
        font-size: 16px;
    }

    .lp-serviceSupport__actions {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
    }

    .lp-serviceSupport__actions .btnA,
    .flipPhone,
    .flipPhone__button,
    .flipPhone__inner {
        width: 100%;
    }

    .flipPhone__face {
        width: 100%;
        font-size: 15px;
    }

    .footer__shell {
        padding: 26px 0 18px;
    }

    .footer__top,
    .policyPage__grid,
    .footer__brand {
        grid-template-columns: 1fr;
    }

    .footer__brand,
    .policyCard--contacts {
        grid-column: auto;
    }

    .footer__brandName {
        font-size: 24px;
    }

    .policyPage {
        padding: 28px 0 48px;
    }

    .policyCard {
        padding: 18px;
        border-radius: 20px;
    }

    .policyCard h2 {
        font-size: 20px;
    }

    .policyCard p,
    .policyList,
    .policyContacts a {
        font-size: 15px;
    }
}
