.capability-list li { grid-template-columns: minmax(0, 1fr) auto; }
.card-topline { justify-content: flex-end; }
.step { grid-template-columns: 160px minmax(0, 1fr); }

.contact-panel {
  backdrop-filter: blur(14px);
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 20px;
  box-shadow: 0 36px 90px rgba(0, 0, 0, 0.22);
  margin: 3rem auto 0;
  max-width: 880px;
  padding: clamp(1.5rem, 4vw, 3rem);
  position: relative;
  text-align: left;
}

.form-status {
  border: 1px solid currentColor;
  border-radius: 8px;
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.5;
  margin: 0 0 1.5rem;
  padding: 1rem 1.2rem;
}
.form-status.success { background: rgba(102, 207, 255, 0.1); color: var(--sky); }
.form-status.error { background: rgba(241, 138, 75, 0.12); color: #ffb184; }

.field-grid { display: grid; gap: 1.2rem; grid-template-columns: 1fr 1fr; }
.field { margin-bottom: 1.25rem; }
.field label {
  color: #dce7ef;
  display: block;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.095em;
  margin-bottom: 0.6rem;
  text-transform: uppercase;
}
.field input, .field select, .field textarea {
  appearance: none;
  background: rgba(5, 18, 30, 0.56);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  color: var(--white);
  font: inherit;
  line-height: 1.4;
  min-height: 54px;
  padding: 0.85rem 1rem;
  transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
  width: 100%;
}
.field textarea { min-height: 160px; resize: vertical; }
.field select {
  background-image:
    linear-gradient(45deg, transparent 50%, var(--sky) 50%),
    linear-gradient(135deg, var(--sky) 50%, transparent 50%);
  background-position: calc(100% - 18px) 23px, calc(100% - 12px) 23px;
  background-repeat: no-repeat;
  background-size: 6px 6px, 6px 6px;
  padding-right: 2.7rem;
}
.field select option { background: var(--navy); color: var(--white); }
.field input:focus, .field select:focus, .field textarea:focus {
  background-color: rgba(5, 18, 30, 0.8);
  border-color: var(--sky);
  box-shadow: 0 0 0 3px rgba(102, 207, 255, 0.16);
  outline: none;
}
.field input::placeholder, .field textarea::placeholder { color: #8295a5; opacity: 1; }
.field-hint { color: #91a3b2; display: block; font-size: 0.74rem; font-weight: 500; letter-spacing: 0; margin-top: 0.48rem; text-transform: none; }
label .field-hint { display: inline; margin-left: 0.35rem; }
.field-errors { color: #ffb184; font-size: 0.82rem; margin: 0.55rem 0 0; padding-left: 1.1rem; }

.form-actions { display: flex; justify-content: flex-end; margin-top: 0.4rem; }

.website-field {
  height: 1px;
  left: -10000px;
  overflow: hidden;
  position: absolute;
  top: auto;
  width: 1px;
}

@media (max-width: 680px) {
  .step { grid-template-columns: 1fr; }
  .step p { grid-column: auto; }
  .contact-panel { border-radius: 14px; margin-top: 2.5rem; padding: 1.25rem; }
  .field-grid { gap: 0; grid-template-columns: 1fr; }
  .form-actions .button { width: 100%; }
}
