/* Download presentation, using the site's existing emerald and mint palette. */
.download-page { --dl-ink:#0f172a; --dl-muted:#64748b; --dl-card:#fff; --dl-soft:#f8fafc; --dl-line:#e2e8f0; }
.download-page .blob { display:none; }
#download-page { max-width:1200px; width:100%; margin-inline:auto; padding:56px 24px 40px; }
.download-hero { display:grid; grid-template-columns:1.15fr 1fr; gap:56px; align-items:center; }
.download-app-label { display:inline-flex; align-items:center; gap:10px; font-size:12px; font-weight:600; color:var(--dl-ink); margin-bottom:32px; }
.download-app-label img { border-radius:12px; }
.download-eyebrow { color:#047857; font-size:10px; font-weight:700; letter-spacing:.1em; margin-bottom:12px; }
#download-page h1 { font-family:'Space Grotesk',sans-serif; color:var(--dl-ink); font-size:clamp(38px,4.5vw,58px); line-height:1.08; font-weight:800; letter-spacing:-.055em; }
#download-page h1 > span { color:#047857; }
.download-lead { font-size:16px; color:var(--dl-muted); line-height:1.85; margin-top:22px; max-width:440px; }
.download-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px; margin-top:30px; }
.download-primary { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:15px 20px; background:#047857; color:white; border-radius:14px; font-size:14px; font-weight:600; min-height:50px; text-decoration:none; }
.download-primary:hover { background:#065f46; }
.download-secondary { display:inline-flex; align-items:center; gap:10px; color:var(--dl-ink); font-size:13px; font-weight:600; }
.download-secondary:hover,.download-guide-link:hover { text-decoration:underline; }
.download-file-info { color:var(--dl-muted); font-size:11px; margin-top:14px; }
.download-guide-link { display:inline-flex; gap:10px; color:#047857; font-size:12px; margin-top:22px; }
.download-showcase { position:relative; margin:0; border:1px solid #a7f3d0; border-radius:36px; background:#d1fae5; min-height:570px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:30px 20px 22px; overflow:hidden; }
.download-phone { position:relative; width:248px; border:8px solid #172e27; background:#eff7f4; border-radius:38px; box-shadow:16px 20px 0 #0478571c; color:#0f172a; overflow:hidden; transform:rotate(4deg); }
.phone-status { display:flex; justify-content:space-between; padding:10px 18px; font-size:9px; font-weight:700; }
.phone-brand { display:flex; align-items:center; padding:10px 14px; font-size:14px; font-weight:800; letter-spacing:-.04em; background:#59cbaa; }
.phone-brand > span:first-child { color:#fff; }
.phone-avatar { display:flex; align-items:center; justify-content:center; width:22px; height:22px; margin-left:auto; border-radius:50%; background:#059669; font-size:10px; }
.phone-content { padding:18px 12px 16px; }
.phone-eyebrow { font-size:7px; font-weight:700; letter-spacing:.08em; color:#047857; }
#download-page .phone-content h2 { font-size:13px; font-weight:700; line-height:1.5; margin-top:4px; letter-spacing:-.025em; }
.phone-nutrition { background:white; border:1px solid #e2e8f0; border-radius:18px; padding:18px 14px; margin-top:14px; }
.phone-ring { display:grid; place-items:center; width:116px; height:116px; margin:auto; border-radius:50%; background:conic-gradient(#10b981 65.2%,#e2e8f0 0); }
.phone-ring > div { display:flex; flex-direction:column; align-items:center; justify-content:center; width:96px; height:96px; border-radius:50%; background:white; }
.phone-ring strong { font-family:'Space Grotesk',sans-serif; font-size:25px; letter-spacing:-.05em; }
.phone-ring span { font-size:8px; color:#64748b; }
.phone-nutrition > p { text-align:center; font-size:8px; color:#64748b; margin:12px 0; }
.phone-macro { display:flex; flex-wrap:wrap; justify-content:space-between; font-size:8px; font-weight:600; margin-top:10px; }
.phone-macro i { width:100%; height:4px; margin-top:5px; border-radius:4px; background:linear-gradient(to right,#10b981 var(--fill),#f1f5f9 var(--fill)); }
.phone-meal { display:flex; align-items:center; gap:8px; padding:12px; background:#fff; border:1px solid #e2e8f0; border-radius:14px; margin-top:12px; }
.phone-meal-icon { display:grid; place-items:center; width:28px; height:28px; border-radius:9px; background:#ecfdf5; color:#047857; }
.phone-meal strong { font-size:9px; }.phone-meal p { color:#64748b; font-size:8px; }.phone-meal > span:last-child { margin-left:auto; color:#047857; }
.download-showcase figcaption { margin-top:28px; font-size:10px; color:#047857; }
.download-features { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-block:40px 72px; }
.download-features article { padding:26px; background:var(--dl-card); border:1px solid var(--dl-line); border-radius:22px; }
.download-feature-icon { display:flex; align-items:center; justify-content:center; width:44px; height:44px; background:#ecfdf5; color:#047857; border-radius:14px; margin-bottom:18px; }
#download-page .download-features h2 { color:var(--dl-ink); font-family:'Space Grotesk',sans-serif; font-size:18px; font-weight:700; letter-spacing:-.025em; }
.download-features p { font-size:13px; line-height:1.8; color:var(--dl-muted); margin-top:10px; }
.download-install { display:grid; grid-template-columns:minmax(0,1fr) 300px; align-items:center; gap:72px; padding:40px; background:var(--dl-card); border:1px solid var(--dl-line); border-radius:28px; scroll-margin-top:100px; }
#download-page .download-install h2,#download-page .download-web h2 { color:var(--dl-ink); font-family:'Space Grotesk',sans-serif; font-size:30px; font-weight:800; line-height:1.2; letter-spacing:-.04em; }
.download-install-copy > p:last-of-type,.download-web p:last-child { font-size:14px; color:var(--dl-muted); line-height:1.8; margin-top:12px; }
.download-steps { display:flex; flex-direction:column; gap:22px; margin-top:30px; }
.download-steps li { display:flex; gap:14px; align-items:flex-start; }
.download-steps li > span { display:grid; place-items:center; width:32px; height:32px; flex-shrink:0; background:#ecfdf5; border-radius:10px; color:#047857; font-size:10px; font-weight:700; }
.download-steps h3 { color:var(--dl-ink); font-size:14px; font-weight:600; }
.download-steps p { color:var(--dl-muted); font-size:12px; line-height:1.8; margin-top:4px; }
.download-qr-card { padding:24px; text-align:center; border:1px solid var(--dl-line); border-radius:22px; background:var(--dl-soft); }
#download-qr { display:block; margin:auto; background:white; border-radius:12px; padding:8px; width:180px; height:180px; }
.download-qr-card h3 { color:var(--dl-ink); font-size:16px; font-weight:700; margin-top:18px; }
.download-qr-card p { color:var(--dl-muted); font-size:12px; line-height:1.8; margin-top:8px; }
.download-qr-card a { display:block; overflow-wrap:anywhere; color:#047857; font-size:11px; margin-top:12px; text-decoration:underline; text-underline-offset:3px; }
.download-web { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:36px 40px; background:#ecfdf5; border:1px solid #a7f3d0; border-radius:28px; margin-top:24px; }
.download-web > a { flex-shrink:0; }
.download-back { display:block; width:fit-content; margin:30px auto 0; color:var(--dl-muted); font-size:12px; }
#download-page a:focus-visible { outline:3px solid #059669; outline-offset:4px; }
html.dark .download-page,body.dark.download-page { --dl-ink:#e2e8f0; --dl-muted:#94a3b8; --dl-card:#1e293b; --dl-soft:#0f172a; --dl-line:#334155; }
html.dark .download-showcase,body.dark .download-showcase,html.dark .download-web,body.dark .download-web { background:#12382e; border-color:#245b49; }
html.dark .download-eyebrow,body.dark .download-eyebrow,html.dark #download-page h1 > span,body.dark #download-page h1 > span,html.dark .download-guide-link,body.dark .download-guide-link,html.dark .download-showcase figcaption,body.dark .download-showcase figcaption,html.dark .download-qr-card a,body.dark .download-qr-card a { color:#6ee7b7; }
html.dark .download-feature-icon,body.dark .download-feature-icon,html.dark .download-steps li > span,body.dark .download-steps li > span { background:#064e3b; color:#6ee7b7; }
@media(max-width:1000px) { .download-hero { gap:30px; } .download-install { gap:30px; padding:30px; grid-template-columns:minmax(0,1fr) 270px; } .download-features article { padding:22px; } }
@media(max-width:767px) {
  #download-page { padding:32px 16px; }
  .download-hero { grid-template-columns:minmax(0,1fr); gap:32px; }
  #download-page h1 { font-size:40px; }
  .download-app-label { margin-bottom:24px; }
  .download-lead { font-size:14px; }
  .download-actions { gap:16px; margin-top:24px; }
  .download-showcase { min-height:540px; border-radius:28px; }
  .download-features { grid-template-columns:minmax(0,1fr); gap:14px; margin-block:24px 40px; }
  .download-feature-icon { float:left; margin:0 14px 8px 0; }
  #download-page .download-features h2 { font-size:17px; }
  .download-features p { clear:both; }
  .download-install { grid-template-columns:minmax(0,1fr); gap:30px; padding:24px 20px; }
  .download-qr-card { max-width:300px; width:100%; margin-inline:auto; }
  #download-page .download-install h2,#download-page .download-web h2 { font-size:27px; }
  .download-web { flex-direction:column; align-items:flex-start; padding:26px 22px; gap:22px; }
}
