.site-header, .site-footer { width: min(var(--content-width), 100% - var(--space-8)); margin-inline: auto; display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-4); }
.site-header { padding-block: var(--space-6); justify-content: space-between; border-bottom: 1px solid var(--border); }
.brand { display: inline-flex; align-items: center; gap: var(--space-3); color: var(--text); text-decoration: none; font-size: 1.2rem; font-weight: 650; letter-spacing: -.02em; }
.brand img { display: block; }
.site-header nav { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-6); font-size: .9rem; }
.site-header nav a { color: var(--text); text-decoration: none; }
.site-header nav a:hover, .site-header nav a[aria-current] { text-decoration: underline; }
.theme-toggle { border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); color: var(--text); padding: var(--space-2) var(--space-3); cursor: pointer; font-size: .8rem; min-height: 2.5rem; }
.site-footer { padding-block: var(--space-8); border-top: 1px solid var(--border); color: var(--muted); font-size: .8rem; }
.site-footer > :first-child { margin-right: auto; }
