html, body, div, span, h1, p, a, img, b {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

footer, header, section {
  display: block;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: none;
}

.logo {
    text-align: center;
    padding: 20px 0;
}
p {
    margin: 0 0 1.5em 0;
}

img, b {
    margin: -20px;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

/* Box Model */
*, *:before, *:after {
  box-sizing: border-box;
}

/* Basic */

html {
  height: 100%;
}

/* Type */
body, input, select, textarea {
  color: #414f57;
  font-family: "Source Sans Pro", Helvetica, sans-serif;
  font-size: 14pt;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

a {
  transition: color 0.2s ease, border-color 0.2s ease;
  color: inherit;
  text-decoration: none;
}

a:before {
  transition: color 0.2s ease, text-shadow 0.2s ease;
}

a:hover {
  color: #ff7496;
}

b {
  color: #313f47;
}

p {
  margin: 0 0 1.5em 0;
}

h1 a{
  color: inherit;
  text-decoration: none;
}

h1 {
  font-size: 1.85em;
  letter-spacing: 0.22em;
  margin: 0 0 0.525em 0;
  color: #313f47;
  line-height: 1.5;
}

/* Button */
input[type="submit"], input[type="reset"], input[type="button"], button, .button {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -moz-transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.2s ease-in-out;
    -webkit-transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.2s ease-in-out;
    -ms-transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.2s ease-in-out;
    transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.2s ease-in-out;
    display: inline-block;
    height: 2.75em;
    line-height: 2.75em;
    padding: 0 1.5em;
    background-color: #169b62;
    border-radius: 10px;
    border: solid 0px #169b62;
    color: #ffffff !important;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
}


input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover,button:hover, .button:hover {
  border-color: #ff7496;
  color: #ff7496 !important;
}

/* Main */
#main {
  position: relative;
  max-width: 100%;
  min-width: 27em;
  padding: 4.5em 3em 3em 3em ;
  background: #ffffff;
  border-radius: 4px;
  cursor: default;
  opacity: 0.95;
  text-align: center;
  transform-origin: 50% 50%;
  transform: rotateX(0deg);
  transition: opacity 1s ease, transform 1s ease;
}

#main .avatar {
  position: relative;
  display: block;
  margin-bottom: 1.5em;
}

#main .avatar img {
  display: block;
  margin: 0 auto;
  border-radius: 100%;
  box-shadow: 0 0 0 1em #ffffff;
}

#main .avatar:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: -3em;
  width: calc(100% + 6em);
  height: 1px;
  z-index: -1;
  background: #c8cccf;
}

/* Footer */
#footer {
  -moz-align-self: -moz-flex-end;
  -webkit-align-self: -webkit-flex-end;
  -ms-align-self: -ms-flex-end;
  align-self: flex-end;
  width: 100%;
  padding: 1.5em 0 0 0;
  color: rgba(255, 255, 255, 0.75);
  cursor: default;
  text-align: center;
  margin: 0;

}

/*MEDIA QUERIES*/

@media screen and (max-width: 1680px) {
    body, input, select, textarea {
      font-size: 11pt;
    }
  }

@media screen and (max-width: 480px) {

    html, body {
        min-width: 320px;
      }

    body, input, select, textarea {
        font-size: 10pt;
        line-height: 1.75;
      }

    h1 {
        font-size: 1.65em;
      }

    #main {
      min-width: 0;
      width: 100%;
      padding: 4em 2em 2.5em 2em ;
    }
    #main .avatar:before {
      left: -2em;
      width: calc(100% + 4em);
    }

    .button{
        padding: 0 12px;
    }

    .logo img
    {
        width: 76%;
        padding: 9px 0;
    }

  }