.contact-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:56px;align-items:start}.contact-address{margin:0 0 26px;font-style:normal;font-size:1.05rem;line-height:1.7}
.contact-address strong{color:var(--ink)}.contact-list{margin:0}
.contact-list dt{margin-top:18px;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.contact-list dd{margin:4px 0 0;font-size:1.02rem}.contact-form-wrap{padding:36px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);box-shadow:var(--shadow)}.field{margin-bottom:20px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field label{display:block;margin-bottom:7px;font-size:.92rem;font-weight:600;color:var(--ink)}.req{color:var(--brand)}.field input[type="text"],
.field input[type="email"],
.field input[type="tel"],
.field textarea{width:100%;padding:13px 15px;border:1px solid var(--line);border-radius:var(--radius-sm);font-family:inherit;font-size:1rem;color:var(--text);background:var(--bg);transition:border-color .18s ease,box-shadow .18s ease}.field input:focus,
.field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(31,98,142,.14)}.field textarea{resize:vertical;min-height:140px}.field-error{display:block;margin-top:6px;color:#c0392b;font-size:.88rem}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.field-captcha{padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-soft)}
.field-captcha label{margin-bottom:9px}
.field-captcha strong{color:var(--brand);font-variant-numeric:tabular-nums}
.field-captcha input{max-width:130px;background:var(--bg)}.field-hint{display:block;margin-top:7px;color:var(--muted);font-size:.85rem}.field-check .check{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:.95rem;color:var(--muted);cursor:pointer}
.field-check input{margin-top:4px;flex-shrink:0}.form-note{margin:16px 0 0;color:var(--muted);font-size:.9rem}.form-success{padding:34px 30px;border:1px solid rgba(31,98,142,.22);border-radius:var(--radius);background:rgba(31,98,142,.05);text-align:center}
.form-success-title{font-size:1.3rem;margin-bottom:.5em}@media (max-width:900px){.contact-grid{grid-template-columns:1fr;gap:38px}}@media (max-width:560px){.field-row{grid-template-columns:1fr;gap:0}.contact-form-wrap{padding:26px 22px}}