/* ==========================================================================
   VENUS — CONTACT PAGE
   Visual language: premium corporate conversion point. A two-tone split — a
   dark statement + enquiry routes + (placeholder) details on the left, the
   working form on the right. Honest: no invented contact facts; submission
   layer cleanly isolated. Tokens only.
   ========================================================================== */

.contact-split {
  display: grid; grid-template-columns: 1fr;
  border: var(--border-hairline); border-radius: var(--radius-lg); overflow: hidden;
  box-shadow: var(--shadow-md); background: var(--bg-page);
}
@media (min-width: 992px) { .contact-split { grid-template-columns: 0.85fr 1.15fr; } }

/* --- Left: corporate statement --- */
.contact-aside {
  position: relative; overflow: hidden; color: var(--text-on-dark);
  /*background: linear-gradient(160deg, var(--ink-800), var(--ink-900));*/
  background: #4c2e10;
  padding: clamp(1.75rem, 1.3rem + 2.2vw, 3rem);
}
.contact-aside::after {
  content: ""; position: absolute; right: -140px; bottom: -140px; width: 340px; height: 340px; border-radius: 50%;
  background: radial-gradient(circle, var(--glow-copper) 0%, transparent 65%); pointer-events: none;
}
.contact-aside__eyebrow {
  position: relative; display: inline-flex; align-items: baseline; gap: var(--space-3);
  font-family: var(--font-mono); font-weight: var(--fw-semibold); font-size: var(--fs-small);
  letter-spacing: 0.12em; text-transform: uppercase; color: var(--copper-300); margin: 0 0 var(--space-4);
}
.contact-aside__eyebrow .idx { color: var(--steel-300); padding-right: var(--space-3); border-right: 1px solid var(--color-border-dark); }
.contact-aside__title { position: relative; font-weight: var(--fw-bold); letter-spacing: -0.02em; line-height: 1.1; font-size: clamp(1.8rem, 1.3rem + 2vw, 2.75rem); color: var(--text-on-dark); margin: 0 0 var(--space-4); max-width: 16ch; }
.contact-aside__lede { position: relative; color: var(--text-on-dark-muted); margin: 0 0 var(--space-8); max-width: 42ch; }

/* enquiry routes */
.enquiry-routes { position: relative; list-style: none; margin: 0 0 var(--space-8); padding: 0; }
.enquiry-routes li { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) 0; border-bottom: 1px solid var(--color-border-dark); color: var(--text-on-dark); font-weight: var(--fw-medium); }
.enquiry-routes li:last-child { border-bottom: 0; }
.enquiry-routes li::before { content: ""; width: 7px; height: 7px; border-radius: 50%; border: 2px solid var(--copper-500); flex: 0 0 auto; }

.contact-aside .contact-detail { position: relative; margin-bottom: var(--space-4); }
.contact-aside .contact-detail__label { color: var(--steel-300); }
.contact-aside hr { border-top: 1px solid var(--color-border-dark); margin: var(--space-5) 0; }
.contact-aside__note { position: relative; font-size: var(--fs-small); color: var(--steel-300); margin: var(--space-2) 0 0; }

/* --- Right: form --- */
.contact-main { padding: clamp(1.75rem, 1.3rem + 2.2vw, 3rem); background: var(--bg-page); }
.contact-main__head { margin: 0 0 var(--space-6); }
.contact-main__title { font-size: var(--fs-h3); margin: 0 0 var(--space-1); }
.contact-main__sub { color: var(--color-text-muted); font-size: var(--fs-small); margin: 0; }

/* Submission-failure state (parity with .form-success) */
.form-failure {
  display: none; align-items: flex-start; gap: var(--space-3);
  padding: var(--space-6); border: 1px solid var(--danger); border-radius: var(--radius-md);
  background: rgba(168,58,44,0.06); color: var(--color-text); margin-top: var(--space-4);
}
.form-failure.is-visible { display: flex; }
.form-failure__icon { color: var(--danger); flex: 0 0 auto; }
.form-failure a { color: var(--color-link); }
