/* contact.css — Contact details list and enquiry form. */

.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,6vw,96px)}
.contact-info{display:grid;gap:28px;align-content:start;min-width:0}
.info-list{display:grid;border-top:1px solid var(--line)}
.info-list div{display:grid;grid-template-columns:140px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.info-list dt{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);padding-top:3px}
.info-list dd a{text-decoration:none;border-bottom:1px solid var(--line)}.info-list dd a:hover{color:var(--brass);border-color:var(--brass)}
.info-list dd{margin:0;font-weight:500;min-width:0;overflow-wrap:anywhere}
form{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:var(--surface);border:1px solid var(--line);padding:clamp(24px,4vw,40px)}
.field{display:grid;gap:8px;min-width:0}
.field.full{grid-column:1/-1}
label{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}
input,select,textarea{font:inherit;font-size:16px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:2px;padding:13px 14px;width:100%}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brass);box-shadow:0 0 0 3px var(--brass-soft)}
textarea{min-height:130px;resize:vertical}
.form-note{grid-column:1/-1;font-size:14.5px;color:var(--ok);font-weight:500}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}}
@media (max-width:560px){form{grid-template-columns:1fr}.info-list div{grid-template-columns:1fr;gap:4px}}
