/**
 * PMPro membership discovery and registration presentation.
 *
 * Loaded only on /membership/join-now/, /membership/registration/, and PMPro
 * checkout pages by flccc_enqueue_pmpro_registration_styles().
 */
.pmpro,
.pmpro form,
.pmpro fieldset,
.pmpro .pmpro_card,
.pmpro .pmpro_form_field,
.pmpro input,
.pmpro select,
.pmpro textarea {
	box-sizing: border-box;
	max-width: 100%;
}

.pmpro .pmpro_card,
.pmpro .pmpro_form_fieldset {
	margin-bottom: 1.5rem;
}

.pmpro .pmpro_form_label,
.pmpro label {
	color: #1d2733;
	font-weight: 600;
}

.pmpro input:not([type="checkbox"]):not([type="radio"]),
.pmpro select,
.pmpro textarea {
	min-height: 2.75rem;
	width: 100%;
}

.pmpro textarea {
	min-height: 8rem;
}

.pmpro input[type="file"] {
	max-width: 100%;
}

.pmpro .pmpro_form_hint,
.pmpro .pmpro_form_field .description {
	color: #3f4b59;
	line-height: 1.5;
}

.pmpro a:not(.button):not(.fusion-button):not(.pmpro_btn) {
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.pmpro input:focus,
.pmpro select:focus,
.pmpro textarea:focus,
.pmpro a:focus,
.pmpro button:focus {
	outline: 3px solid #005a9c;
	outline-offset: 2px;
}

#pmpropp_payment_plans .pmpro_form_field-radio-item {
	border: 1px solid #607080;
	border-radius: 0.25rem;
	margin: 0.75rem 0;
	padding: 0.875rem;
}

#pmpropp_payment_plans input[type="radio"] {
	accent-color: #005a9c;
	min-height: 1.25rem;
	min-width: 1.25rem;
}

#pmpropp_payment_plans input[type="radio"]:checked + label {
	font-weight: 700;
}

#pmpropp_payment_plans .pmpro_form_field-radio-item:has(input[type="radio"]:checked) {
	background: #e8f3fb;
	border-color: #005a9c;
	box-shadow: inset 0 0 0 1px #005a9c;
}

.pmpro_advanced_levels-div .pmpro_level-price {
	font-size: 1.125rem;
	font-weight: 700;
	margin: 0.75rem 0;
}

.pmpro_advanced_levels-div .pmpro_level-select {
	margin-top: 1rem;
}

.pmpro_advanced_levels-div .pmpro_level-select .pmpro_btn,
.pmpro input[type="submit"],
.pmpro button[type="submit"] {
	min-height: 2.75rem;
}

@media (max-width: 767px) {
	.pmpro .pmpro_card_content,
	.pmpro .pmpro_form_fields {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.pmpro_advanced_levels-div .pmpro_level {
		margin-bottom: 1.5rem;
	}
}
