.contact-main{padding:70px 0 110px}
.contact-intro{text-align:center;max-width:720px;margin:0 auto 38px}
.contact-intro h1{font-size:clamp(2.3rem,5vw,4rem);line-height:1.15;letter-spacing:-.06em;margin:12px 0 18px}
.contact-intro h1 b{color:var(--blue)}
.contact-intro p{color:var(--muted);font-size:1.04rem}
.form-shell{display:grid;grid-template-columns:.72fr 1.28fr;background:#fff;border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}
.form-aside{background:var(--navy);color:#fff;padding:44px 38px}
.form-aside h2{font-size:1.6rem;line-height:1.3;margin:12px 0 22px}
.form-aside p{color:rgba(255,255,255,.72)}
.form-aside ul{list-style:none;padding:0;margin:32px 0 0}
.form-aside li{padding:15px 0;border-top:1px solid rgba(255,255,255,.14)}
.form-aside li b{display:block;color:#9fc2f3;font-size:.8rem;margin-bottom:3px}
.form-area{padding:44px}
.form-area h2{margin:0 0 8px;font-size:1.65rem}
.required-note{color:var(--muted);font-size:.88rem;margin:0 0 28px}
.required-note b,.label b{color:#d44d4d}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}
.field{display:flex;flex-direction:column;gap:7px}
.field.full{grid-column:1/-1}
.label{font-weight:750;font-size:.93rem}
.form-area input,.form-area select,.form-area textarea{width:100%;border:1px solid #ced6df;border-radius:10px;background:#fff;color:var(--ink);font:inherit;padding:13px 14px;outline:none}
.form-area input:focus,.form-area select:focus,.form-area textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(39,90,168,.11)}
.form-area textarea{min-height:145px;resize:vertical}
.error{min-height:20px;color:#c73b3b;font-size:.82rem}
.submit-row{margin-top:28px;display:flex;gap:12px;align-items:center}
.submit{border:0;border-radius:11px;background:var(--blue);color:#fff;font:inherit;font-weight:850;padding:15px 26px;cursor:pointer}
.submit:disabled{opacity:.65;cursor:wait}
.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.form-status{display:none;margin-top:18px;padding:15px 18px;border-radius:12px;font-size:.92rem;font-weight:700}
.form-status.is-sending,.form-status.is-success,.form-status.is-error{display:block}
.form-status.is-sending{background:#eef4fb;color:#365c89}
.form-status.is-success{background:#e9f6ee;color:#237342}
.form-status.is-error{background:#fff0f0;color:#b33232}
.submit-row span{color:var(--muted);font-size:.86rem}
.contact-help{margin-top:20px;padding:18px 20px;border-radius:12px;background:var(--pale);color:#42536b;font-size:.9rem}
.back-link{display:inline-block;margin-top:22px;color:var(--blue);font-weight:750}
@media(max-width:800px){.contact-main{padding:45px 0 90px}
.form-shell{grid-template-columns:1fr}
.form-aside,.form-area{padding:30px 23px}
.fields{grid-template-columns:1fr}
.field.full{grid-column:auto}
.submit-row{align-items:flex-start;flex-direction:column}
.submit{width:100%}
}
