.download-intro {
  padding-top:24px;
  padding-bottom:48px;
}
.download-mast {
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
  align-items:center;
  gap:64px;
  padding:52px;
  background:var(--ink);
  color:var(--on-dark);
  border-radius:var(--radius-hero);
}
.download-mast > * {
  min-width:0;
}
.download-kicker {
  display:inline-flex;
  align-items:center;
  gap:12px;
  color:var(--on-dark-muted);
  font-size:var(--size-small);
}
.download-heading h1 {
  margin:22px 0;
  font-size:var(--size-h1);
}
.download-heading h1 span {
  color:var(--accent);
}
.download-heading p {
  max-width:540px;
  color:var(--on-dark-muted);
  line-height:1.85;
}
.download-heading strong {
  color:var(--on-dark);
}
.download-mast :focus-visible {
  outline-color:var(--accent);
}
.download-route {
  padding:28px;
  border:1px solid var(--on-dark-line);
  border-radius:var(--radius-panel);
  background:var(--on-dark-fill);
}
.download-route-title {
  margin-bottom:24px;
  font-weight:var(--weight-bold);
}
.download-route ol {
  margin:0;
  padding:0;
  list-style:none;
}
.download-route li {
  display:flex;
  align-items:flex-start;
  gap:16px;
}
.download-route li + li {
  margin-top:24px;
}
.download-route li > span {
  display:grid;
  place-items:center;
  flex-shrink:0;
  width:36px;
  height:36px;
  border:1px solid var(--on-dark-line);
  border-radius:var(--radius-circle);
  color:var(--accent);
  font-family:var(--font-mono);
  font-size:var(--size-small);
}
.download-route strong {
  font-weight:var(--weight-semibold);
}
.download-route li p {
  margin:4px 0 0;
  color:var(--on-dark-muted);
  font-size:var(--size-small);
}
.download-section-heading {
  margin-bottom:28px;
}
.download-section-heading h2 {
  margin-top:0;
  margin-bottom:14px;
}
.download-section-heading > :last-child {
  margin-bottom:0;
}
.download-platform-title {
  margin:32px 0 24px;
  font-size:var(--size-h3);
}
.download-packages {
  gap:20px;
}
.download-package {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  min-width:0;
  padding:24px;
  border:1px solid var(--border);
  border-radius:var(--radius-card);
  background:var(--bg-panel);
}
.download-package h4 {
  margin:0 0 10px;
  font-family:var(--font-display);
  font-size:var(--size-h3);
  font-weight:var(--weight-bold);
}
.download-package p {
  margin-bottom:20px;
  color:var(--text-muted);
}
.download-package .btn {
  width:100%;
  min-height:54px;
  margin-top:auto;
}
.download-format {
  display:block;
  margin-top:12px;
  color:var(--text-muted);
  font-size:var(--size-small);
  text-align:center;
}
.download-arm-link {
  display:block;
  min-height:44px;
  margin-top:10px;
  padding-top:10px;
  padding-bottom:10px;
  font-size:var(--size-small);
  text-align:center;
}
.download-card-notes {
  margin-top:28px;
  padding-top:24px;
  border-top:1px solid var(--border);
  color:var(--text-muted);
  line-height:1.85;
}
.download-card-notes > :last-child {
  margin-bottom:0;
}
.download-requirements {
  margin-top:32px;
}
.download-requirements h3 {
  margin-bottom:18px;
}
.download-requirements > p {
  margin-top:18px;
  margin-bottom:0;
  font-size:var(--size-small);
  line-height:1.85;
}
.download-check {
  min-width:0;
}
.download-check h3 {
  margin-top:16px;
}
.download-check p {
  color:var(--text-muted);
  line-height:1.85;
}
.download-version-note {
  align-self:start;
  margin-top:0;
  margin-bottom:0;
}
.download-version-note dl {
  margin:24px 0;
}
.download-version-note dt {
  margin-top:20px;
  font-weight:var(--weight-semibold);
}
.download-version-note dd {
  margin:6px 0 0;
  color:var(--text-muted);
}
.download-version-note p {
  font-size:var(--size-small);
  line-height:1.85;
}
.download-faq-more {
  margin-top:24px;
  margin-bottom:0;
}
@media (max-width:960px) {
  .download-mast {
    grid-template-columns:minmax(0,1fr);
    gap:32px;
    padding:36px;
  }
  .download-route ol {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
  }
  .download-route li {
    flex-direction:column;
    gap:10px;
  }
  .download-route li + li {
    margin-top:0;
  }
}
@media (max-width:768px) {
  .download-heading h1 {
    font-size:clamp(24px,5vw,30px);
  }
}
@media (max-width:640px) {
  .download-intro {
    padding-top:12px;
    padding-bottom:36px;
  }
  .download-mast {
    padding:28px 20px;
    gap:28px;
  }
  .download-kicker {
    gap:10px;
  }
  .download-route {
    padding:20px;
    border-radius:var(--radius-card);
  }
  .download-route ol {
    grid-template-columns:minmax(0,1fr);
  }
  .download-route li {
    flex-direction:row;
    gap:12px;
  }
  .download-package {
    padding:20px 16px;
  }
  .download-package .btn {
    padding-inline:14px;
  }
  .download-card-notes {
    margin-top:24px;
  }
}