:root {
    --page: #edf2f6;
    --white: #ffffff;
    --paper: #f8fafc;
  
    --ink: #17232f;
    --ink-soft: #627080;
  
    --dark: #0c1723;
    --dark-soft: #132536;
    --dark-panel: #1a3043;
  
    --blue: #438ce7;
    --blue-dark: #2368bb;
    --blue-soft: #e2efff;
  
    --cyan: #52c7d9;
    --green: #3fc38a;
    --orange: #e4a64d;
    --red: #dc6767;
  
    --line: #d5e0e8;
    --line-dark: rgba(155, 190, 213, 0.22);
  
    --text: #f4f8fb;
    --muted: #adbdc9;
  
    --container: 1180px;
  
    --radius-large: 30px;
    --radius-medium: 18px;
  
    --shadow:
      0 28px 80px rgba(19, 47, 72, 0.14);
  }
  
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }
  
  html {
    scroll-behavior: smooth;
  }
  
  body {
    margin: 0;
    overflow-x: hidden;
  
    color: var(--ink);
    background: var(--page);
  
    font-family:
      Inter,
      "PingFang SC",
      "Microsoft YaHei",
      system-ui,
      -apple-system,
      sans-serif;
  
    line-height: 1.7;
    text-rendering: optimizeLegibility;
  }
  
  img {
    display: block;
    max-width: 100%;
    height: auto;
  }
  
  a {
    color: inherit;
    text-decoration: none;
  }
  
  button,
  a {
    -webkit-tap-highlight-color: transparent;
  }
  
  button {
    font: inherit;
  }
  
  :focus-visible {
    outline: 3px solid rgba(67, 140, 231, 0.46);
    outline-offset: 4px;
  }
  
  .container {
    width: min(
      calc(100% - 40px),
      var(--container)
    );
  
    margin-inline: auto;
  }
  
  .skip-link {
    position: fixed;
    top: 12px;
    left: 12px;
    z-index: 999;
  
    padding: 10px 14px;
  
    color: var(--ink);
    background: var(--white);
  
    border-radius: 10px;
  
    transform: translateY(-160%);
  }
  
  .skip-link:focus {
    transform: translateY(0);
  }
  
  /* Header */
  
  .site-header {
    position: sticky;
    top: 0;
    z-index: 60;
  
    color: var(--text);
  
    background: rgba(12, 23, 35, 0.91);
    border-bottom: 1px solid transparent;
  
    backdrop-filter: blur(20px);
  
    transition:
      background 180ms ease,
      border-color 180ms ease;
  }
  
  .site-header.is-scrolled {
    background: rgba(12, 23, 35, 0.98);
    border-color: var(--line-dark);
  }
  
  .header-inner {
    display: grid;
    grid-template-columns:
      auto
      1fr
      auto;
  
    align-items: center;
  
    gap: 30px;
  
    min-height: 72px;
  }
  
  .brand img {
    width: 132px;
    object-fit: contain;
  }
  
  .main-nav {
    justify-self: center;
  
    display: flex;
    gap: 28px;
  }
  
  .main-nav a {
    color: #c6d3dd;
    font-size: 14px;
  }
  
  .main-nav a:hover {
    color: var(--white);
  }
  
  .header-button,
  .primary-button {
    display: inline-flex;
  
    min-height: 46px;
  
    align-items: center;
    justify-content: center;
  
    padding: 0 22px;
  
    color: var(--white);
  
    background:
      linear-gradient(
        135deg,
        #5ca2f2,
        var(--blue)
      );
  
    border: 1px solid rgba(255, 255, 255, 0.23);
    border-radius: 12px;
  
    font-weight: 850;
  
    box-shadow:
      0 14px 34px rgba(35, 104, 187, 0.25);
  
    transition:
      transform 180ms ease,
      box-shadow 180ms ease;
  }
  
  .header-button {
    min-height: 40px;
    padding-inline: 16px;
    font-size: 13px;
  }
  
  .header-button:hover,
  .primary-button:hover {
    transform: translateY(-2px);
  
    box-shadow:
      0 19px 42px rgba(35, 104, 187, 0.33);
  }
  
  .secondary-button {
    display: inline-flex;
  
    min-height: 46px;
  
    align-items: center;
    justify-content: center;
  
    padding: 0 21px;
  
    color: var(--text);
  
    border: 1px solid rgba(201, 220, 233, 0.28);
    border-radius: 12px;
  
    font-weight: 800;
  }
  
  .secondary-button:hover {
    border-color: rgba(82, 199, 217, 0.8);
  }
  
  .text-link {
    color: var(--blue-dark);
    font-weight: 850;
  }
  
  .text-link:hover {
    text-decoration: underline;
    text-underline-offset: 5px;
  }
  
  /* Typography */
  
  h1,
  h2,
  h3,
  p {
    margin-top: 0;
  }
  
  h1 {
    max-width: 800px;
  
    margin-bottom: 23px;
  
    font-size: clamp(
      42px,
      5.1vw,
      71px
    );
  
    line-height: 1.07;
    letter-spacing: -0.05em;
  }
  
  h2 {
    margin-bottom: 14px;
  
    font-size: clamp(
      30px,
      3.35vw,
      47px
    );
  
    line-height: 1.17;
    letter-spacing: -0.038em;
  }
  
  h3 {
    line-height: 1.35;
  }
  
  .eyebrow {
    margin: 0 0 10px;
  
    color: var(--blue-dark);
  
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.13em;
    text-transform: uppercase;
  }
  
  /* Hero */
  
  .hero {
    position: relative;
    overflow: hidden;
  
    padding: 78px 0 75px;
  
    color: var(--text);
  
    background:
      radial-gradient(
        circle at 78% 17%,
        rgba(67, 140, 231, 0.23),
        transparent 31%
      ),
      radial-gradient(
        circle at 17% 88%,
        rgba(82, 199, 217, 0.11),
        transparent 30%
      ),
      linear-gradient(
        145deg,
        #09131e,
        #13283b
      );
  }
  
  .hero::before {
    content: "";
  
    position: absolute;
    inset: 0;
  
    opacity: 0.12;
  
    background-image:
      linear-gradient(
        rgba(117, 163, 202, 0.25) 1px,
        transparent 1px
      ),
      linear-gradient(
        90deg,
        rgba(117, 163, 202, 0.25) 1px,
        transparent 1px
      );
  
    background-size: 46px 46px;
  }
  
  .hero-layout {
    position: relative;
    z-index: 2;
  
    display: grid;
    grid-template-columns:
      minmax(0, 0.92fr)
      minmax(430px, 1.08fr);
  
    align-items: center;
  
    gap: 62px;
  }
  
  .hero-label {
    display: inline-flex;
  
    margin-bottom: 18px;
    padding: 8px 13px;
  
    color: #bbd8f7;
    background: rgba(67, 140, 231, 0.1);
  
    border: 1px solid rgba(93, 159, 236, 0.27);
    border-radius: 999px;
  
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.08em;
  }
  
  .hero-description {
    max-width: 700px;
  
    margin-bottom: 29px;
  
    color: #c3d2de;
    font-size: 18px;
  }
  
  .hero-actions {
    display: flex;
    flex-wrap: wrap;
  
    gap: 14px;
  }
  
  .hero-features {
    display: grid;
    grid-template-columns:
      repeat(3, 1fr);
  
    gap: 20px;
  
    margin-top: 36px;
    padding-top: 23px;
  
    border-top: 1px solid var(--line-dark);
  }
  
  .hero-features span,
  .hero-features strong {
    display: block;
  }
  
  .hero-features span {
    color: #849dac;
    font-size: 10px;
    font-weight: 800;
  }
  
  .hero-features strong {
    margin-top: 3px;
    font-size: 13px;
  }
  
  .hero-media {
    position: relative;
  }
  
  .hero-image-frame {
    overflow: hidden;
  
    padding: 15px;
  
    background:
      rgba(255, 255, 255, 0.055);
  
    border: 1px solid var(--line-dark);
    border-radius: var(--radius-large);
  
    box-shadow:
      0 38px 90px rgba(0, 0, 0, 0.35);
  }
  
  .hero-image-frame img {
    width: 100%;
    min-height: 440px;
    max-height: 550px;
  
    object-fit: cover;
    object-position: center;
  
    border-radius: 20px;
  }
  
  .hero-status {
    position: absolute;
    z-index: 3;
  
    display: flex;
    align-items: center;
  
    gap: 12px;
  
    min-width: 210px;
  
    padding: 14px 17px;
  
    color: var(--ink);
    background: rgba(255, 255, 255, 0.94);
  
    border: 1px solid var(--white);
    border-radius: 14px;
  
    box-shadow:
      0 18px 42px rgba(0, 0, 0, 0.22);
  
    backdrop-filter: blur(14px);
  }
  
  .hero-status small,
  .hero-status strong {
    display: block;
  }
  
  .hero-status small {
    color: var(--blue-dark);
  }
  
  .status-top {
    top: 36px;
    left: -38px;
  }
  
  .status-bottom {
    right: -28px;
    bottom: 38px;
  }
  
  .status-dot {
    width: 12px;
    height: 12px;
  
    background: var(--orange);
    border-radius: 50%;
  
    box-shadow:
      0 0 0 7px rgba(228, 166, 77, 0.14);
  }
  
  .windows-icon {
    position: relative;
  
    width: 31px;
    height: 31px;
  }
  
  .windows-icon::before {
    content: "";
  
    position: absolute;
    inset: 0;
  
    background:
      linear-gradient(
        90deg,
        var(--blue) 47%,
        transparent 47%,
        transparent 53%,
        var(--blue) 53%
      ),
      linear-gradient(
        var(--blue) 47%,
        transparent 47%,
        transparent 53%,
        var(--blue) 53%
      );
  }
  
  /* Quick strip */
  
  .quick-strip {
    background: var(--white);
    border-bottom: 1px solid var(--line);
  }
  
  .quick-grid {
    display: grid;
    grid-template-columns:
      repeat(4, 1fr);
  }
  
  .quick-grid > div {
    display: flex;
    min-height: 82px;
  
    align-items: center;
  
    gap: 13px;
  
    padding: 0 22px;
  
    border-right: 1px solid var(--line);
  }
  
  .quick-grid > div:last-child {
    border-right: 0;
  }
  
  .quick-grid > div > span {
    color: var(--blue-dark);
    font-size: 12px;
    font-weight: 950;
  }
  
  .quick-grid strong,
  .quick-grid small {
    display: block;
  }
  
  .quick-grid strong {
    font-size: 13px;
  }
  
  .quick-grid small {
    color: var(--ink-soft);
  }
  
  /* General */
  
  .section {
    padding: 96px 0;
  }
  
  .section-heading {
    max-width: 800px;
    margin-bottom: 47px;
  }
  
  .section-heading > p:last-child {
    color: var(--ink-soft);
  }
  
  .section-heading.centered {
    margin-inline: auto;
    text-align: center;
  }
  
  .section-heading-light > p:last-child {
    color: var(--muted);
  }
  
  .windows-client-section,
  .requirements-section,
  .security-section,
  .functions-section,
  .related-section {
    background: var(--page);
  }
  
  .interface-section,
  .file-section {
    background: var(--white);
  }
  
  .install-section,
  .troubleshooting-section {
    color: var(--text);
    background: var(--dark);
  }
  
  .faq-section {
    background: #e5edf3;
  }
  
  /* Image-content layouts */
  
  .media-content-layout,
  .security-layout,
  .functions-layout,
  .file-layout,
  .requirements-layout {
    display: grid;
    grid-template-columns:
      minmax(0, 1fr)
      minmax(390px, 1fr);
  
    align-items: center;
  
    gap: 68px;
  }
  
  .media-content-copy > p:not(.eyebrow),
  .security-copy > p:not(.eyebrow),
  .functions-copy > p:not(.eyebrow),
  .file-copy > p:not(.eyebrow),
  .requirements-copy > p:not(.eyebrow) {
    color: var(--ink-soft);
  }
  
  .media-content-image,
  .security-image,
  .functions-image {
    overflow: hidden;
  
    padding: 17px;
  
    background: var(--white);
  
    border: 1px solid var(--line);
    border-radius: var(--radius-large);
  
    box-shadow: var(--shadow);
  }
  
  .media-content-image img,
  .security-image img,
  .functions-image img {
    width: 100%;
    min-height: 430px;
    max-height: 560px;
  
    object-fit: cover;
    object-position: center;
  
    border-radius: 20px;
  }
  
  .feature-lines {
    margin: 28px 0 30px;
    border-top: 1px solid var(--line);
  }
  
  .feature-lines > div,
  .security-checks > div {
    display: grid;
    grid-template-columns:
      42px
      1fr;
  
    gap: 17px;
  
    padding: 17px 0;
  
    border-bottom: 1px solid var(--line);
  }
  
  .feature-lines > div > span,
  .security-checks > div > span {
    display: grid;
  
    width: 35px;
    height: 35px;
  
    place-items: center;
  
    color: var(--blue-dark);
    background: var(--blue-soft);
  
    border-radius: 10px;
  
    font-size: 10px;
    font-weight: 950;
  }
  
  .feature-lines strong,
  .security-checks strong {
    display: block;
  }
  
  .feature-lines p,
  .security-checks p {
    margin: 3px 0 0;
    color: var(--ink-soft);
  }
  
  /* Advantages */
  
  .desktop-advantages {
    padding: 0 0 94px;
    background: var(--page);
  }
  
  .advantages-grid {
    display: grid;
    grid-template-columns:
      repeat(4, 1fr);
  
    gap: 16px;
  }
  
  .advantages-grid article {
    padding: 27px 24px;
  
    background: var(--white);
    border: 1px solid var(--line);
    border-top: 4px solid var(--blue);
  }
  
  .advantage-icon {
    position: relative;
  
    display: block;
  
    width: 48px;
    height: 48px;
  
    margin-bottom: 21px;
  
    background: var(--blue-soft);
    border-radius: 13px;
  }
  
  .monitor-icon::before {
    content: "";
  
    position: absolute;
    top: 11px;
    left: 9px;
  
    width: 30px;
    height: 21px;
  
    border: 3px solid var(--blue-dark);
    border-radius: 4px;
  }
  
  .monitor-icon::after {
    content: "";
  
    position: absolute;
    bottom: 8px;
    left: 19px;
  
    width: 12px;
    height: 3px;
  
    background: var(--blue-dark);
  
    box-shadow:
      0 -5px var(--blue-dark);
  }
  
  .cursor-icon::before {
    content: "";
  
    position: absolute;
    top: 9px;
    left: 13px;
  
    width: 0;
    height: 0;
  
    border-top: 28px solid var(--blue-dark);
    border-right: 18px solid transparent;
  
    transform: rotate(-17deg);
  }
  
  .network-icon::before {
    content: "";
  
    position: absolute;
    top: 10px;
    left: 9px;
  
    width: 30px;
    height: 25px;
  
    border: 3px solid var(--blue-dark);
    border-color: var(--blue-dark) transparent transparent;
    border-radius: 50%;
  }
  
  .network-icon::after {
    content: "";
  
    position: absolute;
    bottom: 9px;
    left: 21px;
  
    width: 7px;
    height: 7px;
  
    background: var(--blue-dark);
    border-radius: 50%;
  }
  
  .window-icon::before {
    content: "";
  
    position: absolute;
    top: 10px;
    left: 10px;
  
    width: 28px;
    height: 27px;
  
    background:
      linear-gradient(
        90deg,
        var(--blue-dark) 47%,
        transparent 47%,
        transparent 53%,
        var(--blue-dark) 53%
      ),
      linear-gradient(
        var(--blue-dark) 47%,
        transparent 47%,
        transparent 53%,
        var(--blue-dark) 53%
      );
  }
  
  .advantages-grid h3 {
    margin-bottom: 8px;
  }
  
  .advantages-grid p {
    margin: 0;
    color: var(--ink-soft);
  }
  
  /* Timeline */
  
  .install-timeline {
    position: relative;
  }
  
  .install-timeline::before {
    content: "";
  
    position: absolute;
    top: 28px;
    bottom: 28px;
    left: 29px;
  
    width: 1px;
  
    background:
      linear-gradient(
        var(--blue),
        rgba(67, 140, 231, 0.08)
      );
  }
  
  .install-timeline article {
    position: relative;
  
    display: grid;
    grid-template-columns:
      58px
      minmax(0, 1fr)
      auto;
  
    gap: 23px;
  
    min-height: 128px;
  }
  
  .timeline-number {
    position: relative;
    z-index: 2;
  
    display: grid;
  
    width: 58px;
    height: 58px;
  
    place-items: center;
  
    color: var(--white);
    background: var(--blue);
  
    border-radius: 16px;
  
    font-size: 12px;
    font-weight: 950;
  
    box-shadow:
      0 0 0 8px rgba(67, 140, 231, 0.08);
  }
  
  .timeline-body {
    padding-top: 3px;
    padding-bottom: 35px;
  }
  
  .timeline-body small {
    color: #81b5ef;
    font-size: 10px;
    font-weight: 900;
  }
  
  .timeline-body h3 {
    margin: 3px 0 7px;
  }
  
  .timeline-body p {
    max-width: 720px;
  
    margin: 0;
    color: var(--muted);
  }
  
  .timeline-tag {
    align-self: start;
  
    margin-top: 10px;
    padding: 7px 11px;
  
    color: #9bc6f0;
    background: rgba(67, 140, 231, 0.09);
  
    border: 1px solid rgba(105, 164, 227, 0.2);
    border-radius: 999px;
  
    font-size: 10px;
    font-weight: 850;
  }
  
  /* Interface */
  
  .interface-showcase {
    overflow: hidden;
  
    border: 1px solid var(--line);
    border-radius: var(--radius-large);
  
    box-shadow: var(--shadow);
  }
  
  .browser-bar {
    display: grid;
    grid-template-columns:
      1fr
      auto
      1fr;
  
    align-items: center;
  
    min-height: 58px;
  
    padding: 0 21px;
  
    color: #d4e1ea;
    background: var(--dark);
  }
  
  .browser-bar > div {
    display: flex;
    gap: 7px;
  }
  
  .browser-bar > div span {
    width: 9px;
    height: 9px;
  
    background: #7692a7;
    border-radius: 50%;
  }
  
  .browser-bar strong {
    font-size: 12px;
  }
  
  .browser-bar small {
    justify-self: end;
    color: #7d98aa;
  }
  
  .interface-image {
    padding: 22px;
    background: #dfe9ef;
  }
  
  .interface-image img {
    width: 100%;
    max-height: 680px;
  
    object-fit: contain;
  
    border-radius: 18px;
  }
  
  .interface-points {
    display: grid;
    grid-template-columns:
      repeat(4, 1fr);
  
    margin-top: 24px;
  }
  
  .interface-points > div {
    padding: 23px;
  
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
  }
  
  .interface-points > div:last-child {
    border-right: 0;
  }
  
  .interface-points span {
    color: var(--blue-dark);
    font-size: 10px;
    font-weight: 950;
  }
  
  .interface-points strong {
    display: block;
    margin-top: 5px;
  }
  
  .interface-points p {
    margin: 5px 0 0;
    color: var(--ink-soft);
  }
  
  /* Requirements */
  
  .requirements-layout {
    grid-template-columns:
      minmax(0, 0.7fr)
      minmax(480px, 1.3fr);
  }
  
  .requirement-notice {
    margin-top: 28px;
    padding: 20px 22px;
  
    background: #fff4df;
    border-left: 4px solid var(--orange);
  }
  
  .requirement-notice strong {
    color: #946421;
  }
  
  .requirement-notice p {
    margin: 5px 0 0;
    color: #705d40;
  }
  
  .requirements-table {
    overflow: hidden;
  
    border: 1px solid var(--line);
    border-radius: 20px;
  }
  
  .requirements-head,
  .requirements-table > div {
    display: grid;
    grid-template-columns:
      0.75fr
      1fr
      1fr;
  
    align-items: center;
  }
  
  .requirements-head {
    min-height: 58px;
  
    color: var(--white);
    background: var(--dark);
  }
  
  .requirements-head span {
    padding: 0 18px;
  
    color: #a9becc;
    font-size: 10px;
    font-weight: 850;
  }
  
  .requirements-table > div:not(.requirements-head) {
    min-height: 70px;
  
    background: var(--white);
    border-bottom: 1px solid var(--line);
  }
  
  .requirements-table > div:last-child {
    border-bottom: 0;
  }
  
  .requirements-table strong,
  .requirements-table > div:not(.requirements-head) span {
    padding: 15px 18px;
  }
  
  .requirements-table strong {
    font-size: 12px;
  }
  
  .requirements-table > div:not(.requirements-head) span {
    min-height: 70px;
  
    color: var(--ink-soft);
  
    border-left: 1px solid var(--line);
  
    font-size: 12px;
  }
  
  /* File manager */
  
  .file-layout {
    grid-template-columns:
      minmax(470px, 1.15fr)
      minmax(0, 0.85fr);
  }
  
  .file-window {
    overflow: hidden;
  
    border: 1px solid var(--line);
    border-radius: 22px;
  
    box-shadow: var(--shadow);
  }
  
  .file-window-top {
    display: flex;
    min-height: 54px;
  
    align-items: center;
    justify-content: space-between;
  
    padding: 0 20px;
  
    color: #c5d5df;
    background: var(--dark);
  }
  
  .file-window-top > div {
    display: flex;
    gap: 7px;
  }
  
  .file-window-top span {
    width: 9px;
    height: 9px;
  
    background: #7994a7;
    border-radius: 50%;
  }
  
  .file-window-top strong {
    font-size: 12px;
  }
  
  .file-address {
    padding: 11px 17px;
  
    color: var(--ink-soft);
    background: #f2f6f8;
  
    border-bottom: 1px solid var(--line);
  
    font-size: 11px;
  }
  
  .file-content {
    display: grid;
    grid-template-columns:
      125px
      1fr;
  
    min-height: 360px;
  }
  
  .file-content aside {
    padding: 14px 10px;
  
    background: #eef3f6;
    border-right: 1px solid var(--line);
  }
  
  .file-content aside a {
    display: block;
  
    padding: 9px 10px;
  
    color: var(--ink-soft);
    border-radius: 8px;
  
    font-size: 11px;
  }
  
  .file-content aside a.active {
    color: var(--blue-dark);
    background: var(--blue-soft);
  }
  
  .file-content main {
    padding: 12px 18px;
    background: var(--white);
  }
  
  .file-item {
    display: grid;
    grid-template-columns:
      auto
      1fr
      auto;
  
    align-items: center;
  
    gap: 13px;
  
    padding: 15px;
  
    border-bottom: 1px solid var(--line);
  }
  
  .file-item.selected {
    background: var(--blue-soft);
    border-radius: 10px;
  }
  
  .folder-symbol {
    position: relative;
  
    width: 38px;
    height: 28px;
  
    background: #e8bd5b;
    border-radius: 5px;
  }
  
  .folder-symbol::before {
    content: "";
  
    position: absolute;
    top: -5px;
    left: 4px;
  
    width: 16px;
    height: 7px;
  
    background: #daa848;
    border-radius: 4px 4px 0 0;
  }
  
  .exe-symbol {
    display: grid;
  
    width: 40px;
    height: 40px;
  
    place-items: center;
  
    color: var(--blue-dark);
    background: var(--blue-soft);
  
    border-radius: 10px;
  
    font-size: 9px;
    font-weight: 950;
  }
  
  .file-item strong,
  .file-item small {
    display: block;
  }
  
  .file-item small {
    color: var(--ink-soft);
  }
  
  .file-item b {
    color: #85919b;
    font-size: 10px;
  }
  
  .numbered-list {
    margin: 28px 0 0;
    padding: 0;
  
    counter-reset: steps;
    list-style: none;
  
    border-top: 1px solid var(--line);
  }
  
  .numbered-list li {
    position: relative;
  
    padding: 14px 0 14px 38px;
  
    counter-increment: steps;
  
    border-bottom: 1px solid var(--line);
  }
  
  .numbered-list li::before {
    content: counter(steps);
  
    position: absolute;
    top: 14px;
    left: 0;
  
    display: grid;
  
    width: 24px;
    height: 24px;
  
    place-items: center;
  
    color: var(--white);
    background: var(--blue);
  
    border-radius: 7px;
  
    font-size: 9px;
    font-weight: 950;
  }
  
  /* Security */
  
  .security-checks {
    margin-top: 27px;
    border-top: 1px solid var(--line);
  }
  
  /* Functions */
  
  .functions-layout {
    grid-template-columns:
      minmax(0, 0.82fr)
      minmax(430px, 1.18fr);
  }
  
  .function-list {
    margin-top: 28px;
    border-top: 1px solid var(--line);
  }
  
  .function-list > div {
    display: grid;
    grid-template-columns:
      105px
      1fr;
  
    gap: 20px;
  
    padding: 15px 0;
  
    border-bottom: 1px solid var(--line);
  }
  
  .function-list span {
    color: var(--blue-dark);
    font-weight: 850;
  }
  
  .function-list p {
    margin: 0;
    color: var(--ink-soft);
  }
  
  /* Troubleshooting */
  
  .troubleshooting-layout {
    display: grid;
    grid-template-columns:
      minmax(220px, 0.62fr)
      minmax(0, 1.38fr);
  
    gap: 34px;
  }
  
  .problem-nav {
    align-self: start;
  
    overflow: hidden;
  
    border: 1px solid var(--line-dark);
    border-radius: 17px;
  }
  
  .problem-nav a {
    display: grid;
    grid-template-columns:
      43px
      1fr;
  
    align-items: center;
  
    min-height: 66px;
  
    color: #c9d6df;
    border-bottom: 1px solid var(--line-dark);
  
    font-size: 13px;
  }
  
  .problem-nav a:last-child {
    border-bottom: 0;
  }
  
  .problem-nav a:hover {
    background: rgba(67, 140, 231, 0.08);
  }
  
  .problem-nav span {
    display: grid;
  
    height: 100%;
  
    place-items: center;
  
    color: #77b4f0;
  
    border-right: 1px solid var(--line-dark);
  
    font-size: 11px;
    font-weight: 950;
  }
  
  .problem-list {
    border-top: 1px solid var(--line-dark);
  }
  
  .problem-list details {
    border-bottom: 1px solid var(--line-dark);
  }
  
  .problem-list summary {
    position: relative;
  
    padding: 22px 50px 22px 0;
  
    color: var(--white);
  
    cursor: pointer;
    list-style: none;
  
    font-weight: 850;
  }
  
  .problem-list summary::-webkit-details-marker {
    display: none;
  }
  
  .problem-list summary::after {
    content: "+";
  
    position: absolute;
    top: 18px;
    right: 4px;
  
    color: #75b4f3;
  
    font-size: 26px;
  }
  
  .problem-list details[open] summary::after {
    content: "−";
  }
  
  .problem-list details > div {
    padding: 0 25px 23px 0;
  }
  
  .problem-list details p {
    color: var(--muted);
  }
  
  .problem-list ul {
    display: grid;
    grid-template-columns:
      repeat(2, 1fr);
  
    gap: 9px 26px;
  
    margin: 18px 0 0;
    padding: 0;
  
    list-style: none;
  }
  
  .problem-list li {
    position: relative;
  
    padding-left: 18px;
  
    color: var(--muted);
    font-size: 13px;
  }
  
  .problem-list li::before {
    content: "";
  
    position: absolute;
    top: 10px;
    left: 0;
  
    width: 6px;
    height: 6px;
  
    background: var(--blue);
    border-radius: 50%;
  }
  
  /* Update */
  
  .update-section {
    padding: 72px 0;
  
    background: var(--blue-soft);
    border-top: 1px solid #c3daf4;
    border-bottom: 1px solid #c3daf4;
  }
  
  .update-layout {
    display: grid;
    grid-template-columns:
      auto
      minmax(0, 1fr)
      auto;
  
    align-items: center;
  
    gap: 30px;
  }
  
  .update-icon {
    display: grid;
  
    width: 70px;
    height: 70px;
  
    place-items: center;
  
    color: var(--white);
    background: var(--blue);
  
    border-radius: 20px;
  
    font-size: 31px;
  }
  
  .update-copy h2 {
    margin-bottom: 8px;
  }
  
  .update-copy p:not(.eyebrow) {
    max-width: 750px;
  
    margin-bottom: 0;
    color: var(--ink-soft);
  }
  
  .update-actions {
    display: flex;
    align-items: center;
  
    gap: 15px;
  }
  
  /* FAQ */
  
  .faq-layout {
    display: grid;
    grid-template-columns:
      minmax(260px, 0.72fr)
      minmax(0, 1.28fr);
  
    gap: 58px;
  }
  
  .faq-list {
    border-top: 1px solid #c3d1db;
  }
  
  .faq-list details {
    border-bottom: 1px solid #c3d1db;
  }
  
  .faq-list summary {
    position: relative;
  
    padding: 22px 48px 22px 0;
  
    cursor: pointer;
    list-style: none;
  
    font-weight: 850;
  }
  
  .faq-list summary::-webkit-details-marker {
    display: none;
  }
  
  .faq-list summary::after {
    content: "+";
  
    position: absolute;
    top: 19px;
    right: 4px;
  
    color: var(--blue-dark);
  
    font-size: 25px;
  }
  
  .faq-list details[open] summary::after {
    content: "−";
  }
  
  .faq-list details p {
    margin: 0;
  
    padding: 0 42px 22px 0;
  
    color: var(--ink-soft);
  }
  
  /* Related */
  
  .related-section {
    padding: 92px 0;
  }
  
  .related-grid {
    display: grid;
    grid-template-columns:
      repeat(2, 1fr);
  
    gap: 13px;
  }
  
  .related-grid a {
    display: grid;
    grid-template-columns:
      50px
      1fr;
  
    align-items: center;
  
    gap: 16px;
  
    min-height: 92px;
  
    padding: 16px 20px;
  
    background: var(--white);
    border: 1px solid var(--line);
    border-radius: 15px;
  
    transition:
      transform 160ms ease,
      border-color 160ms ease,
      box-shadow 160ms ease;
  }
  
  .related-grid a:hover {
    transform: translateY(-3px);
  
    border-color: #9ac4ee;
  
    box-shadow:
      0 14px 32px rgba(25, 59, 87, 0.08);
  }
  
  .related-grid > a > span {
    display: grid;
  
    width: 42px;
    height: 42px;
  
    place-items: center;
  
    color: var(--blue-dark);
    background: var(--blue-soft);
  
    border-radius: 12px;
  
    font-size: 11px;
    font-weight: 950;
  }
  
  .related-grid small,
  .related-grid strong {
    display: block;
  }
  
  .related-grid small {
    color: var(--blue-dark);
    font-weight: 800;
  }
  
  /* Bottom CTA */
  
  .bottom-cta {
    color: var(--text);
  
    background:
      radial-gradient(
        circle at 84% 20%,
        rgba(67, 140, 231, 0.22),
        transparent 31%
      ),
      var(--dark);
  }
  
  .bottom-cta-layout {
    display: flex;
    min-height: 250px;
  
    align-items: center;
    justify-content: space-between;
  
    gap: 46px;
  }
  
  .bottom-label {
    margin-bottom: 10px;
  
    color: #7ab7f3;
  
    font-size: 11px;
    font-weight: 950;
    letter-spacing: 0.14em;
  }
  
  .bottom-cta h2 {
    max-width: 790px;
    margin-bottom: 8px;
  }
  
  .bottom-cta p:not(.bottom-label) {
    margin-bottom: 0;
    color: var(--muted);
  }
  
  .bottom-actions {
    display: flex;
    align-items: center;
  
    gap: 17px;
  
    flex-shrink: 0;
  }
  
  .bottom-cta .text-link {
    color: #83baf0;
  }
  
  /* Footer */
  
  .site-footer {
    padding: 34px 0;
  
    color: #a8b7c2;
    background: #07111b;
  
    border-top: 1px solid var(--line-dark);
  }
  
  .footer-layout {
    display: grid;
    grid-template-columns:
      0.75fr
      1.55fr
      0.7fr;
  
    align-items: center;
  
    gap: 32px;
  }
  
  .footer-layout img {
    width: 120px;
    margin-bottom: 10px;
  }
  
  .footer-layout p {
    margin: 0;
    font-size: 13px;
  }
  
  .footer-layout p:last-child {
    text-align: right;
  }
  
  /* Back to top */
  
  .back-to-top {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 50;
  
    width: 44px;
    height: 44px;
  
    color: var(--white);
    background: var(--blue);
  
    border: 0;
    border-radius: 50%;
  
    box-shadow:
      0 14px 34px rgba(24, 87, 158, 0.28);
  
    cursor: pointer;
  
    opacity: 0;
    pointer-events: none;
  
    transform: translateY(10px);
  
    transition:
      opacity 160ms ease,
      transform 160ms ease;
  }
  
  .back-to-top.is-visible {
    opacity: 1;
    pointer-events: auto;
  
    transform: translateY(0);
  }
  
  /* Tablet */
  
  @media (max-width: 980px) {
  
    .main-nav {
      display: none;
    }
  
    .hero-layout,
    .media-content-layout,
    .security-layout,
    .functions-layout,
    .file-layout,
    .requirements-layout,
    .troubleshooting-layout,
    .faq-layout {
      grid-template-columns: 1fr;
    }
  
    .hero-copy {
      max-width: 800px;
    }
  
    .hero-media,
    .media-content-image,
    .security-image,
    .functions-image,
    .file-window {
      max-width: 760px;
    }
  
    .advantages-grid,
    .interface-points {
      grid-template-columns:
        repeat(2, 1fr);
    }
  
    .update-layout {
      grid-template-columns:
        auto
        1fr;
    }
  
    .update-actions {
      grid-column: 2;
      flex-wrap: wrap;
    }
  
    .problem-nav {
      display: grid;
      grid-template-columns:
        repeat(2, 1fr);
    }
  
    .bottom-cta-layout {
      min-height: 0;
  
      align-items: flex-start;
      flex-direction: column;
  
      padding-block: 50px;
    }
  
    .footer-layout {
      grid-template-columns: 1fr;
    }
  
    .footer-layout p:last-child {
      text-align: left;
    }
  }
  
  /* Mobile */
  
  @media (max-width: 780px) {
  
    .container {
      width: min(
        calc(100% - 32px),
        var(--container)
      );
    }
  
    .header-inner {
      min-height: 64px;
      gap: 14px;
    }
  
    .brand img {
      width: 108px;
    }
  
    .header-button {
      min-height: 38px;
      padding-inline: 11px;
      font-size: 11px;
    }
  
    .hero {
      padding: 55px 0 50px;
    }
  
    h1 {
      font-size: clamp(
        38px,
        12vw,
        55px
      );
    }
  
    .hero-features {
      grid-template-columns: 1fr;
    }
  
    .status-top {
      left: 10px;
    }
  
    .status-bottom {
      right: 10px;
    }
  
    .quick-grid {
      grid-template-columns:
        repeat(2, 1fr);
    }
  
    .quick-grid > div {
      border-bottom: 1px solid var(--line);
    }
  
    .section {
      padding: 72px 0;
    }
  
    .advantages-grid,
    .interface-points {
      grid-template-columns: 1fr;
    }
  
    .install-timeline article {
      grid-template-columns:
        58px
        1fr;
    }
  
    .timeline-tag {
      grid-column: 2;
      justify-self: start;
    }
  
    .browser-bar {
      grid-template-columns: 1fr auto;
    }
  
    .browser-bar small {
      display: none;
    }
  
    .requirements-table,
    .difference-table {
      overflow-x: auto;
    }
  
    .requirements-head,
    .requirements-table > div {
      min-width: 680px;
    }
  
    .problem-nav {
      grid-template-columns: 1fr;
    }
  
    .problem-list ul {
      grid-template-columns: 1fr;
    }
  
    .related-grid {
      grid-template-columns: 1fr;
    }
  }
  
  @media (max-width: 520px) {
  
    .container {
      width: min(
        calc(100% - 24px),
        var(--container)
      );
    }
  
    .header-inner {
      grid-template-columns:
        1fr
        auto;
    }
  
    .hero-description {
      font-size: 16px;
    }
  
    .hero-actions {
      align-items: stretch;
      flex-direction: column;
    }
  
    .hero-actions a {
      width: 100%;
    }
  
    .hero-image-frame {
      padding: 8px;
    }
  
    .hero-image-frame img {
      min-height: 320px;
    }
  
    .hero-status {
      position: static;
  
      margin-top: 12px;
    }
  
    .quick-grid {
      grid-template-columns: 1fr;
    }
  
    .quick-grid > div {
      border-right: 0;
    }
  
    .media-content-image,
    .security-image,
    .functions-image {
      padding: 9px;
    }
  
    .media-content-image img,
    .security-image img,
    .functions-image img {
      min-height: 300px;
    }
  
    .install-timeline article {
      grid-template-columns:
        48px
        1fr;
  
      gap: 16px;
    }
  
    .timeline-number {
      width: 48px;
      height: 48px;
    }
  
    .install-timeline::before {
      left: 24px;
    }
  
    .file-content {
      grid-template-columns: 1fr;
    }
  
    .file-content aside {
      display: none;
    }
  
    .file-item {
      grid-template-columns:
        auto
        1fr;
    }
  
    .file-item b {
      grid-column: 2;
    }
  
    .function-list > div {
      grid-template-columns: 1fr;
      gap: 4px;
    }
  
    .update-layout {
      grid-template-columns: 1fr;
    }
  
    .update-actions {
      grid-column: 1;
  
      align-items: stretch;
      flex-direction: column;
    }
  
    .bottom-actions {
      align-items: stretch;
      flex-direction: column;
    }
  
    .faq-list summary,
    .problem-list summary {
      padding-right: 36px;
    }
  
    .faq-list details p,
    .problem-list details > div {
      padding-right: 0;
    }
  }
  
  @media (prefers-reduced-motion: reduce) {
  
    *,
    *::before,
    *::after {
      scroll-behavior: auto !important;
      transition: none !important;
    }
  }