/* Public navigation and information pages; no account-workspace dependencies. */
.site-body { margin:0; min-height:100vh; color:var(--ink); background:var(--surface); font:15px/1.5 var(--font-ui); }
.site-body *, .site-header * { box-sizing:border-box; }
.site-header.public-header { position:sticky; top:0; z-index:50; display:block; width:100%; max-width:none; min-height:0; height:auto; padding:0; margin:0; background:var(--surface); border-bottom:1px solid var(--line); }
.site-header-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:94px; padding:10px 0; }
.site-header .connect-brand { flex-shrink:0; display:flex; text-decoration:none; }
.site-header .brand-logo img { width:144px; }
.site-navigation { display:flex; justify-content:center; align-items:center; gap:4px; min-width:0; }
.site-navigation a { padding:12px 14px; color:var(--ink); text-decoration:none; white-space:nowrap; border-radius:12px; font-size:14px; }
.site-navigation a:hover,.site-navigation a.active { background:var(--accent-soft); color:var(--accent-text); }
.site-navigation a.active { font-weight:650; }
.site-header .public-header-actions { display:flex; align-items:center; flex-shrink:0; gap:12px; margin:0; }
.site-header [data-theme-label] { display:none; }

.site-login { display:inline-flex; justify-content:center; align-items:center; gap:12px; min-height:42px; padding:10px 20px; background:var(--accent); border:1px solid var(--accent); border-radius:12px; color:#fff; font-weight:650; font-size:14px; line-height:1.4; text-decoration:none; white-space:nowrap; }
.site-login:hover { background:var(--accent-dark); border-color:var(--accent-dark); }
.site-header a:focus-visible,.site-login:focus-visible { outline:3px solid var(--accent-border); outline-offset:3px; }
.site-footer { width:min(1240px,calc(100% - 64px)); margin:auto; border-top:1px solid var(--line); padding:24px 0 32px; color:var(--muted); font-size:13px; }
.information-page { margin:auto; padding:32px 0 48px; }
.information-intro { max-width:860px; margin-bottom:36px; }
.site-eyebrow { color:var(--accent-text); font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.information-intro h1 { margin:12px 0 18px; font-size:clamp(36px,5vw,60px); line-height:1.1; letter-spacing:-.045em; }
.information-intro>p:last-child { color:var(--muted); font-size:20px; line-height:1.65; }
.information-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.information-card { padding:28px; background:var(--accent-surface); border:1px solid var(--line); border-radius:16px; }
.information-number { display:grid; place-items:center; width:40px; height:40px; border-radius:12px; background:var(--accent-soft); color:var(--accent-text); font-weight:700; }
.information-card h2 { margin:24px 0 12px; font-size:22px; line-height:1.3; }
.information-card p { margin:0; color:var(--muted); line-height:1.8; }
.information-cta { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-top:40px; padding:30px; background:var(--accent-soft); border-radius:16px; }
.information-cta h2 { margin:0 0 8px; font-size:24px; }
.information-cta p { color:var(--muted); margin:0; }
@media(max-width:1180px) {
 .site-header-inner { flex-wrap:wrap; gap:8px 20px; padding:12px 0 0; }
 .site-header .public-header-actions { margin-left:auto; }
 .site-navigation { order:3; flex-basis:100%; justify-content:flex-start; padding:4px 0 10px; }
}
@media(max-width:640px) {
 .site-header.public-header { position:relative; padding:0; }
 .site-header-inner { min-height:0; gap:8px; }
 .site-header .brand-logo img { width:96px; }
 .site-header .public-header-actions { gap:3px; }
 .site-header .site-login { min-height:36px; padding:8px 10px; font-size:12px; }
 .site-navigation { gap:0; flex-wrap:nowrap; overflow-x:auto; }
 .site-navigation a { padding:10px 6px; font-size:11px; }
 .information-page { padding-block:28px; }
 .information-intro>p:last-child { font-size:17px; }
 .information-grid { grid-template-columns:1fr; gap:16px; }
 .information-card { padding:24px; }
 .information-cta { align-items:flex-start; flex-direction:column; padding:24px; }
}
@media(max-width:360px) { .site-header .public-header-actions { flex-wrap:wrap; justify-content:flex-end; max-width:180px; } }
