
.contact-main{min-height:calc(100vh - 140px);background:linear-gradient(180deg,#f5f8fc 0,#eef5ff 100%);padding:42px 0 64px}
.contact-shell{max-width:1120px}
.contact-heading{text-align:center;max-width:780px;margin:0 auto 26px}
.contact-eyebrow{display:inline-block;color:#0f63e8;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.contact-heading h1{font-size:clamp(34px,5vw,48px);letter-spacing:-1.2px;margin:7px 0 10px;color:#102a52}
.contact-heading p{margin:0;color:#5a6d86;font-size:16px;line-height:1.65}
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px;align-items:start}
.contact-card,.contact-side{background:#fff;border:1px solid #dfe7f1;border-radius:18px;box-shadow:0 12px 34px rgba(15,35,70,.07)}
.contact-card{padding:26px}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.contact-full{grid-column:1/-1}
.contact-field{display:flex;flex-direction:column;gap:7px}
.contact-field label{font-size:13px;font-weight:850;color:#223b5d}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;box-sizing:border-box;border:1px solid #cbd7e6;border-radius:11px;background:#fff;color:#172033;padding:12px 13px;font:inherit;outline:none;transition:.15s}
.contact-field input,.contact-field select{height:48px}
.contact-field textarea{resize:vertical;min-height:180px;line-height:1.5}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:#6aa6f5;box-shadow:0 0 0 3px rgba(15,99,232,.1)}
.contact-field .is-error{border-color:#d64c42;background:#fff8f7}
.contact-field small{color:#b03830;font-size:12px;font-weight:750}
.contact-privacy{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border:1px solid #e1e8f1;border-radius:11px;background:#f8fafc;color:#455d79;font-size:13px;line-height:1.45}
.contact-privacy input{width:18px;height:18px;margin-top:1px;accent-color:#0f63e8;flex:0 0 auto}
.contact-privacy a{font-weight:850;color:#0f63e8}
.contact-privacy.is-error-box{border-color:#d64c42;background:#fff8f7}
.contact-security-note{background:#f0f6ff;border:1px solid #d8e8ff;border-radius:11px;padding:12px 14px;color:#405c7d;font-size:13px;line-height:1.5}
.contact-actions{display:flex;justify-content:flex-end}
.contact-submit{min-width:190px;min-height:48px}
.contact-side{padding:24px;position:sticky;top:96px}
.contact-side-icon{width:48px;height:48px;border-radius:14px;background:#edf5ff;display:grid;place-items:center;font-size:25px}
.contact-side h2{font-size:21px;margin:15px 0 10px;color:#102a52}
.contact-side ul{margin:0;padding-left:20px;color:#536987;line-height:1.6}
.contact-side li+li{margin-top:9px}
.contact-alert{display:flex;flex-direction:column;gap:4px;max-width:860px;margin:0 auto 20px;border-radius:13px;padding:14px 16px}
.contact-alert-success{background:#ebf8f0;border:1px solid #b9e2c8;color:#17633a}
.contact-alert-error{background:#fff1ef;border:1px solid #efc4bf;color:#8e3029}
.contact-alert small{line-height:1.45}
.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:850px){.contact-grid{grid-template-columns:1fr}.contact-side{position:static}.contact-form{grid-template-columns:1fr}.contact-full{grid-column:1}.contact-card{padding:20px}}
@media(max-width:520px){.contact-main{padding:28px 0 45px}.contact-card,.contact-side{border-radius:15px}.contact-actions{display:block}.contact-submit{width:100%}}
