html, body.landing { overflow: auto; height: auto; min-height: 100%; }
body.landing { background: radial-gradient(ellipse at 50% 0%, #131a2e 0%, var(--bg) 55%); }
.land { max-width: 960px; margin: 0 auto; padding: 48px 20px 40px; }
.hero { text-align: center; padding: 20px 0 30px; }
.heroLine { width: min(600px, 100%); height: 36px; display: block; margin: 0 auto 10px; }
.heroLine line { stroke: var(--blue); stroke-width: 6; stroke-linecap: round; }
.heroLine circle { fill: #fff; }
.heroLine rect { fill: none; stroke: rgba(255, 255, 255, 0.25); stroke-width: 2; }
.hero h1 { font-size: clamp(38px, 8vw, 84px); letter-spacing: 0.06em; color: #fff; text-shadow: 0 0 40px rgba(90, 169, 255, 0.35); }
.hero h1 span { color: var(--blue); font-weight: 600; font-size: 0.6em; vertical-align: middle; }
.hero .strap { font-size: 16px; margin-top: 6px; }
.ctas { display: flex; gap: 12px; justify-content: center; margin-top: 24px; flex-wrap: wrap; }
.ctas .lockIn { text-decoration: none; }
.ctas .ghost { color: var(--text); border: 1px solid var(--panel-line); border-radius: var(--radius); padding: 10px 22px; text-decoration: none; display: inline-flex; align-items: center; }
.tiny { color: var(--text-muted); font-size: 12px; margin-top: 14px; }
.facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin: 20px 0 40px; }
.facts div { background: var(--panel); border: 1px solid var(--panel-line); border-radius: var(--radius); padding: 14px; text-align: center; }
.facts b { display: block; font-family: var(--font-head); font-size: 34px; color: #fff; line-height: 1; }
.facts span { color: var(--text-muted); font-size: 12px; }
.land h2 { font-size: 22px; color: #fff; margin-bottom: 12px; }
.roster ul { list-style: none; margin: 0 0 40px; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.roster li { background: var(--panel); border: 1px solid var(--panel-line); border-top: 3px solid var(--c); border-radius: var(--radius); padding: 14px; display: grid; grid-template-columns: 48px 1fr; grid-template-rows: auto auto; column-gap: 12px; align-items: center; }
.roster .glyph { grid-row: 1 / 3; font-size: 36px; color: var(--c); font-weight: 700; text-align: center; }
.roster b { font-family: var(--font-head); color: #fff; font-size: 16px; }
.roster i { color: var(--text-muted); font-style: normal; font-size: 12px; }
.roster em { grid-column: 2; color: var(--c); font-style: normal; font-size: 11px; }
.how ol { margin: 0 0 40px; padding-left: 22px; color: var(--text); line-height: 1.7; }
.landFoot { display: flex; gap: 10px; justify-content: center; color: var(--text-muted); font-size: 12px; }
.landFoot a { color: var(--text-muted); }
@media (max-width: 700px) {
	.facts { grid-template-columns: repeat(2, 1fr); }
	.roster ul { grid-template-columns: 1fr; }
}
