/* Download and support extend the existing Stylify marketing tokens and shell. */
.sd-hero { padding: 82px 0 88px; background: var(--surface-paper); border-bottom: 1px solid var(--border); }
.sd-hero-inner { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(300px, .75fr); gap: 76px; align-items: center; }
.sd-hero h1 { max-width: 650px; margin: 20px 0 18px; color: var(--ink); font: var(--text-display-xl); letter-spacing: var(--ls-display); }
.sd-lede { max-width: 610px; margin: 0; color: var(--text-secondary); font: 400 18px/1.58 var(--font-sans); }
.sd-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.sd-main-cta { min-height: 48px; padding: 0 24px; font-weight: 600; }
.sd-small-note { margin: 15px 0 0; color: var(--text-muted); font: 500 12px/1.6 var(--font-mono); }
.sd-quick-card { padding: 32px; border: 1px solid var(--border-strong); border-radius: var(--radius-lg); background: var(--surface-card); box-shadow: var(--shadow-card); }
.sd-quick-card h2 { margin: 13px 0 22px; color: var(--ink); font: var(--text-heading-lg); letter-spacing: var(--ls-display); }
.sd-quick-card ul { padding: 0; margin: 0; list-style: none; }
.sd-quick-card li { position: relative; padding: 12px 0 12px 25px; border-top: 1px solid var(--border); color: var(--text-body); font-size: 15px; }
.sd-quick-card li::before { position: absolute; left: 0; color: var(--sage-700); content: "✓"; font-weight: 700; }
.sd-quick-card p { margin: 20px 0 0; color: var(--text-secondary); font-size: 13px; line-height: 1.55; }
.sd-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; padding: 0; margin: 0; list-style: none; }
.sd-steps li { min-height: 225px; padding: 24px; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface-card); }
.sd-step-num { color: var(--sage-700); font: 600 12px/1 var(--font-mono); }
.sd-steps h3 { margin: 32px 0 10px; color: var(--ink); font: 500 18px/1.3 var(--font-display); letter-spacing: -0.03em; }
.sd-steps p { margin: 0; color: var(--text-secondary); font-size: 14px; line-height: 1.55; }
.sd-note { margin-top: 20px; padding: 16px 18px; border-left: 3px solid var(--sage-600); background: var(--sage-50); color: var(--text-body); font-size: 14px; line-height: 1.55; }
.sd-split { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; }
.sd-split h2, .sd-contact h2 { margin: 14px 0; color: var(--ink); font: var(--text-display); letter-spacing: var(--ls-display); }
.sd-split p { margin: 0 0 16px; color: var(--text-secondary); font-size: 16px; line-height: 1.65; }
.sd-inline-link { color: var(--sage-700); font-size: 14px; font-weight: 600; }
.sd-help-band { padding: 44px 0; background: var(--sage-100); }
.sd-help-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.sd-help-inner h2 { margin: 8px 0 0; color: var(--ink); font: var(--text-heading-lg); }
.sd-help-inner .btn { background: var(--surface-card); }
.sd-support-hero { padding: 76px 0 88px; }
.sd-support-hero .wrap { max-width: 900px; }
.sd-support-hero h1 { margin-top: 14px; }
.sd-search { width: 100%; max-width: 700px; min-height: 58px; margin-top: 30px; padding: 0 18px; display: flex; align-items: center; gap: 12px; border: 1px solid var(--border-strong); border-radius: var(--radius-md); background: var(--surface-card); box-shadow: var(--shadow-card); }
.sd-search span { color: var(--sage-700); font-size: 29px; line-height: 1; }
.sd-search input { flex: 1; min-width: 0; height: 56px; border: 0; outline: 0; background: transparent; color: var(--text-body); font: 400 16px/1.4 var(--font-sans); }
.sd-search:focus-within { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
.sd-search-status { min-height: 20px; margin: 9px 0 0; color: var(--text-muted); font-size: 13px; }
.sd-topic-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.sd-topic-grid a { position: relative; min-height: 164px; padding: 22px; display: flex; flex-direction: column; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface-card); color: var(--text-body); text-decoration: none; transition: border-color 150ms, transform 150ms; }
.sd-topic-grid a:hover { border-color: var(--sage-500); transform: translateY(-2px); }
.sd-topic-grid a[hidden] { display: none; }
.sd-topic-number { margin-bottom: 22px; color: var(--sage-700); font: 600 12px/1 var(--font-mono); }
.sd-topic-grid strong { color: var(--ink); font: 500 17px/1.3 var(--font-display); }
.sd-topic-grid a > span:nth-last-child(2) { max-width: 225px; margin-top: 7px; color: var(--text-secondary); font-size: 13px; line-height: 1.5; }
.sd-topic-arrow { position: absolute; top: 18px; right: 20px; color: var(--sage-700); font-size: 19px; }
.sd-no-results { padding: 28px; border: 1px solid var(--border); border-radius: var(--radius-md); }
.sd-no-results h3 { margin: 0 0 6px; color: var(--ink); font: var(--text-heading-lg); }
.sd-no-results p { margin: 0; color: var(--text-secondary); }
.sd-article-list { border-top: 1px solid var(--border); }
.sd-article { max-width: 840px; padding: 38px 0; border-top: 1px solid var(--border); scroll-margin-top: 30px; }
.sd-article:first-of-type { border-top: 0; }
.sd-article-label { color: var(--sage-700); font: 600 11px/1.4 var(--font-mono); letter-spacing: .07em; text-transform: uppercase; }
.sd-article h3 { margin: 8px 0 14px; color: var(--ink); font: var(--text-heading-lg); letter-spacing: var(--ls-display); }
.sd-article p, .sd-article li { color: var(--text-secondary); font-size: 16px; line-height: 1.65; }
.sd-article p { margin: 0 0 16px; }
.sd-article ol { margin: 0 0 16px; padding-left: 24px; }
.sd-article li { padding-left: 8px; margin: 8px 0; }
.sd-article li::marker { color: var(--sage-700); font-family: var(--font-mono); font-weight: 600; }
.sd-article .sd-article-note { margin: 0; padding: 13px 16px; border-left: 3px solid var(--sage-600); background: var(--sage-50); color: var(--text-body); font-size: 14px; }
.sd-contact { display: grid; grid-template-columns: 1fr .7fr; gap: 80px; align-items: center; }
.sd-contact > div:first-child p { max-width: 660px; margin: 0; color: var(--text-secondary); font-size: 16px; line-height: 1.65; }
.sd-contact-card { padding: 28px; border: 1px solid var(--border-strong); border-radius: var(--radius-md); background: var(--surface-paper); }
.sd-contact-card .btn { width: 100%; margin-top: 20px; }
.sd-contact-card p { margin: 16px 0 0; color: var(--text-muted); font-size: 13px; }
@media (max-width: 900px) { .sd-hero-inner, .sd-split, .sd-contact { grid-template-columns: 1fr; gap: 32px; } .sd-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } .sd-topic-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .sd-hero { padding: 54px 0 64px; } .sd-hero h1 { font-size: 36px; } .sd-lede { font-size: 16px; } .sd-actions { flex-direction: column; align-items: stretch; } .sd-actions .btn { width: 100%; white-space: normal; text-align: center; } .sd-quick-card { padding: 24px; } .sd-steps, .sd-topic-grid { grid-template-columns: 1fr; } .sd-steps li { min-height: 0; } .sd-steps h3 { margin-top: 20px; } .sd-help-inner { align-items: flex-start; flex-direction: column; } .sd-contact-card .btn { font-size: 12px; } }

/* Download hero: the visitor's platform leads (.is-primary); the other stays visible, smaller. */
.sd-platforms { display: flex; flex-direction: column; }
.sd-platform + .sd-platform { margin-top: 36px; padding-top: 28px; border-top: 1px solid var(--border); }
.sd-hero .sd-platform-title { max-width: 650px; margin: 14px 0 8px; color: var(--ink); font: var(--text-heading-lg); letter-spacing: var(--ls-display); }
.sd-hero .sd-platform.is-primary .sd-platform-title { margin: 20px 0 18px; font: var(--text-display-xl); }
.sd-platform:not(.is-primary) .sd-lede { font-size: 15px; }
.sd-platform:not(.is-primary) .sd-actions { margin-top: 18px; }
.sd-platform:not(.is-primary) .sd-main-cta { min-height: 40px; padding: 0 18px; }
.sd-platform-links { margin: 12px 0 0; color: var(--text-secondary); font-size: 14px; }
.sd-platform-links a { color: var(--sage-700); font-weight: 600; }
.badge-soon { display: inline-flex; align-items: center; gap: 7px; padding: 5px 12px; border-radius: var(--radius-pill); background: var(--surface-sunken); color: var(--text-secondary); font: var(--text-mono-label); letter-spacing: var(--ls-mono-label); text-transform: uppercase; }
.badge-soon .dot { width: 7px; height: 7px; border-radius: 50%; background: var(--gray-400); }
.sd-waitlist { margin-top: 20px; }
.sd-waitlist select { height: var(--control-height-lg); padding: 0 10px; border: 1px solid var(--border-strong); border-radius: var(--radius-sm); background: var(--surface-card); color: var(--text-body); font: 500 14px/1 var(--font-sans); }
.sd-waitlist-done { color: var(--sage-700); font-weight: 600; }
@media (max-width: 600px) { .sd-hero .sd-platform.is-primary .sd-platform-title { font-size: 36px; } .sd-waitlist .capture-row { flex-direction: column; } .sd-waitlist input[type="email"] { flex: none; } .sd-waitlist select, .sd-waitlist .btn { width: 100%; } }
.nav-links a[aria-current="page"] { color: var(--ink); font-weight: 600; }
.sd-platform.is-primary .sd-actions .btn { min-height: 48px; }
