* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: sans-serif; color: #333; }
header nav { display: flex; gap: 1rem; padding: 1rem; background: #f5f5f5; }
header nav a { text-decoration: none; color: #333; }
main { padding: 2rem; max-width: 960px; margin: 0 auto; }
footer { text-align: center; padding: 1.5rem; background: #f5f5f5; margin-top: 2rem; font-size: 0.9rem; }
footer address { font-style: normal; margin-top: 0.5rem; color: #555; }
footer a { color: #555; }
footer .footer-links { margin-top: 0.5rem; }
.sitemap { margin-top: 1rem; }
.sitemap, .sitemap ul { margin-left: 1.5rem; }
.sitemap li { margin-top: 0.4rem; }
.hero { text-align: center; padding: 4rem 0; }
.contact { margin-top: 3rem; }
.contact h2 { margin-bottom: 1rem; }
.contact-info dt { font-weight: bold; margin-top: 0.75rem; }
.contact-info dd { margin-left: 1rem; margin-top: 0.25rem; }
.contact-info a { color: #333; }
.support p { margin-top: 1rem; }
.support-form { margin-top: 1.5rem; max-width: 640px; }
.form-field { margin-bottom: 1.25rem; }
.form-field > label { display: block; font-weight: bold; margin-bottom: 0.4rem; }
.form-field input[type="text"], .form-field input[type="email"], .form-field select, .form-field textarea { width: 100%; padding: 0.5rem; font: inherit; border: 1px solid #ccc; border-radius: 4px; }
.form-field input[type="radio"] { margin-right: 0.3rem; }
.form-field div[id] > div { display: inline-block; margin-right: 1.5rem; }
.form-field .errorlist, .support-form > .errorlist { list-style: none; color: #c00; font-size: 0.9rem; margin-top: 0.3rem; }
.form-extra { position: absolute; left: -9999px; }
.form-message { padding: 0.75rem 1rem; background: #e8f5e9; border: 1px solid #a5d6a7; border-radius: 4px; }
.support-form button { padding: 0.6rem 2rem; font: inherit; cursor: pointer; }
