/* Adattamenti del tema ai componenti OFFLINE.Mall (markup del vecchio shop Lovata) */

/* Dettaglio: Mall riscrive .mall-product__add-to-cart a ogni cambio di opzione, il bottone resta accanto alla quantità */
.product_quantity_container .mall-product__add-to-cart { display: inline-block; vertical-align: middle; }
#mall-add-to-cart [data-validate-for] { margin-top: 8px; }

/* Carrello: variante sotto il nome del prodotto */
.cart_item .product_name small { display: block; font-size: 13px; line-height: 1.4; color: #6c6a74; }
.coupon_form { position: relative; }

/* Checkout: bottone "Completa ordine" nel riquadro verde del vecchio tema, opzioni a radio */
.checkout_button button { width: 100%; height: 100%; min-height: 46px; background: transparent; border: 0; font-size: 12px; font-weight: 700; text-transform: uppercase; color: #1b1b1b; cursor: pointer; }
.checkout_button button:disabled { opacity: .5; cursor: not-allowed; }
.checkout-option { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.checkout-option label { margin: 0; font-weight: 600; }
.checkout-option .about_paypal { font-size: 13px; }
.checkout-privacy { margin-top: 20px; }
.mall-signup-terms label { font-weight: 400; }

/* Form contatti (componente contactForm), con la resa del vecchio modulo Cognito Forms */
.bm-contact { background: rgba(60, 60, 60, .6); color: #fff; padding: 14px 16px 26px; margin: 40px 0; text-align: left; }
.bm-contact__form { padding: 0; }
.bm-contact__title { font-family: 'Open Sans Condensed', 'Arial Narrow', Arial, sans-serif; font-stretch: condensed; font-weight: 700; font-size: 24px; color: #fff; margin: 0 0 18px; }
.bm-contact__label { display: block; font-weight: 700; font-size: 20px; color: #fff; margin: 16px 0 8px; }
.bm-contact__row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.bm-contact__input { display: block; width: 100%; height: 42px; border: 1px solid #ccc; background: #fff; color: #333; padding: 6px 12px; font-size: 15px; border-radius: 0; }
.bm-contact__textarea { height: auto; min-height: 60px; resize: vertical; }
.bm-contact__check { display: flex; gap: 8px; align-items: flex-start; margin: 16px 0 4px; font-size: 13px; color: #fff; }
.bm-contact__check input { margin-top: 3px; }
.bm-contact__check a { color: #fff; text-decoration: underline; }
.bm-contact__submit { margin-top: 18px; background: #a30c10; color: #fff; border: 0; padding: 12px 18px; font-size: 18px; cursor: pointer; }
.bm-contact__submit:hover { background: #7d090c; }
.bm-contact__error { display: block; color: #ffd2d2; font-size: 13px; min-height: 0; }
.bm-contact__error:empty { display: none; }
.bm-contact__trap { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.bm-contact__success p { color: #fff; font-size: 16px; }
@media (max-width: 575px) { .bm-contact__row { grid-template-columns: 1fr; } }
