/* Brand tokens and shared chrome for all public pages. */
body {
	--home-bg: #0a0e1a;
	--home-panel: #111827;
	--home-raised: #1a2030;
	--home-cyan: #00d9ff;
	--home-purple: #7b61ff;
	--home-muted: #a0a8b8;
	--home-dim: #6b7280;
	--home-line: rgba(255,255,255,.08);
	background: var(--home-bg);
	color: #fff;
	font: 400 16px/1.6 Inter, -apple-system, BlinkMacSystemFont, sans-serif;
	text-rendering: optimizeLegibility;
	font-synthesis: initial;
}
html::-webkit-scrollbar { width: 8px; height: 8px; }
html::-webkit-scrollbar-track { background: #0a0e1a; }
html::-webkit-scrollbar-thumb { background: linear-gradient(#00d9ff,#7b61ff); border-radius: 4px; }
:focus-visible { outline: 2px solid var(--home-cyan); outline-offset: 5px; }
::selection { background: #00d9ff40; color: #fff; }
.site-shell { width: 100%; max-width: 1280px; padding-inline: 24px; }
h1, h2, h3, h4, .site-brand-name { font-family: 'Space Grotesk', sans-serif; font-weight: 700; }
.home-footer { position: relative; border-top: 1px solid var(--home-line); background: #11182780; padding: 64px 0; }
.home-footer::before { content: ''; position: absolute; inset: 0 0 auto; height: 1px; background: linear-gradient(90deg,transparent,#00d9ff80,transparent); }
.home-footer-grid { display: grid; gap: 48px; }
.home-footer .site-brand { gap: 10px; }
.home-footer .site-brand-mark { width: 40px; height: 40px; border: 1px solid #00d9ff4d; border-radius: 8px; background: var(--home-raised); color: var(--home-cyan); font: 700 16px 'JetBrains Mono',monospace; letter-spacing: normal; }
.home-footer .site-brand-name { font-size: 20px; letter-spacing: normal; color: #fff; }
.home-footer-copy { font-size: 14px; color: var(--home-muted); margin: 16px 0 0; max-width: 448px; }
.home-footer-vision { font-size: 14px; color: var(--home-dim); margin: 8px 0 0; }
.home-footer-social { display: flex; gap: 12px; margin-top: 24px; }
.home-footer-social a { display: grid; place-items: center; width: 40px; height: 40px; border: 0; border-radius: 8px; color: var(--home-muted); }
.home-footer-social a:hover { color: var(--home-cyan); }
.home-footer h4 { margin: 0 0 16px; color: var(--home-dim); font: 12px/16px 'JetBrains Mono',monospace; letter-spacing: .2em; }
.home-footer .site-menu { display: grid; gap: 10px; }
.home-footer .site-menu a { padding: 0; border: 0; background: none; border-radius: 0; font-size: 14px; font-weight: 400; color: var(--home-muted); }
.home-footer .site-menu a:hover { color: var(--home-cyan); background: none; }
.home-footer-contact { display: grid; gap: 12px; color: var(--home-muted); font-size: 14px; }
.home-footer-contact > div { display: flex; gap: 10px; align-items: start; }
.home-footer-contact svg { color: var(--home-cyan); margin-top: 3px; }
.home-footer-legal { margin-top: 16px; display: flex; gap: 16px; color: var(--home-muted); font-size: 12px; }
.home-footer-bottom { display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid var(--home-line); padding-top: 32px; margin-top: 48px; font-size: 14px; color: var(--home-dim); text-align: center; }
.home-footer-bottom .footer-craft { font: 12px/16px 'JetBrains Mono',monospace; }
.footer-craft > span { color: var(--home-cyan); }
.home-svg { flex-shrink: 0; display: inline-block; vertical-align: middle; }
.gradient-text { background: linear-gradient(135deg,#00d9ff,#7b61ff); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; }

@media (min-width: 768px) { .home-footer-bottom { flex-direction: row; text-align: left; } }
@media (min-width: 1024px) { .site-shell { padding-inline: 32px; } .home-footer-grid { grid-template-columns: repeat(4,minmax(0,1fr)); } .home-footer-grid > :first-child { grid-column: span 2; } }
@media (min-width: 1280px) { .site-shell { padding-inline: 48px; } }
@media (max-width: 639px) { .home .home-footer-bottom { padding-bottom: 44px; } }
