* {
    box-sizing: border-box;
  }
  .p {
    color: rgb(75, 74, 74);
  }
  input[type=text], input[type=password],select, textarea {
    width: 85%;
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 4px;
    resize: vertical;
  }
  
  label {
    padding: 12px 12px 12px 0;
    display: inline-block;
  }
  
 input[type=submit],input[type=button] {
    background-color: #04AA6D;
    color: white;
    padding: 12px 40px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    float: right;
    
  }

  input[type=button]{
    float: left;
    
  }
  
  input[type=submit]:hover,input[type=button]:hover {
    background-color: yellowgreen;
  }
  
  .container {
    border-radius: 5px;
    background-color: rgba(255, 255, 255, 0.5);
    padding: 20px;
    width: 60%;
    margin: auto;
    
  }
  
  .col-25 {
    float: left;
    width: 25%;
    margin-top: 6px;
    text-align: right;
    
  }
  
  .col-75 {
    float: left;
    width: 75%;
    margin-top: 6px;
  }
  
  .col-100 {
    float: left;
    width: 100%;
    margin-top: 6px;
  }
  /* Clear floats after the columns */
  .row::after {
    content: "";
    display: table;
    clear: both;
  }

  /* The message box is shown when the user clicks on the password field */
#message,#poMessage,#paypalMessage,#cardMessage {
  display:none;
  
  color: #000;
  position: relative;
  padding: 3px;
  margin-top: 1px; 
  
}

#message p {
  /*padding: 10px 35px; */
  
  text-align: left;

}

  /* The message box is shown when the user clicks on the password field */
#poMessage,#paypalMessage,#cardMessage {
    display:none;
    width:100%;
    color: #000;
    position: relative;
    padding: 3px;
    margin-top: 1px; 
    
  }

/* Add a green text color and a checkmark when the requirements are right */
.valid {
  color: green;
}

.valid:before {
    color: green;
  content: "✔";
}

/* Add a red text color and an "x" when the requirements are wrong */
.invalid {
  color: red;
  display:inline;
  
}

.invalid:before {  
    color: red;
  content: "✖";
}

.invalid, .invalid:before, .valid ,.valid:before, #message p {
    font-size:medium;
    display:inline;
}

  /* Responsive layout - when the screen is less than 600px wide, make the two columns stack on top of each other instead of next to each other 
   .col-25, .col-75, input[type=submit],.container*/
  @media screen and (max-width: 600px) {
    .container {
      width: 100%;
      margin-top: 0;
      text-align:center;
    }
    .title {
      font-size:10vw;
    }
    .subtitle {
      font-size:6vw;
    }
    .invalid, .invalid:before, .valid ,.valid:before, #message p {font-size:x-small;}

    input[type=submit],input[type=button] {
        appearance: none;
        -webkit-appearance: none
      }
    
  }