:root {
  --download-cta-size:20px;
  --download-product-size:24px;
  --download-rule-length:64px;
}

.download-opening {
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);
  gap:64px;
  align-items:center;
  padding-top:96px;
  padding-bottom:80px;
}

.download-opening > * {
  min-width:0;
}

.download-intro .appstore-btn {
  min-height:80px;
  padding:18px 32px;
  width:min(100%,380px);
  text-align:left;
  justify-content:flex-start;
}

.download-intro .appstore-btn strong {
  font-size:var(--download-cta-size);
  font-weight:var(--weight-brand);
}

.download-intro .appstore-btn strong span {
  display:inline;
}

.download-intro .facts-row {
  margin-top:32px;
}

.download-price-note {
  margin-top:16px;
  margin-bottom:0;
  font-size:var(--size-xs);
}

.download-identity {
  padding:32px;
  border:1px solid var(--border);
  background:var(--bg-panel);
  position:relative;
}

.download-identity::before {
  content:"";
  display:block;
  width:var(--download-rule-length);
  height:2px;
  background:var(--accent);
  margin-bottom:32px;
}

.download-logo {
  display:block;
  width:88px;
  height:88px;
  margin-bottom:24px;
}

.download-product-name {
  font-family:var(--font-display);
  font-size:var(--download-product-size);
  font-weight:var(--weight-display);
  letter-spacing:var(--tracking-title);
  overflow-wrap:anywhere;
}

.download-record {
  margin-top:24px;
  margin-bottom:32px;
}

.download-record dt {
  padding-top:16px;
  border-top:1px solid var(--border);
  font-family:var(--font-mono);
  font-size:var(--size-xs);
  color:var(--text-muted);
}

.download-record dd {
  margin:8px 0 20px;
  font-size:var(--size-sm);
  overflow-wrap:anywhere;
}

.download-chapter {
  padding-top:var(--section-space);
  padding-bottom:var(--section-space);
  border-top:1px solid var(--border);
}

.download-chapter .prose > h2:first-of-type {
  margin-top:0;
}

.download-white {
  background:var(--bg-panel);
}

.download-shots {
  margin-top:40px;
  margin-bottom:48px;
  padding-top:32px;
  padding-bottom:32px;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}

.download-shots .official-shot {
  margin-inline:0;
}

@media (max-width:1024px) {
  .download-opening {
    grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);
    gap:32px;
  }

  .download-identity {
    padding:24px;
  }
}

@media (max-width:768px) {
  .download-opening {
    grid-template-columns:minmax(0,1fr);
    padding-top:48px;
    padding-bottom:56px;
  }

  .download-intro .eyebrow {
    letter-spacing:.08em;
  }

  .download-identity {
    max-width:100%;
  }
}

@media (max-width:640px) {
  .download-intro .appstore-btn {
    padding-inline:20px;
  }

  .download-intro .appstore-btn strong {
    font-size:var(--size-body);
  }

  .download-intro .facts-row {
    justify-content:flex-start;
  }

  .download-shots .official-shot {
    margin-inline:auto;
  }
}