*, :after, :before {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
} 
    
html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
}
    
    /* Styling Body */
body {
    -webkit-font-smoothing: antialiased;
    direction: ltr;
    font-size: .875rem;
    font-family: Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif;
    color: #282828;
    /*display: flex;
    flex-wrap: wrap;*/
    margin: 0; /* may not be needed */
}

/* Header/logo Title */
.header {
    padding: 60px;
    text-align: center;
    background: #333; /*#1abc9c*/
    color: white;
    justify-content: center;
    align-items: center;
    align-content: center;
}

/* Style the top navigation bar */
.navbar {
    display: flex;
    background-color: #1abc9c;
    justify-content: center;
    align-items: center;
    align-content: center;
}

/* Style the navigation bar links */
.navbar a {
    color: white;
    padding: 14px 20px;
    text-decoration: none;
    text-align: center;
    width: 100%;
}

/* Change color on hover */
.navbar a:hover {
  background-color: #ddd;
  color: black;
}
    
.center-flex-box {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Column container */
.row {  
  display: flex;
  flex-wrap: wrap;
}

/* Create two unequal columns that sits next to each other */
/* Sidebar/left column */
.side {
  flex: 30%;
  background-color: #f1f1f1;
  padding: 20px;
}

/* Main column */
.main {
  flex: 70%;
  background-color: white;
  padding: 20px;
}

/* Fake image, just for this example */
.fakeimg {
  background-color: #aaa;
  width: 100%;
  padding: 20px;
}

/* Footer */
.footer {
  padding: 20px;
  text-align: center;
  background: #ddd;
}

/* Responsive layout - when the screen is less than 700px wide, make the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 700px) {
  .row, .navbar {   
    flex-direction: column;
  }
}
    

/*----------------------------------FORM STYLING-------------------------------- */
/* Server-side error display styling */
.servererror {
    display: block;
    margin-bottom: 10px;
    color: red;
}

/* Browser-side error display styling */
 .help-block {
    display: block;
    margin-bottom: 10px;
    color: deeppink;
}   
    
.formElementDiv {
    margin-bottom: 15px;
}

.formElement {
    display: inline;
    width: 100%;
    height: 34px;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
       -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
          transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.formElement:focus {
    border-color: #66afe9;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6);
}
.formElement::-moz-placeholder {
    color: #999;
    opacity: 1;
}
.formElement:-ms-input-placeholder {
    color: #999;
}
.formElement::-webkit-input-placeholder {
    color: #999;
}
.formElement::-ms-expand {
    background-color: transparent;
    border: 0;
}
.formElement[disabled],
.formElement[readonly],
    fieldset[disabled] .formElement {
    background-color: #eee;
    opacity: 1;
}
.formElement[disabled],
    fieldset[disabled] .formElement {
    cursor: not-allowed;
}
textarea.formElement {
    height: auto;
}
input[type="search"] {
    -webkit-appearance: none;
}     

.btn {
    display: inline-block;
    padding: 6px 12px;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.42857143;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    vertical-align: middle;
    -ms-touch-action: manipulation;
      touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 5px;
}

.btnSubmit {
    color: #fff;
    background-color: #9900cd;
    border-color: #9900cd;
}
.btnSubmit:focus,
.btnSubmit.focus {
    color: black;
    background-color: #ddd;
    border-color: #ddd;
}
.btnSubmit:hover {
    color: black;
    background-color: #ddd;
    border-color: #ddd;
}
.btnSubmit:active,
.btn-submit.active {
    color: black;
    background-color: #ddd;
    border-color: #ddd;
}
    
    
/*----form styling -------------*/
/* Positioning form on page */
.requestFormContainer {
    display: flex;
    flex-direction: column;
    width: 100%;
    background: #f1f1f1; /*#d9e6ed*/
    border: 1px solid #ccc;
    margin: 20px auto 0;
    border-radius: 4px;
    margin-bottom: 30px;
}

/* Padding for form container */
.formContainerPad {
    padding: 40px 40px 40px; /*TLB*/
}

/* On smaller screens, reduce the padding */
@media only screen and (max-width: 448px) {
    .formContainerPad {
        padding: 5px 5px 5px; /*TLB*/
    }
}

/*------End of form styling----------*/

/* Used by php script to show registration form when invalidly submitted */
.popup {
    display: block !important;
}
/* Used to by jquery to toggle between showing registration form or not when register is clicked */
#contact-popup {
    position: absolute;
    top: 0px;
    left: 0px;
    min-height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: none;
    color: #676767;
}
@media (max-width: 768px) {
    #contact-popup {
        min-height: 100%;
    }
}
.wrapper{
    margin: 0 auto;
}
    
.page-header {
    padding-bottom: 9px;
    margin: 40px 0 20px;
    border-bottom: 1px solid #eee;
}
    
.text-align-center {
    text-align: center;
}
/* Center registration form at the centre of page */
.centre-form-content {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    padding: 20px;
    background-color: aliceblue;
    width: 400px;
    border-radius: 5px;
    z-index: 102;
}

/* At a very small screen size, decrease the width of the feedback */
@media only screen and (max-width: 448px) {
    .centre-form-content {
        width: 300px;
    }
}

/* Display successful registration msg and order ID */
.success {
    text-align: center;
    box-shadow: 1px 1px 5px #455644;
    background: #bae8ba;
    padding: 15px;
    border-radius: 5px;
    margin: 0 auto;
    width: 100%;
}