.producto-cesta{position: relative; padding-top: 24px;}
.producto-cesta .img{background-color: #F5F5F5; width: 180px; margin-right: 40px;}
.producto-cesta .img::after{padding-top: 100%;}
.producto-cesta .img>img{left: 15%; top: 15%; height: 70%; width: 70%; -o-object-fit: contain; object-fit: contain;}
.producto-cesta>div:not(.img){-webkit-box-flex: 1;-ms-flex: 1;flex: 1;}
.producto-cesta .remove{position: absolute; right: 0; top: 0; border: none; background-color: transparent; min-height: 48px; min-width: 48px;}
.producto-cesta h3{font-size: 18px;}
.producto-cesta p{font-size: 14px; width: 70%; margin-top: 10px;}
.precio{font-weight: 600; color: #000;}
.precio.alt{color: #de2020;}
.precio.alt .tachado, .producto-cesta .precio.alt small{color: #000;}
.producto-cesta label{font-size: 14px;}
#cesta .checkout{background-color: #f5f5f5; padding: 30px; margin-top: 30px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; font-size: 20px; font-weight: 600; text-align: right;}
#cesta .checkout>div{padding: 15px 0;}
#cesta .checkout>div+div{border-top: solid 1px #e5e5e5;}
#cesta select.form-control.envio{display: inline-block; margin: 0 15px;}
#cesta .descuento{background-color: #f5f5f5; padding: 30px; margin-top: 30px;}
#cesta .descuento label{display: -webkit-box;display: -ms-flexbox;display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin-right: 15px;}
#cesta .descuento .form-control{width: auto; height: auto;}
#cesta .descuento .btn{border-top-left-radius: 0; border-bottom-left-radius: 0;}
#cesta .opciones{font-size: 14px; font-weight: 600; padding-top: 10px; padding-bottom: 10px;}

#pago label{display: block;}
#metodos-pago{display: -webkit-box;display: -ms-flexbox;display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin-top: 20px;}
#metodos-pago>a{max-width: 33.333%; -webkit-box-flex: 1; -ms-flex: 1; flex: 1; padding: 10px 20px; border-radius: 10px; background-color: #fff; border: solid 1px #ddd; text-align: center;}
#metodos-pago>a>img{height: 24px; width: auto; margin-right: 10px;}
#metodos-pago>a+a{margin-left: 15px;}

@media screen and (max-width: 768px) {
    #cesta .producto-cesta{display: block;}
    #cesta .producto-cesta .img{width: calc(100% - 80px); margin: 0 40px 20px;}
    .producto-cesta>div:not(.img){margin: 0 40px 20px;}
    #cesta .descuento .form-group-flex{display: block;}
    #cesta .descuento .form-control, #cesta .descuento .btn{display: block; width: 100%; margin-top: 10px;}
    #cesta .descuento .btn{border-top-left-radius: 8px; border-bottom-left-radius: 8px;}
    #metodos-pago{-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;}
    #metodos-pago>a{width: 100%; max-width: 100%;}
    #metodos-pago>a+a{margin-left: 0; margin-top: 32px;}
}