/* Contacto (página aparte): datos en hoja técnica y formulario provisional (mailto). */
.contact {
  display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 6vw, 110px);
  padding: 0 var(--pad) clamp(80px, 10vw, 160px);
}
.cdata { border-top: 2px solid var(--ink); position: sticky; top: calc(var(--header-h) + 24px); }
.cdata__row { display: grid; gap: 6px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.cdata dt { color: var(--blue); }
.cdata dd { font: 500 clamp(1.1rem, 1.7vw, 1.55rem) / 1.3 var(--f-display); letter-spacing: -0.02em; overflow-wrap: anywhere; }
.cdata a { text-decoration: none; background: linear-gradient(var(--blue), var(--blue)) left bottom / 0 2px no-repeat; transition: background-size 0.5s var(--ease-snap); }
.cdata a:hover { background-size: 100% 2px; }
.contact__form { display: grid; gap: 22px; align-content: start; }
.contact__intro { color: var(--ink-2); font-size: var(--t-lead); max-width: 56ch; }

.form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px var(--gap); margin-top: 12px; }
.field { display: grid; gap: 8px; }
.field--wide { grid-column: 1 / -1; }
.field label { font: 500 var(--t-mono) / 1.4 var(--f-mono); letter-spacing: 0.06em; text-transform: uppercase; color: var(--ink-2); }
.field input, .field select, .field textarea {
  width: 100%; padding: 0.85em 0; border: 0; border-bottom: 1px solid var(--line-strong); border-radius: 0;
  background: transparent; font: 400 1.05rem / 1.4 var(--f-text); color: var(--ink);
  transition: border-color 0.3s;
}
.field input:focus, .field select:focus, .field textarea:focus { outline: none; border-bottom: 2px solid var(--blue); }
.field textarea { resize: vertical; min-height: 140px; }
.field [aria-invalid="true"] { border-bottom-color: #b3261e; }
.field__err { color: #b3261e; font-size: 0.85rem; }
.field--check { grid-template-columns: auto 1fr; align-items: start; gap: 10px; }
.field--check input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--blue); }
.field--check label { text-transform: none; font: 400 0.95rem / 1.45 var(--f-text); letter-spacing: 0; color: var(--ink); }
.field--check .field__err { grid-column: 2; }
.form__end { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; }
.form__note { color: var(--ink-2); }
.form__status { width: 100%; color: var(--blue); font-weight: 500; }
@media (max-width: 899px) {
  .contact { grid-template-columns: 1fr; }
  .cdata { position: static; }
  .form { grid-template-columns: 1fr; }
}
