:root {
    --color-text-primary: #111827;
    --color-text-secondary: #6b7280;
    --color-text-white: #ffffff;
    --color-primary: #4676ff;
    --color-border-light: #e5e7eb;
    --color-border-medium: #d1d5db;
    --color-bg-gray: #f3f4f6;
    --color-bg-white: #ffffff;
    --color-success: #27ae60;
    --color-success-light: #eafff4;
    --color-info-light: #e9f3ff;
    --color-icon: #374151;
    --font-text: 'Google Sans', system-ui, sans-serif;
    --font-heading: 'Gluy', 'Google Sans', sans-serif;
    --container: 1360px;
    --radius-btn: 64px;
}

*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: 112px;
}

html,
body {
    background: var(--color-bg-white);
    color: var(--color-text-primary);
    font-family: var(--font-text);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    -webkit-font-smoothing: antialiased;
}

img,
svg {
    display: block;
    max-width: 100%;
}

a {
    color: inherit;
    text-decoration: none;
}

button {
    background: none;
    border: none;
    cursor: pointer;
    font: inherit;
    padding: 0;
}

ul {
    list-style: none;
}

.container {
    width: 100%;
    max-width: var(--container);
    margin: 0 auto;
}

.page {
    overflow-x: hidden;
    overflow-y: visible;
}

#top {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 1px;
}

.heading {
    font-family: var(--font-heading);
    font-weight: 600;
    letter-spacing: -0.02em;
    color: var(--color-text-primary);
}

.heading--h1,
.heading--h2 {
    font-size: 48px;
    line-height: 52px;
}

.heading--h3 {
    font-size: 42px;
    line-height: 48px;
}

.heading--h4 {
    font-size: 36px;
    line-height: 44px;
}

.heading--h5 {
    font-size: 28px;
    line-height: 36px;
}

.heading--h6 {
    font-size: 24px;
    line-height: 32px;
    letter-spacing: -0.04em;
}

.heading--h7 {
    font-size: 20px;
    line-height: 24px;
    letter-spacing: -0.04em;
}

.heading--display {
    font-size: 60px;
    line-height: 64px;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 52px;
    padding: 16px 24px;
    border-radius: var(--radius-btn);
    border: 1px solid transparent;
    font-family: var(--font-text);
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;
    white-space: nowrap;
    text-decoration: none;
    cursor: pointer;
    transition: opacity 0.15s ease, background-color 0.15s ease;
}

.btn:hover {
    opacity: 0.92;
}

.btn--sm {
    height: 44px;
    padding: 12px 24px;
}

.btn--icon {
    width: 56px;
    height: 56px;
    padding: 13px;
    background: var(--color-bg-white);
    border-color: var(--color-border-light);
    color: var(--color-icon);
    flex-shrink: 0;
}

.btn--icon svg,
.btn--icon img {
    width: 20px;
    height: 20px;
}

.section-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-primary);
}

.section-label svg,
.section-label img {
    width: 20px;
    height: 20px;
}

.btn--primary {
    background: var(--color-primary);
    color: var(--color-text-white);
}

.btn--gray {
    background: var(--color-bg-gray);
    color: var(--color-text-primary);
}

.btn--outline {
    background: var(--color-bg-white);
    border-color: var(--color-border-light);
    color: var(--color-text-primary);
}

.btn--block {
    width: 100%;
}

.btn__icon,
.btn svg,
.btn img {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

.icon-3d {
    position: relative;
    overflow: hidden;
    flex-shrink: 0;
}

.icon-3d picture {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
}

.icon-3d img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    max-width: none;
}

.icon-3d--stat {
    width: 52px;
    height: 52px;
}

.icon-3d--stat img {
    inset: -20.31% -20.51% -20.51% -20.31%;
    width: 140.82%;
    height: 140.82%;
    max-width: none;
    object-fit: cover;
}

.icon-3d--stat.icon-3d--framed img,
.icon-3d--framed img {
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.icon-3d--flip img {
    transform: scaleX(-1);
}

.icon-3d--status {
    width: 240px;
    height: 240px;
    flex-shrink: 0;
}

.icon-3d--status img {
    inset: -20.31% -20.51% -20.51% -20.31%;
    width: 140.82%;
    height: 140.82%;
    max-width: none;
    object-fit: cover;
}

.icon-3d--api {
    width: 144px;
    height: 144px;
}

.icon-3d--api img {
    inset: -16.41% -15.82% -15.04% -15.63%;
    width: 131.45%;
    height: 131.45%;
    max-width: none;
    object-fit: cover;
}

.icon-3d--scene {
    width: 144px;
    height: 144px;
    flex-shrink: 0;
}

.icon-3d--scene img {
    inset: -6.1% -6.25% -6.4% -6.25%;
    width: 112.5%;
    height: 112.5%;
    max-width: none;
    object-fit: cover;
}

.icon-3d--pro {
    width: 20px;
    height: 20px;
}

.icon-3d--pro img {
    inset: -27.25%;
    width: 154.5%;
    height: 154.5%;
    max-width: none;
    transform: scaleX(-1);
}

.icon-3d--plan {
    width: 64px;
    height: 64px;
}

.icon-3d--plan img.icon-3d--plan-free {
    inset: -7.13%;
    width: 114.26%;
    height: 114.26%;
    max-width: none;
    object-fit: cover;
}

.icon-3d--plan img.icon-3d--plan-pro {
    inset: -27.25%;
    width: 154.5%;
    height: 154.5%;
    max-width: none;
    transform: scaleX(-1);
    object-fit: cover;
}

.icon-3d--plan img.icon-3d--plan-ent {
    inset: -6.55%;
    width: 113.1%;
    height: 113.1%;
    max-width: none;
    object-fit: cover;
}

.icon-3d--lg {
    width: 88px;
    height: 88px;
}

.icon-3d--version {
    width: 128px;
    height: 128px;
}

.icon-3d--version img {
    inset: -27.34%;
    width: 154.68%;
    height: 154.68%;
    max-width: none;
    object-fit: cover;
}

.icon-3d--tile {
    width: 64px;
    height: 64px;
}

.icon-3d--tile img {
    inset: -20.31% -20.51% -20.51% -20.31%;
    width: 140.82%;
    height: 140.82%;
    max-width: none;
    object-fit: cover;
}

.icon-3d--it {
    width: 48px;
    height: 48px;
}

.icon-3d--it img {
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.icon-3d--trust {
    width: 44px;
    height: 44px;
}

.icon-3d--trust img {
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.icon-3d--useful {
    width: 88px;
    height: 88px;
}

.icon-3d--useful img {
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.icon-3d--ways {
    width: 128px;
    height: 128px;
}

.icon-3d--ways img {
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Header */
.header {
    background: var(--color-bg-white);
    padding: 16px 20px;
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: 0 1px 0 var(--color-border-light);
}

.header__bar {
    display: flex;
    justify-content: center;
}

.header__inner {
    --header-row: 1320px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    margin: 0 auto;
}

.header__left {
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 0;
    flex-shrink: 0;
}

.header__logo {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    flex-shrink: 0;
    text-decoration: none;
}

.header__logo-mark {
    width: 191px;
    height: 52px;
    margin-bottom: -2px;
    display: flex;
    align-items: center;
}

.header__logo-mark svg,
.header__logo-mark img {
    width: 191px;
    height: 43px;
}

.header__tagline {
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    color: var(--color-text-secondary);
    white-space: nowrap;
}

.header__divider {
    width: 1px;
    height: 66px;
    background: var(--color-border-medium);
    flex-shrink: 0;
    align-self: center;
}

.header__nav {
    display: flex;
    align-items: center;
    gap: 12px;
}

.header__nav-link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
    white-space: nowrap;
}

.header__nav-link:hover {
    color: var(--color-primary);
}

.header__nav-item {
    position: relative;
}

.header__nav-link svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

.header__drop {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 20;
    display: none;
    flex-direction: column;
    min-width: 196px;
    padding: 8px;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(16, 24, 40, 0.08);
}

.header__nav-item:hover .header__drop,
.header__nav-item:focus-within .header__drop {
    display: flex;
}

.header__drop-link {
    padding: 10px 12px;
    border-radius: 8px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
    text-decoration: none;
    white-space: nowrap;
}

.header__drop-link:hover {
    background: var(--color-bg-gray);
    color: var(--color-primary);
}

.header__actions {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.header__actions .btn--sm {
    height: 40px;
    padding: 8px 16px;
    font-size: 14px;
    gap: 6px;
}

.header__contacts {
    display: none;
}

.header__contact {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
    text-decoration: none;
}

.header__contact svg,
.header__contact img {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

.header__drawer {
    display: none;
}

.header__burger {
    display: none;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    padding: 0;
    border: 1px solid var(--color-border-light);
    border-radius: 64px;
    background: var(--color-bg-white);
    cursor: pointer;
}

.header__burger-open,
.header__burger-close {
    display: flex;
    align-items: center;
    justify-content: center;
}

.header__burger-close {
    display: none;
}

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

.header.is-open .header__burger-open {
    display: none;
}

.header.is-open .header__burger-close {
    display: flex;
}

body.is-menu-open {
    overflow: hidden;
}

/* Hero */
.hero {
    position: relative;
    width: 100%;
    padding: 40px 0;
    min-height: 846px;
    display: flex;
    flex-direction: column;
}

.hero__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
}

.hero__bg img,
.hero__bg picture,
.hero__bg picture img {
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: top center;
}

.hero__visual {
    position: absolute;
    top: 0;
    right: calc(max(0px, (100% - 1440px) / 2) - 87px);
    width: 797px;
    height: 675px;
    overflow: visible;
    z-index: 2;
    pointer-events: none;
}

.hero__visual img,
.hero__visual picture,
.hero__visual picture img {
    width: 797px;
    height: 675px;
    max-width: none;
    object-fit: contain;
    object-position: left top;
}

.hero .container {
    isolation: isolate;
    z-index: 3;
}

.hero__offer {
    width: 670px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.hero__text-group {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.hero__title {
    color: var(--color-text-primary);
}

.hero__lead {
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    color: var(--color-text-primary);
}

.hero__buttons {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    flex-wrap: wrap;
}

.hero__virus {
    display: flex;
    align-items: center;
    gap: 8px;
}

.hero__virus-logo {
    width: 101px;
    height: 16px;
}

.hero__virus-logo img {
    width: 101px;
    height: 16px;
    object-fit: contain;
}

.hero__virus-text {
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-success);
    white-space: nowrap;
}

.hero__bullets {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.hero__bullet {
    display: flex;
    align-items: center;
    gap: 4px;
}

.hero__bullet-icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

.hero__bullet-icon svg,
.hero__bullet-icon img {
    width: 20px;
    height: 20px;
}

.hero__bullet-text {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-primary);
}

.hero__bullet-text strong,
.hero__bullet-text b {
    font-weight: 600;
    line-height: 20px;
}

.hero__stats {
    margin-top: 90px;
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 24px;
    padding: 8px;
    overflow: hidden;
}

.hero__stat {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 16px;
}

.hero__stat--accent {
    background: linear-gradient(90deg, #c3d3ff 0%, rgba(195, 211, 255, 0) 100%);
    border-radius: 16px;
}

.hero__stat-body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    flex: 1;
}

.hero__stat-title {
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.hero__stat-text {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-secondary);
}

.hero__stat-text span {
    color: var(--color-primary);
}

.hero__stat-divider {
    width: 1px;
    align-self: stretch;
    background: var(--color-border-light);
    flex-shrink: 0;
}

.hero--plain {
    min-height: 742px;
}

.hero--plain .hero__visual {
    height: 600px;
}

.hero--plain .hero__visual img,
.hero--plain .hero__visual picture,
.hero--plain .hero__visual picture img {
    width: 797px;
    height: 600px;
}

.hero--plain .hero__bullets {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 12px 16px;
}

.hero--plain .hero__stats {
    margin-top: 96px;
}

@media (min-width: 1201px) {
    .hero--plain:not(.hero--home) .hero__offer {
        min-height: 464px;
    }
}

/* Breadcrumbs */
.crumbs {
    height: 40px;
    display: flex;
    align-items: center;
}

.crumbs .container {
    display: flex;
    align-items: center;
    gap: 4px;
}

.crumbs__link,
.crumbs__current {
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
}

.crumbs__link {
    color: var(--color-text-secondary);
}

.crumbs__link:hover {
    color: var(--color-text-primary);
}

.crumbs__current {
    color: var(--color-text-primary);
}

.crumbs__sep {
    display: flex;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    color: #b6bac2;
}

.hero--plain.hero--home {
    min-height: 846px;
    padding: 40px 0 64px;
}

.hero--plain.hero--home.hero--sec {
    min-height: 710px;
    padding: 40px 0 0;
}

.hero--plain.hero--home.hero--sec .hero__stats {
    margin-top: 179px;
}

.hero--sec .secure__status-text {
    width: 428px;
    max-width: 100%;
}

.hero--sec .secure__status-lead {
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
}

.hero--home .hero__bullets {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 12px;
}

.hero--home .hero__stats {
    margin-top: 128px;
}

.hero--plans {
    min-height: 0;
    padding: 40px 0 0;
}

.hero--plans .container {
    display: flex;
    flex-direction: column;
    gap: 64px;
}

.hero--plain.hero--plans .hero__offer {
    width: 100%;
    gap: 0;
    min-height: 0;
}

.hero--plans .hero__text-group {
    gap: 24px;
    width: 100%;
}

.hero--plans .hero__stats {
    margin-top: 0;
}

.hero--dl .container {
    gap: 0;
}

.hero__metrics {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 24px;
}

.hero__metric {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 56px;
    padding: 16px;
    background: var(--color-bg-gray);
    border-radius: 16px;
}

.hero__metric-icon {
    width: 20px;
    height: 20px;
    color: var(--color-icon);
    flex-shrink: 0;
}

.hero__metric-icon svg,
.hero__metric-icon img {
    width: 20px;
    height: 20px;
}

.hero__metric-icon svg path {
    fill: currentColor;
}

.hero__metric-icon--star {
    width: 24px;
    height: 24px;
}

.hero__metric-icon--star svg,
.hero__metric-icon--star img {
    width: 24px;
    height: 24px;
}

.hero__metric-icon--star svg path {
    fill: #f59e0b;
}

.hero__metric-value {
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.hero__metric-label {
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    color: var(--color-text-secondary);
}

.useful {
    position: relative;
    padding: 96px 0 0;
    overflow: hidden;
    border-radius: 40px 40px 0 0;
}

.useful__bg {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    height: 283px;
    pointer-events: none;
    z-index: 0;
}

.useful__bg img,
.useful__bg svg {
    width: 100%;
    height: 283px;
    max-width: none;
    display: block;
    object-fit: fill;
}

.useful .container {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}

.useful__title {
    color: #000;
}

.useful__layout {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    width: 100%;
}

.useful-photo {
    width: 420px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.useful-photo__media {
    width: 420px;
    height: 324px;
    border-radius: 32px;
    overflow: hidden;
}

.useful-photo__media img,
.useful-photo__media picture,
.useful-photo__media picture img {
    width: 420px;
    height: 324px;
    object-fit: cover;
}

.useful-photo__text-block {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.useful-photo__title {
    font-size: 20px;
    line-height: 28px;
    font-weight: 600;
    color: var(--color-text-primary);
}

.useful-photo__text {
    font-size: 16px;
    line-height: 28px;
    color: var(--color-text-secondary);
}

.useful__cards {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 908px;
    max-width: 100%;
}

.useful-card {
    width: 444px;
    max-width: 100%;
    min-height: 208px;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 24px;
    padding: 24px;
    display: flex;
    align-items: flex-start;
    gap: 24px;
}

.useful-card__body {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 284px;
    max-width: 100%;
}

.useful-card__title {
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.useful-card__text {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
}

.fn {
    padding: 96px 0 0;
}

.fn .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.fn__head {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    width: 100%;
}

.fn__title {
    width: 670px;
    max-width: 100%;
    text-align: center;
    color: #000;
    line-height: 48px;
}

.fn__tabs {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.fn__grid {
    width: 100%;
    overflow: visible;
}

.fn__grid .swiper-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    transform: none;
}

.fn__grid .swiper-slide {
    width: 440px;
    height: auto;
}

.fn__grid[hidden] {
    display: none;
}

.ways {
    padding: 96px 0;
}

.ways .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.ways__title {
    width: 670px;
    max-width: 100%;
    text-align: center;
    color: #000;
}

.ways__grid {
    display: flex;
    align-items: stretch;
    gap: 20px;
    width: 100%;
}

.ways-card {
    width: 670px;
    max-width: 100%;
    min-height: 564px;
    background: var(--color-bg-gray);
    border-radius: 40px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.ways-card__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 128px;
}

.ways-card__title {
    width: 454px;
    max-width: 100%;
    color: var(--color-text-primary);
}

.ways-steps {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 480px;
    max-width: 100%;
}

.ways-step {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    column-gap: 16px;
    align-items: start;
    min-height: 44px;
}

.ways-step__rail {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 56px;
    min-height: 44px;
    align-self: stretch;
}

.ways-step__num {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--color-bg-white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
    flex-shrink: 0;
}

.ways-step__num--done {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--color-success);
}

.ways-step__num--done svg,
.ways-step__num--done img {
    width: 20px;
    height: 20px;
}

.ways-step__num--done svg path {
    fill: #fff;
}

.ways-step__line {
    flex: 1 1 auto;
    width: 0;
    min-height: 16px;
    margin: 4px 0;
    border-left: 1px dashed var(--color-border-medium);
}

.ways-step__text {
    min-height: 44px;
    display: flex;
    align-items: center;
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.ways-card--blue {
    background: #f0f6ff;
}

.ways__buttons {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
}

.home-secure {
    position: relative;
    background: #111827;
    padding: 96px 0;
    overflow: hidden;
}

.home-secure__bg {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    height: 283px;
    pointer-events: none;
    z-index: 0;
}

.home-secure__bg img,
.home-secure__bg svg {
    width: 100%;
    height: 283px;
    max-width: none;
    display: block;
    object-fit: fill;
}

.home-secure .container {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}

.home-secure__title {
    width: 670px;
    max-width: 100%;
    color: #fff;
}

.home-secure__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
}

.home-secure-card {
    width: 670px;
    max-width: 100%;
    background: var(--color-bg-white);
    border-radius: 24px;
    padding: 24px;
    display: flex;
    align-items: center;
    gap: 16px;
}

.home-secure-card__body {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.home-secure-card__title {
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.home-secure-card__text {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
}

.home-secure__foot {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    align-self: center;
    flex-wrap: wrap;
}

.home-secure .secure__status-title {
    color: #fff;
}

.crumbs__sep svg {
    width: 16px;
    height: 16px;
}

.crumbs__sep svg path {
    fill: #b6bac2;
}

/* Audience */
.audience {
    position: relative;
    padding: 96px 0 0;
    overflow: hidden;
    border-radius: 40px 40px 0 0;
}

.audience__bg {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    height: 283px;
    pointer-events: none;
    z-index: 0;
}

.audience__bg img,
.audience__bg svg {
    width: 100%;
    height: 283px;
    max-width: none;
    display: block;
    object-fit: fill;
}

.audience .container {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.audience__title {
    width: 671px;
    max-width: 100%;
    color: #000;
}

.audience__list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.audience-card {
    display: flex;
    align-items: stretch;
    gap: 8px;
    padding: 8px;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 36px;
}

.audience-card__content {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 40px;
    padding: 40px;
}

.audience-card__title-group {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.audience-card__label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 8px;
    align-self: flex-start;
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    white-space: nowrap;
}

.audience-card__label svg,
.audience-card__label img {
    width: 20px;
    height: 20px;
}

.audience-card__label--home {
    background: var(--color-success-light);
    color: var(--color-success);
}

.audience-card__label--business {
    background: var(--color-info-light);
    color: var(--color-primary);
}

.audience-card__heading {
    color: var(--color-text-primary);
}

.audience-card__text {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-primary);
}

.audience-card__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

.audience-card__tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 4px 8px;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 8px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
    white-space: nowrap;
}

.audience-card__tag svg,
.audience-card__tag img {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

.audience-card__media {
    width: 670px;
    flex-shrink: 0;
    border-radius: 32px;
    overflow: hidden;
    align-self: stretch;
    position: relative;
    min-height: 420px;
}

.audience-card__media img,
.audience-card__media picture,
.audience-card__media picture img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    border-radius: 32px;
}

.audience-card__btn {
    align-self: flex-start;
}

/* Compact Free / Pro teaser */
.terms {
    padding: 96px 0;
}

.terms .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.terms__title {
    text-align: center;
    color: #000;
}

.terms__tabs {
    display: none;
}

.terms__grid {
    display: flex;
    gap: 20px;
    width: 100%;
    align-items: stretch;
}

.terms-card {
    width: 670px;
    max-width: 100%;
    border: 1px solid var(--color-border-light);
    border-radius: 24px;
    padding: 8px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    background: var(--color-bg-white);
}

.terms-card--pro {
    background: linear-gradient(180deg, #c3d3ff 0%, rgba(195, 211, 255, 0) 100%);
}

.terms-card__head {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 16px;
}

.terms-card__name {
    color: var(--color-text-primary);
}

.terms-card__tiles {
    display: flex;
    gap: 8px;
    flex: 1 1 auto;
    min-height: 0;
}

.terms-card__tiles--grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
}

.terms-tile {
    flex: 1 1 0;
    min-width: 0;
    background: var(--color-bg-gray);
    border-radius: 20px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 16px;
}

.terms-card--pro .terms-tile {
    background: var(--color-bg-white);
    padding: 24px;
}

.terms-tile__title {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
}

.terms-tile__value {
    font-size: 96px;
    line-height: 96px;
    letter-spacing: -0.02em;
    color: var(--color-text-primary);
}

.terms-tile__text {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-primary);
}

.terms-card--pro .terms-tile__text {
    font-size: 16px;
    line-height: 24px;
}

/* Plans */
.plans {
    padding: 96px 0 0;
    overflow: hidden;
    border-radius: 40px;
}

.plans .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 60px;
}

.plans__head {
    width: 1014px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    text-align: center;
}

.plans__title {
    text-align: center;
    color: #000;
}

.plans__grid {
    display: flex;
    gap: 20px;
    width: 100%;
    align-items: stretch;
}

.plans-card {
    position: relative;
    flex: 1 1 0;
    min-width: 0;
    height: 600px;
    padding: 40px;
    border-radius: 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
}

.plans-card--pro {
    background: #f0f6ff;
    border-color: transparent;
}

.plans-card--ent {
    background: var(--color-bg-gray);
    border-color: transparent;
}

.plans-card .btn {
    width: 100%;
}

.plans-card__body {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
}

.plans-card__head {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
}

.plans-card__name {
    color: var(--color-text-primary);
    white-space: nowrap;
}

.plans-card__lead,
.plans-card__price {
    width: 100%;
    text-align: center;
}

.plans-card__lead {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-secondary);
}

.plans-card__price {
    color: var(--color-text-primary);
}

.plans-card__rule {
    width: 100%;
    height: 0;
    border-top: 1px solid var(--color-border-medium);
}

.plans-card__feat {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
}

.plans-card__feat svg,
.plans-card__feat img {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

.plans-card__feat span {
    flex: 1 1 0;
    min-width: 0;
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-primary);
}

.plans-card__badge {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    border-radius: var(--radius-btn);
    background: var(--color-success);
    color: var(--color-text-white);
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    white-space: nowrap;
}

.plans-card__badge svg,
.plans-card__badge img {
    width: 20px;
    height: 20px;
}

.plans__tabs,
.plans-card__tiles {
    display: none;
}

.plans-card__note {
    width: 100%;
    font-size: 14px;
    line-height: 20px;
    color: var(--color-text-secondary);
}

.plans--biz {
    padding-top: 0;
}

.plans--biz .plans__grid {
    width: 1014px;
    max-width: 100%;
}

.plans--home .plans__grid {
    width: 1014px;
    max-width: 100%;
}

.plans--home .plans-card {
    height: 640px;
}

.plans--page {
    padding: 64px 0 0;
}

.plans--page .container {
    gap: 0;
}

.plans--page .plans__grid {
    flex-wrap: wrap;
}

.plans--page .plans-card {
    flex: 1 1 280px;
    height: auto;
    min-height: 520px;
}

.plans__note {
    width: 100%;
    margin: 20px 0 0;
    font-size: 14px;
    line-height: 20px;
    color: var(--color-text-secondary);
}

.plans__nav {
    display: none;
}

/* Features */
.features {
    position: relative;
    background: var(--color-bg-gray);
    padding: 96px 0;
    overflow: hidden;
    border-radius: 40px;
}

.features__bg {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    height: 600px;
    pointer-events: none;
    z-index: 0;
}

.features__bg img,
.features__bg picture,
.features__bg picture img {
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: top center;
}

.features .container {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.features__head {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    width: 100%;
}

.features__title {
    width: 671px;
    max-width: 100%;
    text-align: center;
    color: #000;
}

.features__lead {
    font-size: 22px;
    line-height: 34px;
    text-align: center;
    color: var(--color-text-primary);
    width: 100%;
}

.features__tabs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.features__stage {
    display: grid;
    grid-template-columns: 56px minmax(0, 1016px) 56px;
    gap: 22px;
    align-items: center;
    width: 1172px;
    max-width: 100%;
}

.features-card {
    position: relative;
    width: 1016px;
    max-width: 100%;
    height: 460px;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 36px;
    overflow: hidden;
    display: flex;
    justify-content: space-between;
}

.features-card__body {
    width: 508px;
    max-width: 50%;
    padding: 40px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.features-card__heading-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    width: 468px;
    max-width: 100%;
}

.features-card__label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    border-radius: 8px;
    background: var(--color-success-light);
    color: var(--color-success);
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    white-space: nowrap;
}

.features-card__label[hidden] {
    display: none;
}

.features-card__heading {
    color: var(--color-text-primary);
    width: 468px;
    max-width: 100%;
}

.features-card__tags {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    width: 468px;
    max-width: 100%;
}

.features-card__media {
    width: 508px;
    height: 460px;
    flex-shrink: 0;
    overflow: hidden;
}

.features-card__media img {
    width: 508px;
    height: 460px;
    max-width: none;
    object-fit: cover;
    object-position: left top;
}

/* WiFi */
.wifi {
    padding: 96px 0 0;
}

.wifi-card {
    position: relative;
    width: 100%;
    background: #f0f6ff;
    border-radius: 40px;
    padding: 60px;
    display: flex;
    align-items: center;
    gap: 20px;
    overflow: hidden;
}

.wifi-card__bg {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 283px;
    pointer-events: none;
    z-index: 0;
    transform: scaleY(-1);
}

.wifi-card__bg img,
.wifi-card__bg svg {
    width: 100%;
    height: 283px;
    max-width: none;
    display: block;
    object-fit: fill;
}

.wifi-card__content {
    position: relative;
    z-index: 1;
    width: 609px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    gap: 24px;
    flex-shrink: 0;
}

.wifi-card__text {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.wifi-card__heading {
    color: #000;
}

.wifi-card__lead {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-primary);
}

.wifi-card__note {
    display: flex;
    align-items: center;
    gap: 16px;
}

.wifi-card__win {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--color-primary);
    border: 1px solid rgba(255, 255, 255, 0.53);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
}

.wifi-card__win svg,
.wifi-card__win img {
    width: 24px;
    height: 24px;
}

.wifi-card__note-title {
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.wifi-card__note-text {
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-secondary);
}

.wifi-card__visual {
    position: relative;
    z-index: 1;
    width: 611px;
    height: 385px;
    flex: 0 0 611px;
    overflow: hidden;
}

.wifi-card__visual img,
.wifi-card__visual picture,
.wifi-card__visual picture img {
    width: 611px;
    height: 385px;
    max-width: none;
    object-fit: contain;
    object-position: center right;
}

/* Orgs */
.orgs {
    position: relative;
    padding: 96px 0;
    overflow: hidden;
    border-radius: 40px;
}

.orgs__bg {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 440px;
    pointer-events: none;
    z-index: 0;
}

.orgs__bg img,
.orgs__bg picture,
.orgs__bg picture img {
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center bottom;
}

.orgs .container {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 20px;
}

.orgs__visual {
    width: 670px;
    height: 454px;
    flex-shrink: 0;
    position: relative;
    overflow: hidden;
}

.orgs__visual img,
.orgs__visual picture,
.orgs__visual picture img {
    position: absolute;
    left: 22px;
    top: 0;
    width: 626px;
    height: 454px;
    max-width: none;
    object-fit: contain;
    object-position: center;
}

.orgs__content {
    width: 670px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}

.orgs__title-group {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.orgs__heading {
    color: #000;
}

.orgs__lead {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-primary);
}

/* Start / connect */
.start {
    padding: 96px 0 0;
    overflow: hidden;
    border-radius: 40px;
}

.start .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.start__head {
    width: 670px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    text-align: center;
}

.start__heading {
    color: #000;
    text-align: center;
}

.steps {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    width: 100%;
}

.steps-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    text-align: center;
}

.steps-item__stepper {
    display: flex;
    align-items: center;
    gap: 20px;
    width: 100%;
}

.steps-item__line {
    flex: 1 1 0;
    min-width: 0;
    height: 0;
    border-top: 1px dashed var(--color-border-medium);
}

.steps-item:first-child .steps-item__line:first-child,
.steps-item:last-child .steps-item__line:last-child {
    border-top-color: transparent;
}

.steps-item__badge {
    flex-shrink: 0;
    height: 44px;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 60px;
    padding: 12px 24px;
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
    box-shadow: 0 12px 18px rgba(49, 49, 50, 0.05);
    white-space: nowrap;
}

.steps-item__icon {
    position: relative;
    width: 128px;
    height: 128px;
    overflow: hidden;
    flex-shrink: 0;
}

.steps-item__icon img {
    position: absolute;
    object-fit: cover;
    max-width: none;
}

.steps-item__icon--1 img {
    inset: -10.16%;
    width: 120.32%;
    height: 120.32%;
}

.steps-item__icon--2 img {
    inset: -16.41%;
    width: 132.82%;
    height: 132.82%;
}

.steps-item__icon--3 img {
    inset: -20.31% -20.51% -20.51% -20.31%;
    width: 140.82%;
    height: 140.82%;
}

.steps-item__text {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.steps-item__title {
    color: var(--color-text-primary);
}

.steps-item__lead {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-secondary);
}

.start__buttons {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
}

.start__foot {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: 100%;
}

.start__note {
    max-width: 670px;
    text-align: center;
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
}

.start--home:not(.start--dl) .steps {
    display: block;
    overflow: visible;
}

.start--home:not(.start--dl) .steps .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    transform: none;
}

.start--home:not(.start--dl) .steps .swiper-slide {
    width: auto;
    height: auto;
}

.start--dl {
    padding-bottom: 32px;
}

.start--dl .steps {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.start-shot {
    width: 100%;
    max-width: 325px;
    aspect-ratio: 1;
    background: #dee8f6;
    border: 1px solid var(--color-border-light);
    border-radius: 24px;
    overflow: hidden;
    flex-shrink: 0;
}

.start-shot picture {
    display: block;
    width: 100%;
    height: 100%;
}

.start-shot img,
.start-shot picture,
.start-shot picture img {
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
}

/* Security */
.secure {
    padding: 96px 0 0;
}

.secure .container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}

.secure__head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    width: 100%;
}

.secure__title {
    width: 670px;
    max-width: 100%;
    color: #000;
}

.secure__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
}

.secure-card {
    width: 440px;
    max-width: 100%;
    background: var(--color-bg-gray);
    border-radius: 24px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 16px;
}

.secure-card__title {
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-text-primary);
    width: 100%;
}

.secure-card__text {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
    width: 100%;
}

.secure-card__row {
    display: flex;
    align-items: flex-end;
    gap: 16px;
    width: 100%;
}

.secure-card__row .secure-card__title {
    flex: 1 1 0;
    min-width: 0;
}

a.secure-card {
    color: inherit;
    text-decoration: none;
}

.secure--docs .secure__title {
    width: 100%;
}

.secure--docs .btn--icon {
    width: 44px;
    height: 44px;
    padding: 0;
}

.secure__status {
    display: flex;
    align-items: center;
    gap: 16px;
    align-self: center;
}

.secure__status-info {
    display: flex;
    align-items: center;
    gap: 16px;
}

.secure__status-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--color-success-light);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.secure__status-icon svg,
.secure__status-icon img {
    width: 24px;
    height: 24px;
}

.secure__status-text {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.secure__status-title {
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.secure__status-lead {
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-secondary);
}

.secure--access .secure__title {
    width: 100%;
}

.secure--access .secure-card {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
}

.secure--biz .secure-card {
    width: 670px;
}

.secure--biz .secure__cta {
    align-self: center;
}

/* Deploy */
.deploy {
    padding: 96px 0 0;
}

.deploy-card {
    position: relative;
    width: 100%;
    background: #f0f6ff;
    border-radius: 40px;
    padding: 60px;
    display: flex;
    flex-direction: column;
    gap: 40px;
    overflow: hidden;
}

.deploy-card__bg {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 283px;
    pointer-events: none;
    z-index: 0;
    transform: scaleY(-1);
}

.deploy-card__bg img,
.deploy-card__bg svg {
    width: 100%;
    height: 283px;
    max-width: none;
    display: block;
    object-fit: fill;
}

.deploy-card__top {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 40px;
    width: 100%;
}

.deploy-card__text {
    width: 609px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    flex-shrink: 0;
}

.deploy-card__copy {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.deploy-card__heading {
    color: #000;
}

.deploy-card__lead {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-primary);
}

.deploy-card__visual {
    position: relative;
    z-index: 1;
    flex: 1 1 0;
    min-width: 0;
    height: 385px;
    overflow: hidden;
}

.deploy-card__visual img,
.deploy-card__visual picture,
.deploy-card__visual picture img {
    width: 591px;
    height: 385px;
    max-width: none;
    object-fit: contain;
    object-position: right center;
    margin-left: auto;
}

.deploy-card__tiles {
    position: relative;
    z-index: 1;
    display: flex;
    gap: 20px;
    width: 100%;
}

.deploy-tile {
    flex: 1 1 0;
    min-width: 0;
    background: var(--color-bg-white);
    border-radius: 24px;
    padding: 16px;
    display: flex;
    align-items: center;
    gap: 16px;
}

.deploy-tile__text {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.deploy-tile__title {
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.deploy-tile__lead {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
}

.deploy-card--dark {
    background: #111827;
    border: 1px solid var(--color-border-light);
}

.deploy-card--dark .deploy-card__bg {
    top: 0;
    bottom: auto;
    transform: none;
}

.deploy-card--dark .deploy-card__heading {
    color: var(--color-text-white);
}

.deploy-card--dark .section-label {
    color: var(--color-text-white);
}

.deploy-card--dark .section-label svg path {
    fill: var(--color-text-white);
}

.deploy-card--dark .deploy-card__tiles {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.deploy-card--dark .deploy-tile {
    flex: none;
}

.deploy-card--dark .deploy-card__lead {
    color: var(--color-text-white);
}

.deploy-tile--plain {
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    height: 116px;
    gap: 0;
}

.deploy-tile__kicker {
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.deploy-card--flip {
    background:
        radial-gradient(ellipse 80% 90% at 18% 50%, #1a8a9e 0%, transparent 58%),
        linear-gradient(90deg, #12324a 0%, #111827 46%);
}

.deploy-card--flip .deploy-card__visual {
    height: 430px;
}

.deploy-card--flip .deploy-card__visual img,
.deploy-card--flip .deploy-card__visual picture,
.deploy-card--flip .deploy-card__visual picture img {
    width: 100%;
    height: 100%;
    margin-left: 0;
    object-fit: contain;
    object-position: left center;
}

.deploy--sec {
    padding: 64px 0 96px;
}

.deploy-card--encrypt {
    gap: 0;
}

.deploy-card--encrypt .deploy-card__top {
    gap: 20px;
}

.deploy-card--encrypt .deploy-card__visual {
    position: relative;
}

.deploy-card--encrypt .deploy-card__visual picture {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 846px;
    height: 472px;
    transform: translate(calc(-50% + 22px), -50%);
}

.deploy-card--encrypt .deploy-card__visual img,
.deploy-card--encrypt .deploy-card__visual picture img {
    width: 846px;
    height: 472px;
    max-width: none;
    margin: 0;
    object-fit: cover;
    object-position: center;
}

.deploy-card--status {
    gap: 0;
}

.deploy-card--status .deploy-card__text {
    width: auto;
    flex: 1 1 0;
    min-width: 0;
    gap: 40px;
}

.deploy-card--status .secure__status {
    align-self: flex-start;
}

/* Download */
.dl-os {
    padding: 48px 0 12px;
}

.dl-os .container {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.dl-os__title {
    color: #000;
}

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

.dl-os-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    min-height: 100%;
    min-width: 0;
    max-width: 100%;
    padding: 24px;
    background: var(--color-bg-gray);
    border-radius: 24px;
}

.dl-os-card__head {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    width: 100%;
}

.dl-os-card__icon {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.dl-os-card__icon svg {
    width: 64px;
    height: 64px;
}

.dl-os-card__copy {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
    flex: 1 1 0;
}

.dl-os-card__title {
    font-size: 20px;
    line-height: 24px;
    font-weight: 600;
    color: var(--color-text-primary);
}

.dl-os-card__text {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
}

.dl-os-card__files {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    width: 100%;
    min-width: 0;
}

.dl-os-card__files .btn {
    width: 100%;
    min-width: 0;
    height: auto;
    min-height: 52px;
    white-space: normal;
    text-align: center;
    background: var(--color-bg-white);
}

.dl-os-card__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: auto;
    font-size: 14px;
    line-height: 20px;
    color: var(--color-text-secondary);
}

.dl-os-card__ver {
    font-weight: 500;
    color: var(--color-text-primary);
}

.dl-os-card__dot {
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: var(--color-border-medium);
}

.compat {
    padding: 64px 0 0;
}

.compat .container {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.compat__head {
    display: flex;
    flex-direction: column;
    gap: 16px;
    max-width: 670px;
}

.compat__title {
    color: #000;
}

.compat__lead {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
}

.compat__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    width: 100%;
    align-items: stretch;
}

.compat__os,
.compat__reqs {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

.compat__sub {
    color: var(--color-text-primary);
}

.compat__os-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    flex: 1 1 0;
    align-items: stretch;
}

.compat__table {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.compat-os {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 12px;
    height: 100%;
    min-height: 0;
    justify-content: center;
    padding: 24px 12px;
    background: #f0f6ff;
    border-radius: 24px;
}

.compat-os .dl-os-card__title {
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
}

.compat-os__text {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.compat-os__note {
    font-size: 14px;
    line-height: 20px;
    color: var(--color-text-secondary);
}

.compat-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 48px;
    padding: 12px 24px;
    background: var(--color-bg-gray);
    border-radius: 12px;
}

.compat-row__label {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
}

.compat-row__value {
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-text-primary);
    text-align: right;
}

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

.compat-tag {
    display: inline-flex;
    align-items: center;
    padding: 4px 12px;
    border-radius: 60px;
    background: var(--color-info-light);
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
}

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

.releases .container {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.releases .compat__head {
    max-width: 820px;
}

.releases .compat__lead {
    font-size: 18px;
    line-height: 28px;
}

.releases__panel {
    display: flex;
    gap: 24px;
    width: 100%;
    padding: 24px;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 40px;
}

.releases__current {
    width: 560px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
}

.releases-card {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    padding: 24px;
    background: var(--color-bg-gray);
    border-radius: 24px;
}

.releases-card__body {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
    flex: 1 1 0;
}

.releases-card__top {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.releases-card__ver {
    color: var(--color-text-primary);
}

.releases-card__badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 12px;
    border-radius: 60px;
    background: var(--color-success);
    color: var(--color-text-white);
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
}

.releases-card__meta {
    display: flex;
    align-items: stretch;
    gap: 16px;
}

.releases-card__cell {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.releases-card__label {
    font-size: 14px;
    line-height: 20px;
    color: var(--color-text-secondary);
}

.releases-card__value {
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.releases-card__rule {
    width: 0;
    border-left: 1px solid var(--color-border-medium);
}

.releases__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.releases__link {
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-primary);
    text-decoration: none;
}

.releases__link:hover {
    text-decoration: underline;
}

.releases-news {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
}

.releases-news .plans-card__feat.is-hidden {
    display: none;
}

.releases-news.is-open .plans-card__feat.is-hidden {
    display: flex;
}

.releases__notes {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    width: 100%;
}

.releases__notes .pay-method {
    min-height: 0;
}

.page-template-page-download #corp .deploy-card__lead {
    font-size: 16px;
    line-height: 24px;
}

.page-template-page-download .deploy:last-of-type {
    padding: 72px 0;
}

.support {
    padding: 96px 0 0;
}

.support .container {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.support__head {
    display: flex;
    align-items: center;
    gap: 40px;
    width: 100%;
}

.support__visual {
    width: 670px;
    height: 454px;
    flex-shrink: 0;
    overflow: hidden;
}

.support__visual img,
.support__visual picture,
.support__visual picture img {
    width: 670px;
    height: 454px;
    max-width: none;
    object-fit: cover;
}

.support__copy {
    width: 609px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex-shrink: 0;
}

.support__title {
    color: #000;
}

.support__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
}

.support .secure-card--wide {
    width: 670px;
}

.api {
    padding: 96px 0;
}

.api .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.api__title {
    width: 670px;
    max-width: 100%;
    text-align: center;
    color: #000;
}

.api__grid {
    display: flex;
    gap: 20px;
    width: 100%;
}

.api-card {
    flex: 1 1 0;
    min-width: 0;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 24px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
    overflow: hidden;
}

.api-card__title {
    width: 100%;
    text-align: center;
    color: var(--color-text-primary);
}

.api-card__text {
    width: 100%;
    text-align: center;
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-primary);
}

.scenarios {
    position: relative;
    padding: 96px 0;
    overflow: hidden;
    border-radius: 40px;
}

.scenarios__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    transform: scaleY(-1);
}

.scenarios__bg img,
.scenarios__bg picture,
.scenarios__bg picture img {
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
}

.scenarios .container {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.scenarios__title {
    color: #000;
}

.scenarios__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
}

.scene-card {
    width: 670px;
    max-width: 100%;
    background: var(--color-bg-white);
    border-radius: 36px;
    padding: 32px;
    display: flex;
    align-items: center;
    gap: 24px;
    overflow: hidden;
}

.scene-card__body {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.scene-card__title {
    color: var(--color-text-primary);
}

.scene-card__text {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-primary);
}

.scenarios__cta {
    align-self: center;
}

/* Fits */
.fits {
    position: relative;
    padding: 96px 0 0;
    overflow: hidden;
    border-radius: 40px 40px 0 0;
}

.fits__bg {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    height: 283px;
    pointer-events: none;
    z-index: 0;
}

.fits__bg img,
.fits__bg svg {
    width: 100%;
    height: 283px;
    max-width: none;
    display: block;
    object-fit: fill;
}

.fits .container {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}

.fits__title {
    color: #000;
}

.fits__slider.swiper {
    width: 100%;
    margin: 0;
    overflow: visible;
}

.fits__slider .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    transform: none;
}

.fits__slider .swiper-slide {
    width: auto;
    height: auto;
}

.fits-card {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

.fits-card__media {
    width: 100%;
    height: 263px;
    border-radius: 32px;
    overflow: hidden;
}

.fits-card__media picture {
    display: block;
    width: 100%;
    height: 100%;
}

.fits-card__media img,
.fits-card__media picture img {
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
}

.fits-card__title {
    font-size: 20px;
    line-height: 28px;
    letter-spacing: -0.02em;
    color: var(--color-text-primary);
}

.fits-card__text {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-secondary);
}

.fits__cta {
    align-self: center;
}

/* Roles */
.roles {
    padding: 96px 0 0;
}

.roles .container {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.roles__intro {
    display: flex;
    flex-direction: column;
    gap: 16px;
    max-width: 843px;
}

.roles__title {
    color: #000;
}

.roles__lead {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-primary);
}

.roles__grid {
    display: grid;
    grid-template-columns: 325px minmax(0, 1fr) 325px;
    gap: 20px;
    align-items: stretch;
}

.roles-stack {
    display: flex;
    flex-direction: column;
    gap: 20px;
    min-width: 0;
}

.roles-card {
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 24px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    min-width: 0;
}

.roles-card--roles {
    position: relative;
    background: var(--color-bg-gray);
    border: 0;
    overflow: hidden;
    padding-bottom: 176px;
}

.roles-card--feature {
    flex: 1 1 0;
}

.roles-card--perms {
    border: 0;
    background: linear-gradient(165deg, #c3d3ff 0%, #d7e4ff 42%, #c8efe4 100%);
    justify-content: space-between;
}

.roles-card__heading {
    color: var(--color-text-primary);
}

.roles-card__head {
    display: flex;
    align-items: center;
    gap: 16px;
}

.roles-card__head .icon-3d--tile img,
.roles-card__head .icon-3d--tile picture,
.roles-card__head .icon-3d--tile picture img {
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.roles-card__text {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-primary);
}

.icon-3d--roles {
    position: absolute;
    left: 32px;
    bottom: 32px;
    width: 144px;
    height: 144px;
}

.icon-3d--roles img,
.icon-3d--roles picture,
.icon-3d--roles picture img {
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.roles-card__count-block {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.roles-card__count {
    font-size: 96px;
    line-height: 96px;
    letter-spacing: -0.04em;
    color: var(--color-text-primary);
}

.roles-card__count-text {
    color: var(--color-text-primary);
}

.roles--sec .roles__intro {
    gap: 24px;
}

.roles--sec .roles-stack {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.roles--sec .roles-card--feature {
    flex: none;
}

.roles--sec .roles-card--feature .heading {
    font-family: var(--font-text);
    font-size: 18px;
    line-height: 24px;
    letter-spacing: 0;
    font-weight: 500;
}

.roles--sec .roles-card__count-block {
    gap: 8px;
}

.roles--sec .roles-card__count {
    color: var(--color-primary);
}

.roles--sec .roles-card--perms {
    position: relative;
    isolation: isolate;
    background: linear-gradient(180deg, #c3d3ff 0%, rgba(195, 211, 255, 0.35) 55%, rgba(200, 239, 228, 0.85) 100%);
    overflow: hidden;
}

.roles--sec .roles-card--perms::before {
    content: '';
    position: absolute;
    inset: -1px;
    background: url('../img/pcdesk/sec-perms-bg.webp') center / cover no-repeat;
    opacity: 0.85;
    z-index: 0;
    pointer-events: none;
}

.roles--sec .roles-card--perms > * {
    position: relative;
    z-index: 1;
}

/* Audit */
.audit {
    padding: 96px 0 0;
}

.audit-card {
    position: relative;
    width: 100%;
    background: #f0f6ff;
    border-radius: 40px;
    padding: 60px;
    display: flex;
    flex-direction: column;
    gap: 40px;
    overflow: hidden;
}

.audit-card__bg {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 283px;
    pointer-events: none;
    z-index: 0;
    transform: scaleY(-1);
}

.audit-card__bg img,
.audit-card__bg svg {
    width: 100%;
    height: 283px;
    max-width: none;
    display: block;
    object-fit: fill;
}

.audit-card__top {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 40px;
    width: 100%;
}

.audit-card__copy {
    width: 609px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex-shrink: 0;
}

.audit-card__heading {
    color: #000;
}

.audit-card__visual {
    position: relative;
    z-index: 1;
    flex: 1 1 0;
    min-width: 0;
    height: 385px;
    overflow: hidden;
}

.audit-card__visual img,
.audit-card__visual picture,
.audit-card__visual picture img {
    width: 591px;
    height: 385px;
    max-width: none;
    object-fit: contain;
    object-position: right center;
    margin-left: auto;
}

.audit-card__tiles {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    width: 100%;
}

.audit-tile {
    background: var(--color-bg-white);
    border-radius: 24px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-height: 188px;
}

.audit-tile__body {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.audit-tile__title {
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.audit-tile__text {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
}

/* Compare */
.compare {
    padding: 96px 0;
    overflow: hidden;
    border-radius: 40px;
}

.compare .container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}

.compare__title {
    width: 670px;
    max-width: 100%;
    color: #000;
}

.compare__table {
    display: flex;
    align-items: stretch;
    gap: 20px;
    width: 100%;
}

.compare__labels {
    width: 325px;
    flex-shrink: 0;
    padding: 132px 8px 40px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.compare__label {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
}

.compare__label--h72 {
    height: 72px;
}

.compare__label--h96 {
    height: 96px;
}

.compare__label--h48 {
    height: 48px;
}

.compare__label--h24 {
    height: 24px;
}

.compare__line {
    width: 100%;
    height: 0;
    border: none;
    flex-shrink: 0;
    position: relative;
    overflow: visible;
}

.compare__line::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    border-top: 1px solid var(--color-border-medium);
}

.compare__board {
    width: 1015px;
    max-width: 100%;
    border: 1px solid var(--color-border-light);
    border-radius: 24px;
    padding: 8px;
    display: flex;
    gap: 20px;
    align-items: stretch;
    flex-shrink: 0;
}

.compare-col {
    flex: 1 1 0;
    min-width: 0;
    border-radius: 20px;
    padding: 32px 24px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 40px;
}

.compare-col--pcdesk {
    background: #f0f6ff;
}

.compare-col__logo {
    width: 191px;
    height: 52px;
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.compare-col__logo svg,
.compare-col__logo img {
    width: 191px;
    height: 43px;
}

.compare-col__heading {
    width: 100%;
    height: 52px;
    color: var(--color-text-primary);
    display: flex;
    align-items: center;
}

.compare-col__list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
}

.compare-col__item {
    display: contents;
}

.compare-col__criterion {
    display: none;
}

.compare-col__row {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
}

.compare-col__row--h72 {
    height: 72px;
}

.compare-col__row--h96 {
    height: 96px;
}

.compare-col__row--h48 {
    height: 48px;
}

.compare-col__row--h24 {
    height: 24px;
}

.compare-col__icon {
    width: 20px;
    height: 20px;
    flex: none;
    flex-shrink: 0;
}

.compare-col__icon svg,
.compare-col__icon img {
    width: 20px;
    height: 20px;
}

.compare-col__row > span:not(.compare-col__icon) {
    flex: 1 1 0;
    min-width: 0;
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-primary);
}

/* IT departments */
.it {
    position: relative;
    background: #111827;
    padding: 96px 0;
    overflow: hidden;
    border-radius: 40px;
}

.it__bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 283px;
    pointer-events: none;
    z-index: 0;
}

.it__bg img,
.it__bg svg {
    width: 100%;
    height: 283px;
    max-width: none;
    display: block;
    object-fit: fill;
}

.it .container {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}

.it__head {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
}

.it__title {
    width: 843px;
    max-width: 100%;
    color: var(--color-text-white);
}

.it__lead {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-white);
}

.it__table {
    width: 100%;
    background: #374151;
    border-radius: 24px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.it__row {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    min-height: 48px;
}

.it__name {
    width: 400px;
    flex-shrink: 0;
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;
    color: var(--color-text-white);
}

.it__text {
    flex: 1 1 0;
    min-width: 0;
    font-size: 14px;
    line-height: 20px;
    color: var(--color-border-medium);
}

.it__line {
    width: 100%;
    height: 0;
    border: none;
    flex-shrink: 0;
    position: relative;
    overflow: visible;
}

.it__line::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

/* Trust */
.trust {
    padding: 96px 0 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.trust .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.trust__title {
    width: 100%;
    text-align: center;
    color: #000;
}

.trust__marquee {
    width: 100%;
    overflow: hidden;
}

.trust__track {
    display: flex;
    align-items: center;
    gap: 8px;
    width: max-content;
    animation: trust-marquee 40s linear infinite;
    will-change: transform;
}

.trust-logo {
    width: 170px;
    height: 96px;
    flex-shrink: 0;
    background: var(--color-bg-gray);
    border-radius: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.trust-logo--flush {
    background: transparent;
}

.trust-logo img,
.trust-logo picture,
.trust-logo picture img {
    width: 170px;
    height: 96px;
    max-width: none;
    object-fit: cover;
}

.trust-logo--mark img {
    width: 136px;
    height: 19px;
    object-fit: contain;
}

@keyframes trust-marquee {
    from {
        transform: translateX(-522px);
    }

    to {
        transform: translateX(-3014px);
    }
}

@media (prefers-reduced-motion: reduce) {
    .trust__track {
        animation: none;
        transform: translateX(-522px);
    }
}

.trust__stats {
    width: 1016px;
    max-width: 100%;
    display: flex;
    align-items: center;
    gap: 8px;
}

.trust__laurel {
    width: 22px;
    height: 72px;
    flex-shrink: 0;
}

.trust__laurel svg {
    width: 22px;
    height: 72px;
}

.trust__laurel--left {
    transform: scaleX(-1);
}

.trust__stat {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}

.trust__stat-title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.trust__stat-value {
    color: var(--color-text-primary);
    white-space: nowrap;
}

.trust__stat-label {
    width: 100%;
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
    text-align: center;
}

.trust__rule {
    width: 0;
    align-self: stretch;
    border-left: 1px solid var(--color-border-light);
    flex-shrink: 0;
}

.trust__cards {
    display: flex;
    gap: 20px;
    width: 100%;
}

.trust-card {
    flex: 1 1 0;
    min-width: 0;
    height: 300px;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 24px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 36px;
}

.trust-card__top {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.trust-card__stars {
    display: flex;
    align-items: center;
    gap: 4px;
}

.trust-card__stars svg,
.trust-card__stars img {
    width: 20px;
    height: 20px;
}

.trust-card__text {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-primary);
}

.trust-card__text strong,
.trust-card__text b {
    font-weight: 600;
    line-height: 24px;
}

.trust-card__user {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.trust-card__avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}

.trust-card__avatar img,
.trust-card__avatar picture,
.trust-card__avatar picture img {
    width: 48px;
    height: 48px;
    max-width: none;
    object-fit: cover;
}

.trust-card__meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.trust-card__name {
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;
    color: var(--color-text-primary);
}

.trust-card__date {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
}

/* FAQ */
.seo-text {
    padding: 72px 0 0;
}

.seo-text__body {
    max-width: 880px;
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-primary);
}

.seo-text__body > * + * {
    margin-top: 16px;
}

.seo-text__body h2,
.seo-text__body h3 {
    color: #000;
    font-weight: 600;
}

.seo-text__body h2 {
    font-size: 32px;
    line-height: 40px;
}

.seo-text__body h3 {
    font-size: 24px;
    line-height: 32px;
}

.seo-text__body a {
    color: var(--color-primary);
}

.faq {
    padding: 96px 0 0;
}

.faq .container {
    display: flex;
    align-items: flex-start;
    gap: 60px;
}

.faq__intro {
    width: 498px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
}

.faq__title {
    width: 100%;
    color: #000;
}

.faq__lead {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-primary);
}

.faq__list {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.faq-item {
    width: 100%;
    background: var(--color-bg-gray);
    border-radius: 24px;
    padding: 24px;
    border-bottom: 1px solid transparent;
    box-shadow: 0 0 0 rgba(70, 70, 70, 0);
    transition: background-color 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.faq-item.is-open {
    background: var(--color-bg-white);
    border-bottom-color: var(--color-border-light);
    box-shadow: 0 15px 20.3px rgba(70, 70, 70, 0.08);
}

.faq-item__head {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    text-align: left;
    cursor: pointer;
}

.faq-item__num {
    width: 36px;
    height: 28px;
    flex-shrink: 0;
    padding: 3px 8px;
    border-radius: 60px;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: #071030;
    text-align: center;
    box-sizing: border-box;
}

.faq-item__q {
    flex: 1 1 0;
    min-width: 0;
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    color: var(--color-text-primary);
}

.faq-item__icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: rotate(180deg);
    transition: transform 0.3s ease;
}

.faq-item.is-open .faq-item__icon {
    transform: none;
}

.faq-item__icon svg {
    width: 20px;
    height: 20px;
}

.faq-item__body {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.35s ease;
}

.faq-item__body-inner {
    min-height: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-top: 0;
    transition: padding-top 0.35s ease;
}

.faq-item.is-open .faq-item__body {
    grid-template-rows: 1fr;
}

.faq-item.is-open .faq-item__body-inner {
    padding-top: 20px;
}

.faq-item__rule {
    width: 100%;
    height: 0;
    border-top: 1px solid rgba(7, 16, 48, 0.08);
}

.faq-item__a {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-primary);
}

/* Bottom CTA */
.cta {
    padding: 96px 0 0;
}

.cta-card {
    position: relative;
    width: 100%;
    height: 488px;
    background: #f0f6ff;
    border-radius: 40px;
    padding: 60px;
    overflow: hidden;
    display: flex;
    align-items: center;
}

.cta-card__bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    transform: scaleY(-1);
}

.cta-card__bg img,
.cta-card__bg svg {
    width: 100%;
    height: 100%;
    max-width: none;
    display: block;
    object-fit: fill;
}

.cta-card__text {
    position: relative;
    z-index: 1;
    width: 609px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
}

.cta-card__copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    width: 100%;
}

.cta-card .section-label svg path {
    fill: var(--color-primary);
}

.cta-card__heading {
    color: #000;
}

.cta-card__lead {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-primary);
}

.cta-card__buttons {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.cta--feat .cta-card__buttons {
    flex-wrap: nowrap;
}

.cta--feat .cta-card__text {
    z-index: 2;
}

.cta--feat .cta-card__visual {
    z-index: 0;
}

.cta-card__visual {
    position: absolute;
    right: 0;
    top: 0;
    width: 670px;
    height: 488px;
    overflow: hidden;
    z-index: 1;
    pointer-events: none;
}

.cta-card__visual img,
.cta-card__visual picture,
.cta-card__visual picture img {
    width: 670px;
    height: 488px;
    max-width: none;
    object-fit: cover;
    object-position: right center;
}

.cta--biz .cta-card__bg {
    transform: none;
}

.cta--biz .cta-card__bg picture {
    display: block;
    width: 100%;
    height: 100%;
}

.cta--biz .cta-card__bg img,
.cta--biz .cta-card__bg picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* Footer */
.footer {
    padding: 22px 0 23px;
}

.footer__panel {
    background: var(--color-bg-gray);
    border-radius: 40px;
    padding: 60px;
    display: flex;
    flex-direction: column;
    gap: 40px;
    overflow: hidden;
}

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

.footer__brand {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    flex-shrink: 0;
    text-decoration: none;
}

.footer__logo-mark {
    width: 191px;
    height: 52px;
    margin-bottom: -2px;
    display: flex;
    align-items: center;
}

.footer__logo-mark svg,
.footer__logo-mark img {
    width: 191px;
    height: 43px;
}

.footer__tagline {
    font-size: 12px;
    line-height: 16px;
    color: var(--color-text-secondary);
    white-space: nowrap;
}

.footer__main {
    width: 781px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.footer__cols {
    display: flex;
    gap: 40px;
    width: 100%;
}

.footer__col {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.footer__col-title {
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.footer__col-link {
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    color: var(--color-text-secondary);
}

.footer__col-link:hover {
    color: var(--color-text-primary);
}

.footer__contacts-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.footer__contacts {
    display: flex;
    gap: 40px;
    align-items: flex-start;
}

.footer__contact {
    display: flex;
    align-items: center;
    gap: 8px;
}

.footer__contact-icon {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: var(--color-bg-white);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.footer__contact-icon svg,
.footer__contact-icon img {
    width: 20px;
    height: 20px;
}

.footer__contact-body {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.footer__contact-value {
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
    white-space: nowrap;
}

.footer__contact-label {
    font-size: 12px;
    line-height: 16px;
    color: var(--color-text-secondary);
}

.footer__social {
    display: flex;
    align-items: center;
    gap: 8px;
}

.footer__social-link {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.footer__social-link svg {
    width: 40px;
    height: 40px;
}

.footer__social-link--max {
    border-radius: 50%;
    overflow: hidden;
    background: url('../img/pcdesk/max-bg.jpg') center / cover no-repeat;
}

.footer__social-link--max svg {
    width: 40px;
    height: 40px;
}

.lead-modal {
    position: fixed;
    inset: 0;
    z-index: 200;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(17, 24, 39, 0.5);
}

.lead-modal.is-open {
    display: flex;
}

.lead-modal__dialog {
    position: relative;
    width: 100%;
    max-width: 480px;
    max-height: 100%;
    overflow: auto;
    background: var(--color-bg-white);
    border-radius: 24px;
    padding: 40px;
    box-shadow: 0 24px 48px rgba(17, 24, 39, 0.16);
}

.lead-modal__close {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 50%;
    background: var(--color-bg-gray);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-icon);
}

.lead-modal__close svg {
    width: 20px;
    height: 20px;
}

.lead-modal__title {
    margin: 0 32px 8px 0;
    color: var(--color-text-primary);
}

.lead-modal__lead {
    margin: 0 0 24px;
    color: var(--color-text-secondary);
}

.lead-modal__form {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.lead-modal__field {
    width: 100%;
    height: 52px;
    padding: 16px 20px;
    border: 1px solid var(--color-border-light);
    border-radius: 16px;
    background: var(--color-bg-gray);
    font-family: var(--font-text);
    font-size: 16px;
    line-height: 20px;
    color: var(--color-text-primary);
    outline: none;
}

.lead-modal__field:focus {
    border-color: var(--color-primary);
    background: var(--color-bg-white);
}

.lead-modal__field--area {
    height: 120px;
    resize: vertical;
}

.lead-modal__submit {
    width: 100%;
    margin-top: 8px;
}

.lead-modal__note {
    font-size: 12px;
    line-height: 16px;
    color: var(--color-text-secondary);
}

.lead-modal__note a {
    color: var(--color-primary);
}

.lead-modal__success {
    display: none;
    flex-direction: column;
    gap: 12px;
}

.lead-modal.is-success .lead-modal__form,
.lead-modal.is-success .lead-modal__lead {
    display: none;
}

.lead-modal.is-success .lead-modal__success {
    display: flex;
}

body.is-modal-open {
    overflow: hidden;
}

.footer__cta-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.footer__up {
    width: 44px;
    height: 44px;
    border-radius: 64px;
    border: 1px solid var(--color-border-light);
    background: var(--color-bg-white);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 9px;
}

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

.footer__line {
    width: 100%;
    height: 1px;
    background: var(--color-border-light);
    border: 0;
}

.footer__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    color: var(--color-text-secondary);
}

.footer__copy {
    font-size: 14px;
    line-height: 20px;
    white-space: nowrap;
}

.footer__notes {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
    max-width: 640px;
    font-size: 12px;
    line-height: 16px;
    text-align: right;
}

.footer__legal {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    font-size: 14px;
    line-height: 20px;
    color: var(--color-text-secondary);
}

.footer__legal-link {
    text-decoration: underline;
    text-underline-offset: 2px;
    white-space: nowrap;
}

.footer__legal-link:hover {
    color: var(--color-text-primary);
}

.cookie-bar {
    position: fixed;
    z-index: 120;
    left: 16px;
    right: 16px;
    bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    max-width: 1100px;
    margin: 0 auto;
    padding: 16px 20px;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 16px;
    box-shadow: 0 8px 24px rgba(16, 24, 40, 0.12);
}

.cookie-bar[hidden] {
    display: none;
}

.cookie-bar__text {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 14px;
    line-height: 20px;
    color: var(--color-text-primary);
}

.cookie-bar__text a {
    color: var(--color-primary);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.cookie-bar__ok {
    flex-shrink: 0;
}

.icon-3d--feat-hero {
    width: 236px;
    height: 236px;
}

.icon-3d--feat-hero img {
    inset: -20.31% -20.51% -20.51% -20.31%;
    width: 140.82%;
    height: 140.82%;
    max-width: none;
    object-fit: cover;
}

.feat-hero {
    padding: 16px 0 0;
}

.feat-hero__card {
    position: relative;
    width: 100%;
    background: #f0f6ff;
    border: 1px solid var(--color-border-light);
    border-radius: 40px;
    padding: 60px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

.feat-hero__bg {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 283px;
    pointer-events: none;
    z-index: 0;
    transform: scaleY(-1);
}

.feat-hero__bg img,
.feat-hero__bg svg {
    width: 100%;
    height: 283px;
    max-width: none;
    display: block;
    object-fit: fill;
}

.feat-hero__copy {
    position: relative;
    z-index: 1;
    width: 781px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.feat-hero__title {
    color: var(--color-text-primary);
}

.feat-hero__lead {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-primary);
}

.feat-hero__buttons {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    flex-wrap: wrap;
}

.feat-hero .icon-3d--feat-hero {
    position: relative;
    z-index: 1;
    flex-shrink: 0;
}

.caps {
    padding: 64px 0 96px;
}

.caps__layout {
    display: flex;
    align-items: flex-start;
    gap: 49px;
}

.caps-nav {
    position: sticky;
    top: 24px;
    width: 296px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.caps-nav__item {
    display: flex;
    align-items: center;
    min-height: 40px;
    padding: 12px;
    border-radius: 12px;
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.caps-nav__item.is-active {
    background: #f0f6ff;
    color: var(--color-primary);
}

.caps__main {
    width: 1015px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    gap: 64px;
    min-width: 0;
}

.caps-block {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.caps-block__body {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
}

.caps-block__title {
    color: #000;
}

.caps-block__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
}

.caps-card {
    width: 325px;
    max-width: 100%;
    min-height: 220px;
    gap: 16px;
    justify-content: flex-start;
}

.caps-card:has(.caps-tags--card) {
    min-height: 270px;
}

.caps-card__head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    width: 100%;
    text-align: left;
    cursor: default;
}

.caps-card__title {
    width: 100%;
}

.caps-card__chevron {
    display: none;
}

.caps-card .secure-card__text {
    font-size: 14px;
    line-height: 20px;
    color: var(--color-text-primary);
}

.caps--tabs {
    padding: 96px 0 0;
}

.caps--tabs .caps-nav__item {
    width: 100%;
    height: 40px;
    min-height: 40px;
    border: 0;
    background: transparent;
    cursor: pointer;
    font-family: inherit;
    text-align: left;
    appearance: none;
    -webkit-appearance: none;
}

.caps--tabs .caps-nav__item.is-active {
    background: #f0f6ff;
    color: var(--color-primary);
}

.caps--tabs .caps-card {
    min-height: 244px;
}

.caps--tabs .caps-card--wide {
    width: 497px;
    min-height: 0;
}

.caps--tabs .caps-card:has(.caps-tags--card) {
    min-height: 0;
}

.caps--tabs .caps-card .secure-card__text {
    color: var(--color-text-secondary);
}

.caps--tabs .caps-block[hidden] {
    display: none;
}

.caps-avail {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.caps-avail__label,
.caps-notes__title {
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.caps-avail__lead {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-primary);
    white-space: pre-line;
}

.caps-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.caps-tags--card {
    margin-top: auto;
}

.caps-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 4px 8px;
    border-radius: 8px;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.caps-tag svg,
.caps-tag img {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

.caps-tag__yes {
    color: var(--color-success);
}

.caps-tag__no {
    color: #ef4444;
}

.caps-notes {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.caps-notes__cols {
    display: flex;
    gap: 8px;
    width: 100%;
}

.caps-notes__col {
    width: 333px;
    max-width: 100%;
    font-size: 16px;
    line-height: 28px;
    color: var(--color-text-primary);
    white-space: pre-line;
}

.caps-matrix {
    width: 100%;
    gap: 20px;
}

.caps-matrix .compare__labels {
    width: 249px;
    padding: 32px 8px;
    gap: 40px;
}

.caps-matrix .compare__board {
    width: auto;
    flex: 1 1 0;
    min-width: 0;
    border: 0;
    padding: 0;
    gap: 8px;
    background: transparent;
}

.caps-matrix .compare-col {
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
    border-radius: 20px;
    padding: 32px 24px;
    gap: 40px;
}

.caps-matrix .compare-col:nth-child(2) {
    background: #f0f6ff;
}

.caps-matrix .compare-col:nth-child(3) {
    background: var(--color-bg-gray);
}

.caps-matrix--wide .compare__labels {
    width: 345px;
}

.compare--plans {
    padding: 64px 0 0;
}

.compare--plans .compare__title {
    width: 100%;
}

.pick {
    padding: 96px 0;
}

.pick .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.pick__title {
    width: 670px;
    max-width: 100%;
    text-align: center;
    color: #000;
}

.pick__grid {
    display: flex;
    gap: 20px;
    width: 100%;
    align-items: stretch;
}

.pick-card {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 32px;
    border-radius: 24px;
    background: var(--color-bg-white);
    border: 1px solid var(--color-border-light);
}

.pick-card--pro {
    background: #f0f6ff;
    border-color: transparent;
}

.pick-card--ent {
    background: var(--color-bg-gray);
    border-color: transparent;
}

.pick-card__head {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
}

.pick-card__title {
    flex: 1 1 0;
    min-width: 0;
    color: var(--color-text-primary);
}

.pick-card__list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
}

.pay {
    position: relative;
    background: #f0f6ff;
    padding: 96px 0;
    overflow: hidden;
}

.pay__bg {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 283px;
    pointer-events: none;
    z-index: 0;
    transform: scaleY(-1);
}

.pay__bg img,
.pay__bg svg {
    width: 100%;
    height: 283px;
    max-width: none;
    display: block;
    object-fit: fill;
}

.pay .container {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}

.pay__title {
    color: #000;
}

.pay__panel {
    display: flex;
    gap: 16px;
    width: 100%;
    min-height: 526px;
    padding: 16px;
    background: var(--color-bg-white);
    border-radius: 24px;
}

.pay__methods {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.pay-method {
    flex: 1 1 0;
    min-height: 0;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 24px;
    background: var(--color-bg-gray);
    border-radius: 16px;
}

.pay-method__text {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.pay-method__title {
    font-size: 20px;
    line-height: 28px;
    font-weight: 600;
    color: var(--color-text-primary);
}

.pay-method__lead {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
}

.pay-cabinet {
    position: relative;
    flex: 1 1 0;
    min-width: 0;
    overflow: hidden;
    background: #f0f6ff;
    border-radius: 24px;
    padding: 32px;
}

.pay-cabinet__title {
    color: var(--color-text-primary);
}

.pay-cabinet__tags {
    margin-top: 24px;
    width: 100%;
}

.pay-cabinet__shot {
    position: absolute;
    left: 32px;
    right: 0;
    top: 228px;
    height: 298px;
    pointer-events: none;
}

.pay-cabinet__shot img,
.pay-cabinet__shot picture,
.pay-cabinet__shot picture img {
    width: 638px;
    max-width: 100%;
    height: 298px;
    object-fit: cover;
    object-position: top center;
}

.caps-matrix__head {
    height: auto;
    padding: 0;
    font-family: var(--font-heading);
    font-size: 24px;
    line-height: 32px;
    font-weight: 600;
    letter-spacing: -0.04em;
    color: var(--color-text-primary);
    width: 100%;
}

.caps-matrix__head--ghost {
    opacity: 0;
}

@media (max-width: 1400px) {
    .container {
        padding: 0 20px;
    }
}

@media (max-width: 1360px) {
    .hero__visual {
        width: 48%;
        height: auto;
        aspect-ratio: 797 / 675;
        right: max(0px, calc((100% - 1440px) / 2));
    }

    .hero__visual img,
    .hero__visual picture img {
        width: 100%;
        height: 100%;
    }

    .hero--plain .hero__visual {
        aspect-ratio: 797 / 600;
    }

    .audience-card__media {
        width: 48%;
        max-width: 48%;
    }

    .footer__main {
        width: auto;
        flex: 1;
    }

    .features-card,
    .features-card__media,
    .features-card__media img,
    .orgs__visual,
    .orgs__visual img {
        width: 100%;
        max-width: 100%;
        height: auto;
    }

    .features__stage {
        width: 100%;
        grid-template-columns: 44px minmax(0, 1fr) 44px;
        gap: 12px;
    }

    .wifi-card__content,
    .wifi-card__visual,
    .orgs__content,
    .orgs__visual {
        width: auto;
        flex: 1 1 0;
    }

    .wifi-card__visual img,
    .wifi-card__visual picture,
    .wifi-card__visual picture img {
        width: 100%;
        height: 100%;
    }
}

@media (max-width: 1200px) {
    .header__nav,
    .header__divider {
        display: none;
    }

    .header__burger {
        display: flex;
    }

    .header.is-open {
        position: fixed;
        inset: 0;
        z-index: 100;
        display: flex;
        flex-direction: column;
        padding: 0;
        overflow: auto;
        background: var(--color-bg-gray);
    }

    .header.is-open .header__bar {
        background: var(--color-bg-white);
        padding: 16px 20px;
    }

    .header.is-open .header__drawer {
        display: flex;
        flex-direction: column;
        flex: 1;
        min-height: 0;
    }

    .header__drawer-nav {
        display: flex;
        flex-direction: column;
        gap: 24px;
        padding: 24px 16px;
    }

    .header__drawer-link {
        font-size: 16px;
        line-height: 20px;
        font-weight: 500;
        color: var(--color-text-primary);
    }

    .header__drawer-sub {
        display: flex;
        flex-direction: column;
        gap: 12px;
        margin-top: -12px;
        padding-left: 16px;
    }

    .header__drawer-link--sub {
        font-size: 14px;
        color: var(--color-text-secondary);
    }

    .header__drawer-bottom {
        margin-top: auto;
        display: flex;
        flex-direction: column;
        gap: 24px;
        padding: 16px;
    }

    .header__drawer-contacts {
        display: flex;
        flex-direction: column;
        gap: 16px;
        align-items: flex-start;
    }

    .hero {
        min-height: 0;
        padding-bottom: 40px;
    }

    .hero__visual {
        position: relative;
        width: 100%;
        max-width: 710px;
        margin: 24px 0 0 auto;
        height: auto;
        right: auto;
        top: auto;
    }

    .hero__offer {
        width: 100%;
    }

    .hero__stats {
        margin-top: 40px;
        flex-wrap: wrap;
    }

    .hero__stat {
        flex: 1 1 220px;
    }

    .hero__stat-divider {
        display: none;
    }

    .audience-card {
        flex-direction: column;
    }

    .audience-card__media {
        width: 100%;
        max-width: none;
        min-height: 320px;
    }

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

    .plans-card {
        width: 100%;
        max-width: none;
    }

    .features-card {
        flex-direction: column;
        height: auto;
    }

    .features-card__body,
    .features-card__media {
        width: 100%;
        max-width: none;
        height: auto;
    }

    .features-card__media,
    .features-card__media img {
        height: 320px;
        object-fit: cover;
    }

    .wifi-card {
        flex-direction: column;
        padding: 40px 24px;
        align-items: stretch;
    }

    .wifi-card__visual {
        height: 280px;
        width: 100%;
    }

    .secure-card {
        width: 100%;
    }

    .deploy-card {
        padding: 40px 24px;
    }

    .deploy-card__top,
    .deploy-card__tiles {
        flex-direction: column;
    }

    .deploy-card__text,
    .deploy-card__visual {
        width: 100%;
        flex: none;
    }

    .deploy-card__visual,
    .deploy-card__visual img,
    .deploy-card__visual picture img {
        width: 100%;
        height: 280px;
    }

    .compat__grid,
    .releases__panel,
    .releases__notes {
        grid-template-columns: 1fr;
        flex-direction: column;
    }

    .releases__current,
    .compat__grid {
        width: 100%;
    }

    .releases__current {
        width: 100%;
    }

    .plans__grid {
        flex-direction: column;
    }

    .plans-card {
        height: auto;
        min-height: 0;
    }

    .compare__table,
    .compare__board {
        flex-direction: column;
    }

    .compare__labels {
        width: 100%;
        padding: 0;
    }

    .compare__board {
        width: 100%;
    }

    .orgs .container {
        flex-direction: column;
    }

    .orgs__visual {
        height: 320px;
    }

    .orgs__visual img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .steps {
        grid-template-columns: 1fr;
        max-width: 440px;
    }

    .start--home:not(.start--dl) .steps {
        grid-template-columns: none;
        max-width: none;
        width: 100%;
    }

    .start--home:not(.start--dl) .steps .swiper-wrapper {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .plans--home .plans__grid {
        flex-direction: row;
        width: 100%;
        max-width: 1014px;
    }

    .plans--home .plans-card {
        height: 640px;
    }

    .it__name {
        width: 220px;
    }

    .faq .container,
    .trust__cards,
    .cta-card,
    .cta-card__buttons {
        flex-direction: column;
    }

    .faq__intro,
    .it__title,
    .cta-card__text,
    .cta-card__visual,
    .cta-card__visual img,
    .cta-card__visual picture img {
        width: 100%;
    }

    .cta-card {
        height: auto;
        padding: 40px 24px;
    }

    .cta-card__visual {
        position: relative;
        height: 320px;
        right: auto;
        top: auto;
    }

    .trust-card {
        height: auto;
        min-height: 300px;
    }

    .footer__top {
        flex-direction: column;
    }

    .footer__notes {
        flex-direction: column;
        gap: 8px;
        align-items: flex-end;
    }

    .footer__legal {
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 16px 32px;
    }

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

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

    .audit-card__visual,
    .audit-card__visual img,
    .audit-card__visual picture,
    .audit-card__visual picture img {
        width: 100%;
        height: auto;
    }
}

@media (min-width: 1024px) and (max-width: 1200px) {
    .header__nav {
        display: flex;
    }

    .header__divider {
        display: block;
    }

    .header__burger {
        display: none;
    }
}

@media (min-width: 1024px) and (max-width: 1360px) {
    .header__inner {
        width: var(--header-row);
        zoom: calc((100vw - 40px) / var(--header-row));
    }
}

@media (max-width: 1023px) {
    .header__inner {
        zoom: 1;
        width: 100%;
    }

    .header__actions a[href^="mailto:"] {
        display: none;
    }
}

@media (max-width: 767px) {
    .container {
        padding: 0 16px;
    }

    .page {
        overflow-x: hidden;
    }

    .it {
        display: none;
    }

    .heading--h1,
    .heading--h2,
    .heading--display {
        font-size: 32px;
        line-height: 36px;
    }

    .header {
        padding: 16px;
    }

    .header__bar {
        display: flex;
        flex-direction: column;
        gap: 12px;
        width: 100%;
        justify-content: flex-start;
    }

    .header__inner {
        zoom: 1;
        width: 100%;
    }

    .header__contacts {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        width: 100%;
        max-width: none;
        margin: 0;
    }

    .header__contacts a[href^="tel:"] {
        display: inline-flex;
    }

    .header__inner {
        width: 100%;
        justify-content: space-between;
        gap: 16px;
    }

    .header__left {
        gap: 16px;
        flex: none;
        min-width: 0;
    }

    .header__actions {
        margin-left: auto;
        flex: none;
    }

    .header__tagline {
        display: none;
    }

    .header__logo-mark {
        width: 126px;
        height: 34px;
        margin-bottom: 0;
    }

    .header__logo-mark svg,
    .header__logo-mark img {
        width: 126px;
        height: 28px;
    }

    .header__actions .btn--outline,
    .header__actions .btn--gray {
        display: none;
    }

    .header.is-open .header__bar {
        padding: 16px;
    }

    .hero {
        padding: 24px 0;
        min-height: 0;
    }

    .hero .container {
        display: flex;
        flex-direction: column;
        gap: 16px;
        min-width: 0;
    }

    .hero__offer,
    .hero__text-group,
    .hero__title {
        min-width: 0;
        max-width: 100%;
    }

    .hero__offer {
        gap: 16px;
    }

    .hero__title {
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
    }

    .hero__lead {
        font-size: 14px;
        line-height: 20px;
    }

    .hero__buttons {
        flex-direction: column;
        align-items: stretch;
        flex-wrap: nowrap;
    }

    .hero__buttons .btn {
        width: 100%;
    }

    .hero__bullet-text {
        font-size: 14px;
        line-height: 20px;
    }

    .hero__visual {
        position: relative;
        width: 500px;
        max-width: none;
        height: 475px;
        aspect-ratio: auto;
        margin: 0;
        right: auto;
        top: auto;
    }

    .hero__visual img,
    .hero__visual picture,
    .hero__visual picture img {
        width: 500px;
        height: 475px;
        max-width: none;
        object-fit: contain;
        object-position: left top;
    }

    .hero__stats {
        margin-top: 0;
        flex-wrap: wrap;
        gap: 16px;
        padding: 0;
        border: 0;
        background: transparent;
        border-radius: 0;
        overflow: visible;
    }

    .hero__stat {
        flex: 0 0 calc(50% - 8px);
        width: calc(50% - 8px);
        padding: 0;
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .hero__stat--accent {
        background: none;
        padding: 0;
        border-radius: 0;
    }

    .icon-3d--stat {
        width: 32px;
        height: 32px;
    }

    .hero__stat-title {
        font-size: 14px;
        line-height: 20px;
    }

    .hero__stat-body {
        width: 100%;
    }

    .audience {
        padding-top: 64px;
        border-radius: 24px 24px 0 0;
    }

    .audience .container {
        gap: 24px;
    }

    .audience__title {
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
    }

    .audience__list {
        gap: 24px;
    }

    .audience-card {
        flex-direction: column;
        gap: 8px;
        padding: 8px;
        border-radius: 24px;
    }

    .audience-card__content {
        padding: 8px;
        gap: 16px;
        justify-content: flex-start;
    }

    .audience-card__heading {
        font-size: 24px;
        line-height: 32px;
        letter-spacing: -0.04em;
    }

    .audience-card__text {
        font-size: 16px;
        line-height: 24px;
    }

    .audience-card__tags {
        gap: 4px;
    }

    .audience-card__tag {
        font-size: 12px;
        line-height: 16px;
        font-weight: 400;
    }

    .audience-card__btn {
        width: 100%;
    }

    .terms {
        padding: 64px 0;
    }

    .terms .container {
        align-items: stretch;
        gap: 24px;
    }

    .terms__title {
        text-align: left;
        font-size: 36px;
        line-height: 44px;
        letter-spacing: -0.02em;
        width: 100%;
    }

    .terms__tabs {
        display: flex;
        gap: 7px;
        width: 100%;
    }

    .terms__tab {
        flex: 1 0 0;
        min-width: 0;
    }

    .terms__grid {
        flex-direction: column;
        width: 100%;
    }

    .terms-card {
        display: none;
        width: 100%;
    }

    .terms-card.is-active {
        display: flex;
    }

    .terms-card__head {
        padding: 12px;
    }

    .terms .icon-3d--plan {
        width: 48px;
        height: 48px;
    }

    .terms-card__name {
        font-size: 36px;
        line-height: 44px;
        letter-spacing: -0.02em;
    }

    .terms-card__tiles,
    .terms-card__tiles--grid {
        width: 100%;
        display: flex;
        flex-direction: column;
        grid-template-columns: none;
    }

    .terms-tile,
    .terms-card--pro .terms-tile {
        padding: 16px;
        gap: 8px;
        justify-content: flex-start;
    }

    .terms-tile__title .heading--h4,
    .terms-tile__title .heading--h5 {
        font-size: 24px;
        line-height: 32px;
        letter-spacing: -0.04em;
    }

    .terms-tile__value {
        font-size: 36px;
        line-height: 44px;
        letter-spacing: -0.02em;
    }

    .terms-tile__text,
    .terms-card--pro .terms-tile__text {
        font-size: 16px;
        line-height: 24px;
    }

    .wifi-card {
        padding: 24px;
        gap: 20px;
        border-radius: 24px;
        flex-direction: column;
        align-items: stretch;
    }

    .wifi-card__content {
        width: 100%;
        gap: 16px;
    }

    .wifi-card__text {
        gap: 12px;
    }

    .wifi-card__heading {
        font-size: 24px;
        line-height: 32px;
        letter-spacing: -0.04em;
    }

    .wifi-card__lead {
        font-size: 14px;
        line-height: 20px;
    }

    .wifi-card .audience-card__tags {
        gap: 4px;
    }

    .wifi-card .audience-card__tag {
        font-size: 12px;
        line-height: 16px;
        font-weight: 400;
    }

    .wifi-card__note {
        align-items: flex-start;
        gap: 8px;
    }

    .wifi-card__win {
        width: 32px;
        height: 32px;
        border-radius: 8px;
    }

    .wifi-card__win svg,
    .wifi-card__win img {
        width: 16px;
        height: 16px;
    }

    .wifi-card__note-title {
        font-size: 14px;
        line-height: 20px;
    }

    .wifi-card__note-text {
        font-size: 12px;
        line-height: 16px;
        font-weight: 400;
        color: var(--color-text-secondary);
    }

    .wifi-card__visual {
        display: none;
    }

    .audience-card__media {
        width: 100%;
        max-width: none;
        min-height: 0;
        height: auto;
        aspect-ratio: 670 / 542;
        border-radius: 20px;
    }

    .features {
        padding: 64px 0;
        border-radius: 24px;
    }

    .features .container {
        gap: 24px;
    }

    .features__head {
        gap: 24px;
    }

    .features__title {
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
        width: 100%;
    }

    .features__lead {
        font-size: 18px;
        line-height: 28px;
    }

    .features__tabs {
        flex-wrap: nowrap;
        justify-content: flex-start;
        gap: 4px;
        width: 100%;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .features__tabs::-webkit-scrollbar {
        display: none;
    }

    .features__tab {
        font-size: 14px;
        font-weight: 500;
        line-height: 20px;
        flex-shrink: 0;
    }

    .features__stage {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .features__nav {
        display: none;
    }

    .features-card {
        border-radius: 24px;
        height: auto;
    }

    .features-card__body {
        padding: 16px;
        gap: 16px;
        justify-content: flex-start;
    }

    .features-card__heading-group,
    .features-card__heading,
    .features-card__tags {
        width: 100%;
    }

    .features-card__heading {
        font-size: 24px;
        line-height: 32px;
        letter-spacing: -0.04em;
    }

    .features-card__tags {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 4px;
    }

    .features-card__media {
        width: 100%;
        height: auto;
        aspect-ratio: 1016 / 920;
    }

    .features-card__media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: left top;
    }

    .features .container > .btn--primary {
        width: 100%;
    }

    .orgs {
        padding: 64px 0;
        border-radius: 24px;
    }

    .orgs .container {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
    }

    .orgs__content {
        display: contents;
    }

    .orgs__title-group {
        order: 1;
        width: 100%;
        gap: 16px;
    }

    .orgs .audience-card__tags {
        order: 2;
        gap: 8px;
        width: 100%;
    }

    .orgs__heading {
        font-size: 24px;
        line-height: 32px;
        letter-spacing: -0.04em;
    }

    .orgs__lead {
        font-size: 14px;
        line-height: 20px;
    }

    .orgs__visual {
        order: 3;
        width: 100%;
        height: 0;
        padding-bottom: 67.76%;
        aspect-ratio: auto;
        flex: none;
        position: relative;
        overflow: hidden;
    }

    .orgs__visual img,
    .orgs__visual picture,
    .orgs__visual picture img {
        position: absolute;
        inset: 0;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .orgs .btn {
        order: 4;
        width: 100%;
    }

    .start {
        padding: 64px 0 0;
    }

    .start .container {
        gap: 24px;
    }

    .start__head {
        gap: 8px;
        width: 100%;
    }

    .start__heading {
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
    }

    .steps {
        display: flex;
        flex-direction: column;
        gap: 20px;
        max-width: none;
        width: 100%;
    }

    .steps-item {
        flex-direction: row;
        align-items: stretch;
        gap: 16px;
        text-align: left;
    }

    .steps-item__stepper {
        flex-direction: column;
        width: 90px;
        flex-shrink: 0;
        gap: 8px;
        align-self: stretch;
    }

    .steps-item__badge {
        width: 100%;
        padding: 12px 8px;
        text-align: center;
    }

    .steps-item__line:first-child {
        display: none;
    }

    .steps-item__line:last-child {
        flex: 1 1 auto;
        width: 0;
        height: auto;
        min-height: 12px;
        border-top: 0;
        border-left: 1px dashed var(--color-border-medium);
        align-self: center;
    }

    .steps-item:last-child .steps-item__line {
        display: none;
    }

    .steps-item__icon {
        display: none;
    }

    .steps-item__title {
        font-size: 20px;
        line-height: 24px;
        letter-spacing: -0.04em;
    }

    .steps-item__lead {
        font-size: 14px;
        line-height: 20px;
    }

    .start__buttons {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        padding: 0;
        gap: 8px;
    }

    .start__buttons .btn {
        width: 100%;
    }

    .secure {
        padding: 64px 0 0;
    }

    .secure .container {
        gap: 24px;
    }

    .secure__head {
        align-items: center;
        text-align: center;
        gap: 8px;
    }

    .secure__title {
        width: 100%;
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
        text-align: center;
    }

    .secure__grid {
        flex-wrap: nowrap;
        gap: 20px;
        width: calc(100% + 16px);
        margin-right: -16px;
        padding-right: 16px;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .secure__grid::-webkit-scrollbar {
        display: none;
    }

    .secure-card {
        flex: 0 0 280px;
        width: 280px;
        max-width: none;
        gap: 16px;
    }

    .secure--access .secure-card {
        flex: 0 0 280px;
        width: 280px;
    }

    .secure-card .icon-3d--stat {
        width: 52px;
        height: 52px;
    }

    .secure-card__title {
        font-size: 16px;
        line-height: 20px;
    }

    .secure-card__text {
        font-size: 14px;
        line-height: 20px;
    }

    .secure__status {
        flex-direction: column;
        align-items: flex-start;
        align-self: stretch;
        gap: 16px;
        width: 100%;
    }

    .secure__status .btn {
        width: 100%;
    }

    .deploy {
        padding: 64px 0 0;
    }

    .deploy-card {
        padding: 24px;
        border-radius: 24px;
        gap: 20px;
    }

    .deploy-card__top {
        flex-direction: column;
        gap: 20px;
    }

    .deploy-card__text {
        width: 100%;
        gap: 20px;
    }

    .deploy-card__copy {
        gap: 8px;
    }

    .deploy-card__heading {
        font-size: 24px;
        line-height: 32px;
        letter-spacing: -0.04em;
    }

    .deploy-card__lead {
        font-size: 14px;
        line-height: 20px;
    }

    .deploy-card__visual {
        width: 500px;
        max-width: none;
        height: 320px;
        flex: none;
        align-self: flex-start;
    }

    .deploy-card__visual img,
    .deploy-card__visual picture,
    .deploy-card__visual picture img {
        width: 500px;
        height: 320px;
        max-width: none;
    }

    .deploy-card__tiles {
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 8px;
        width: calc(100% + 24px);
        margin-right: -24px;
        padding-right: 24px;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .deploy-card__tiles::-webkit-scrollbar {
        display: none;
    }

    .deploy-tile {
        flex: 0 0 260px;
        width: 260px;
        min-width: 260px;
    }

    .deploy-tile__text {
        gap: 8px;
    }

    .deploy-tile__title {
        font-size: 16px;
        line-height: 20px;
    }

    .deploy-tile__lead {
        font-size: 14px;
        line-height: 20px;
    }

    .deploy .icon-3d--tile {
        width: 48px;
        height: 48px;
    }

    .plans {
        padding-top: 64px;
        border-radius: 24px;
        overflow: hidden;
    }

    .plans .container {
        align-items: stretch;
        gap: 24px;
        overflow: visible;
    }

    .plans__head {
        align-items: center;
        text-align: center;
        width: 100%;
        gap: 8px;
    }

    .plans__title {
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
        text-align: center;
    }

    .plans__tabs {
        display: none;
    }

    .plans__grid {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: stretch;
        gap: 20px;
        width: 100vw;
        max-width: 100vw;
        margin-left: calc(50% - 50vw);
        padding: 20px calc((100vw - 280px) / 2) 0;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .plans__grid::-webkit-scrollbar {
        display: none;
    }

    .plans-card {
        display: flex;
        flex: 0 0 280px;
        width: 280px;
        height: auto;
        min-height: 0;
        padding: 24px;
        gap: 16px;
        scroll-snap-align: center;
    }

    .plans-card__tiles {
        display: none;
    }

    .plans-card__body {
        gap: 16px;
    }

    .plans-card__head {
        justify-content: center;
        padding: 0;
        gap: 8px;
    }

    .plans-card__name {
        font-size: 24px;
        line-height: 32px;
        letter-spacing: -0.04em;
    }

    .icon-3d--plan {
        width: 32px;
        height: 32px;
    }

    .plans-card__lead {
        font-size: 14px;
        line-height: 20px;
    }

    .plans-card__price {
        font-size: 20px;
        line-height: 24px;
        letter-spacing: -0.04em;
    }

    .plans-card__feat span {
        font-size: 14px;
        line-height: 20px;
    }

    .plans-card__badge {
        top: -14px;
        padding: 4px 8px;
        font-size: 14px;
        line-height: 20px;
        gap: 4px;
    }

    .plans__nav {
        display: flex;
        justify-content: center;
        gap: 8px;
    }

    .plans__nav-btn {
        width: 44px;
        height: 44px;
        padding: 0;
        border: 1px solid var(--color-border-medium);
        border-radius: var(--radius-btn);
        background: var(--color-bg-white);
        color: var(--color-icon);
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }

    .plans__nav-btn svg,
    .plans__nav-btn img {
        width: 24px;
        height: 24px;
    }

    .compare {
        padding: 64px 0;
        border-radius: 24px;
    }

    .compare .container {
        gap: 36px;
    }

    .compare__title {
        width: 100%;
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
    }

    .compare__labels {
        display: none;
    }

    .compare__table,
    .compare__board {
        flex-direction: row;
        align-items: stretch;
    }

    .compare__table {
        width: 100%;
        overflow: hidden;
    }

    .compare__board {
        width: 100%;
        max-width: none;
        border: none;
        padding: 0;
        gap: 8px;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
    }

    .compare__board::-webkit-scrollbar {
        display: none;
    }

    .compare-col {
        flex: 0 0 calc(100% - 24px);
        width: calc(100% - 24px);
        min-width: 0;
        padding: 24px;
        gap: 20px;
        justify-content: flex-start;
        scroll-snap-align: start;
    }

    .compare-col__logo,
    .compare-col__heading {
        width: auto;
        height: auto;
    }

    .compare-col__item {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        width: 100%;
    }

    .compare-col__criterion {
        display: block;
        font-size: 14px;
        line-height: 20px;
        color: var(--color-text-secondary);
    }

    .compare-col__list {
        gap: 8px;
    }

    .compare-col__row,
    .compare-col__row--h72,
    .compare-col__row--h96,
    .compare-col__row--h48,
    .compare-col__row--h24 {
        height: auto;
    }

    .trust {
        padding: 64px 0 0;
        gap: 24px;
    }

    .trust .container {
        gap: 24px;
        align-items: center;
    }

    .trust__title {
        font-size: 36px;
        line-height: 44px;
        letter-spacing: -0.02em;
    }

    .trust-logo {
        width: 128px;
        height: 72px;
        border-radius: 18px;
    }

    .trust-logo img,
    .trust-logo picture,
    .trust-logo picture img {
        width: 128px;
        height: 72px;
    }

    .trust-logo--mark img {
        width: 102px;
        height: 14px;
    }

    .trust__stats {
        flex-direction: column;
        width: 284px;
        max-width: 100%;
        gap: 24px;
    }

    .trust__laurel,
    .trust__rule {
        display: none;
    }

    .trust .icon-3d--trust {
        width: 32px;
        height: 32px;
        overflow: hidden;
    }

    .trust .icon-3d--trust img {
        inset: -20.31% -20.51% -20.51% -20.31%;
        width: 140.82%;
        height: 140.82%;
        max-width: none;
        object-fit: cover;
    }

    .trust__stat-value {
        font-size: 24px;
        line-height: 32px;
        letter-spacing: -0.04em;
    }

    .trust__stat-label {
        font-size: 14px;
        line-height: 20px;
    }

    .trust__cards {
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 16px;
        width: calc(100% + 16px);
        margin-right: -16px;
        padding-right: 16px;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .trust__cards::-webkit-scrollbar {
        display: none;
    }

    .trust-card {
        flex: 0 0 290px;
        width: 290px;
        height: auto;
        min-height: 0;
    }

    .trust-card__text {
        font-size: 16px;
        line-height: 24px;
    }

    .trust-card__text strong,
    .trust-card__text b {
        font-size: 16px;
        line-height: 20px;
    }

    .trust-card__name {
        font-size: 14px;
        line-height: 20px;
        font-weight: 500;
    }

    .trust-card__date {
        font-size: 12px;
        line-height: 16px;
    }

    .faq {
        padding: 64px 0 0;
    }

    .faq .container {
        flex-direction: column;
        gap: 36px;
        align-items: stretch;
    }

    .faq__intro {
        width: 100%;
        gap: 16px;
    }

    .faq__title {
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
    }

    .faq__lead {
        font-size: 16px;
        line-height: 24px;
    }

    .faq__intro .btn {
        width: 100%;
    }

    .faq-item__q {
        font-size: 16px;
        line-height: 20px;
    }

    .faq-item__a {
        font-size: 14px;
        line-height: 20px;
    }

    .cta {
        padding: 64px 0 0;
    }

    .cta-card {
        flex-direction: column;
        align-items: stretch;
        height: auto;
        padding: 24px 24px 0;
        border-radius: 24px;
        gap: 20px;
    }

    .cta-card__text {
        width: 100%;
        gap: 24px;
    }

    .cta-card__copy {
        gap: 16px;
    }

    .cta-card__heading {
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
    }

    .cta-card__lead {
        font-size: 16px;
        line-height: 24px;
    }

    .cta-card__buttons {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        gap: 8px;
    }

    .cta-card__buttons .btn {
        width: 100%;
    }

    .cta--feat .cta-card__buttons {
        flex-wrap: wrap;
    }

    .cta-card__visual {
        position: relative;
        width: calc(100% + 48px);
        height: 249px;
        margin: 0 -24px;
        right: auto;
        top: auto;
        pointer-events: none;
    }

    .cta-card__visual img,
    .cta-card__visual picture,
    .cta-card__visual picture img {
        width: 100%;
        height: 249px;
        object-fit: cover;
        object-position: center top;
    }

    .footer {
        padding: 24px 0 0;
    }

    .footer .container {
        padding: 0;
    }

    .footer__panel {
        padding: 24px;
        border-radius: 24px 24px 0 0;
        gap: 40px;
    }

    .footer__top {
        flex-direction: column;
        gap: 40px;
    }

    .footer__cols {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 36px 16px;
        width: 100%;
    }

    .footer__col {
        flex: none;
    }

    .footer__contacts-row,
    .footer__contacts {
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        gap: 16px;
    }

    .footer__cta-row {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .footer__line {
        display: none;
    }

    .footer__legal {
        order: 2;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 16px;
    }

    .footer__legal-link {
        white-space: normal;
    }

    .footer__meta {
        order: 3;
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .footer__copy {
        white-space: normal;
        font-size: 14px;
        line-height: 20px;
    }

    .footer__notes {
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 8px;
        max-width: none;
        font-size: 12px;
        line-height: 16px;
        text-align: left;
    }

    .cookie-bar {
        left: 8px;
        right: 8px;
        bottom: 8px;
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        padding: 16px;
    }

    .cookie-bar__ok {
        width: 100%;
    }

    .crumbs {
        height: auto;
        padding: 12px 0;
    }

    .crumbs .container {
        min-width: 0;
        flex-wrap: wrap;
    }

    .crumbs__current {
        min-width: 0;
        overflow-wrap: anywhere;
    }

    .hero--plain {
        min-height: 0;
    }

    .hero--plain .hero__visual,
    .hero--plain .hero__visual img,
    .hero--plain .hero__visual picture,
    .hero--plain .hero__visual picture img {
        width: 500px;
        height: auto;
        aspect-ratio: 710 / 600;
    }

    .hero--plain .hero__bullets {
        flex-direction: column;
        gap: 12px;
    }

    .hero--plain .hero__stats {
        margin-top: 0;
    }

    .fits {
        padding: 64px 0 0;
        border-radius: 24px 24px 0 0;
    }

    .fits .container {
        gap: 24px;
    }

    .fits__title {
        font-size: 28px;
        line-height: 36px;
    }

    .fits__slider.swiper {
        overflow: visible;
        margin-right: -16px;
        width: calc(100% + 16px);
    }

    .fits__slider .swiper-wrapper {
        display: flex;
        gap: 0;
    }

    .fits__slider .swiper-slide {
        width: 280px;
        height: auto;
    }

    .fits-card__media {
        height: 210px;
        border-radius: 24px;
    }

    .fits-card__title {
        font-size: 28px;
        line-height: 36px;
    }

    .fits-card__text {
        font-size: 16px;
        line-height: 24px;
    }

    .fits__cta {
        align-self: stretch;
        width: 100%;
    }

    .roles {
        padding: 64px 0 0;
    }

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

    .roles-card--roles {
        min-height: 360px;
    }

    .roles-card__count {
        font-size: 64px;
        line-height: 64px;
    }

    .roles--sec .roles-stack {
        grid-template-columns: 1fr;
    }

    .audit {
        padding: 64px 0 0;
    }

    .audit-card {
        padding: 24px 16px;
        border-radius: 24px;
        gap: 24px;
    }

    .audit-card__top {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
    }

    .audit-card__copy,
    .audit-card__visual,
    .audit-card__visual img,
    .audit-card__visual picture,
    .audit-card__visual picture img {
        width: 100%;
        height: auto;
    }

    .audit-card__visual {
        overflow: visible;
    }

    .audit-card__tiles {
        grid-template-columns: 1fr;
    }

    .audit-tile {
        min-height: 0;
    }

    .secure--biz .secure-card,
    .support .secure-card--wide {
        width: 280px;
        max-width: none;
    }

    .secure--biz .secure__cta,
    .scenarios__cta,
    .api .btn {
        align-self: stretch;
        width: 100%;
    }

    .deploy-card--dark .deploy-card__tiles {
        grid-template-columns: 1fr;
    }

    .support {
        padding: 64px 0 0;
    }

    .support__head {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
    }

    .support__visual,
    .support__visual img,
    .support__visual picture,
    .support__visual picture img {
        width: 100%;
        height: auto;
    }

    .support__copy {
        width: 100%;
    }

    .support__title {
        font-size: 32px;
        line-height: 40px;
    }

    .support__grid {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        width: calc(100% + 16px);
        margin-right: -16px;
        padding-right: 16px;
    }

    .support__grid::-webkit-scrollbar {
        display: none;
    }

    .api {
        padding: 64px 0;
    }

    .api__title {
        font-size: 32px;
        line-height: 40px;
    }

    .api__grid {
        flex-direction: column;
    }

    .api-card {
        flex: none;
        width: 100%;
        height: auto;
    }

    .icon-3d--api,
    .icon-3d--scene {
        width: 96px;
        height: 96px;
    }

    .scenarios {
        padding: 64px 16px;
        border-radius: 24px;
    }

    .scenes {
        padding: 48px 0 0;
    }

    .scenes .container {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
    }

    .scenarios .container {
        padding: 0;
    }

    .scene-card {
        width: 100%;
        flex-direction: column;
        align-items: flex-start;
        padding: 24px;
        border-radius: 24px;
    }

    .plans--biz {
        padding-top: 0;
    }

    .plans--biz .plans__grid {
        width: 100%;
    }

    .hero--plain.hero--home {
        min-height: 0;
        padding-bottom: 40px;
    }

    .hero--plans {
        min-height: 0;
    }

    .hero--plans .container {
        gap: 40px;
    }

    .hero--home .hero__stats {
        margin-top: 24px;
    }

    .hero--plain.hero--home.hero--sec .hero__stats {
        margin-top: 24px;
    }

    .hero__metrics {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        gap: 8px;
    }

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

    .useful {
        padding: 64px 0 0;
        border-radius: 24px 24px 0 0;
    }

    .useful .container {
        gap: 24px;
    }

    .useful__layout,
    .useful__cards {
        flex-direction: column;
        width: 100%;
    }

    .useful-photo,
    .useful-photo__media,
    .useful-photo__media img,
    .useful-photo__media picture,
    .useful-photo__media picture img,
    .useful-card,
    .useful-card__body {
        width: 100%;
        max-width: 100%;
    }

    .useful-photo__media {
        height: auto;
        aspect-ratio: 420 / 324;
    }

    .fn {
        padding: 64px 0 0;
    }

    .fn .container {
        align-items: flex-start;
        gap: 24px;
    }

    .fn__head {
        align-items: flex-start;
        gap: 16px;
    }

    .fn__title {
        text-align: left;
    }

    .fn__tabs {
        justify-content: flex-start;
        width: 100%;
        overflow-x: auto;
    }

    .fn__grid.swiper {
        overflow: visible;
        margin-right: -16px;
        width: calc(100% + 16px);
    }

    .fn__grid .swiper-wrapper {
        flex-wrap: nowrap;
        gap: 0;
    }

    .fn__grid .swiper-slide,
    .fn .secure-card {
        width: 280px;
        max-width: none;
        flex: 0 0 280px;
    }

    .ways {
        padding: 64px 0;
    }

    .ways .container {
        align-items: flex-start;
        gap: 24px;
    }

    .ways__title {
        text-align: left;
        font-size: 32px;
        line-height: 36px;
    }

    .ways__grid {
        flex-direction: column;
    }

    .ways-card {
        width: 100%;
        min-height: 0;
        padding: 24px;
        border-radius: 24px;
    }

    .ways-card__head {
        min-height: 0;
    }

    .ways-card__title {
        width: auto;
        font-size: 24px;
        line-height: 32px;
    }

    .icon-3d--ways {
        width: 88px;
        height: 88px;
    }

    .ways-steps {
        width: 100%;
    }

    .ways__buttons {
        width: 100%;
        flex-direction: column;
    }

    .ways__buttons .btn {
        width: 100%;
    }

    .home-secure {
        padding: 64px 0;
    }

    .home-secure .container {
        gap: 24px;
    }

    .home-secure__title {
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
    }

    .home-secure-card,
    .home-secure-card__body {
        width: 100%;
    }

    .home-secure__foot {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
    }

    .home-secure__foot .btn {
        width: 100%;
    }

    .start--home:not(.start--dl) .steps {
        display: block;
        overflow: visible;
        margin-right: -16px;
        width: calc(100% + 16px);
        max-width: none;
    }

    .start--home:not(.start--dl) .steps .swiper-wrapper {
        display: flex;
        grid-template-columns: none;
        gap: 0;
    }

    .start--home:not(.start--dl) .steps .swiper-slide {
        width: 280px;
        height: auto;
    }

    .start--home .steps-item {
        flex-direction: column;
        align-items: center;
        gap: 16px;
        text-align: center;
    }

    .start--home .steps-item__stepper {
        flex-direction: row;
        width: 100%;
        gap: 20px;
        align-items: center;
        align-self: stretch;
    }

    .start--home .steps-item__line:first-child {
        display: block;
    }

    .start--home .steps-item__line:last-child {
        flex: 1 1 0;
        width: auto;
        height: 0;
        min-height: 0;
        border-left: 0;
        border-top: 1px dashed var(--color-border-medium);
        align-self: auto;
    }

    .start--home .steps-item:last-child .steps-item__line {
        display: block;
    }

    .start--home .steps-item:last-child .steps-item__line:last-child {
        border-top-color: transparent;
    }

    .start--home .start-shot {
        max-width: 100%;
        width: 100%;
    }

    .plans--home .plans__grid {
        flex-direction: row;
    }

    .plans--home .plans-card {
        height: auto;
        min-height: 480px;
    }

    .feat-hero {
        padding: 8px 0 0;
    }

    .feat-hero__card {
        flex-direction: column;
        align-items: flex-start;
        padding: 24px;
        border-radius: 24px;
        gap: 24px;
    }

    .feat-hero__copy,
    .feat-hero__buttons,
    .feat-hero__buttons .btn {
        width: 100%;
    }

    .feat-hero__title {
        font-size: 28px;
        line-height: 36px;
    }

    .icon-3d--feat-hero {
        width: 160px;
        height: 160px;
        align-self: center;
    }

    .caps {
        padding: 40px 0 64px;
    }

    .caps-nav {
        display: none;
    }

    .caps--tabs .caps-nav {
        display: flex;
        flex-direction: row;
        position: static;
        top: auto;
        width: 100%;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .caps--tabs .caps-nav::-webkit-scrollbar {
        display: none;
    }

    .caps--tabs .caps-nav__item {
        width: auto;
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .caps--tabs .caps-card,
    .caps--tabs .caps-card--wide {
        width: 100%;
        min-height: 0;
    }

    .caps--tabs {
        padding: 40px 0 0;
    }

    .icon-3d--status {
        width: 160px;
        height: 160px;
        align-self: center;
    }

    .deploy-card--status .deploy-card__text {
        gap: 20px;
    }

    .deploy-card--status .secure__status {
        width: 100%;
    }

    .caps--tabs .caps-tags--card {
        display: flex;
    }

    .caps__layout,
    .caps__main,
    .caps-block {
        flex-direction: column;
        width: 100%;
        gap: 24px;
    }

    .caps__main {
        gap: 40px;
    }

    .caps-block__title {
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
    }

    .caps-block__grid {
        flex-direction: column;
        gap: 8px;
    }

    .caps-card {
        flex: none;
        width: 100%;
        padding: 16px;
        border-radius: 16px;
        gap: 16px;
        height: auto;
        min-height: 0;
    }

    .caps-card:has(.caps-tags--card) {
        min-height: 0;
    }

    .caps-card__head {
        flex-direction: row;
        align-items: center;
        gap: 8px;
        cursor: pointer;
    }

    .caps-card .icon-3d--stat {
        width: 32px;
        height: 32px;
    }

    .caps-card .secure-card__title {
        font-size: 16px;
        line-height: 20px;
    }

    .caps-card__title {
        flex: 1 1 0;
        min-width: 0;
        font-size: 16px;
        line-height: 20px;
    }

    .caps-card__chevron {
        display: flex;
        width: 20px;
        height: 20px;
        flex-shrink: 0;
        align-items: center;
        justify-content: center;
    }

    .caps-card__chevron svg {
        width: 20px;
        height: 20px;
    }

    .caps-card__text,
    .caps-tags--card {
        display: none;
    }

    .caps-card.is-open .caps-card__text,
    .caps-card.is-open .caps-tags--card {
        display: flex;
    }

    .caps-card.is-open .caps-card__text {
        display: block;
        color: var(--color-text-secondary);
    }

    .caps-card.is-open .caps-card__chevron {
        transform: none;
    }

    .caps--tabs {
        padding: 64px 0 0;
    }

    .caps--tabs .caps__layout {
        gap: 16px;
    }

    .caps--tabs .caps__main,
    .caps--tabs .caps-block:not([hidden]),
    .caps--tabs .caps-block__body {
        display: contents;
    }

    .caps--tabs .caps-block[hidden] {
        display: none;
    }

    .caps--tabs .caps-block__title {
        order: 1;
    }

    .caps--tabs .caps-nav {
        order: 2;
        width: calc(100% + 32px);
        margin: 0 -16px;
        padding: 0 16px;
    }

    .caps--tabs .caps-block__grid {
        order: 3;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: stretch;
        gap: 8px;
        width: calc(100% + 32px);
        margin: 0 -16px;
        padding: 0 16px;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .caps--tabs .caps-block__grid::-webkit-scrollbar {
        display: none;
    }

    .caps--tabs .caps-card,
    .caps--tabs .caps-card--wide {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 32px;
        grid-template-rows: auto auto auto;
        column-gap: 16px;
        row-gap: 4px;
        align-items: start;
        flex: 0 0 260px;
        width: 260px;
        max-width: none;
        min-height: 0;
        height: auto;
        padding: 16px;
        border-radius: 16px;
    }

    .caps--tabs .caps-card .icon-3d--stat {
        grid-column: 2;
        grid-row: 1 / -1;
        width: 32px;
        height: 32px;
        margin: 0;
    }

    .caps--tabs .caps-card .secure-card__title {
        grid-column: 1;
        grid-row: 1;
        width: auto;
        font-size: 16px;
        line-height: 20px;
    }

    .caps--tabs .caps-card .secure-card__text {
        display: block;
        grid-column: 1;
        grid-row: 2;
        width: auto;
        font-size: 14px;
        line-height: 20px;
        color: var(--color-text-secondary);
    }

    .caps--tabs .caps-card .caps-tags--card {
        display: flex;
        grid-column: 1;
        grid-row: 3;
    }

    .caps-notes__cols {
        flex-direction: column;
    }

    .caps-notes__col,
    .caps-avail__lead {
        width: 100%;
    }

    .caps-matrix .compare__labels {
        display: none;
    }

    .caps-matrix .compare-col {
        background: var(--color-bg-white);
    }

    .caps-matrix .compare-col:nth-child(2) {
        background: #f0f6ff;
    }

    .caps-matrix .compare-col:nth-child(3) {
        background: var(--color-bg-gray);
    }

    .hero--plans {
        padding: 24px 0 0;
        min-height: 0;
    }

    .hero--plans .container {
        gap: 24px;
    }

    .plans--page {
        padding-top: 40px;
    }

    .plans--page .plans__grid {
        flex-wrap: nowrap;
    }

    .plans--page .plans-card {
        flex: 0 0 280px;
        width: 280px;
        height: auto;
        min-height: 480px;
    }

    .compare--plans,
    #matrix,
    .caps-nav__item[href="#matrix"] {
        display: none;
    }

    .pick {
        padding: 64px 0;
    }

    .pick .container {
        gap: 24px;
        align-items: stretch;
    }

    .pick__title {
        width: 100%;
        text-align: left;
    }

    .pick__grid {
        flex-direction: column;
    }

    .pick-card {
        padding: 24px;
    }

    .pick .icon-3d--plan,
    .pay .icon-3d--stat,
    .pay .icon-3d--plan,
    .icon-3d--lg {
        width: 64px;
        height: 64px;
    }

    .pay {
        padding: 64px 0;
    }

    .pay .container {
        gap: 24px;
    }

    .pay__panel {
        flex-direction: column;
        min-height: 0;
        padding: 8px;
        gap: 8px;
    }

    .pay__methods,
    .pay-method,
    .pay-cabinet {
        flex: none;
        width: 100%;
        height: auto;
    }

    .pay-method {
        min-height: 0;
        padding: 16px;
        align-items: flex-start;
    }

    .pay-method__title {
        font-size: 16px;
        line-height: 24px;
    }

    .pay-cabinet {
        min-height: 360px;
        padding: 24px 16px 180px;
    }

    .pay-cabinet__shot {
        left: 16px;
        right: 16px;
        top: auto;
        bottom: 0;
        height: 180px;
    }

    .pay-cabinet__shot img,
    .pay-cabinet__shot picture,
    .pay-cabinet__shot picture img {
        width: 100%;
        height: 180px;
    }

    .dl-os,
    .compat,
    .releases {
        padding-top: 40px;
    }

    .dl-os {
        padding-bottom: 0;
    }

    .start--dl {
        padding: 64px 0 0;
    }

    .start--dl .container {
        gap: 24px;
    }

    .start--dl .start__head {
        gap: 8px;
        width: 100%;
    }

    .start--dl .start__heading {
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
    }

    .start--dl .steps,
    .start--home.start--dl .steps {
        display: flex;
        flex-direction: column;
        gap: 20px;
        max-width: none;
        width: 100%;
    }

    .start--dl .steps-item,
    .start--home.start--dl .steps-item {
        flex-direction: row;
        align-items: stretch;
        gap: 16px;
        text-align: left;
    }

    .start--dl .steps-item__stepper,
    .start--home.start--dl .steps-item__stepper {
        flex-direction: column;
        width: 90px;
        flex-shrink: 0;
        gap: 8px;
        align-self: stretch;
    }

    .start--dl .steps-item__badge {
        width: 100%;
        padding: 12px 8px;
        text-align: center;
    }

    .start--dl .steps-item__line:first-child,
    .start--home.start--dl .steps-item__line:first-child {
        display: none;
    }

    .start--dl .steps-item__line:last-child,
    .start--home.start--dl .steps-item__line:last-child {
        display: block;
        flex: 1 1 auto;
        width: 0;
        height: auto;
        min-height: 12px;
        border-top: 0;
        border-left: 1px dashed var(--color-border-medium);
        align-self: center;
    }

    .start--dl .steps-item:last-child .steps-item__line,
    .start--home.start--dl .steps-item:last-child .steps-item__line {
        display: none;
    }

    .start--dl .steps-item__icon {
        display: none;
    }

    .start--dl .steps-item__title {
        font-size: 20px;
        line-height: 24px;
        letter-spacing: -0.04em;
    }

    .start--dl .steps-item__lead {
        font-size: 14px;
        line-height: 20px;
    }

    .start--dl .start__foot,
    .start--dl .start__buttons,
    .start--dl .start__buttons .btn {
        width: 100%;
    }

    .start--dl .start__note {
        font-size: 16px;
        line-height: 24px;
        color: var(--color-text-primary);
        padding: 0;
        max-width: none;
    }

    .dl-os__grid {
        grid-template-columns: 1fr;
    }

    .compat .container,
    .releases .container {
        gap: 24px;
    }

    .compat__lead {
        font-size: 16px;
        line-height: 24px;
    }

    .compat-row {
        flex-direction: column;
        align-items: flex-start;
        padding: 12px 16px;
    }

    .compat-row__value,
    .compat-row__tags {
        text-align: left;
        justify-content: flex-start;
    }

    .releases__panel {
        padding: 16px;
        border-radius: 24px;
        gap: 16px;
    }

    .releases-card {
        flex-direction: column;
        align-items: flex-start;
        padding: 16px;
    }

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

    .start__note {
        font-size: 14px;
        line-height: 20px;
        padding: 0 8px;
    }

    .deploy-tile--plain {
        height: auto;
        min-height: 116px;
        gap: 8px;
    }

    .page-template-page-download .deploy:last-of-type {
        padding: 64px 0;
    }

    .deploy-card--flip {
        padding: 64px 16px;
        border-radius: 24px;
        gap: 24px;
        align-items: stretch;
    }

    .deploy-card--flip .deploy-card__top {
        flex-direction: column;
        gap: 24px;
        align-items: stretch;
    }

    .deploy-card--flip .deploy-card__text {
        display: contents;
    }

    .deploy-card--flip .deploy-card__copy {
        order: 1;
        width: 100%;
        text-align: center;
        gap: 8px;
    }

    .deploy-card--flip .deploy-card__heading {
        font-size: 28px;
        line-height: 36px;
        letter-spacing: -0.02em;
        text-align: center;
        width: 100%;
    }

    .deploy-card--flip .deploy-card__lead {
        font-size: 16px;
        line-height: 24px;
        text-align: center;
    }

    .deploy-card--flip .deploy-card__visual {
        order: 2;
        width: 100%;
        max-width: none;
        height: auto;
        aspect-ratio: 1222 / 770;
        align-self: stretch;
    }

    .deploy-card--flip .deploy-card__visual img,
    .deploy-card--flip .deploy-card__visual picture,
    .deploy-card--flip .deploy-card__visual picture img {
        width: 100%;
        height: 100%;
        max-width: none;
        object-fit: contain;
        object-position: center;
    }

    .deploy-card--flip .cta-card__buttons {
        order: 3;
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        gap: 8px;
    }

    .deploy-card--flip .cta-card__buttons .btn {
        width: 100%;
    }

    .deploy--sec {
        padding: 64px 0;
    }

    .deploy-card--encrypt .deploy-card__visual picture {
        position: static;
        left: auto;
        top: auto;
        transform: none;
        width: 500px;
        height: 320px;
    }

    .deploy-card--encrypt .deploy-card__visual img,
    .deploy-card--encrypt .deploy-card__visual picture img {
        width: 500px;
        height: 320px;
    }

    .hero--plain.hero--home.hero--int {
        min-height: 0;
        padding: 24px 0 0;
    }

    .hero--int .hero__visual,
    .hero--int .hero__visual img,
    .hero--int .hero__visual picture,
    .hero--int .hero__visual picture img {
        width: 100%;
        height: auto;
        aspect-ratio: auto;
        margin: 0;
    }

    .deploy--int {
        padding-top: 40px;
    }

    .deploy--int .deploy-card__top {
        flex-direction: column;
    }

    .deploy--int .deploy-card__visual,
    .deploy--int .deploy-card__visual img,
    .deploy--int .deploy-card__visual picture img {
        width: 100%;
        height: auto;
    }

    .secure--rights .secure__row,
    .secure--rights .secure__cards,
    .hooks__intro,
    .faq__list--split,
    .scenes__grid,
    .secure--int .secure__grid {
        flex-direction: column;
    }

    .secure--rights .roles-card--perms,
    .secure--rights .secure-card,
    .hooks__visual,
    .hooks__visual img,
    .hooks__visual picture,
    .hooks__visual picture img,
    .home-secure--int .secure-card,
    .scene-card,
    .secure--int .secure-card--link,
    .secure--int .secure-card--code {
        width: 100%;
        height: auto;
    }

    .secure--docs.secure--int .container {
        align-items: flex-start;
        gap: 24px;
    }

    .secure--docs.secure--int .secure__title {
        text-align: left;
    }

    .secure--docs.secure--int .secure__codes {
        width: 100%;
        align-items: stretch;
    }

    .secure--docs.secure--int .secure__grid {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: stretch;
        gap: 8px;
        width: 100%;
        margin: 0;
        padding: 0;
        overflow: visible;
    }

    .secure--docs.secure--int .secure-card--link,
    .secure--docs.secure--int .secure-card--code {
        flex: 0 0 calc((100% - 8px) / 2);
        width: calc((100% - 8px) / 2);
        max-width: none;
        height: 100px;
        min-height: 100px;
        padding: 12px;
        border-radius: 16px;
        flex-direction: column;
        align-items: flex-start;
        justify-content: space-between;
        gap: 8px;
    }

    .secure--docs.secure--int .secure-card--link .secure-card__row,
    .secure--docs.secure--int .secure-card--code .secure-card__row {
        width: 100%;
        align-items: center;
        gap: 8px;
    }

    .secure--docs.secure--int .secure-card--link .secure-card__title,
    .secure--docs.secure--int .secure-card--code .secure-card__title {
        width: auto;
        font-size: 14px;
        line-height: 20px;
    }

    .secure--docs.secure--int .btn--icon {
        width: 20px;
        height: 20px;
        padding: 0;
        background: transparent;
        border: 0;
        box-shadow: none;
        color: var(--color-icon);
    }

    .secure--docs.secure--int .secure-card--code .icon-3d--stat {
        width: 32px;
        height: 32px;
    }

    .start--int .steps {
        grid-template-columns: 1fr;
    }

    .plans--int .plans__grid,
    .plans--int .plans-card {
        width: 100%;
        height: auto;
    }

    .cta--int .cta-card__buttons {
        flex-wrap: wrap;
        width: 100%;
    }

    .cta--int .cta-card__buttons .btn {
        width: 100%;
    }
}

@media (min-width: 768px) {
/* Integrations */
.hero--plain.hero--home.hero--int {
    min-height: 600px;
    padding: 40px 0 0;
}

.hero--plain.hero--home.hero--int .hero__bullets {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 12px 16px;
}

.hero--int .hero__visual {
    overflow: visible;
    height: 600px;
}

.hero--int .hero__visual img,
.hero--int .hero__visual picture,
.hero--int .hero__visual picture img {
    width: 797px;
    height: 600px;
    margin-left: 0;
    margin-top: 0;
    max-width: none;
    object-fit: contain;
    object-position: left top;
}

.hero__note {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
    width: 100%;
}

.deploy--int {
    padding-top: 64px;
}

.deploy--int .deploy-card {
    gap: 0;
}

.deploy--int .deploy-card__top {
    gap: 20px;
}

.deploy--int .deploy-card__visual {
    height: 385px;
}

.deploy--int .deploy-card__visual img,
.deploy--int .deploy-card__visual picture,
.deploy--int .deploy-card__visual picture img {
    width: 100%;
    height: 100%;
    margin-left: 0;
    object-fit: contain;
    object-position: left center;
}

.secure--rights .secure__title {
    width: 100%;
}

.secure--rights .secure__row {
    display: flex;
    align-items: stretch;
    gap: 20px;
    width: 100%;
}

.secure--rights .roles-card--perms {
    width: 325px;
    flex-shrink: 0;
    background: linear-gradient(180deg, #c3d3ff 0%, #d4e8ff 38%, #b7ead4 100%);
    justify-content: space-between;
    overflow: hidden;
}

.secure--rights .roles-card__count {
    color: var(--color-primary);
}

.secure--rights .roles-card__count-text {
    width: 196px;
}

.secure--rights .secure__cards {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    flex: 1 1 0;
    min-width: 0;
}

.secure--rights .secure-card {
    width: 496px;
}

.hooks {
    padding: 96px 0;
}

.hooks .container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
}

.hooks__intro {
    display: flex;
    align-items: center;
    gap: 40px;
    width: 100%;
}

.hooks__visual {
    width: 670px;
    height: 454px;
    overflow: hidden;
    flex-shrink: 0;
    position: relative;
}

.hooks__visual picture {
    display: block;
    width: 100%;
    height: 100%;
}

.hooks__visual img,
.hooks__visual picture img {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 945px;
    height: 527px;
    max-width: none;
    margin-left: 35.5px;
    margin-top: 8.5px;
    transform: translate(-50%, -50%);
    object-fit: cover;
}

.hooks__copy {
    width: 609px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
}

.hooks__title {
    color: #000;
}

.hooks__lead {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-primary);
}

.faq__list--split {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
    flex: none;
}

.faq__col {
    width: 676px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.faq-item__events {
    margin: 0;
    padding: 0 0 0 24px;
    list-style: disc;
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-primary);
}

.faq-item__events li + li {
    margin-top: 12px;
}

.home-secure--int {
    background: #f0f6ff;
}

.home-secure--int .home-secure__bg {
    top: auto;
    bottom: 0;
    transform: scaleY(-1);
}

.home-secure--int .home-secure__title {
    color: #000;
}

.home-secure--int .secure-card {
    width: 440px;
    min-height: 212px;
    background: var(--color-bg-white);
}

.scenes {
    padding: 96px 0 0;
}

.scenes .container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}

.scenes__title {
    width: 670px;
    max-width: 100%;
    color: #000;
}

.scenes__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
}

.scene-card {
    width: 670px;
    max-width: 100%;
    background: var(--color-bg-gray);
    border-radius: 24px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.scene-card__head {
    display: flex;
    align-items: center;
    gap: 24px;
    width: 100%;
}

.scene-card__title {
    flex: 1 1 0;
    min-width: 0;
    color: var(--color-text-primary);
}

.icon-3d--scene {
    width: 128px;
    height: 128px;
    flex-shrink: 0;
}

.icon-3d--scene img,
.icon-3d--scene picture,
.icon-3d--scene picture img {
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: contain;
}

.scene-card .ways-steps {
    width: 100%;
}

.scene-card .ways-step__text {
    font-size: 16px;
    line-height: 24px;
}

.scene-card__num {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    padding: 12px 0;
}

.start--int {
    padding-bottom: 0;
}

.start--int .steps {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.start--int .steps-item__lead {
    font-size: 16px;
    line-height: 24px;
}

.start--int .steps-item__icon--1 img {
    inset: -14.06%;
    width: 128.12%;
    height: 128.12%;
}

.start--int .steps-item__icon--2 img {
    inset: -18.75% -12.5%;
    width: 125%;
    height: 137.5%;
}

.start--int .steps-item__icon--3 img {
    inset: -15.63%;
    width: 131.26%;
    height: 131.26%;
}

.start--int .steps-item__icon--4 img {
    inset: -16.41%;
    width: 132.82%;
    height: 132.82%;
}

.start--int .steps-item__icon--5 img {
    inset: -20.31% -20.51% -20.51% -20.31%;
    width: 140.82%;
    height: 140.82%;
}

.plans--int .plans__grid {
    width: 1014px;
    max-width: 100%;
}

.plans--int .plans-card {
    height: 720px;
}

.secure--int .secure__grid {
    align-items: flex-start;
}

.secure--int .secure-card--link,
.secure--int .secure-card--code {
    width: 325px;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 16px;
}

.secure--int .secure-card--link .secure-card__row,
.secure--int .secure-card--code .secure-card__row {
    flex: 1 1 0;
    min-width: 0;
    width: auto;
    align-items: center;
}

.secure--int .secure-card--link .secure-card__title {
    width: auto;
    font-size: 16px;
    line-height: 20px;
}

.secure-card__glyph {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    color: #b6bac2;
    display: flex;
    align-items: center;
    justify-content: center;
}

.secure-card__glyph svg,
.secure-card__glyph img {
    width: 20px;
    height: 20px;
}

.secure--int .secure-card--code .secure-card__title {
    font-size: 18px;
    line-height: 24px;
}

.secure__codes {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    width: 100%;
}

.cta--int .cta-card__buttons {
    flex-wrap: nowrap;
    width: max-content;
}
}

/* Text pages */
.doc {
    padding: 40px 0 0;
}

.doc .container {
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
}

.doc__head {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 40px;
}

.doc__title {
    color: #000;
}

.doc__updated {
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: var(--color-text-secondary);
}

.doc__body {
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-primary);
    overflow-wrap: break-word;
}

.doc__body > * + * {
    margin-top: 16px;
}

.doc__body > h2 {
    margin-top: 40px;
    font-family: var(--font-heading);
    font-size: 24px;
    line-height: 32px;
    letter-spacing: -0.04em;
    font-weight: 600;
    color: #000;
}

.doc__body > h3 {
    margin-top: 24px;
    font-family: var(--font-heading);
    font-size: 20px;
    line-height: 24px;
    letter-spacing: -0.04em;
    font-weight: 600;
    color: var(--color-text-primary);
}

.doc__body a {
    color: var(--color-primary);
}

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

.doc__body ul,
.doc__body ol {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-left: 24px;
}

.doc__body ul {
    list-style: disc;
}

.doc__body ol {
    list-style: decimal;
}

.doc__body li::marker {
    color: var(--color-primary);
}

/* Sitemap */
.map {
    padding: 40px 0 0;
}

.map .container {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.map__head {
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-width: 820px;
}

.map__title {
    color: #000;
}

.map__lead {
    font-size: 18px;
    line-height: 28px;
    color: var(--color-text-primary);
}

.map__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.map-card {
    border: 1px solid var(--color-border-light);
    border-radius: 24px;
    padding: 24px;
    background: var(--color-bg-white);
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.map-card__title {
    color: var(--color-text-primary);
}

.map-card__links {
    display: flex;
    flex-direction: column;
}

.map-card__link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--color-border-light);
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-text-primary);
}

.map-card__link:last-child,
.map-card__links li:last-child .map-card__link {
    border-bottom: 0;
    padding-bottom: 0;
}

.map-card__links li:first-child .map-card__link {
    padding-top: 0;
}

.map-card__link svg,
.map-card__link img {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    color: #b6bac2;
}

.map-card__link:hover {
    color: var(--color-primary);
}

.not-found {
    padding: 48px 0 96px;
}

.not-found .container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    max-width: 720px;
}

.not-found__code {
    font-family: var(--font-heading);
    font-size: 72px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: -0.04em;
    color: var(--color-primary);
}

.not-found__title {
    color: #000;
}

.not-found__text {
    max-width: 460px;
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-secondary);
}

.not-found__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.thanks {
    padding: 64px 0 96px;
}

.thanks .container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    max-width: 720px;
}

.thanks__title {
    color: #000;
}

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

@media (max-width: 767px) {
    .doc {
        padding: 24px 0 0;
    }

    .doc__head {
        margin-bottom: 24px;
    }

    .doc__title {
        font-size: clamp(26px, 8vw, 32px);
        line-height: 1.15;
        overflow-wrap: break-word;
    }

    .map__title {
        font-size: 32px;
        line-height: 36px;
    }

    .doc__body > h2 {
        margin-top: 32px;
        font-size: 20px;
        line-height: 24px;
    }

    .map {
        padding: 24px 0 0;
    }

    .map .container {
        gap: 24px;
    }

    .map__lead {
        font-size: 16px;
        line-height: 24px;
    }

    .map__grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .map-card {
        padding: 16px;
        border-radius: 20px;
    }

    .not-found {
        padding: 32px 0 64px;
    }

    .not-found__code {
        font-size: 56px;
    }

    .not-found__actions {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
    }

    .not-found__actions .btn {
        width: 100%;
    }

    .thanks {
        padding: 40px 0 64px;
    }

    .thanks__actions,
    .thanks__actions .btn {
        width: 100%;
    }
}

@keyframes pcdesk-enter {
    from {
        opacity: 0;
        transform: translate3d(0, 16px, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes pcdesk-enter-visual {
    from {
        opacity: 0;
        transform: translate3d(20px, 8px, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

html.js:not(.is-scrolled) .hero__title,
html.js:not(.is-scrolled) .feat-hero__title {
    animation: pcdesk-enter 0.72s cubic-bezier(0.16, 1, 0.3, 1) 0.04s both;
}

html.js:not(.is-scrolled) .hero__lead,
html.js:not(.is-scrolled) .feat-hero__lead {
    animation: pcdesk-enter 0.72s cubic-bezier(0.16, 1, 0.3, 1) 0.12s both;
}

html.js:not(.is-scrolled) .hero__buttons,
html.js:not(.is-scrolled) .feat-hero__buttons {
    animation: pcdesk-enter 0.72s cubic-bezier(0.16, 1, 0.3, 1) 0.2s both;
}

html.js:not(.is-scrolled) .hero__bullets,
html.js:not(.is-scrolled) .hero__virus,
html.js:not(.is-scrolled) .hero .secure__status {
    animation: pcdesk-enter 0.7s cubic-bezier(0.16, 1, 0.3, 1) 0.26s both;
}

html.js:not(.is-scrolled) .hero__visual {
    animation: pcdesk-enter-visual 0.9s cubic-bezier(0.16, 1, 0.3, 1) 0.14s both;
}

html.js:not(.is-scrolled) .feat-hero .icon-3d--feat-hero {
    animation: pcdesk-enter 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.18s both;
}

html.js:not(.is-scrolled) .hero__stats,
html.js:not(.is-scrolled) .hero__metrics {
    animation: pcdesk-enter 0.72s cubic-bezier(0.16, 1, 0.3, 1) 0.32s both;
}

html.js h2.heading {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1), transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
}

html.js h2.heading.is-inview,
html.js .lead-modal h2.heading {
    opacity: 1;
    transform: none;
}

@media (prefers-reduced-motion: reduce) {
    html.js:not(.is-scrolled) .hero__title,
    html.js:not(.is-scrolled) .feat-hero__title,
    html.js:not(.is-scrolled) .hero__lead,
    html.js:not(.is-scrolled) .feat-hero__lead,
    html.js:not(.is-scrolled) .hero__buttons,
    html.js:not(.is-scrolled) .feat-hero__buttons,
    html.js:not(.is-scrolled) .hero__bullets,
    html.js:not(.is-scrolled) .hero__virus,
    html.js:not(.is-scrolled) .hero .secure__status,
    html.js:not(.is-scrolled) .hero__visual,
    html.js:not(.is-scrolled) .feat-hero .icon-3d--feat-hero,
    html.js:not(.is-scrolled) .hero__stats,
    html.js:not(.is-scrolled) .hero__metrics,
    html.js h2.heading {
        animation: none;
        opacity: 1;
        transform: none;
        transition: none;
    }
}

div.docs {
    background: #f7f8fb;
    padding: 40px 0 72px;
}

.docs__wrap {
    width: min(1152px, calc(100% - 32px));
    margin: 0 auto;
}

.docs__title {
    margin: 0;
    font-size: 30px;
    line-height: 36px;
    font-weight: 600;
    letter-spacing: -0.02em;
    color: #101828;
}

.docs__title--article {
    margin-top: 16px;
    font-size: 28px;
    line-height: 34px;
}

.docs__lead {
    max-width: 640px;
    margin: 12px 0 0;
    font-size: 15px;
    line-height: 1.6;
    color: #667085;
}

.docs__lead--wide {
    max-width: 768px;
    color: #475467;
}

.docs__updated {
    margin: 12px 0 0;
    font-size: 13px;
    color: #98a2b3;
}

.docs__rule {
    margin: 28px 0;
    border: 0;
    border-top: 1px solid #e4e7ec;
}

.docs__layout {
    display: grid;
    gap: 32px;
}

.docs-nav__home {
    display: block;
    padding-bottom: 12px;
    font-size: 14px;
    font-weight: 600;
    color: #101828;
}

.docs-nav__group + .docs-nav__group {
    margin-top: 20px;
}

.docs-nav__label {
    margin: 0 0 6px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #98a2b3;
}

.docs-nav ul,
.docs-toc ul,
.docs-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.docs-nav__link,
.docs-toc a {
    display: block;
    border-radius: 8px;
    padding: 6px 10px;
    font-size: 14px;
    line-height: 20px;
    color: #475467;
}

.docs-nav__link.is-active {
    background: #edf3ff;
    font-weight: 500;
    color: #4777ff;
}

.docs-nav__mobile {
    border: 1px solid #e4e7ec;
    border-radius: 12px;
    background: #fff;
    padding: 12px 14px;
}

.docs-nav__mobile summary {
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    color: #101828;
}

.docs-nav__desktop {
    display: none;
}

.docs-crumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #98a2b3;
}

.docs-crumbs a:hover,
.docs-nav__link:hover,
.docs-toc a:hover,
.docs-nav__home:hover {
    color: #4777ff;
}

.docs-search {
    position: relative;
    margin-top: 24px;
}

.docs-search__icon {
    position: absolute;
    top: 14px;
    left: 16px;
    color: #98a2b3;
    display: flex;
}

.docs-search__input {
    width: 100%;
    height: 48px;
    border: 1px solid #e4e7ec;
    border-radius: 12px;
    background: #fff;
    padding: 0 16px 0 48px;
    font: inherit;
    font-size: 15px;
    color: #101828;
}

.docs-search__input:focus {
    outline: none;
    border-color: #4777ff;
    box-shadow: 0 0 0 4px rgba(71, 119, 255, 0.12);
}

.docs-search__results {
    position: absolute;
    z-index: 5;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    overflow: hidden;
    border: 1px solid #e4e7ec;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 32px rgba(16, 24, 40, 0.08);
}

.docs-search__results a,
.docs-search__empty {
    display: block;
    padding: 12px 16px;
    color: #101828;
}

.docs-search__results a + a {
    border-top: 1px solid #f2f4f7;
}

.docs-search__results small,
.docs-search__empty {
    display: block;
    margin-top: 2px;
    font-size: 13px;
    color: #98a2b3;
}

.docs-search__results a:hover {
    background: #f9fafb;
}

.docs-block {
    margin-top: 40px;
}

.docs-block__title,
.docs-help__title {
    margin: 0;
    font-size: 18px;
    line-height: 24px;
    font-weight: 600;
    color: #101828;
}

.docs-quick,
.docs-sections {
    display: grid;
    gap: 16px;
    margin-top: 16px;
}

.docs-quick__card,
.docs-section,
.docs-popular,
.docs-help,
.docs-list {
    border: 1px solid #e4e7ec;
    border-radius: 16px;
    background: #fff;
}

.docs-quick__card,
.docs-section {
    display: flex;
    flex-direction: column;
    padding: 16px;
}

.docs-section {
    padding: 20px;
}

.docs-quick__card:hover,
.docs-section:hover,
.docs-popular__item:hover,
.docs-list a:hover,
.docs-pager a:hover {
    border-color: #4777ff;
}

.docs-quick__title,
.docs-section__title,
.docs-list__title,
.docs-popular__title {
    margin: 0;
    font-size: 14px;
    line-height: 20px;
    font-weight: 600;
    color: #101828;
}

.docs-section__title {
    margin-top: 16px;
    font-size: 15px;
}

.docs-quick__text,
.docs-section__text,
.docs-list__lead {
    margin: 6px 0 0;
    font-size: 13px;
    line-height: 1.55;
    color: #667085;
}

.docs-section__text {
    flex: 1;
}

.docs-section__count,
.docs-popular__section {
    margin: 16px 0 0;
    font-size: 13px;
    color: #98a2b3;
}

.docs-section__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: #edf3ff;
    color: #4777ff;
}

.docs-section__icon svg {
    width: 20px;
    height: 20px;
}

.docs-popular {
    margin-top: 16px;
    overflow: hidden;
}

.docs-popular__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 20px;
}

.docs-popular__item + .docs-popular__item {
    border-top: 1px solid #f2f4f7;
}

.docs-popular__title,
.docs-popular__section {
    display: block;
}

.docs-popular__section {
    margin-top: 2px;
}

.docs-popular__item svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    color: #98a2b3;
}

.docs-help {
    margin-top: 40px;
    padding: 24px;
}

.docs-help p {
    margin: 8px 0 0;
    font-size: 14px;
    line-height: 1.55;
    color: #475467;
}

.docs__support {
    display: inline-flex;
    align-items: center;
    height: 40px;
    margin-top: 16px;
    padding: 0 16px;
    border-radius: 8px;
    background: #4777ff;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
}

.docs__support:hover {
    background: #3767ef;
    color: #fff;
}

.docs-list {
    margin-top: 28px;
    overflow: hidden;
}

.docs-list a {
    display: block;
    padding: 16px 20px;
}

.docs-list li + li {
    border-top: 1px solid #f2f4f7;
}

.docs-content {
    font-size: 15px;
    line-height: 1.7;
    color: #475467;
}

.docs-content h2,
.docs-content h3 {
    scroll-margin-top: 96px;
    color: #101828;
    font-weight: 600;
}

.docs-content h2 {
    margin: 40px 0 0;
    font-size: 20px;
    line-height: 28px;
}

.docs-content h2:first-child {
    margin-top: 0;
}

.docs-content h3 {
    margin: 28px 0 0;
    font-size: 16px;
    line-height: 24px;
}

.docs-content p,
.docs-content ul,
.docs-content ol,
.docs-content pre,
.docs-content figure {
    margin: 16px 0 0;
}

.docs-content ul,
.docs-content ol {
    padding-left: 20px;
}

.docs-content ul {
    list-style: disc;
}

.docs-content ol {
    list-style: decimal;
}

.docs-content li + li {
    margin-top: 8px;
}

.docs-content a {
    font-weight: 500;
    color: #4777ff;
}

.docs-content a:hover {
    text-decoration: underline;
}

.docs-content strong {
    font-weight: 600;
    color: #101828;
}

.docs-content code {
    border-radius: 4px;
    background: #f2f4f7;
    padding: 1px 6px;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.88em;
    color: #344054;
}

.docs-content pre {
    overflow-x: auto;
    border: 1px solid #e4e7ec;
    border-radius: 12px;
    background: #f9fafb;
    padding: 16px;
}

.docs-content pre code {
    padding: 0;
    background: none;
    font-size: 13px;
    line-height: 1.6;
}

.docs-content img {
    display: block;
    width: 100%;
    height: auto;
    border: 1px solid #e4e7ec;
    border-radius: 12px;
}

.docs-content figcaption {
    margin-top: 8px;
    font-size: 13px;
    color: #98a2b3;
}

.docs-content table {
    width: 100%;
    margin-top: 20px;
    border-collapse: collapse;
    font-size: 14px;
}

.docs-content th,
.docs-content td {
    border-bottom: 1px solid #f2f4f7;
    padding: 10px 12px;
    text-align: left;
    vertical-align: top;
}

.docs-content th {
    border-bottom-color: #e4e7ec;
    background: #f9fafb;
    font-weight: 500;
    color: #101828;
}

.docs-pager {
    display: grid;
    gap: 12px;
    margin-top: 40px;
    padding-top: 24px;
    border-top: 1px solid #e4e7ec;
}

.docs-pager a {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #e4e7ec;
    border-radius: 12px;
    background: #fff;
    padding: 12px 16px;
    font-size: 14px;
}

.docs-pager__next {
    justify-content: flex-end;
    text-align: right;
}

.docs-pager__label {
    display: block;
    font-size: 12px;
    color: #98a2b3;
}

.docs-pager__name {
    display: block;
    font-weight: 500;
    color: #101828;
}

.docs-pager svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    color: #98a2b3;
}

.docs-toc {
    display: none;
}

@media (min-width: 700px) {
    .docs-quick {
        grid-template-columns: 1fr 1fr;
    }

    .docs-pager {
        grid-template-columns: 1fr 1fr;
    }
}

@media (min-width: 1024px) {
    .docs-nav__mobile {
        display: none;
    }

    .docs-nav__desktop {
        display: block;
        position: sticky;
        top: 24px;
        max-height: calc(100vh - 48px);
        overflow: auto;
        padding-right: 8px;
    }

    .docs__layout {
        grid-template-columns: 220px minmax(0, 1fr);
        gap: 40px;
        align-items: start;
    }

    .docs-sections {
        grid-template-columns: 1fr 1fr 1fr;
    }

    .docs-quick {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (min-width: 1280px) {
    .docs__layout--toc {
        grid-template-columns: 220px minmax(0, 1fr) 200px;
    }

    .docs-toc {
        display: block;
        position: sticky;
        top: 24px;
    }

    .docs-toc ul {
        border-left: 1px solid #e4e7ec;
    }

    .docs-toc a {
        border-radius: 0;
        padding: 0 0 0 16px;
    }

    .docs-toc li + li {
        margin-top: 6px;
    }
}

.regdocs {
    padding: 72px 0 96px;
}

.regdocs .container {
    max-width: 880px;
}

.regdocs__kicker {
    margin: 0;
    font-size: 18px;
    line-height: 24px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-primary);
}

.regdocs__title {
    margin: 12px 0 0;
    font-size: 56px;
    line-height: 60px;
    font-weight: 600;
    letter-spacing: -0.03em;
    color: var(--color-text-primary);
}

.regdocs__lead {
    max-width: 720px;
    margin: 20px 0 0;
    font-size: 20px;
    line-height: 30px;
    color: var(--color-text-secondary);
}

.regdocs__files {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 40px;
}

.regdocs__file {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 20px 24px;
    background: var(--color-bg-gray);
    border-radius: 16px;
    text-decoration: none;
    color: var(--color-text-primary);
}

.regdocs__file-title {
    font-size: 18px;
    line-height: 24px;
    font-weight: 600;
}

.regdocs__file-text {
    margin-top: 4px;
    font-size: 14px;
    line-height: 20px;
    color: var(--color-text-secondary);
}

.regdocs__file-action {
    flex-shrink: 0;
    font-size: 14px;
    line-height: 20px;
    font-weight: 600;
    color: var(--color-primary);
}

@media (max-width: 767px) {
    .regdocs {
        padding: 40px 0 64px;
    }

    .regdocs__title {
        font-size: 36px;
        line-height: 40px;
    }

    .regdocs__lead {
        font-size: 16px;
        line-height: 24px;
    }

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


/* --- Блог PCDesk: таблицы внутри статей не должны вылезать на мобильных --- */
.text-block table th:nth-child(2),
.text-block table td:nth-child(2) {
    min-width: 92px;
}
.text-block table,
.doc__body table {
    width: 100% !important;
    max-width: 100%;
    table-layout: auto !important;
    border-collapse: collapse;
    font-size: 15px;
}
.text-block th,
.text-block td,
.doc__body th,
.doc__body td {
    padding: 6px 8px !important;
    overflow-wrap: anywhere;
    word-break: break-word;
    vertical-align: top;
    border: 1px solid #e3e7ee;
}
.text-block table thead th,
.doc__body table thead th {
    background: #f4f6f9;
    text-align: left;
}

