.notices-main { max-width: 960px; }
.notices-section { padding: 28px 32px; }
.notices-section + .notices-section { border-top: 1px solid #e5ddc9; }
.notices-section h2,
.notices-interests legend { margin: 0; padding: 0; color: #2c4633; font-size: 22px; font-weight: 650; line-height: 1.3; }
.notices-help { margin: 10px 0 22px; color: #56614e; font-size: 15px; line-height: 1.6; }
.notices-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.notices-field--email { grid-column: 1 / -1; }
.notices-field label { display: block; margin-bottom: 7px; color: #30372d; font-size: 14px; font-weight: 650; }
.notices-field input { width: 100%; min-height: 46px; padding: 11px 13px; border: 1px solid #b8bda5; border-radius: 8px; background: #fffdf6; color: #30372d; font: inherit; font-size: 16px; }
.notices-field input:focus { background: #fffdf6; }
.notices-button { min-height: 44px; padding: 11px 18px; border: 1px solid #2c4633; border-radius: 8px; background: #2c4633; color: #fff; font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; }
.notices-button:hover { background: #4c6242; }
.notices-button--secondary { color: #4c6242; background: #fffdf6; border-color: #b8bda5; }
.notices-button--secondary:hover { background: #e8eadc; }
.notices-load { margin-top: 16px; }
.notices-interests { min-width: 0; margin: 0; padding: 0; border: 0; }
.notices-options { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.notices-option { display: flex; align-items: flex-start; gap: 12px; padding: 18px; border: 1px solid #d9d1bd; border-radius: 9px; cursor: pointer; }
.notices-option:hover { background: #eeeadc; }
.notices-option:has(input:checked) { background: #e8eadc; border-color: #2c4633; }
.notices-option input { flex: 0 0 18px; width: 18px; height: 18px; margin: 3px 0 0; accent-color: #2c4633; }
.notices-option strong { display: block; color: #2c4633; font-size: 16px; line-height: 1.4; }
.notices-option span span { display: block; margin-top: 5px; color: #56614e; font-size: 13px; line-height: 1.5; }
.notices-form-footer { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding: 24px 32px; border-top: 1px solid #e5ddc9; background: #fffdf6; }
.notices-form-footer p { flex-basis: 100%; margin: 3px 0 0; color: #5e6656; font-size: 13px; line-height: 1.5; }
.notices-message { margin: 0 0 22px; padding: 14px 16px; border: 1px solid #d9d1bd; border-radius: 8px; background: #e8eadc; color: #30372d; font-size: 14px; line-height: 1.6; }
.notices-message--error { color: #8f2f2f; background: #fff0f0; border-color: #efb8b8; }
.notices-form input:focus-visible,
.notices-form button:focus-visible { outline: 3px solid #2c4633; outline-offset: 3px; }
@media (max-width: 640px) {
    .notices-section { padding: 24px 20px; }
    .notices-fields,
    .notices-options { grid-template-columns: 1fr; gap: 16px; }
    .notices-form-footer { padding: 22px 20px; }
}
