:root {
	--body-color: #211f1f;
	--primary-color: #211f1f;
	--secondary-color: #b4d2d8;
	--tertiary-color: #cb4b3b;
	--table-header: #163f7b;
	--font-size: 14px;
	--font-size-label: 13px;
	--font-size-required: 11px;
	--font-weight: 500;
	--font-weight-link: 600;
	--checkbox-color: #254a40;
	--btn-bg-color: #f5f5f5;
	--elev-link-hover-color: #000;
}

/*---------------------------------------
	Custom Structure
---------------------------------------*/

#pills-password > h2 {
	display: none;
}
#pills-password #pass-strength-result {
	display: none;
}
.pmpro_change_password-field-pass1 .lite {
	display: none;
}
div[class$="_wrap"] ul {
	list-style-type: none;
}

.pmpro_table {
	margin-bottom: 25px;
}

.pmpro_table thead tr th {
	color: var(--table-header);
	font-family: var(--font-family-headings);
	font-size: var(--font-size);
	font-style: normal;
	font-weight: var(--font-weight);
	letter-spacing: 1px;
	line-height: 1.2;
	padding-bottom: 25px;
}

.pmpro_table tbody tr td,
.pmpro_table tbody tr td * {
	font-family: var(--font-family-headings);
	font-size: var(--font-size);
	font-style: normal;
	font-weight: var(--font-weight);
	line-height: 1.2;
	letter-spacing: 1px;
	color: #000000;
}

.pmpro_account-membership-levelname {
	display: flex;
	gap: 15px;
}

#pmpro_actionlink-cancel {
	background-color: var(--tertiary-color);
	border: none;
	color: #fff;
	font-family: var(--font-family-headings);
	font-size: var(--font-size);
	font-weight: var(--font-weight-link);
	letter-spacing: 0.15em;
	line-height: 1.2;
	padding: 5px 15px;
	text-transform: uppercase;
	text-decoration: none;
	transition: all 0.4s ease;
}

#pmpro_actionlink-cancel:hover {
	background-color: var(--primary-color);
}

.pmpro_form {
	display: flex;
	flex-direction: column;
	row-gap: 15px;
}

.pmpro_checkout-field-required label {
	position: relative;
}
.pmpro_checkout-field-required label::after {
	content: "(required)";
	color: var(--body-color);
	font-family: var(--font-family-headings);
	font-size: var(--font-size-required);
	font-weight: var(--font-link);
	letter-spacing: 0.15em;
}

#pmpro_pricing_fields {
	display: none;
}
#change-password .pmpro_submit {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}

div[class^="pmpro_checkout_box"] > h3 {
	display: none;
}
.pmpro_submit hr {
	display: none;
}

body.pmpro-checkout #pmpro_user_fields h2,
body.pmpro-checkout #pmpro_user_fields h3,
body.pmpro-checkout div[id^="pmpro_checkout_box"] h3,
body.pmpro-checkout div[id^="pmpro_checkout_box"] h2,
body.pmpro-checkout div[id^="pmpro_checkout_box"] hr,
body.pmpro-checkout #pmpro_user_fields_show {
	display: none;
}
body.pmpro-checkout #pmpro_user_fields {
	display: block;
}

body.pmpro-checkout #pmpro_form #pmpro_social_login {
	order: 100;
}

/*---------------------------------------
	Links Global Style
---------------------------------------*/

.pmpro_actionlinks a {
	text-decoration-line: none !important;
}

.pmpro_table a,
.pmpro_actionlinks a,
.pmpro_invoice_wrap > a,
.pmpro_actions_nav > a,
#pmpro_user_fields_a,
.pmpro_checkout-h3-msg a {
	color: var(--tertiary-color);
	font-family: var(--font-family-headings);
	font-size: var(--font-size);
	font-style: normal;
	font-weight: var(--font-weight);
	letter-spacing: 0.07em;
	line-height: 1.2;
	text-decoration-line: underline;
	transition: all 0.4s ease;
	display: inline-block;
}

.pmpro_actions_nav > a:hover,
.pmpro_invoice_wrap > a:hover,
#pmpro_user_fields_a:hover,
.pmpro_checkout-h3-msg a:hover {
	text-decoration-line: none;
	color: var(--tertiary-color);
}

.pmpro_btn-submit,
.pmpro_btn-cancel,
.pmpro_btn.disabled {
	padding: 20px 25px;
}

/*---------------------------------------
	Buttons
---------------------------------------*/

.login-top-link .pmpro_btn,
.pmpro_submit .pmpro_btn {
	border: none;
	padding: 20px 28px;
	border-radius: 0;
}
.login-top-link .pmpro_btn.active,
.pmpro_submit .pmpro_btn.active {
	opacity: 1;
}

.pmpro_btn,
.pmpro_btn:link,
.pmpro_content_message a,
.pmpro_content_message a:link {
	background-color: var(--primary-color);
	color: #fff;
	font-family: var(--font-family-headings);
	font-size: var(--font-size);
	font-weight: var(--font-weight-link);
	letter-spacing: 0.15em;
	line-height: 1.2;
	text-transform: uppercase;
	transition: all 0.4s ease;
}

.pmpro_submit .pmpro_btn:hover,
.pmpro_submit .pmpro_btn:focus,
.login-top-link .pmpro_btn:hover,
.login-top-link .pmpro_btn:focus {
	background-color: var(--tertiary-color);
	color: #fff;
}

/* .pmpro_content_message a { } */

.pmpro_btn.disabled,
.pmpro_btn[disabled],
fieldset[disabled] .pmpro_btn {
	background-color: var(--primary-color);
	border: none;
	color: #fff;
	display: block;
	font-family: var(--font-family-headings);
	font-size: var(--font-size);
	font-weight: var(--font-weight-link);
	letter-spacing: 0.15em;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
	transition: all 0.4s ease;
	cursor: not-allowed;
}

.pmpro_btn.pmpro_btn-cancel {
	background-color: var(--tertiary-color);
	color: #fff;
	text-decoration: none;
}

/* .pmpro_btn.pmpro_btn-submit-checkout { } */

/*
input[type="button"]#discount_code_button,
input[type="button"]#other_discount_code_button { } */

/*---------------------------------------
	Forms
---------------------------------------*/
.pmpro_checkout_gateway-none #pmpro_social_login {
	display: none;
}

/* -- Checkout, Billing Information, etc. --*/
/* form.pmpro_form .pmpro_checkout-fields div { } */

form.pmpro_form label {
	color: var(--primary-color);
	/* display: block; */
	font-family: var(--font-family-headings);
	font-size: var(--font-size-label);
	font-style: normal;
	font-weight: var(--font-weight);
	letter-spacing: 0.07em;
	line-height: 1.2;
	margin-bottom: 5px;
}

/* form.pmpro_form #pmpro_payment_information_fields .pmpro_checkout-fields label { } */

/* form.pmpro_form .pmpro_checkout-field-checkbox label { } */

/* form.pmpro_form label.pmpro_label-inline { } */

/* form.pmpro_form label.pmpro_clickable { } */

form.pmpro_form .pmpro_asterisk {
	display: none;
}
form.pmpro_form .pmpro_asterisk abbr {
	color: var(--tertiary-color);
	text-decoration: none;
}

/* form.pmpro_form input[type=checkbox]#tos { } */

form.pmpro_form .input {
	color: #9c9c9c;
	font-family: var(--font-family-headings);
	font-size: var(--font-size);
	font-weight: var(--font-weight);
	letter-spacing: 1px;
	line-height: 1.2;
	display: block;
	min-height: 40px;
	padding: 10px 15px;
	width: 100%;
	flex-basis: 100%;
	border: 1px solid #eae8e6;
}

input[readonly="readonly"] {
	opacity: 0.5;
	cursor: not-allowed;
}
input[readonly="readonly"]:focus-visible {
	outline: none;
	outline-offset: 0;
	border: 1px solid #eae8e6;
}

/* form.pmpro_form textarea { } */

/* form.pmpro_form select { } */

/* form.pmpro_form .pmpro_checkout-field-bcity_state_zip .input { } */

/* form.pmpro_form .pmpro_checkout-field-bcity_state_zip select { } */

/* form.pmpro_form .pmpro_payment-cvv .input { } */

/* form.pmpro_form .pmpro_payment-discount-code .input { } */

/* form.pmpro_form #other_discount_code.input { } */

form.pmpro_form .lite {
	font-size: 12px;
}

form.pmpro_form .pmpro_captcha div {
	clear: none;
	margin: 0;
}

/* form.pmpro_form .pmpro_submit { } */

/* form.pmpro_form #pmpro_processing_message { } */

/* -- Log In, Password Reset --*/
/* #loginform label { } */
/* #loginform input[type=text] { } */
/* #loginform input[type=password] { } */

/* form.pmpro_form .pmpro_lost_password-fields div { } */

/* -- Member Profile Edit --*/
form.pmpro_form .pmpro_member_profile_edit-fields {
	display: flex;
	flex-direction: column;
	row-gap: 15px;
}
form.pmpro_form .pmpro_member_profile_edit-fields div {
	font-family: var(--font-family-headings);
	font-style: normal;
	font-weight: var(--font-weight);
	font-size: var(--font-size-label);
	line-height: 1.2;
}

/* -- Change Password (logged in) --*/
form.pmpro_form .pmpro_change_password-fields {
	display: flex;
	flex-direction: column;
	row-gap: 15px;
}

/* form.pmpro_form .pmpro_change_password-fields div { } */

/* -- Reset Password (not logged in) --*/
/* .pmpro_reset_password_wrap form.pmpro_form .lite { } */

/* form.pmpro_form .pmpro_change_password-fields .lite { } */

/* -- Password Strength Meter on Frontend Forms --*/
/* .pmpro_reset_password_wrap form.pmpro_form #pass-strength-result { } */

/* form.pmpro_form .pmpro_change_password-fields #pass-strength-result { } */

/*--------------------------------------------------
	Messages - Success, Error, Alert
----------------------------------------------------*/
.pmpro_message {
	background-color: #d9edf7;
	border: 1px solid #bce8f1;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	color: #31708f;
	font-size: var(--font-size);
	font-weight: 400;
	line-height: 1.5em;
	margin: 0;
	padding: 10px 15px;
	text-align: left;
}

/* .pmpro_message p:last-child { } */

.pmpro_success {
	background-color: #dff0d8;
	border-color: #d6e9c6;
	color: #3c763d;
}

.pmpro_error,
input[type="text"].pmpro_error,
input[type="email"].pmpro_error,
input[type="url"].pmpro_error,
input[type="password"].pmpro_error,
input[type="number"].pmpro_error,
input[type="tel"].pmpro_error,
input[type="range"].pmpro_error,
input[type="date"].pmpro_error,
input[type="month"].pmpro_error,
input[type="week"].pmpro_error,
input[type="time"].pmpro_error,
input[type="datetime"].pmpro_error,
input[type="datetime-local"].pmpro_error,
input[type="color"].pmpro_error,
textarea.pmpro_error {
	border-color: #cb4b3b;
	background-color: #f2dede;
	border-color: #ebccd1;
	color: #a94442;
}

.pmpro_alert {
	background-color: #fcf8e3;
	border-color: #faebcc;
	color: #8a6d3b;
}
.pmpro_content_message a,
.pmpro_content_message a:link {
	margin: 10px 10px 0 0;
}
.pmpro_message a {
	color: #245269;
	text-decoration: underline;
}
.pmpro_success a {
	color: #2b542c;
}
.pmpro_error a {
	color: #843534;
}
.pmpro_alert a {
	color: #66512c;
}

/* #pmpro_message_bottom { } */

/*---------------------------------------
	Membership Account
---------------------------------------*/
#pmpro_account {
	display: flex;
	flex-direction: column;
	row-gap: 30px;
}

/* #pmpro_account .pmpro_box { } */

#pmpro_account .pmpro_box h3 {
	margin-bottom: 15px;
}

/* #pmpro_account .pmpro_box p { } */

#pmpro_account .pmpro_box ul {
	list-style-type: none;
}

/* #pmpro_account .pmpro_box ul li{ } */

/* #pmpro_account #pmpro_account-membership { } */

/* #pmpro_account #pmpro_account-profile { } */

/* #pmpro_account #pmpro_account-billing { } */

/* #pmpro_account #pmpro_account-invoices { } */

/* #pmpro_account #pmpro_account-links { } */

/* #pmpro_account #pmpro_account-profile .pmpro_actionlinks { } */

#pmpro_user_fields_show {
	font-family: var(--font-family-headings);
	font-size: var(--font-size);
	font-style: normal;
	font-weight: var(--font-weight);
	line-height: 1.2;
	letter-spacing: 0.07em;
}

.pmpro_actionlinks a:last-child {
	margin-right: 0;
}

.pmpro_hidden {
	display: none;
}

/*---------------------------------------
	Membership Billing Page
---------------------------------------*/
/* .pmpro_billing_wrap { } */

/*---------------------------------------
	Membership Cancel Page
---------------------------------------*/

.pmpro_cancel_wrap {
	display: flex;
	flex-direction: column;
	row-gap: 15px;
}

.pmpro_cancel_wrap .pmpro_actionlinks {
	display: flex;
	flex-wrap: wrap;
	column-gap: 15px;
}

/*---------------------------------------
	Membership Checkout
---------------------------------------*/

/* #pmpro_form .pmpro_checkout h3 { } */

/* .pmpro_checkout h3 span.pmpro_checkout-h3-name { } */

/* .pmpro_checkout h3 span.pmpro_checkout-h3-msg { } */

/* #pmpro_payment_method span.gateway_paypalexpress { } */

/* #pmpro_payment_information_fields .pmpro_checkout-fields-display-seal { } */

/* #pmpro_license { } */

/*-- Stripe gateway Membership Checkout specific styles. --*/

/*
.pmpro_checkout_gateway-stripe form.pmpro_form #pmpro_payment_information_fields .pmpro_checkout-fields,
.pmpro_billing_gateway-stripe form.pmpro_form #pmpro_payment_information_fields .pmpro_checkout-fields { } 
.pmpro_checkout_gateway-stripe form.pmpro_form #pmpro_payment_information_fields div#AccountNumber,
.pmpro_checkout_gateway-stripe form.pmpro_form #pmpro_payment_information_fields div#Expiry,
.pmpro_checkout_gateway-stripe form.pmpro_form #pmpro_payment_information_fields div#CVV,
.pmpro_billing_gateway-stripe form.pmpro_form #pmpro_payment_information_fields div#AccountNumber,
.pmpro_billing_gateway-stripe form.pmpro_form #pmpro_payment_information_fields div#Expiry,
.pmpro_billing_gateway-stripe form.pmpro_form #pmpro_payment_information_fields div#CVV { } 

.pmpro_checkout_gateway-stripe form.pmpro_form #pmpro_payment_information_fields .pmpro_payment-account-number,
/* .pmpro_billing_gateway-stripe form.pmpro_form #pmpro_payment_information_fields .pmpro_payment-account-number { } 

.pmpro_checkout_gateway-stripe form.pmpro_form #pmpro_payment_information_fields .pmpro_payment-expiration,
/* .pmpro_billing_gateway-stripe form.pmpro_form #pmpro_payment_information_fields .pmpro_payment-expiration { } 

.pmpro_checkout_gateway-stripe form.pmpro_form #pmpro_payment_information_fields .pmpro_payment-cvv,
/* .pmpro_billing_gateway-stripe form.pmpro_form #pmpro_payment_information_fields .pmpro_payment-cvv { } 

/* .pmpro_checkout_gateway-stripe form.pmpro_form #pmpro_payment_information_fields .pmpro_payment-discount-code { } */

/*---------------------------------------
	Membership Confirmation Page
---------------------------------------*/

.pmpro_confirmation_wrap {
	display: flex;
	flex-direction: column;
	row-gap: 15px;
}

/*---------------------------------------
	Membership Invoice Page
---------------------------------------*/

/* .pmpro_invoice_wrap > a { } */

/* .pmpro_invoice_details { } */

/* .pmpro_invoice_details .pmpro_invoice-billing-address { } */

/* .pmpro_invoice_details .pmpro_invoice-payment-method { } */

/* .pmpro_invoice_details .pmpro_invoice-total { } */

/* .pmpro_invoice_details .pmpro_invoice-billing-address { } */

/* .pmpro_invoice_details .pmpro_invoice-payment-method { } */

/*---------------------------------------
	Membership Levels
---------------------------------------*/
/* #pmpro_levels_table { } */

/* #pmpro_levels_table td:nth-child(1) {
	min-width: 200px;
}
#pmpro_levels_table .pmpro_btn {
	display: block;
} */

/*---------------------------------------
	Log In and Password Reset Pages
---------------------------------------*/

.login-top-content {
	text-align: center;
	margin-bottom: 25px !important;
}

div.nsl-container {
	text-align: center;
}

div.nsl-container a[data-provider="google"] {
	background-color: var(--btn-bg-color);
	color: var(--body-color);
	font-family: var(--font-family-headings);
	font-style: normal;
	font-weight: var(--font-weight-link);
	justify-content: center;
	letter-spacing: 2.1px;
	line-height: normal;
	min-height: 60px;
	min-width: 250px;
	padding: 20px 25px;
	text-transform: uppercase;
	font-size: var(--font-size);
}

.login-legal-text {
	font-family: var(--font-family-body);
	font-size: var(--font-size);
	font-style: normal;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: 0.42px;
}

#nsl-custom-login-form-1 > div.nsl-container {
	text-align: center;
	position: relative;
	padding-top: 50px;
	margin-bottom: 25px;
}
#nsl-custom-login-form-1 > div.nsl-container::before {
	content: "or";
	background-color: #fff;
	padding: 0 10px;
	display: block;
	left: 0;
	margin: 0 auto;
	position: absolute;
	right: 0;
	top: 0;
	width: 50px;
	height: 30px;
	z-index: 2;
}
#nsl-custom-login-form-1 > div.nsl-container::after {
	content: "";
	border: 0.5px dashed #211f1f;
	display: block;
	height: 1px;
	left: 0;
	margin: 0 auto;
	opacity: 0.3;
	position: absolute;
	right: 0;
	top: 15px;
	width: 100%;
}

#nsl-custom-login-form-1 > div.nsl-container a[data-provider="google"] {
	align-items: center;
	background-color: var(--btn-bg-color);
	display: flex;
	font-style: normal;
	font-weight: var(--font-weight-link);
	justify-content: center;
	letter-spacing: 2.1px;
	min-height: 60px;
	min-width: 250px;
	padding: 20px 25px;
	text-transform: uppercase;
	margin: 0;
}
#nsl-custom-login-form-1 > div.nsl-container a[data-provider="google"] > *,
#nsl-custom-login-form-1
	> div.nsl-container
	a[data-provider="google"]
	.nsl-button-google
	> * {
	font-family: var(--font-family-headings);
	font-weight: var(--font-weight-link);
	letter-spacing: 2.1px;
	color: var(--body-color);
	font-size: var(--font-size);
	line-height: 1;
	text-align: center;
}

#pmpro_social_login div.nsl-container[data-align="left"] {
	text-align: center !important;
}
#pmpro_social_login div.nsl-container .nsl-button-default {
	color: var(--body-color);
}

/* .pmpro_login_wrap { } */

/* .pmpro_lost_password_wrap { } */

/* .pmpro_reset_password_wrap { } */

.pmpro_login_wrap hr,
.pmpro_invoice_wrap hr {
	border: 0.5px dashed #211f1f;
	opacity: 0.3;
}

.pmpro_login_wrap .pmpro_actions_nav {
	justify-content: center;
}

/*---------------------------------------
	Member Profile Edit Page
---------------------------------------*/
/* .pmpro_member_profile_edit_wrap { } */

/* .pmpro_change_password_wrap { } */

/*---------------------------------------
	Misc
---------------------------------------*/

.pmpro_actions_nav {
	display: flex;
	flex-wrap: wrap;
	margin-top: 30px;
}

.pmpro_actions_nav-left {
	margin-left: auto !important;
}

.pmpro_actions_nav-right {
	margin-right: auto !important;
}

/* .pmpro_a-print { } */

/* .pmpro_grey { } */
.clear {
	clear: both;
}

.pmpro_small {
	font-size: 0.8em;
	/* display: none;  */
}

/*---------------------------------------
	Responsive Styles
---------------------------------------*/
