#contact { padding-bottom: calc(var(--section-pad) * 0.8); }
.contact-layout { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(32px, 6vw, 96px); align-items: start; }
.contact-national { margin-top: 20px; font-family: var(--font-serif); color: var(--gold-light); letter-spacing: 0.1em; }
.contact-line { margin-top: 40px; padding-top: 28px; border-top: 1px solid var(--line-dark); display: flex; gap: 20px; align-items: center; font-size: var(--fs-small); color: var(--on-dark-muted); }
.contact-line-qr { flex: none; width: 104px; height: 104px; background: var(--on-dark); padding: 6px; }
.contact-line-label { display: block; margin-bottom: 4px; color: var(--gold-light); letter-spacing: 0.12em; }
.contact-line p { line-height: 1.8; }

.contact-formwrap { position: relative; z-index: var(--z-content); }
.contact-form { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 20px; }
.contact-field { display: block; min-width: 0; }
.contact-field--wide, .contact-submit, .contact-status { grid-column: 1 / -1; }
.contact-field > span { display: block; margin-bottom: 6px; font-size: var(--fs-small); color: var(--gold-light); letter-spacing: 0.1em; }
.contact-field input, .contact-field select, .contact-field textarea {
  display: block; width: 100%; padding: 12px 14px;
  background: rgba(11, 11, 12, 0.62);
  border: 1px solid var(--line-dark);
  border-color: rgba(242, 239, 232, 0.4);
  border-radius: 0; color: var(--on-dark);
  font-size: var(--fs-small); letter-spacing: 0.04em;
  transition: border-color 0.4s var(--ease-out);
  appearance: none; -webkit-appearance: none;
}
.contact-field select { background-image: linear-gradient(45deg, transparent 50%, var(--gold) 50%), linear-gradient(135deg, var(--gold) 50%, transparent 50%); background-position: calc(100% - 20px) 55%, calc(100% - 15px) 55%; background-size: 5px 5px; background-repeat: no-repeat; padding-right: 40px; }
.contact-field select option { background: var(--ink); color: var(--on-dark); }
.contact-field textarea { resize: vertical; min-height: 110px; }
.contact-field input::placeholder, .contact-field textarea::placeholder { color: var(--on-dark-muted); opacity: 0.7; }
.contact-field input:focus, .contact-field select:focus, .contact-field textarea:focus { border-color: var(--gold); outline: none; }
.contact-submit { justify-content: center; width: 100%; background: linear-gradient(90deg, var(--gold-deep), var(--gold-light) 50%, var(--gold)); border-color: var(--gold); }
.contact-submit:hover { background: transparent; color: var(--gold-light); }
.contact-submit:disabled { opacity: 0.6; cursor: wait; }
.contact-status { min-height: 1.5em; font-size: var(--fs-small); color: var(--on-dark-muted); }
.contact-status.is-success { color: var(--gold-light); }
.contact-status.is-error { color: var(--on-dark); }
.contact-fallback { margin-top: 12px; font-size: var(--fs-small); color: var(--on-dark-muted); }
.contact-fallback a { color: var(--gold-light); text-decoration: underline; text-underline-offset: 3px; word-break: break-all; }

@media (max-width: 900px) {
  .contact-layout { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .contact-form { grid-template-columns: 1fr; }
  .contact-line { flex-direction: row; }
}
.contact-intro .section-title { font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.25rem); text-wrap: balance; }
