.contact-wrap{min-height:calc(100vh - var(--top-h));display:grid;place-items:center;padding:calc(var(--top-h) + 40px) 16px 80px}.contact-card{width:100%;max-width:500px;padding:36px 32px 32px;background:var(--card);border-radius:2px;box-shadow:0 0 0 1px var(--line)}.contact-card h1{margin:0;font-size:28px;font-weight:500;letter-spacing:-.035em;color:var(--ink)}.contact-sub{margin:8px 0 24px;font-size:15px;line-height:1.5;color:var(--muted)}.contact-form{display:grid;gap:16px}.contact-row{display:grid;gap:6px}.contact-row label{font-size:13.5px;font-weight:500;color:var(--ink)}.contact-row input,.contact-row textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r);background:var(--card);font:inherit;font-size:14.5px;color:var(--ink);transition:border-color var(--t-instant) linear}.contact-row input:hover,.contact-row textarea:hover{border-color:var(--line-strong)}.contact-row input:focus,.contact-row textarea:focus{outline:none;border-color:var(--ink)}.contact-row textarea{resize:vertical;min-height:100px}.contact-captcha{display:flex;justify-content:center;min-height:78px;margin:4px 0}.contact-btn{width:100%;height:44px;margin-top:4px;font-size:15px}.contact-note{margin:8px 0 0;font-size:13px;color:var(--muted);text-align:center}.contact-error{padding:10px 14px;background:var(--danger-tint,#fef2f2);border:1px solid var(--danger,#dc2626);border-radius:var(--r);color:var(--danger,#dc2626);font-size:14px}.contact-success{padding:24px 0 12px;text-align:center}.contact-success h3{margin:0;font-size:20px;font-weight:500;color:var(--ink)}.contact-success p{margin:8px 0 0;font-size:15px;color:var(--muted)}