/* ── CONTACT ── */
.contact-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem)}
.contact h2{font-size:clamp(3rem,10vw,8rem);max-width:none;line-height:.9;font-variation-settings:"opsz" 96,"wdth" 92;margin-bottom:1.5rem}
.contact .tag{font-family:var(--serif);font-size:clamp(1.15rem,1.8vw,1.4rem);line-height:1.5;max-width:40ch;margin:0 0 2rem}
.email-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem}
.email-row code{font-family:var(--mono);font-size:clamp(.85rem,1.6vw,1.05rem);padding:.7rem 1rem;border:1.5px solid var(--ink);border-radius:8px;background:var(--paper);word-break:break-all;user-select:all}
.social-links{display:flex;gap:.75rem;flex-wrap:wrap}
form{display:grid;gap:1rem;align-content:start;background:var(--paper);border:1.5px solid var(--ink);border-radius:14px;padding:clamp(1.1rem,2.5vw,1.8rem);box-shadow:7px 8px 0 var(--ink)}
.form-field{display:grid;gap:.4rem}
.form-field label{color:var(--mut)}
.form-field input,.form-field textarea{width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1.5px solid var(--line);border-radius:8px;padding:.85rem 1rem;transition:border-color .2s,box-shadow .2s}
.form-field textarea{min-height:9rem;resize:vertical}
.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--ink);box-shadow:3px 3px 0 var(--accent)}
.hint{color:var(--mut);font-size:.88rem;margin:0}
@media (max-width:860px){.contact-grid{grid-template-columns:1fr}}
