/* Compact express area followed directly by Contact. */
.woocommerce-checkout .melts-checkout-preform{margin-top:20px;margin-bottom:0}
.melts-express-label{display:none;max-width:610px;margin:0 0 12px;color:#737373;text-align:center;font:500 15px/1.4 var(--body)}
.melts-express-ready .melts-express-label{display:block}
.woocommerce-checkout .melts-checkout-preform .nmi-wallet-express-wrap{display:none!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;width:min(100%,610px)!important;max-width:610px!important;margin:0!important}
.woocommerce-checkout .melts-checkout-preform.melts-express-ready:not(.melts-express-preview-mode) .nmi-wallet-express-wrap{display:grid!important}
.woocommerce-checkout .melts-checkout-preform .nmi-wallet-button,.woocommerce-checkout .melts-checkout-preform #nmi-apple-pay-express,.woocommerce-checkout .melts-checkout-preform #nmi-google-pay-express{width:100%!important;height:48px!important;min-width:0!important;margin:0;border-radius:12px;overflow:hidden}
.woocommerce-checkout .melts-checkout-preform .nmi-or-divider,.melts-express-preview-divider{display:flex;align-items:center;gap:16px;grid-column:1/-1;width:min(100%,610px);margin:18px 0 0!important;color:#767676;font:500 14px/1.4 var(--body);text-align:center}
.woocommerce-checkout .melts-checkout-preform .nmi-or-divider::before,.woocommerce-checkout .melts-checkout-preform .nmi-or-divider::after,.melts-express-preview-divider::before,.melts-express-preview-divider::after{content:'';height:1px;flex:1;background:#dcdcdc}
.woocommerce-checkout .melts-checkout-form{padding-top:12px}
.woocommerce-checkout .melts-checkout-fields .woocommerce-billing-fields>h3{margin:0 0 16px}
.woocommerce-checkout .melts-checkout-fields h1.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
.melts-express-preview{max-width:610px}.melts-express-preview-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.melts-express-preview-buttons span{display:flex;align-items:center;justify-content:center;height:48px;border-radius:12px;background:#080808;color:#fff;font:700 20px var(--body)}
.melts-express-preview-buttons span b{color:#4285f4;margin-right:3px}.melts-express-preview small,.melts-card-preview>small{display:block;margin-top:7px;color:#777;font-size:10px;text-align:center}

/* Floating labels retain native labels and keyboard accessibility. */
.woocommerce-checkout .melts-checkout-fields .melts-float-field{position:relative;margin-bottom:11px!important}
.woocommerce-checkout .melts-checkout-fields .melts-float-field>label{position:absolute;z-index:2;top:25px;left:14px;max-width:calc(100% - 45px);margin:0!important;overflow:hidden;color:#777;font:400 15px/1.2 var(--body);text-overflow:ellipsis;white-space:nowrap;transform:translateY(-50%);pointer-events:none;transition:top .12s ease,font-size .12s ease}
.woocommerce-checkout .melts-checkout-fields .melts-float-field.is-filled>label,.woocommerce-checkout .melts-checkout-fields .melts-float-field:focus-within>label{top:6px;color:#707070;font-size:10px;transform:none}
.woocommerce-checkout .melts-checkout-fields .melts-float-field>label .required{display:none}
.woocommerce-checkout .melts-checkout-fields .melts-float-field input.input-text,.woocommerce-checkout .melts-checkout-fields .melts-float-field select{height:51px;min-height:51px;padding:17px 13px 5px!important;border-radius:9px;font-size:15px}
.woocommerce-checkout .melts-checkout-fields .melts-float-field input::placeholder{color:transparent!important}
.woocommerce-checkout .melts-checkout-fields .melts-float-field .select2-container--default .select2-selection--single{height:51px;border-radius:9px}
.woocommerce-checkout .melts-checkout-fields .melts-float-field .select2-container--default .select2-selection--single .select2-selection__rendered{padding-top:16px;line-height:1.2}
.woocommerce-checkout .melts-checkout-fields .melts-float-field .select2-container--default .select2-selection--single .select2-selection__arrow{height:51px}
.woocommerce-checkout .melts-checkout-fields .melts-float-field:focus-within input.input-text,.woocommerce-checkout .melts-checkout-fields .melts-float-field:focus-within .select2-selection--single{border-color:#2456d9;box-shadow:0 0 0 2px rgba(36,86,217,.14)}

/* Consent copy is visible after opt-in and before order submission. */
.woocommerce-checkout .melts-checkout-fields .melts-sms-disclosure{grid-column:1/-1;margin:-4px 0 15px;color:#6b6b6b;font-size:11px;line-height:1.5}
.woocommerce-checkout .melts-checkout-fields .melts-sms-disclosure[hidden]{display:none!important}
.melts-sms-disclosure a,.melts-renewal-summary a{color:inherit;text-decoration:underline}
.woocommerce-checkout .melts-checkout-payment-section .melts-renewal-summary{max-width:88%;padding-top:20px;font-size:12px;line-height:1.5}

/* The NMI tokenization iframes remain intact; only their surrounding UI changes. */
.woocommerce-checkout .melts-checkout-payment-section #payment ul.payment_methods{padding:0!important;border:0;border-radius:12px;background:none}
.woocommerce-checkout .melts-checkout-payment-section #payment li.payment_method_gaincommerce_nmi{position:relative;overflow:hidden;margin:0;border:1px solid #d9d9d9;border-radius:12px;background:#f7f7f7}
.woocommerce-checkout .melts-checkout-payment-section #payment li.payment_method_gaincommerce_nmi>input[type=radio]{position:absolute;top:20px;left:18px;z-index:2;margin:0}
.woocommerce-checkout .melts-checkout-payment-section #payment li.payment_method_gaincommerce_nmi>label{display:flex;align-items:center;min-height:60px;box-sizing:border-box;margin:0!important;padding:12px 16px 12px 48px;border-bottom:1px solid #2456d9;background:#f2f5ff;color:#171717;font:700 16px/1.3 var(--body)}
.woocommerce-checkout .melts-checkout-payment-section #payment .payment_method_gaincommerce_nmi div.payment_box{margin:0!important;padding:16px!important;border-radius:0;background:#f7f7f7!important}
.woocommerce-checkout .melts-checkout-payment-section #payment .payment_method_gaincommerce_nmi div.payment_box:before,.woocommerce-checkout .melts-checkout-payment-section #payment .payment_method_gaincommerce_nmi div.payment_box>div>p:first-child{display:none}
.woocommerce-checkout .melts-checkout-payment-section #payment #wc-gaincommerce_nmi-payment-form{margin:0;padding:0;border:0}
.woocommerce-checkout .melts-checkout-payment-section #payment .ap-nmi-collectjs-container{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}
.woocommerce-checkout .melts-checkout-payment-section #payment .ap-nmi-collectjs-container>.form-row{float:none!important;width:100%!important;margin:0!important;padding:0!important}
.woocommerce-checkout .melts-checkout-payment-section #payment .ap-nmi-collectjs-container>.form-row:has(#ap-nmi-card-number){grid-column:1/-1}
.woocommerce-checkout .melts-checkout-payment-section #payment .ap-nmi-collectjs-container>.form-row>label{display:none}
.woocommerce-checkout .melts-checkout-payment-section #payment #ap-nmi-card-number,.woocommerce-checkout .melts-checkout-payment-section #payment #ap-nmi-expiry-date,.woocommerce-checkout .melts-checkout-payment-section #payment #ap-nmi-card-cvv{height:50px;box-sizing:border-box;overflow:hidden;border:1px solid #d5d5d5;border-radius:9px;background:#fff}
.woocommerce-checkout .melts-checkout-payment-section #payment .CollectJSInlineIframe{width:100%!important;height:100%!important}
.woocommerce-checkout .melts-checkout-payment-section #payment .ap-nmi-fields-loader{grid-column:1/-1}
.woocommerce-checkout .melts-checkout-payment-section #payment .ap-nmi-card-icons{display:none}
.woocommerce-checkout .melts-checkout-payment-section #payment .payment_method_gaincommerce_nmi>label .ap-nmi-card-icons{display:flex;gap:4px;margin:0 0 0 auto}
.woocommerce-checkout .melts-checkout-payment-section #payment .payment_method_gaincommerce_nmi>label .ap-nmi-card-icons .card-icon{width:27px;height:18px}
.woocommerce-checkout .melts-checkout-payment-section #payment .payment_method_gaincommerce_nmi>label .ap-nmi-card-icons .card-icon:nth-child(n+4){display:none}
.melts-card-more{display:inline-grid;place-items:center;height:18px;padding:0 4px;border:1px solid #dedede;border-radius:3px;background:#fff;color:#2456d9;font:600 10px var(--body)}

/* Noninteractive payment design preview, staging only. */
.melts-card-preview{overflow:hidden;margin:0 0 18px;border:1px solid #d9d9d9;border-radius:12px;background:#f7f7f7}.melts-card-preview-head{display:flex;align-items:center;gap:11px;min-height:60px;padding:0 16px;border-bottom:1px solid #2456d9;background:#f2f5ff}
.melts-card-preview-radio{width:15px;height:15px;border:5px solid #2456d9;border-radius:50%;box-sizing:border-box}.melts-card-preview-brands{margin-left:auto;color:#2456d9;font-size:10px}.melts-card-preview-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px}
.melts-card-preview-fields>div{display:flex;align-items:center;min-width:0;height:50px;padding:0 13px;border:1px solid #d5d5d5;border-radius:9px;background:#fff;color:#757575;font-size:15px}.melts-card-preview-fields>div:first-child,.melts-card-preview-fields>div:last-child{grid-column:1/-1}.melts-card-preview>small{padding:0 12px 12px}
@media(max-width:560px){.woocommerce-checkout .melts-checkout-preform{margin-top:15px}.woocommerce-checkout .melts-checkout-form{padding-top:8px!important}.woocommerce-checkout .melts-checkout-payment-section #payment .payment_method_gaincommerce_nmi>label .ap-nmi-card-icons .card-icon:nth-child(n+3){display:none}.woocommerce-checkout .melts-checkout-payment-section #payment .payment_method_gaincommerce_nmi div.payment_box{padding:12px!important}.woocommerce-checkout .melts-checkout-payment-section .melts-renewal-summary{max-width:94%}}

/* Match the hosted wallet controls to their wrappers on every edge. */
.woocommerce-checkout .melts-checkout-preform #nmi-apple-pay-express,.woocommerce-checkout .melts-checkout-preform #nmi-google-pay-express{height:44px!important;border-radius:10px!important;background:#000!important;overflow:hidden!important}
.woocommerce-checkout .melts-checkout-preform #nmi-apple-pay-express apple-pay-button{display:block!important;width:100%!important;height:44px!important;--apple-pay-button-height:44px!important;--apple-pay-button-border-radius:10px!important}
.woocommerce-checkout .melts-checkout-preform #nmi-google-pay-express iframe{display:block!important;width:100%!important;height:44px!important;border:0!important;border-radius:10px!important;background:#000!important}

/* NMI Google Pay iframe draws a pale baseline at its lower edge; cover it inside the rounded clip. */
.woocommerce-checkout .melts-checkout-preform #nmi-google-pay-express{position:relative}
.woocommerce-checkout .melts-checkout-preform #nmi-google-pay-express::after{content:'';position:absolute;inset:auto 0 0;height:6px;z-index:2;background:#000;border-radius:0 0 10px 10px;pointer-events:none}

/* Delivery is the real WooCommerce shipping address; the original billing
   fields stay in the form below the payment method for accurate order data. */
.melts-shipping-first #ship-to-different-address{display:none!important}
.melts-shipping-first .melts-delivery-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0 12px;width:100%}
.melts-shipping-first .melts-delivery-fields>.form-row{grid-column:1/-1;float:none!important;clear:none!important;width:100%!important;min-width:0}
.melts-shipping-first #shipping_first_name_field,.melts-shipping-first #shipping_last_name_field{grid-column:span 3!important}
.melts-shipping-first #shipping_city_field,.melts-shipping-first #shipping_state_field,.melts-shipping-first #shipping_postcode_field{grid-column:span 2!important}
.melts-shipping-first #shipping_phone_field{display:none!important}
.melts-shipping-first #billing_phone_field,.melts-shipping-first #kl_sms_consent_checkbox_field,.melts-shipping-first .melts-sms-disclosure{grid-column:1/-1}
.melts-billing-control{margin:14px 0 0;padding:12px 2px 2px;border-top:1px solid #dedede}
.melts-billing-same-label{display:flex;align-items:center;gap:10px;margin:0!important;color:#242424;font:500 14px/1.4 var(--body);cursor:pointer}
.melts-billing-same-label input{flex:none;width:18px;height:18px;margin:0;accent-color:#2456d9}
.melts-billing-alternate[hidden]{display:none!important}
.melts-billing-alternate{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0 10px;margin-top:18px}
.melts-billing-alternate>h3{grid-column:1/-1;margin:0 0 12px;font:700 18px/1.3 var(--body)}
.melts-billing-alternate>.form-row{grid-column:1/-1;float:none!important;clear:none!important;width:100%!important;min-width:0}
.melts-billing-alternate #billing_first_name_field,.melts-billing-alternate #billing_last_name_field{grid-column:span 3!important}
.melts-billing-alternate #billing_city_field,.melts-billing-alternate #billing_state_field,.melts-billing-alternate #billing_postcode_field{grid-column:span 2!important}
.melts-billing-alternate .select2-container{width:100%!important}
.melts-billing-alternate select,.melts-billing-alternate .woocommerce-input-wrapper{width:100%!important}
@media(max-width:560px){.melts-shipping-first .melts-delivery-fields,.melts-billing-alternate{column-gap:8px}.melts-shipping-first #shipping_city_field,.melts-shipping-first #shipping_state_field,.melts-shipping-first #shipping_postcode_field,.melts-billing-alternate #billing_city_field,.melts-billing-alternate #billing_state_field,.melts-billing-alternate #billing_postcode_field{grid-column:span 3!important}}

@media(max-width:560px){.melts-shipping-first #shipping_city_field,.melts-shipping-first #shipping_state_field,.melts-shipping-first #shipping_postcode_field,.melts-billing-alternate #billing_city_field,.melts-billing-alternate #billing_state_field,.melts-billing-alternate #billing_postcode_field{grid-column:span 2!important}}
@media(max-width:560px){.woocommerce-checkout .melts-checkout-preform .nmi-wallet-express-wrap{grid-template-columns:minmax(0,1fr)!important;row-gap:10px}.woocommerce-checkout .melts-checkout-preform #nmi-apple-pay-express,.woocommerce-checkout .melts-checkout-preform #nmi-google-pay-express{grid-column:1/-1;width:100%!important}}
