/* Contact — the routes (cards), the form, and the follow row.
   Base .form/.field/input styles come from main.css. */

.contact-split{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(1.6rem,4vw,3rem);align-items:start}
@media(max-width:1024px){.contact-split{grid-template-columns:1fr}}
.contact-split__form .form{max-width:none}

.contact-split__aside{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);
  padding:clamp(1.3rem,2.5vw,1.8rem)}
.contact-split__aside p{color:var(--ink-soft);font-size:var(--step--1);line-height:1.6}
.contact-split__aside p + p{margin-block-start:.9rem}

/* Honeypot: off-screen for bots, invisible and unreachable for people. */
.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.formnotice{border:1px solid var(--line);border-radius:var(--radius);padding:.9rem 1.1rem;
  font-size:var(--step--1);line-height:1.5;margin-block-end:1.2rem}
.formnotice--ok{border-color:var(--accent);color:var(--ink)}
.formnotice--bad{border-color:#c2564e;color:var(--ink)}

.contact-form .hero-actions{margin-block-start:1.6rem}

/* Follow David — inside the aside next to the form; icon + name only, no markers. */
.contact-split__aside-title{font-family:var(--font-display);font-weight:500;font-size:1.1rem;
  margin-block-start:1.6rem;padding-block-start:1.4rem;border-block-start:1px solid var(--line)}
.follow-list{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.follow-list a{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;padding:.5rem 1rem;
  border:1px solid var(--line);border-radius:99px;background:var(--surface-2);color:var(--ink-soft);
  text-decoration:none;font-size:var(--step--1);font-weight:600;transition:color .25s,border-color .25s,background .25s}
.follow-list a:hover,.follow-list a:focus-visible{color:var(--accent);border-color:var(--accent);background:var(--surface)}
