.hero { padding-top:80px; padding-bottom:86px; }
.hero h1 { max-width:840px; font-size:clamp(2.55rem,5.2vw,5.05rem); line-height:1.01; }
.hero-card h2 { font-size:clamp(1.65rem,2.6vw,1.95rem); line-height:1.08; }
.result-count { display:inline-flex; align-items:center; min-height:34px; margin:0; padding:6px 11px; border:1px solid #cfdcd7; border-radius:999px; background:#fffefa; color:#587069; font-size:.82rem; font-weight:750; }
.library-status { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px 18px; margin:14px 0 22px; }
.library-support { display:inline-flex; align-items:center; flex-wrap:wrap; gap:4px 8px; margin:0; color:var(--muted); font-size:.82rem; }
.library-support a { display:inline-flex; align-items:center; gap:5px; min-height:34px; padding:0 11px; border:1px solid #c7b9ad; border-radius:999px; background:#fbf2eb; color:#5b4a3f; font-weight:850; text-decoration:none; }
.library-support a:hover,.library-support a:focus-visible { border-color:#7d6a5c; background:#f6e7db; color:#3f3129; }
.support-after-download { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px; align-items:center; margin-top:28px; padding:22px 24px; border:1px solid #d9c9bb; border-radius:20px; background:linear-gradient(145deg,#fffefa,#fbf3eb); box-shadow:0 10px 28px rgba(53,72,66,.04); }
.support-after-download.is-inline { grid-template-columns:minmax(0,1fr); gap:14px; margin:0 0 18px; padding:20px; break-inside:avoid; }
.support-after-download.is-inline .button { justify-self:start; }
.support-after-download[hidden] { display:none; }
.support-after-download p { margin:0; }
.support-after-download .support-kicker { margin-bottom:3px; color:#7a6557; font-size:.75rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.support-after-download strong { display:block; margin-bottom:4px; font-size:1.05rem; }
.support-after-download .support-copy { color:var(--muted); font-size:.9rem; }
.support-after-download .button { white-space:nowrap; }
#safety .eyebrow { color:#725f52; }
@media (max-width:760px) {
  .hero { padding-top:58px; padding-bottom:68px; }
  .hero h1 { font-size:clamp(2.45rem,11vw,4rem); }
  .support-after-download { grid-template-columns:1fr; gap:16px; }
  .support-after-download .button { justify-self:start; width:auto; }
}
@media (max-width:620px) {
  .result-count { border-radius:14px; }
  .library-status { align-items:flex-start; flex-direction:column; }
  .support-after-download { padding:20px; }
  .support-after-download .button { width:100%; }
}
