.contact-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(220px, 1fr); gap: 32px; align-items: start; margin-bottom: 56px; }
.contact-card { background: var(--panel); border: 1px solid var(--line); border-radius: 16px; padding: 30px; }
.contact-card h2 { margin: 0 0 22px; font-size: 19px; }
.form-notice { font-size: 12px; line-height: 1.9; padding: 12px 16px; color: #dce9c8; background: #28321f; border-radius: 6px; }
.form-notice[hidden] { display: none; }
.contact-card fieldset { border: 0; padding: 0; margin: 25px 0; min-width: 0; }
.contact-card legend, .field-label { font-size: 13px; font-weight: bold; }
.required, .optional { font-size: 9px; font-weight: normal; margin-left: 7px; color: var(--muted); }
.required { color: var(--lime); }
.category-options { display: flex; flex-wrap: wrap; gap: 12px 18px; margin-top: 17px; font-size: 12px; }
.category-options label { display: flex; align-items: center; gap: 5px; cursor: pointer; }
.category-options input { accent-color: var(--lime); }
.field-label { display: block; margin: 25px 0 10px; }
.contact-card select, .contact-card textarea, .contact-card input:not([type=radio]) { display: block; width: 100%; padding: 13px; font: inherit; font-size: 14px; color: var(--text); background: #111710; border: 1px solid #48513f; border-radius: 6px; }
.contact-card textarea { resize: vertical; min-height: 150px; line-height: 1.8; }
.contact-card input::placeholder, .contact-card textarea::placeholder { color: #899380; }
.contact-card :is(input,textarea,select):focus-visible { outline: 2px solid var(--lime); outline-offset: 3px; }
.field-help, .character-count, .privacy-note { font-size: 11px; line-height: 1.9; color: var(--muted); }
.character-count { text-align: right; margin: 7px 0; }
.privacy-note { margin-top: 25px; }
.contact-card .primary { width: 100%; margin-top: 23px; justify-content: center; }
.primary:disabled { cursor: not-allowed; opacity: .45; }
.form-result { font-size: 13px; line-height: 1.9; margin-bottom: 0; white-space: pre-line; }
.form-result[data-state=error] { color: #ffb3a9; }
.form-result[data-state=success] { color: var(--lime); }
.form-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.contact-aside { padding: 22px 0; }
.contact-aside h2 { font-size: 26px; line-height: 1.6; margin-bottom: 32px; }
.contact-aside h3 { font-size: 13px; margin-top: 27px; }
.contact-aside p:not(.eyebrow) { font-size: 12px; line-height: 2; color: var(--muted); }
@media(max-width:740px) { .contact-layout { grid-template-columns: 1fr; gap: 10px; } .contact-card { padding: 22px 18px; } .contact-aside { padding: 20px 4px; } .category-options { flex-direction: column; gap: 16px; } }
