/* =========================================================
   TOP LINES — Contact form
   The form had no submit handler, so the browser fell back to a
   GET: enquiries ended up in the query string and the visitor
   hit an nginx 404. Nothing reached Top Lines. Styling here
   covers the states that behaviour never needed — errors,
   sending, and the thank-you panel.
   ========================================================= */

/* Honeypot — off-screen rather than display:none, which some bots skip. */
.tl-honeypot {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.request-form-wrap .form-title label {
  cursor: pointer;
  margin: 0;
}

.request-form-wrap .form-title span {
  color: var(--tl-color-theme-primary, #0abab5);
}

/* ---- Validation ---- */
/* Sits between two stacked rows, so it needs room beneath it or it
   crowds the next field's label. */
.tl-form-error {
  margin: 8px 2px 14px;
  font-size: 14px;
  line-height: 1.45;
  color: #c0392b;
}

.request-form-wrap .form-control[aria-invalid="true"] {
  border-color: #c0392b;
  box-shadow: 0 0 0 3px rgba(192, 57, 43, 0.12);
}

/* ---- Submit states ---- */
.request-form-wrap .tl-primary-btn[disabled] {
  opacity: 0.65;
  cursor: progress;
}

.tl-form-status:empty {
  display: none;
}

.tl-form-status {
  margin: 18px 2px 0;
  font-size: 15px;
  line-height: 1.6;
  color: #c0392b;
}

/* ---- Thank-you panel ---- */
.tl-form-success {
  padding: clamp(28px, 3.4vw, 48px);
  border: 1px solid var(--tl-surface-rule, rgba(25, 25, 25, 0.13));
  border-radius: 22px;
  background-color: var(--tl-surface-card, #fff);
}

.tl-form-success h3 {
  margin: 0 0 12px;
  font-size: clamp(20px, 1.7vw, 26px);
  font-weight: 500;
  letter-spacing: -0.01em;
  color: var(--tl-ink, #191919);
}

.tl-form-success p {
  margin: 0 0 24px;
  font-size: clamp(16px, 1.05vw, 18px);
  line-height: 1.7;
  color: var(--tl-ink-body, #4d4d52);
}

.tl-form-success a {
  color: var(--tl-color-theme-primary, #0abab5);
  text-decoration: underline;
  text-underline-offset: 3px;
}
