.card {
    box-shadow: 0 1px 6px 0 rgba(32, 33, 36, .08);
    border: 1px solid rgb(113, 113, 113, 0.1);
}

.card:hover {
    border: 1px solid rgb(113, 113, 113, 0.3);
    -webkit-transition: 1s all ease;
    transition: 0.5s all ease;
}   

.flat{
    box-shadow: 0;
}
.product{
    min-width: 260px;
    max-width: 295px;
    max-height: 100%;
    height: 100%;
    background-color: white;
    display: flex;
    flex-direction: column;
    border-radius: 3px;
    padding-bottom: 10px;
    position: relative;
}

.product-demo{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap: 5px;
    padding-left: 10px;
}

.product.light{
    padding: 0px;
    margin: 0px;
    padding-bottom: 10px;
}

.product[data-product-name=light] > .container-name .optional{
    display: none;
}

.product[data-product-price=light] > .container-price .optional{
    display: none;
}

.product[data-product-offer=light] > .container-offer .optional{
    display: none;
}

.product[data-product-image=light] > .container-image .optional{
    display: none;
}

.product[data-product-delivery=light] > .container-delivery .optional{
    display: none;
}

.product[data-product-variation=hidden] > .container-variation .optional{
    display: none;
}

/*
Hidden Elements
*/
.product[data-product-name=hidden] > .container-name{
    display: none;
}

.product[data-product-price=hidden] > .container-price{
    display: none;
}

.product[data-product-offer=hidden] > .container-offer{
    display: none;
}

.product[data-product-image=hidden] > .container-image{
    display: none;
}

.product[data-product-delivery=hidden] > .container-delivery{
    display: none;
}

.product[data-product-variation=hidden] > .container-variations{
    display: none;
}

/*
Show labels
*/
.product[data-product-name=full] > .container-name:before{
    content: 'Nome';
    width: 100%;
    display: block;
    font-size: 12px;
    color: var(--color-green);
}

.product[data-product-price=full] > .container-price:before{
    content: 'Preço';
    display: block;
    width: 100%;
    font-size: 12px;
    color: var(--color-green);
}

.product[data-product-offer=full] > .container-offer:before{
    content: 'Ofertas';
    display: block;
    width: 100%;
    font-size: 12px;
    color: var(--color-green);
}


.product[data-product-delivery=full] > .container-delivery:before{
    content: 'Entrega';
    display: block;
    width: 100%;
    font-size: 12px;
    color: var(--color-green);
}

/*
Container Name
*/

.product > .container-name{
    padding: 3px 10px;
}

.product > .container-name > .title{
    display: flex;
    font-size: 12px;
    color: #717171;
}

.product[data-product-live] > .container-name > .title > div{
    margin-right: 5px;
}

.product[data-product-live] > .container-name > .title{
    display: flex;
}

.product[data-product-live] .svg-icon path, .svg-icon polygon, .svg-icon rect{
    fill: var(--color-orange);
}

.product[data-product-group*=new] > .container-name > .title{
    display: flex;
    font-size: 14px;
    color: var(--color-orange);
}

.product[data-product-group*=trend] > .container-name > .title{
    display: flex;
    font-size: 14px;
    color: var(--color-blue);
}

.product[data-product-group*=recommended] > .container-name > .title{
    display: flex;
    font-size: 14px;
    color: whitesmoke;
    background-color: var(--color-dark);
    position: relative;
    left: -10px;
    top: -15px;
    padding-left:20px;
    width: 70%;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    margin-bottom: 10px;
    box-shadow: 0 6px 6px 0 rgba(32, 33, 36, .08);
}

.product[data-product-group*=recommended] > .container-name > .title:after{
    content: '';
    transform: skew(-15deg);
    color: var(--color-dark);
    height: 100%;
    position: absolute;
    left: -5px;
    border: solid 5px;
}


.product > .container-name > .content > .description{
    color: #717171;
    font-size: 14px;
    line-height: 1.5em;
}

/*
Container Live
*/

.product > .container-live{
    width: 70%;
    position: absolute;
    top: 10px;
    right: 0px;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

.product > .container-live > .title{
    display: none;
}

.product > .container-live > .content > div{ 
    display: flex;
    align-items: center;
}

.product > .container-live > .content > div > ul{ 
    list-style: none;
    display: flex;
    flex-direction: column;    
    align-content: flex-end;
    justify-content: flex-end;
    padding: 0px;
    margin: 0px;
    font-size: 14px;
    width: 100%;
}

.product > .container-live > .content > div > ul > li{ 
    display: flex;
    color: whitesmoke;
    width: 100%;
    margin-bottom: 5px;
    background-color: var(--color-dark-opacity-50);
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    padding-left: 5%;
    width: 100%;
    align-items: center;
    box-shadow: 0 3px 3px 0 rgba(32, 33, 36, .08);
}

.product > .container-live > .content > div > ul > li > div{
    margin-right: 15px;
}

/*
Container Price
*/

.product > .container-price{
    width: 100%;
    padding: 3px 10px;
}

.product > .container-price > .title{
    display: none;
}

.product > .container-price >  .content{ 
    display: flex;
    align-items: center;
}

.product > .container-price >  .content > div{ 
    display: flex;
}

.product > .container-price > .content > .current-price{
    font-size: 28px;
    padding: 10px;
}

.product > .container-price >  .content >.current-price > .symbol{
    position: relative;
    top: -0.5em;
    font-size: 0.4em;
    padding-right: 3px;
}

.product > .container-price > .content > .current-price > .cents{
    position: relative;
    top: -0.5em;
    font-size: 0.4em;
    padding-left: 3px;
}

.product > .container-price > .content > .old-price{
    color: #717171;
    font-size: 14px;
    text-decoration: line-through;
}

.product > .container-price > .old-price > .whole:after{
    content: ',';
    margin-right: 3px;
}

/*
Container Delivery
*/
.product > .container-delivery{
    display: flex;
    width: 100%;
    flex-direction: column;
    color: #717171;
    font-size: 14px;
    padding: 3px 10px;
}

.product > .container-delivery > .content > ul{
    display: flex;
    list-style: none;
    width: 100%;
    padding: 0px;
    flex-wrap: wrap;
    flex-direction: column;
    margin: 0px;
}

.product > .container-delivery > .title {
    display: none;
}
.product > .container-delivery > .content > ul > li:hover{
    background-color: whitesmoke;
}

.product > .container-delivery > div{
    display: flex;
}

/*
    CONTAINER-OFFER
*/
.product > .container-offer{
    display: flex;
    padding: 3px 10px;
    width: 100%;
    font-size: 14px;
    flex-direction: column;
}

.product > .container-offer > div{
    display: flex;
}

.product > .container-offer > .content > div{
    display: flex;
    align-items: center;
}

.product > .container-offer > .title{
    color: #717171;
}

.product > .container-offer > .content > .best-price{
    padding: 10px;
}

.product > .container-offer > .content > .best-price > .elevate{
    font-size: x-small;
    position: relative;
    top: 0px;
    padding-left: 2px;
    padding-right: 2px;
}

.product > .container-offer > .offers{
    color: var(--color-blue);
}

.product > .container-offer > .content a{
    text-decoration: none;
    color: var(--color-blue);
}

.product > .container-offer > .content a:visited{
    text-decoration: none;
    color: var(--color-blue);
}

/*
Container Image
*/
.product img{
    max-width: 100%;
    display: block;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

.product > .container-image{
    position: relative;
}

.product > .container-image:hover > .title{
    visibility: visible;
    opacity: 1;
}

.product > .container-image > .title{
    visibility: hidden;
    opacity: 0;
    position: absolute;
    bottom: 0px;
    background-color: var(--color-dark-opacity-50);
    width: 100%;
    font-size: smaller;
    color: whitesmoke;
    padding: 5px;
    transition: visibility 0s, opacity 0.5s linear;
    animation: ease-in 5s;
}

/*
Container Variations
*/

.product > .container-variations{
    padding: 3px 10px;
    width: 100%;
}

.product > .container-variations ul{
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    padding: 0px;
    margin: 0px;
}

.product > .container-variations li:hover{
    background-color: var(--color-gray);
}

.product > .container-variations li.current{
    background-color: var(--color-orange-opacity-50);
    border: 1px solid var(--color-orange);
}
.product > .container-variations li div{
    display: flex;
}

.product > .container-variations li{
    display:flex;
    margin: 5px;
    padding: 5px;
    width: auto;
    border-radius: 3px;
    border: 1px solid var(--color-dark-opacity-50);
    background-color: var(--color-gray-light);
}

.product > .container-variations a, a:visited{
    text-decoration: none;
    color: var(--color-dark);
}

.product > .container-variations > .title{
    color: #717171;
}

@media (max-width: 600px) {
    .product-demo{
        display: flex;
        flex-direction: column;
        justify-content: center;
        justify-items: center;
    }

    .product{
        min-width: 90%;
        max-width: 90%;
        background-color: white;
        display: flex;
        flex-direction: column;
        align-content: center;
        align-items: center;
        justify-content: center;
        justify-items: center;
        border-radius: 3px;
        margin: 10px;
    }

    .product.light{
        margin: 10px;
    }

    .container{
        width: auto;
    }
}