﻿.contact-section { width:100%; max-width:none; box-sizing:border-box; margin:0 0 64px; padding:32px;  border:1px solid #70566b; border-radius:6px; color:#fff; font-family:'Poppins',Arial,sans-serif; scroll-margin-top:120px; }
.contact-section h1 { margin:0 0 16px; font-family:'Poppins',Arial,sans-serif; font-size:clamp(2rem,4vw,3rem); font-weight:500; line-height:1.15; }
.contact-section p { font-size:16px; line-height:1.8; margin:0 0 22px; }
.contact-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.contact-field { min-width:0; }
.contact-field label { display:block; margin-bottom:8px; font-size:15px; font-weight:500; }
.contact-section .contact-optional,.contact-section .contact-hint,.contact-field small { color:#d9cdd6; font-size:13px; font-weight:400; }
.contact-field input,.contact-field select,.contact-field textarea { box-sizing:border-box; width:100%; min-height:50px; border:1px solid #b9a8b4; border-radius:3px; background:#fff; color:#241521; font:400 16px 'Poppins',Arial,sans-serif; padding:12px; }
.contact-field textarea { resize:vertical; }
.contact-field small { display:block; margin-top:7px; line-height:1.6; }
.contact-wide { grid-column:1/-1; }
.contact-section button { border:0; border-radius:3px; padding:15px 30px; background:#5096ce; color:#101b25; font:600 16px 'Poppins',Arial,sans-serif; cursor:pointer; }
.contact-section button:hover { background:#85b8e0; }
.contact-section :is(input,select,textarea,button,a):focus-visible { outline:3px solid #8ccaff; outline-offset:3px; }
.contact-notice { padding:20px; border:1px solid #a9d9bc; background:#203e30; margin-bottom:24px; line-height:1.7; }
.contact-error { background:#48242d; border-color:#ffb3b9; }
.contact-error a { color:#fff; text-decoration:underline; }
.contact-field .contact-field-error { color:#ffb3b9; }
.contact-field [aria-invalid=true] { border:2px solid #b42338; }
.contact-trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
@media(max-width:650px) { .contact-section { padding:24px 18px; margin:0 0 40px; } .contact-grid { grid-template-columns:1fr; gap:20px; } .contact-section button { width:100%; } }
