body{
    min-height: 100vh;
}

#coupon_box{
    background-color: #FFF;
    margin: 1rem;
    border-radius: 1rem;
    padding: 1rem;
}
.insert_coupon{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.insert_coupon strong{
    flex-basis: 100%;
    text-align: center;
}
.insert_coupon > *{
    margin:0.5rem;
}
.coupon_applicato{
    display: none;
    text-align: center;
}
#apply_coupon{
    background-color: #3c3c3c;
    border:0;
    border-radius: 10rem;
    color:#FFF;
    padding:0.5rem 2.5rem;
    /* float: right;
    margin-right: 0.75rem; */
    opacity:0.5;
}
#apply_coupon.apply_active{
    background-color: #35a420;
    opacity:1;
}
#remove_coupon{
    background-color: #CC0000;
    border:0;
    border-radius: 10rem;
    color:#FFF;
    padding:0.5rem 2.5rem;
    margin-right: 0.75rem;
}
#coupon_code{
    padding:0.3rem;
    border:0;
    border-bottom: 1px #C0C0C0 solid;
    text-align: center;
}

#importo_minimo_box{
    background-color: #FFF;
    margin: 1rem;
    border-radius: 1rem;
    padding: 1rem;
}
#importo_minimo_box strong{
    display: block;
    text-align: center;
    text-transform:uppercase;
}
#importo_minimo_box span{
    display: block;
    text-align: center;
    font-size: 2rem;
    color: #2aacff;
    font-weight:bold;
}

#checkout-order{
    -webkit-box-shadow: 0px 3px 3px 0px rgb(192 192 192 / 50%);
    box-shadow: 0px 3px 3px 0px rgb(192 192 192 / 50%);
    background-color: #FFF;
    padding:1.5rem;
    margin:4.5rem 0 4rem 0;
}
#checkout-order h2{
    margin: 1rem 0;
}

#checkout{
    -webkit-box-shadow: 0px 3px 3px 0px rgb(192 192 192 / 50%);
    box-shadow: 0px 3px 3px 0px rgb(192 192 192 / 50%);
    background-color: #FFF;
    padding:1rem;
    padding-bottom:1.5rem;
    margin:0;
}
#checkout h2{
    margin: 1rem 0;
    padding-left: 0.5rem;
}

#checkout label{
    padding: 0 0.5rem;
}
#checkout input{
    width: 100%;
    border: 0;
    border-bottom:1px #C0C0C0 solid;
    padding:0.5rem;
    margin-bottom: 1rem;
    border-radius: 0.3rem;
}
#checkout textarea{
    width: 100%;
    height:8rem;
    border: 0 !important;
    border-bottom:1px #C0C0C0 solid !important;
    resize: none;
    padding:0.5rem !important;
    display: block;
    margin-bottom: 1rem;
    border-radius: 0.3rem;
}

#testo_landing{
    background-color:#FFF;
    margin:1rem;
    padding:1.5rem;
    border-radius:1rem;
    /* box-shadow: 0 2px 20px rgba(0,0,0,.1); */
}
#testo_landing h2{
    font-size:2rem;
    font-weight: bold;
    line-height: 1.5;
    padding: 0;
    margin:0;
    padding-bottom: 1rem;
}
#testo_landing h3{
    font-size:1.6rem;
    line-height: 1.5;
    padding: 0;
    margin:0;
    font-width: 400;
}
#testo_landing h4{
    font-size:1.4rem;
    padding: 0;
    margin:0;
}
#testo_landing p{
    padding: 0;
    margin:0;
    font-size:1.3rem;
}

#prodotti_landing{
    background-color:#FFF;
    padding:0;
    padding-bottom: 10rem;
}
.single_product{
    padding:2.5rem 1.5rem;
    border-bottom:1px solid #e4e4e4;
    /*display: flex;*/
    justify-content: space-between;
    min-height: 10rem;
    flex-wrap: wrap;
}
.single_product.selected{
    background-color: #ddf7dc;
}
.single_product .txt_product{
    flex-basis: 72%;
    padding:0 1rem 0 0;
}
.single_product .txt_product img{
    border-radius: 1rem;
    margin-right: 1rem;
    float: left;
}
.single_product .price_product{
    flex-basis: 25%;
    white-space: nowrap;
    padding-left: 1rem;
    text-align: right;
}
.single_product .button_product{
    flex-basis: 100%;
    display: flex;
    justify-content: space-between;
    padding: 0.5rem 0;
    align-items: center;
}
.single_product span.title{
    font-size: 1.4rem;
    font-weight: 600;
    text-align: left;
    overflow: hidden;
}
.single_product span.desc{
    font-size: 1.3rem;
    color:#6E6E6E;
    font-style:italic;
    display: block;
    margin-top: 0.3rem;
    overflow: hidden;
}
.single_product span.price{
    font-size: 2rem;
    color:#666666;
    font-style: italic;
}
.single_product .add2cart,
.single_product .remove2cart{
    border: none;
    border-radius: 3rem;
    /*width: 2.5rem;*/
    height: 2.5rem;
    color: #FFF;
    text-align: center;
    font-weight: bold;
    cursor:pointer;
}
.single_product .add2cart{
    background-color: #35a420;
}
.single_product .remove2cart{
    opacity:0;
    background-color: #CC0000;
}
.single_product .qta2cart{
    font-weight: bold;
    font-size:2rem;
    color:#666666;
    opacity:0;
}
#close_fullchart{
    border: 0;
    font-size: 1.8rem;
    padding: 1rem 1.5rem;
    position: fixed;
    background-color: #DDD;
    width: 100vw;
    text-align: left;
    color:#0065cc;
}

#button_order{
    border:0;
    background-color: #D0D0D0;
    color: #3c3c3c;
    position: fixed;
    width: 100vw;
    padding: 1rem;
    text-align: left;
    bottom: 0rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 8.5rem;
    gap:1rem;
}
#button_order.button_order_disabled{
    background-color: #C0C0C0 !important;
}
#button_order .ico_chart{
    font-size:2rem;
    opacity:0.7;
}
#button_order  .ico_chart sup{
    opacity: 0;
    background-color: #CC0000;
    padding: 0rem;
    color: #FFF;
    font-weight: bold;
    border-radius: 2rem;
    top: -1.5rem;
    left: -0.8rem;
    text-align: center;
    padding: 0.3rem;
    font-size: 1rem;
}

#continua_ordine{
    background-color: #35a420;
    border:0;
    border-radius: 10rem;
    color:#FFF;
    padding:0.5rem 2.5rem;
    float: right;
    font-size:2rem;
    white-space: nowrap;
}
#continua_ordine.continua_ordine_disabled{
    background-color: #3c3c3c !important;
    opacity: 0.5;
    cursor: not-allowed;
}
#continua_ordine svg{
    font-size:1.7rem;
}
.riepilogo{
    white-space: nowrap;
    font-size: 1.2rem;
}

#fullchart{
    display: none;
    background-color: #F0F0F0;
    position: fixed;
    top: 0;
    width:100vw;
    height: 100vh;
    overflow: auto;
    padding-bottom: 10rem;
    z-index: 99999999;
}


#complete_order{
    /*background-color: #DDD;
    position: fixed;
    bottom:0;
    left:0;
    width: 100vw;
    padding-top: 1rem;*/
    text-align: center;
}

#invia_ordine{
    background-color: #35a420;
    border:0 !important;
    border-radius: 10rem !important;
    color:#FFF;
    padding:1rem 2.5rem;
    /* margin: 0 5vw; */
    margin-top:1.5rem;
    width: 90vw !important;
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1;
}
#invia_ordine small{
    font-size: 1.5rem;
    font-weight: 400;
}

.prod_row{
    display:flex;
    gap:1rem;
    justify-content: space-between;
    padding: 1rem 0;
    border-bottom: 1px #C0C0C0 solid;
}
.prod_row .qta{
    font-weight: bold;
    white-space: nowrap;
}
.prod_row .title{
    flex-basis: 75%;
}
.prod_row .prezzo{
    text-align: right;
    font-weight: bold;
    white-space: nowrap;
}
#prod_row_totale {
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: 1rem 0;
    border-bottom: 1px #C0C0C0 solid;
    font-weight: bold;
}
#prod_row_totale .totale{
    text-align: right;

}
.totrow_ord{
    color:#808080;
}
.totrow_coupon{
    color:#CC0000;
}
.totrow_perdi{
    color:#ff9900;
}
.totrow_pag{
    color:#35a420;
    border-bottom: 1px #FFF solid !important;
}
.tot1{
    display: none;
    color:#808080;
}
.tot2{
    display:none;
    color:#CC0000;
}
.tot4{
    display: none;
    color:#ff9900;
}
.tot3{
    color:#35a420;
}
.tot5{
    display: none;
}
.parziale_stato{
    font-size: 1.2rem;
    display: block;
    font-style: italic;
    color: #808080;
}

.single_category{
    padding:1.5rem 1.5rem;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    font-weight: bold;
    font-size:4rem;
    text-transform: uppercase;
    color: #2aacff;
    padding-bottom: 0;
    line-height:1;
}

#invia_ordine::before {
    content: '';
    width: 30px;
    height: 100%;
    background: #fff;
    position: absolute;
    top: 0px;
    left: -30px;
    transform: skew(10deg);
    opacity:.3;
    animation: light 4s infinite;

}

#complete_order > #invia_ordine {

    margin: 10px 0px 10px;
    width: 85vw !important;
    position: relative;
    overflow: hidden;
}

@keyframes light {
  0%   {
      left:-30px;
  }
  60%  {
      left:calc(100% + 100px);
      width:100px;
      opacity:.1;

  }
  100%  {
      left:-30px;

  }

}
