/* OPC checkout panels — consistent card headers (shipping, payment, address, etc.) */
#checkoutPayment .card.mb-3 > .card-header {
	padding: 0.75rem 1.25rem;
}
#checkoutShippingMethod #checkoutShippingContentChoose {
	line-height: 1.4;
}
#checkoutShippingChoices .custom-control-label {
	width: 100%;
}

/* Punchlist 35: card brand icons (requires Font Awesome brands — zca_load_fa_brands) */
.fest-cc-accepted {
	margin-bottom: 0.25rem;
	text-align: center;
}
.fest-cc-icons {
	margin-bottom: 0.75rem;
	text-align: center;
}
.fest-cc-icons i {
	font-size: 2rem;
	margin: 0 0.35rem;
	color: #333;
	vertical-align: middle;
}
/* Hide legacy broken cc*.gif icons if any remain */
#checkoutPaymentMethod .ccenabled img {
	display: none;
}

/* Payment CC fields — full-width inputs, compact CVV (overrides cim.css / checkout_payment.css) */
#checkoutPaymentMethod .ccinfo {
	margin-top: 0.5rem;
}
#checkoutPaymentMethod .ccinfo .fest-payment-field input.form-control:not(.cvv_input),
#checkoutPaymentMethod .ccinfo .fest-payment-field input[type="text"]:not(.cvv_input),
#checkoutPaymentMethod .ccinfo .fest-payment-field input[type="number"]:not(.cvv_input) {
	width: 100%;
	max-width: 100%;
}
#checkoutPaymentMethod .ccinfo .fest-payment-field input.cvv_input,
#checkoutPaymentMethod .ccinfo .fest-payment-field input[id$="-cc-cvv"] {
	width: 6rem !important;
	max-width: 40%;
	display: inline-block;
	vertical-align: middle;
	margin-right: 0.35rem;
}
#checkoutPaymentMethod .ccinfo .fest-payment-field select.form-control,
#checkoutPaymentMethod .ccinfo .fest-payment-field select.custom-select {
	width: auto;
	min-width: 9rem;
	display: inline-block;
	margin-right: 0.5rem;
	margin-bottom: 0.25rem;
}
#checkoutPaymentMethod .ccinfo .fest-payment-field .custom-control {
	margin-top: 0.25rem;
}
