/* ================================
   BLOG HERO
================================ */
.blog-hero {
  min-height: 70vh;
  background-image: url("../images/registration_img.webp");
  /* change image path */
  background-size: cover;
  background-position: center;
  position: relative;
}

/* Dark overlay */
.blog-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 1;
}

/* Content above overlay */
.blog-hero .container {
  position: relative;
  z-index: 2;
}

/* Main title */
.hero-title {
  font-family: "Urbanist", sans-serif;
  font-size: 50px;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: 0;
  text-transform: uppercase;
}

.hero-para {
  font-family: "Inter", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0px;
}

/* Breadcrumb */
.hero-breadcrumb {
  font-size: 16px;
  opacity: 0.9;
}

.breadcrumb-link {
  color: #ffffff;
  text-decoration: none;
}

.breadcrumb-current {
  color: #ffffff;
  text-decoration: none;
  cursor: pointer;
}

.hero-breadcrumb a {
  text-decoration: none;
}

/* ===============================
   BLOG DETAIL SECTION
================================ */

/* =========================
   CONTACT SECTION
========================= */
.contact-section {
  background: #f6f9fc;
  height: 100%;
}

/* =========================
   FORM CARD
========================= */
.form-card {
  max-width: 1000px;
  background: #ffffff;
  border-radius: 20px;
  padding: 40px 48px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);

  position: relative;
  overflow: visible;
  margin-top: -200px;
  z-index: 2;

  margin-bottom: 100px;

  font-family: "Inter", sans-serif;
}

/* =========================
   STEPS
========================= */
.stepper-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* STEP ITEM */
.stepper-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 180px;
}

/* STEP CIRCLE */
.step-counter {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 2px solid transparent;
  background: #f1f1f1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  color: #b5b5b5;
  cursor: pointer;
}

.stepper-item.active .step-counter {
  background: #ffffff;          /* white background */
  border: 2px solid #0d6efd;    /* blue border */
  color: #0d6efd;               /* blue number */
}

.step-name {
  margin-top: 10px;
  font-size: 15px;
  color: #b0b0b0;
}

/* ACTIVE STEP */
.stepper-item.active .step-counter {
  border-color: #0d6efd;
  color: #0d6efd;
}

.stepper-item.active .step-name {
  color: #0d6efd;
}

/* =========================
   CONNECTOR (THIS IS THE KEY)
========================= */
.stepper-connector {
  display: flex;
  align-items: center;
  flex: 1;
  margin: 0 -40px;

  transform: translateY(-12px)
}

/* END DOTS */
.stepper-connector .dot {
  width: 6px;
  height: 6px;
  background: #dcdcdc;
  border-radius: 50%;
}

/* DOTTED LINE */
.stepper-connector .line {
  flex: 1;
  height: 2px;
  margin: 0 6px;
  background-image: repeating-linear-gradient(
    to right,
    #dcdcdc 0,
    #dcdcdc 4px,
    transparent 4px,
    transparent 8px
  );
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .stepper-wrapper {
    flex-direction: column;
  }

  .stepper-connector {
    display: none;
  }
}

/* =========================
   AVATAR
========================= */
.avatar-wrapper {
  margin-top: 24px;
}

.avatar {
  width: 180px;
  height: 180px;
  border-radius: 50%;
  overflow: visible;
  margin: auto;
  position: relative;
}

.avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;          /* prevents stretching */
  border-radius: 50%;
  display: block;
}

.avatar::after {
  content: "";
  position: absolute;
  bottom: -28px;
  left: 50%;
  transform: translateX(-50%);
  width: 120px;
  height: 56px;
  /* background: #ffffff;         */
  border-radius: 0 0 80px 80px;
  pointer-events: none;
}

.edit-btn {
  position: absolute;
  bottom: 4px;
  right: 4px;

  width: 50px;
  height: 50px;
  border-radius: 50%;

  background: #0d6efd;       /* Bootstrap primary blue */
  border: none;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #ffffff;
  font-size: 18px;

  z-index: 10;
  cursor: pointer;
}

.edit-btn img {
  width: 26px;
  height: 26px;
}


/* =========================
   FORM ELEMENTS
========================= */
.form-label {
  font-size: 13px;
  font-weight: 500;
  color: #495057;
}

.form-control,
.form-select {
  height: 44px;
  border-radius: 10px;
  font-size: 14px;
}

.form-control::placeholder {
  color: #adb5bd;
}


/* MOBILE INPUT WRAPPER */
.mobile-input {
  display: flex;
  align-items: center;

  height: 48px;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}

/* COUNTRY CODE */
.country-code {
  padding: 0 16px;
  font-size: 14px;
  color: #9ca3af;
  border-right: 1px solid #e5e7eb;
  white-space: nowrap;
}

/* NUMBER INPUT */
.mobile-input input {
  border: none;
  outline: none;
  flex: 1;
  padding: 0 14px;
  font-size: 14px;
  color: #111827;
}

.mobile-input input::placeholder {
  color: #9ca3af;
}

/* FOCUS STATE */
.mobile-input:focus-within {
  border-color: #0d6efd;
}


/* =========================
   BUTTON
========================= */
.btn-primary {
  height: 44px;
  border-radius: 10px;
  font-weight: 500;
  padding-left: 28px;
  padding-right: 28px;
}

.btn-outline-primary {
  height: 44px;
  border-radius: 10px;
  font-weight: 500;
  padding-left: 28px;
  padding-right: 28px;
}

/* =========================
   RESPONSIVE
========================= */
@media (max-width: 768px) {
  .form-card {
    padding: 28px 24px;
  }

  .steps {
    flex-direction: column;
    gap: 16px;
  }
}




/* Step 2 */
.form-card {
  background: #fff;
  border-radius: 20px;
  padding: 40px;
  max-width: 1100px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.08);
}

/* STEPPER */
.stepper-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.stepper-item {
  text-align: center;
}

.step-counter {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 2px solid #ddd;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #aaa;
}

.step-name {
  margin-top: 8px;
  font-size: 14px;
  color: #aaa;
}

.stepper-item.active .step-counter {
  border-color: #0d6efd;
  color: #0d6efd;
}

.stepper-item.active .step-name {
  color: #0d6efd;
}

.connector {
  flex: 1;
  height: 2px;
  margin: 0 10px;
  background-image: repeating-linear-gradient(
    to right,
    #ddd 0,
    #ddd 4px,
    transparent 4px,
    transparent 8px
  );
}

/* FORM STEPS */
.form-step {
  display: none;
}

.form-step.active {
  display: block;
}



/* Hide Step 2 initially */
#step2-section {
  display: none;
}

#step3-section {
  display: none;
}

