body { font-family: Arial, sans-serif; background: #f4f4f0; color: #1c1c1c; margin: 0; }
.site-header, .site-footer { width: min(1120px, calc(100% - 32px)); box-sizing: border-box; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.site-header { min-height: 76px; border-bottom: 1px solid #d8d2c5; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: #1c1c1c; text-decoration: none; font-weight: 700; letter-spacing: -.03em; }
.brand-mark { width: 34px; height: 34px; display: block; object-fit: contain; border-radius: 11px; }
.header-links, .site-footer nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 20px; }
.header-links a, .site-footer a { color: #45413b; text-decoration: none; font-size: 14px; }
.header-links a:hover, .site-footer a:hover, .brand:hover { text-decoration: underline; }
.site-footer { padding: 20px 0; margin-top: 32px; border-top: 1px solid #d8d2c5; color: #69645d; font-size: 13px; }
@media (max-width: 520px) {
    .site-header { align-items: flex-start; flex-direction: column; padding: 18px 0; gap: 14px; }
    .header-links { justify-content: flex-start; gap: 14px; }
    .site-footer { align-items: flex-start; flex-direction: column; gap: 12px; }
    .site-footer nav { justify-content: flex-start; gap: 14px; }
}
