:root {
      color-scheme: dark;
      --bg: #020711;
      --blue: #168cff;
      --cyan: #72dcff;
      --ice: #d7f6ff;
      --pink: #ff759f;
      --text: #eaf4ff;
      --muted: #71839b;
      --hairline: rgba(81, 159, 255, .18);
    }

    * { box-sizing: border-box; }

    html,
    body {
      width: 100%;
      min-width: 320px;
      height: 100%;
      margin: 0;
    }

    html {
      background: var(--bg);
      scroll-behavior: smooth;
      scroll-snap-type: none;
    }

    body {
      overflow-x: hidden;
      overflow-y: auto;
      color: var(--text);
      background: var(--bg);
      font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-weight: 400;
      transition: background-color .8s ease, color .8s ease;
    }

    body.platforms-active {
      color: #13283d;
      background: #eef5f9;
    }

    .page,
    .hero-platform-bridge,
    .platforms-section,
    .portfolio-section,
    .news-section,
    .contact-section,
    .site-footer {
      contain: layout paint;
    }

    .is-render-paused,
    .is-render-paused::before,
    .is-render-paused::after,
    .is-render-paused *,
    .is-render-paused *::before,
    .is-render-paused *::after {
      animation-play-state: paused !important;
    }

    @media (min-width: 761px) {
      @supports (content-visibility: auto) {
        .page,
        .hero-platform-bridge,
        .platforms-section,
        .portfolio-section,
        .news-section,
        .contact-section,
        .site-footer {
          content-visibility: auto;
          contain-intrinsic-size: auto 100vh;
        }

        .hero-platform-bridge { contain-intrinsic-size: auto 280px; }

        .page.is-render-ready,
        .hero-platform-bridge.is-render-ready,
        .platforms-section.is-render-ready,
        .portfolio-section.is-render-ready,
        .news-section.is-render-ready,
        .contact-section.is-render-ready,
        .site-footer.is-render-ready {
          content-visibility: visible;
        }
      }
    }

    button,
    a { font: inherit; }

    .page {
      position: relative;
      width: 100%;
      height: 100vh;
      min-height: 680px;
      overflow: hidden;
      isolation: isolate;
      scroll-snap-align: start;
      background:
        radial-gradient(ellipse 42% 45% at 50% 43%, rgba(0, 92, 207, .19), transparent 66%),
        radial-gradient(ellipse 76% 78% at 50% 49%, rgba(3, 25, 56, .34), transparent 67%),
        linear-gradient(180deg, #020711 0%, #030a15 56%, #01040a 100%);
    }

    .page::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 8;
      pointer-events: none;
      background:
        linear-gradient(90deg,
          rgba(0, 0, 0, .68) 0%,
          rgba(0, 0, 0, .48) 10%,
          rgba(0, 0, 0, .18) 23%,
          transparent 34%,
          transparent 66%,
          rgba(0, 0, 0, .18) 77%,
          rgba(0, 0, 0, .48) 90%,
          rgba(0, 0, 0, .68) 100%),
        radial-gradient(ellipse at center, transparent 47%, rgba(0, 0, 0, .58) 100%);
    }

    .page::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 7;
      opacity: .15;
      pointer-events: none;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.14'/%3E%3C/svg%3E");
      mix-blend-mode: soft-light;
    }

    .ambient {
      position: absolute;
      left: 50%;
      top: 43%;
      z-index: 0;
      width: min(760px, 58vw);
      aspect-ratio: 1;
      border-radius: 50%;
      opacity: 0;
      pointer-events: none;
      transform: translate(-50%, -50%) scale(.62);
      background:
        radial-gradient(circle, rgba(30, 140, 255, .22) 0 8%, rgba(0, 92, 225, .12) 28%, transparent 64%);
      filter: blur(22px);
      animation: ambientIn 2.4s cubic-bezier(.2, .8, .2, 1) .2s forwards;
    }

    .site-header {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 100;
      height: 90px;
      padding: 28px clamp(28px, 3vw, 48px) 0;
      display: flex;
      align-items: flex-start;
      isolation: isolate;
      opacity: 0;
      transform: translateY(-10px);
      animation: headerIn .9s ease .15s forwards;
    }

    .site-header::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -1;
      pointer-events: none;
      opacity: 0;
      background: linear-gradient(180deg, rgba(248, 252, 255, .96) 0%, rgba(243, 249, 253, .84) 72%, rgba(243, 249, 253, 0) 100%);
      box-shadow: 0 12px 36px rgba(43, 83, 117, .08);
      -webkit-backdrop-filter: blur(18px) saturate(130%);
      backdrop-filter: blur(18px) saturate(130%);
      transition: opacity .75s ease;
    }

    body.platforms-active .site-header::before { opacity: 1; }

    .mini-logo {
      margin: 9px 58px 0 0;
      flex: 0 0 auto;
      color: #bfeeff;
      background: linear-gradient(105deg, #68cfff 0%, #bfefff 17%, #ffffff 29%, #68cfff 46%, #e9fbff 64%, #70d6ff 82%, #d6f7ff 100%);
      background-size: 240% 100%;
      background-position: 0% 50%;
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
      font-size: 15px;
      font-weight: 500;
      line-height: 18px;
      letter-spacing: .08em;
      text-decoration: none;
      white-space: nowrap;
      opacity: .9;
      filter: drop-shadow(0 0 8px rgba(73, 190, 255, .34));
      transition: opacity .25s ease, filter .25s ease;
      animation: miniLogoShimmer 9s ease-in-out infinite alternate;
    }

    .mini-logo:hover,
    .mini-logo:focus-visible {
      opacity: 1;
      filter: drop-shadow(0 0 11px rgba(82, 203, 255, .62));
    }

    body.platforms-active .mini-logo {
      filter: brightness(.56) saturate(1.5) drop-shadow(0 2px 7px rgba(18, 99, 160, .16));
    }

    .main-nav {
      display: flex;
      align-items: center;
      gap: clamp(28px, 3.25vw, 54px);
      min-height: 38px;
    }

    .main-nav a,
    .header-actions a {
      color: rgba(220, 233, 247, .72);
      text-decoration: none;
      font-size: 12px;
      transition: color .25s ease, border-color .25s ease, background .25s ease, box-shadow .25s ease;
    }

    .main-nav a:hover,
    .main-nav a:focus-visible { color: #eef8ff; }

    body.platforms-active .main-nav a { color: rgba(24, 47, 70, .7); }

    body.platforms-active .main-nav a:hover,
    body.platforms-active .main-nav a:focus-visible,
    body.platforms-active .main-nav a[href="/platforms/"] { color: #0869b5; }

    .header-actions {
      display: flex;
      gap: 27px;
      margin-left: auto;
      align-items: center;
    }

    .header-actions a {
      min-width: 84px;
      height: 36px;
      border: 1px solid rgba(70, 130, 205, .22);
      border-radius: 10px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }

    .header-actions .primary {
      min-width: 142px;
      padding-inline: 16px;
      color: #e9f8ff;
      border-color: rgba(44, 147, 255, .38);
      background: linear-gradient(180deg, rgba(26, 113, 201, .82), rgba(9, 62, 119, .92));
      box-shadow: inset 0 1px rgba(255, 255, 255, .1), 0 0 22px rgba(17, 119, 233, .14);
      white-space: nowrap;
    }

    .header-actions a:hover,
    .header-actions a:focus-visible {
      color: #fff;
      border-color: rgba(76, 177, 255, .66);
      box-shadow: 0 0 24px rgba(20, 127, 255, .2);
    }

    body.platforms-active .header-actions .primary {
      color: #f8fcff;
      border-color: rgba(18, 110, 181, .28);
      background: linear-gradient(180deg, #1782d1, #0d65aa);
      box-shadow: 0 8px 24px rgba(18, 105, 171, .2), inset 0 1px rgba(255, 255, 255, .2);
    }

    .menu-toggle {
      position: relative;
      width: 40px;
      height: 40px;
      margin: -2px 0 0 10px;
      padding: 0;
      flex: 0 0 40px;
      display: none;
      border: 1px solid rgba(91, 193, 238, .34);
      border-radius: 11px;
      color: #8edfff;
      background: rgba(4, 15, 29, .68);
      box-shadow: inset 0 0 18px rgba(39, 151, 217, .08), 0 8px 24px rgba(0, 0, 0, .14);
      -webkit-backdrop-filter: blur(12px) saturate(130%);
      backdrop-filter: blur(12px) saturate(130%);
      cursor: pointer;
      -webkit-tap-highlight-color: transparent;
      transition: color .35s ease, border-color .35s ease, background .55s ease, box-shadow .35s ease;
    }

    .menu-toggle span {
      position: absolute;
      left: 10px;
      width: 18px;
      height: 1px;
      border-radius: 2px;
      background: currentColor;
      box-shadow: 0 0 7px currentColor;
      transform-origin: center;
      transition: top .32s ease, opacity .24s ease, transform .32s cubic-bezier(.2, .72, .2, 1);
    }

    .menu-toggle span:nth-child(1) { top: 12px; }
    .menu-toggle span:nth-child(2) { top: 19px; }
    .menu-toggle span:nth-child(3) { top: 26px; }

    .site-header.is-menu-open .menu-toggle span:nth-child(1) { top: 19px; transform: rotate(45deg); }
    .site-header.is-menu-open .menu-toggle span:nth-child(2) { opacity: 0; transform: scaleX(.2); }
    .site-header.is-menu-open .menu-toggle span:nth-child(3) { top: 19px; transform: rotate(-45deg); }

    .menu-toggle:hover,
    .menu-toggle:focus-visible,
    .site-header.is-menu-open .menu-toggle {
      color: #e4faff;
      border-color: rgba(112, 221, 255, .7);
      box-shadow: inset 0 0 20px rgba(52, 171, 232, .14), 0 0 20px rgba(36, 168, 235, .18);
    }

    .menu-toggle:focus-visible {
      outline: 1px solid currentColor;
      outline-offset: 4px;
    }

    .section-nav {
      --section-nav-line: rgba(81, 194, 244, .36);
      --section-nav-line-hot: #85e6ff;
      --section-nav-node: rgba(3, 13, 26, .78);
      --section-nav-node-border: rgba(76, 185, 242, .42);
      --section-nav-text: rgba(205, 231, 246, .62);
      --section-nav-text-hot: #e7faff;
      --section-nav-label: rgba(5, 16, 29, .72);
      position: fixed;
      top: 50%;
      right: clamp(11px, 1.45vw, 24px);
      z-index: 92;
      display: grid;
      justify-items: end;
      gap: 15px;
      color: var(--section-nav-text);
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
      transform: translate3d(22px, -50%, 0);
      transition: opacity .48s ease, transform .68s cubic-bezier(.2, .78, .2, 1), visibility 0s linear .68s;
    }

    .section-nav.is-visible {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
      transform: translate3d(0, -50%, 0);
      transition-delay: 0s;
    }

    body.platforms-active .section-nav {
      --section-nav-line: rgba(31, 116, 167, .3);
      --section-nav-line-hot: #0879bb;
      --section-nav-node: rgba(244, 250, 253, .82);
      --section-nav-node-border: rgba(20, 112, 168, .3);
      --section-nav-text: rgba(34, 76, 106, .58);
      --section-nav-text-hot: #0b5f95;
      --section-nav-label: rgba(238, 247, 251, .8);
    }

    body.portfolio-active .section-nav {
      --section-nav-line: rgba(75, 200, 240, .32);
      --section-nav-line-hot: #73e2ff;
      --section-nav-node: rgba(10, 18, 28, .82);
      --section-nav-node-border: rgba(82, 204, 242, .38);
      --section-nav-text: rgba(203, 226, 239, .58);
      --section-nav-text-hot: #e7fbff;
      --section-nav-label: rgba(11, 20, 30, .8);
    }

    .section-nav-list {
      position: relative;
      margin: 0;
      padding: 0;
      display: grid;
      gap: 18px;
      list-style: none;
    }

    .section-nav-list::before {
      content: "";
      position: absolute;
      top: 17px;
      right: 16.5px;
      bottom: 17px;
      width: 1px;
      background: var(--section-nav-line);
      box-shadow: 0 0 7px color-mix(in srgb, var(--section-nav-line-hot) 35%, transparent);
      transition: background .7s ease, box-shadow .7s ease;
    }

    .section-nav-list::after {
      content: "";
      position: absolute;
      top: 18px;
      right: 16px;
      width: 2px;
      height: 32px;
      border-radius: 2px;
      background: linear-gradient(180deg, transparent, var(--section-nav-line-hot), transparent);
      filter: drop-shadow(0 0 4px var(--section-nav-line-hot));
      animation: sectionNavCurrent 3.6s linear infinite;
    }

    .section-nav-item {
      position: relative;
      z-index: 1;
      opacity: 0;
      transform: translateX(11px);
      transition: opacity .38s ease, transform .55s cubic-bezier(.2, .78, .2, 1);
    }

    .section-nav.is-visible .section-nav-item {
      opacity: 1;
      transform: translateX(0);
    }

    .section-nav.is-visible .section-nav-item:nth-child(1) { transition-delay: .05s; }
    .section-nav.is-visible .section-nav-item:nth-child(2) { transition-delay: .12s; }
    .section-nav.is-visible .section-nav-item:nth-child(3) { transition-delay: .19s; }
    .section-nav.is-visible .section-nav-item:nth-child(4) { transition-delay: .26s; }
    .section-nav.is-visible .section-nav-item:nth-child(5) { transition-delay: .33s; }
    .section-nav.is-visible .section-nav-item:nth-child(6) { transition-delay: .4s; }

    .section-nav-link {
      min-height: 34px;
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 9px;
      color: inherit;
      text-decoration: none;
    }

    .section-nav-label {
      max-width: 0;
      padding: 6px 0;
      overflow: hidden;
      color: var(--section-nav-text);
      background: linear-gradient(90deg, transparent, var(--section-nav-label));
      font-size: 9px;
      font-weight: 500;
      letter-spacing: .13em;
      text-transform: uppercase;
      white-space: nowrap;
      opacity: 0;
      transform: translateX(8px);
      transition: max-width .45s ease, padding .45s ease, opacity .3s ease, transform .45s ease, color .7s ease, background .7s ease;
    }

    .section-nav-link:hover .section-nav-label,
    .section-nav-link:focus-visible .section-nav-label {
      max-width: 150px;
      padding-inline: 11px;
      color: var(--section-nav-text-hot);
      opacity: 1;
      transform: translateX(0);
    }

    .section-nav-node {
      position: relative;
      width: 34px;
      height: 34px;
      aspect-ratio: 1;
      flex: 0 0 34px;
      display: grid;
      place-items: center;
      overflow: hidden;
      color: var(--section-nav-text);
      border: 1px solid var(--section-nav-node-border);
      border-radius: 50%;
      background: var(--section-nav-node);
      -webkit-backdrop-filter: blur(10px) saturate(130%);
      backdrop-filter: blur(10px) saturate(130%);
      box-shadow: inset 0 0 13px rgba(39, 143, 208, .07), 0 0 0 4px transparent;
      font-size: 9px;
      font-weight: 500;
      letter-spacing: .04em;
      transition: color .45s ease, border-color .7s ease, background .7s ease, box-shadow .45s ease, transform .45s ease;
    }

    .section-nav-node::before {
      content: "";
      position: absolute;
      inset: 5px;
      border: 1px solid currentColor;
      border-radius: 50%;
      opacity: .18;
      transition: opacity .4s ease, transform .45s ease;
    }

    .section-nav-node::after {
      content: "";
      position: absolute;
      top: 3px;
      left: 50%;
      width: 3px;
      height: 3px;
      border-radius: 50%;
      background: var(--section-nav-line-hot);
      box-shadow: 0 0 7px var(--section-nav-line-hot);
      opacity: 0;
      transform: translateX(-50%);
      transition: opacity .35s ease;
    }

    .section-nav-link:hover .section-nav-node,
    .section-nav-link:focus-visible .section-nav-node,
    .section-nav-link.is-active .section-nav-node {
      color: var(--section-nav-text-hot);
      border-color: var(--section-nav-line-hot);
      box-shadow: inset 0 0 15px rgba(45, 176, 231, .13), 0 0 0 4px color-mix(in srgb, var(--section-nav-line-hot) 10%, transparent), 0 0 17px color-mix(in srgb, var(--section-nav-line-hot) 28%, transparent);
      transform: scale(1.08);
    }

    .section-nav-link.is-active .section-nav-node::before { opacity: .48; transform: scale(.86); }
    .section-nav-link.is-active .section-nav-node::after { opacity: 1; }

    .section-nav-link:focus-visible {
      outline: 1px solid var(--section-nav-line-hot);
      outline-offset: 5px;
      border-radius: 18px;
    }

    .section-nav-up {
      width: 34px;
      margin-right: 0;
      display: grid;
      justify-items: center;
      gap: 4px;
      color: var(--section-nav-text);
      text-decoration: none;
      opacity: .72;
      transition: color .35s ease, opacity .35s ease, transform .35s ease;
    }

    .section-nav-up:hover,
    .section-nav-up:focus-visible {
      color: var(--section-nav-text-hot);
      opacity: 1;
      transform: translateY(-2px);
    }

    .section-nav-up svg {
      width: 18px;
      height: 18px;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.5;
      filter: drop-shadow(0 0 4px color-mix(in srgb, var(--section-nav-line-hot) 36%, transparent));
    }

    .section-nav-up span {
      font-size: 8px;
      font-weight: 500;
      letter-spacing: .12em;
      text-transform: uppercase;
      writing-mode: vertical-rl;
    }

    .top-signal {
      position: absolute;
      top: 77px;
      left: 50%;
      z-index: 15;
      width: 250px;
      height: 2px;
      opacity: 0;
      transform: translateX(-50%);
      background: linear-gradient(90deg, transparent, rgba(24, 118, 237, .18) 37%, #77e2ff 49%, #dffaff 50%, #77e2ff 51%, rgba(24, 118, 237, .18) 63%, transparent);
      filter: drop-shadow(0 0 7px #168cff);
      animation: signalIn 1.2s ease 1.2s forwards;
    }

    .circuit-stage {
      --mx: 0px;
      --my: 0px;
      position: absolute;
      inset: 0;
      z-index: 1;
      width: 100%;
      height: 100%;
      pointer-events: none;
      transform: translate3d(calc(var(--mx) * .18), calc(var(--my) * .18), 0);
      transition: transform .18s linear;
    }

    .pcb-path {
      fill: none;
      stroke: rgba(32, 110, 203, .24);
      stroke-width: 1.05;
      vector-effect: non-scaling-stroke;
      stroke-linecap: round;
      stroke-linejoin: miter;
      stroke-dasharray: 1;
      stroke-dashoffset: 1;
      opacity: 0;
      animation: drawTrace var(--duration, 2s) cubic-bezier(.2, .72, .2, 1) var(--delay, 1s) forwards;
    }

    .pcb-path.major {
      stroke: rgba(54, 160, 255, .58);
      stroke-width: 1.55;
      filter: url(#smallGlow);
    }

    .pcb-path.minor { stroke: rgba(25, 92, 171, .2); }

    .pcb-path.is-hot {
      stroke: rgba(77, 185, 255, .72);
      filter: url(#smallGlow);
    }

    .charge-path {
      fill: none;
      stroke: #8be8ff;
      stroke-width: 2;
      vector-effect: non-scaling-stroke;
      stroke-linecap: round;
      stroke-dasharray: 1.15 98.85;
      stroke-dashoffset: 100;
      opacity: 0;
      filter: url(#electricGlow);
      animation:
        chargeWake .25s ease var(--charge-delay, 2.8s) forwards,
        currentRun var(--speed, 3.7s) linear var(--charge-delay, 2.8s) infinite;
    }

    .charge-path.is-hot {
      stroke-width: 3.2;
      --speed: 1.65s !important;
    }

    .pcb-node {
      fill: #64d6ff;
      opacity: 0;
      filter: url(#smallGlow);
      animation: nodeIn .45s ease var(--delay, 2.4s) forwards;
    }

    .pcb-node.ring {
      fill: none;
      stroke: rgba(54, 157, 255, .66);
      stroke-width: 1;
    }

    .processor-group {
      transform-origin: 768px 458px;
      opacity: 0;
      animation: coreEmerges 1.65s cubic-bezier(.16, .84, .22, 1) .42s forwards;
      pointer-events: auto;
      cursor: pointer;
      user-select: none;
      -webkit-tap-highlight-color: transparent;
    }

    .processor-group:focus:not(:focus-visible) {
      outline: none;
    }

    .chip-frame {
      fill: rgba(2, 12, 26, .96);
      stroke: #70d8ff;
      stroke-width: 2.2;
      filter: url(#chipGlow);
    }

    .chip-inner {
      fill: url(#chipFace);
      stroke: rgba(94, 187, 255, .34);
      stroke-width: 1;
    }

    .chip-pin {
      fill: none;
      stroke: url(#pinGradient);
      stroke-width: 4;
      stroke-linecap: round;
      opacity: 0;
      filter: url(#electricGlow);
      animation: pinIn .55s ease var(--pin-delay) forwards;
    }

    .chip-glint {
      fill: none;
      stroke: #dffaff;
      stroke-width: 2;
      stroke-dasharray: 2 98;
      filter: url(#electricGlow);
      animation: chipCurrent 2.25s linear 2.1s infinite;
    }

    .chip-brand {
      fill: #eafaff;
      font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 16px;
      font-weight: 500;
      letter-spacing: 4px;
      text-anchor: middle;
      dominant-baseline: middle;
      pointer-events: none;
      filter: url(#electricGlow);
    }

    .feature {
      position: absolute;
      z-index: 12;
      width: 268px;
      padding: 0;
      border: 0;
      color: inherit;
      text-align: left;
      display: grid;
      grid-template-columns: 72px 1fr;
      gap: 24px;
      align-items: center;
      background: transparent;
      text-decoration: none;
      isolation: isolate;
      opacity: 0;
      transform: translateY(10px);
      cursor: pointer;
      animation: featureIn .75s ease var(--feature-delay) forwards;
    }

    .feature::before {
      content: "";
      position: absolute;
      inset: -25px -34px;
      z-index: 0;
      border: 0;
      border-radius: 32px;
      pointer-events: none;
      visibility: hidden;
      opacity: 0;
      transform: translateY(4px) scale(.96);
      background:
        radial-gradient(ellipse at center, rgba(28, 78, 119, .82) 0%, rgba(6, 25, 47, .62) 56%, rgba(2, 10, 22, .16) 84%, transparent 100%),
        linear-gradient(135deg, rgba(151, 224, 255, .18), transparent 48%);
      box-shadow:
        inset 0 0 38px rgba(88, 181, 244, .1),
        0 14px 42px rgba(0, 0, 0, .2),
        0 0 42px rgba(20, 130, 240, .11);
      -webkit-backdrop-filter: blur(24px) saturate(145%);
      backdrop-filter: blur(24px) saturate(145%);
      -webkit-mask-image: radial-gradient(ellipse 50% 50% at center, #000 0%, #000 56%, rgba(0, 0, 0, .9) 72%, rgba(0, 0, 0, .38) 90%, transparent 100%);
      mask-image: radial-gradient(ellipse 50% 50% at center, #000 0%, #000 56%, rgba(0, 0, 0, .9) 72%, rgba(0, 0, 0, .38) 90%, transparent 100%);
      transition:
        opacity .38s ease,
        transform .38s cubic-bezier(.2, .78, .2, 1),
        visibility 0s linear .38s;
    }

    .feature > * {
      position: relative;
      z-index: 1;
    }

    .feature:hover::before,
    .feature:focus-visible::before,
    .feature.is-active::before {
      visibility: visible;
      opacity: 1;
      transform: translateY(0) scale(1);
      transition-delay: 0s;
    }

    .feature.left { left: clamp(42px, 5.9vw, 96px); }
    .feature.right { right: clamp(38px, 5.15vw, 84px); }
    .feature.row-one { top: 22.8%; }
    .feature.row-two { top: 43.2%; }
    .feature.row-three { top: 63.5%; }

    .icon-ring {
      position: relative;
      width: 70px;
      height: 70px;
      border: 1px solid rgba(52, 147, 250, .42);
      border-radius: 50%;
      display: grid;
      place-items: center;
      color: #6fc8ff;
      background:
        radial-gradient(circle, rgba(16, 93, 183, .13), rgba(2, 11, 25, .72) 64%, transparent 66%);
      box-shadow: inset 0 0 22px rgba(13, 95, 200, .08), 0 0 28px rgba(0, 74, 174, .08);
      transition: border-color .3s ease, box-shadow .3s ease, color .3s ease, transform .3s ease;
    }

    .icon-ring::before,
    .icon-ring::after {
      content: "";
      position: absolute;
      border-radius: inherit;
      pointer-events: none;
    }

    .icon-ring::before {
      inset: 7px;
      border: 1px solid rgba(36, 125, 226, .15);
    }

    .icon-ring::after {
      inset: -7px;
      border: 1px solid rgba(37, 114, 210, .08);
    }

    .icon-ring svg {
      width: 30px;
      height: 30px;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.35;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .feature-copy {
      padding: 7px 0;
      min-width: 0;
      text-shadow:
        0 1px 2px rgba(0, 0, 0, 1),
        0 2px 14px rgba(0, 0, 0, .96),
        0 0 24px rgba(0, 0, 0, .78);
    }

    .feature-name {
      display: block;
      margin: 0 0 12px;
      color: #dceaff;
      font-size: 13px;
      font-weight: 400;
      letter-spacing: .16em;
      text-transform: uppercase;
    }

    .feature-description {
      display: block;
      margin: 0;
      max-width: 175px;
      color: #b9cde2;
      font-size: 12px;
      line-height: 1.65;
    }

    .feature:hover .icon-ring,
    .feature:focus-visible .icon-ring,
    .feature.is-active .icon-ring {
      color: #c8f3ff;
      border-color: rgba(95, 205, 255, .82);
      box-shadow: inset 0 0 25px rgba(21, 116, 229, .16), 0 0 30px rgba(18, 132, 255, .26);
      transform: scale(1.035);
    }

    .feature:focus-visible {
      outline: 1px solid rgba(107, 210, 255, .75);
      outline-offset: 9px;
      border-radius: 4px;
    }

    .hero-platform-bridge {
      --bridge-energy: 0;
      --bridge-grid-opacity: .16;
      --bridge-node-scale: .72;
      --bridge-scan-y: 0%;
      position: relative;
      width: 100%;
      height: clamp(220px, 28vh, 310px);
      overflow: hidden;
      isolation: isolate;
      background:
        radial-gradient(ellipse 34% 92% at 50% 0%, rgba(14, 103, 214, .26), transparent 70%),
        linear-gradient(180deg,
          #01040a 0%,
          #06111e 18%,
          #173246 42%,
          #50758b 65%,
          #91afbf 83%,
          #c8dce9 100%);
    }

    .hero-platform-bridge::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 1;
      pointer-events: none;
      opacity: var(--bridge-grid-opacity);
      background-image:
        linear-gradient(rgba(95, 205, 244, .15) 1px, transparent 1px),
        linear-gradient(90deg, rgba(95, 205, 244, .15) 1px, transparent 1px),
        repeating-linear-gradient(180deg, rgba(207, 244, 255, .045) 0 1px, transparent 1px 4px);
      background-size: 42px 42px, 42px 42px, 100% 4px;
      -webkit-mask-image: linear-gradient(180deg, #000 0, #000 72%, transparent 100%);
      mask-image: linear-gradient(180deg, #000 0, #000 72%, transparent 100%);
    }

    .hero-platform-bridge::after {
      content: "";
      position: absolute;
      top: var(--bridge-scan-y);
      left: 7%;
      right: 7%;
      z-index: 4;
      height: 1px;
      pointer-events: none;
      opacity: var(--bridge-energy);
      background: linear-gradient(90deg, transparent, rgba(100, 225, 255, .2) 20%, #e8fcff 50%, rgba(42, 168, 215, .3) 80%, transparent);
      box-shadow: 0 0 14px rgba(71, 211, 255, .48);
      transition: top .1s linear, opacity .2s ease;
    }

    .bridge-circuit {
      position: absolute;
      inset: 0;
      z-index: 2;
      display: block;
      width: 100%;
      height: 100%;
      overflow: visible;
      pointer-events: none;
    }

    .bridge-trace,
    .bridge-current {
      fill: none;
      stroke-linecap: round;
      stroke-linejoin: round;
      vector-effect: non-scaling-stroke;
    }

    .bridge-trace {
      stroke-width: 1.35;
      opacity: .7;
    }

    .bridge-current {
      stroke-width: 2.1;
      stroke-dasharray: 3 97;
      opacity: var(--bridge-energy);
      filter: drop-shadow(0 0 4px rgba(88, 222, 255, .88));
      animation: sectionCurrentRun 2.9s linear infinite;
    }

    .bridge-current:nth-child(2) { animation-delay: -.9s; }
    .bridge-current:nth-child(3) { animation-delay: -1.8s; }
    .bridge-current:nth-child(4) { animation-delay: -2.35s; }

    .bridge-node {
      position: absolute;
      z-index: 3;
      width: 9px;
      height: 9px;
      border: 1px solid rgba(129, 230, 255, .9);
      border-radius: 50%;
      background: rgba(8, 31, 48, .92);
      box-shadow: 0 0 0 4px rgba(64, 196, 236, .08), 0 0 11px rgba(69, 211, 251, .66);
      opacity: var(--bridge-energy);
      transform: translate(-50%, -50%) scale(var(--bridge-node-scale));
      transition: opacity .24s ease, transform .35s ease;
    }

    .bridge-node::after {
      content: "";
      position: absolute;
      inset: 2px;
      border-radius: 50%;
      background: #b9f4ff;
      animation: sectionNodePulse 2.4s ease-in-out infinite;
    }

    .bridge-node--left-a { left: 10%; top: 35%; }
    .bridge-node--right-a { left: 90%; top: 47%; }
    .bridge-node--left-b { left: 21%; top: 67%; }
    .bridge-node--right-b { left: 79%; top: 77%; }
    .bridge-node--center { left: 50%; top: 89%; }

    .platforms-section {
      position: relative;
      min-height: 100vh;
      overflow: hidden;
      isolation: isolate;
      scroll-snap-align: start;
      color: #142b40;
      background:
        radial-gradient(circle at 14% 31%, rgba(255, 144, 72, .2), transparent 31%),
        radial-gradient(circle at 86% 30%, rgba(30, 126, 218, .19), transparent 34%),
        linear-gradient(180deg, #c8dce9 0%, #f8fbfd 17%, #edf4f8 100%);
    }

    .platforms-section::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -2;
      pointer-events: none;
      opacity: .48;
      background-image:
        linear-gradient(rgba(43, 92, 126, .07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(43, 92, 126, .07) 1px, transparent 1px);
      background-size: 40px 40px;
      mask-image: linear-gradient(180deg, transparent, #000 16%, #000 86%, transparent);
    }

    .platforms-section::after {
      display: none;
    }

    .platforms-inner {
      position: relative;
      z-index: 1;
      width: min(100%, 1600px);
      min-height: 100vh;
      margin: 0 auto;
      padding: clamp(96px, 10.5vh, 120px) clamp(30px, 5.2vw, 82px) clamp(32px, 4.5vh, 48px);
      display: grid;
      grid-template-rows: auto 1fr;
      gap: clamp(22px, 3vh, 34px);
    }

    .platforms-heading {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(280px, 430px);
      gap: clamp(30px, 5vw, 80px);
      align-items: end;
    }

    .platforms-kicker {
      display: block;
      margin: 0 0 11px;
      color: #1776b9;
      font-size: 11px;
      font-weight: 500;
      letter-spacing: .22em;
      text-transform: uppercase;
    }

    .platforms-title {
      margin: 0;
      color: #10283f;
      font-size: clamp(40px, 4.8vw, 68px);
      font-weight: 500;
      line-height: .96;
      letter-spacing: -.055em;
    }

    .platforms-intro {
      margin: 0 0 4px;
      color: #52687a;
      font-size: clamp(14px, 1.05vw, 16px);
      line-height: 1.55;
    }

    .platforms-grid {
      position: relative;
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      align-items: stretch;
    }

    .platform-card {
      min-width: 0;
      padding: 0 clamp(14px, 1.6vw, 26px);
      display: grid;
      grid-template-rows: auto minmax(160px, 1fr) auto;
      gap: clamp(13px, 1.8vh, 20px);
      align-content: start;
    }

    .platform-card:first-child { padding-left: 0; }
    .platform-card:last-child { padding-right: 0; }
    .platform-card + .platform-card { border-left: 1px solid rgba(54, 91, 120, .17); }

    .platform-card-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
    }

    .platform-number {
      color: rgba(37, 68, 92, .38);
      font-size: 11px;
      letter-spacing: .18em;
    }

    .platform-type {
      color: #526b7f;
      font-size: 9px;
      font-weight: 500;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .platform-visual {
      position: relative;
      min-height: clamp(160px, 19vh, 205px);
      overflow: hidden;
      border: 1px solid rgba(76, 112, 139, .13);
      border-radius: 24px;
      box-shadow: 0 18px 48px rgba(43, 72, 94, .12), inset 0 1px rgba(255, 255, 255, .84);
    }

    .postservice-visual {
      background:
        radial-gradient(circle at 18% 20%, rgba(255, 167, 104, .34), transparent 35%),
        linear-gradient(145deg, rgba(255, 255, 255, .96), rgba(255, 239, 225, .78));
    }

    .postservice-map {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
    }

    .map-road {
      fill: none;
      stroke: rgba(80, 111, 132, .18);
      stroke-width: 2;
      stroke-linecap: round;
    }

    .route-halo,
    .route-line {
      fill: none;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .route-halo {
      stroke: rgba(247, 110, 52, .17);
      stroke-width: 13;
    }

    .route-line {
      stroke: #f36f36;
      stroke-width: 3;
      stroke-dasharray: 9 10;
      animation: routeTravel 7s linear infinite;
    }

    .route-node {
      fill: #fff;
      stroke: #f36f36;
      stroke-width: 3;
      filter: drop-shadow(0 5px 9px rgba(214, 91, 36, .24));
    }

    .route-node-core { fill: #f36f36; }

    .map-label {
      position: absolute;
      min-width: 92px;
      padding: 9px 12px;
      border: 1px solid rgba(114, 128, 137, .12);
      border-radius: 12px;
      color: #3d5365;
      background: rgba(255, 255, 255, .74);
      box-shadow: 0 10px 24px rgba(68, 83, 93, .1);
      -webkit-backdrop-filter: blur(10px);
      backdrop-filter: blur(10px);
      font-size: 10px;
      letter-spacing: .06em;
    }

    .map-label strong {
      display: block;
      margin-bottom: 3px;
      color: #e15d28;
      font-size: 12px;
      font-weight: 500;
    }

    .map-label--orders { top: 18px; left: 20px; }
    .map-label--route { right: 18px; bottom: 18px; }

    .flexcore-visual {
      background:
        radial-gradient(circle at 80% 16%, rgba(61, 151, 237, .25), transparent 38%),
        linear-gradient(145deg, rgba(255, 255, 255, .97), rgba(225, 241, 252, .82));
    }

    .cms-window {
      position: absolute;
      inset: 20px 26px;
      overflow: hidden;
      border: 1px solid rgba(44, 111, 163, .16);
      border-radius: 22px;
      background: rgba(255, 255, 255, .72);
      box-shadow: 0 20px 45px rgba(35, 102, 154, .12);
      -webkit-backdrop-filter: blur(14px);
      backdrop-filter: blur(14px);
    }

    .cms-toolbar {
      height: 36px;
      padding: 0 14px;
      display: flex;
      align-items: center;
      gap: 6px;
      border-bottom: 1px solid rgba(43, 100, 143, .1);
    }

    .cms-toolbar i {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: rgba(30, 116, 184, .3);
    }

    .cms-toolbar b {
      margin-left: auto;
      color: #1f6fa9;
      font-size: 9px;
      font-weight: 500;
      letter-spacing: .14em;
    }

    .cms-workspace {
      height: calc(100% - 36px);
      display: grid;
      grid-template-columns: 76px 1fr;
    }

    .cms-sidebar {
      padding: 16px 13px;
      border-right: 1px solid rgba(43, 100, 143, .09);
      background: rgba(220, 239, 251, .38);
    }

    .cms-sidebar span {
      display: block;
      width: 100%;
      height: 5px;
      margin-bottom: 13px;
      border-radius: 5px;
      background: rgba(35, 112, 169, .16);
    }

    .cms-sidebar span:first-child {
      width: 72%;
      background: rgba(19, 124, 205, .45);
    }

    .cms-canvas {
      padding: 16px;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      grid-auto-rows: minmax(34px, 1fr);
      gap: 10px;
    }

    .cms-module {
      position: relative;
      overflow: hidden;
      border: 1px solid rgba(36, 110, 166, .11);
      border-radius: 10px;
      background: rgba(255, 255, 255, .84);
      box-shadow: 0 8px 18px rgba(42, 98, 140, .07);
      animation: cmsModuleFloat 7s ease-in-out infinite alternate;
    }

    .cms-module:nth-child(2) { animation-delay: -2.3s; }
    .cms-module:nth-child(3) { animation-delay: -4.6s; }
    .cms-module--wide { grid-column: 1 / -1; }

    .cms-module::before,
    .cms-module::after {
      content: "";
      position: absolute;
      left: 11px;
      height: 5px;
      border-radius: 5px;
      background: rgba(29, 117, 183, .18);
    }

    .cms-module::before { top: 11px; width: 44%; }
    .cms-module::after { top: 23px; width: 70%; opacity: .55; }

    .cms-chip {
      position: absolute;
      z-index: 2;
      padding: 7px 10px;
      border: 1px solid rgba(30, 123, 192, .16);
      border-radius: 10px;
      color: #1e6fa9;
      background: rgba(248, 253, 255, .82);
      box-shadow: 0 10px 24px rgba(35, 107, 160, .12);
      font-size: 9px;
      font-weight: 500;
      letter-spacing: .12em;
    }

    .cms-chip--seo { top: 13px; right: 16px; }
    .cms-chip--sku { right: 12px; bottom: 15px; }

    .transplatforma-visual {
      isolation: isolate;
      background:
        radial-gradient(circle at 17% 16%, rgba(91, 111, 225, .34), transparent 34%),
        radial-gradient(circle at 86% 84%, rgba(43, 201, 199, .24), transparent 38%),
        linear-gradient(145deg, rgba(249, 251, 255, .98), rgba(221, 232, 250, .9));
    }

    .transplatforma-visual::before {
      content: "";
      position: absolute;
      z-index: 0;
      inset: 0;
      opacity: .42;
      background-image:
        linear-gradient(rgba(66, 92, 166, .09) 1px, transparent 1px),
        linear-gradient(90deg, rgba(66, 92, 166, .09) 1px, transparent 1px);
      background-size: 22px 22px;
      -webkit-mask-image: linear-gradient(135deg, #000, rgba(0, 0, 0, .3) 64%, transparent);
      mask-image: linear-gradient(135deg, #000, rgba(0, 0, 0, .3) 64%, transparent);
    }

    .transplatforma-visual::after {
      content: "";
      position: absolute;
      z-index: 0;
      top: 50%;
      left: 50%;
      width: 62%;
      aspect-ratio: 1;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(78, 224, 218, .2), transparent 68%);
      transform: translate(-50%, -50%) scale(.82);
      animation: transPlatformBreath 5s ease-in-out infinite;
    }

    .trans-platform-panel {
      position: absolute;
      z-index: 1;
      inset: 14px;
      padding: 11px 12px;
      display: grid;
      grid-template-rows: auto minmax(0, 1fr);
      overflow: hidden;
      border: 1px solid rgba(125, 185, 223, .23);
      border-radius: 20px;
      background:
        radial-gradient(circle at 48% 56%, rgba(47, 139, 158, .2), transparent 34%),
        linear-gradient(145deg, rgba(12, 22, 52, .96), rgba(20, 49, 69, .93));
      box-shadow: 0 20px 42px rgba(33, 56, 104, .24), inset 0 1px rgba(255, 255, 255, .08);
      -webkit-backdrop-filter: blur(13px);
      backdrop-filter: blur(13px);
    }

    .trans-platform-panel::before {
      content: "";
      position: absolute;
      z-index: 0;
      inset: 0;
      opacity: .14;
      background-image:
        linear-gradient(rgba(119, 207, 220, .12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(119, 207, 220, .12) 1px, transparent 1px);
      background-size: 18px 18px;
      -webkit-mask-image: radial-gradient(circle at 50% 55%, #000, transparent 78%);
      mask-image: radial-gradient(circle at 50% 55%, #000, transparent 78%);
    }

    .trans-platform-panel::after {
      content: "";
      position: absolute;
      z-index: 0;
      right: -12%;
      left: -12%;
      height: 34%;
      background: linear-gradient(180deg, transparent, rgba(101, 236, 226, .08), transparent);
      animation: transPlatformScan 6.4s linear infinite;
    }

    .trans-platform-toolbar {
      position: relative;
      z-index: 2;
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .trans-platform-mark {
      width: 24px;
      height: 24px;
      flex: 0 0 24px;
      display: grid;
      place-items: center;
      color: rgba(255, 255, 255, .96);
      border: 1px solid rgba(144, 235, 230, .24);
      border-radius: 8px;
      background: linear-gradient(135deg, #5b65db, #25b5b1);
      box-shadow: 0 0 18px rgba(65, 206, 199, .23), 0 7px 16px rgba(15, 24, 56, .34);
      font-size: 8px;
      font-style: normal;
      font-weight: 500;
      letter-spacing: -.02em;
    }

    .trans-platform-toolbar strong {
      min-width: 0;
      overflow: hidden;
      color: rgba(235, 246, 255, .9);
      font-size: 8px;
      font-weight: 500;
      letter-spacing: .11em;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .trans-platform-toolbar span {
      margin-left: auto;
      padding: 4px 6px;
      color: #83ebe3;
      border: 1px solid rgba(77, 214, 205, .25);
      border-radius: 999px;
      background: rgba(48, 177, 173, .1);
      font-size: 7px;
      font-weight: 500;
      letter-spacing: .1em;
      white-space: nowrap;
    }

    .trans-platform-toolbar span::before {
      content: "";
      width: 4px;
      height: 4px;
      margin-right: 4px;
      display: inline-block;
      border-radius: 50%;
      background: #74ece2;
      box-shadow: 0 0 8px rgba(116, 236, 226, .9);
      vertical-align: 1px;
      animation: transNodePulse 2.1s ease-in-out infinite;
    }

    .trans-platform-network {
      position: relative;
      z-index: 2;
      min-height: 0;
      margin-top: 6px;
    }

    .trans-platform-map {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      overflow: visible;
    }

    .trans-network-branch,
    .trans-network-route-halo,
    .trans-network-route {
      fill: none;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .trans-network-branch {
      stroke: rgba(116, 186, 208, .2);
      stroke-width: 1;
      stroke-dasharray: 2 7;
    }

    .trans-network-route-halo {
      stroke: rgba(76, 228, 220, .18);
      stroke-width: 8;
      filter: blur(3px);
    }

    .trans-network-route {
      stroke: url(#transplatforma-route-gradient);
      stroke-width: 1.8;
      opacity: .78;
    }

    .trans-network-pin {
      position: absolute;
      width: 6px;
      height: 6px;
      margin: -3px 0 0 -3px;
      border: 1px solid rgba(202, 255, 251, .62);
      border-radius: 50%;
      background: #78eee4;
      box-shadow: 0 0 7px rgba(97, 239, 227, .8);
      animation: transNodePulse 2.7s ease-in-out infinite;
    }

    .trans-network-pin--from { top: 79%; left: 7%; }
    .trans-network-pin--to { top: 21%; left: 93%; animation-delay: -1.35s; }
    .trans-network-pin--a { top: 20%; left: 29%; }
    .trans-network-pin--b { top: 70%; left: 73%; }
    .trans-network-pin--c { top: 86%; left: 44%; }

    .trans-network-pin--muted {
      width: 4px;
      height: 4px;
      margin: -2px 0 0 -2px;
      border-color: rgba(169, 183, 255, .4);
      background: #7385cf;
      box-shadow: none;
      opacity: .56;
      animation: none;
    }

    .trans-ai-orbit {
      position: absolute;
      top: 50%;
      left: 49%;
      width: 39px;
      height: 39px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      border: 1px solid rgba(122, 235, 228, .28);
      background: rgba(17, 39, 65, .7);
      box-shadow: 0 0 24px rgba(47, 211, 201, .2);
      transform: translate(-50%, -50%);
    }

    .trans-ai-orbit::before,
    .trans-ai-orbit::after {
      content: "";
      position: absolute;
      border-radius: inherit;
    }

    .trans-ai-orbit::before {
      inset: -6px;
      border: 1px dashed rgba(117, 213, 224, .38);
      animation: transAiOrbit 8s linear infinite;
    }

    .trans-ai-orbit::after {
      inset: -11px;
      border: 1px solid rgba(80, 220, 213, .12);
      animation: transAiRing 3.2s ease-out infinite;
    }

    .trans-ai-orbit i {
      position: relative;
      z-index: 1;
      width: 27px;
      height: 27px;
      display: grid;
      place-items: center;
      color: #fff;
      border-radius: 50%;
      background: linear-gradient(135deg, #6970e4, #2bc3b8);
      box-shadow: 0 0 16px rgba(78, 225, 215, .4), inset 0 1px rgba(255, 255, 255, .25);
      font-size: 8px;
      font-style: normal;
      font-weight: 600;
      letter-spacing: .04em;
    }

    .trans-city {
      position: absolute;
      padding: 4px 6px;
      display: grid;
      gap: 1px;
      border: 1px solid rgba(131, 211, 222, .18);
      border-radius: 7px;
      background: rgba(10, 24, 50, .72);
      box-shadow: 0 6px 18px rgba(3, 12, 30, .17);
      -webkit-backdrop-filter: blur(7px);
      backdrop-filter: blur(7px);
    }

    .trans-city--from { left: 1%; bottom: 3%; }
    .trans-city--to { top: 1%; right: 1%; }

    .trans-city small {
      color: rgba(165, 201, 221, .5);
      font-size: 6px;
      letter-spacing: .13em;
      text-transform: uppercase;
    }

    .trans-city b {
      color: rgba(237, 249, 255, .92);
      font-size: 8px;
      font-weight: 500;
      letter-spacing: .04em;
    }

    .trans-carrier-result {
      position: absolute;
      right: 1%;
      bottom: 3%;
      min-width: 91px;
      padding: 5px 6px;
      display: grid;
      grid-template-columns: 12px minmax(0, 1fr) auto;
      gap: 5px;
      align-items: center;
      border: 1px solid rgba(87, 225, 215, .2);
      border-radius: 8px;
      background: rgba(22, 85, 91, .42);
      box-shadow: 0 7px 20px rgba(3, 18, 33, .2);
      -webkit-backdrop-filter: blur(8px);
      backdrop-filter: blur(8px);
    }

    .trans-carrier-result > i {
      width: 12px;
      height: 12px;
      display: grid;
      place-items: center;
      color: #072c30;
      border-radius: 50%;
      background: #72eadf;
      box-shadow: 0 0 8px rgba(101, 235, 224, .5);
      font-size: 8px;
      font-style: normal;
      font-weight: 700;
    }

    .trans-carrier-result span {
      min-width: 0;
      display: grid;
      gap: 1px;
    }

    .trans-carrier-result small {
      overflow: hidden;
      color: rgba(175, 222, 226, .55);
      font-size: 5px;
      letter-spacing: .08em;
      text-overflow: ellipsis;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .trans-carrier-result strong {
      overflow: hidden;
      color: #d8fffb;
      font-size: 7px;
      font-weight: 500;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .trans-carrier-result > b {
      color: #7dece2;
      font-size: 8px;
      font-weight: 500;
    }

    .platform-copy {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      align-content: start;
    }

    .platform-name {
      margin: 0 0 8px;
      color: #122b42;
      font-size: clamp(27px, 2.5vw, 38px);
      font-weight: 500;
      line-height: 1;
      letter-spacing: -.035em;
    }

    .postservice-card .platform-name { color: #cf5322; }
    .flexcore-card .platform-name { color: #126fae; }
    .transplatforma-card .platform-name { color: #4166b3; }

    .platform-description {
      margin: 0;
      max-width: 590px;
      color: #526779;
      font-size: clamp(13px, .95vw, 15px);
      line-height: 1.5;
    }

    .platform-points {
      margin: 12px 0 0;
      padding: 0;
      display: flex;
      flex-wrap: wrap;
      gap: 7px 13px;
      list-style: none;
    }

    .platform-points li {
      position: relative;
      padding-left: 12px;
      color: #3d566a;
      font-size: 10px;
    }

    .platform-points li::before {
      content: "";
      position: absolute;
      top: .48em;
      left: 0;
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: #1b87d2;
    }

    .postservice-card .platform-points li::before { background: #ee6a32; }
    .transplatforma-card .platform-points li::before { background: #398e9f; }

    .platform-link {
      width: fit-content;
      margin-top: 14px;
      display: inline-flex;
      align-items: center;
      gap: 9px;
      color: #176fae;
      font-size: 11px;
      font-weight: 500;
      text-decoration: none;
    }

    .postservice-card .platform-link { color: #d65a28; }
    .transplatforma-card .platform-link { color: #4167b4; }

    .platform-link svg {
      width: 16px;
      height: 16px;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.8;
      transition: transform .25s ease;
    }

    .platform-link:hover svg,
    .platform-link:focus-visible svg { transform: translateX(4px); }

    .platforms-section.reveal-ready .platforms-heading,
    .platforms-section.reveal-ready .platform-card {
      opacity: 0;
      transform: translateY(32px);
      transition: opacity .85s ease, transform .85s cubic-bezier(.2, .75, .2, 1);
    }

    .platforms-section.reveal-ready .platform-card:nth-child(1) { transition-delay: .12s; }
    .platforms-section.reveal-ready .platform-card:nth-child(2) { transition-delay: .24s; }
    .platforms-section.reveal-ready .platform-card:nth-child(3) { transition-delay: .36s; }

    .platforms-section.reveal-ready.is-visible .platforms-heading,
    .platforms-section.reveal-ready.is-visible .platform-card {
      opacity: 1;
      transform: translateY(0);
    }

    body.portfolio-active .main-nav a[href="/platforms/"] { color: rgba(24, 47, 70, .7); }

    .portfolio-section {
      position: relative;
      min-height: 100vh;
      overflow: hidden;
      isolation: isolate;
      scroll-snap-align: start;
      color: #172a3c;
      background:
        radial-gradient(circle at 12% 13%, rgba(239, 121, 63, .13), transparent 26%),
        radial-gradient(circle at 84% 29%, rgba(28, 143, 190, .16), transparent 31%),
        linear-gradient(180deg, #edf4f8 0%, #f8f5ef 18%, #edf2f4 100%);
    }

    .portfolio-section::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -2;
      pointer-events: none;
      opacity: .4;
      background-image:
        linear-gradient(rgba(44, 72, 91, .06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(44, 72, 91, .06) 1px, transparent 1px);
      background-size: 40px 40px;
      mask-image: linear-gradient(180deg, transparent, #000 14%, #000 88%, transparent);
    }

    .portfolio-section::after {
      content: "";
      position: absolute;
      right: -16vw;
      bottom: -41vw;
      z-index: -1;
      width: 74vw;
      aspect-ratio: 1;
      border: 1px solid rgba(17, 116, 161, .1);
      border-radius: 50%;
      pointer-events: none;
      box-shadow:
        0 0 0 7vw rgba(17, 116, 161, .025),
        0 0 0 14vw rgba(17, 116, 161, .018);
    }

    .portfolio-inner {
      position: relative;
      z-index: 1;
      width: min(100%, 1600px);
      min-height: 100vh;
      margin: 0 auto;
      padding: clamp(108px, 12vh, 138px) clamp(30px, 5.2vw, 82px) clamp(44px, 5.5vh, 66px);
      display: grid;
      grid-template-rows: auto 1fr;
      gap: clamp(28px, 4vh, 46px);
    }

    .portfolio-heading {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(300px, 450px);
      gap: clamp(34px, 7vw, 110px);
      align-items: end;
    }

    .portfolio-kicker {
      display: block;
      margin: 0 0 15px;
      color: #b4532b;
      font-size: 11px;
      font-weight: 500;
      letter-spacing: .22em;
      text-transform: uppercase;
    }

    .portfolio-title {
      max-width: 860px;
      margin: 0;
      color: #13293d;
      font-size: clamp(43px, 5vw, 72px);
      font-weight: 500;
      line-height: .96;
      letter-spacing: -.052em;
    }

    .portfolio-title a { color: inherit; text-decoration: none; }
    .portfolio-title a:focus-visible { outline: 2px solid currentColor; outline-offset: 6px; }

    .portfolio-intro {
      margin: 0 0 3px;
      color: #596b78;
      font-size: clamp(15px, 1.15vw, 18px);
      line-height: 1.65;
    }

    .portfolio-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: clamp(18px, 2.5vw, 38px);
      align-items: start;
    }

    .portfolio-project {
      --project-accent: #176fae;
      min-width: 0;
      display: grid;
      grid-template-rows: auto auto auto;
      gap: 15px;
      color: inherit;
      text-decoration: none;
    }

    .portfolio-project:focus-visible { outline: 2px solid var(--project-accent); outline-offset: 7px; }

    .portfolio-project--militant { --project-accent: #bd4e28; }
    .portfolio-project--accessories { --project-accent: #8a6d54; }
    .portfolio-project--vestovoy { --project-accent: #0e7aa5; }

    .project-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
    }

    .project-number {
      color: rgba(32, 58, 77, .38);
      font-size: 12px;
      letter-spacing: .18em;
    }

    .project-type {
      color: #5b6c78;
      font-size: 10px;
      font-weight: 500;
      letter-spacing: .14em;
      text-transform: uppercase;
    }

    .project-preview {
      position: relative;
      display: block;
      color: inherit;
      text-decoration: none;
      border-radius: 25px;
    }

    .project-preview:focus-visible {
      outline: 2px solid var(--project-accent);
      outline-offset: 5px;
    }

    .project-browser {
      position: relative;
      height: clamp(248px, 31vh, 322px);
      overflow: hidden;
      border: 1px solid rgba(54, 75, 89, .15);
      border-radius: 25px;
      background: rgba(255, 255, 255, .76);
      box-shadow: 0 24px 58px rgba(42, 61, 75, .15), inset 0 1px rgba(255, 255, 255, .9);
      transform: translateY(0);
      transition: transform .55s cubic-bezier(.2, .75, .2, 1), box-shadow .55s ease;
    }

    .portfolio-project:hover .project-browser,
    .portfolio-project:focus-visible .project-browser,
    .project-preview:hover .project-browser,
    .project-preview:focus-visible .project-browser {
      transform: translateY(-8px);
      box-shadow: 0 34px 74px rgba(38, 60, 76, .21), inset 0 1px rgba(255, 255, 255, .9);
    }

    .project-browser-bar {
      position: relative;
      z-index: 4;
      height: 38px;
      padding: 0 14px;
      display: flex;
      align-items: center;
      gap: 6px;
      border-bottom: 1px solid rgba(48, 69, 83, .1);
      background: rgba(248, 250, 250, .94);
    }

    .project-browser-bar i {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: rgba(58, 76, 88, .22);
    }

    .project-domain {
      margin-left: auto;
      color: #657682;
      font-size: 9px;
      font-style: normal;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .project-screen {
      position: absolute;
      inset: 38px 0 0;
      overflow: hidden;
    }

    .project-site-header {
      position: absolute;
      inset: 0 0 auto;
      z-index: 3;
      height: 47px;
      padding: 0 17px;
      display: flex;
      align-items: center;
      gap: 14px;
      border-bottom: 1px solid rgba(44, 51, 55, .09);
      background: rgba(255, 255, 255, .94);
    }

    .project-site-logo {
      display: block;
      width: auto;
      max-width: 108px;
      height: 25px;
      object-fit: contain;
      object-position: left center;
    }

    .portfolio-project--accessories .project-site-logo { max-width: 96px; height: 23px; }
    .portfolio-project--vestovoy .project-site-logo { max-width: 126px; height: 34px; }

    .project-site-wordmark {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      color: #0e7aa5;
      font-size: 12px;
      font-weight: 500;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .project-site-wordmark i {
      position: relative;
      width: 25px;
      height: 25px;
      border: 1px solid currentColor;
      border-radius: 50%;
    }

    .project-site-wordmark i::before,
    .project-site-wordmark i::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 4px;
      right: 4px;
      height: 1px;
      background: currentColor;
      transform: rotate(18deg);
    }

    .project-site-wordmark i::after { transform: rotate(-18deg); }

    .project-site-nav {
      margin-left: auto;
      display: flex;
      gap: 6px;
    }

    .project-site-nav i {
      display: block;
      width: 24px;
      height: 3px;
      border-radius: 3px;
      background: rgba(49, 62, 70, .16);
    }

    .project-screen-image {
      position: absolute;
      inset: 47px 0 0;
      display: block;
      width: 100%;
      height: calc(100% - 47px);
      object-fit: cover;
      transition: transform 1s cubic-bezier(.2, .75, .2, 1), filter .55s ease;
    }

    .portfolio-project--militant .project-screen-image {
      object-position: center 61%;
      filter: saturate(.88) contrast(1.06);
    }
    .portfolio-project--accessories .project-screen-image { object-position: center; }

    .project-preview:hover .project-screen-image,
    .project-preview:focus-visible .project-screen-image { transform: scale(1.045); }

    .project-screen-shade {
      position: absolute;
      inset: 47px 0 0;
      z-index: 2;
      pointer-events: none;
      background: linear-gradient(180deg, transparent 58%, rgba(12, 19, 23, .54));
    }

    .project-screen-label {
      position: absolute;
      left: 17px;
      bottom: 15px;
      z-index: 3;
      color: #fff;
      font-size: 10px;
      font-weight: 500;
      letter-spacing: .12em;
      text-transform: uppercase;
      text-shadow: 0 2px 12px rgba(0, 0, 0, .4);
    }

    .vestovoy-screen {
      background:
        radial-gradient(circle at 72% 45%, rgba(255, 255, 255, .16), transparent 34%),
        linear-gradient(135deg, #00a3d3 0%, #0e7aa5 100%);
    }

    .portfolio-project--vestovoy .project-site-header {
      border-bottom-color: rgba(14, 122, 165, .12);
      background: rgba(250, 253, 254, .96);
    }

    .vestovoy-copy {
      position: absolute;
      top: 74px;
      left: 21px;
      z-index: 3;
      width: 53%;
      color: #fff;
    }

    .vestovoy-page-number {
      display: block;
      margin-bottom: 14px;
      color: rgba(255, 255, 255, .7);
      font-size: 9px;
      letter-spacing: .18em;
    }

    .vestovoy-copy strong {
      display: block;
      font-size: clamp(18px, 1.8vw, 27px);
      font-weight: 500;
      line-height: 1.05;
      letter-spacing: -.035em;
    }

    .vestovoy-copy small {
      display: block;
      margin-top: 12px;
      color: rgba(255, 255, 255, .78);
      font-size: 9px;
      line-height: 1.45;
    }

    .vestovoy-globe {
      position: absolute;
      right: -7%;
      bottom: -24%;
      width: 64%;
      aspect-ratio: 1;
      border: 1px solid rgba(255, 255, 255, .52);
      border-radius: 50%;
      box-shadow: inset 22px -16px 48px rgba(1, 50, 78, .16), 0 18px 40px rgba(1, 51, 76, .18);
      animation: portfolioGlobeSpin 20s linear infinite;
    }

    .vestovoy-globe::before,
    .vestovoy-globe::after {
      content: "";
      position: absolute;
      inset: 13% 0;
      border: 1px solid rgba(255, 255, 255, .35);
      border-radius: 50%;
    }

    .vestovoy-globe::after {
      inset: 0 29%;
    }

    .vestovoy-equator,
    .vestovoy-route {
      position: absolute;
      left: 4%;
      right: 4%;
      top: 50%;
      height: 1px;
      background: rgba(255, 255, 255, .34);
      transform: rotate(-12deg);
    }

    .vestovoy-route {
      left: 18%;
      right: 13%;
      top: 42%;
      height: 42%;
      border: 1px solid rgba(239, 96, 102, .92);
      border-left-color: transparent;
      border-bottom-color: transparent;
      border-radius: 50%;
      background: none;
      transform: rotate(19deg);
    }

    .vestovoy-route::after {
      content: "";
      position: absolute;
      top: -4px;
      right: 13%;
      width: 7px;
      height: 7px;
      border: 2px solid #fff;
      border-radius: 50%;
      background: #e96066;
      box-shadow: 0 0 0 5px rgba(233, 96, 102, .25);
      animation: portfolioRoutePulse 1.8s ease-in-out infinite;
    }

    .vestovoy-arrows {
      position: absolute;
      right: 25%;
      bottom: 16px;
      z-index: 2;
      display: flex;
      gap: 0;
      opacity: .7;
    }

    .vestovoy-arrows i {
      width: 18px;
      height: 18px;
      border-top: 2px solid rgba(255, 255, 255, .78);
      border-right: 2px solid rgba(255, 255, 255, .78);
      transform: rotate(45deg);
      animation: portfolioArrowDrift 1.8s ease-in-out infinite;
    }

    .vestovoy-arrows i:nth-child(2) { animation-delay: .15s; }
    .vestovoy-arrows i:nth-child(3) { animation-delay: .3s; }

    .project-meta {
      min-width: 0;
      padding: 0 4px;
    }

    .project-title-row {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 13px;
    }

    .project-name {
      margin: 0;
      color: #172b3d;
      font-size: clamp(27px, 2.25vw, 35px);
      font-weight: 500;
      line-height: 1;
      letter-spacing: -.04em;
    }

    .project-category {
      flex: 0 0 auto;
      color: var(--project-accent);
      font-size: 9px;
      font-weight: 500;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .project-description {
      margin: 13px 0 0;
      color: #596b78;
      font-size: clamp(12px, .95vw, 14px);
      line-height: 1.58;
    }

    .project-footer {
      margin-top: 15px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
    }

    .project-tags {
      margin: 0;
      padding: 0;
      display: flex;
      flex-wrap: wrap;
      gap: 7px 12px;
      list-style: none;
    }

    .project-tags li {
      position: relative;
      padding-left: 9px;
      color: #506473;
      font-size: 9px;
    }

    .project-tags li::before {
      content: "";
      position: absolute;
      top: .48em;
      left: 0;
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background: var(--project-accent);
    }

    .project-link {
      flex: 0 0 auto;
      display: inline-flex;
      align-items: center;
      gap: 7px;
      color: var(--project-accent);
      font-size: 10px;
      font-weight: 500;
      text-decoration: none;
    }

    .project-link svg {
      width: 14px;
      height: 14px;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.8;
      transition: transform .25s ease;
    }

    .project-link:hover svg,
    .project-link:focus-visible svg,
    .portfolio-project:hover .project-link svg,
    .portfolio-project:focus-visible .project-link svg { transform: translateX(3px); }

    .portfolio-section.reveal-ready .portfolio-heading,
    .portfolio-section.reveal-ready .portfolio-project {
      opacity: 0;
      transform: translateY(34px);
      transition: opacity .85s ease, transform .85s cubic-bezier(.2, .75, .2, 1);
    }

    .portfolio-section.reveal-ready .portfolio-project:nth-child(1) { transition-delay: .08s; }
    .portfolio-section.reveal-ready .portfolio-project:nth-child(2) { transition-delay: .18s; }
    .portfolio-section.reveal-ready .portfolio-project:nth-child(3) { transition-delay: .28s; }

    .portfolio-section.reveal-ready.is-visible .portfolio-heading,
    .portfolio-section.reveal-ready.is-visible .portfolio-project {
      opacity: 1;
      transform: translateY(0);
    }

    .site-header::before {
      transition: opacity .95s ease, background .95s ease, box-shadow .95s ease;
    }

    body.portfolio-active {
      color: #edf4f7;
      background: #111318;
    }

    body.portfolio-active .site-header::before {
      opacity: 1;
      background: linear-gradient(180deg, rgba(11, 14, 19, .97) 0%, rgba(13, 17, 23, .9) 72%, rgba(13, 17, 23, 0) 100%);
      box-shadow: 0 12px 38px rgba(0, 0, 0, .24);
    }

    body.portfolio-active .mini-logo {
      filter: drop-shadow(0 0 9px rgba(79, 205, 255, .38));
    }

    body.portfolio-active .main-nav a,
    body.portfolio-active .main-nav a[href="/platforms/"] { color: rgba(220, 232, 242, .68); }

    body.portfolio-active .main-nav a:hover,
    body.portfolio-active .main-nav a:focus-visible { color: #f2f9ff; }

    body.portfolio-active .header-actions .primary {
      color: #ecf9ff;
      border-color: rgba(72, 183, 255, .36);
      background: linear-gradient(180deg, rgba(18, 106, 178, .9), rgba(7, 54, 99, .96));
      box-shadow: 0 8px 26px rgba(0, 83, 153, .24), inset 0 1px rgba(255, 255, 255, .12);
    }

    .portfolio-section {
      color: #edf4f7;
      background:
        radial-gradient(circle at 16% 13%, rgba(203, 78, 35, .2), transparent 29%),
        radial-gradient(circle at 83% 35%, rgba(0, 153, 210, .2), transparent 34%),
        linear-gradient(145deg, #111318 0%, #181c22 48%, #0c1118 100%);
    }

    .portfolio-transition {
      --transition-grid-opacity: 0;
      --transition-cut-opacity: 0;
      --transition-scan-opacity: 0;
      --transition-left-shift: -64px;
      --transition-right-shift: 64px;
      --transition-grid-y: -18px;
      --transition-scan-y: 26px;
      position: absolute;
      inset: 0 0 auto;
      z-index: 0;
      height: 210px;
      overflow: hidden;
      pointer-events: none;
      opacity: 1;
      background: linear-gradient(180deg,
        #edf4f8 0,
        rgba(237, 244, 248, .98) 14px,
        rgba(207, 217, 223, .9) 48px,
        rgba(126, 137, 145, .64) 92px,
        rgba(42, 48, 55, .38) 138px,
        rgba(17, 19, 24, 0) 198px);
      transition: opacity .12s linear;
    }

    .portfolio-transition::before {
      content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      opacity: var(--transition-grid-opacity);
      background-image:
        repeating-linear-gradient(90deg, transparent 0 79px, rgba(61, 188, 230, .2) 79px 80px),
        repeating-linear-gradient(0deg, transparent 0 39px, rgba(35, 144, 187, .14) 39px 40px),
        repeating-linear-gradient(135deg, transparent 0 31px, rgba(255, 255, 255, .12) 31px 32px, transparent 32px 64px);
      clip-path: polygon(0 0, 100% 0, 100% 62%, 93% 62%, 89% 74%, 74% 74%, 69% 86%, 55% 86%, 50% 100%, 45% 86%, 31% 86%, 26% 74%, 11% 74%, 7% 62%, 0 62%);
      -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 22%, #000 84%, transparent 100%);
      mask-image: linear-gradient(180deg, transparent 0, #000 22%, #000 84%, transparent 100%);
      transform: translateY(var(--transition-grid-y));
      transition: opacity .12s linear, transform .12s linear;
    }

    .portfolio-transition-cut {
      position: absolute;
      bottom: 0;
      width: 54%;
      height: 158px;
      opacity: var(--transition-cut-opacity);
      background:
        repeating-linear-gradient(117deg, rgba(255, 255, 255, .035) 0 1px, transparent 1px 34px),
        linear-gradient(155deg, rgba(21, 28, 36, .08), rgba(12, 18, 25, .88) 66%, #0d131b 100%);
      transition: opacity .12s linear, transform .12s linear;
    }

    .portfolio-transition-cut--left {
      left: 0;
      clip-path: polygon(0 26%, 72% 26%, 100% 64%, 92% 100%, 0 100%);
      transform: translateX(var(--transition-left-shift));
    }

    .portfolio-transition-cut--right {
      right: 0;
      clip-path: polygon(28% 26%, 100% 26%, 100% 100%, 8% 100%, 0 64%);
      transform: translateX(var(--transition-right-shift));
    }

    .portfolio-transition-scan {
      position: absolute;
      top: var(--transition-scan-y);
      left: 7%;
      right: 7%;
      z-index: 2;
      height: 1px;
      opacity: var(--transition-scan-opacity);
      background: linear-gradient(90deg, transparent, rgba(58, 190, 230, .28) 22%, #dffaff 50%, rgba(58, 190, 230, .28) 78%, transparent);
      box-shadow: 0 0 12px rgba(66, 208, 255, .46);
      transition: top .12s linear, opacity .12s linear;
    }

    .portfolio-transition-scan::before {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 7px;
      height: 7px;
      border: 1px solid rgba(137, 232, 255, .9);
      border-radius: 50%;
      background: #132630;
      box-shadow: 0 0 10px rgba(74, 213, 255, .82);
      transform: translate(-50%, -50%);
    }

    .portfolio-transition-scan::after {
      content: "";
      position: absolute;
      top: -1px;
      left: 0;
      width: clamp(90px, 13vw, 180px);
      height: 3px;
      background: linear-gradient(90deg, transparent, rgba(116, 228, 255, .96), transparent);
      filter: blur(.2px) drop-shadow(0 0 5px rgba(60, 202, 255, .76));
      animation: transitionSignalSweep 3.8s linear infinite;
    }

    .portfolio-section::before {
      z-index: -2;
      opacity: .26;
      background-image:
        repeating-linear-gradient(117deg, rgba(255, 255, 255, .055) 0 1px, transparent 1px 42px),
        linear-gradient(90deg, transparent 49.9%, rgba(87, 203, 242, .13) 50%, transparent 50.1%);
      background-size: auto, 100% 100%;
      mask-image: linear-gradient(180deg, transparent, #000 12%, #000 92%, transparent);
    }

    .portfolio-section::after {
      content: "03";
      right: -.04em;
      bottom: -.27em;
      z-index: -1;
      width: auto;
      aspect-ratio: auto;
      border: 0;
      border-radius: 0;
      color: transparent;
      -webkit-text-stroke: 1px rgba(193, 224, 237, .08);
      box-shadow: none;
      font-size: min(58vw, 760px);
      font-weight: 500;
      line-height: 1;
      letter-spacing: -.12em;
    }

    .portfolio-inner {
      z-index: 1;
      padding-top: clamp(106px, 11.5vh, 132px);
      gap: clamp(24px, 3.4vh, 40px);
    }

    .portfolio-heading {
      grid-template-columns: minmax(0, 1.15fr) minmax(300px, .7fr);
      align-items: end;
    }

    .portfolio-kicker { color: #ef7c4f; }

    .portfolio-title {
      color: #f2f6f8;
      font-size: clamp(43px, 5.2vw, 76px);
      letter-spacing: -.058em;
    }

    .portfolio-intro { color: rgba(213, 226, 234, .68); }

    .portfolio-grid {
      grid-template-columns: minmax(0, 1.12fr) repeat(2, minmax(0, .94fr));
      gap: clamp(22px, 3vw, 46px);
      align-items: start;
    }

    .portfolio-project {
      position: relative;
      gap: 13px;
    }

    .portfolio-project:nth-child(2) { margin-top: clamp(24px, 3.6vh, 40px); }
    .portfolio-project:nth-child(3) { margin-top: clamp(8px, 1.4vh, 16px); }

    .project-head {
      min-height: 38px;
      padding-top: 10px;
      border-top: 1px solid rgba(222, 236, 243, .2);
      align-items: flex-start;
    }

    .project-number {
      color: rgba(233, 241, 245, .28);
      font-size: 27px;
      font-weight: 500;
      line-height: .8;
      letter-spacing: -.03em;
    }

    .project-type { color: rgba(217, 230, 237, .58); }

    .project-preview { border-radius: 3px; }

    .project-browser {
      height: clamp(228px, 30vh, 312px);
      border-color: rgba(223, 237, 244, .2);
      border-radius: 3px;
      background: #080a0d;
      box-shadow: 0 24px 52px rgba(0, 0, 0, .28);
    }

    .portfolio-project:nth-child(1) .project-browser { transform: rotate(-.5deg); }
    .portfolio-project:nth-child(2) .project-browser { transform: rotate(.65deg); }
    .portfolio-project:nth-child(3) .project-browser { transform: rotate(-.35deg); }

    .portfolio-project:hover .project-browser,
    .portfolio-project:focus-visible .project-browser,
    .project-preview:hover .project-browser,
    .project-preview:focus-visible .project-browser {
      transform: translateY(-7px) rotate(0);
      box-shadow: 0 32px 72px rgba(0, 0, 0, .43), 0 0 0 1px color-mix(in srgb, var(--project-accent) 38%, transparent);
    }

    .project-browser-bar {
      border-bottom-color: rgba(235, 244, 248, .12);
      background: rgba(8, 10, 13, .96);
    }

    .project-browser-bar i { background: var(--project-accent); opacity: .72; }
    .project-domain { color: rgba(226, 237, 242, .62); }

    .project-meta {
      padding: 2px 2px 0;
      border-bottom: 1px solid rgba(222, 236, 243, .12);
      padding-bottom: 14px;
    }

    .project-name { color: #f1f5f7; }
    .project-description { color: rgba(210, 223, 230, .7); }
    .project-tags li { color: rgba(211, 224, 231, .6); }

    .section-circuit {
      position: absolute;
      inset: 0;
      z-index: 0;
      display: block;
      width: 100%;
      height: 100%;
      overflow: visible;
      pointer-events: none;
    }

    .platforms-section > .section-circuit { opacity: .66; }
    .portfolio-section > .section-circuit { opacity: .9; }

    .section-circuit-trace,
    .section-circuit-current {
      fill: none;
      stroke-linecap: round;
      stroke-linejoin: round;
      vector-effect: non-scaling-stroke;
    }

    .section-circuit-trace {
      stroke-width: 1.25;
      opacity: .58;
    }

    .section-circuit-current {
      stroke-width: 2;
      stroke-dasharray: 3 97;
      animation: sectionCurrentRun 3.2s linear infinite;
      filter: drop-shadow(0 0 4px rgba(71, 205, 255, .82));
    }

    .section-circuit-current:nth-child(2n) { animation-delay: -1.15s; }
    .section-circuit-current:nth-child(3n) { animation-delay: -2.2s; }

    .section-circuit-node {
      fill: #f4fbff;
      stroke: #1785bd;
      stroke-width: 1.4;
      vector-effect: non-scaling-stroke;
      transform-box: fill-box;
      transform-origin: center;
      transform: scale(var(--circuit-node-scale-x, 1), var(--circuit-node-scale-y, 1));
      filter: drop-shadow(0 0 4px rgba(52, 177, 230, .55));
      animation: sectionNodePulse 2.8s ease-in-out infinite;
    }

    .section-circuit--portfolio .section-circuit-node {
      fill: #111820;
      stroke: #70e4ff;
      filter: drop-shadow(0 0 5px rgba(86, 222, 255, .75));
    }

    body.news-active {
      color: #142b3e;
      background: #eef5f8;
    }

    body.news-active .site-header::before {
      opacity: 1;
      background: linear-gradient(180deg, rgba(248, 252, 253, .97) 0%, rgba(241, 248, 251, .9) 72%, rgba(241, 248, 251, 0) 100%);
      box-shadow: 0 12px 38px rgba(38, 81, 105, .1);
    }

    body.news-active .mini-logo {
      filter: brightness(.58) saturate(1.55) drop-shadow(0 2px 8px rgba(18, 104, 158, .18));
    }

    body.news-active .main-nav a,
    body.news-active .main-nav a[href="/platforms/"] { color: rgba(27, 58, 78, .68); }

    body.news-active .main-nav a:hover,
    body.news-active .main-nav a:focus-visible { color: #0875aa; }

    body.news-active .header-actions .primary {
      color: #f8fdff;
      border-color: rgba(19, 119, 171, .26);
      background: linear-gradient(180deg, #1789bc, #0a6799);
      box-shadow: 0 8px 25px rgba(12, 112, 165, .2), inset 0 1px rgba(255, 255, 255, .22);
    }

    body.news-active .section-nav {
      --section-nav-line: rgba(24, 112, 155, .28);
      --section-nav-line-hot: #0a7faf;
      --section-nav-node: rgba(246, 251, 253, .84);
      --section-nav-node-border: rgba(23, 111, 153, .3);
      --section-nav-text: rgba(39, 78, 99, .6);
      --section-nav-text-hot: #075d87;
      --section-nav-label: rgba(239, 247, 250, .88);
    }

    .news-section {
      position: relative;
      min-height: 100vh;
      overflow: hidden;
      isolation: isolate;
      scroll-snap-align: start;
      color: #142b3e;
      background:
        radial-gradient(circle at 13% 23%, rgba(22, 143, 191, .17), transparent 31%),
        radial-gradient(circle at 83% 57%, rgba(235, 105, 50, .14), transparent 35%),
        linear-gradient(145deg, #d9e8ee 0%, #f9fbfc 23%, #edf4f7 100%);
    }

    .news-section::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -2;
      pointer-events: none;
      opacity: .48;
      background-image:
        linear-gradient(rgba(39, 112, 145, .075) 1px, transparent 1px),
        linear-gradient(90deg, rgba(39, 112, 145, .075) 1px, transparent 1px),
        repeating-linear-gradient(135deg, transparent 0 34px, rgba(29, 88, 116, .025) 34px 35px);
      background-size: 42px 42px, 42px 42px, auto;
      -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 14%, #000 91%, transparent 100%);
      mask-image: linear-gradient(180deg, transparent 0, #000 14%, #000 91%, transparent 100%);
    }

    .news-section::after {
      content: "04";
      position: absolute;
      right: -.045em;
      bottom: -.3em;
      z-index: -1;
      pointer-events: none;
      color: transparent;
      -webkit-text-stroke: 1px rgba(27, 112, 149, .08);
      font-size: min(58vw, 760px);
      font-weight: 500;
      line-height: 1;
      letter-spacing: -.12em;
    }

    .news-transition {
      position: absolute;
      inset: 0 0 auto;
      z-index: 0;
      height: 150px;
      overflow: hidden;
      pointer-events: none;
      background: linear-gradient(180deg, #0c1118 0, rgba(24, 31, 38, .94) 18px, rgba(100, 116, 125, .68) 45px, rgba(202, 216, 222, .46) 78px, transparent 132px);
    }

    .news-transition::before {
      content: "";
      position: absolute;
      top: 37px;
      left: -12%;
      width: 124%;
      height: 1px;
      opacity: .56;
      background: linear-gradient(90deg, transparent, rgba(60, 176, 214, .2) 20%, #d8f8ff 50%, rgba(60, 176, 214, .2) 80%, transparent);
      box-shadow: 0 0 11px rgba(58, 185, 222, .34);
      transform: rotate(-1.2deg);
    }

    .news-transition::after {
      content: "";
      position: absolute;
      top: 32px;
      left: -8vw;
      width: clamp(100px, 14vw, 210px);
      height: 10px;
      opacity: .9;
      background: radial-gradient(ellipse at center, rgba(235, 253, 255, .96), rgba(53, 179, 216, .3) 34%, transparent 72%);
      filter: blur(.5px) drop-shadow(0 0 8px rgba(48, 174, 212, .58));
      animation: newsTransitionPulse 5.4s linear infinite;
    }

    .news-inner {
      position: relative;
      z-index: 1;
      width: min(100%, 1600px);
      min-height: 100vh;
      margin: 0 auto;
      padding: clamp(108px, 11.5vh, 136px) clamp(30px, 5.2vw, 82px) clamp(48px, 6vh, 76px);
      display: grid;
      grid-template-rows: auto 1fr;
      gap: clamp(28px, 4vh, 46px);
    }

    .news-heading {
      display: grid;
      grid-template-columns: minmax(0, 1.15fr) minmax(300px, .68fr);
      gap: clamp(34px, 7vw, 110px);
      align-items: end;
    }

    .news-kicker {
      display: block;
      margin: 0 0 15px;
      color: #0879aa;
      font-size: 11px;
      font-weight: 500;
      letter-spacing: .22em;
      text-transform: uppercase;
    }

    .news-title {
      max-width: 980px;
      margin: 0;
      color: #132d41;
      font-size: clamp(43px, 5.15vw, 76px);
      font-weight: 500;
      line-height: .96;
      letter-spacing: -.058em;
    }

    .news-title em {
      color: #db6837;
      font-style: normal;
    }

    .news-intro {
      margin: 0 0 3px;
      color: #566c7a;
      font-size: clamp(15px, 1.15vw, 18px);
      line-height: 1.65;
    }

    .news-layout {
      min-height: 0;
      display: grid;
      grid-template-columns: minmax(0, 1.32fr) minmax(340px, .68fr);
      gap: clamp(20px, 2.5vw, 38px);
      align-items: stretch;
    }

    .news-lead,
    .news-story {
      color: inherit;
      text-decoration: none;
    }

    .news-lead {
      position: relative;
      min-width: 0;
      min-height: clamp(405px, 51vh, 535px);
      overflow: hidden;
      display: grid;
      grid-template-columns: minmax(220px, .43fr) minmax(0, .57fr);
      border: 1px solid rgba(39, 111, 145, .18);
      border-radius: 5px;
      background: rgba(250, 253, 254, .76);
      box-shadow: 0 30px 72px rgba(47, 77, 92, .14), inset 0 1px rgba(255, 255, 255, .78);
      -webkit-backdrop-filter: blur(14px) saturate(116%);
      backdrop-filter: blur(14px) saturate(116%);
      transition: border-color .45s ease, box-shadow .45s ease, transform .55s cubic-bezier(.2, .75, .2, 1);
    }

    .news-lead::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 3;
      pointer-events: none;
      opacity: .42;
      background:
        repeating-linear-gradient(0deg, transparent 0 3px, rgba(23, 111, 151, .04) 3px 4px),
        linear-gradient(90deg, transparent 42.7%, rgba(30, 133, 174, .16) 43%, transparent 43.3%);
      mix-blend-mode: multiply;
    }

    .news-lead::after {
      content: "";
      position: absolute;
      top: -1px;
      right: -1px;
      z-index: 4;
      width: 42px;
      height: 42px;
      border-left: 1px solid rgba(22, 120, 163, .28);
      border-bottom: 1px solid rgba(22, 120, 163, .28);
      background: #f2f8fa;
      clip-path: polygon(0 0, 100% 100%, 100% 0);
    }

    .news-lead:hover,
    .news-lead:focus-visible {
      border-color: rgba(20, 130, 174, .44);
      box-shadow: 0 38px 88px rgba(44, 77, 94, .2), 0 0 34px rgba(31, 151, 193, .08), inset 0 1px rgba(255, 255, 255, .92);
      transform: translateY(-7px);
    }

    .news-lead:focus-visible,
    .news-story:focus-visible,
    .news-archive-link:focus-visible {
      outline: 1px solid #1688b7;
      outline-offset: 5px;
    }

    .news-lead-media {
      position: relative;
      min-height: 100%;
      overflow: hidden;
      background: #d8e8ee;
    }

    .news-lead-media::after {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(180deg, rgba(244, 250, 252, .02), rgba(234, 244, 248, .18)),
        linear-gradient(90deg, transparent 72%, rgba(246, 251, 252, .82));
      pointer-events: none;
    }

    .news-lead-image,
    .news-story-image {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 1s cubic-bezier(.2, .7, .2, 1), filter .6s ease;
    }

    .news-lead-image {
      object-position: center 38%;
      filter: saturate(.86) contrast(1.02) brightness(.95);
    }

    .news-lead:hover .news-lead-image,
    .news-lead:focus-visible .news-lead-image { transform: scale(1.045); filter: saturate(1) contrast(1.03) brightness(1); }

    .news-lead-copy {
      position: relative;
      z-index: 2;
      padding: clamp(28px, 3.3vw, 52px);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 28px;
    }

    .news-card-top,
    .news-story-top {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
    }

    .news-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      color: #087aa8;
      font-size: 9px;
      font-weight: 500;
      letter-spacing: .17em;
      text-transform: uppercase;
    }

    .news-badge::before {
      content: "";
      width: 5px;
      height: 5px;
      flex: 0 0 5px;
      border-radius: 50%;
      background: #1595c5;
      box-shadow: 0 0 8px rgba(26, 151, 197, .44);
      animation: newsBadgePulse 2.6s ease-in-out infinite;
    }

    .news-date {
      color: rgba(54, 83, 100, .54);
      font-size: 10px;
      letter-spacing: .12em;
      white-space: nowrap;
    }

    .news-lead-title {
      max-width: 650px;
      margin: 0;
      color: #142f43;
      font-size: clamp(31px, 3.15vw, 50px);
      font-weight: 500;
      line-height: 1.02;
      letter-spacing: -.045em;
    }

    .news-lead-text {
      max-width: 650px;
      margin: 20px 0 0;
      color: #526a79;
      font-size: clamp(14px, 1vw, 16px);
      line-height: 1.65;
    }

    .news-read-more {
      width: fit-content;
      display: inline-flex;
      align-items: center;
      gap: 10px;
      color: #087aa9;
      font-size: 11px;
      font-weight: 500;
      letter-spacing: .04em;
    }

    .news-read-more svg {
      width: 17px;
      height: 17px;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.7;
      transition: transform .3s ease;
    }

    .news-lead:hover .news-read-more svg,
    .news-lead:focus-visible .news-read-more svg,
    .news-story:hover .news-read-more svg,
    .news-story:focus-visible .news-read-more svg { transform: translateX(4px); }

    .news-side {
      min-width: 0;
      display: grid;
      grid-template-rows: repeat(2, minmax(0, 1fr)) auto;
      gap: 14px;
    }

    .news-story {
      min-width: 0;
      overflow: hidden;
      display: grid;
      grid-template-columns: minmax(128px, .42fr) minmax(0, .58fr);
      border-top: 1px solid rgba(37, 115, 151, .2);
      border-bottom: 1px solid rgba(37, 115, 151, .1);
      background: linear-gradient(90deg, rgba(249, 252, 253, .86), rgba(238, 247, 250, .68));
      transition: background .4s ease, border-color .4s ease, transform .45s cubic-bezier(.2, .75, .2, 1);
    }

    .news-story:hover,
    .news-story:focus-visible {
      border-top-color: rgba(18, 129, 173, .5);
      background: linear-gradient(90deg, rgba(255, 255, 255, .94), rgba(232, 245, 249, .82));
      transform: translateX(-6px);
    }

    .news-story-media {
      position: relative;
      min-height: 154px;
      overflow: hidden;
      background: #dce9ee;
    }

    .news-story-media::after {
      content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      background: linear-gradient(90deg, transparent 58%, rgba(241, 248, 250, .76));
    }

    .news-story-image {
      object-position: center;
      filter: saturate(.78) brightness(.92) contrast(1.03);
    }

    .news-story:hover .news-story-image,
    .news-story:focus-visible .news-story-image { transform: scale(1.06); filter: saturate(.98) brightness(1) contrast(1.02); }

    .news-story-copy {
      min-width: 0;
      padding: clamp(18px, 1.8vw, 27px);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 18px;
    }

    .news-story-top .news-badge { color: rgba(10, 112, 151, .76); }
    .news-story-top .news-badge::before { width: 4px; height: 4px; flex-basis: 4px; }

    .news-story-title {
      margin: 0;
      color: #173247;
      font-size: clamp(20px, 1.65vw, 27px);
      font-weight: 500;
      line-height: 1.08;
      letter-spacing: -.032em;
    }

    .news-story-text {
      margin: 10px 0 0;
      color: #5a707d;
      font-size: 12px;
      line-height: 1.55;
    }

    .news-story .news-read-more {
      color: rgba(7, 116, 157, .82);
      font-size: 10px;
    }

    .news-archive {
      min-height: 52px;
      padding: 13px 0 0;
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 20px;
      border-top: 1px solid rgba(37, 115, 151, .17);
    }

    .news-archive-label {
      color: rgba(53, 82, 98, .5);
      font-size: 9px;
      letter-spacing: .18em;
      text-transform: uppercase;
    }

    .news-archive-links {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-end;
      gap: 9px 16px;
    }

    .news-archive-link {
      position: relative;
      color: rgba(27, 85, 113, .74);
      font-size: 10px;
      text-decoration: none;
      transition: color .25s ease;
    }

    .news-archive-link::before {
      content: "";
      position: absolute;
      top: .48em;
      left: -9px;
      width: 3px;
      height: 3px;
      border-radius: 50%;
      background: #1689b8;
      box-shadow: 0 0 5px rgba(24, 137, 184, .36);
    }

    .news-archive-link:hover,
    .news-archive-link:focus-visible { color: #064f75; }

    .news-section > .section-circuit { opacity: .66; }

    .section-circuit--news .section-circuit-node {
      fill: #f6fcfe;
      stroke: #1687b5;
      filter: drop-shadow(0 0 4px rgba(32, 142, 186, .46));
    }

    .news-section.reveal-ready .news-heading,
    .news-section.reveal-ready .news-lead,
    .news-section.reveal-ready .news-side {
      opacity: 0;
      transform: translateY(34px);
      transition: opacity .85s ease, transform .85s cubic-bezier(.2, .75, .2, 1);
    }

    .news-section.reveal-ready .news-lead { transition-delay: .1s; }
    .news-section.reveal-ready .news-side { transition-delay: .22s; }

    .news-section.reveal-ready.is-visible .news-heading,
    .news-section.reveal-ready.is-visible .news-lead,
    .news-section.reveal-ready.is-visible .news-side {
      opacity: 1;
      transform: translateY(0);
    }

    .news-section.reveal-ready.is-visible .news-lead:hover,
    .news-section.reveal-ready.is-visible .news-lead:focus-visible { transform: translateY(-7px); }

    body.contact-active {
      color: #102d41;
      background: #e4eff4;
    }

    body.contact-active .site-header::before {
      opacity: 1;
      background: linear-gradient(180deg, rgba(247, 252, 254, .98) 0%, rgba(236, 246, 250, .91) 72%, rgba(236, 246, 250, 0) 100%);
      box-shadow: 0 12px 38px rgba(29, 77, 105, .09);
    }

    body.contact-active .mini-logo {
      filter: brightness(.55) saturate(1.65) drop-shadow(0 2px 8px rgba(16, 103, 162, .2));
    }

    body.contact-active .main-nav a,
    body.contact-active .main-nav a[href="/platforms/"] { color: rgba(25, 58, 79, .68); }

    body.contact-active .main-nav a:hover,
    body.contact-active .main-nav a:focus-visible { color: #0874ad; }

    body.contact-active .header-actions .primary {
      color: #f7fdff;
      border-color: rgba(15, 111, 174, .28);
      background: linear-gradient(180deg, #1688c9, #075f98);
      box-shadow: 0 8px 25px rgba(10, 100, 158, .2), inset 0 1px rgba(255, 255, 255, .22);
    }

    body.contact-active .section-nav {
      --section-nav-line: rgba(19, 105, 156, .3);
      --section-nav-line-hot: #087fbe;
      --section-nav-node: rgba(244, 251, 254, .86);
      --section-nav-node-border: rgba(15, 105, 158, .3);
      --section-nav-text: rgba(32, 75, 101, .62);
      --section-nav-text-hot: #075e8d;
      --section-nav-label: rgba(235, 246, 251, .9);
    }

    .contact-section {
      --contact-accent: #087dbb;
      --contact-accent-bright: #35c5ed;
      position: relative;
      min-height: 100vh;
      overflow: hidden;
      isolation: isolate;
      scroll-snap-align: start;
      color-scheme: light;
      color: #102d41;
      background:
        radial-gradient(circle at 76% 28%, rgba(29, 167, 212, .18), transparent 30%),
        radial-gradient(circle at 17% 73%, rgba(28, 111, 174, .12), transparent 34%),
        linear-gradient(146deg, #edf5f8 0%, #dbeaf0 48%, #e9f3f7 100%);
    }

    .contact-section::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -2;
      pointer-events: none;
      opacity: .58;
      background-image:
        linear-gradient(rgba(24, 102, 142, .07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(24, 102, 142, .07) 1px, transparent 1px),
        repeating-linear-gradient(135deg, transparent 0 34px, rgba(15, 91, 130, .024) 34px 35px);
      background-size: 44px 44px, 44px 44px, auto;
      -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 13%, #000 92%, transparent 100%);
      mask-image: linear-gradient(180deg, transparent 0, #000 13%, #000 92%, transparent 100%);
    }

    .contact-section::after {
      content: "05";
      position: absolute;
      right: -.055em;
      bottom: -.31em;
      z-index: -1;
      pointer-events: none;
      color: transparent;
      -webkit-text-stroke: 1px rgba(20, 102, 143, .08);
      font-size: min(58vw, 760px);
      font-weight: 500;
      line-height: 1;
      letter-spacing: -.12em;
    }

    .contact-transition {
      position: absolute;
      inset: 0 0 auto;
      z-index: 0;
      height: 168px;
      overflow: hidden;
      pointer-events: none;
      background: linear-gradient(180deg, #edf4f7 0%, rgba(232, 242, 246, .94) 30%, rgba(224, 238, 244, .4) 72%, transparent 100%);
    }

    .contact-transition::before {
      content: "";
      position: absolute;
      top: 48px;
      left: -10%;
      width: 120%;
      height: 1px;
      opacity: .7;
      background: linear-gradient(90deg, transparent, rgba(24, 132, 179, .2) 19%, #d8f8ff 50%, rgba(24, 132, 179, .2) 81%, transparent);
      box-shadow: 0 0 12px rgba(37, 156, 199, .32);
      transform: rotate(.75deg);
    }

    .contact-transition::after {
      content: "";
      position: absolute;
      top: 42px;
      left: -15vw;
      width: clamp(110px, 15vw, 220px);
      height: 13px;
      opacity: .84;
      background: radial-gradient(ellipse at center, rgba(240, 254, 255, .98), rgba(31, 159, 205, .32) 35%, transparent 72%);
      filter: blur(.5px) drop-shadow(0 0 9px rgba(25, 150, 198, .54));
      animation: contactTransitionSweep 6.8s linear infinite;
    }

    .contact-inner {
      position: relative;
      z-index: 2;
      width: min(100%, 1600px);
      min-height: 100vh;
      margin: 0 auto;
      padding: clamp(108px, 11.5vh, 136px) clamp(30px, 5.2vw, 82px) clamp(48px, 6vh, 76px);
    }

    .contact-gate {
      min-height: calc(100vh - clamp(176px, 19vh, 212px));
      max-height: 1100px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      overflow: hidden;
      opacity: 1;
      transform: translateY(0);
      transition: max-height .9s cubic-bezier(.2, .72, .2, 1), min-height .9s cubic-bezier(.2, .72, .2, 1), opacity .42s ease, transform .72s ease;
    }

    .contact-gate-heading {
      display: grid;
      grid-template-columns: minmax(0, 1.15fr) minmax(300px, .58fr);
      gap: clamp(36px, 7vw, 116px);
      align-items: end;
    }

    .contact-kicker {
      display: block;
      margin: 0 0 15px;
      color: var(--contact-accent);
      font-size: 11px;
      font-weight: 500;
      letter-spacing: .22em;
      text-transform: uppercase;
    }

    .contact-title {
      max-width: 980px;
      margin: 0;
      color: #102d41;
      font-size: clamp(46px, 5.65vw, 88px);
      font-weight: 500;
      line-height: .95;
      letter-spacing: -.06em;
    }

    .contact-title em {
      color: var(--contact-accent);
      font-style: normal;
    }

    .contact-intro {
      margin: 0 0 5px;
      color: #536d7c;
      font-size: clamp(15px, 1.15vw, 18px);
      line-height: 1.65;
    }

    .contact-launch {
      position: relative;
      width: 100%;
      min-height: clamp(168px, 25vh, 258px);
      margin: clamp(32px, 5vh, 58px) 0 0;
      padding: clamp(28px, 3.6vw, 58px);
      overflow: hidden;
      isolation: isolate;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 28px;
      color: #0b6393;
      border: 1px solid rgba(8, 112, 170, .46);
      border-radius: clamp(22px, 3vw, 46px);
      background: rgba(246, 251, 253, .5);
      box-shadow: inset 0 1px rgba(255, 255, 255, .86), 0 28px 74px rgba(31, 82, 109, .1);
      cursor: pointer;
      text-align: left;
      -webkit-backdrop-filter: blur(13px) saturate(118%);
      backdrop-filter: blur(13px) saturate(118%);
      transition: color .6s ease, border-color .45s ease, box-shadow .55s ease, transform .55s cubic-bezier(.2, .75, .2, 1);
    }

    .contact-launch::before {
      content: "";
      position: absolute;
      right: 7%;
      top: 50%;
      z-index: -1;
      width: clamp(120px, 13vw, 198px);
      aspect-ratio: 1;
      border-radius: 50%;
      background: linear-gradient(135deg, #0b6ea8, #1198ca 58%, #55d5ed);
      box-shadow: 0 0 66px rgba(14, 142, 194, .26);
      opacity: .12;
      transform: translate(0, -50%) scale(.35);
      transition: transform 1.05s cubic-bezier(.17, .78, .18, 1), opacity .45s ease;
    }

    .contact-launch::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -1;
      pointer-events: none;
      opacity: .22;
      background:
        linear-gradient(rgba(90, 208, 239, .15) 1px, transparent 1px),
        linear-gradient(90deg, rgba(90, 208, 239, .15) 1px, transparent 1px);
      background-size: 34px 34px;
      -webkit-mask-image: radial-gradient(circle at 86% 50%, #000 0 19%, transparent 62%);
      mask-image: radial-gradient(circle at 86% 50%, #000 0 19%, transparent 62%);
    }

    .contact-launch:hover,
    .contact-launch:focus-visible {
      color: #f5fdff;
      border-color: rgba(26, 161, 207, .72);
      box-shadow: inset 0 1px rgba(255, 255, 255, .22), 0 34px 84px rgba(16, 93, 130, .2), 0 0 38px rgba(24, 162, 207, .12);
      transform: translateY(-5px);
    }

    .contact-launch:hover::before,
    .contact-launch:focus-visible::before {
      opacity: 1;
      transform: translate(0, -50%) scale(12);
    }

    .contact-launch:focus-visible {
      outline: 2px solid #0b79b6;
      outline-offset: 5px;
    }

    .contact-launch-label {
      position: relative;
      z-index: 2;
      font-size: clamp(49px, 7.45vw, 116px);
      font-weight: 500;
      line-height: .9;
      letter-spacing: -.075em;
      white-space: nowrap;
    }

    .contact-launch-icon {
      position: relative;
      z-index: 2;
      width: clamp(72px, 8vw, 124px);
      height: clamp(72px, 8vw, 124px);
      flex: 0 0 auto;
      display: grid;
      place-items: center;
      border: 1px solid currentColor;
      border-radius: 50%;
      transition: transform .65s cubic-bezier(.2, .75, .2, 1), background .45s ease;
    }

    .contact-launch-icon::before {
      content: "";
      position: absolute;
      inset: 9px;
      border: 1px solid currentColor;
      border-radius: 50%;
      opacity: .25;
    }

    .contact-launch-icon svg {
      width: 42%;
      height: 42%;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.35;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .contact-launch:hover .contact-launch-icon,
    .contact-launch:focus-visible .contact-launch-icon {
      background: rgba(255, 255, 255, .1);
      transform: rotate(45deg);
    }

    .contact-gate-meta {
      margin-top: 17px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      color: rgba(43, 78, 99, .58);
      font-size: 10px;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .contact-gate-meta span:last-child {
      display: inline-flex;
      align-items: center;
      gap: 8px;
    }

    .contact-gate-meta span:last-child::before {
      content: "";
      width: 5px;
      height: 5px;
      flex: 0 0 5px;
      border-radius: 50%;
      background: #1696c5;
      box-shadow: 0 0 8px rgba(21, 146, 194, .48);
      animation: newsBadgePulse 2.6s ease-in-out infinite;
    }

    .contact-form-panel {
      max-height: 0;
      overflow: hidden;
      visibility: hidden;
      opacity: 0;
      transform: translateY(34px);
      scroll-margin-top: 92px;
      transition: max-height 1.1s cubic-bezier(.2, .72, .2, 1), opacity .72s ease .16s, transform .86s cubic-bezier(.2, .75, .2, 1) .12s, visibility 0s linear 1.1s;
    }

    .contact-form-panel[hidden] { display: none; }

    .contact-section.is-form-open .contact-gate {
      min-height: 0;
      max-height: 0;
      opacity: 0;
      transform: translateY(-28px);
      pointer-events: none;
    }

    .contact-section.is-form-open .contact-form-panel {
      max-height: 2200px;
      visibility: visible;
      opacity: 1;
      transform: translateY(0);
      transition-delay: 0s, .2s, .16s, 0s;
    }

    .contact-form-shell {
      min-height: calc(100vh - clamp(156px, 17vh, 190px));
      padding-top: 8px;
      display: grid;
      grid-template-columns: minmax(260px, .35fr) minmax(0, .65fr);
      gap: clamp(38px, 6vw, 96px);
      align-items: start;
    }

    .contact-form-intro {
      position: relative;
      min-height: 100%;
      padding-bottom: 54px;
      display: flex;
      flex-direction: column;
    }

    .contact-form-title {
      margin: 0;
      color: #102d41;
      font-size: clamp(48px, 5.25vw, 82px);
      font-weight: 500;
      line-height: .91;
      letter-spacing: -.065em;
    }

    .contact-form-title em {
      display: block;
      color: var(--contact-accent);
      font-style: normal;
    }

    .contact-form-note {
      max-width: 330px;
      margin: 24px 0 0;
      color: #5c7380;
      font-size: 14px;
      line-height: 1.65;
    }

    .contact-direct {
      margin-top: auto;
      padding-top: 40px;
      display: grid;
      gap: 9px;
    }

    .contact-direct span {
      color: rgba(39, 77, 99, .48);
      font-size: 9px;
      letter-spacing: .17em;
      text-transform: uppercase;
    }

    .contact-direct a {
      width: fit-content;
      color: #17698f;
      font-size: 13px;
      text-decoration: none;
      border-bottom: 1px solid rgba(18, 112, 153, .22);
      transition: color .25s ease, border-color .25s ease;
    }

    .contact-direct a:hover,
    .contact-direct a:focus-visible {
      color: #074e76;
      border-color: currentColor;
    }

    .contact-form-close {
      width: fit-content;
      margin: 27px 0 0;
      padding: 0;
      display: inline-flex;
      align-items: center;
      gap: 9px;
      color: rgba(32, 78, 104, .68);
      border: 0;
      background: transparent;
      font-size: 10px;
      letter-spacing: .13em;
      text-transform: uppercase;
      cursor: pointer;
    }

    .contact-form-close::before {
      content: "";
      width: 24px;
      height: 1px;
      background: currentColor;
      transition: width .3s ease;
    }

    .contact-form-close:hover::before,
    .contact-form-close:focus-visible::before { width: 34px; }

    .contact-form-close:focus-visible {
      outline: 1px solid var(--contact-accent);
      outline-offset: 6px;
    }

    .contact-form-content {
      display: grid;
      gap: clamp(18px, 2.1vh, 25px);
    }

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

    .contact-field {
      min-width: 0;
      display: grid;
      gap: 8px;
    }

    .contact-field--wide { grid-column: 1 / -1; }

    .contact-field > span,
    .contact-field > .contact-field-label,
    .contact-budget-label {
      padding-left: 2px;
      color: rgba(37, 76, 99, .62);
      font-size: 9px;
      font-weight: 500;
      letter-spacing: .15em;
      text-transform: uppercase;
    }

    .contact-field input,
    .contact-field textarea,
    .contact-budget summary {
      width: 100%;
      color: #153a50;
      border: 1px solid rgba(13, 116, 170, .32);
      border-radius: 10px;
      background: rgba(248, 252, 253, .56);
      box-shadow: inset 0 1px rgba(255, 255, 255, .76);
      font-size: 14px;
      transition: border-color .28s ease, background .28s ease, box-shadow .28s ease;
    }

    .contact-field input {
      height: 58px;
      padding: 0 18px;
    }

    .contact-field textarea {
      min-height: 174px;
      padding: 17px 18px 54px;
      resize: vertical;
      line-height: 1.55;
    }

    .contact-field input::placeholder,
    .contact-field textarea::placeholder { color: rgba(51, 82, 99, .42); }

    .contact-field input:hover,
    .contact-field textarea:hover,
    .contact-budget summary:hover { border-color: rgba(8, 121, 180, .54); }

    .contact-field input:focus,
    .contact-field textarea:focus,
    .contact-budget summary:focus-visible {
      outline: 2px solid rgba(8, 126, 187, .32);
      outline-offset: 2px;
      border-color: #087fbd;
      background: rgba(250, 253, 254, .86);
      box-shadow: 0 0 0 5px rgba(14, 137, 193, .07), inset 0 1px rgba(255, 255, 255, .9);
    }

    .contact-budget {
      position: relative;
      grid-column: 1 / -1;
      display: grid;
      gap: 8px;
    }

    .contact-budget summary {
      grid-row: 2;
      height: 58px;
      padding: 0 18px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      list-style: none;
      cursor: pointer;
    }

    .contact-budget summary::-webkit-details-marker { display: none; }

    .contact-budget-label { grid-row: 1; }

    .contact-budget summary::after {
      content: "";
      width: 9px;
      height: 9px;
      flex: 0 0 9px;
      border-right: 1px solid currentColor;
      border-bottom: 1px solid currentColor;
      opacity: .58;
      transform: translateY(-2px) rotate(45deg);
      transition: transform .3s ease;
    }

    .contact-budget[open] summary::after { transform: translateY(2px) rotate(225deg); }

    .contact-budget-value.is-selected { color: #075f91; }

    .contact-budget-options {
      position: absolute;
      top: calc(100% + 8px);
      left: 0;
      z-index: 14;
      width: 100%;
      overflow: hidden;
      display: grid;
      border: 1px solid rgba(7, 113, 168, .42);
      border-radius: 10px;
      background: rgba(238, 248, 251, .98);
      box-shadow: 0 24px 54px rgba(25, 72, 98, .2);
      -webkit-backdrop-filter: blur(18px) saturate(125%);
      backdrop-filter: blur(18px) saturate(125%);
    }

    .contact-budget-option {
      min-height: 43px;
      padding: 0 16px;
      display: flex;
      align-items: center;
      gap: 11px;
      color: rgba(29, 67, 89, .74);
      cursor: pointer;
      font-size: 13px;
      transition: color .22s ease, background .22s ease;
    }

    .contact-budget-option + .contact-budget-option { border-top: 1px solid rgba(18, 104, 148, .12); }

    .contact-budget-option:hover { color: #075a87; background: rgba(20, 142, 193, .07); }

    .contact-budget-option input {
      width: 16px;
      height: 16px;
      margin: 0;
      accent-color: var(--contact-accent);
    }

    .contact-message-wrap { position: relative; }

    .contact-file {
      position: absolute;
      left: 18px;
      bottom: 15px;
      max-width: calc(100% - 36px);
      display: inline-flex;
      align-items: center;
      gap: 9px;
      color: rgba(31, 78, 104, .64);
      font-size: 11px;
      cursor: pointer;
    }

    .contact-file input {
      position: absolute;
      width: 1px;
      height: 1px;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
    }

    .contact-file svg {
      width: 17px;
      height: 17px;
      flex: 0 0 17px;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.45;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .contact-file span {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .contact-file:hover { color: #075f91; }

    .contact-file.is-error { color: #ad3f48; }

    .contact-file:focus-within {
      color: #075f91;
      outline: 1px solid var(--contact-accent);
      outline-offset: 5px;
    }

    .contact-consent {
      grid-column: 1 / -1;
      display: flex;
      align-items: flex-start;
      gap: 10px;
      color: rgba(39, 73, 93, .62);
      font-size: 11px;
      line-height: 1.45;
      cursor: pointer;
    }

    .contact-consent input {
      width: 17px;
      height: 17px;
      margin: 0;
      flex: 0 0 17px;
      accent-color: var(--contact-accent);
    }

    .contact-submit {
      position: relative;
      width: 100%;
      min-height: clamp(112px, 15vh, 152px);
      padding: 24px clamp(24px, 3.3vw, 48px);
      overflow: hidden;
      isolation: isolate;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 22px;
      color: #086b9d;
      border: 1px solid rgba(8, 117, 173, .48);
      border-radius: clamp(18px, 2vw, 28px);
      background: rgba(246, 251, 253, .5);
      cursor: pointer;
      font-size: clamp(27px, 3.6vw, 56px);
      font-weight: 500;
      line-height: 1;
      letter-spacing: -.055em;
      text-align: left;
      transition: color .5s ease, border-color .4s ease, transform .5s cubic-bezier(.2, .75, .2, 1), box-shadow .5s ease;
    }

    .contact-submit::before {
      content: "";
      position: absolute;
      inset: -1px;
      z-index: -1;
      border-radius: inherit;
      background: linear-gradient(112deg, #086da5, #0e9ccc 70%, #4cd2e9);
      transform: translateX(-102%);
      transition: transform .72s cubic-bezier(.2, .76, .2, 1);
    }

    .contact-submit:hover,
    .contact-submit:focus-visible {
      color: #f4fdff;
      border-color: rgba(16, 148, 197, .82);
      box-shadow: 0 26px 58px rgba(12, 103, 148, .2);
      transform: translateY(-4px);
    }

    .contact-submit:hover::before,
    .contact-submit:focus-visible::before { transform: translateX(0); }

    .contact-submit:focus-visible {
      outline: 2px solid #0a79b5;
      outline-offset: 5px;
    }

    .contact-submit svg {
      width: clamp(40px, 5vw, 72px);
      height: clamp(40px, 5vw, 72px);
      flex: 0 0 auto;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.2;
      stroke-linecap: round;
      stroke-linejoin: round;
      transition: transform .55s ease;
    }

    .contact-submit:hover svg,
    .contact-submit:focus-visible svg { transform: translateX(8px); }

    .contact-success {
      min-height: clamp(430px, 64vh, 620px);
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: flex-start;
      color: #12384d;
    }

    .contact-success[hidden],
    .contact-form-content[hidden] { display: none; }

    .contact-success-signal {
      position: relative;
      width: 54px;
      height: 54px;
      margin-bottom: 30px;
      display: grid;
      place-items: center;
      border: 1px solid rgba(8, 119, 174, .48);
      border-radius: 50%;
      color: #0879b5;
      box-shadow: 0 0 0 10px rgba(16, 137, 190, .06), 0 0 32px rgba(17, 142, 194, .12);
    }

    .contact-success-signal::after {
      content: "";
      width: 14px;
      height: 8px;
      border-left: 2px solid currentColor;
      border-bottom: 2px solid currentColor;
      transform: translateY(-2px) rotate(-45deg);
    }

    .contact-success h3 {
      max-width: 720px;
      margin: 0;
      color: #102d41;
      font-size: clamp(42px, 5.3vw, 82px);
      font-weight: 500;
      line-height: .94;
      letter-spacing: -.06em;
    }

    .contact-success p {
      max-width: 520px;
      margin: 22px 0 0;
      color: #5c7380;
      font-size: 15px;
      line-height: 1.65;
    }

    .contact-success-reset {
      margin-top: 32px;
      padding: 0 0 6px;
      color: #0b6897;
      border: 0;
      border-bottom: 1px solid rgba(10, 105, 153, .36);
      background: transparent;
      cursor: pointer;
      font-size: 11px;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .contact-success-reset:hover,
    .contact-success-reset:focus-visible { color: #064a70; border-color: currentColor; }

    .contact-section > .section-circuit { opacity: .66; }

    .section-circuit--contact .section-circuit-node {
      fill: #f5fcfe;
      stroke: #0d82b8;
      filter: drop-shadow(0 0 4px rgba(25, 144, 190, .5));
    }

    .contact-section.reveal-ready .contact-gate-heading,
    .contact-section.reveal-ready .contact-launch,
    .contact-section.reveal-ready .contact-gate-meta {
      opacity: 0;
      transform: translateY(34px);
      transition: opacity .85s ease, transform .85s cubic-bezier(.2, .75, .2, 1);
    }

    .contact-section.reveal-ready .contact-launch { transition-delay: .12s; }
    .contact-section.reveal-ready .contact-gate-meta { transition-delay: .22s; }

    .contact-section.reveal-ready.is-visible .contact-gate-heading,
    .contact-section.reveal-ready.is-visible .contact-launch,
    .contact-section.reveal-ready.is-visible .contact-gate-meta {
      opacity: 1;
      transform: translateY(0);
    }

    .contact-section.reveal-ready.is-visible .contact-launch:hover,
    .contact-section.reveal-ready.is-visible .contact-launch:focus-visible { transform: translateY(-5px); }

    body.contact-active {
      color: #edf8fc;
      background: #050810;
    }

    body.contact-active .site-header::before {
      opacity: 1;
      background: linear-gradient(180deg, rgba(4, 8, 14, .98) 0%, rgba(5, 10, 17, .91) 72%, rgba(5, 10, 17, 0) 100%);
      box-shadow: 0 12px 38px rgba(0, 0, 0, .32);
    }

    body.contact-active .mini-logo {
      filter: drop-shadow(0 0 10px rgba(70, 202, 255, .46));
    }

    body.contact-active .main-nav a,
    body.contact-active .main-nav a[href="/platforms/"] { color: rgba(213, 230, 240, .67); }

    body.contact-active .main-nav a:hover,
    body.contact-active .main-nav a:focus-visible { color: #f1fbff; }

    body.contact-active .header-actions .primary {
      color: #ecfaff;
      border-color: rgba(78, 195, 241, .36);
      background: linear-gradient(180deg, rgba(15, 105, 164, .92), rgba(5, 47, 82, .98));
      box-shadow: 0 8px 26px rgba(0, 78, 133, .3), inset 0 1px rgba(255, 255, 255, .12);
    }

    body.contact-active .section-nav {
      --section-nav-line: rgba(70, 195, 239, .32);
      --section-nav-line-hot: #72e3ff;
      --section-nav-node: rgba(5, 14, 23, .84);
      --section-nav-node-border: rgba(82, 203, 241, .4);
      --section-nav-text: rgba(201, 225, 237, .6);
      --section-nav-text-hot: #e8fbff;
      --section-nav-label: rgba(7, 17, 27, .84);
    }

    .contact-section {
      --contact-accent: #8fb7c6;
      --contact-accent-bright: #c8dfe6;
      color-scheme: dark;
      color: #edf8fc;
      background:
        radial-gradient(circle at 76% 28%, rgba(0, 146, 214, .25), transparent 31%),
        radial-gradient(circle at 17% 73%, rgba(32, 85, 157, .2), transparent 35%),
        linear-gradient(146deg, #090e16 0%, #07101a 47%, #03070d 100%);
    }

    .contact-section::before {
      opacity: .54;
      background-image:
        linear-gradient(rgba(84, 190, 231, .075) 1px, transparent 1px),
        linear-gradient(90deg, rgba(84, 190, 231, .075) 1px, transparent 1px),
        repeating-linear-gradient(135deg, transparent 0 34px, rgba(133, 220, 247, .026) 34px 35px);
    }

    .contact-section::after { -webkit-text-stroke-color: rgba(148, 221, 245, .08); }

    .contact-transition {
      background: linear-gradient(180deg,
        #edf4f7 0%,
        rgba(230, 239, 243, .98) 10px,
        rgba(167, 184, 192, .82) 48px,
        rgba(67, 80, 90, .58) 92px,
        rgba(8, 14, 22, .2) 136px,
        transparent 100%);
    }

    .contact-transition::before {
      opacity: .74;
      background: linear-gradient(90deg, transparent, rgba(61, 190, 231, .24) 19%, #dffaff 50%, rgba(61, 190, 231, .24) 81%, transparent);
      box-shadow: 0 0 14px rgba(53, 191, 234, .42);
    }

    .contact-title,
    .contact-form-title,
    .contact-success h3 { color: #f0f8fb; }

    .contact-title em,
    .contact-form-title em {
      color: #9fbfcb;
      background: linear-gradient(108deg, #799baa 0%, #c6dbe2 48%, #8eb6c5 100%);
      background-size: 180% 100%;
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
      filter: drop-shadow(0 7px 24px rgba(92, 143, 162, .1));
    }

    .contact-intro,
    .contact-form-note,
    .contact-success p { color: rgba(203, 223, 233, .68); }

    .contact-launch {
      color: #a0c5d1;
      border-color: rgba(80, 202, 244, .4);
      background: rgba(5, 16, 27, .58);
      box-shadow: inset 0 1px rgba(255, 255, 255, .055), 0 30px 78px rgba(0, 0, 0, .3), 0 0 52px rgba(0, 132, 199, .06);
    }

    .contact-launch::before {
      background: linear-gradient(135deg, #183d54, #28637b 58%, #6a9eae);
      box-shadow: 0 0 74px rgba(79, 151, 174, .24);
      opacity: .18;
    }

    .contact-launch::after {
      opacity: .32;
      background:
        linear-gradient(rgba(88, 211, 242, .14) 1px, transparent 1px),
        linear-gradient(90deg, rgba(88, 211, 242, .14) 1px, transparent 1px);
    }

    .contact-launch:hover,
    .contact-launch:focus-visible {
      color: #f3fdff;
      border-color: rgba(97, 224, 255, .78);
      box-shadow: inset 0 1px rgba(255, 255, 255, .14), 0 36px 88px rgba(0, 0, 0, .42), 0 0 42px rgba(34, 188, 229, .14);
    }

    .contact-gate-meta { color: rgba(193, 216, 229, .54); }

    .contact-direct span { color: rgba(190, 215, 229, .42); }

    .contact-direct a {
      color: #91bac8;
      border-bottom-color: rgba(88, 204, 238, .28);
    }

    .contact-direct a:hover,
    .contact-direct a:focus-visible { color: #d8f8ff; }

    .contact-form-close { color: rgba(190, 218, 232, .66); }

    .contact-field > span,
    .contact-field > .contact-field-label,
    .contact-budget-label { color: rgba(189, 216, 229, .58); }

    .contact-field input,
    .contact-field textarea,
    .contact-budget summary {
      color: #e8f7fc;
      border-color: rgba(75, 189, 229, .3);
      background: rgba(7, 19, 30, .72);
      box-shadow: inset 0 1px rgba(255, 255, 255, .045);
    }

    .contact-field input::placeholder,
    .contact-field textarea::placeholder { color: rgba(186, 211, 222, .38); }

    .contact-field input:hover,
    .contact-field textarea:hover,
    .contact-budget summary:hover { border-color: rgba(85, 213, 250, .56); }

    .contact-field input:focus,
    .contact-field textarea:focus,
    .contact-budget summary:focus-visible {
      outline-color: rgba(82, 215, 251, .34);
      border-color: #51d7fb;
      background: rgba(9, 25, 39, .94);
      box-shadow: 0 0 0 5px rgba(35, 177, 222, .09), inset 0 1px rgba(255, 255, 255, .06);
    }

    .contact-budget-value.is-selected { color: #a7cbd6; }

    .contact-budget-options {
      border-color: rgba(77, 203, 239, .45);
      background: rgba(5, 14, 23, .98);
      box-shadow: 0 26px 58px rgba(0, 0, 0, .5);
    }

    .contact-budget-option { color: rgba(207, 229, 238, .72); }

    .contact-budget-option + .contact-budget-option { border-top-color: rgba(88, 199, 235, .13); }

    .contact-budget-option:hover { color: #e6fbff; background: rgba(39, 183, 224, .09); }

    .contact-file,
    .contact-consent { color: rgba(194, 218, 230, .62); }

    .contact-file:hover,
    .contact-file:focus-within { color: #a5cad5; }

    .contact-file.is-error { color: #ff8992; }

    .contact-submit {
      color: #a0c5d1;
      border-color: rgba(78, 202, 240, .46);
      background: rgba(5, 16, 27, .64);
    }

    .contact-submit::before { background: linear-gradient(112deg, #173e56, #286b82 70%, #6ba6b6); }

    .contact-submit:hover,
    .contact-submit:focus-visible {
      color: #f4fdff;
      border-color: rgba(95, 224, 255, .84);
      box-shadow: 0 28px 62px rgba(0, 0, 0, .4), 0 0 34px rgba(34, 185, 225, .12);
    }

    .contact-success { color: #e9f7fb; }

    .contact-success-signal {
      color: #6ddfff;
      border-color: rgba(84, 213, 249, .52);
      box-shadow: 0 0 0 10px rgba(45, 192, 230, .07), 0 0 34px rgba(40, 192, 229, .16);
    }

    .contact-success-reset {
      color: #96bdca;
      border-bottom-color: rgba(90, 211, 242, .36);
    }

    .contact-success-reset:hover,
    .contact-success-reset:focus-visible { color: #dffaff; }

    .section-circuit--contact .section-circuit-node {
      fill: #07131d;
      stroke: #66ddf8;
      filter: drop-shadow(0 0 5px rgba(67, 211, 244, .7));
    }

    body.footer-active {
      color: #18384b;
      background: #edf5f8;
    }

    body.footer-active .site-header::before {
      opacity: 1;
      background: linear-gradient(180deg, rgba(249, 252, 253, .98) 0%, rgba(239, 247, 250, .92) 72%, rgba(239, 247, 250, 0) 100%);
      box-shadow: 0 12px 38px rgba(37, 79, 102, .09);
    }

    body.footer-active .mini-logo {
      filter: brightness(.57) saturate(1.55) drop-shadow(0 2px 8px rgba(18, 104, 158, .17));
    }

    body.footer-active .main-nav a,
    body.footer-active .main-nav a[href="/platforms/"] { color: rgba(27, 58, 78, .68); }

    body.footer-active .main-nav a:hover,
    body.footer-active .main-nav a:focus-visible { color: #0875aa; }

    body.footer-active .header-actions .primary {
      color: #f8fdff;
      border-color: rgba(19, 119, 171, .26);
      background: linear-gradient(180deg, #1789bc, #0a6799);
      box-shadow: 0 8px 25px rgba(12, 112, 165, .2), inset 0 1px rgba(255, 255, 255, .22);
    }

    body.footer-active .section-nav {
      --section-nav-line: rgba(31, 116, 157, .28);
      --section-nav-line-hot: #117da9;
      --section-nav-node: rgba(246, 251, 253, .86);
      --section-nav-node-border: rgba(27, 111, 151, .3);
      --section-nav-text: rgba(39, 78, 99, .62);
      --section-nav-text-hot: #075d87;
      --section-nav-label: rgba(239, 247, 250, .9);
    }

    .site-footer {
      --footer-steel: #236f8b;
      --footer-ice: #173f54;
      position: relative;
      min-height: 100vh;
      overflow: hidden;
      isolation: isolate;
      scroll-snap-align: start;
      color-scheme: light;
      color: #18384b;
      background:
        linear-gradient(180deg,
          #718b98 0,
          rgba(151, 176, 187, .96) 30px,
          rgba(214, 230, 236, .92) 72px,
          rgba(239, 247, 249, .58) 112px,
          transparent 156px),
        radial-gradient(circle at 17% 31%, rgba(25, 135, 178, .13), transparent 31%),
        radial-gradient(circle at 84% 68%, rgba(55, 113, 147, .1), transparent 34%),
        linear-gradient(146deg, #f5fafb 0%, #e7f1f5 48%, #f0f7f9 100%);
      border-top: 1px solid rgba(166, 225, 241, .34);
      box-shadow: inset 0 1px rgba(240, 253, 255, .5);
    }

    .site-footer::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -2;
      pointer-events: none;
      opacity: .62;
      background-image:
        linear-gradient(rgba(28, 106, 141, .07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(28, 106, 141, .07) 1px, transparent 1px),
        repeating-linear-gradient(135deg, transparent 0 38px, rgba(29, 103, 138, .022) 38px 39px);
      background-size: 44px 44px, 44px 44px, auto;
      -webkit-mask-image: linear-gradient(180deg, #000 0, rgba(0, 0, 0, .82) 60%, transparent 100%);
      mask-image: linear-gradient(180deg, #000 0, rgba(0, 0, 0, .82) 60%, transparent 100%);
    }

    .site-footer::after {
      content: "FLEXCORE";
      position: absolute;
      right: clamp(18px, 3vw, 52px);
      bottom: clamp(20px, 3.5vh, 42px);
      z-index: -1;
      pointer-events: none;
      color: transparent;
      -webkit-text-stroke: 1px rgba(32, 100, 130, .065);
      font-size: clamp(88px, 11.5vw, 190px);
      font-weight: 600;
      line-height: 1;
      letter-spacing: -.085em;
      white-space: nowrap;
    }

    .footer-signal {
      position: absolute;
      top: 0;
      left: 5.2vw;
      right: 5.2vw;
      z-index: 3;
      height: 92px;
      overflow: hidden;
      pointer-events: none;
    }

    .footer-signal::before {
      content: "";
      position: absolute;
      top: 0;
      left: 50%;
      width: 1px;
      height: 53px;
      background: linear-gradient(180deg, rgba(196, 239, 249, .92), rgba(30, 131, 169, .32));
      box-shadow: 0 0 13px rgba(72, 187, 219, .34);
    }

    .footer-signal-rail {
      position: absolute;
      top: 53px;
      left: 0;
      width: 100%;
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(28, 121, 158, .2) 11%, rgba(51, 145, 178, .54) 50%, rgba(28, 121, 158, .2) 89%, transparent);
    }

    .footer-signal-rail::before,
    .footer-signal-rail::after {
      content: "";
      position: absolute;
      top: 0;
      width: clamp(70px, 10vw, 150px);
      height: 1px;
      opacity: .92;
      background: linear-gradient(90deg, transparent, #effcff 50%, transparent);
      filter: drop-shadow(0 0 6px rgba(59, 169, 202, .7));
      animation: footerSignalRun 7.5s linear infinite;
    }

    .footer-signal-rail::after {
      animation-delay: -3.75s;
    }

    .footer-signal-node {
      position: absolute;
      top: 47px;
      left: 50%;
      width: 13px;
      height: 13px;
      border: 1px solid rgba(42, 133, 166, .72);
      border-radius: 50%;
      background: #eff8fa;
      box-shadow: 0 0 0 6px rgba(42, 130, 163, .055), 0 0 18px rgba(47, 149, 181, .3);
      transform: translateX(-50%);
    }

    .footer-signal-node::after {
      content: "";
      position: absolute;
      inset: 3px;
      border-radius: inherit;
      background: #247c9c;
      box-shadow: 0 0 8px rgba(42, 145, 179, .55);
      animation: footerNodePulse 2.8s ease-in-out infinite;
    }

    .footer-inner {
      position: relative;
      z-index: 2;
      width: min(100%, 1600px);
      min-height: 100vh;
      margin: 0 auto;
      padding: clamp(116px, 14vh, 158px) clamp(30px, 5.2vw, 82px) clamp(34px, 4.5vh, 56px);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: clamp(46px, 6vh, 74px);
    }

    .footer-main {
      display: grid;
      grid-template-columns: minmax(340px, .82fr) minmax(560px, 1.18fr);
      gap: clamp(64px, 8vw, 132px);
      align-items: start;
    }

    .footer-brand {
      min-width: 0;
      overflow: visible;
    }

    .footer-kicker {
      display: flex;
      align-items: center;
      gap: 11px;
      margin: 0 0 16px;
      color: rgba(48, 91, 109, .58);
      font-size: 9px;
      font-weight: 500;
      letter-spacing: .22em;
      text-transform: uppercase;
    }

    .footer-kicker::before {
      content: "";
      width: 24px;
      height: 1px;
      background: linear-gradient(90deg, var(--footer-steel), transparent);
      box-shadow: 0 0 7px rgba(48, 141, 174, .2);
    }

    .footer-wordmark {
      width: fit-content;
      margin: 0;
      display: inline-block;
      padding: .08em .035em .14em 0;
      overflow: visible;
      color: var(--footer-ice);
      background: linear-gradient(108deg, #173f54 0%, #6f9bab 34%, #245f78 58%, #89afbc 78%, #173f54 100%);
      background-size: 230% 100%;
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
      filter: drop-shadow(0 12px 30px rgba(49, 108, 130, .1));
      font-size: clamp(48px, 5.1vw, 84px);
      font-weight: 500;
      line-height: 1;
      letter-spacing: -.075em;
      white-space: nowrap;
      text-decoration: none;
      animation: footerWordmarkFlow 10s ease-in-out infinite alternate;
    }

    .footer-wordmark:focus-visible {
      outline: 1px solid rgba(31, 116, 150, .55);
      outline-offset: 10px;
    }

    .footer-tagline {
      max-width: 470px;
      margin: 30px 0 0;
      color: rgba(48, 78, 92, .75);
      font-size: clamp(14px, 1.1vw, 17px);
      line-height: 1.7;
    }

    .footer-accreditation {
      width: fit-content;
      max-width: 100%;
      margin-top: 24px;
      padding: 10px 13px 10px 11px;
      display: inline-flex;
      align-items: center;
      gap: 9px;
      color: rgba(42, 84, 102, .75);
      border: 1px solid rgba(34, 111, 141, .18);
      border-radius: 999px;
      background: rgba(255, 255, 255, .48);
      font-size: 9px;
      letter-spacing: .09em;
      line-height: 1.35;
      text-decoration: none;
      text-transform: uppercase;
      -webkit-backdrop-filter: blur(12px);
      backdrop-filter: blur(12px);
      transition: color .3s ease, border-color .3s ease, background .3s ease;
    }

    .footer-accreditation::before {
      content: "";
      width: 6px;
      height: 6px;
      flex: 0 0 6px;
      border-radius: 50%;
      background: #277f9f;
      box-shadow: 0 0 10px rgba(43, 141, 174, .42);
      animation: footerNodePulse 2.8s ease-in-out infinite;
    }

    .footer-accreditation:hover,
    .footer-accreditation:focus-visible {
      color: #123f54;
      border-color: rgba(27, 108, 140, .38);
      background: rgba(255, 255, 255, .76);
    }

    .footer-columns {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: clamp(26px, 3.3vw, 54px);
    }

    .footer-column {
      position: relative;
      min-width: 0;
      padding-top: 19px;
      border-top: 1px solid rgba(29, 104, 134, .18);
    }

    .footer-column::before {
      content: "";
      position: absolute;
      top: -1px;
      left: 0;
      width: 34px;
      height: 1px;
      background: #277c9c;
      box-shadow: 0 0 8px rgba(41, 137, 170, .3);
      transform-origin: left;
      transition: width .45s ease;
    }

    .footer-column:hover::before { width: min(100%, 88px); }

    .footer-column-title {
      margin: 0 0 21px;
      color: rgba(47, 86, 102, .58);
      font-size: 9px;
      font-weight: 500;
      letter-spacing: .19em;
      text-transform: uppercase;
    }

    .footer-links {
      margin: 0;
      padding: 0;
      display: grid;
      gap: 13px;
      list-style: none;
    }

    .footer-links a,
    .footer-links span {
      width: fit-content;
      max-width: 100%;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      color: rgba(38, 70, 84, .78);
      font-size: 12px;
      line-height: 1.45;
      text-decoration: none;
    }

    .footer-links a {
      transition: color .28s ease, transform .28s ease;
    }

    .footer-links a::after {
      content: "";
      width: 13px;
      height: 1px;
      opacity: 0;
      background: currentColor;
      transform: translateX(-8px);
      transition: opacity .28s ease, transform .28s ease;
    }

    .footer-links a:hover,
    .footer-links a:focus-visible {
      color: #0a4865;
      transform: translateX(3px);
    }

    .footer-links a:hover::after,
    .footer-links a:focus-visible::after {
      opacity: .58;
      transform: translateX(0);
    }

    .footer-links .footer-contact-primary {
      color: #153f54;
      font-size: 14px;
      letter-spacing: -.015em;
    }

    .footer-links .footer-hours {
      color: rgba(61, 91, 103, .58);
      font-size: 10px;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .footer-meta {
      margin-top: auto;
      display: grid;
      gap: 25px;
    }

    .footer-location {
      padding: 24px 0;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 28px;
      border-top: 1px solid rgba(29, 104, 134, .15);
      border-bottom: 1px solid rgba(29, 104, 134, .15);
    }

    .footer-address {
      display: flex;
      align-items: center;
      gap: 13px;
      color: rgba(35, 73, 90, .78);
      font-size: clamp(13px, 1.05vw, 16px);
      line-height: 1.45;
      text-decoration: none;
      transition: color .3s ease;
    }

    .footer-address::before {
      content: "";
      width: 9px;
      height: 9px;
      flex: 0 0 9px;
      border: 1px solid #337e99;
      border-radius: 50%;
      box-shadow: 0 0 0 5px rgba(48, 132, 162, .05), 0 0 10px rgba(51, 139, 169, .18);
    }

    .footer-address:hover,
    .footer-address:focus-visible { color: #0a3f59; }

    .footer-location-meta {
      display: flex;
      align-items: center;
      gap: 15px;
      color: rgba(55, 83, 95, .54);
      font-size: 9px;
      letter-spacing: .15em;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .footer-location-meta::before {
      content: "";
      width: 34px;
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(35, 112, 141, .4));
    }

    .footer-bottom {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      color: rgba(59, 85, 96, .52);
      font-size: 9px;
      letter-spacing: .1em;
      line-height: 1.5;
      text-transform: uppercase;
    }

    .footer-legal {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 8px 18px;
    }

    .footer-to-top {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      color: rgba(39, 77, 94, .7);
      text-decoration: none;
      transition: color .3s ease;
    }

    .footer-to-top::after {
      content: "";
      width: 8px;
      height: 8px;
      border-top: 1px solid currentColor;
      border-left: 1px solid currentColor;
      transform: translateY(2px) rotate(45deg);
      transition: transform .3s ease;
    }

    .footer-to-top:hover,
    .footer-to-top:focus-visible { color: #0d4058; }

    .footer-to-top:hover::after,
    .footer-to-top:focus-visible::after { transform: translateY(-3px) rotate(45deg); }

    .site-footer.reveal-ready .footer-brand > *,
    .site-footer.reveal-ready .footer-column,
    .site-footer.reveal-ready .footer-location,
    .site-footer.reveal-ready .footer-bottom {
      opacity: 0;
      transform: translateY(28px);
      transition: opacity .82s ease, transform .88s cubic-bezier(.2, .75, .2, 1);
    }

    .site-footer.reveal-ready .footer-column:nth-child(1) { transition-delay: .08s; }
    .site-footer.reveal-ready .footer-column:nth-child(2) { transition-delay: .15s; }
    .site-footer.reveal-ready .footer-column:nth-child(3) { transition-delay: .22s; }
    .site-footer.reveal-ready .footer-location { transition-delay: .24s; }
    .site-footer.reveal-ready .footer-bottom { transition-delay: .31s; }

    .site-footer.reveal-ready.is-visible .footer-brand > *,
    .site-footer.reveal-ready.is-visible .footer-column,
    .site-footer.reveal-ready.is-visible .footer-location,
    .site-footer.reveal-ready.is-visible .footer-bottom {
      opacity: 1;
      transform: translateY(0);
    }

    @keyframes footerSignalRun {
      from { left: -14%; }
      to { left: 104%; }
    }

    @keyframes footerNodePulse {
      0%, 100% { opacity: .48; transform: scale(.78); }
      50% { opacity: 1; transform: scale(1.08); }
    }

    @keyframes footerWordmarkFlow {
      from { background-position: 0% 50%; }
      to { background-position: 100% 50%; }
    }

    @keyframes contactTransitionSweep {
      from { transform: translateX(-8vw) rotate(.75deg); }
      to { transform: translateX(126vw) rotate(.75deg); }
    }

    .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

    @keyframes ambientIn {
      to { opacity: 1; transform: translate(-50%, -50%) scale(1); }
    }

    @keyframes headerIn {
      to { opacity: 1; transform: translateY(0); }
    }

    @keyframes signalIn {
      0% { opacity: 0; transform: translateX(-50%) scaleX(.05); }
      50% { opacity: 1; }
      100% { opacity: .9; transform: translateX(-50%) scaleX(1); }
    }

    @keyframes miniLogoShimmer {
      from { background-position: 0% 50%; }
      to { background-position: 100% 50%; }
    }

    @keyframes sectionNavCurrent {
      from { transform: translateY(-30px); opacity: 0; }
      12%, 88% { opacity: 1; }
      to { transform: translateY(260px); opacity: 0; }
    }

    @keyframes routeTravel {
      to { stroke-dashoffset: -152; }
    }

    @keyframes transPlatformBreath {
      0%, 100% { opacity: .5; transform: translate(-50%, -50%) scale(.82); }
      50% { opacity: 1; transform: translate(-50%, -50%) scale(1.08); }
    }

    @keyframes transPlatformScan {
      from { top: -36%; }
      to { top: 102%; }
    }

    @keyframes transNodePulse {
      0%, 100% { opacity: .62; transform: scale(.78); }
      50% { opacity: 1; transform: scale(1.16); }
    }

    @keyframes transAiOrbit {
      to { transform: rotate(360deg); }
    }

    @keyframes transAiRing {
      0% { opacity: .7; transform: scale(.75); }
      78%, 100% { opacity: 0; transform: scale(1.25); }
    }

    @keyframes cmsModuleFloat {
      from { transform: translateY(0); }
      to { transform: translateY(-4px); }
    }

    @keyframes portfolioGlobeSpin {
      from { transform: rotate(0); }
      to { transform: rotate(360deg); }
    }

    @keyframes portfolioRoutePulse {
      0%, 100% { transform: scale(.82); opacity: .72; }
      50% { transform: scale(1.18); opacity: 1; }
    }

    @keyframes portfolioArrowDrift {
      0%, 100% { opacity: .28; transform: translateX(-3px) rotate(45deg); }
      50% { opacity: 1; transform: translateX(3px) rotate(45deg); }
    }

    @keyframes sectionCurrentRun {
      from { stroke-dashoffset: 103; }
      to { stroke-dashoffset: 3; }
    }

    @keyframes sectionNodePulse {
      0%, 100% { opacity: .45; }
      50% { opacity: 1; }
    }

    @keyframes transitionSignalSweep {
      from { transform: translateX(-16vw); }
      to { transform: translateX(102vw); }
    }

    @keyframes newsTransitionPulse {
      from { transform: translateX(-12vw) rotate(-1.2deg); }
      to { transform: translateX(124vw) rotate(-1.2deg); }
    }

    @keyframes newsBadgePulse {
      0%, 100% { opacity: .48; transform: scale(.78); }
      50% { opacity: 1; transform: scale(1.18); }
    }

    @keyframes drawTrace {
      0% { opacity: 0; stroke-dashoffset: 1; }
      8% { opacity: .25; }
      100% { opacity: 1; stroke-dashoffset: 0; }
    }

    @keyframes chargeWake { to { opacity: .95; } }

    @keyframes currentRun {
      from { stroke-dashoffset: 100; }
      to { stroke-dashoffset: -100; }
    }

    @keyframes nodeIn {
      0% { opacity: 0; transform: scale(0); transform-box: fill-box; transform-origin: center; }
      65% { opacity: 1; transform: scale(1.7); transform-box: fill-box; transform-origin: center; }
      100% { opacity: .9; transform: scale(1); transform-box: fill-box; transform-origin: center; }
    }

    @keyframes coreEmerges {
      0% { opacity: 0; transform: scale(.68); filter: blur(16px); }
      58% { opacity: 1; filter: blur(1px); }
      100% { opacity: 1; transform: scale(1); filter: blur(0); }
    }

    @keyframes pinIn {
      0% { opacity: 0; stroke-dasharray: 0 80; }
      100% { opacity: 1; stroke-dasharray: 80 0; }
    }

    @keyframes chipCurrent { to { stroke-dashoffset: -100; } }

    @keyframes featureIn {
      to { opacity: 1; transform: translateY(0); }
    }

    @media (max-width: 1120px) {
      .mini-logo { margin-right: 38px; }
      .main-nav { gap: 25px; }
      .feature { width: 210px; grid-template-columns: 60px 1fr; gap: 16px; }
      .icon-ring { width: 58px; height: 58px; }
      .feature-description { font-size: 11px; }
      .platforms-inner { padding-inline: 40px; }
      .platform-card { padding-inline: 14px; }
      .platform-card:first-child { padding-left: 0; }
      .platform-card:last-child { padding-right: 0; }
      .portfolio-inner { padding-inline: 40px; }
      .portfolio-grid { gap: 22px; }
      .project-browser { height: clamp(236px, 30vh, 300px); }
      .project-footer { align-items: flex-start; flex-direction: column; }
      .news-inner { padding-inline: 40px; }
      .news-layout { gap: 22px; }
      .news-lead { grid-template-columns: minmax(210px, .4fr) minmax(0, .6fr); }
      .news-lead-copy { padding: 30px; }
      .news-story { grid-template-columns: minmax(112px, .38fr) minmax(0, .62fr); }
      .news-story-copy { padding: 19px; }
      .contact-inner { padding-inline: 40px; }
      .contact-form-shell { gap: 42px; }
    }

    @media (max-width: 860px) {
      .page { min-height: 620px; overflow: hidden; }
      .main-nav {
        position: absolute;
        top: 76px;
        left: 18px;
        right: 18px;
        z-index: 2;
        min-height: 0;
        padding: 9px;
        display: grid;
        gap: 0;
        overflow: hidden;
        border: 1px solid rgba(83, 184, 232, .25);
        border-radius: 18px;
        background:
          linear-gradient(rgba(62, 166, 222, .045) 1px, transparent 1px),
          linear-gradient(90deg, rgba(62, 166, 222, .045) 1px, transparent 1px),
          rgba(3, 12, 24, .95);
        background-size: 24px 24px, 24px 24px, auto;
        box-shadow: 0 22px 60px rgba(0, 0, 0, .34), inset 0 1px rgba(255, 255, 255, .04);
        -webkit-backdrop-filter: blur(22px) saturate(135%);
        backdrop-filter: blur(22px) saturate(135%);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translateY(-10px) scale(.985);
        transform-origin: 80% 0;
        transition: opacity .28s ease, transform .38s cubic-bezier(.2, .78, .2, 1), visibility 0s linear .38s, background .7s ease, border-color .7s ease;
      }
      .main-nav::before {
        content: "";
        position: absolute;
        top: 0;
        left: 18px;
        right: 18px;
        height: 1px;
        background: linear-gradient(90deg, transparent, rgba(119, 226, 255, .8), transparent);
        box-shadow: 0 0 12px rgba(85, 211, 255, .42);
      }
      .site-header.is-menu-open .main-nav {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0) scale(1);
        transition-delay: 0s;
      }
      .main-nav a {
        min-height: 48px;
        padding: 0 14px;
        display: flex;
        align-items: center;
        border-bottom: 1px solid rgba(102, 178, 218, .12);
        font-size: 12px;
        letter-spacing: .045em;
      }
      .main-nav a:last-child { border-bottom: 0; }
      body.platforms-active .main-nav {
        border-color: rgba(25, 111, 158, .2);
        background:
          linear-gradient(rgba(21, 112, 160, .045) 1px, transparent 1px),
          linear-gradient(90deg, rgba(21, 112, 160, .045) 1px, transparent 1px),
          rgba(245, 250, 252, .96);
        box-shadow: 0 22px 60px rgba(25, 71, 99, .16), inset 0 1px rgba(255, 255, 255, .7);
      }
      body.portfolio-active .main-nav {
        border-color: rgba(83, 184, 232, .25);
        background:
          linear-gradient(rgba(62, 166, 222, .045) 1px, transparent 1px),
          linear-gradient(90deg, rgba(62, 166, 222, .045) 1px, transparent 1px),
          rgba(9, 15, 24, .96);
        box-shadow: 0 22px 60px rgba(0, 0, 0, .38), inset 0 1px rgba(255, 255, 255, .04);
      }
      body.news-active .main-nav {
        border-color: rgba(25, 111, 158, .2);
        background:
          linear-gradient(rgba(21, 112, 160, .045) 1px, transparent 1px),
          linear-gradient(90deg, rgba(21, 112, 160, .045) 1px, transparent 1px),
          rgba(245, 250, 252, .96);
        box-shadow: 0 22px 60px rgba(25, 71, 99, .16), inset 0 1px rgba(255, 255, 255, .7);
      }
      body.contact-active .main-nav {
        border-color: rgba(83, 184, 232, .25);
        background:
          linear-gradient(rgba(62, 166, 222, .045) 1px, transparent 1px),
          linear-gradient(90deg, rgba(62, 166, 222, .045) 1px, transparent 1px),
          rgba(4, 11, 19, .97);
        box-shadow: 0 22px 60px rgba(0, 0, 0, .4), inset 0 1px rgba(255, 255, 255, .04);
      }
      body.footer-active .main-nav {
        border-color: rgba(25, 111, 158, .2);
        background:
          linear-gradient(rgba(21, 112, 160, .045) 1px, transparent 1px),
          linear-gradient(90deg, rgba(21, 112, 160, .045) 1px, transparent 1px),
          rgba(245, 250, 252, .96);
        box-shadow: 0 22px 60px rgba(25, 71, 99, .16), inset 0 1px rgba(255, 255, 255, .7);
      }
      .menu-toggle { display: block; }
      body.platforms-active .menu-toggle {
        color: #0b78ad;
        border-color: rgba(23, 112, 157, .28);
        background: rgba(247, 251, 253, .8);
      }
      body.portfolio-active .menu-toggle {
        color: #8edfff;
        border-color: rgba(91, 193, 238, .34);
        background: rgba(7, 14, 23, .72);
      }
      body.news-active .menu-toggle {
        color: #0b78ad;
        border-color: rgba(23, 112, 157, .28);
        background: rgba(247, 251, 253, .8);
      }
      body.contact-active .menu-toggle {
        color: #8edfff;
        border-color: rgba(91, 193, 238, .34);
        background: rgba(5, 13, 22, .74);
      }
      body.footer-active .menu-toggle {
        color: #0b78ad;
        border-color: rgba(23, 112, 157, .28);
        background: rgba(247, 251, 253, .8);
      }
      .mini-logo { margin-right: 0; }
      .header-actions { gap: 10px; }
      .feature { width: 150px; grid-template-columns: 48px 1fr; gap: 11px; }
      .feature.left { left: 18px; }
      .feature.right { right: 18px; }
      .icon-ring { width: 46px; height: 46px; }
      .icon-ring svg { width: 22px; height: 22px; }
      .feature-name { margin: 0; font-size: 10px; letter-spacing: .12em; }
      .feature-description { display: none; }
      .platforms-heading { grid-template-columns: 1fr; gap: 13px; }
      .platforms-intro { max-width: 620px; }
      .platforms-inner { padding-top: 92px; }
      .portfolio-heading { grid-template-columns: 1fr; gap: 17px; }
      .portfolio-intro { max-width: 650px; }
      .portfolio-inner { padding-top: 102px; }
      .news-heading { grid-template-columns: 1fr; gap: 17px; }
      .news-intro { max-width: 680px; }
      .news-inner { padding-top: 102px; }
      .news-layout { grid-template-columns: 1fr; }
      .news-lead { min-height: 470px; }
      .news-side {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: auto auto;
      }
      .news-story { min-height: 220px; }
      .news-archive { grid-column: 1 / -1; }
      .contact-gate-heading { grid-template-columns: 1fr; gap: 18px; }
      .contact-intro { max-width: 680px; }
      .contact-form-shell { grid-template-columns: 1fr; gap: 34px; }
      .contact-form-intro {
        min-height: 0;
        padding-bottom: 0;
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(240px, .72fr);
        gap: 18px 34px;
      }
      .contact-form-note { margin-top: 5px; }
      .contact-form-close { grid-column: 1; }
      .contact-direct { grid-column: 2; grid-row: 1 / span 2; margin-top: 0; padding-top: 5px; align-content: end; }
    }

    @media (max-width: 760px) {
      html { scroll-snap-type: none; }
      .feature {
        width: 104px;
        min-height: 76px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        gap: 9px;
        text-align: center;
      }
      .feature.left { left: 12px; }
      .feature.right { right: 12px; }
      .feature-copy {
        display: block;
        width: 100%;
        padding: 0;
        text-align: center;
      }
      .feature-name { margin: 0; line-height: 1.32; }
      .feature::before {
        inset: -11px -6px;
        border-radius: 20px;
      }
      .hero-platform-bridge { height: clamp(190px, 24vh, 240px); }
      .bridge-node--left-a { left: 7%; }
      .bridge-node--right-a { left: 93%; }
      .platforms-section::after { display: none; }
      .platforms-inner {
        min-height: auto;
        padding: 98px 22px 54px;
      }
      .platforms-title { font-size: clamp(40px, 12vw, 60px); }
      .platforms-grid { grid-template-columns: 1fr; }
      .platform-card,
      .platform-card:first-child,
      .platform-card:last-child { padding: 0; }
      .platform-card {
        grid-template-rows: auto minmax(220px, auto) auto;
        gap: 20px;
      }
      .platform-card + .platform-card {
        margin-top: 48px;
        padding-top: 48px;
        border-left: 0;
        border-top: 1px solid rgba(48, 88, 118, .15);
      }
      .platform-visual { min-height: 230px; }
      .platform-description { max-width: 640px; }
      .portfolio-inner {
        min-height: auto;
        padding: 98px 22px 60px;
      }
      .portfolio-title { font-size: clamp(40px, 11vw, 58px); }
      .portfolio-grid { grid-template-columns: 1fr; gap: 46px; }
      .portfolio-project { gap: 14px; }
      .portfolio-project:nth-child(2),
      .portfolio-project:nth-child(3) { margin-top: 0; }
      .project-browser { height: clamp(275px, 66vw, 390px); }
      .project-description { max-width: 680px; }
      .project-footer { flex-direction: row; align-items: center; }
      .vestovoy-copy strong { font-size: clamp(24px, 6vw, 34px); }
      .section-circuit {
        transform: none;
      }
      .platforms-section > .section-circuit { opacity: .32; }
      .portfolio-section > .section-circuit { opacity: .4; }
      .section-nav {
        top: 52%;
        right: max(4px, env(safe-area-inset-right));
        width: 34px;
        gap: 0;
        transform: translate3d(14px, -50%, 0);
      }
      .section-nav.is-visible { transform: translate3d(0, -50%, 0); }
      .section-nav-list {
        width: 34px;
        gap: 4px;
      }
      .section-nav-list::before {
        top: 16px;
        right: 16.5px;
        bottom: 16px;
      }
      .section-nav-list::after {
        top: 16px;
        right: 16px;
        height: 25px;
        animation-name: sectionNavCurrentMobile;
      }
      .section-nav-link {
        width: 34px;
        min-height: 32px;
        justify-content: center;
        gap: 0;
      }
      .section-nav-label,
      .section-nav-link:hover .section-nav-label,
      .section-nav-link:focus-visible .section-nav-label {
        position: absolute;
        width: 1px;
        max-width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0 0 0 0);
        clip-path: inset(50%);
        background: none;
        white-space: nowrap;
        opacity: 1;
        transform: none;
      }
      .section-nav-node {
        width: 24px;
        height: 24px;
        flex-basis: 24px;
        font-size: 7px;
        -webkit-backdrop-filter: blur(7px) saturate(125%);
        backdrop-filter: blur(7px) saturate(125%);
        box-shadow: inset 0 0 10px rgba(39, 143, 208, .07), 0 0 0 3px transparent;
      }
      .section-nav-node::before { inset: 4px; }
      .section-nav-link:hover .section-nav-node,
      .section-nav-link:focus-visible .section-nav-node,
      .section-nav-link.is-active .section-nav-node {
        box-shadow: inset 0 0 11px rgba(45, 176, 231, .13), 0 0 0 3px color-mix(in srgb, var(--section-nav-line-hot) 10%, transparent), 0 0 13px color-mix(in srgb, var(--section-nav-line-hot) 28%, transparent);
      }
      .section-nav-up { display: none; }
      @keyframes sectionNavCurrentMobile {
        from { transform: translateY(-20px); opacity: 0; }
        12%, 88% { opacity: 1; }
        to { transform: translateY(176px); opacity: 0; }
      }
      .news-inner {
        min-height: auto;
        padding: 98px 22px 60px;
      }
      .news-title { font-size: clamp(39px, 10.7vw, 58px); }
      .news-layout { gap: 34px; }
      .news-side { gap: 18px; }
      .news-section > .section-circuit { opacity: .38; }
      .contact-inner {
        min-height: auto;
        padding: 98px 22px 60px;
      }
      .contact-title { font-size: clamp(40px, 10.7vw, 58px); }
      .contact-launch { min-height: 184px; }
      .contact-launch-label { font-size: clamp(43px, 10vw, 72px); }
      .contact-section > .section-circuit { opacity: .4; }
      .contact-form-shell { min-height: auto; }
    }

    @media (max-width: 620px) {
      body { overflow-x: hidden; overflow-y: auto; }
      .page { height: 820px; min-height: 820px; }
      .hero-platform-bridge { height: 190px; }
      .hero-platform-bridge::before { background-size: 32px 32px, 32px 32px, 100% 4px; }
      .site-header { height: 74px; padding: 19px 18px 0; }
      .header-actions .primary { min-width: 124px; height: 34px; padding-inline: 12px; font-size: 11px; }
      .top-signal { top: 66px; }
      .feature { width: 90px; }
      .feature.left { left: 6px; }
      .feature.right { right: 6px; }
      .feature.row-one { top: 24%; }
      .feature.row-two { top: 41%; }
      .feature.row-three { top: 57%; }
      .feature {
        min-height: 70px;
        gap: 8px;
      }
      .feature-name {
        margin: 0;
        font-size: 9.25px;
        font-weight: 500;
        line-height: 1.32;
        letter-spacing: .055em;
        overflow-wrap: break-word;
      }
      .icon-ring {
        width: 40px;
        height: 40px;
      }
      .icon-ring::before { inset: 5px; }
      .icon-ring::after { inset: -5px; }
      .icon-ring svg { width: 20px; height: 20px; }
      .feature::before {
        inset: -10px -5px;
        border-radius: 20px;
      }
      .main-nav {
        top: 66px;
        left: 10px;
        right: 10px;
      }
      .platforms-inner { padding: 90px 16px 44px; }
      .platforms-kicker { margin-bottom: 12px; }
      .platforms-title { font-size: 39px; }
      .platforms-intro { font-size: 14px; line-height: 1.6; }
      .platform-card + .platform-card { margin-top: 40px; padding-top: 40px; }
      .platform-visual { min-height: 210px; border-radius: 22px; }
      .cms-window { inset: 14px; }
      .map-label { min-width: 82px; padding: 8px 10px; }
      .platform-name { font-size: 34px; }
      .platform-description { font-size: 14px; }
      .platform-points { gap: 8px 13px; }
      .portfolio-inner { padding: 90px 16px 52px; }
      .portfolio-kicker { margin-bottom: 12px; }
      .portfolio-title { font-size: 38px; }
      .portfolio-intro { font-size: 14px; line-height: 1.6; }
      .portfolio-grid { gap: 40px; }
      .project-browser { height: 280px; border-radius: 2px; }
      .project-preview { border-radius: 2px; }
      .project-name { font-size: 31px; }
      .project-description { font-size: 14px; }
      .project-footer { align-items: flex-start; flex-direction: column; }
      .vestovoy-copy { top: 72px; }
      .news-inner { padding: 90px 16px 52px; }
      .news-kicker { margin-bottom: 12px; }
      .news-title { font-size: 37px; }
      .news-intro { font-size: 14px; line-height: 1.6; }
      .news-lead {
        min-height: 0;
        grid-template-columns: 1fr;
      }
      .news-lead-media { min-height: 310px; }
      .news-lead-media::after { background: linear-gradient(180deg, transparent 58%, rgba(242, 249, 251, .9)); }
      .news-lead::before { background: repeating-linear-gradient(0deg, transparent 0 3px, rgba(23, 111, 151, .04) 3px 4px); }
      .news-lead-copy { padding: 26px 22px 30px; }
      .news-lead-title { font-size: 31px; }
      .news-side { grid-template-columns: 1fr; grid-template-rows: auto; }
      .news-story { min-height: 196px; }
      .news-archive { grid-column: auto; }
      .contact-inner { padding: 90px 16px 52px; }
      .contact-gate { min-height: 670px; }
      .contact-kicker { margin-bottom: 12px; }
      .contact-title { font-size: 38px; }
      .contact-intro { font-size: 14px; line-height: 1.6; }
      .contact-launch {
        min-height: 204px;
        padding: 25px 22px;
        align-items: flex-start;
      }
      .contact-launch-label {
        max-width: 225px;
        font-size: 47px;
        line-height: .92;
        white-space: normal;
      }
      .contact-launch-icon {
        position: absolute;
        right: 20px;
        bottom: 20px;
        width: 58px;
        height: 58px;
      }
      .contact-gate-meta { align-items: flex-start; flex-direction: column; gap: 7px; }
      .contact-form-intro { display: block; }
      .contact-form-title { font-size: 47px; }
      .contact-form-note { margin-top: 18px; }
      .contact-form-close { margin-top: 22px; }
      .contact-direct { margin-top: 24px; padding-top: 22px; border-top: 1px solid rgba(18, 102, 145, .14); }
      .contact-fields { grid-template-columns: 1fr; }
      .contact-field--wide,
      .contact-budget,
      .contact-consent { grid-column: auto; }
      .contact-budget-options { position: static; margin-top: 8px; }
      .contact-submit { min-height: 112px; border-radius: 20px; }
      .contact-success { min-height: 440px; }
      .contact-success h3 { font-size: 44px; }
    }

    @media (max-height: 800px) and (min-width: 761px) {
      .platforms-inner {
        padding-top: 82px;
        padding-bottom: 26px;
        gap: 17px;
      }
      .platforms-heading { gap: 28px; }
      .platforms-kicker { margin-bottom: 7px; font-size: 9px; }
      .platforms-title { font-size: clamp(36px, 4.2vw, 54px); }
      .platforms-intro { font-size: 13px; line-height: 1.45; }
      .platform-card { grid-template-rows: auto minmax(146px, 1fr) auto; gap: 11px; }
      .platform-card-head { gap: 9px; }
      .platform-number { font-size: 10px; }
      .platform-type { font-size: 8px; }
      .platform-visual { min-height: 146px; border-radius: 20px; }
      .cms-window { inset: 12px 16px; border-radius: 16px; }
      .map-label { min-width: 76px; padding: 6px 8px; }
      .trans-platform-panel { inset: 9px; padding: 8px 9px; border-radius: 15px; }
      .trans-platform-toolbar { gap: 6px; }
      .trans-platform-mark { width: 21px; height: 21px; flex-basis: 21px; border-radius: 7px; }
      .trans-platform-toolbar strong { font-size: 7px; }
      .trans-platform-toolbar span { padding: 3px 5px; font-size: 6px; }
      .trans-platform-network { margin-top: 4px; }
      .trans-ai-orbit { width: 34px; height: 34px; }
      .trans-ai-orbit i { width: 24px; height: 24px; }
      .trans-city { padding: 3px 5px; }
      .trans-carrier-result { min-width: 84px; padding: 4px 5px; }
      .platform-name { margin-bottom: 6px; font-size: clamp(24px, 2.4vw, 32px); }
      .platform-description { font-size: 12px; line-height: 1.4; }
      .platform-points { margin-top: 8px; gap: 5px 10px; }
      .platform-points li { font-size: 9px; }
      .platform-link { margin-top: 9px; font-size: 10px; }
    }

    @media (max-height: 800px) and (min-width: 621px) {
      .site-header { height: 72px; padding-top: 19px; }
      .top-signal { top: 66px; }
      .feature.row-one { top: 20%; }
      .feature.row-two { top: 40%; }
      .feature.row-three { top: 60%; }
      .portfolio-inner {
        padding-top: 92px;
        padding-bottom: 34px;
        gap: 24px;
      }
      .portfolio-kicker { margin-bottom: 10px; }
      .portfolio-title { font-size: clamp(38px, 4.5vw, 58px); }
      .portfolio-intro { font-size: 14px; }
      .project-browser { height: clamp(220px, 28vh, 250px); }
      .project-description { line-height: 1.45; }
      .portfolio-project:nth-child(2) { margin-top: 22px; }
      .portfolio-project:nth-child(3) { margin-top: 8px; }
      .news-inner {
        padding-top: 92px;
        padding-bottom: 34px;
        gap: 24px;
      }
      .news-kicker { margin-bottom: 10px; }
      .news-title { font-size: clamp(38px, 4.4vw, 57px); }
      .news-intro { font-size: 14px; }
      .news-lead { min-height: 420px; }
      .news-lead-copy { padding: 26px; }
      .news-lead-title { font-size: clamp(27px, 2.65vw, 39px); }
      .news-lead-text { margin-top: 14px; font-size: 13px; }
      .news-story-text { display: none; }
      .contact-inner {
        padding-top: 92px;
        padding-bottom: 34px;
      }
      .contact-gate { min-height: calc(100vh - 126px); }
      .contact-launch { min-height: 154px; margin-top: 28px; }
      .contact-form-title { font-size: clamp(42px, 4.9vw, 64px); }
      .contact-form-note { margin-top: 15px; }
      .contact-field input,
      .contact-budget summary { height: 51px; }
      .contact-field textarea { min-height: 145px; }
      .contact-submit { min-height: 104px; }
    }

    @media (max-width: 1120px) {
      .footer-inner { padding-inline: 40px; }
      .footer-main {
        grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
        gap: clamp(34px, 4.5vw, 58px);
      }
      .footer-columns { gap: clamp(18px, 2.5vw, 34px); }
      .footer-wordmark { font-size: clamp(48px, 5.6vw, 66px); }
    }

    @media (max-width: 860px) {
      .footer-main { grid-template-columns: minmax(240px, .67fr) minmax(0, 1.33fr); gap: 32px; }
      .footer-columns { gap: 18px; }
      .footer-tagline { font-size: 14px; }
      .footer-links a,
      .footer-links span { font-size: 11px; }
      .footer-links .footer-contact-primary { font-size: 12px; }
    }

    @media (max-width: 760px) {
      .site-footer,
      .footer-inner { min-height: auto; }
      .footer-signal { left: 22px; right: 22px; }
      .footer-inner { padding: 108px 22px 34px; gap: 48px; }
      .footer-main { grid-template-columns: 1fr; gap: 50px; }
      .footer-wordmark { font-size: clamp(50px, 11vw, 72px); }
      .footer-tagline { max-width: 590px; }
      .footer-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px 28px; }
      .footer-location { align-items: flex-start; flex-direction: column; gap: 15px; }
      .footer-location-meta { white-space: normal; }
      .footer-bottom { align-items: flex-start; }
    }

    @media (max-width: 620px) {
      .site-footer::after { right: 16px; bottom: 18px; font-size: 17vw; }
      .footer-inner { padding: 100px 16px 30px; }
      .footer-main { gap: 42px; }
      .footer-wordmark { font-size: clamp(46px, 15vw, 60px); }
      .footer-tagline { margin-top: 24px; }
      .footer-accreditation { align-items: flex-start; border-radius: 16px; }
      .footer-columns { grid-template-columns: 1fr; gap: 32px; }
      .footer-column { padding-top: 16px; }
      .footer-column-title { margin-bottom: 16px; }
      .footer-links { gap: 11px; }
      .footer-links a,
      .footer-links span { font-size: 12px; }
      .footer-links .footer-contact-primary { font-size: 14px; }
      .footer-location { padding: 21px 0; }
      .footer-address { align-items: flex-start; }
      .footer-bottom { flex-direction: column; gap: 18px; }
    }

    @media (max-height: 800px) and (min-width: 761px) {
      .footer-inner {
        padding-top: 94px;
        padding-bottom: 27px;
        gap: 28px;
      }
      .footer-main { gap: 38px; }
      .footer-kicker { margin-bottom: 11px; }
      .footer-wordmark { font-size: clamp(48px, 5.5vw, 74px); }
      .footer-tagline { margin-top: 19px; font-size: 13px; line-height: 1.55; }
      .footer-accreditation { margin-top: 15px; padding-block: 8px; }
      .footer-column { padding-top: 14px; }
      .footer-column-title { margin-bottom: 14px; }
      .footer-links { gap: 9px; }
      .footer-location { padding: 16px 0; }
      .footer-meta { gap: 17px; }
    }

    /* Real product interfaces on the home-page platform slide. */
    .platform-visual.platform-preview {
      --preview-accent: #5fbfe9;
      --preview-rgb: 95, 191, 233;
      --preview-surface: #f8fcfd;
      --preview-surface-soft: #dfeef3;
      position: relative;
      width: 100%;
      height: clamp(225px, 25vh, 285px);
      min-height: 225px;
      aspect-ratio: auto;
      margin: 0;
      overflow: hidden;
      isolation: isolate;
      border: 1px solid rgba(var(--preview-rgb), .28);
      border-radius: 22px;
      background:
        radial-gradient(circle at 84% 18%, rgba(var(--preview-rgb), .2), transparent 36%),
        linear-gradient(145deg, var(--preview-surface), var(--preview-surface-soft) 78%);
      box-shadow: 0 21px 48px rgba(45, 78, 94, .15), inset 0 1px rgba(255, 255, 255, .92);
    }

    .platform-preview--post { --preview-accent: #d96331; --preview-rgb: 217, 99, 49; --preview-surface: #fffaf6; --preview-surface-soft: #f0ded1; }
    .platform-preview--cms { --preview-accent: #2799cf; --preview-rgb: 39, 153, 207; --preview-surface: #f8fcfe; --preview-surface-soft: #d9edf6; }
    .platform-preview--trans { --preview-accent: #6677d3; --preview-rgb: 102, 119, 211; --preview-surface: #fafbff; --preview-surface-soft: #e1e6f7; }

    .platform-visual.platform-preview::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 0;
      opacity: .34;
      background-image:
        linear-gradient(rgba(var(--preview-rgb), .08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(var(--preview-rgb), .08) 1px, transparent 1px);
      background-size: 24px 24px;
      -webkit-mask-image: linear-gradient(135deg, #000, transparent 80%);
      mask-image: linear-gradient(135deg, #000, transparent 80%);
      animation: none;
    }

    .platform-visual.platform-preview::after {
      content: "";
      position: absolute;
      top: -30%;
      bottom: -30%;
      left: 34%;
      z-index: 5;
      width: 18%;
      pointer-events: none;
      opacity: .34;
      background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .14), transparent);
      transform: skewX(-17deg);
      animation: none;
    }

    .platform-preview-bar {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      z-index: 7;
      height: 34px;
      padding: 0 13px;
      border-bottom: 1px solid rgba(var(--preview-rgb), .15);
      display: flex;
      align-items: center;
      gap: 9px;
      color: rgba(49, 80, 93, .54);
      background: rgba(249, 252, 252, .9);
      box-shadow: 0 8px 22px rgba(37, 72, 87, .07);
    }

    .platform-preview-bar > span { display: flex; gap: 4px; }
    .platform-preview-bar > span i { width: 5px; height: 5px; border-radius: 50%; background: rgba(var(--preview-rgb), .38); }
    .platform-preview-bar > span i:first-child { background: var(--preview-accent); box-shadow: 0 0 8px rgba(var(--preview-rgb), .58); }
    .platform-preview-bar strong { color: rgba(35, 66, 80, .78); font-size: 6px; font-weight: 600; letter-spacing: .13em; }
    .platform-preview-bar em { margin-left: auto; color: var(--preview-accent); opacity: .78; font-size: 5px; font-style: normal; letter-spacing: .1em; text-transform: uppercase; }

    .platform-preview-stage {
      position: absolute;
      inset: 34px 0 28px;
      z-index: 2;
      overflow: hidden;
      perspective: 900px;
    }

    .platform-preview-screen {
      position: absolute;
      overflow: hidden;
      border: 1px solid rgba(var(--preview-rgb), .24);
      border-radius: 8px;
      background: #edf4f6;
      box-shadow: 0 15px 28px rgba(34, 64, 78, .19), inset 0 1px rgba(255, 255, 255, .78);
      transition: transform .55s cubic-bezier(.2, .72, .2, 1), box-shadow .4s ease;
    }

    .platform-preview-screen::after {
      content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      background: linear-gradient(135deg, rgba(var(--preview-rgb), .09), transparent 46%, rgba(28, 61, 75, .07));
      mix-blend-mode: color;
    }

    .platform-preview-screen img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      filter: saturate(.82) contrast(1.045) brightness(.98);
    }

    .platform-preview-screen--post-main { left: 3%; top: 5%; width: 88%; height: 72%; transform: rotate(-.55deg); }
    .platform-preview-screen--post-main img { object-position: left top; }
    .platform-preview-screen--post-routing { left: 4%; bottom: 3%; z-index: 3; width: 50%; height: 47%; transform: rotate(.7deg); }
    .platform-preview-screen--post-routing img { object-fit: contain; object-position: center; background: #edf3f5; }
    .platform-preview-screen--post-mobile { right: 3%; bottom: 3%; z-index: 4; width: 35%; height: 65%; transform: rotate(1.5deg); background: #006380; }
    .platform-preview-screen--post-mobile img { object-fit: contain; object-position: center; }

    .platform-preview-screen--cms-main { left: 3%; top: 5%; width: 92%; height: 84%; transform: rotate(-.6deg); }
    .platform-preview-screen--cms-main img { object-position: left top; }
    .platform-preview-screen--cms-detail { right: 3%; bottom: 3%; z-index: 4; width: 59%; height: 49%; transform: rotate(1.25deg); }
    .platform-preview-screen--cms-detail img { object-position: left top; }

    .platform-preview-screen--trans-main { left: 3%; top: 4%; width: 92%; height: 88%; transform: rotate(-.5deg); }
    .platform-preview-screen--trans-main img { object-position: center top; }
    .platform-preview-screen--trans-detail { right: 3%; bottom: 3%; z-index: 4; width: 54%; height: 51%; transform: rotate(1.2deg); }
    .platform-preview-screen--trans-detail img { object-position: 82% 74%; transform: scale(1.72); transform-origin: 82% 74%; }

    .platform-preview:hover .platform-preview-screen--post-main,
    .platform-preview:hover .platform-preview-screen--cms-main,
    .platform-preview:hover .platform-preview-screen--trans-main { transform: translate(-3px, -2px) rotate(-.85deg); }
    .platform-preview:hover .platform-preview-screen--post-mobile,
    .platform-preview:hover .platform-preview-screen--cms-detail,
    .platform-preview:hover .platform-preview-screen--trans-detail { transform: translate(4px, 2px) rotate(1.6deg); }

    .platform-preview figcaption {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 7;
      min-height: 28px;
      padding: 0 13px;
      border-top: 1px solid rgba(var(--preview-rgb), .14);
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      color: rgba(48, 78, 91, .56);
      background: rgba(249, 252, 252, .92);
      font-size: 5px;
      letter-spacing: .11em;
      line-height: 1.25;
      text-transform: uppercase;
    }

    .platform-preview figcaption strong { color: var(--preview-accent); font-weight: 600; text-align: right; }

    @media (max-width: 760px) {
      .platform-visual.platform-preview {
        width: 100%;
        height: clamp(250px, 54vw, 380px);
        min-height: 250px;
        aspect-ratio: auto;
      }
      .platform-preview-bar { height: 38px; padding-inline: 14px; }
      .platform-preview-stage { inset: 38px 0 32px; }
      .platform-preview figcaption { min-height: 32px; padding-inline: 14px; font-size: 6px; }
    }

    @media (max-width: 620px) {
      .platform-visual.platform-preview { height: 250px; min-height: 250px; border-radius: 19px; }
      .platform-preview-bar em { display: none; }
      .platform-preview-screen { border-radius: 7px; }
      .platform-preview figcaption span { max-width: 54%; }
    }

    @media (max-height: 800px) and (min-width: 761px) {
      .platform-visual.platform-preview { height: clamp(215px, 29vh, 235px); min-height: 215px; aspect-ratio: auto; }
      .platform-preview-bar { height: 30px; }
      .platform-preview-stage { inset: 30px 0 24px; }
      .platform-preview figcaption { min-height: 24px; }
    }

    /* Consistent circuit weight: brightness carries the current, not a thicker stroke. */
    .circuit-stage .pcb-path,
    .circuit-stage .pcb-path.major,
    .circuit-stage .pcb-path.minor,
    .circuit-stage .charge-path,
    .circuit-stage .charge-path.is-hot,
    .bridge-circuit .bridge-trace,
    .bridge-circuit .bridge-current,
    .section-circuit defs path,
    .section-circuit .section-circuit-trace,
    .section-circuit .section-circuit-current {
      stroke-width: 1.1px;
      vector-effect: non-scaling-stroke;
      stroke-linecap: round;
      stroke-linejoin: round;
      shape-rendering: geometricPrecision;
    }

    .circuit-stage .pcb-path.major,
    .circuit-stage .pcb-path.is-hot {
      filter: drop-shadow(0 0 1.5px rgba(74, 185, 242, .42));
    }

    .circuit-stage .charge-path,
    .bridge-circuit .bridge-current,
    .section-circuit .section-circuit-current {
      filter: drop-shadow(0 0 2px rgba(71, 205, 255, .62));
    }

    .platforms-section > .section-circuit,
    .portfolio-section > .section-circuit,
    .news-section > .section-circuit,
    .contact-section > .section-circuit {
      opacity: .62;
    }

    .section-circuit .section-circuit-node {
      stroke-width: 1.1px;
      vector-effect: non-scaling-stroke;
      shape-rendering: geometricPrecision;
    }

    @media (max-width: 760px) {
      .platforms-section > .section-circuit,
      .portfolio-section > .section-circuit,
      .news-section > .section-circuit,
      .contact-section > .section-circuit {
        opacity: .36;
      }
    }

    /* Runtime fallback for devices that cannot keep the current animation smooth. */
    html.motion-lite .charge-path,
    html.motion-lite .chip-glint,
    html.motion-lite .bridge-current,
    html.motion-lite .section-circuit-current,
    html.motion-lite .section-nav-list::after,
    html.motion-lite .portfolio-transition-scan::after,
    html.motion-lite .news-transition::after,
    html.motion-lite .contact-transition::after,
    html.motion-lite .footer-signal-rail::before,
    html.motion-lite .footer-signal-rail::after {
      display: none !important;
      animation: none !important;
      filter: none !important;
    }

    html.motion-lite .section-circuit-node,
    html.motion-lite .bridge-node::after,
    html.motion-lite .vestovoy-globe,
    html.motion-lite .vestovoy-route::after,
    html.motion-lite .vestovoy-arrows i,
    html.motion-lite .news-badge::before,
    html.motion-lite .contact-gate-meta span:last-child::before,
    html.motion-lite .footer-signal-node::after,
    html.motion-lite .footer-wordmark,
    html.motion-lite .footer-accreditation::before,
    html.motion-lite .mini-logo {
      animation: none !important;
    }

    html.motion-lite .circuit-stage {
      transform: none !important;
      transition: none !important;
    }

    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-delay: 0ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
      }
      .circuit-stage { transform: none; transition: none; }
      .hero-platform-bridge::after,
      .bridge-node { transition: none; }
      .bridge-current,
      .bridge-node::after { animation: none; }
      .feature::before { transition: none; }
      .platforms-section.reveal-ready .platforms-heading,
      .platforms-section.reveal-ready .platform-card { transition: none; }
      .portfolio-section.reveal-ready .portfolio-heading,
      .portfolio-section.reveal-ready .portfolio-project { transition: none; }
      .news-section.reveal-ready .news-heading,
      .news-section.reveal-ready .news-lead,
      .news-section.reveal-ready .news-side { transition: none; }
      .project-browser,
      .project-screen-image,
      .news-lead,
      .news-story,
      .news-lead-image,
      .news-story-image,
      .contact-gate,
      .contact-form-panel,
      .contact-launch,
      .contact-submit { transition: none; }
      .contact-transition::after { animation: none; }
      .contact-section.reveal-ready .contact-gate-heading,
      .contact-section.reveal-ready .contact-launch,
      .contact-section.reveal-ready .contact-gate-meta { transition: none; }
      .footer-signal-rail::before,
      .footer-signal-rail::after,
      .footer-signal-node::after,
      .footer-wordmark,
      .footer-accreditation::before { animation: none; }
      .site-footer.reveal-ready .footer-brand > *,
      .site-footer.reveal-ready .footer-column,
      .site-footer.reveal-ready .footer-location,
      .site-footer.reveal-ready .footer-bottom { transition: none; }
    }
