.home-symbols {
  position:absolute;
  width:0;
  height:0;
  overflow:hidden;
  pointer-events:none;
}
.home-page .frame {
  height:clamp(600px,calc(100svh - var(--nav-h) - var(--below-frame)),760px);
}
.home-page .copy {
  padding:64px 32px 64px 40px;
}
.home-page .hero-title {
  margin-top:20px;
}
.home-page .copy .actions {
  margin-top:24px;
}
.home-page .lede {
  margin-top:22px;
}
.home-page .protocols {
  margin-top:20px;
}
.home-page .matte {
  padding-left:40px;
}
.home-kicker {
  margin-bottom:18px;
  color:var(--text-muted);
  font-size:13px;
  letter-spacing:.08em;
}
.home-steps {
  gap:32px;
}
.home-step {
  min-width:0;
  padding-top:24px;
  border-top:1px solid var(--border);
}
.home-step-label {
  margin-bottom:20px;
  color:var(--accent);
  font-size:13px;
}
.home-step p:not(.home-step-label) {
  color:var(--text-muted);
  line-height:1.85;
}
.home-step p:last-child {
  margin-bottom:0;
}
.home-platform-card {
  display:flex;
  flex-direction:column;
}
.home-platform-heading {
  display:inline-flex;
  align-items:center;
  gap:14px;
  color:var(--text);
}
.home-platform-heading:hover {
  color:var(--accent);
}
.home-platform-heading svg {
  width:25px;
  height:25px;
  flex-shrink:0;
}
.home-platform-card p:not(.client-meta) {
  line-height:1.85;
}
.home-platform-card .actions {
  margin-top:auto;
  padding-top:12px;
}
.home-download-note {
  max-width:800px;
  margin-top:32px;
}
.home-download-note p {
  color:var(--text-muted);
  line-height:1.85;
}
.home-download-note > a {
  display:inline-block;
  margin-right:24px;
  padding-top:8px;
  padding-bottom:8px;
}
.home-feature-note {
  max-width:800px;
  margin-top:32px;
  margin-bottom:0;
  color:var(--text-muted);
  line-height:1.85;
}
.home-ecosystem {
  overflow-wrap:break-word;
}
.home-ecosystem .home-ecosystem-lead {
  max-width:48em;
  margin-bottom:40px;
  font-size:17px;
  line-height:1.85;
}
.home-ecosystem-grid {
  gap:36px 48px;
}
.home-ecosystem-grid h3 {
  padding-top:24px;
  border-top:1px solid var(--on-dark-line);
  color:var(--on-dark);
  font-size:23px;
}
.home-ecosystem-grid p {
  font-size:14px;
  line-height:1.95;
}
.home-ecosystem-grid p:last-child {
  margin-bottom:0;
}
.home-page .home-ecosystem .protocols {
  margin-top:36px;
}
.home-ecosystem .actions {
  align-items:center;
}
.home-dark-link {
  color:var(--accent-glow);
  padding:10px 0;
}
.home-dark-link:hover {
  color:var(--on-dark);
}
@media (min-width:901px) and (max-width:1180px) {
  .home-page .copy {
    padding-left:28px;
    padding-right:24px;
  }
  .home-page .hero-title {
    font-size:32px;
  }
  .home-page .matte {
    padding-left:28px;
  }
}
@media (max-width:900px) {
  .home-page .frame {
    height:auto;
  }
  .home-page .copy {
    order:0;
    padding:28px 24px;
  }
  .home-page .scene {
    order:1;
    height:140px;
    min-height:140px;
    border-top:1px solid var(--frame-line);
    border-bottom:0;
  }
  .home-page .scene-svg {
    height:300%;
    top:-185%;
  }
  .home-page .matte {
    display:none;
  }
  .home-page .hero-title {
    font-size:30px;
  }
  .home-page .hero-title .ht-line {
    display:inline;
  }
  .home-page .hero-title .ht-line:first-child {
    display:block;
    margin-bottom:4px;
  }
  .home-page .copy .actions {
    margin-top:20px;
  }
  .home-page .lede {
    max-width:38em;
    margin-top:18px;
  }
  .home-page .copy .protocols {
    margin-top:18px;
  }
}
@media (max-width:768px) {
  .home-page .hero-title {
    font-size:28px;
  }
  .home-steps {
    grid-template-columns:minmax(0,1fr);
    gap:32px;
  }
  .home-ecosystem-grid {
    gap:28px;
  }
}
@media (max-width:640px) {
  .home-page .copy {
    padding:22px 20px;
  }
  .home-page .hero-title {
    margin-top:16px;
    font-size:24px;
    line-height:1.2;
  }
  .home-page .tag {
    font-size:11.5px;
    min-height:26px;
  }
  .home-page .copy .actions {
    gap:10px;
    margin-top:18px;
  }
  .home-page .copy .btn {
    min-height:44px;
    padding:9px 15px;
    font-size:14px;
  }
  .home-page .lede {
    margin-top:16px;
    font-size:13px;
    line-height:1.7;
  }
  .home-page .copy .protocols {
    gap:6px;
    margin-top:16px;
  }
  .home-page .copy .protocols li {
    padding:3px 7px;
    font-size:10px;
    min-height:24px;
  }
  .home-page .scene {
    height:108px;
    min-height:108px;
  }
  .home-platforms {
    padding-top:16px;
    padding-bottom:16px;
  }
  .home-platforms ul {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    width:100%;
    max-width:440px;
    gap:0;
  }
  .home-platforms li {
    min-width:0;
    border-left:0;
  }
  .home-platforms a {
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:7px;
    min-height:50px;
    padding:2px 4px;
    font-size:11px;
  }
  .home-platforms .pf-ico {
    width:17px;
    height:17px;
  }
  .home-platforms .pf-ico--tux {
    width:15px;
  }
  .home-ecosystem .home-ecosystem-lead {
    font-size:15px;
    margin-bottom:28px;
  }
  .home-download-note > a {
    margin-right:16px;
  }
}