/* =========================================================
   КИТ — СОЦСЕТИ
   Mobile first
   ========================================================= */

#kit-social-page,
#kit-social-page * {
    box-sizing: border-box;
}

html,
body {
    margin: 0;
    padding: 0;
}

header,
footer,
.header,
.footer,
.site-header,
.site-footer,
.bx-breadcrumb,
.breadcrumb,
.breadcrumbs {
    display: none !important;
}

body {
    overflow: hidden !important;
}

#kit-social-page {
    position: fixed;
    inset: 0;
    z-index: 999999;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    overflow: hidden;
    font-family: "Gilroy", Arial, sans-serif;
    color: #173b59;
    background: #f8fcfe;
}


/* =========================================================
   ФОН
   ========================================================= */

.kit-social-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}

.kit-social-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(
            circle at 5% 5%,
            rgba(69, 168, 217, .17) 0,
            rgba(69, 168, 217, .06) 25%,
            transparent 48%
        ),
        radial-gradient(
            circle at 100% 60%,
            rgba(221, 86, 94, .10) 0,
            rgba(221, 86, 94, .035) 30%,
            transparent 52%
        ),
        radial-gradient(
            circle at 52% 100%,
            rgba(57, 158, 211, .12) 0,
            transparent 45%
        ),
        linear-gradient(
            145deg,
            #f7fbfe 0%,
            #ffffff 53%,
            #f9fbfc 100%
        );
}

.kit-social-grid {
    position: absolute;
    inset: 0;
    opacity: .65;
    background-image:
        linear-gradient(rgba(25, 77, 111, .03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(25, 77, 111, .03) 1px, transparent 1px);
    background-size: 42px 42px;
}

.kit-social-orb {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    will-change: transform;
}

.kit-social-orb--1 {
    width: 420px;
    height: 420px;
    top: -260px;
    left: -220px;
    background: radial-gradient(
        circle,
        rgba(68, 168, 217, .22) 0%,
        rgba(68, 168, 217, .06) 48%,
        transparent 72%
    );
    animation: kitOrb1 18s ease-in-out infinite alternate;
}

.kit-social-orb--2 {
    width: 480px;
    height: 480px;
    top: 32%;
    right: -330px;
    background: radial-gradient(
        circle,
        rgba(221, 90, 98, .12) 0%,
        rgba(221, 90, 98, .035) 48%,
        transparent 72%
    );
    animation: kitOrb2 21s ease-in-out infinite alternate;
}

.kit-social-orb--3 {
    width: 380px;
    height: 380px;
    bottom: -260px;
    left: 8%;
    background: radial-gradient(
        circle,
        rgba(57, 158, 211, .16) 0%,
        rgba(57, 158, 211, .04) 50%,
        transparent 74%
    );
    animation: kitOrb3 20s ease-in-out infinite alternate;
}

@keyframes kitOrb1 {
    from {
        transform: translate3d(0, 0, 0) scale(1);
    }

    to {
        transform: translate3d(70px, 70px, 0) scale(1.12);
    }
}

@keyframes kitOrb2 {
    from {
        transform: translate3d(0, 0, 0) scale(1);
    }

    to {
        transform: translate3d(-80px, 50px, 0) scale(.92);
    }
}

@keyframes kitOrb3 {
    from {
        transform: translate3d(0, 0, 0) scale(.94);
    }

    to {
        transform: translate3d(70px, -70px, 0) scale(1.1);
    }
}


/* Декоративные окружности */

.kit-social-ring {
    position: absolute;
    border: 1px solid rgba(37, 110, 151, .07);
    border-radius: 50%;
}

.kit-social-ring--1 {
    width: 320px;
    height: 320px;
    top: -145px;
    left: 50%;
    transform: translateX(-50%);
}

.kit-social-ring--2 {
    width: 270px;
    height: 270px;
    right: -185px;
    bottom: -70px;
}


/* =========================================================
   ОСНОВНОЙ ЭКРАН
   ========================================================= */

.kit-social-main {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    padding:
        clamp(20px, 3.2dvh, 32px)
        18px
        clamp(18px, 2.8dvh, 28px);
}

.kit-social-container {
    width: 100%;
    height: 100%;
    max-width: 540px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
}


/* =========================================================
   ЛОГОТИП КЛИНИКИ
   ========================================================= */

.kit-social-logo {
    flex: 0 0 auto;
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 clamp(20px, 3.2dvh, 30px);
}

.kit-social-logo img,
.kit-social-logo svg {
    display: block !important;
    width: auto !important;
    height: 150px;
    max-width: clamp(185px, 42vw, 245px) !important;
    max-height: clamp(90px, 14dvh, 120px) !important;
    margin: 0 !important;
}

.kit-social-logo__fallback {
    display: none;
    font-size: 38px;
    line-height: 1;
    font-weight: 700;
    color: #173b59;
}


/* =========================================================
   ЗАГОЛОВОК
   ========================================================= */

.kit-social-title {
    flex: 0 0 auto;
    width: 100%;
    margin: 0 auto clamp(26px, 4dvh, 38px);
    padding: 0;
    font-family: "Gilroy", Arial, sans-serif;
    font-size: clamp(36px, 8.6vw, 48px);
    font-weight: 700;
    line-height: .98;
    letter-spacing: -.035em;
    text-align: center;
    text-wrap: balance;
    color: #173b59;
}


/* =========================================================
   КАРТОЧКИ
   ========================================================= */

.kit-social-links {
    flex: 0 0 auto;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(10px, 1.7dvh, 14px);
}

.kit-social-card {
    position: relative;
    width: 100%;
    height: clamp(94px, 13.5dvh, 116px);
    min-height: 0;
    display: grid;
    grid-template-columns: 76px 1fr 42px;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    overflow: hidden;
    border: 0;
    border-radius: 24px;
    color: #fff !important;
    text-decoration: none !important;
    box-shadow: 0 12px 28px rgba(22, 56, 80, .13);
    transition:
        transform .25s ease,
        box-shadow .25s ease,
        filter .25s ease;
}

.kit-social-card--max {
    background: linear-gradient(135deg, #6958e8 0%, #5658e1 100%);
}

.kit-social-card--vk {
    background: linear-gradient(135deg, #3989f6 0%, #2f7ff2 100%);
}

.kit-social-card--telegram {
    background: linear-gradient(135deg, #51afd6 0%, #43a7d0 100%);
}


/* Декор внутри карточек */

.kit-social-card::before {
    content: "";
    position: absolute;
    width: 175px;
    height: 175px;
    top: -112px;
    right: -58px;
    border: 1px solid rgba(255, 255, 255, .17);
    border-radius: 50%;
}

.kit-social-card::after {
    content: "";
    position: absolute;
    width: 115px;
    height: 115px;
    top: -72px;
    right: -17px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 50%;
}


/* =========================================================
   ЛОГОТИП СОЦСЕТИ
   ========================================================= */

.kit-social-card__logo {
    position: relative;
    z-index: 2;
    width: 76px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin: 0;
}

.kit-social-card__logo img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    object-fit: contain;
}

.kit-social-card--max .kit-social-card__logo img {
    max-width: 56px !important;
    max-height: 55px !important;
}

.kit-social-card--vk .kit-social-card__logo img {
    max-width: 57px !important;
    max-height: 48px !important;
}

.kit-social-card--telegram .kit-social-card__logo img {
    max-width: 53px !important;
    max-height: 50px !important;
}


/* =========================================================
   НАЗВАНИЕ
   ========================================================= */

.kit-social-card__bottom {
    position: static;
    z-index: 2;
    display: contents;
}

.kit-social-card__name {
    position: relative;
    z-index: 2;
    min-width: 0;
    font-family: "Gilroy", Arial, sans-serif;
    font-size: clamp(21px, 5vw, 25px);
    font-weight: 600;
    line-height: 1.05;
    color: #fff;
    text-align: left;
}


/* =========================================================
   СТРЕЛКА
   ========================================================= */

.kit-social-card__arrow {
    position: relative;
    z-index: 2;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    justify-self: end;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 50%;
    background: rgba(255, 255, 255, .07);
    color: #fff;
}

.kit-social-card__arrow svg {
    display: block;
    width: 18px;
    height: 18px;
}


/* =========================================================
   НАЖАТИЕ НА МОБИЛЬНОМ
   ========================================================= */

.kit-social-card:active {
    transform: scale(.985);
}


/* =========================================================
   ОЧЕНЬ НИЗКИЕ ЭКРАНЫ
   Например небольшие телефоны / горизонтальные панели браузера
   ========================================================= */

@media (max-height: 720px) and (max-width: 767px) {
    .kit-social-main {
        padding-top: 14px;
        padding-bottom: 14px;
    }

    .kit-social-logo {
        margin-bottom: 14px;
    }

    .kit-social-logo img,
    .kit-social-logo svg {
        max-width: 170px !important;
        max-height: 75px !important;
    }

    .kit-social-title {
        margin-bottom: 20px;
        font-size: clamp(31px, 7.8vw, 40px);
    }

    .kit-social-links {
        gap: 8px;
    }

    .kit-social-card {
        height: 88px;
        grid-template-columns: 64px 1fr 38px;
        padding: 12px 16px;
        border-radius: 20px;
    }

    .kit-social-card__logo {
        width: 64px;
        height: 52px;
    }

    .kit-social-card--max .kit-social-card__logo img {
        max-width: 48px !important;
        max-height: 46px !important;
    }

    .kit-social-card--vk .kit-social-card__logo img {
        max-width: 48px !important;
        max-height: 41px !important;
    }

    .kit-social-card--telegram .kit-social-card__logo img {
        max-width: 44px !important;
        max-height: 43px !important;
    }

    .kit-social-card__name {
        font-size: 20px;
    }

    .kit-social-card__arrow {
        width: 36px;
        height: 36px;
    }
}


/* =========================================================
   СОВСЕМ УЗКИЕ ТЕЛЕФОНЫ
   ========================================================= */

@media (max-width: 370px) {
    .kit-social-main {
        padding-left: 14px;
        padding-right: 14px;
    }

    .kit-social-title {
        font-size: 33px;
    }

    .kit-social-card {
        grid-template-columns: 60px 1fr 36px;
        padding-left: 15px;
        padding-right: 15px;
    }

    .kit-social-card__logo {
        width: 60px;
    }

    .kit-social-card__name {
        font-size: 19px;
    }

    .kit-social-card__arrow {
        width: 35px;
        height: 35px;
    }
}


/* =========================================================
   ПЛАНШЕТЫ
   ========================================================= */

@media (min-width: 768px) {
    .kit-social-main {
        padding: 48px 28px;
    }

    .kit-social-container {
        max-width: 920px;
    }

    .kit-social-logo {
        margin-bottom: 34px;
    }

    .kit-social-logo img,
    .kit-social-logo svg {
        max-width: 270px !important;
        max-height: 130px !important;
    }

    h1.kit-social-title {
        margin-bottom: 46px;
        font-size: clamp(48px, 6vw, 64px);
        line-height: 1;
    }

    .kit-social-links {
        grid-template-columns: repeat(3, 1fr);
        gap: 16px;
    }

    .kit-social-card {
        height: 205px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: space-between;
        padding: 27px 25px 23px;
        border-radius: 25px;
    }

    .kit-social-card__logo {
        width: 100%;
        height: 70px;
    }

    .kit-social-card__bottom {
        position: relative;
        z-index: 2;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 15px;
    }

    .kit-social-card__name {
        font-size: 23px;
    }

    .kit-social-card__arrow {
        width: 40px;
        height: 40px;
        flex: 0 0 40px;
    }

    .kit-social-card:hover {
        transform: translateY(-6px);
        box-shadow: 0 20px 45px rgba(22, 56, 80, .19);
    }
}


/* =========================================================
   ДЕСКТОП
   ========================================================= */

@media (min-width: 1100px) {
    .kit-social-container {
        max-width: 900px;
    }

    .kit-social-logo {
        margin-bottom: 56px;
    }

    .kit-social-logo img,
    .kit-social-logo svg {
        max-width: 285px !important;
        max-height: 140px !important;
    }

    h1.kit-social-title {
        margin-bottom: 45px;
        font-size: 58px;
    }

    .kit-social-card {
        height: 200px;
    }
}


/* =========================================================
   ОТКЛЮЧЕННЫЕ АНИМАЦИИ
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
    .kit-social-orb {
        animation: none !important;
    }

    .kit-social-card {
        transition: none !important;
    }
}
.kit-social-logo a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.kit-social-logo a img {
    transition: transform .25s ease;
}

.kit-social-logo a:hover img {
    transform: scale(1.03);
}