/* Coming-soon homepage: same Elegant look as the public site (tokens from theme.css). */
html, body { height: 100%; }
body { background: var(--hero-bg); }
.cs-frame {
  min-height: 100vh; box-sizing: border-box; display: flex; flex-direction: column;
  margin: 0; padding: 0 28px;
  background: var(--bg); border: 1px solid var(--border-strong); outline: 14px solid var(--hero-bg); outline-offset: -1px;
}
.cs-top { text-align: center; padding: 28px 0 8px; }
.cs-name { font-size: 22px; font-weight: 700; letter-spacing: .32em; text-transform: uppercase; }
.cs-main { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 40px 0; }
.eyebrow { color: var(--primary); font-size: 11px; font-weight: 600; letter-spacing: .32em; text-transform: uppercase; }
.cs-main h1 { font-size: clamp(2rem, 6vw, 3.4rem); line-height: 1.1; margin: 16px 0 0; max-width: 14em; }
.cs-rule { display: block; width: 1px; height: 48px; background: var(--accent); margin: 28px auto; }
.cs-main p { font-size: 1.05rem; color: var(--muted); max-width: 30em; margin: 0; }
.cs-foot { text-align: center; border-top: 1px solid var(--border); padding: 20px 0; font-size: .85rem; color: var(--muted); }
@media (max-width: 700px) { .cs-frame { padding: 0 16px; } }
