.landing {
  --landing-bg: #fff;
  --landing-ink: #202128;
  --landing-muted: #6a6c78;
  --landing-button: #254c9c;
  --landing-button-ink: #fff;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  background: var(--landing-bg);
  color: var(--landing-ink);
}
:root[data-theme="dark"] .landing {
  --landing-bg: #121318;
  --landing-ink: #f5f5f7;
  --landing-muted: #a4a6b1;
  --landing-button: #a4bcff;
  --landing-button-ink: #111e3a;
}
.landing-header { display:flex; align-items:center; justify-content:space-between; padding:30px 48px; gap:24px; }
.landing-wordmark { font-size:22px; font-weight:650; letter-spacing:-.8px; }
.landing-header button.linkish { color:var(--landing-muted); font-size:14px; padding:12px 0 12px 16px; }
.landing-main { display:grid; grid-template-columns:1fr 1fr; gap:30px; align-items:center; flex:1; padding:32px 48px 100px; }
.landing-bird { display:grid; place-items:center; }
.landing-bird .logo-mark { width:100%; max-width:420px; height:auto; }
.landing-invitation { padding-left:6px; }
.landing h1 { font-size:clamp(30px,4.3vw,46px); font-weight:550; letter-spacing:-1.8px; line-height:1.12; margin:0 0 30px; text-wrap:balance; }
.landing-download { display:inline-flex; gap:22px; align-items:center; justify-content:center; background:var(--landing-button); color:var(--landing-button-ink); border-radius:13px; min-height:54px; padding:15px 22px; font-size:15px; font-weight:550; text-decoration:none; }
.landing-download:hover { filter:brightness(1.08); }
.landing-handoff { display:flex; align-items:center; gap:15px; margin-top:26px; }
.landing-handoff img { width:88px; height:88px; border-radius:6px; }
.landing-handoff span { font-size:12px; color:var(--landing-muted); }
.landing-footer { display:flex; justify-content:flex-end; align-items:center; gap:8px; margin-top:auto; padding:12px 24px; color:var(--landing-muted); text-align:right; font-size:13px; line-height:20px; }
.landing-footer a { display:inline-flex; align-items:center; min-height:44px; }
.landing-footer img { display:block; width:42px; height:auto; }
@media (max-width:600px) {
  .landing-header { padding:20px 24px; }
  .landing-main { grid-template-columns:1fr; gap:4px; flex:0; padding:18px 24px 70px; text-align:center; }
  .landing-bird .logo-mark { max-width:250px; }
  .landing-invitation { padding:0; }
  .landing h1 { font-size:34px; letter-spacing:-1.3px; margin:12px 0 26px; }
  .landing-handoff { display:none; }
}
