.contact-section { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); }
.contact-copy .newsletter-box { margin-top: 2rem; padding: 1.5rem; }
.contact-copy .newsletter-box h3 { font-size: 1.5rem; }
.contact-form { padding: clamp(1.4rem, 3vw, 2.5rem); border: 1px solid #e9b36540; border-radius: 4px; background: linear-gradient(145deg, #0d2a3838, #50171316); min-width: 0; }
.contact-form h3 { margin: 0 0 1.8rem; font-size: 1.6rem; }
.contact-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.contact-form label { display: block; color: var(--ink); font-size: .9375rem; line-height: 1.5; margin-bottom: 1.3rem; }
.contact-fields label { min-width: 0; margin: 0 0 .3rem; }
.contact-form input, .contact-form select, .contact-form textarea { display: block; width: 100%; min-width: 0; min-height: 48px; margin-top: .5rem; padding: .85rem; border: 1px solid #ffffff3a; border-radius: 3px; background: #111c22; color: var(--ink); font: 1rem/1.5 'DM Sans', sans-serif; }
.contact-form textarea { resize: vertical; min-height: 180px; }
.contact-form input:focus-visible, .contact-form select:focus-visible, .contact-form textarea:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
.contact-form .contact-fields + label { margin-top: 1.3rem; }
main .contact-form .form-hint, main .contact-form .form-privacy { font-size: .8125rem; line-height: 1.7; color: var(--muted); margin-top: -.7rem; }
main .contact-form .form-privacy { margin: 1rem 0 1.3rem; }
.form-privacy a { color: var(--gold); text-decoration: underline; text-underline-offset: .2em; }
.contact-form .form-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
#contact-status { font-size: .9375rem; line-height: 1.7; margin: 1rem 0 0; }
#contact-status:empty { display: none; }
#contact-status[data-state="success"] { color: #b8ddc6; }
#contact-status[data-state="error"] { color: #ffd0bb; }
@media (max-width: 800px) { .contact-section { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 440px) { .contact-fields { grid-template-columns: 1fr; } .contact-form { padding: 1.2rem; } }
@media (forced-colors: active) { .contact-form { background: none; border-color: CanvasText; } }
