/* Landing (routes/index.tsx) */
.page{min-height:100vh}
.hero{background:linear-gradient(160deg,#00539f,#0678ae 65%,#1a97b5);padding:32px 20px 112px;color:var(--primary-foreground)}
.hero>*{max-width:576px;margin-left:auto;margin-right:auto}
.hero h1{font-size:36px;line-height:1.25;font-weight:700;margin-top:56px}
.hero .lead{font-size:18px;line-height:28px;margin-top:12px;opacity:.9}
.choose,.features,.foot{max-width:576px;margin-left:auto;margin-right:auto}
.choose{background:var(--card);margin-top:-80px;width:calc(100% - 40px);padding:24px;border-radius:var(--r-3xl);border:1px solid var(--border);box-shadow:var(--shadow-elevated);position:relative;display:grid;gap:12px}
.choose>p:first-child{font-size:14px;line-height:20px;font-weight:600;margin-bottom:8px}
.choose .note,.choose .hint{text-align:center;font-size:12px;margin:0}
.login-line{text-align:center;font-size:14px;line-height:20px;margin-top:8px}
.login-line a{font-weight:600}
.features{width:calc(100% - 40px);margin-top:32px;display:grid;gap:16px}
.features li{display:flex;align-items:center;gap:12px}
.features .icon-tile{width:44px;height:44px}
.features div{display:flex;flex-direction:column}
.features b{font-weight:600}
.features div span{font-size:14px;line-height:20px}
.foot{width:calc(100% - 40px);text-align:center;margin-top:32px;padding-bottom:48px}
@media (min-width:640px){
  .features{grid-template-columns:repeat(3,1fr)}
  .features li{flex-direction:column;text-align:center}
}
