/* --------------------------------
        Classic Checkout
-------------------------------- */

.flex-checkout-2col {
    display: flex;
    gap: 2em;
    flex-wrap: wrap;
}
#customer_details {
    flex: 2 1 calc( 1em - 60%);
    min-width: 500px;
}
#g2k25-checkout-sticky {
    flex: 1 1 calc( 1em - 40%);
    min-width: 350px;
}


.checkout.woocommerce-checkout h3 {
    color: var(--gMain);
    font-size: 2rem;
    line-height: 1.2em;
}
.checkout.woocommerce-checkout h4 {
    font-size: 1rem;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.checkout.woocommerce-checkout label {
    font-size: .7rem;
    text-transform: uppercase;
    font-weight: 500;
}
.checkout.woocommerce-checkout input {
    font-size: 1rem;
    padding: .8em .5em !important;
    background-color: transparent !important;
    border: 1px solid var(--gDarkAccent) !important;
    color: #444 !important;
    border-radius: var(--gBorderRadius) !important;
}



.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

/* default field */
.woocommerce-checkout .wc-field {
    flex: 1 1 100%;
    min-width: 0;
}

/* metà larghezza */
.woocommerce-checkout .wc-field--half {
    flex: 1 1 calc(50% - 8px);
}

/* piena larghezza */
.woocommerce-checkout .wc-field--full, .g2k25-cf-row, .g2k25-cf-estero-row {
    flex: 1 1 100%;
}

/* sicurezza mobile */
@media (max-width: 768px) {
    .woocommerce-checkout .wc-field--half {
        flex: 1 1 100%;
    }
}

/* ordine controllato fields */
.wc-field--email        { order: 1; }
.wc-field--first-name   { order: 2; }
.wc-field--last-name    { order: 3; }

.wc-field--phone        { order: 40; }
.wc-field--address      { order: 50; }
.wc-field--address-2    { order: 55; }
.wc-field--postcode     { order: 60; }
.wc-field--city         { order: 70; }
.wc-field--state        { order: 90; }
.wc-field--country      { order: 80; }
.g2k25-cf-row           { order: 95; }
.g2k25-cf-estero-row    { order: 96; }


#billing_address_1_field::before {
    content: "Indirizzo";
    display: block;
    font-weight: 500;
    margin: 20px 0 10px;
    text-transform: uppercase;
    font-size: 1rem;
    font-family: 'Poppins',Helvetica,Arial,Lucida,sans-serif;
}

#billing_email_field::before {
    content: "Contatti";
    display: block;
    font-weight: 500;
    margin-bottom: 10px;
    text-transform: uppercase;
    font-size: 1rem;
    font-family: 'Poppins',Helvetica,Arial,Lucida,sans-serif;
}

/* Etichette in inglese quando <html lang="en-..."> */
html[lang|="en"] #billing_address_1_field::before {
    content: "Address";
}

html[lang|="en"] #billing_email_field::before {
    content: "Contact";
}

#ship-to-different-address {
    padding-bottom: 0px;
}
.g2k25-pet-data, 
.g2k25-avviso-consegna {
    margin-bottom: 2em;
}
.g2k25-pet-data {
    margin-top: 2em;
}


.shop_table.woocommerce-checkout-review-order-table th {
    text-transform: uppercase;
    font-family: 'Poppins',Helvetica,Arial,Lucida,sans-serif;
    font-weight: 500 !important;
    font-size: 13px;
}
.cart-subtotal th,
.woocommerce-shipping-totals.shipping th,
.tax-rate th,
.order-total th {
    background-color: var(--gLGrey)!important;
    color: var(--gMain)!important;
}

/* Blocco Pagamento */
#add_payment_method #payment, 
.woocommerce-cart #payment, 
.woocommerce-checkout #payment {
    background: var(--gLGrey)!important;
    border-radius: var(--gBorderRadius)!important;
}
#add_payment_method #payment div.payment_box::before, 
.woocommerce-cart #payment div.payment_box::before, 
.woocommerce-checkout #payment div.payment_box::before {
    border: 1em solid var(--gMGrey)!important;
    border-right-color: transparent!important;
    border-left-color: transparent!important;
    border-top-color: transparent!important;
}
#add_payment_method #payment div.payment_box, 
.woocommerce-cart #payment div.payment_box, 
.woocommerce-checkout #payment div.payment_box {
    background-color: var(--gMGrey)!important;
    color: var(--gMain)!important;
}
#add_payment_method #payment ul.payment_methods, 
.woocommerce-cart #payment ul.payment_methods, 
.woocommerce-checkout #payment ul.payment_methods {
    border-bottom: 1px solid var(--gDGrey)!important;
}
#add_payment_method #payment ul.payment_methods, 
.woocommerce-cart #payment ul.payment_methods, 
.woocommerce-checkout #payment ul.payment_methods {
    border-bottom: 1px solid var(--gDGrey);
}


/* Validation */

.woocommerce form .form-row.woocommerce-invalid input {
    border-color: var(--wc-red)!important;
    border-left: 4px solid var(--wc-red)!important;
    background-color: #aa00002e!important;
    color: var(--wc-red)!important;
}