#contact{display:flex;align-items:center;box-sizing:border-box;padding-top:70px}
.contact-status--success{padding:18px 20px;border:1px solid #6277ff;border-radius:10px;background:#151e43;color:#eef1ff;line-height:1.65}.contact-status--success:focus{outline:2px solid #8c9cff;outline-offset:3px}
#viewport:has(#contact.section--is-active){touch-action:pan-y!important}
.contact-panel{position:relative;box-sizing:border-box;width:min(780px,90%);max-height:calc(100dvh - 140px);margin:auto;overflow-y:auto;overscroll-behavior:contain;padding:12px 16px 20px 0;scrollbar-width:thin}
.contact-panel h2{font-size:clamp(26px,3vw,38px);line-height:1.15;margin:8px 0 12px}.contact-intro{color:#a5a7b8;margin:0 0 24px;max-width:580px}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}.contact-field--wide{grid-column:1/-1}.contact-field label,.contact-services legend{display:block;margin-bottom:7px;font-size:13px;color:#c7cada}
.contact-field input,.contact-field textarea,.contact-phone select{box-sizing:border-box;width:100%;border:1px solid #34374a;border-radius:8px;background:#141621;color:#fff;padding:12px 14px;font:inherit;min-height:46px}
.contact-field input:focus,.contact-field textarea:focus,.contact-phone select:focus{outline:2px solid #6277ff;outline-offset:1px}.contact-field input[aria-invalid=true],.contact-field textarea[aria-invalid=true],.contact-phone select[aria-invalid=true]{border-color:#ff8c9c}
.contact-field textarea{resize:vertical;min-height:90px}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#7f8297}
.contact-phone{display:flex;gap:10px}.contact-phone select{width:190px;flex-shrink:0}.contact-phone input{min-width:0}.contact-field small{display:block;color:#9399b2;font-size:12px;margin-top:5px}
.contact-field .contact-error,.contact-error{color:#ff9dad;font-size:12px;display:block}.contact-error:empty{display:none}
.contact-services{border:0;padding:0;margin:20px 0;display:flex;gap:8px;flex-wrap:wrap}.contact-services label{cursor:pointer;position:relative}.contact-services input{position:absolute;opacity:0;width:1px;height:1px}
.contact-services span{display:block;border:1px solid #34374a;border-radius:20px;padding:6px 12px;font-size:12px;color:#b6bbcf}.contact-services input:checked+span{background:#172770;border-color:#657bff;color:#fff}.contact-services input:focus-visible+span{outline:2px solid white;outline-offset:3px}
.contact-submit{display:flex;align-items:center;gap:22px;margin-top:12px}.contact-submit button{background:#0f33ff;color:#fff;border:0;border-radius:8px;padding:14px 22px;font-weight:700;cursor:pointer;white-space:nowrap}.contact-submit button span{margin-left:20px}.contact-submit button:disabled{opacity:.6;cursor:wait}.contact-submit button:focus-visible{outline:2px solid #fff;outline-offset:3px}.contact-submit small{color:#858ba4;font-size:11px;max-width:300px}
.contact-status{font-size:14px;color:#b9c4ff;margin:12px 0}.contact-status:empty{display:none}.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(min-width:601px) and (max-height:800px){.contact-panel{padding-top:0;padding-bottom:6px}.contact-panel .eyebrow{margin:0 0 6px}.contact-panel h2{font-size:30px;margin:6px 0 8px}.contact-intro{font-size:13px;margin-bottom:16px}.contact-fields{gap:10px 20px}.contact-services{margin:12px 0}.contact-field textarea{height:76px;min-height:76px}.contact-submit button{padding:12px 20px}}
@media(max-width:600px){.contact-panel{width:90%;max-height:calc(100dvh - 130px);padding-right:8px}.contact-fields{grid-template-columns:1fr;gap:12px}.contact-phone select{width:140px}.contact-submit{align-items:stretch;flex-direction:column;gap:10px}.contact-submit small{max-width:none}.contact-intro{font-size:13px;margin-bottom:16px}}
