
/* 

sample html in prodact card a tag

<div class="wrap">
    <span class="ribbon6">Discount 10%</span>
</div>
<span class="ribbon5"">
    <span>Hot 10%</span>
</span>
<span class="ribbon4"">
    <span>Hot 10%</span>
</span>
<span class="ribbon3"">
    <span>Hot 10%</span>
</span>
<span class="ribbon2"">
  <span>Hot 10%</span>
</span> 
<span class="ribbon1"">
  <span>Hot 10%</span>
</span> 
*/

.ribbon1 {
  position: absolute;
  top: -6.1px;
  right: 10%;
  /*! color: white; */
}
.ribbon1:after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-left: 45px solid transparent;
  border-right: 45px solid transparent;
  border-top: 10px solid #F8463F;
}
.ribbon1 span {
  position: relative;
  display: block;
  text-align: center;
  background: #F8463F;
  font-size: 14px;
  line-height: 1;
  padding: 12px 8px 10px;
  border-top-right-radius: 8px;
  width: 90px;
  color: white;
}
.ribbon1 span:before, .ribbon1 span:after {
  position: absolute;
  content: "";
}
.ribbon1 span:before {
 height: 6px;
 width: 6px;
 left: -6px;
 top: 0;
 background: #F8463F;
}
.ribbon1 span:after {
 height: 6px;
 width: 8px;
 left: -8px;
 top: 0;
 border-radius: 8px 8px 0 0;
 background: #C02031;
}
.ribbon2 {
 width: 60px;
 padding: 10px 0;
 position: absolute;
 top: -6px;
 left: 25px;
 text-align: center;
 border-top-left-radius: 3px;
 background: #F47530;
 color: white;
}
.ribbon2:before {
 height: 0;
 width: 0;
 right: -5.5px;
 top: 0.1px;
 border-bottom: 6px solid #8D5A20;
 border-right: 6px solid transparent;
}
.ribbon2:before, .ribbon2:after {
  content: "";
  position: absolute;
}
.ribbon2:after {
  height: 0;
  width: 0;
  bottom: -29.5px;
  left: 0;
  border-left: 30px solid #F47530;
  border-right: 30px solid #F47530;
  border-bottom: 30px solid transparent;
}
.ribbon3 {
  width: auto;
  height: auto;
  line-height: 38px;
  padding-left: 15px;
  position: absolute;
  left: 6px;
  top: 11em;
  background: #328426;
  color: white;
  font-size: 16px;
}
.ribbon3:before, .ribbon3:after {
  content: "";
  position: absolute;
}
.ribbon3:before {
  height: 0;
  width: 0;
  top: -8.5px;
  left: 0.1px;
  border-bottom: 9px solid black;
  border-left: 9px solid transparent;
}
.ribbon3:after {
  height: 0;
  width: 0;
  right: -14.5px;
  border-top: 19px solid transparent;
  border-bottom: 19px solid transparent;
  border-left: 15px solid #328426;
}
.ribbon4 {
  position: absolute;
  top: 14em;
  padding: 8px 10px;
  background: #00B3ED;
  color: white;
  box-shadow: -1px 2px 3px rgba(0,0,0,.3);
  left: 15px;
}
.ribbon4:before, .ribbon4:after {
  content: "";
  position: absolute;
}
.ribbon4:before {
  width: 7px;
  height: 114%;
  top: 0;
  left: -6.5px;
  padding: 0 0 7px;
  background: inherit;
  border-radius: 5px 0 0 5px;
}
.ribbon4:after {
  width: 5px;
  height: 5px;
  bottom: -5px;
  left: -4px;
  background: lightblue;
  border-radius: 6px 0 0 5px;
 }
.ribbon5 {
  display: block;
  width: 97%;
  height: 33px;
  line-height: 33px;
  text-align: center;
  margin-left: -10px;
  margin-right: -10px;
  background: #EDBA19;
  position: absolute;
  top: 20px;
  left: 15px;
}
.ribbon5:before, .ribbon5:after {
  content: "";
  position: absolute;
}
.ribbon5:before {
  height: 0;
  width: 0;
  bottom: -10px;
  left: 0;
  border-top: 10px solid #cd8d11;
  border-left: 10px solid transparent;
}
.ribbon5:after {
  height: 0;
  width: 0;
  right: 0;
  bottom: -10px;
  border-top: 10px solid #cd8d11;
  border-right: 10px solid transparent;
}
.wrap {
  width: 100%;
  height: 148px;
  position: absolute;
  top: -8px;
  left: -7px;
  overflow: hidden;
}
.wrap:before, .wrap:after {
  content: ""; 
  position: absolute;
}
.wrap:before {
  width: 40px;
  height: 8px;
  right: 100px;
  background: #840404;
  border-radius: 8px 8px 0px 0px;
}
.wrap:after {
  width: 8px;
  height: 40px;
  right: 0px;
  top: 100px;
  background: #840404;
  border-radius: 0px 8px 8px 0px;
}
.ribbon6 {
  width: 57%;
  height: 32px;
  line-height: 32px;
  position: absolute;
  top: 30px;
  right: -50px;
  z-index: 2;
  overflow: hidden;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  border: 1px dashed;
  box-shadow:0 0 0 3px #ea1a1a, 0px 21px 5px -18px rgba(0,0,0,0.6);
  background: #ea1a1a;
  text-align: center;
  font-size: 14px;
  color: white;
}


.hot_ribbon{
    background: linear-gradient(270deg, #F8463F, #e4693d, #F8463F) !important;
    background-size: 600% 600%;

    -webkit-animation: moveGrad 1s ease infinite;
    -moz-animation: moveGrad 1s ease infinite;
    animation: moveGrad 1s ease infinite;
}

@-webkit-keyframes moveGrad {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@-moz-keyframes moveGrad {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@keyframes moveGrad {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}

.ribbon3n {
  width: auto;
  height: auto;
  line-height: 38px;
  padding-right: 15px;
  padding-left: 5px;
  position: absolute;
  right: 6px;
  top: 16em;
  background: #cc0606;
  background: linear-gradient(90deg,#cc0606,#ff8300);
  color: white;
  font-size: 16px;
}
.ribbon3n:before, .ribbon3n:after {
  content: "";
  position: absolute;
}
.ribbon3n:before {
  height: 0;
  width: 0;
  top: -8.5px;
  right: 0.1px;
  border-bottom: 9px solid black;
  border-right: 9px solid transparent;
}
.ribbon3n:after {
  height: 0;
  width: 0;
  left: -14.5px;
  border-top: 19px solid transparent;
  border-bottom: 19px solid transparent;
  border-right: 15px solid #cc0606;
}