.plp {
    flex-direction: column;
    width: 100%
}

.plp, .plp > .title {
    display: flex;
    justify-content: center;
    align-items: center
}

.plp > .title {
    text-align: center;
    width: 90%;
    margin: 1rem auto 16px;
    border-bottom: 1px solid #e5e5e5
}

.plp > .title h1 {
    font-size: 18px;
    font-size: 1.125rem;
    color: #d30061;
    text-transform: capitalize
}

.plp .description {
    width: 90%;
    margin: 0 auto 16px
}

.plp .description p {
    margin-top: 0
}

.plp .products {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: flex-start;
    flex-wrap: wrap;
    width: 100%;
    padding: 0 5%;
    margin-top: 1rem;
    margin-bottom: 1rem
}

.plp .products .product {
    margin-bottom: 1rem;
    min-width: 125px;
    width: 50%;
    padding-right: 5%
}

.plp .shop-link {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin-top: 1rem;
    margin-bottom: 1rem
}

.plp .shop-link a {
    color: #141212;
    display: flex;
    align-items: center;
    text-decoration: none;
    font-weight: 700
}

.plp .shop-link a:hover {
    color: #655a5a
}

.plp .shop-link a .app-icon-left-arrow {
    width: 16px;
    padding-right: 6px
}

@media only screen and (min-width: 576px) {
    .plp .products .product {
        width: 33%;
        padding-right: 5%
    }
}

@media only screen and (min-width: 768px) {
    .plp .title {
        justify-content: flex-start;
        border-bottom: none
    }

    .plp .title h1 {
        font-size: 32px;
        font-size: 2rem
    }

    .plp .products {
        padding-right: 0;
        justify-content: flex-start
    }

    .plp .products .product {
        width: 25%;
        padding-right: 5%
    }
}

div[_ngcontent-sc72] {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%
}

div[_ngcontent-sc72] svg[_ngcontent-sc72] {
    width: 100%;
    max-width: 50px
}

.card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 100%;
    padding: 8px 0
}

.card a {
    text-decoration: none;
    display: block;
    width: 100%
}

.card a .image {
    width: 100%;
    position: relative
}

.card a .image img {
    height: auto;
    width: 100%;
    max-width: 300px;
    /*opacity: 0;*/
    transition: opacity .5s ease-in-out
}

.card a .image img.ng-lazyloaded[_ngcontent-sc84] {
    opacity: 1
}

.card a .image .sale-banner {
    position: absolute;
    top: -8px;
    right: -8px;
    color: #fff;
    background-color: #ffc7d1;
    font-weight: 700;
    padding: 4px 8px;
    font-size: 16px;
    font-size: 1rem
}

.card a .image .subscribe-banner[_ngcontent-sc84] {
    position: absolute;
    top: -8px;
    right: -8px;
    color: #fff;
    background-color: #d30061;
    padding: 8px 16px;
    font-size: 14px;
    font-size: .875rem
}

.card a .image .subscribe-banner[_ngcontent-sc84] p[_ngcontent-sc84] {
    color: #fff;
    padding: 0;
    margin: 0;
    line-height: 1
}

.card a .price, .card a .title h3 {
    font-size: 14px;
    font-size: .875rem;
    width: 100%;
}

.card a .price {
    color: #494945
}

.card a .colors p {
    margin: 0;
    font-size: 12px;
    font-size: .75rem
}