.gform_wrapper .gform_ajax_spinner {
	align-self: flex-end;
	display: inline-block;
	height: 0%;
	margin-bottom: 15px;
}

.gform_page_footer {
	display: flex;
}

.gform_previous_button {
	height: 0%;
}

.gform_page_footer #gform_ppcp_smart_payment_buttons {
	display: inline-block;
	margin: auto 1rem 0;
	vertical-align: top;
}
.gform_footer #gform_ppcp_smart_payment_buttons {
	margin-right: 1rem;
}

@media only screen and (max-width: 641px) {
	.gform_page_footer #gform_ppcp_smart_payment_buttons {
		margin: auto 0 1rem;
	}
	.gform_footer #gform_ppcp_smart_payment_buttons {
		margin-bottom: 1rem;
		margin-right: 0;
	}
}

#gform_ppcp_smart_payment_buttons .validation_message {
	margin-top: 0.5rem;
}

#gform_ppcp_smart_payment_buttons.small {
    width: 33%;
}
#gform_ppcp_smart_payment_buttons.medium {
    width: 66%;
}
#gform_ppcp_smart_payment_buttons.large,
#gform_ppcp_smart_payment_buttons.responsive {
    width: 100%;
}

.gform_ppcp_custom_card_fields, .ginput_container_custom_card_fields {
    display: none;
}

body .gform_wrapper .top_label div.ginput_container.ginput_container_custom_card_fields {
    margin-top: 12px;
}

.ginput_container_custom_card_fields .ginput_card_field {
    display: inline-block;
    width: 100%;
    border: 1px solid #ccc;
    background-color: #fff;
    font-size: inherit;
    font-family: inherit;
    padding: 5px 4px;
    letter-spacing: normal;
    /* MUST have a height. */
    height: 32px;
}

.field_sublabel_hidden_label .ginput_container_custom_card_fields .ginput_card_field {
    margin-bottom: 12px;
}

.gfield_error .ginput_container_custom_card_fields .ginput_card_field {
    border: 1px solid #790000;
}

.ginput_container_custom_card_fields span.ginput_card_security_code {
    max-width: 160px;
    min-width: 100px;
    position: relative;
}

.gform_wrapper .ginput_container_custom_card_fields.ginput_complex .ginput_cardinfo_left .ginput_card_expiration {
    max-width: calc( 100% - 30px );
}

.gform_wrapper .ginput_container_custom_card_fields.ginput_complex .ginput_cardinfo_right span.ginput_card_security_code_icon {
    float: right;
    margin: 4px 0 0 8px;
    position: static;
}

.gform_wrapper .ginput_container_custom_card_fields.ginput_complex .ginput_cardinfo_right {
    max-width: 50%;
    width: 200px;
}

.ginput_container_custom_card_fields .ginput_card_security_code_icon + label {
    width: 100%;
}

@media only screen and (max-width: 641px) {
    .ginput_container_custom_card_fields span.ginput_card_security_code {
        display: inline-block !important;
        margin-bottom: -8px !important;
        max-width: calc( 100% - 50px );
    }

    .gform_wrapper .ginput_container_custom_card_fields.ginput_complex .ginput_cardinfo_left .ginput_card_expiration {
        max-width: 100%;
    }

    .gform_wrapper .ginput_container_custom_card_fields.ginput_complex .ginput_cardinfo_right span.ginput_card_security_code_icon {
        top: -1px;
    }

	#gform_ppcp_smart_payment_buttons,
	#gform_ppcp_smart_payment_buttons.small,
	#gform_ppcp_smart_payment_buttons.medium,
	#gform_ppcp_smart_payment_buttons.large {
		width: 100%;
	}

	.gform_page_footer {
		flex-wrap: wrap;
	}

	.gform_page_footer #gform_ppcp_smart_payment_buttons {
		margin-top: 10px;
	}
}
