/* KNITFORM Contact · builds on landing.css. */
.contact-hero{padding-block:68px 52px}
.contact-layout{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.45fr);gap:54px;align-items:start;padding-top:64px;padding-bottom:112px}
.contact-side{padding:28px 8px 0 0}
.contact-side h2{font-size:clamp(22px,2.6vw,29px);line-height:1.35;letter-spacing:-.05em;margin:12px 0 12px}
.contact-side>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.86;margin-bottom:31px}
.support-tip{display:flex;gap:15px;border-top:1px solid var(--border);padding:21px 0 18px}
.support-number{flex:none;color:#937abc;font-size:11px;font-weight:800;letter-spacing:.10em;margin-top:4px}
.support-tip strong{display:block;font-size:14px;margin-bottom:6px}
.support-tip p{margin:0;font-size:12px;line-height:1.85;color:var(--muted)}
.contact-links{display:grid;gap:13px;margin-top:27px}
.contact-links a{font-size:13px;font-weight:750;color:var(--violet-deep)}
.contact-links a:hover{text-decoration:underline}
.contact-card{background:var(--paper);border:1px solid #e9e3ec;border-radius:22px;padding:42px;box-shadow:0 14px 42px rgba(43,32,68,.055)}
.contact-card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;border-bottom:1px solid #eee9ef;padding-bottom:24px;margin-bottom:28px}
.contact-card-heading h2{font-size:26px;letter-spacing:-.055em;line-height:1.3;margin:9px 0 10px}
.contact-card-heading p{font-size:13px;color:var(--muted);margin:0}
.contact-card-icon{width:45px;height:45px;border:1px solid #e8dff3;border-radius:14px;background:#f8f4fc;color:#8669ae;display:grid;place-items:center;font-size:24px}
.contact-field{display:flex;flex-direction:column;gap:8px;margin-bottom:21px;min-width:0}
.contact-field label{font-size:13px;font-weight:770;color:var(--ink)}
.contact-required{color:#a85866}
.contact-field .optional{font-size:11px;font-weight:500;color:#9a91a0;margin-left:4px}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;font:inherit;font-size:14px;color:var(--ink);background:#fff;border:1px solid #ddd5e2;border-radius:11px;min-height:47px;padding:12px 14px;outline:none;transition:border-color .18s,box-shadow .18s}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#a299a7}
.contact-field textarea{min-height:183px;resize:vertical;line-height:1.8}
.contact-field :is(input,select,textarea):focus-visible{border-color:#9479bd;box-shadow:0 0 0 3px rgba(147,121,189,.15)}
.contact-field :is(input,select,textarea)[aria-invalid="true"]{border-color:#b85464}
.contact-field small{font-size:11px;color:var(--muted)}
.contact-field-row{display:grid;grid-template-columns:1fr 1.15fr;gap:16px}
.contact-count{align-self:flex-end;margin-top:-2px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.contact-agreement{display:flex;gap:12px;padding:17px;background:#f8f5fa;border:1px solid #ebe5ee;border-radius:12px;margin:12px 0 24px;cursor:pointer}
.contact-agreement input{height:17px;width:17px;flex:none;accent-color:var(--violet);margin-top:2px}
.contact-agreement strong{display:block;font-size:12px;line-height:1.55}
.contact-agreement small{display:block;font-size:11px;line-height:1.8;color:var(--muted);margin-top:5px}
.contact-agreement a{text-decoration:underline;text-underline-offset:2px}
.contact-submit-row{display:flex;gap:20px;align-items:center;justify-content:space-between}
.contact-security{font-size:11px;color:var(--muted);margin:0;line-height:1.65}
.contact-send{min-width:151px;flex-shrink:0}
.contact-send:disabled{cursor:not-allowed;opacity:.53;box-shadow:none;transform:none}
.contact-status{font-size:13px;line-height:1.7;padding:13px 16px;border-radius:11px;margin-bottom:21px;border:1px solid transparent}
.contact-status[data-type="info"]{background:#f1ecf8;border-color:#e4dced;color:#594575}
.contact-status[data-type="error"]{background:#fff5f5;border-color:#eed4d8;color:#953e50}
.contact-status[data-type="success"]{background:#eff9f5;border-color:#ceeadc;color:#276d56}
.hp-field{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.contact-layout{gap:24px;grid-template-columns:minmax(210px,.7fr) minmax(0,1.4fr)}.contact-card{padding:29px}}
@media(max-width:760px){.contact-hero{padding-block:49px 40px}.contact-layout{grid-template-columns:1fr;padding-top:33px;padding-bottom:67px;gap:25px}.contact-side{padding:0}.contact-side>p:not(.eyebrow){margin-bottom:18px}.support-tip{display:none}.contact-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:18px}.contact-card{padding:23px 18px;border-radius:17px}.contact-card-heading{padding-bottom:20px}.contact-card-heading h2{font-size:23px}.contact-card-icon{display:none}.contact-field-row{grid-template-columns:1fr;gap:0}.contact-submit-row{flex-direction:column;align-items:stretch;gap:14px}.contact-send{width:100%}}
