/* =====================================================
   PCS Sales Lead Form CSS (Match Dealer Locator Theme)
   Scoped under .pcs-contact-information (no conflicts)
   ===================================================== */

/* Optional (only if Open Sans is NOT already loaded on site) */
/* @import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&display=swap'); */

.pcs-contact-information {
  --dl-blue: #007cba;
  --dl-blue-hover: #2196F3;

  --ink: #0b1f3a;
  --muted: #6c7a90;
  --line: #e6ecf5;
  --card: #ffffff;

  --danger: #dc3545;
  --success: #198754;

  font-family: "Open Sans", Arial, sans-serif;
  color: var(--ink);
}

/* Container width (same clean centered feel) */
.pcs-contact-information .container {
  max-width: 1040px;
}

/* Wrapper/card (keep your card but keep it clean like DL) */
.pcs-contact-information .form-wrapper {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(11, 31, 58, 0.08);
  padding: 32px 36px 28px;
}

/* Main title = Dealer Locator header */
.pcs-contact-information .form-header {
  font-size: 24px;
  text-align: center;
  font-family: "Open Sans", Arial, sans-serif;
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin: 0 0 18px;
}

/* If you have a subheader line (like DL subheader) */
.pcs-contact-information .form-subheader {
  text-align: center;
  color: var(--dl-blue);
  margin-top: -10px;
  margin-bottom: 18px;
}

/* Section block + divider */
.pcs-contact-information .form-section {
  padding-top: 22px;
  margin-top: 22px;
  border-top: 1px solid var(--line);
}

.pcs-contact-information .form-section:first-of-type {
  border-top: none;
  padding-top: 0;
  margin-top: 0;
}

.pcs-contact-information .contact-information-title
{
    font-size: 24px;
    text-align: center;
    font-family: 'Open Sans';
    font-weight: 700;
    font-style: normal;
}
/* Section titles = Dealer Locator “Search / Filter” look */
.pcs-contact-information .section-title {
  color: var(--dl-blue);
  font-weight: 600;
  margin-bottom: 12px;
  font-size: 18px;
  letter-spacing: 0;
  text-transform: none;
}

/* Labels (clean + muted like DL) */
.pcs-contact-information .form-label,
.pcs-contact-information label {
  font-size: 12px;
  color: var(--muted);
  margin-bottom: 6px;
}

/* Inputs */
.pcs-contact-information .form-control,
.pcs-contact-information input.form-control,
.pcs-contact-information select.form-control,
.pcs-contact-information textarea.form-control {
  border-radius: 6px;                 /* closer to DL */
  border: 1px solid var(--line);
  padding: 10px 14px;
  font-size: 14px;                    /* DL-ish text size */
  color: var(--ink);
  background: #fff;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  box-shadow: none;
}

/* Height consistent with your layout */
.pcs-contact-information input.form-control,
.pcs-contact-information select.form-control {
  height: 44px;
}

/* Placeholder */
.pcs-contact-information .form-control::placeholder {
  color: rgba(108, 122, 144, 0.75);
}

/* Textarea */
.pcs-contact-information textarea.form-control {
  height: auto;
  min-height: 140px;
  resize: vertical;
}

/* Focus = Dealer Locator blue */
.pcs-contact-information .form-control:focus {
  border-color: rgba(0, 124, 186, 0.65);
  box-shadow: 0 0 0 3px rgba(0, 124, 186, 0.14);
}

/* ---------------------------------
   Clean Error UI (single message)
   --------------------------------- */

/* Remove Bootstrap invalid icon */
.pcs-contact-information .form-control.is-invalid {
  background-image: none !important;
  padding-right: 14px !important;
  border: 1px solid var(--danger) !important;
  box-shadow: 0 0 0 2px rgba(220, 53, 69, 0.08);
}

.pcs-contact-information .error-message {
  font-size: 12px;
  margin-top: 6px;
  color: var(--danger);
  line-height: 1.3;
  display: none;
}

.pcs-contact-information .error-message.active {
  display: block;
}

/* Optional valid UI */
.pcs-contact-information .form-control.is-valid {
  border-color: var(--success);
  box-shadow: 0 0 0 2px rgba(25, 135, 84, 0.08);
}

/* Spacing (reduce stacked whitespace) */
.pcs-contact-information .mb-4 {
  margin-bottom: 14px !important;
}

/* Bootstrap gutters */
.pcs-contact-information .row {
  --bs-gutter-x: 18px;
}

/* Buttons = Dealer Locator button style */

.pcs-contact-information .btn-submit,
.pcs-contact-information .btn-primary {
  margin-top: 10px;
  background-color: var(--dl-blue) !important;
  border-color: var(--dl-blue) !important;
  border-radius: 4px;    /* DL is more square */
  height: 37px;          /* DL exact */
  padding: 0 22px;
  font-weight: 600;
  font-size: 14px;
  box-shadow: none;
}

.pcs-contact-information .btn-submit:hover,
.pcs-contact-information .btn-primary:hover {
  background-color: var(--dl-blue-hover) !important;
  border-color: var(--dl-blue-hover) !important;
}

/* Center submit like your screenshot */
.pcs-contact-information .submit-row {
  display: flex;
  justify-content: center;
  margin-top: 18px;
}

/* Success message */
.pcs-contact-information #successMessage,
.pcs-contact-information .success-message {
  border-radius: 6px;
  border: 1px solid rgba(25, 135, 84, 0.25);
  font-size: 14px;
  padding: 12px 14px;
}

/* Divider lines if any */
.pcs-contact-information hr {
  border-color: var(--line);
  opacity: 1;
}

/* Mobile */
@media (max-width: 767px) {
  .pcs-contact-information .form-wrapper {
    padding: 24px 18px 20px;
  }
  .pcs-contact-information .form-header {
    font-size: 22px;
  }
}

/* Force our Sales Lead title to win over WPBakery h1 rule */
.pcs-contact-information .form-header,
.pcs-contact-information .contact-information-title,
.pcs-contact-information h1.form-header,
.pcs-contact-information h1.contact-information-title {
  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: 24px !important;
  line-height: normal !important;
  font-weight: 700 !important;
  color: #0b1f3a !important;
  margin: 0 0 18px !important;
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
}

/* If WPBakery is styling ALL h1 inside the wrapper, neutralize only within our form */
.wpb_text_column.wpb_content_element .wpb_wrapper .pcs-contact-information h1 {
  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: 24px !important;
  line-height: normal !important;
  font-weight: 700 !important;
  color: #0b1f3a !important;
  margin: 0 0 18px !important;
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
}

/* =========================================
   TYPO + COLORS ONLY (match Dealer Locator)
   Scoped: .pcs-contact-information
   ========================================= */

.pcs-contact-information{
  /* same family everywhere */
  font-family: "Open Sans", Arial, sans-serif !important;
  color: #0b1f3a;

  /* bump overall base size (your current feels small) */
  font-size: clamp(14px, 1vw, 16px);
  line-height: 1.45;
}

/* Main form title (CONTACT INFORMATION) */
.pcs-contact-information .form-header,
.pcs-contact-information .contact-information-title{
  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: clamp(22px, 1.8vw, 28px) !important;
  font-weight: 700 !important;
  color: #0b1f3a !important;
  letter-spacing: 0.04em !important;
}

/* Section titles (Company Information, Personal Information...) */
.pcs-contact-information .section-title{
  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: clamp(16px, 1.2vw, 18px);
  font-weight: 600;
  color: #007cba; /* DL blue */
}

/* Labels (Company Name, First Name...) */
.pcs-contact-information label,
.pcs-contact-information .form-label{
  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: clamp(16px, 0.95vw, 16px);
  font-weight: 400;
  color: #6c7a90; /* muted like DL */
}

/* Inputs + textarea text */
.pcs-contact-information .form-control,
.pcs-contact-information input.form-control,
.pcs-contact-information select.form-control,
.pcs-contact-information textarea.form-control{
  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: clamp(14px, 1vw, 15px);
  font-weight: 400;
  color: #0b1f3a;
}

/* Placeholder */
.pcs-contact-information .form-control::placeholder{
  font-size: clamp(14px, 1vw, 15px);
  color: rgba(108, 122, 144, 0.75);
}

/* Button text (keep DL feel) */
.pcs-contact-information .btn-submit,
.pcs-contact-information .btn-primary{
  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: clamp(14px, 1vw, 15px);
  font-weight: 600;
  color: #fff;
  background-color: #007cba !important;
  border-color: #007cba !important;
}

.pcs-contact-information .btn-submit:hover,
.pcs-contact-information .btn-primary:hover{
  background-color: #2196F3 !important;
  border-color: #2196F3 !important;
}

/* Error message typography (same scale, just red) */
.pcs-contact-information .error-message{
  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: clamp(13px, 0.95vw, 14px);
  font-weight: 400;
  color: #dc3545;
}
 