/*
 * APIMIEL SA — WooCommerce Frontend UI
 * Version 1.5.14
 *
 * ARCHITETTURA
 * - Tutto il frontend WooCommerce usa una colonna singola.
 * - Nessuna colonna laterale WooCommerce affiancata.
 * - Gli elementi vengono mostrati in sequenza verticale.
 * - Il tema Apimiel gestisce ambiente pagina, sfondo, header/footer,
 *   contenitore esterno, font-family e palette.
 * - WooCommerce mantiene markup, logica e componenti funzionali.
 * - Questo file gestisce SOLO UI WooCommerce e disposizione a colonna singola.
 */

/* ==========================================================================
   1. ROOT / TYPOGRAPHY ISOLATION
   ========================================================================== */

.woocommerce,
.woocommerce-page .woocommerce,
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout,
.wc-block-cart,
.wc-block-checkout,
.wc-block-components-main,
.wc-block-components-sidebar {
    font-family:"Lato", sans-serif !important;
    color:#2e1a03 !important;
}

.woocommerce :where(p, li, dt, dd, label, legend),
.woocommerce-page .woocommerce :where(p, li, dt, dd, label, legend),
.wp-block-woocommerce-cart :where(p, li, dt, dd, label, legend),
.wp-block-woocommerce-checkout :where(p, li, dt, dd, label, legend),
.wc-block-cart :where(p, li, dt, dd, label, legend),
.wc-block-checkout :where(p, li, dt, dd, label, legend) {
    font-family:"Lato", sans-serif !important;
    text-align:left !important;
    -webkit-hyphens:none !important;
    -moz-hyphens:none !important;
    hyphens:none !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    letter-spacing:normal !important;
}

/* ==========================================================================
   2. APIMIEL COMMERCE PAGE SHELL / VISIBLE PAGE TITLE
   ========================================================================== */

.apimiel-commerce-page-title {
    position:relative !important;
    z-index:20 !important;
    width:min(70vw, 920px) !important;
    margin:0 auto !important;
    padding:18px 0 0 0 !important;
    color:#fff9e8 !important;
    font-family:"Lato", sans-serif !important;
    font-size:clamp(1.45rem, 1.95vw, 1.9rem) !important;
    line-height:1.15 !important;
    font-weight:300 !important;
    letter-spacing:.08em !important;
    text-align:center !important;
    text-transform:uppercase !important;
    box-sizing:border-box !important;
    pointer-events:none !important;
}

.apimiel-commerce-page-shell #cont_pagina_normale {
    margin-top:42px !important;
}

/* ==========================================================================
   3. GLOBAL ONE-COLUMN COMMERCE WIDTH
   ========================================================================== */

.woocommerce,
.woocommerce-page .woocommerce,
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout,
.wc-block-cart,
.wc-block-checkout {
    width:min(100%, 920px) !important;
    max-width:920px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
}

/* ==========================================================================
   3. CHECKOUT — ONE COLUMN / CLEAN ORDER / NON-STICKY SUMMARY
   ========================================================================== */

/*
 * Ordine visivo:
 *  1. Riepilogo dell'ordine
 *  2. Informazioni di contatto
 *  3. Indirizzo di spedizione / fatturazione
 *  4. Opzioni di spedizione
 *  5. Opzioni di pagamento
 *  6. Nota ordine / informazioni aggiuntive
 *  7. Pagamento rapido
 *  8. Termini
 *  9. Effettua ordine
 */

.wp-block-woocommerce-checkout .wc-block-checkout,
.wc-block-checkout {
    display:flex !important;
    flex-direction:column !important;
}

.wc-block-checkout__sidebar,
.wc-block-components-sidebar {
    order:1 !important;
    width:100% !important;
    max-width:100% !important;
    float:none !important;
    margin:0 0 2rem 0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;

    /* Il riepilogo scorre normalmente: mai sticky/fixed. */
    position:static !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    inset:auto !important;
    align-self:stretch !important;
    transform:none !important;
}

.wc-block-checkout__sidebar .wc-block-components-order-summary,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block,
.wp-block-woocommerce-checkout-order-summary-block,
.wc-block-components-order-summary {
    position:static !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    inset:auto !important;
    transform:none !important;
}

.wc-block-checkout__main,
.wc-block-components-main {
    order:2 !important;
    width:100% !important;
    max-width:100% !important;
    float:none !important;
    margin:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
}

.wc-block-checkout__main,
.wp-block-woocommerce-checkout-fields-block {
    display:flex !important;
    flex-direction:column !important;
}

.wp-block-woocommerce-checkout-contact-information-block {
    order:10 !important;
}

.wp-block-woocommerce-checkout-shipping-address-block {
    order:20 !important;
}

.wp-block-woocommerce-checkout-billing-address-block {
    order:30 !important;
}

.wp-block-woocommerce-checkout-shipping-methods-block,
.wp-block-woocommerce-checkout-shipping-method-block,
.wp-block-woocommerce-checkout-pickup-options-block {
    order:40 !important;
}

.wp-block-woocommerce-checkout-payment-block {
    order:50 !important;
}

.wp-block-woocommerce-checkout-order-note-block,
.wp-block-woocommerce-checkout-additional-information-block {
    order:60 !important;
}

.wp-block-woocommerce-checkout-express-payment-block {
    order:70 !important;
}

.wp-block-woocommerce-checkout-terms-block {
    order:80 !important;
}

.wp-block-woocommerce-checkout-actions-block {
    order:90 !important;
}

/* Nasconde soltanto un'eventuale seconda copia del riepilogo nei campi. */
.wc-block-checkout__main .wc-block-components-order-summary,
.wc-block-checkout__main .wp-block-woocommerce-checkout-order-summary-block {
    display:none !important;
}

/* --------------------------------------------------------------------------
   Pagamento rapido: tre possibilità centrate nello spazio disponibile.
   -------------------------------------------------------------------------- */

.wp-block-woocommerce-checkout-express-payment-block .wc-block-components-express-payment__content {
    width:100% !important;
    box-sizing:border-box !important;
}

.wp-block-woocommerce-checkout-express-payment-block .wc-block-components-express-payment__event-buttons {
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:12px !important;
    width:calc(100% - 32px) !important;
    max-width:820px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
}

.wp-block-woocommerce-checkout-express-payment-block .wc-block-components-express-payment__event-buttons > li {
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
    font-size:0 !important;
    line-height:0 !important;
}

.wp-block-woocommerce-checkout-express-payment-block .wc-block-components-express-payment__event-buttons > li > *,
.wp-block-woocommerce-checkout-express-payment-block .wc-block-components-express-payment__event-buttons iframe {
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    box-sizing:border-box !important;
}

/* Descrizione del pagamento rapido centrata rispetto al gruppo pulsanti. */
.wp-block-woocommerce-checkout-express-payment-block .wc-block-components-express-payment__title,
.wp-block-woocommerce-checkout-express-payment-block .wc-block-components-express-payment__description {
    text-align:center !important;
}

/* ==========================================================================
   4. CART — ALWAYS ONE COLUMN
   ========================================================================== */

.wc-block-cart {
    display:block !important;
}

.wc-block-cart__main,
.wc-block-cart__sidebar,
.wc-block-cart__totals-title,
.cart-collaterals,
.woocommerce-cart-form {
    width:100% !important;
    max-width:100% !important;
    float:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
}

.wc-block-cart__sidebar,
.cart-collaterals {
    margin-top:2rem !important;
}

/* ==========================================================================
   6. CART QUANTITY SELECTOR — COMPACT / NEUTRAL
   ========================================================================== */

/*
 * WooCommerce Blocks quantity selector in the Cart.
 * Removes any colour inherited from the old theme and keeps the control
 * compact, readable and vertically centred.
 */

.wc-block-cart .wc-block-cart-item__quantity,
.wp-block-woocommerce-cart .wc-block-cart-item__quantity {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:12px !important;
    margin-top:.75rem !important;
    box-sizing:border-box !important;
}

.wc-block-cart .wc-block-components-quantity-selector,
.wp-block-woocommerce-cart .wc-block-components-quantity-selector {
    display:grid !important;
    grid-template-columns:36px 46px 36px !important;
    align-items:center !important;
    width:118px !important;
    min-width:118px !important;
    max-width:118px !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    border:1px solid rgba(46,26,3,.30) !important;
    border-radius:6px !important;
    background:#ffffff !important;
    box-shadow:none !important;
    box-sizing:border-box !important;
}

.wc-block-cart .wc-block-components-quantity-selector::after,
.wp-block-woocommerce-cart .wc-block-components-quantity-selector::after {
    content:none !important;
}

.wc-block-cart .wc-block-components-quantity-selector__button,
.wp-block-woocommerce-cart .wc-block-components-quantity-selector__button {
    position:static !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:36px !important;
    min-width:36px !important;
    max-width:36px !important;
    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    color:#2e1a03 !important;
    box-shadow:none !important;
    font-family:"Lato", sans-serif !important;
    font-size:1.15rem !important;
    line-height:1 !important;
    font-weight:400 !important;
    cursor:pointer !important;
    box-sizing:border-box !important;
}

.wc-block-cart .wc-block-components-quantity-selector__input,
.wp-block-woocommerce-cart .wc-block-components-quantity-selector__input {
    position:static !important;
    display:block !important;
    width:46px !important;
    min-width:46px !important;
    max-width:46px !important;
    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;
    margin:0 !important;
    padding:0 4px !important;
    border:0 !important;
    border-left:1px solid rgba(46,26,3,.14) !important;
    border-right:1px solid rgba(46,26,3,.14) !important;
    border-radius:0 !important;
    outline:0 !important;

    color:#2e1a03 !important;
    caret-color:#2e1a03 !important;
    box-shadow:none !important;
    font-family:"Lato", sans-serif !important;
    font-size:.95rem !important;
    line-height:38px !important;
    font-weight:400 !important;
    text-align:center !important;
    -webkit-text-fill-color:#2e1a03 !important;
    opacity:1 !important;
    box-sizing:border-box !important;
}

.wc-block-cart .wc-block-components-quantity-selector__input:focus,
.wp-block-woocommerce-cart .wc-block-components-quantity-selector__input:focus {
    color:#2e1a03 !important;
    outline:1px solid rgba(158,95,24,.55) !important;
    outline-offset:-1px !important;
}


/* Quantity input: intentionally NO background declaration. */
.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
    color:#2e1a03 !important;
    -webkit-text-fill-color:#2e1a03 !important;
}

/* Trash/remove control: compact and aligned with the quantity selector. */
.wc-block-cart .wc-block-cart-item__remove-link,
.wp-block-woocommerce-cart .wc-block-cart-item__remove-link {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:36px !important;
    min-height:40px !important;
    margin:0 !important;
    padding:0 4px !important;
    color:#2e1a03 !important;
    font-family:"Lato", sans-serif !important;
    font-size:.82rem !important;
    line-height:1.2 !important;
    text-decoration:none !important;
    box-sizing:border-box !important;
}

/* Also neutralise classic cart quantity fields if Woo ever renders them. */
.woocommerce-cart .quantity .qty {
    width:62px !important;
    min-width:62px !important;
    max-width:62px !important;
    height:40px !important;
    min-height:40px !important;
    margin:0 !important;
    padding:0 6px !important;
    border:1px solid rgba(46,26,3,.30) !important;
    border-radius:6px !important;
    background:#ffffff !important;
    color:#2e1a03 !important;
    box-shadow:none !important;
    font-family:"Lato", sans-serif !important;
    font-size:.95rem !important;
    line-height:1 !important;
    text-align:center !important;
    box-sizing:border-box !important;
}

@media screen and (max-width:600px) {
    .wc-block-cart .wc-block-cart-item__quantity,
    .wp-block-woocommerce-cart .wc-block-cart-item__quantity {
        gap:10px !important;
    }

    .wc-block-cart .wc-block-components-quantity-selector,
    .wp-block-woocommerce-cart .wc-block-components-quantity-selector {
        grid-template-columns:34px 44px 34px !important;
        width:112px !important;
        min-width:112px !important;
        max-width:112px !important;
        height:38px !important;
        min-height:38px !important;
        max-height:38px !important;
    }

    .wc-block-cart .wc-block-components-quantity-selector__button,
    .wp-block-woocommerce-cart .wc-block-components-quantity-selector__button {
        width:34px !important;
        min-width:34px !important;
        max-width:34px !important;
        height:36px !important;
        min-height:36px !important;
        max-height:36px !important;
    }

    .wc-block-cart .wc-block-components-quantity-selector__input,
    .wp-block-woocommerce-cart .wc-block-components-quantity-selector__input {
        width:44px !important;
        min-width:44px !important;
        max-width:44px !important;
        height:36px !important;
        min-height:36px !important;
        max-height:36px !important;
        line-height:36px !important;
    }
}

/* ==========================================================================
   7. MY ACCOUNT — UNIFIED ONE-COLUMN UI
   ========================================================================== */

.woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-content {
    width:100% !important;
    max-width:100% !important;
    float:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
}

.woocommerce-MyAccount-navigation {
    margin:0 0 2rem 0 !important;
    padding:0 0 1rem 0 !important;
    border-bottom:1px solid rgba(46,26,3,.16) !important;
}

.woocommerce-MyAccount-navigation ul {
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}

.woocommerce-MyAccount-navigation li {
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
}

.woocommerce-MyAccount-navigation a {
    display:block !important;
    padding:.55rem .8rem !important;
    border:1px solid rgba(46,26,3,.18) !important;
    border-radius:5px !important;
    background:rgba(255,255,255,.22) !important;
    color:#2e1a03 !important;
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.78rem, .86vw, .9rem) !important;
    line-height:1.2 !important;
    font-weight:300 !important;
    text-decoration:none !important;
    box-sizing:border-box !important;
}

.woocommerce-MyAccount-navigation li.is-active a {
    border-color:#9e5f18 !important;
    background:#9e5f18 !important;
    color:#fff !important;
}

.woocommerce-MyAccount-content {
    margin:0 !important;
    padding:0 !important;
    font-family:"Lato", sans-serif !important;
    color:#2e1a03 !important;
}

.woocommerce-MyAccount-content .form-row,
.woocommerce-MyAccount-content .form-row-first,
.woocommerce-MyAccount-content .form-row-last,
.woocommerce-EditAccountForm .form-row,
.woocommerce-address-fields .form-row {
    float:none !important;
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
}

.woocommerce-MyAccount-content fieldset {
    margin:1.8rem 0 1.2rem 0 !important;
    padding:1.2rem !important;
    border:1px solid rgba(46,26,3,.14) !important;
    border-radius:6px !important;
    box-sizing:border-box !important;
}

.woocommerce-MyAccount-content legend {
    padding:0 .45rem !important;
    color:#2e1a03 !important;
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.9rem, 1vw, 1rem) !important;
    font-weight:400 !important;
}

.woocommerce-Addresses {
    display:block !important;
    width:100% !important;
    margin:0 !important;
}

.woocommerce-Address {
    float:none !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 1.5rem 0 !important;
    padding:1rem !important;
    border:1px solid rgba(46,26,3,.14) !important;
    border-radius:6px !important;
    box-sizing:border-box !important;
}

.woocommerce-Address address {
    margin:.8rem 0 0 0 !important;
    font-style:normal !important;
    line-height:1.5 !important;
}

.woocommerce-MyAccount-content table {
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    border-collapse:collapse !important;
    box-sizing:border-box !important;
}

.woocommerce-MyAccount-content table th,
.woocommerce-MyAccount-content table td {
    padding:.75rem .5rem !important;
    border-bottom:1px solid rgba(46,26,3,.12) !important;
    vertical-align:middle !important;
}

.woocommerce-PaymentMethods,
.woocommerce-PaymentMethod {
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
}

/* ==========================================================================
   8. TYPOGRAPHY
   ========================================================================== */

.woocommerce h1,
.woocommerce-page .woocommerce h1,
.wp-block-woocommerce-cart h1,
.wp-block-woocommerce-checkout h1,
.wc-block-cart h1,
.wc-block-checkout h1 {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(1.35rem, 1.8vw, 1.8rem) !important;
    line-height:1.16 !important;
    font-weight:300 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
}

.woocommerce h2,
.woocommerce-page .woocommerce h2,
.wp-block-woocommerce-cart h2,
.wp-block-woocommerce-checkout h2,
.wc-block-cart h2,
.wc-block-checkout h2,
.wc-block-components-title,
.wc-block-components-checkout-step__title {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.92rem, 1.05vw, 1.08rem) !important;
    line-height:1.24 !important;
    font-weight:400 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
}

.woocommerce h3,
.woocommerce-page .woocommerce h3,
.wp-block-woocommerce-cart h3,
.wp-block-woocommerce-checkout h3,
.wc-block-cart h3,
.wc-block-checkout h3 {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.88rem, .98vw, 1rem) !important;
    line-height:1.28 !important;
    font-weight:400 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
}

.wc-block-components-order-summary__button-text {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.9rem, 1vw, 1.04rem) !important;
    line-height:1.25 !important;
    font-weight:400 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
}

.woocommerce p,
.woocommerce-page .woocommerce p,
.wp-block-woocommerce-cart p,
.wp-block-woocommerce-checkout p,
.wc-block-cart p,
.wc-block-checkout p {
    font-size:clamp(.84rem, .92vw, .96rem) !important;
    line-height:1.4 !important;
    font-weight:300 !important;
}

.woocommerce label,
.woocommerce-page .woocommerce label,
.wp-block-woocommerce-cart label,
.wp-block-woocommerce-checkout label,
.wc-block-cart label,
.wc-block-checkout label,
.wc-block-components-checkbox__label,
.wc-block-components-radio-control__label {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.8rem, .88vw, .92rem) !important;
    line-height:1.32 !important;
    font-weight:300 !important;
    color:#2e1a03 !important;
}

/* ==========================================================================
   9. INPUTS / SELECTS / TEXTAREAS
   ========================================================================== */

.woocommerce input:not([type="checkbox"]):not([type="radio"]),
.woocommerce-page .woocommerce input:not([type="checkbox"]):not([type="radio"]),
.woocommerce select,
.woocommerce-page .woocommerce select,
.woocommerce textarea,
.woocommerce-page .woocommerce textarea,
.wp-block-woocommerce-cart input:not([type="checkbox"]):not([type="radio"]),
.wp-block-woocommerce-checkout input:not([type="checkbox"]):not([type="radio"]),
.wp-block-woocommerce-cart select,
.wp-block-woocommerce-checkout select,
.wp-block-woocommerce-cart textarea,
.wp-block-woocommerce-checkout textarea,
.wc-block-components-text-input input,
.wc-block-components-combobox-control input {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.84rem, .92vw, .96rem) !important;
    line-height:1.3 !important;
    color:#2e1a03 !important;
    box-sizing:border-box !important;
}

/* ==========================================================================
   10. CHECKBOX — WHITE BOX / BLACK CHECK
   ========================================================================== */

.woocommerce input[type="checkbox"],
.woocommerce-page .woocommerce input[type="checkbox"],
.wp-block-woocommerce-cart input[type="checkbox"],
.wp-block-woocommerce-checkout input[type="checkbox"],
.wc-block-cart input[type="checkbox"],
.wc-block-checkout input[type="checkbox"],
.wc-block-components-checkbox .wc-block-components-checkbox__input {
    -webkit-appearance:none !important;
    appearance:none !important;
    position:relative !important;
    width:16px !important;
    height:16px !important;
    min-width:16px !important;
    min-height:16px !important;
    max-width:16px !important;
    max-height:16px !important;
    margin:2px 8px 0 0 !important;
    padding:0 !important;
    border:1px solid rgba(46,26,3,.55) !important;
    border-radius:3px !important;
    background:#ffffff !important;
    box-shadow:none !important;
    vertical-align:top !important;
    box-sizing:border-box !important;
}

.woocommerce input[type="checkbox"]:checked,
.woocommerce-page .woocommerce input[type="checkbox"]:checked,
.wp-block-woocommerce-cart input[type="checkbox"]:checked,
.wp-block-woocommerce-checkout input[type="checkbox"]:checked,
.wc-block-cart input[type="checkbox"]:checked,
.wc-block-checkout input[type="checkbox"]:checked,
.wc-block-components-checkbox .wc-block-components-checkbox__input:checked {
    background:#ffffff !important;
    border-color:#2e1a03 !important;
}

.woocommerce input[type="checkbox"]:checked::after,
.woocommerce-page .woocommerce input[type="checkbox"]:checked::after,
.wp-block-woocommerce-cart input[type="checkbox"]:checked::after,
.wp-block-woocommerce-checkout input[type="checkbox"]:checked::after,
.wc-block-cart input[type="checkbox"]:checked::after,
.wc-block-checkout input[type="checkbox"]:checked::after,
.wc-block-components-checkbox .wc-block-components-checkbox__input:checked::after {
    content:"" !important;
    position:absolute !important;
    left:50% !important;
    top:45% !important;
    width:4px !important;
    height:7px !important;
    border:solid #2e1a03 !important;
    border-width:0 1.8px 1.8px 0 !important;
    transform:translate(-50%,-50%) rotate(45deg) !important;
    box-sizing:border-box !important;
}

.wc-block-components-checkbox .wc-block-components-checkbox__mark {
    display:none !important;
}

/* ==========================================================================
   11. RADIO BUTTON — SHIPPING / PAYMENT ALIGNMENT
   ========================================================================== */

/* Base radio: always left of its own label, never absolutely positioned. */
.wc-block-components-radio-control__option {
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    width:100% !important;
    box-sizing:border-box !important;
}

.woocommerce input[type="radio"],
.woocommerce-page .woocommerce input[type="radio"],
.wp-block-woocommerce-cart input[type="radio"],
.wp-block-woocommerce-checkout input[type="radio"],
.wc-block-cart input[type="radio"],
.wc-block-checkout input[type="radio"],
.wc-block-components-radio-control .wc-block-components-radio-control__input {
    -webkit-appearance:none !important;
    appearance:none !important;
    position:relative !important;
    inset:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    transform:none !important;
    flex:0 0 16px !important;
    align-self:center !important;
    width:16px !important;
    height:16px !important;
    min-width:16px !important;
    min-height:16px !important;
    max-width:16px !important;
    max-height:16px !important;
    margin:0 !important;
    padding:0 !important;
    border:1px solid rgba(46,26,3,.55) !important;
    border-radius:50% !important;
    background:#ffffff !important;
    box-shadow:none !important;
    vertical-align:middle !important;
    box-sizing:border-box !important;
}

.wc-block-components-radio-control__option-layout,
.wc-block-components-radio-control__label-group {
    position:static !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
}

.wc-block-components-radio-control__option-layout {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:14px !important;
}

.wc-block-components-radio-control__label {
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    line-height:1.3 !important;
}

.woocommerce input[type="radio"]:checked::after,
.woocommerce-page .woocommerce input[type="radio"]:checked::after,
.wp-block-woocommerce-cart input[type="radio"]:checked::after,
.wp-block-woocommerce-checkout input[type="radio"]:checked::after,
.wc-block-cart input[type="radio"]:checked::after,
.wc-block-checkout input[type="radio"]:checked::after,
.wc-block-components-radio-control .wc-block-components-radio-control__input:checked::after {
    content:"" !important;
    position:absolute !important;
    left:50% !important;
    top:50% !important;
    width:6px !important;
    height:6px !important;
    border-radius:50% !important;
    background:#2e1a03 !important;
    transform:translate(-50%,-50%) !important;
}

/* --------------------------------------------------------------------------
   Spedizione: stesso asse sinistro dei metodi di pagamento.
   Nome vicino al radio, costo all'estrema destra con spazio corretto.
   -------------------------------------------------------------------------- */

.wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-radio-control,
.wp-block-woocommerce-checkout-shipping-method-block .wc-block-components-radio-control,
.wc-block-components-shipping-rates-control {
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
}

.wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-radio-control__option,
.wp-block-woocommerce-checkout-shipping-method-block .wc-block-components-radio-control__option,
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__option {
    padding:14px 16px !important;
    box-sizing:border-box !important;
}

.wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-radio-control__option-layout,
.wp-block-woocommerce-checkout-shipping-method-block .wc-block-components-radio-control__option-layout,
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__option-layout {
    justify-content:space-between !important;
    gap:18px !important;
}

.wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-radio-control__label,
.wp-block-woocommerce-checkout-shipping-method-block .wc-block-components-radio-control__label,
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__label {
    margin-right:auto !important;
}

/* Prezzo spedizione: sempre separato dal testo "Spedizione". */
.wc-block-components-shipping-rates-control .wc-block-components-formatted-money-amount,
.wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-formatted-money-amount,
.wp-block-woocommerce-checkout-shipping-method-block .wc-block-components-formatted-money-amount {
    margin-left:auto !important;
    padding-left:12px !important;
    white-space:nowrap !important;
}

/* --------------------------------------------------------------------------
   Pagamento: padding uniforme e contenuto carta centrato nel bordo esterno.
   -------------------------------------------------------------------------- */

.wc-block-components-radio-control-accordion-option {
    box-sizing:border-box !important;
    padding:0 !important;
}

.wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control__option,
.wc-block-components-radio-control-accordion-option .wc-block-components-radio-control__option {
    padding:14px 16px !important;
    box-sizing:border-box !important;
}

/* "Metodi di pagamento / Modalità di prova" segue l'asse del radio/box carta. */
.wp-block-woocommerce-checkout-payment-block .wc-block-components-checkout-step__description,
.wp-block-woocommerce-checkout-payment-block .wc-block-components-payment-methods__description {
    margin-left:16px !important;
    margin-right:16px !important;
    margin-bottom:14px !important;
    text-align:left !important;
}

/* La frase istruttiva sulla carta è centrata rispetto al blocco carta. */
.wp-block-woocommerce-checkout-payment-block .wc-block-components-radio-control-accordion-content > p:first-child,
.wp-block-woocommerce-checkout-payment-block .wc-block-components-radio-control-accordion-content .wc-block-components-payment-method-label + p {
    text-align:center !important;
    margin:0 0 14px 0 !important;
}

/* Riquadro bianco carta: aria identica sui quattro lati. */
.wc-block-components-radio-control-accordion-content {
    width:auto !important;
    max-width:none !important;
    margin:0 16px 16px 16px !important;
    padding:16px !important;
    box-sizing:border-box !important;
}

.wc-block-components-radio-control-accordion-content > * {
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
}

/* ==========================================================================
   12. PRODUCT TEXT / ORDER SUMMARY
   ========================================================================== */

.wc-block-components-product-name {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.82rem, .92vw, .96rem) !important;
    line-height:1.24 !important;
    font-weight:400 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
    text-align:left !important;
    -webkit-hyphens:none !important;
    -moz-hyphens:none !important;
    hyphens:none !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
}

.wc-block-components-product-metadata,
.wc-block-components-product-details,
.wc-block-components-product-description,
.wc-block-components-order-summary-item__description {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.72rem, .8vw, .82rem) !important;
    line-height:1.34 !important;
    font-weight:300 !important;
    color:rgba(46,26,3,.7) !important;
    text-align:left !important;
    -webkit-hyphens:none !important;
    -moz-hyphens:none !important;
    hyphens:none !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
}

/* ==========================================================================
   13. TABLES / MY ACCOUNT
   ========================================================================== */

.woocommerce table,
.woocommerce-page .woocommerce table,
.wp-block-woocommerce-cart table,
.wc-block-cart table {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.8rem, .9vw, .94rem) !important;
    line-height:1.38 !important;
}

.woocommerce table th,
.woocommerce-page .woocommerce table th,
.wp-block-woocommerce-cart table th,
.wc-block-cart table th {
    font-size:clamp(.76rem, .84vw, .88rem) !important;
    line-height:1.3 !important;
    font-weight:400 !important;
}

.woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-content {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.84rem, .92vw, .96rem) !important;
    line-height:1.4 !important;
}

/* ==========================================================================
   14. BUTTONS / NOTICES — APIMIEL BROWN
   ========================================================================== */

/*
 * Tutti i normali pulsanti WooCommerce che il browser/Woo renderebbe
 * scuri/neri usano il marrone Apimiel.
 * I pulsanti brandizzati dei wallet express (Apple Pay / Google Pay / Link)
 * non vengono alterati.
 */
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce-page .woocommerce button.button,
.woocommerce-page .woocommerce a.button,
.woocommerce-page .woocommerce input.button,
.wp-block-woocommerce-cart .wc-block-components-button:not(.wc-block-components-express-payment__event-button),
.wp-block-woocommerce-checkout .wc-block-components-button:not(.wc-block-components-express-payment__event-button),
.wc-block-cart__submit-button,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button,
.wc-block-components-checkout-place-order-button,
.wc-block-components-totals-coupon__button {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.8rem, .88vw, .92rem) !important;
    line-height:1.25 !important;
    background:#9e5f18 !important;
    border-color:#9e5f18 !important;
    color:#ffffff !important;
    box-shadow:none !important;
}

@media (hover:hover) and (pointer:fine) {
    .woocommerce button.button:hover,
    .woocommerce a.button:hover,
    .woocommerce input.button:hover,
    .woocommerce-page .woocommerce button.button:hover,
    .woocommerce-page .woocommerce a.button:hover,
    .woocommerce-page .woocommerce input.button:hover,
    .wp-block-woocommerce-cart .wc-block-components-button:not(.wc-block-components-express-payment__event-button):hover,
    .wp-block-woocommerce-checkout .wc-block-components-button:not(.wc-block-components-express-payment__event-button):hover,
    .wc-block-cart__submit-button:hover,
    .wc-block-components-checkout-place-order-button:hover,
    .wc-block-components-totals-coupon__button:hover {
        background:#7f4b12 !important;
        border-color:#7f4b12 !important;
        color:#ffffff !important;
    }
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.wc-block-components-notice-banner {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.8rem, .88vw, .92rem) !important;
    line-height:1.38 !important;
}

/* ==========================================================================
   15. GENERIC WOOCOMMERCE STATES / EMPTY CART / PRODUCT COLLECTIONS
   ========================================================================== */

/*
 * Questa sezione uniforma gli stati WooCommerce che possono comparire
 * fuori dal normale flusso checkout/account:
 * - carrello vuoto
 * - suggerimenti / cross-sell / product collection
 * - prezzi generici Woo
 * - login / password reset
 * - messaggi e call-to-action
 */

/* Empty cart / empty states */
.wp-block-woocommerce-empty-cart-block,
.wc-block-cart__empty-cart,
.woocommerce-cart .cart-empty,
.woocommerce-info,
.woocommerce-message,
.woocommerce-error {
    font-family:"Lato", sans-serif !important;
    color:#2e1a03 !important;
}

.wp-block-woocommerce-empty-cart-block,
.wc-block-cart__empty-cart {
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
}

.wc-block-cart__empty-cart__title,
.wp-block-woocommerce-empty-cart-block h2,
.wp-block-woocommerce-empty-cart-block h3 {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(1rem, 1.1vw, 1.15rem) !important;
    line-height:1.25 !important;
    font-weight:400 !important;
    color:#2e1a03 !important;
    text-transform:none !important;
    letter-spacing:0 !important;
    text-align:left !important;
}

/* Product collections / suggestions */
.woocommerce ul.products,
.woocommerce-page ul.products,
.wc-block-grid__products,
.wp-block-woocommerce-product-collection .wc-block-product-template,
.wp-block-woocommerce-cart-cross-sells-block .wc-block-product-template {
    font-family:"Lato", sans-serif !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.wc-block-grid__product,
.wp-block-woocommerce-product-collection .wc-block-product,
.wp-block-woocommerce-cart-cross-sells-block .wc-block-product {
    font-family:"Lato", sans-serif !important;
    color:#2e1a03 !important;
    box-sizing:border-box !important;
}

/* Generic product titles stay compact, never editorial-size. */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product-title,
.wp-block-woocommerce-product-collection .wp-block-post-title,
.wp-block-woocommerce-cart-cross-sells-block .wp-block-post-title {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.88rem, .98vw, 1rem) !important;
    line-height:1.25 !important;
    font-weight:400 !important;
    color:#2e1a03 !important;
    text-transform:none !important;
    letter-spacing:0 !important;
    text-align:left !important;
}

/* All generic Woo product prices: normal reading size, not 30/40px. */
.woocommerce .price,
.woocommerce-page .price,
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price,
.wc-block-components-product-price,
.wc-block-grid__product-price,
.wp-block-woocommerce-product-price,
.wc-block-product .price,
.wp-block-woocommerce-product-collection .wc-block-components-product-price,
.wp-block-woocommerce-cart-cross-sells-block .wc-block-components-product-price {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.84rem, .95vw, .98rem) !important;
    line-height:1.3 !important;
    font-weight:400 !important;
    color:#2e1a03 !important;
    text-decoration:none !important;
}

.woocommerce .price del,
.woocommerce-page .price del,
.wc-block-components-product-price del,
.wc-block-grid__product-price del {
    opacity:.58 !important;
    font-weight:300 !important;
}

.woocommerce .price ins,
.woocommerce-page .price ins,
.wc-block-components-product-price ins,
.wc-block-grid__product-price ins {
    background:transparent !important;
    text-decoration:none !important;
    font-weight:500 !important;
}

/* Generic Woo buttons use Apimiel brown. */
.wp-block-woocommerce-empty-cart-block .wp-element-button,
.wp-block-woocommerce-product-collection .wp-element-button,
.wp-block-woocommerce-cart-cross-sells-block .wp-element-button,
.wc-block-grid__product-add-to-cart .wp-block-button__link,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button {
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.8rem, .88vw, .92rem) !important;
    line-height:1.25 !important;
    font-weight:400 !important;
    background:#9e5f18 !important;
    border:1px solid #9e5f18 !important;
    color:#fff !important;
    box-shadow:none !important;
    text-decoration:none !important;
}

@media (hover:hover) and (pointer:fine) {
    .wp-block-woocommerce-empty-cart-block .wp-element-button:hover,
    .wp-block-woocommerce-product-collection .wp-element-button:hover,
    .wp-block-woocommerce-cart-cross-sells-block .wp-element-button:hover,
    .wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
    .woocommerce ul.products li.product .button:hover,
    .woocommerce-page ul.products li.product .button:hover {
        background:#7f4b12 !important;
        border-color:#7f4b12 !important;
        color:#fff !important;
    }
}

/* Login / lost password / registration: one-column and same form language. */
.woocommerce-form-login,
.woocommerce-form-register,
.woocommerce-ResetPassword {
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    box-sizing:border-box !important;
}

.woocommerce-form-login .form-row,
.woocommerce-form-register .form-row,
.woocommerce-ResetPassword .form-row {
    float:none !important;
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
}

/* Product images in Woo-generated suggestions stay proportional. */
.woocommerce ul.products li.product img,
.wc-block-grid__product-image img,
.wp-block-woocommerce-product-collection img,
.wp-block-woocommerce-cart-cross-sells-block img {
    max-width:100% !important;
    height:auto !important;
}

/* Mobile: Woo suggestions become single-column for maximum clarity. */
@media screen and (max-width:600px) {
    .woocommerce ul.products[class*=columns-] li.product,
    .woocommerce-page ul.products[class*=columns-] li.product {
        float:none !important;
        clear:both !important;
        width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
    }
}

/* ==========================================================================
   16. ORDER RECEIVED / THANK YOU — ONE COLUMN
   ========================================================================== */

/*
 * Ordine visivo:
 *  1. Messaggio di conferma
 *  2. Dati principali dell'ordine
 *  3. Dettagli ordine
 *  4. Indirizzo di fatturazione
 *  5. Indirizzo di spedizione
 *
 * Tutto resta nella stessa colonna WooCommerce centrale.
 */

.woocommerce-order {
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
    display:flex !important;
    flex-direction:column !important;
}

/* 1. Conferma ordine in apertura, non in mezzo alla pagina. */
.woocommerce-order > .woocommerce-notice,
.woocommerce-order > .woocommerce-thankyou-order-received {
    order:10 !important;
    margin:0 0 1.6rem 0 !important;
    padding:1rem 1.1rem !important;
    border:1px solid rgba(158,95,24,.28) !important;
    border-left:4px solid #9e5f18 !important;
    background:rgba(158,95,24,.06) !important;
    color:#2e1a03 !important;
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.92rem, 1vw, 1rem) !important;
    line-height:1.4 !important;
    font-weight:400 !important;
    box-sizing:border-box !important;
}

/* 2. Dati principali ordine: niente lista compressa/orizzontale. */
.woocommerce-order .woocommerce-order-overview {
    order:20 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:0 !important;
    width:100% !important;
    margin:0 0 2rem 0 !important;
    padding:0 !important;
    border-top:1px solid rgba(46,26,3,.15) !important;
    box-sizing:border-box !important;
    list-style:none !important;
}

.woocommerce-order .woocommerce-order-overview li {
    float:none !important;
    width:100% !important;
    margin:0 !important;
    padding:.8rem 0 !important;
    border:0 !important;
    border-bottom:1px solid rgba(46,26,3,.12) !important;
    box-sizing:border-box !important;
    font-family:"Lato", sans-serif !important;
    font-size:.78rem !important;
    line-height:1.25 !important;
    font-weight:400 !important;
    color:rgba(46,26,3,.68) !important;
    text-transform:uppercase !important;
    letter-spacing:.035em !important;
}

.woocommerce-order .woocommerce-order-overview li strong {
    display:block !important;
    margin-top:.3rem !important;
    color:#2e1a03 !important;
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.9rem, 1vw, 1rem) !important;
    line-height:1.3 !important;
    font-weight:400 !important;
    text-transform:none !important;
    letter-spacing:0 !important;
}

/* 3. Dettagli ordine */
.woocommerce-order .woocommerce-order-details {
    order:30 !important;
    width:100% !important;
    margin:0 0 2rem 0 !important;
    box-sizing:border-box !important;
}

.woocommerce-order .woocommerce-order-details__title,
.woocommerce-order .woocommerce-column__title {
    margin:0 0 .8rem 0 !important;
    padding:0 !important;
    font-family:"Lato", sans-serif !important;
    font-size:clamp(1rem, 1.1vw, 1.12rem) !important;
    line-height:1.25 !important;
    font-weight:400 !important;
    color:#2e1a03 !important;
    text-transform:none !important;
    letter-spacing:0 !important;
}

.woocommerce-order .woocommerce-table--order-details {
    width:100% !important;
    margin:0 !important;
    border-collapse:collapse !important;
    border:0 !important;
    border-radius:0 !important;
}

.woocommerce-order .woocommerce-table--order-details th,
.woocommerce-order .woocommerce-table--order-details td {
    padding:.75rem .35rem !important;
    border:0 !important;
    border-bottom:1px solid rgba(46,26,3,.12) !important;
    vertical-align:top !important;
    text-align:left !important;
}

.woocommerce-order .woocommerce-table--order-details th:last-child,
.woocommerce-order .woocommerce-table--order-details td:last-child {
    text-align:right !important;
    white-space:nowrap !important;
}

.woocommerce-order .woocommerce-table--order-details tfoot th {
    font-weight:400 !important;
}

.woocommerce-order .woocommerce-table--order-details tfoot td {
    font-weight:400 !important;
}

/* 4-5. Indirizzi: sempre uno sotto l'altro, coerenti con il resto e-commerce. */
.woocommerce-order .woocommerce-customer-details {
    order:40 !important;
    width:100% !important;
    margin:0 !important;
    box-sizing:border-box !important;
}

.woocommerce-order .woocommerce-customer-details .woocommerce-columns {
    display:block !important;
    width:100% !important;
    margin:0 !important;
}

.woocommerce-order .woocommerce-customer-details .woocommerce-column {
    float:none !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 1.6rem 0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
}

.woocommerce-order .woocommerce-customer-details address {
    margin:0 !important;
    padding:1rem !important;
    border:1px solid rgba(46,26,3,.14) !important;
    border-radius:6px !important;
    background:rgba(255,255,255,.28) !important;
    color:#2e1a03 !important;
    font-family:"Lato", sans-serif !important;
    font-size:clamp(.86rem, .95vw, .96rem) !important;
    line-height:1.55 !important;
    font-style:normal !important;
    box-sizing:border-box !important;
}

/* Eventuali elementi gateway/status residui non devono creare icone giganti. */
.woocommerce-order .woocommerce-order-downloads,
.woocommerce-order .woocommerce-bacs-bank-details {
    order:35 !important;
    width:100% !important;
    margin:0 0 2rem 0 !important;
}

/* Clearfix Woo non deve alterare il flusso verticale della pagina ricevuta. */
.woocommerce-order::before,
.woocommerce-order::after,
.woocommerce-order .woocommerce-customer-details::before,
.woocommerce-order .woocommerce-customer-details::after {
    content:none !important;
}

/* ==========================================================================
   17. MOBILE — SAME ONE-COLUMN SYSTEM, SMALLER OUTER WIDTH
   ========================================================================== */

@media screen and (max-width:600px) {

    .wp-block-woocommerce-checkout-express-payment-block .wc-block-components-express-payment__event-buttons {
        grid-template-columns:1fr !important;
        gap:10px !important;
        width:calc(100% - 24px) !important;
        max-width:none !important;
        margin-left:auto !important;
        margin-right:auto !important;
    }

    .woocommerce,
    .woocommerce-page .woocommerce,
    .wp-block-woocommerce-cart,
    .wp-block-woocommerce-checkout,
    .wc-block-cart,
    .wc-block-checkout {
        width:100% !important;
        max-width:100% !important;
    }

    .woocommerce h1,
    .woocommerce-page .woocommerce h1,
    .wp-block-woocommerce-cart h1,
    .wp-block-woocommerce-checkout h1,
    .wc-block-cart h1,
    .wc-block-checkout h1 {
        font-size:1.35rem !important;
    }

    .woocommerce h2,
    .woocommerce-page .woocommerce h2,
    .wp-block-woocommerce-cart h2,
    .wp-block-woocommerce-checkout h2,
    .wc-block-cart h2,
    .wc-block-checkout h2,
    .wc-block-components-title,
    .wc-block-components-checkout-step__title {
        font-size:.94rem !important;
    }
.woocommerce input[type="checkbox"],
    .woocommerce-page .woocommerce input[type="checkbox"],
    .wp-block-woocommerce-cart input[type="checkbox"],
    .wp-block-woocommerce-checkout input[type="checkbox"],
    .wc-block-cart input[type="checkbox"],
    .wc-block-checkout input[type="checkbox"],
    .wc-block-components-checkbox .wc-block-components-checkbox__input,
    .woocommerce input[type="radio"],
    .woocommerce-page .woocommerce input[type="radio"],
    .wp-block-woocommerce-cart input[type="radio"],
    .wp-block-woocommerce-checkout input[type="radio"],
    .wc-block-cart input[type="radio"],
    .wc-block-checkout input[type="radio"],
    .wc-block-components-radio-control .wc-block-components-radio-control__input {
        width:15px !important;
        height:15px !important;
        min-width:15px !important;
        min-height:15px !important;
        max-width:15px !important;
        max-height:15px !important;
        flex-basis:15px !important;
    }
}

/* ==========================================================================
   APIMIEL 1.7.3 — EMPTY CART
   ========================================================================== */
body.apimiel-empty-cart .wp-block-woocommerce-empty-cart-block,
body.apimiel-empty-cart .wc-block-cart__empty-cart {
    text-align:center !important;
    padding:clamp(34px,5vw,70px) clamp(18px,4vw,54px) !important;
}
body.apimiel-empty-cart .wc-block-cart__empty-cart__icon,
body.apimiel-empty-cart .wc-block-cart__empty-cart__image,
body.apimiel-empty-cart .wc-block-components-empty-cart__icon {
    display:none !important;
}
body.apimiel-empty-cart .wc-block-cart__empty-cart__title,
body.apimiel-empty-cart .wp-block-woocommerce-empty-cart-block > h2,
body.apimiel-empty-cart .wp-block-woocommerce-empty-cart-block > h3 {
    width:100% !important;
    margin:0 auto 34px !important;
    text-align:center !important;
    font-size:clamp(1.25rem,1.7vw,1.65rem) !important;
    line-height:1.25 !important;
    font-weight:300 !important;
    letter-spacing:.02em !important;
}
body.apimiel-empty-cart .wp-block-woocommerce-empty-cart-block h2:not(.wc-block-cart__empty-cart__title),
body.apimiel-empty-cart .wp-block-woocommerce-empty-cart-block h3:not(.wc-block-cart__empty-cart__title) {
    text-align:center !important;
    margin:24px auto 28px !important;
}
body.apimiel-empty-cart .wc-block-product-template,
body.apimiel-empty-cart .wc-block-grid__products {
    display:grid !important;
    grid-template-columns:repeat(auto-fit,minmax(180px,220px)) !important;
    justify-content:center !important;
    align-items:stretch !important;
    gap:30px 22px !important;
    padding:0 !important;
    margin:0 auto !important;
    list-style:none !important;
}
body.apimiel-empty-cart .wc-block-product,
body.apimiel-empty-cart .wc-block-grid__product {
    width:100% !important;
    max-width:220px !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
    text-align:center !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
}
body.apimiel-empty-cart .wc-block-product::marker,
body.apimiel-empty-cart .wc-block-grid__product::marker { content:"" !important; }
body.apimiel-empty-cart .wc-block-product img,
body.apimiel-empty-cart .wc-block-grid__product img {
    width:100% !important;
    aspect-ratio:1/1 !important;
    object-fit:cover !important;
    display:block !important;
    margin:0 auto 14px !important;
}
body.apimiel-empty-cart .wc-block-product .wp-block-post-title,
body.apimiel-empty-cart .wc-block-grid__product-title,
body.apimiel-empty-cart .wc-block-product .wc-block-components-product-price,
body.apimiel-empty-cart .wc-block-grid__product-price {
    text-align:center !important;
}
body.apimiel-empty-cart .wc-block-product .wp-block-post-title,
body.apimiel-empty-cart .wc-block-grid__product-title {
    min-height:2.5em !important;
    margin:0 0 6px !important;
}
body.apimiel-empty-cart .wc-block-product .wc-block-components-product-price,
body.apimiel-empty-cart .wc-block-grid__product-price {
    margin:0 0 14px !important;
}
/* Stable CTA geometry: hover/focus/active never changes dimensions. */
body.apimiel-empty-cart .wp-element-button,
body.apimiel-empty-cart .wc-block-grid__product-add-to-cart .wp-block-button__link,
body.apimiel-empty-cart .wc-block-components-product-button__button,
body.apimiel-empty-cart a.add_to_cart_button {
    box-sizing:border-box !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:148px !important;
    min-height:40px !important;
    padding:9px 18px !important;
    margin:0 auto !important;
    border:1px solid #9e5f18 !important;
    border-radius:20px !important;
    line-height:20px !important;
    transform:none !important;
    scale:1 !important;
    box-shadow:none !important;
    transition:background-color .18s ease,border-color .18s ease,color .18s ease !important;
}
body.apimiel-empty-cart .wp-element-button:hover,
body.apimiel-empty-cart .wp-element-button:focus,
body.apimiel-empty-cart .wp-element-button:active,
body.apimiel-empty-cart .wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
body.apimiel-empty-cart .wc-block-grid__product-add-to-cart .wp-block-button__link:focus,
body.apimiel-empty-cart .wc-block-grid__product-add-to-cart .wp-block-button__link:active,
body.apimiel-empty-cart .wc-block-components-product-button__button:hover,
body.apimiel-empty-cart .wc-block-components-product-button__button:focus,
body.apimiel-empty-cart .wc-block-components-product-button__button:active,
body.apimiel-empty-cart a.add_to_cart_button:hover,
body.apimiel-empty-cart a.add_to_cart_button:focus,
body.apimiel-empty-cart a.add_to_cart_button:active {
    min-width:148px !important;
    min-height:40px !important;
    padding:9px 18px !important;
    border-width:1px !important;
    transform:none !important;
    scale:1 !important;
    box-shadow:none !important;
    outline-offset:3px !important;
}
@media screen and (max-width:600px) {
  body.apimiel-empty-cart .wc-block-product-template,
  body.apimiel-empty-cart .wc-block-grid__products {grid-template-columns:minmax(0,260px) !important;}
}

/* ========================================================================== 
   APIMIEL 1.7.4 — EMPTY CART: authoritative custom template
   ========================================================================== */
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-cart-page {
    width:100% !important;
    max-width:1180px !important;
    margin:0 auto !important;
    padding:clamp(42px,6vw,84px) 24px !important;
    box-sizing:border-box !important;
    text-align:center !important;
    font-family:"Lato",sans-serif !important;
    color:#2e1a03 !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-cart-page__title,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-cart-page__subtitle {
    display:block !important;
    width:100% !important;
    max-width:none !important;
    float:none !important;
    clear:both !important;
    padding:0 !important;
    text-align:center !important;
    color:#2e1a03 !important;
    font-family:"Lato",sans-serif !important;
    font-weight:300 !important;
    text-transform:none !important;
    letter-spacing:.01em !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-cart-page__title {
    margin:0 auto clamp(42px,5vw,68px) !important;
    font-size:clamp(1.35rem,2vw,1.9rem) !important;
    line-height:1.25 !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-cart-page__subtitle {
    margin:0 auto 30px !important;
    font-size:clamp(1.05rem,1.45vw,1.35rem) !important;
    line-height:1.3 !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-cart-products {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:stretch !important;
    gap:34px 24px !important;
    width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    list-style:none !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product {
    flex:0 1 220px !important;
    width:220px !important;
    max-width:220px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    list-style:none !important;
    text-align:center !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    background:transparent !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product::before,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product::after,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product::marker {content:none !important;display:none !important;}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__image {
    display:block !important;
    width:220px !important;
    height:220px !important;
    margin:0 auto 15px !important;
    padding:0 !important;
    overflow:hidden !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__image img {
    display:block !important;
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    padding:0 !important;
    object-fit:cover !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__name {
    width:100% !important;
    min-height:2.5em !important;
    margin:0 auto 6px !important;
    padding:0 !important;
    text-align:center !important;
    font:400 1rem/1.25 "Lato",sans-serif !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__name a {color:#2e1a03 !important;text-decoration:none !important;}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__price {
    width:100% !important;
    min-height:1.5em !important;
    margin:0 auto 16px !important;
    text-align:center !important;
    font:400 .95rem/1.4 "Lato",sans-serif !important;
    color:#2e1a03 !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button:link,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button:visited,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button:hover,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button:focus,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button:active {
    box-sizing:border-box !important;
    display:inline-flex !important;
    flex:0 0 40px !important;
    width:220px !important;
    min-width:0 !important;
    max-width:100% !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    margin:auto auto 0 !important;
    padding:0 20px !important;
    align-items:center !important;
    justify-content:center !important;
    border:1px solid #9e5f18 !important;
    border-radius:20px !important;
    background:transparent !important;
    color:#7f4b12 !important;
    font:400 .84rem/38px "Lato",sans-serif !important;
    text-align:center !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    transform:none !important;
    scale:1 !important;
    box-shadow:none !important;
    outline-offset:3px !important;
    transition:background-color .16s ease,color .16s ease,border-color .16s ease !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button:hover,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button:focus,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button:active {
    background:#9e5f18 !important;
    border-color:#9e5f18 !important;
    color:#fff !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button.added::after,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button.loading::after {position:static !important;margin-left:7px !important;}
@media screen and (max-width:600px) {
    body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-cart-page{padding:36px 18px 56px !important;}
    body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product{flex-basis:min(100%,260px) !important;width:min(100%,260px) !important;max-width:260px !important;}
    body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__image{width:min(100%,260px) !important;height:auto !important;aspect-ratio:1/1 !important;}
}

/* 1.7.5: fixed CTA geometry and no inherited heading decoration. */
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button {
    width:220px !important;
    min-width:0 !important;
    position:relative !important;
    inset:auto !important;
    float:none !important;
    letter-spacing:normal !important;
    animation:none !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button::before,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button::after,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-cart-page h1::before,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-cart-page h1::after,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-cart-page h2::before,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-cart-page h2::after,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__name::before,
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__name::after {
    content:none !important;
    display:none !important;
}
body.woocommerce-cart :is(#contenitore_contenuto_post_articolo, .woocommerce) .apimiel-empty-product__button:focus-visible {
    outline:2px solid #7f4b12 !important;
    outline-offset:3px !important;
}


/* ==========================================================================\n * APIMIEL v1.7.25 — Product-card hierarchy\n * ========================================================================== */

/* Product-card prices: 110% of the previous visual size and clearly weighted. */
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price,
.wc-block-grid__product-price,
.wp-block-woocommerce-product-collection .wc-block-components-product-price,
.wp-block-woocommerce-cart-cross-sells-block .wc-block-components-product-price {
    font-size:clamp(.924rem, 1.045vw, 1.078rem) !important;
    font-weight:700 !important;
}

/* Out-of-stock CTA/status: same rule in every language; the translated label
   is supplied by Woo/WPML, presentation is always red and uppercase. */
.woocommerce ul.products li.product.outofstock .button,
.woocommerce-page ul.products li.product.outofstock .button {
    background:transparent !important;
    border-color:transparent !important;
    color:#c62828 !important;
    font-weight:700 !important;
    text-transform:uppercase !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-shadow:none !important;
}

@media (hover:hover) and (pointer:fine) {
    .woocommerce ul.products li.product.outofstock .button:hover,
    .woocommerce-page ul.products li.product.outofstock .button:hover {
        background:transparent !important;
        border-color:transparent !important;
        color:#c62828 !important;
    }
}

/* The old cards could occupy about 6–7 lines with their introductory text.
   Keep roughly half of that space and ellipsize the remainder. */
.woocommerce ul.products li.product .apimiel-product-card-excerpt,
.woocommerce-page ul.products li.product .apimiel-product-card-excerpt {
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
    text-overflow:ellipsis;
    line-clamp:3;
}

/* APIMIEL 1.7.64 — Cart/checkout surface and portrait product rows.
   IMPORTANT: header.php currently outputs a plain <body> without body_class(),
   so body.woocommerce-cart and body.woocommerce-checkout NEVER match.
   Scope by the real commerce shell and WooCommerce Block markup instead. */

/* Pure white across the whole cart surface, regardless of the 'Info acquisti'
   colour setting. Empty cart was already white: keep it consistent with filled cart.
   Checkout is white until the order-received screen (no payment result changes). */
#contenitore_contenuto_post_articolo.apimiel-commerce-page-shell #cont_pagina_normale,
#cont_pagina_normale:has(.wc-block-checkout),
#cont_pagina_normale:has(.wp-block-woocommerce-checkout) {
    background:#fff !important;
    background-color:#fff !important;
}
#contenitore_contenuto_post_articolo.apimiel-commerce-page-shell .wc-block-cart,
#contenitore_contenuto_post_articolo.apimiel-commerce-page-shell .wc-block-cart__main,
#contenitore_contenuto_post_articolo.apimiel-commerce-page-shell .wc-block-cart__sidebar,
#cont_pagina_normale .wc-block-checkout {
    background-color:transparent !important;
}

/* ============================================================================
   APIMIEL v1.7.66 — My Account: mobile portrait login + registration
   Scoped to the actual My Account template so no cart/checkout or home impact.
   WooCommerce remains responsible for form markup, validation and submissions.
   ============================================================================ */
@media screen and (max-width:600px) {
  /* Give the page a genuine reading column; the theme's default 70% panel plus
     two layers of padding left too little room for real form controls. */
  #contenitore_contenuto_post_articolo.apimiel-account-page-shell #cont_pagina_normale {
    width:calc(100% - 28px) !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:28px 18px clamp(215px,55vw,270px) !important;
    margin:30px auto 100px !important;
    box-sizing:border-box !important;
    border-radius:18px !important;
  }
  #contenitore_contenuto_post_articolo.apimiel-account-page-shell #cont_pagina_normale > .padding_txt {
    padding:0 !important;
    margin:0 !important;
    width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
  .apimiel-account-page-shell .woocommerce,
  .apimiel-account-page-shell .woocommerce > :is(div,form),
  .apimiel-account-page-shell .woocommerce #customer_login,
  .apimiel-account-page-shell .woocommerce #customer_login > :is(div,section) {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  /* Two distinct vertical sections, never two floated half-width columns. */
  .apimiel-account-page-shell .woocommerce #customer_login {
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
    margin:0 !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login > .u-column1,
  .apimiel-account-page-shell .woocommerce #customer_login > .u-column2,
  .apimiel-account-page-shell .woocommerce #customer_login > .col-1,
  .apimiel-account-page-shell .woocommerce #customer_login > .col-2 {
    display:block !important;
    float:none !important;
    clear:both !important;
    flex:none !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    position:static !important;
    padding:0 !important;
    margin:0 !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login > .u-column2,
  .apimiel-account-page-shell .woocommerce #customer_login > .col-2 {
    border-top:1px solid rgba(46,26,3,.20) !important;
    margin-top:34px !important;
    padding-top:29px !important;
  }
  #contenitore_contenuto_post_articolo.apimiel-account-page-shell .woocommerce #customer_login h2 {
    font-family:"Lato",sans-serif !important;
    font-size:clamp(23px,6vw,29px) !important;
    font-weight:300 !important;
    line-height:1.18 !important;
    letter-spacing:.035em !important;
    margin:0 0 21px !important;
    text-align:left !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login form,
  .apimiel-account-page-shell .woocommerce form.woocommerce-ResetPassword {
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    border:none !important;
    background:transparent !important;
    box-shadow:none !important;
    box-sizing:border-box !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login form .form-row,
  .apimiel-account-page-shell .woocommerce form.woocommerce-ResetPassword .form-row {
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:7px !important;
    float:none !important;
    clear:both !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 0 19px !important;
    padding:0 !important;
    box-sizing:border-box !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login form .form-row label,
  .apimiel-account-page-shell .woocommerce form.woocommerce-ResetPassword .form-row label {
    display:block !important;
    float:none !important;
    width:auto !important;
    font-family:"Lato",sans-serif !important;
    font-size:14px !important;
    font-weight:400 !important;
    line-height:1.4 !important;
    letter-spacing:0 !important;
    text-align:left !important;
    margin:0 !important;
    color:#2e1a03 !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login form .input-text,
  .apimiel-account-page-shell .woocommerce #customer_login form input:not([type="checkbox"]):not([type="hidden"]):not([type="submit"]),
  .apimiel-account-page-shell .woocommerce form.woocommerce-ResetPassword .input-text {
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:48px !important;
    min-height:48px !important;
    padding:11px 13px !important;
    margin:0 !important; /* cancels the legacy global input 2vw 10% margins */
    text-align:left !important;
    border:1px solid #c4b9a8 !important;
    border-radius:7px !important;
    background:#fff !important;
    box-shadow:none !important;
    outline-offset:2px !important;
    color:#2e1a03 !important;
    font-family:"Lato",sans-serif !important;
    font-size:16px !important; /* avoids iOS Safari zoom on focus */
    font-weight:400 !important;
    line-height:1.3 !important;
    opacity:1 !important;
    box-sizing:border-box !important;
    -webkit-appearance:none;
    appearance:none;
  }
  .apimiel-account-page-shell .woocommerce #customer_login form :is(.password-input,.woocommerce-Input--password),
  .apimiel-account-page-shell .woocommerce form.woocommerce-ResetPassword .password-input {
    max-width:100% !important;
    width:100% !important;
    min-width:0 !important;
    position:relative !important;
    display:block !important;
    box-sizing:border-box !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login form .password-input input {
    padding-right:45px !important; /* leave room for Woo's password reveal icon */
  }
  .apimiel-account-page-shell .woocommerce #customer_login form .input-text:focus,
  .apimiel-account-page-shell .woocommerce form.woocommerce-ResetPassword .input-text:focus {
    border-color:#9e5f18 !important;
    outline:2px solid rgba(158,95,24,.24) !important;
  }
  /* "Ricordami" is a full line, separated from the submit button. */
  .apimiel-account-page-shell .woocommerce #customer_login form .form-row label.woocommerce-form-login__rememberme {
    display:inline-flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:9px !important;
    max-width:100% !important;
    width:auto !important;
    margin:3px 0 11px !important;
    line-height:1.4 !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login .woocommerce-form-login__rememberme input[type="checkbox"] {
    display:inline-block !important;
    width:19px !important;
    min-width:19px !important;
    height:19px !important;
    flex:none !important;
    margin:0 !important;
    position:static !important;
    accent-color:#9e5f18 !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login button.woocommerce-button,
  .apimiel-account-page-shell .woocommerce #customer_login button.woocommerce-form-login__submit,
  .apimiel-account-page-shell .woocommerce form.woocommerce-ResetPassword button.button {
    position:static !important;
    display:flex !important;
    float:none !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    max-width:100% !important;
    min-height:48px !important;
    padding:12px 20px !important;
    margin:6px 0 0 !important;
    border-radius:8px !important;
    font-size:16px !important;
    font-weight:500 !important;
    text-align:center !important;
    box-sizing:border-box !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login p.woocommerce-LostPassword,
  .apimiel-account-page-shell .woocommerce #customer_login p.lost_password {
    clear:both !important;
    margin:18px 0 0 !important;
    line-height:1.45 !important;
    text-align:left !important;
    font-size:14px !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login p.woocommerce-LostPassword a,
  .apimiel-account-page-shell .woocommerce #customer_login p.lost_password a {
    color:#895319 !important;
    text-decoration:underline !important;
    text-underline-offset:3px !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login .woocommerce-privacy-policy-text,
  .apimiel-account-page-shell .woocommerce #customer_login .woocommerce-privacy-policy-text :is(p,a),
  .apimiel-account-page-shell .woocommerce #customer_login .woocommerce-form-register > p:not(.form-row) {
    font-size:13px !important;
    line-height:1.52 !important;
    text-align:left !important;
    text-align-last:left !important;
    word-spacing:normal !important;
    overflow-wrap:break-word !important;
    margin-top:0 !important;
    margin-bottom:15px !important;
    -webkit-hyphens:none !important;
    hyphens:none !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login .woocommerce-privacy-policy-text a {
    text-decoration:underline !important;
    text-underline-offset:2px !important;
  }
  /* Don't let the fixed Apimiel footer logo overlap the last interactive
     element at the bottom of the scrollable account page. */
  .apimiel-account-page-shell .apimiel-shipping-banner {
    margin-top:32px !important;
    margin-bottom:25px !important;
  }
  .apimiel-account-page-shell .woocommerce:after,
  .apimiel-account-page-shell #customer_login:after {content:"";display:block;clear:both;}

  /* The decorative logo is normally fixed over the viewport.  In the
     login/register screen it must be at the end of the document instead,
     otherwise it hides fields and the shipping notice as users scroll. */
  body:has(.apimiel-account-page-shell #customer_login) #logo_laterale {
    position:absolute !important;
    bottom:50px !important;
  }
  .apimiel-account-page-shell .woocommerce #customer_login .password-input button.show-password-input {
    position:absolute !important;
    top:50% !important;
    right:12px !important;
    transform:translateY(-50%) !important;
    width:28px !important;
    height:28px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    z-index:1 !important;
  }
}


/* APIMIEL 1.7.67 — carrello leggibile e doppia navigazione, tutte le lingue. */
body:has(.wc-block-cart) .apimiel-commerce-page-title {
    color:#fff !important;
    text-shadow:0 2px 8px rgba(46,26,3,.80), 0 1px 2px rgba(46,26,3,.65) !important;
}
.wc-block-cart__submit-container:has(.apimiel-cart-continue-shopping) {
    display:flex !important;
    gap:12px !important;
    align-items:stretch !important;
    flex-wrap:wrap !important;
}
.wc-block-cart__submit-container .apimiel-cart-continue-shopping {
    flex:1 1 180px !important;
    display:inline-flex !important;
    min-height:44px !important;
    justify-content:center !important;
    align-items:center !important;
    padding:11px 14px !important;
    border:1px solid #9e5f18 !important;
    border-radius:7px !important;
    background:#fff !important;
    color:#75410b !important;
    font-size:15px !important;
    font-weight:600 !important;
    text-decoration:none !important;
    box-sizing:border-box !important;
    text-align:center !important;
}
.wc-block-cart__submit-container .apimiel-cart-continue-shopping:hover,
.wc-block-cart__submit-container .apimiel-cart-continue-shopping:focus-visible {
    background:#fff6e9 !important;
    color:#5c340a !important;
}
.wc-block-cart__submit-container:has(.apimiel-cart-continue-shopping) .wc-block-cart__submit-button {
    flex:1 1 180px !important;
    width:auto !important;
    min-width:0 !important;
}
@media screen and (max-width:600px) {
  #contenitore_contenuto_post_articolo.apimiel-commerce-page-shell .wc-block-cart__submit-container:has(.apimiel-cart-continue-shopping) {
      flex-direction:column !important;
  }
  #contenitore_contenuto_post_articolo.apimiel-commerce-page-shell .wc-block-cart__submit-container .apimiel-cart-continue-shopping,
  #contenitore_contenuto_post_articolo.apimiel-commerce-page-shell .wc-block-cart__submit-container .wc-block-cart__submit-button {
      flex:0 0 auto !important;
      width:100% !important;
      max-width:100% !important;
      min-width:0 !important;
  }
}

/* APIMIEL 1.7.72 — descriptions removed throughout purchase, all screen sizes. */
:is(.wc-block-cart,.wc-block-checkout,.woocommerce-cart,.woocommerce-checkout,.woocommerce-order,.widget_shopping_cart,.wc-block-mini-cart) .wc-block-components-product-metadata__description,
:is(.wc-block-cart,.wc-block-checkout,.woocommerce-cart,.woocommerce-checkout,.woocommerce-order,.widget_shopping_cart,.wc-block-mini-cart) .wc-block-components-product-description { display:none !important; }
.apimiel-vat-source { display:none !important; }
.apimiel-vat-display { font-size:.85em; line-height:1.45; font-weight:400; margin-top:6px; }
.apimiel-summary-quantity { display:none; }
/* Render tree already places summary after native shipping rates inside the form. */
.apimiel-checkout-shipping-first .wc-block-checkout__sidebar { display:none !important; }
.apimiel-checkout-shipping-first .wc-block-checkout__form { display:flex !important; flex-direction:column !important; }
.apimiel-checkout-shipping-first .wc-block-checkout__main .wp-block-woocommerce-checkout-order-summary-block {
 display:block !important; order:45 !important; width:100% !important; margin:20px 0 28px !important;
}
.apimiel-checkout-shipping-first .wc-block-checkout__main .wc-block-components-order-summary { display:block !important; }
.apimiel-checkout-shipping-first .wc-block-checkout__main .checkout-order-summary-block-fill-wrapper { display:none !important; }
@media screen and (max-width:600px) {
 #contenitore_contenuto_post_articolo.apimiel-commerce-page-shell,
 #contenitore_contenuto_post_articolo.apimiel-commerce-page-shell #cont_pagina_normale,
 #contenitore_contenuto_post_articolo.apimiel-commerce-page-shell .padding_txt,
 :is(.wc-block-cart,.wc-block-checkout,.wc-block-mini-cart) { min-width:0 !important; max-width:100% !important; }
 .wc-block-cart-items,.wc-block-cart-items tbody { display:block !important; width:100% !important; min-width:0 !important; }
 .wc-block-cart-items tr.wc-block-cart-items__row,
 .wc-block-components-order-summary-item {
  display:grid !important; grid-template-columns:minmax(0,88px) minmax(0,1fr) !important;
  grid-template-rows:auto auto !important; gap:12px !important;
  position:relative !important; width:100% !important; max-width:100% !important; min-width:0 !important;
  box-sizing:border-box !important; margin:0 0 18px !important; padding:0 0 18px !important;
  border:0 !important; border-bottom:1px solid rgba(46,26,3,.16) !important;
 }
 .wc-block-cart-items tr.wc-block-cart-items__row > td,
 .wc-block-components-order-summary-item > div {
  width:auto !important; max-width:100% !important; min-width:0 !important; margin:0 !important; padding:0 !important; border:0 !important;
 }
 .wc-block-cart-items tr.wc-block-cart-items__row > td.wc-block-cart-item__image,
 .wc-block-components-order-summary-item__image {
  display:block !important; grid-column:1 !important; grid-row:1 !important; width:88px !important; align-self:start !important;
 }
 .wc-block-cart-item__image img,.wc-block-components-order-summary-item__image img {
  display:block !important; width:88px !important; height:88px !important; max-width:100% !important; object-fit:contain !important;
 }
 .wc-block-cart-items tr.wc-block-cart-items__row > td.wc-block-cart-item__total,
 .wc-block-components-order-summary-item__total-price {
  display:block !important; grid-column:2 !important; grid-row:1 !important; align-self:center !important;
  text-align:right !important; font-size:1rem !important; overflow-wrap:anywhere !important;
 }
 .wc-block-cart-items tr.wc-block-cart-items__row > td.wc-block-cart-item__product,
 .wc-block-components-order-summary-item__description {
  display:block !important; grid-column:1 / -1 !important; grid-row:2 !important; position:static !important;
 }
 :is(.wc-block-cart-item__product,.wc-block-components-order-summary-item__description) .wc-block-components-product-name {
  display:block !important; width:100% !important; margin:0 0 6px !important;
  font-size:1rem !important; line-height:1.35 !important; overflow-wrap:anywhere !important;
 }
 :is(.wc-block-cart-item__product,.wc-block-components-order-summary-item__description) .wc-block-cart-item__prices {
  font-size:.82rem !important; line-height:1.4 !important; margin:0 0 5px !important;
 }
 :is(.wc-block-cart-item__product,.wc-block-components-order-summary-item__description) .wc-block-cart-item__prices .wc-block-components-product-price { font-size:.82rem !important; font-weight:400 !important; }
 :is(.wc-block-cart-item__total,.wc-block-components-order-summary-item__total-price) .wc-block-components-product-price,
 :is(.wc-block-cart-item__total,.wc-block-components-order-summary-item__total-price) .wc-block-components-formatted-money-amount {
  font-size:1rem !important; font-weight:600 !important; white-space:normal !important; overflow-wrap:anywhere !important;
 }
 .apimiel-summary-quantity { display:block; font-size:.82rem; line-height:1.4; }
 .apimiel-summary-has-quantity .wc-block-components-order-summary-item__quantity { display:none !important; }
 .wc-block-cart-item__quantity {
  display:flex !important; position:static !important; width:100% !important; height:auto !important;
  min-width:0 !important; max-width:100% !important; margin-top:10px !important;
  flex-wrap:wrap !important; justify-content:space-between !important; align-items:center !important; gap:10px !important;
 }
 .wc-block-cart-item__quantity .wc-block-components-quantity-selector { flex:0 0 112px !important; margin:0 !important; }
 .wc-block-cart-item__quantity .wc-block-cart-item__remove-link { min-height:44px; padding:8px; }
 .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:focus-visible { outline:2px solid #9e5f18; outline-offset:2px; }
 .wc-block-components-order-summary-item > .screen-reader-text { position:absolute !important; }
}

/* APIMIEL 1.7.73 — aligned final amount and annotation on its own line. */
:is(.wc-block-cart,.wc-block-checkout) .wc-block-components-totals-footer-item {
 display:grid !important;
 grid-template-columns:minmax(0,1fr) auto !important;
 column-gap:12px !important;
 row-gap:0 !important;
 width:100% !important;
 box-sizing:border-box !important;
}
:is(.wc-block-cart,.wc-block-checkout) .wc-block-components-totals-footer-item > .wc-block-components-totals-item__label {
 grid-column:1 !important; grid-row:1 !important; min-width:0 !important; text-align:left !important;
}
:is(.wc-block-cart,.wc-block-checkout) .wc-block-components-totals-footer-item > .wc-block-components-totals-item__value {
 grid-column:2 !important; grid-row:1 !important; justify-self:end !important; text-align:right !important;
}
:is(.wc-block-cart,.wc-block-checkout) .wc-block-components-totals-footer-item > :is(.apimiel-vat-display,.wc-block-components-totals-item__description) {
 grid-column:1 / -1 !important; grid-row:2 !important;
 width:100% !important; min-width:0 !important; margin-top:6px !important; text-align:left !important;
}
/* Only the spaces between product rows have a separator: never after the last. */
.wc-block-components-order-summary-item:not(:has(~ .wc-block-components-order-summary-item)),
.wc-block-cart-items tr.wc-block-cart-items__row:not(:has(~ tr.wc-block-cart-items__row)) {
 border-bottom:0 !important;
}
@media screen and (max-width:600px) {
 .apimiel-commerce-no-hero-page .apimiel-no-hero-header {
  width:calc(100% - 32px) !important; margin-inline:auto !important;
  padding:0 0 30px !important; text-align:center !important;
 }
 .apimiel-commerce-no-hero-page .apimiel-no-hero-header h1 {
  font-size:32px !important; line-height:1.2 !important; text-align:center !important;
 }
 #contenitore_contenuto_post_articolo.apimiel-commerce-page-shell :is(.wc-block-cart,.wc-block-checkout) h2,
 #contenitore_contenuto_post_articolo.apimiel-commerce-page-shell :is(.wc-block-components-checkout-step__title,.wc-block-components-checkout-order-summary__title-text,.wc-block-components-title) {
  font-size:23px !important; line-height:1.25 !important;
 }
}

/* APIMIEL 1.7.74 — native order details: price right, tax below left label. */
.woocommerce-table--order-details tfoot tr.apimiel-order-total-row > th {
 text-align:left !important; vertical-align:top !important;
}
.woocommerce-table--order-details tfoot tr.apimiel-order-total-row > td {
 text-align:right !important; vertical-align:top !important; white-space:nowrap !important;
}
.woocommerce-table--order-details tfoot .apimiel-order-vat {
 display:block !important; margin-top:6px !important;
 text-align:left !important; white-space:normal !important;
 font-size:.85em !important; line-height:1.45 !important; font-weight:400 !important;
}

/* APIMIEL 2.1.7 — cart heading above items, no duplicate beside totals. */
.apimiel-cart-summary-first .wc-block-cart__totals-title {
    display:none !important;
}
#contenitore_contenuto_post_articolo .apimiel-cart-summary-title {
    margin:0 0 20px !important;
}
@media screen and (max-width:600px) {
    #contenitore_contenuto_post_articolo .apimiel-cart-summary-title {
        font-size:23px !important;
        line-height:1.25 !important;
    }
}

/* Keep the native Free price text separate from the configured shipping name. */
.wc-block-components-shipping-rates-control .wc-block-components-shipping-rates-control__package__description--free,
.wp-block-woocommerce-checkout-shipping-methods-block .wc-block-components-shipping-rates-control__package__description--free,
.wp-block-woocommerce-checkout-shipping-method-block .wc-block-components-shipping-rates-control__package__description--free {
    margin-inline-start:.5em !important;
}
