/* Voxecore wiring on top of contact-sales.ds.css (from Contact Sales.standalone.html) */

/* Replace design-system purple (--brand) with white sitewide on this bundle */
:root {
  --brand: #ffffff;
  --brand-rgb: 255, 255, 255;
}

/* Main site navbar (landing.css): undo generic `nav` rules from contact-sales.ds.css */
nav.navbar {
  display: block;
  height: auto;
  padding: 0;
  background: transparent;
  border-bottom: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.contact-main {
  padding: 128px 48px 96px;
}

@media (max-width: 920px) {
  .contact-main {
    padding: 112px 24px 72px;
  }
}

/* Aside phone/email row: never use default link blue */
a.direct-link,
a.direct-link:visited {
  color: var(--text);
}
a.direct-link:hover {
  color: var(--text);
}
a.direct-link .direct-value {
  color: var(--text);
}

/* Primary actions: solid white fills need dark labels */
.form-submit {
  background: var(--brand);
  color: var(--canvas-deep);
}

.form-submit:hover {
  filter: brightness(0.92);
}

/* Success ornament: glyph must stay visible on faint white halo */
.success-check {
  color: var(--canvas-deep);
  background: rgba(255, 255, 255, 0.1);
}

.form-banner.form-banner--error {
  font-size: 13px;
  line-height: 1.45;
  padding: 10px 12px;
  border-radius: 10px;
  margin-bottom: 18px;
  background: rgba(198, 40, 40, 0.12);
  color: #ff9e9e;
  border: 1px solid rgba(198, 40, 40, 0.35);
}
.form-banner[hidden] {
  display: none !important;
}

.form-message {
  font-size: 12px;
  line-height: 1.35;
  color: #ff9e9e;
  margin-top: -2px;
}
.form-message[hidden] {
  display: none !important;
}

.form-field.has-field-error .form-input,
.form-field.has-field-error .form-select,
.form-field.has-field-error .form-textarea {
  border-color: #c62828;
}

/* Phone stack: reuse form-input / form-select look from DS */
.form-phone {
  display: flex;
  align-items: stretch;
  gap: 0;
  width: 100%;
}
.form-phone .form-cc-select {
  width: auto;
  min-width: 92px;
  max-width: 118px;
  flex-shrink: 0;
  border-radius: 10px 0 0 10px;
  border-right: none;
  padding-right: 28px;
  padding-left: 10px;
  font-size: 13px;
}
.form-phone .form-input.phone-local {
  flex: 1;
  min-width: 0;
  border-radius: 0 10px 10px 0;
}

.contact-recap-email strong {
  font-weight: 500;
  color: var(--text);
}

.form-actions-row {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: stretch;
  margin-top: 8px;
}
.form-actions-row .form-submit {
  flex: 1;
  width: auto;
  min-width: 140px;
}
button.success-back {
  background: transparent;
  font: inherit;
  cursor: pointer;
}

/* Success: collapse entire lead form; standalone rules hide fragments — our wrapper simplifies */
.form-card.submitted .form-steps-wrap {
  display: none !important;
}
.form-card.submitted #formSuccess {
  display: block !important;
}
#formSuccess {
  display: none;
}

.form-success-narrow {
  max-width: 360px;
  margin-left: auto;
  margin-right: auto;
}

.form-submit.form-submit--wide {
  max-width: 360px;
  margin-left: auto;
  margin-right: auto;
}
