/* css/styles.css */
* { box-sizing: border-box; }
html, body { margin: 0; font-family: system-ui, Arial, sans-serif; }
.container { width: min(1100px, 92%); margin: 2rem auto; }

.site-header, .site-footer { padding: 1rem; border-bottom: 1px solid #ddd; }
.site-footer { border-top: 1px solid #ddd; border-bottom: 0; }

.logo { font-weight: 700; text-decoration: none; }
.nav { display: flex; gap: 1rem; }
.nav a { text-decoration: none; }

@media (max-width: 768px) {
    .nav { display: none; flex-direction: column; padding: .5rem 0; }
    .nav.open { display: flex; }
    .nav-toggle { display: inline-block; }
}
@media (min-width: 769px) {
    .nav-toggle { display: none; }
    .site-header { display: flex; align-items: center; gap: 2rem; }
    .nav { margin-left: auto; }
}
