/* Scoped form presentation; shared site tokens keep both themes consistent. */
.rd-contact { min-width: 0; }
.rd-contact form { max-width: 48rem; }
.rd-contact-fields { display: grid; gap: 0 1.5rem; }
.rd-contact-fields > * { min-width: 0; }
.rd-contact-preview, .rd-contact-unavailable { padding: 1rem; border: 1px solid var(--rd-color-border, #78869b); border-radius: var(--rd-radius-md, .5rem); }
.rd-contact-feedback { padding: 1.5rem; margin-block: 0 2rem; border: 2px solid currentColor; border-radius: var(--rd-radius-md, .5rem); }
.rd-contact-errors { color: var(--rd-color-error, #b42332); }
.rd-contact-success { color: var(--rd-color-success, #166c46); }
.rd-contact-feedback h3 { color: inherit; }
.rd-contact-feedback > :last-child { margin-block-end: 0; }
.rd-contact-links { list-style: none; padding: 0; }
.rd-contact-links li + li { margin-block-start: .75rem; }
.rd-contact-links span { font-size: .875em; }
.rd-contact-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.rd-contact button:disabled { cursor: not-allowed; background: var(--rd-color-divider, #dfe5ed); color: var(--rd-color-muted, #526078); border-color: var(--rd-color-border, #78869b); }
.rd-contact [id] { scroll-margin-top: 2rem; }
@media (min-width: 40rem) {
	.rd-contact-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rd-contact-field-email, .rd-contact-field-location, .rd-contact-field-message { grid-column: 1 / -1; }
}
