.box {
  position: relative;
  overflow: hidden;
}

.box .overbox-crossmedia {
    background-color: #748c99;
}
.box .overbox-transacmailing {
    background-color: #76b72a;
}
.box .overbox-digital {
    background-color: #a61680;
}
.box .overbox-webapp {
    background-color: #4dbcc6;
}

.box .overbox {
  position: absolute;
  top: 0;
  left: 0;
  color: #fff;
  z-index: 100;
  -webkit-transition: all 300ms ease-out;
  -moz-transition: all 300ms ease-out;
  -o-transition: all 300ms ease-out;
  -ms-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
  opacity: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  padding:100px 20px 0 20px;
}

.box:hover .overbox { opacity: 1; }

.box .overtext {
  -webkit-transition: all 300ms ease-out;
  -moz-transition: all 300ms ease-out;
  -o-transition: all 300ms ease-out;
  -ms-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
  transform: translateY(40px);
  -webkit-transform: translateY(40px);
}

.box .title {
  font-size: 2.5em;
  text-transform: uppercase;
  opacity: 0;
  transition-delay: 0.1s;
  transition-duration: 0.2s;
}

.box:hover .title,
.box:focus .title {
  opacity: 1;
  transform: translateY(0px);
  -webkit-transform: translateY(0px);
}

.box .tagline {
  font-size: 1.2em;
  opacity: 0;
  transition-delay: 0.2s;
  transition-duration: 0.2s;
}

.box:hover .tagline,
.box:focus .tagline {
  opacity: 1;
  transform: translateX(0px);
  -webkit-transform: translateX(0px);
}

/* iPad and tablets Portrait */
@media only screen and (max-width:800px) and (orientation:portrait) {
    .box .overbox {
        padding-top:70px;
    }
}

/* Smartphones Portrait */
@media only screen and (max-width: 360px) and (max-height: 640px) {
    .box .overbox {
        padding-top:30px;
    }
}