*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family:Arial,sans-serif;
}

body{
  min-height:100vh;
  background:linear-gradient(135deg,#082f6f,#1688df);
  display:flex;
  justify-content:center;
  align-items:center;
  padding:35px 15px;
}

.form-container{
  background:#fff;
  width:100%;
  max-width:1050px;
  padding:45px;
  border-radius:18px;
  box-shadow:0 18px 45px rgba(0,0,0,.25);
}

.ns-header{
  text-align:center;
  margin-bottom:30px;
  padding-bottom:20px;
  border-bottom:2px solid #e8e8e8;
}

.ns-header h1{
  font-size:42px;
  color:#0a3d91;
  font-weight:800;
}

.ns-header h1 span{
  color:#ff7c00;
}

.ns-header h2{
  font-size:24px;
  margin-top:8px;
  color:#000;
}

.grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
}

label{
  display:block;
  font-weight:700;
  color:#111;
  margin-bottom:8px;
  font-size:16px;
}

input,
select{
  width:100%;
  padding:15px 16px;
  border:1.5px solid #d4d4d4;
  border-radius:10px;
  font-size:15px;
  background:#fff;
  outline:none;
}

input:focus,
select:focus{
  border-color:#0a3d91;
  box-shadow:0 0 0 3px rgba(10,61,145,.15);
}

button{
  width:100%;
  margin-top:30px;
  padding:17px;
  border:none;
  border-radius:10px;
  background:linear-gradient(135deg,#ff7a00,#ff9800);
  color:#fff;
  font-size:20px;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 10px 25px rgba(255,124,0,.35);
}

@media(max-width:768px){
  body{
    padding:20px 8px;
  }

  .form-container{
    max-width:96%;
    padding:22px 16px;
  }

  .grid{
    grid-template-columns:repeat(2,1fr);
    gap:12px;
  }

  .ns-header h1{
    font-size:30px;
  }

  .ns-header h2{
    font-size:20px;
  }

  label{
    font-size:12px;
  }

  input,
  select{
    padding:11px 10px;
    font-size:12px;
  }

  button{
    font-size:15px;
    padding:14px;
  }
}