/* Lunaria Studios showcase landing; builds on the demo theme tokens */
.landing .live-card, .landing .try-card { padding: var(--rw-space-5); }
.landing .nav-links a.btn-primary { color: var(--rw-accent-contrast); background: var(--rw-accent); }
.landing .nav-links a.btn-primary:hover { background: var(--rw-accent-hover); }
.landing main { display: grid; gap: var(--rw-space-7); padding-block: var(--rw-space-6) var(--rw-space-7); }
.landing h2 { font-size: var(--rw-text-xl); margin: 0 0 var(--rw-space-4); text-wrap: balance; }
.landing h3 { font-size: var(--rw-text-lg); margin: 0 0 var(--rw-space-2); }

.lp-hero { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: var(--rw-space-6); align-items: center; }
.lp-eyebrow { font-size: var(--rw-text-sm); font-weight: var(--rw-weight-bold); letter-spacing: .08em; text-transform: uppercase; color: var(--rw-accent); margin: 0; }
.lp-hero h1 { font-size: var(--rw-text-hero); line-height: 1.05; margin: var(--rw-space-3) 0 var(--rw-space-4); text-wrap: balance; }
.lead { font-size: var(--rw-text-lg); color: var(--rw-muted); max-width: 36rem; margin: 0; }
.lp-hero-ctas { display: flex; flex-wrap: wrap; gap: var(--rw-space-3); margin-top: var(--rw-space-5); }

.live-card { display: grid; gap: var(--rw-space-4); min-width: 0; }
.live-head { display: flex; align-items: center; gap: var(--rw-space-2); font-size: var(--rw-text-sm); color: var(--rw-muted); }
.live-head b { margin-left: auto; color: var(--rw-text); font-size: var(--rw-text-base); }
.live-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--rw-success); box-shadow: 0 0 0 4px color-mix(in srgb, var(--rw-success) 25%, transparent); }
.mini-board { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--rw-space-2); }
.mini-board li { display: grid; grid-template-columns: 1.5rem auto minmax(0, 1fr) auto; align-items: center; gap: var(--rw-space-3); padding: var(--rw-space-2) var(--rw-space-3); border-radius: var(--rw-radius-sm); background: var(--rw-surface-2); }
.mini-rank { font-weight: var(--rw-weight-bold); color: var(--rw-muted); font-variant-numeric: tabular-nums; }
.mini-board li.rw-rank-1 .mini-rank { color: var(--rw-gold); }
.mini-board li.rw-rank-2 .mini-rank { color: var(--rw-silver); }
.mini-board li.rw-rank-3 .mini-rank { color: var(--rw-bronze); }
.mini-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; }
.mini-score { font-variant-numeric: tabular-nums; color: var(--rw-muted); font-size: var(--rw-text-sm); }
.live-foot { font-size: var(--rw-text-sm); color: var(--rw-muted); margin: 0; }

.try-card { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: var(--rw-space-5); align-items: center; }
.try-card h2 { margin-bottom: var(--rw-space-2); }
.try-card p { margin: 0; color: var(--rw-muted); }
.creds { display: flex; gap: var(--rw-space-4); margin: 0; }
.creds dt { font-size: 0.75rem; text-transform: uppercase; letter-spacing: .06em; color: var(--rw-muted); }
.creds dd { margin: 2px 0 0; }
.creds code, .email-row code { font-family: var(--rw-font-mono); background: var(--rw-surface-2); padding: 3px 8px; border-radius: var(--rw-radius-sm); }

.feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--rw-space-4); }
.feature { padding: var(--rw-space-5); border: 1px solid var(--rw-border); border-radius: var(--rw-radius); background: var(--rw-surface); }
.feature p { margin: 0; color: var(--rw-muted); }

.lp-steps { list-style: none; counter-reset: step; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--rw-space-5); }
.lp-steps li { counter-increment: step; }
.lp-steps li::before { content: counter(step); display: grid; place-items: center; width: 2rem; height: 2rem; border-radius: 50%; background: var(--rw-accent-soft); color: var(--rw-accent); font-weight: var(--rw-weight-bold); margin-bottom: var(--rw-space-3); }
.lp-steps p { margin: 0; color: var(--rw-muted); }
.note { color: var(--rw-muted); margin: var(--rw-space-5) 0 0; }

.contact-card { text-align: center; display: grid; gap: var(--rw-space-4); justify-items: center; padding: var(--rw-space-6) var(--rw-space-5); }
.contact-card h2 { margin: 0; }
.contact-card p { margin: 0; color: var(--rw-muted); max-width: 34rem; }
.contact-options { display: flex; flex-wrap: wrap; gap: var(--rw-space-4); align-items: center; justify-content: center; }
.email-row { display: flex; flex-wrap: wrap; gap: var(--rw-space-2); align-items: center; justify-content: center; }
.email-row code { overflow-wrap: anywhere; }
#copyEmail.copied { border-color: var(--rw-success); color: var(--rw-success); }

@media (max-width: 860px) {
  .lp-hero, .try-card { grid-template-columns: minmax(0, 1fr); }
  .feature-grid, .lp-steps { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 560px) {
  .landing .nav-links a:not(.btn) { display: none; }
}
