:root { color-scheme: light; font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #292f2c; background: #fdfdfb; font-synthesis: none; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: #fdfdfb; }
a { color: inherit; }
.site-header { height: 86px; padding: 0 clamp(24px, 5vw, 76px); display: flex; align-items: center; gap: 22px; border-bottom: 1px solid #dfe3de; font-size: 17px; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: #0d4a34; text-decoration: none; }
.brand-mark { width: 39px; height: 39px; }
.brand strong { font-size: 27px; letter-spacing: -.7px; }
.header-divider { width: 1px; height: 34px; background: #d8ddd7; }
.hero { min-height: 600px; padding: 82px 24px 68px; display: flex; flex-direction: column; align-items: center; text-align: center; border-bottom: 1px solid #dfe3de; }
.hero h1 { margin: 0; color: #0d4a34; font-size: clamp(64px, 8vw, 98px); line-height: .95; letter-spacing: -5px; }
.tagline { margin: 28px 0 58px; font-size: clamp(28px, 3vw, 38px); letter-spacing: -1px; }
.download-actions { width: min(970px, 100%); display: grid; grid-template-columns: 1fr 1fr; gap: 26px; }
.download-button { min-height: 102px; padding: 20px 30px; display: flex; align-items: center; justify-content: center; gap: 22px; border: 2px solid #0d4a34; border-radius: 10px; text-align: left; text-decoration: none; transition: transform 160ms ease, box-shadow 160ms ease; }
.download-button:not([aria-disabled="true"]):hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(13, 74, 52, .12); }
.download-button.primary { background: #0d4a34; color: #fff; }
.download-button.secondary { background: #fff; color: #0d4a34; }
.download-button[aria-disabled="true"] { cursor: not-allowed; opacity: .52; }
.download-button.recommended { outline: 4px solid rgba(245, 197, 62, .32); outline-offset: 4px; }
.download-button svg { width: 48px; height: 48px; fill: currentColor; flex: 0 0 auto; }
.download-button span { display: grid; gap: 5px; }
.download-button strong { font-size: 21px; }
.download-button small { font-size: 14px; opacity: .82; }
.version-status { margin: 42px 0 0; display: flex; align-items: center; gap: 12px; font-size: 19px; font-weight: 650; }
.version-status span { width: 14px; height: 14px; border-radius: 50%; background: #e2b93b; }
.in-app-note { margin: 28px 0 0; display: flex; align-items: center; gap: 12px; color: #545d58; font-size: 17px; }
.in-app-note svg { width: 24px; height: 24px; fill: none; stroke: #174c39; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.download-status { min-height: 22px; margin: 14px 0 0; color: #806114; font-size: 14px; font-weight: 700; }
.section { padding: 68px clamp(24px, 7vw, 110px); border-bottom: 1px solid #dfe3de; }
.release-section, .reinstall-section { display: grid; grid-template-columns: 110px minmax(0, 760px); justify-content: center; gap: 42px; }
.section h2 { margin: 0 0 25px; color: #0d4a34; font-size: 31px; letter-spacing: -1px; }
.section p, .section li { font-size: 16px; line-height: 1.65; }
.section-symbol, .trust-icon { width: 76px; height: 76px; display: grid; place-items: center; border-radius: 50%; background: #e5eee2; color: #0d4a34; }
.section-symbol svg { width: 40px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.release-section ul { margin: 0; padding-left: 22px; display: grid; gap: 10px; }
.checksums { margin-top: 24px; color: #15573f; }
.checksums summary { cursor: pointer; font-weight: 750; }
.checksums dl { display: grid; gap: 10px; }
.checksums dl div { display: grid; gap: 3px; }
.checksums dt { font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.checksums dd { margin: 0; overflow-wrap: anywhere; color: #59625d; font: 12px ui-monospace, SFMono-Regular, Consolas, monospace; }
.trust-section { text-align: center; }
.trust-points { width: min(1100px, 100%); margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); }
.trust-points article { padding: 10px 38px; }
.trust-points article + article { border-left: 1px solid #dfe3de; }
.trust-icon { margin: 0 auto 22px; position: relative; font-size: 32px; font-weight: 500; }
.trust-icon.lock::before { content: ""; width: 22px; height: 22px; position: absolute; left: 50%; bottom: 16px; transform: translateX(-50%); border: 3px solid currentColor; border-radius: 4px; }
.trust-icon.lock::after { content: ""; width: 14px; height: 12px; position: absolute; left: 50%; top: 13px; transform: translateX(-50%); border: 3px solid currentColor; border-bottom: 0; border-radius: 9px 9px 0 0; }
.trust-points h3 { color: #0d4a34; font-size: 18px; }
.trust-points p { margin-bottom: 0; color: #515a55; }
.refresh { font-size: 54px; font-weight: 300; }
.reinstall-section p { max-width: 700px; }
.reinstall-section a { display: inline-block; margin-top: 15px; color: #0d5a3d; font-weight: 700; text-decoration: none; }
footer { min-height: 136px; padding: 34px clamp(24px, 5vw, 76px); display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 18px; }
.footer-brand .brand-mark { width: 34px; height: 34px; }
.footer-brand strong { font-size: 21px; }
footer nav { display: flex; gap: 46px; }
footer nav a { color: #0d4a34; text-decoration: none; }
footer small { grid-column: 1 / -1; text-align: center; color: #7a817c; }
@media (max-width: 760px) {
  .site-header { height: 72px; gap: 12px; }
  .brand strong { font-size: 22px; }
  .hero { padding-top: 58px; }
  .hero h1 { letter-spacing: -3px; }
  .download-actions, .trust-points { grid-template-columns: 1fr; }
  .download-button { min-height: 88px; }
  .release-section, .reinstall-section { grid-template-columns: 1fr; gap: 22px; }
  .section-symbol { width: 62px; height: 62px; }
  .trust-points article { padding: 28px 10px; }
  .trust-points article + article { border-top: 1px solid #dfe3de; border-left: 0; }
  footer { grid-template-columns: 1fr; }
  footer nav { gap: 22px; flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .download-button { transition: none; } }
