@font-face {
  font-family: 'icons';
  src: url("../fonts/Icomoon/icomoon.woff") format('woff'), url("../fonts/Icomoon/icomoon.ttf") format('truetype'), url("../fonts/Icomoon/icomoon.otf") format('opentype'), url("../fonts/Icomoon/icomoon.eot") format('embedded-opentype');
}

.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  zoom: 1;
}

#title{
  font-family: 'Roboto';
  font-size: 100px;
  color: #e0e0e0;
  position: absolute;
  left: 10%;
  top:50%;
  transform: rotate(-30deg);
  transform-origin: bottom left;
}

.card-bounding{
/*
  width: 90%;
  max-width: 500px;
  margin: 0 auto;
  position: relative;
  top:50%;
  transform: translateY(-50%);
  padding: 30px;
  border: 1px solid #3e73ea;
  border-radius: 6px;
  font-family: 'Roboto';
  background: #ffffff;
*/
}

.card-bounding aside{
  font-size:24px;
  padding-bottom: 8px;
}
.card-container {
     padding-left: 50px;
    position: relative;
 
}
.card-container input {
  width: 100%;
  letter-spacing: 1px;
  border: 0;
  outline: none;
  box-sizing: border-box;
}
.card-type {
  width: 40px;
  height: 28px;
  background: url("../images/cards.png");
  background-position: 0 -149px;
  background-repeat: no-repeat;
  position: absolute;
  top: 10px;
  left: 4px;
}
.card-type.mastercard {
  background-position: 0 0;
}
.card-type.visa {
  background-position: 0 -58px;
    
}
.card-type.amex {
  background-position: 0 -30px;
}
.card-type.discover {
  background-position: 0 -175px;
}
.card-valid {
  position: absolute;
  top: 5px;
  right: 15px;
  line-height: 30px;
 
  font-family: 'icons';
  color: #ccc;
}
.card-valid.active {
  color: #42ca7c;
}
.card-details {
  width: 100%;
  text-align: left;
  margin-bottom: 30px;
  transition: 300ms ease;
}
.card-details input {
  font-size: 30px;
  padding: 15px;
  box-sizing: border-box;
  width: 100%;
}
.card-details input.error {
  border: 1px solid #c2313c;
  box-shadow: 0 4px 8px 0 rgba(238,76,87,0.3);
  outline: none;
}

.page-heading {
  text-transform: uppercase;
  padding: 3px 0 0 10px;
  border-left: 3px solid #a3a3a3;
  height: 30px;
  font-size: 0.9rem;
}

.w-20 {
  width: 20%;
}

.w-80 {
  width: 80%;
}