:root {
    --button-size: 36px;
}

.prodotti {
    display: grid;
    grid-template-columns: auto;
}

.prodotto {
    max-width: 24rem;
    margin: 20px 5px;
}

.tasto > a {
    text-decoration: none!important;
}

.prodotto * {
    color: white;
    
    text-align: center;
}

.prodotto > div > a > img {
    height: 22rem;
    position: relative;
    z-index: 1;
}

.tasti > * {
    margin: auto;
}

.tasto {
    border: 1px solid white;
    height: 48px;
    
    vertical-align: middle;
    padding: 0!important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.tasto * {
    width: 100%;
    height: 100%;
    margin: 0px;
    vertical-align: middle;
}

.tasto > svg {
    width: 100%;
    padding: 6px;
}

.tasto > a > h4 {
    margin: 0;
}

.tasto:hover * {
    color: black;
    background-color: rgb(255, 255, 255);
}

.sfondino {
    padding: 80px 40px 20px;
    margin-top: -60px;
    z-index: 0;
}



.img-prodotto-singolo {
    display: flex;
    justify-content: center;
    height: 600px;
}





@media screen and (max-width: 767.98px) { 

.prodotto {
    max-width: 100%;
}

.sfondino {
    padding: 40px 15px;
    margin-top: 0px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    
}

.sfondino > *{
    text-align: left!important;
}

.img-prodotto-singolo {
    height: 50vh;
}

.buttons-row{
    flex-direction: column;
    padding: 0px 20px;
}

.buttons-row > *{
    margin: 10px 2px;
}

}

/* JS dynamic classes */

.add_cart_contanier_moved{
    width: 90%;
    position: relative;
    left: 5%;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: black;
    column-gap: 0;
}

.add_cart_contanier_moved > div > #cart_icon {
    width: 60%;
    padding: 0;
}








#quantity-selector > button{
    border: 1px solid white;
}

.tasti{
    flex-wrap: wrap !important; 
}

.add_cart_container{
    margin: 0;
    padding: 0;
}
.add_cart_container > div {
    padding: 0 10px;
}


/**/

.image_col{
    border: 1px solid rebeccapurple;
    overflow: hidden;
}
.image_col > img {
    margin: 0;
    padding: 0;
    width: 100%;
    border: 1px solid salmon;
}


.product {
    padding: 0px 20px;
    margin: 25px 0px;
}

.product img {
    height: 320px;
    
    position: relative;
    z-index: 1;
}

.selector {
    margin-top: 20px;
    margin-right: 20px;
}

.selector > svg {
    width: var(--button-size);
    min-width: var(--button-size);
}

.selector > button {
    height: var(--button-size);
    width: var(--button-size);
    min-width: var(--button-size);
    border: 1px solid white;
    border-radius: 100px!important;
    padding: 0px;
    margin: 0px 10px;
}

.selector > input {
    height: var(--button-size);
    width: 60px;
    min-width: 60px;
    border: 1px solid black;
    border-radius: 100px!important;
    padding: 0px;
}

.product-body {
    height: 100%;
    background-color: black;
    padding: 20px;
}

.product-body * {
    color: white;
}

.product-button {
    border: 1px solid white;
    width: 100%;
    padding: 10px;
    border-radius: 8px;
    text-align: center;
}

.usa {
    position: absolute;
    width: fit-content;
    background-color: white;
    border: 1px solid black;
    color: #000000;
    text-align: center;
    padding: 5px;
    border-radius: 8px;
    z-index: 10;
    transform: translate3d(0px, 0px, 0px);
    font-size: 8pt;
    line-height: 8pt;
}

@media (min-width: 576px) {
    .prodotti {
        grid-template-columns: auto;
    }
}

@media (min-width: 768px) {
    .prodotti {
        grid-template-columns: auto auto;
    }

    .product-body {
        height: 340px;
        padding: 40px 20px 20px;
    }

    .product-body * {
        text-align: center;
    }

    .product img {
        bottom: -30px;
        height: 400px;
    }

    .usa {
        transform: translate3d(0px, 100%, 0px);
    }
}

@media (min-width: 992px) {
    .prodotti {
        grid-template-columns: auto auto auto;
    }
}
