/* Shared Nunito, purple and flat family artwork from the public website. */
.page-app-download { background:#f6f2fb; }
.page-app-download .site-header-shell,.page-app-download .mobile-navigation,.page-app-download .site-footer { display:none; }
.page-app-download #content { padding:0; }
.app-welcome { min-height:100dvh; max-width:1280px; margin:auto; padding:40px 48px 24px; display:flex; flex-direction:column; }
.app-welcome-brand img { width:190px; height:auto; display:block; }
.app-welcome-grid { display:grid; grid-template-columns:1fr 1.1fr; align-items:center; gap:40px; flex:1; padding:64px 0; }
.app-welcome h1 { margin:18px 0; font-size:clamp(40px,4.6vw,62px); font-weight:900; line-height:1.08; letter-spacing:-.035em; }
.app-welcome h1 em { color:#6541bd; font-style:normal; }
.app-welcome-copy>p { color:#70697d; font-size:19px; line-height:1.6; margin:0 0 28px; }
.app-store-actions { display:flex; flex-wrap:wrap; gap:12px; }
.app-store-button { display:flex; align-items:center; justify-content:center; gap:14px; min-height:64px; padding:12px 24px; border-radius:18px; background:#6541bd; color:white; text-decoration:none; }
.app-store-button:hover { background:#5333a2; }
.app-store-button svg { width:24px; height:24px; transform:rotate(90deg); }
.app-store-button span { display:grid; text-align:left; line-height:1.2; gap:3px; }
.app-store-button small { font-size:12px; font-weight:600; }
.app-store-button strong { font-size:21px; font-weight:800; white-space:nowrap; }
.app-store-pending { background:#e6deef; color:#514565; }
.app-store-pending:hover { background:#e6deef; }
.app-continue { display:flex; align-items:center; justify-content:center; gap:14px; width:fit-content; min-height:52px; margin-top:14px; padding:12px 22px; border:1px solid #c4b5dd; border-radius:18px; font-weight:800; color:#241c54; text-decoration:none; }
.app-continue:hover { background:#eee7fa; }
.app-continue svg { width:20px; height:20px; }
.app-welcome-art { position:relative; }
.app-welcome-art::before { content:''; position:absolute; inset:-25% 4%; border-radius:48% 52% 61% 39%; background:#eee7fa; z-index:0; }
.app-welcome-art img { position:relative; display:block; width:100%; height:auto; object-fit:contain; }
.app-welcome-footer { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px; font-size:13px; color:#70697d; }
.app-welcome-footer>div { display:flex; gap:20px; }
.app-welcome-footer a,.app-welcome-footer button { color:inherit; font:inherit; text-decoration:underline; text-underline-offset:4px; }
.app-welcome-footer button { border:0; background:none; padding:0; cursor:pointer; }
.app-welcome :is(a,button):focus-visible { outline:3px solid #bd326a; outline-offset:5px; }
html[data-app-os="android"] [data-app-store="ios"],html[data-app-os="ios"] [data-app-store="android"] { display:none; }
@media(max-width:760px) {
  .app-welcome { padding:28px 24px max(24px,env(safe-area-inset-bottom)); }
  .app-welcome-brand img { width:165px; margin:auto; }
  .app-welcome-grid { grid-template-columns:1fr; gap:40px; padding:36px 0 40px; }
  .app-welcome-copy { text-align:center; }
  .app-welcome .eyebrow { font-size:11px; letter-spacing:.1em; }
  .app-welcome h1 { font-size:clamp(34px,8.8vw,48px); margin:14px 0; }
  .app-welcome-copy>p { font-size:16px; margin-bottom:24px; }
  .app-store-actions { justify-content:center; }
  .app-store-button { flex:1; max-width:360px; padding:12px 18px; }
  .app-continue { width:100%; max-width:360px; margin:12px auto 0; }
  .app-welcome-art { width:min(100%,460px); margin:auto; }
  .app-welcome-art::before { inset:-12% 5%; }
  .app-welcome-footer { justify-content:center; text-align:center; font-size:12px; }
}
@media(max-width:360px) { .app-store-actions { flex-direction:column; } .app-welcome { padding-inline:20px; } }
