@media screen and (max-width: 640px) {
  #warpper section[role="main"] {
    padding: 0;
  }
  .mobile-cta {
    padding: 0;
  }
  .mobile-cta a {
    text-decoration: none;
  }
  .mobile-hero-wrap {
    position: relative;
    width: 100%;
  }

  .mobile-hero-wrap + .mob-pillows {
    margin-top: 10px;
  }
  
  .mobile-hero-text {
    position: absolute;
    background: #51555a;
    padding: 1%;
    width: 55%;
    left: 10px;
    bottom: 10px;
  }
  .mobile-hero-text h1 {
    font-size: 1.8em;
    padding: 10px 20px 15px 20px;
    color: #ffffff;
    background: none;
    border-top: none;
    margin: 0;
  }
  .mobile-hero-text h1 span {
    display: inline-block;
  }
  .mobile-hero-text p {
    padding-left: 10px;
    margin: 1em 0;
  }
  .mobile-hero-wrap img {
    width: 100%;
  }
  .mobile-hp-product-wrap {
    position: relative;
    width: 100%;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding-bottom: 10px;
    padding-left: 10px;
  }
  .mobile-hp-product {
    width: 50%;
    padding-right: 10px;
  }
  .mobile-hp-product.stacked {
    -webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
  }
  .mobile-hp-product-img,
  .mobile-hp-full-img {
    position: relative;
  }
  .mobile-hp-product img {
    width: 100%;
  }
  .mobile-hp-text {
    position: relative;
    width: 100%;
    margin-bottom: 10px;
    padding-left: 20px;
    background: #ebeced;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .mobile-hp-text h2 {
    position: relative;
    font-size: 2em;
    margin: 0px 20px 10px 0px;
    -webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;
  }
  .mobile-hp-text h2:after,
  .mobile-hp-full-text h2:after {
    content: "";
    position: absolute;
    top: 48px;
    left: 0;
    background: #51555a;
    height: 1px;
    width: 100%;
  }
  .mobile-hp-text p {
    margin: 10px 0px 0px 0px;
    font-size: .8em;
    -webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;
  }
  .mobile-hp-product span,
  .mobile-hp-full-img span {
    position: absolute;
    bottom: 0;
    width: 100%;
    display: block;
    background: #bad9c9;
    padding: 10px 10px 10px 20px;
    text-transform: uppercase;
  }
  .mobile-hp-product-full {
    position: relative;
    width: 100%;
    padding: 0px 10px 10px 10px;
  }
  .mobile-hp-full-img img {
    width: 100%;
  }
  .mobile-hp-full-text {
    display: block;
    padding: 10px 20px 20px 20px;
    background: #ebeced;
  }
  .mobile-hp-full-text h2 {
    position: relative;
    font-size: 2em;
    margin: 0;
    padding: 0px 0px 10px 0px;
  }
  .mobile-hp-full-text p {
    font-size: .8em;
    margin: 0;
    padding: 10px 0px 0px 0px;
  }
}
@media screen and (max-width: 600px) {
  .mobile-hero-text {
    position: relative;
    background: #51555a;
    width: 100%;
    left: 0;
    bottom: 0;
  }
  .mobile-hp-text p {
    margin: 5px 10px 0px 0px;
    font-size: 12px;
  }
  .mobile-hp-full-text h2 {
    font-size: 1.3em;
    padding: 0px 0px 5px 0px;
  }
  .mobile-hp-full-text h2:after {
    top: 34px;
  }
  .mobile-hp-text h2:after {
    top: 31px;
  }
  .mobile-hp-text h2 {
    font-size: 1.3em;
    margin: 0px 20px 5px 0px;
  }
}
@media screen and (max-width: 480px) {
  .mobile-hero-text h1 {
    font-size: 1.5em;
    padding: 10px;
  }
  .mobile-hp-full-text p {
    padding: 5px 10px 0px 0px;
  }
  .mobile-hp-product span,
  .mobile-hp-full-img span {
    padding: 10px 10px 10px 15px;
    font-size: .8em;
  }
}
@media screen and (max-width: 400px) {
  .mobile-hp-full-text h2 {
    font-size: 1em;
  }
  .mobile-hp-text h2 {
    margin: 0px 20px 0px 0px;
}
  .mobile-hp-text p {
    margin: 0px 10px 0px 0px;
    font-size: 10px;
  }
  .mobile-hp-full-text p {
    font-size: 10px;
  }
  .mobile-hp-full-text h2:after {
    top: 24px;
  }
  .mobile-hp-text h2:after {
    display: none;
  }
  .mobile-hp-text h2 {
    font-size: 1em;
  }
  .mobile-hp-product span,
  .mobile-hp-full-img span {
    font-size: .6em;
  }
}