 body {
      font-family: Arial, sans-serif;
      /* background: linear-gradient(135deg, #2c3e50, #27ae60); */
      background: #F8F8FF;
  background: url(images/banner-03.jpg);
  background-position: center center;
      margin: 0;
      padding: 0;
      color: #333;
    }

    .reg-container {
      max-width: 650px;
      margin: 40px auto;
      background: #fff;
      padding: 25px 30px;
      border-radius: 12px;
      box-shadow: 0 4px 12px rgba(0,0,0,0.2);
    }

    h2 {
      text-align: center;
      color: #27ae60;
      margin-bottom: 20px;
    }

    /* Progress bar */
    .progressbar {
      display: flex;
      justify-content: space-between;
      counter-reset: step;
      margin-bottom: 30px;
    }

    .progressbar li {
      list-style: none;
      width: 100%;
      text-align: center;
      position: relative;
      color: #bbb;
      font-size: 0.9rem;
    }

    .progressbar li:before {
      counter-increment: step;
      content: counter(step);
      width: 30px;
      height: 30px;
      line-height: 30px;
      border: 2px solid #bbb;
      display: block;
      text-align: center;
      margin: 0 auto 10px;
      border-radius: 50%;
      background: white;
      font-weight: bold;
    }

    .progressbar li:after {
      content: '';
      position: absolute;
      width: 100%;
      height: 2px;
      background: #bbb;
      top: 15px;
      left: -50%;
      z-index: -1;
    }

    .progressbar li:first-child:after {
      content: none;
    }

    .progressbar li.active {
      color: #27ae60;
    }

    .progressbar li.active:before {
      border-color: #27ae60;
    }

    .progressbar li.active + li:after {
      background: #27ae60;
    }

    /* Steps */
    .form-step {
      display: none;
      animation: fade 0.5s ease-in-out;
    }

    .form-step.active {
      display: block;
    }

    @keyframes fade {
      from { opacity: 0; transform: translateY(10px); }
      to { opacity: 1; transform: translateY(0); }
    }

    label {
      font-weight: bold;
      display: block;
      margin: 10px 0 5px;
    }

    input, select {
      width: 100%;
      padding: 10px;
      border: 1px solid #ccc;
      border-radius: 6px;
      margin-bottom: 15px;
    }

    /* Buttons */
    .btns {
      display: flex;
      justify-content: space-between;
      margin-top: 20px;
    }

    .btns button {
      padding: 10px 20px;
      border: none;
      border-radius: 6px;
      background: #27ae60;
      color: white;
      cursor: pointer;
      font-size: 1rem;
    }

    .btns button[disabled] {
      background: #ccc;
      cursor: not-allowed;
    }

    @media(max-width: 600px) {
      .btns {
        flex-direction: column;
      }
      .btns button {
        width: 100%;
        margin-bottom: 10px;
      }
    }