/* form.css */


.char-counter { font-size: 0.875rem; }
    .stepper { position: relative; margin-bottom: 2rem; }
    .stepper .step { text-align: center; flex: 1; position: relative; }
    .stepper .circle {
      width: 50px; height: 50px; border-radius: 50%;
      background: #dee2e6; display: flex; justify-content: center; align-items: center;
      font-size: 20px; color: #495057; margin: 0 auto; transition: all 0.3s ease;
    }
    .stepper .step.active .circle {
      background: #0d6efd; color: #fff; box-shadow: 0 0 10px rgba(13,110,253,0.5);
    }
    .stepper .label { font-size: 14px; font-weight: 600; color: #495057; margin-top: 0.5rem; }
    .stepper .step.active .label { color: #0d6efd; }
    .stepper::before {
      content: ""; position: absolute; top: 25px; left: 0; right: 0; height: 4px;
      background: #dee2e6; z-index: 0;
    }
    .stepper .step .circle { position: relative; z-index: 1; }
	
	
	/* Select Housing Type: Fix Bootstrap's default form-switch padding */
	.form-switch.label-first {
	  padding-left: 0 !important;   /* remove reserved space */
	  display: flex;
	  align-items: center;
	  gap: 1.0rem;                 /* gap between label and slider */
	  font-size: 1.2rem;           /* ✅ increase label font size */
	}

	/* Bigger slider */
	.switch-lg {
	  width: 2.5em !important;   /* wider track */
	  height: 1.0em !important;    /* taller track */
	  cursor: pointer;
	  transform: scale(1.2);     /* clean scale up */
	  margin: 0 !important;      /* remove extra spacing */
	}
	
	.transition-all {
      transition: all 0.3s ease;
    }
    #pageHeader.shrink {
      padding-top: 0.4rem !important;
      padding-bottom: 0.4rem !important;
    }
    #pageHeader.shrink h1 {
      font-size: 1.3rem;
    }
    #pageHeader.shrink p {
      font-size: 0.85rem;
    }
	.form-check-label.text-danger {
	  font-weight: 600;
	}
	.form-check-label.text-success {
	  font-weight: 600;
	}
	
	.is-invalid {
	  border: 2px solid #dc3545 !important;
	  background-color: #f8d7da !important;
	}
	
	/* Light placeholder text */
	::placeholder {
	  color: #ccc !important;
	  opacity: 1;
	}
	:-ms-input-placeholder { /* IE 10+ */
	  color: #ccc !important;
	}
	::-ms-input-placeholder { /* Edge */
	  color: #ccc !important;
	}
	::-webkit-input-placeholder { /* Chrome/Safari/Opera */
	  color: #ccc !important;
	}

	/* Hide placeholder on focus */
	:focus::placeholder {
	  color: transparent !important;
	}
	:focus:-ms-input-placeholder {
	  color: transparent !important;
	}
	:focus::-ms-input-placeholder {
	  color: transparent !important;
	}
	:focus::-webkit-input-placeholder {
	  color: transparent !important;
	}