/*---------------------------------------
	Buttons
---------------------------------------*/
.pmpro_btn, .pmpro_btn:link, .pmpro_content_message a, .pmpro_content_message a:link {
	background-color: #EFEFEF;
	background-image: none;
	border: 1px solid #D6D6D6;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #444;
	cursor: pointer;
	display: inline-block;
	font-weight: 700;
	margin: 0;
	padding: 6px 12px;
	text-align: center;
	text-decoration: none;
	text-transform: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
	vertical-align: middle;
	white-space: nowrap;
}
.pmpro_btn:focus, .pmpro_content_message a:focus {
	outline: thin dotted;
	outline: 5px auto -webkit-focus-ring-color;
	outline-offset: -2px;
}
.pmpro_btn:hover,
a.pmpro_btn:hover,
.entry-content a.pmpro_btn:hover,
.pmpro_btn:focus,
.pmpro_checkout .pmpro_btn:hover,
.pmpro_checkout .pmpro_btn:focus,
.pmpro_content_message a:focus,
.pmpro_content_message a:hover {
	-webkit-box-shadow: none;
	border: 1px solid #D6D6D6;
	box-shadow: none;
	text-decoration: none;
}
.pmpro_btn:active,
.pmpro_btn.active {
	background-image: none;
	-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	outline: 0;
}
.pmpro_btn.disabled,
.pmpro_btn[disabled],
fieldset[disabled] .pmpro_btn {
	-webkit-box-shadow: none;
	box-shadow: none;
	cursor: not-allowed;
	filter: alpha(opacity=65);
	opacity: 0.65;
	pointer-events: none;
}
.pmpro_btn.pmpro_btn-cancel,
.pmpro_btn.pmpro_btn-cancel:link,
.pmpro_btn.pmpro_btn-cancel:hover,
.entry-content a.pmpro_btn.pmpro_btn-cancel:hover {
	background: none;
	border: none;
	box-shadow: none;
    color: #666;
    text-decoration: underline;
}
.pmpro_btn.pmpro_btn-submit-checkout {
	width: auto;
}

input[type="button"]#discount_code_button,
input[type="button"]#discount_code_button:hover,
input[type="button"]#discount_code_button:focus,
input[type="button"]#other_discount_code_button,
input[type="button"]#other_discount_code_button:hover,
input[type="button"]#other_discount_code_button:focus {
	-webkit-appearance: none;
    -moz-appearance: none;
	background: none;
    border: none;
	box-shadow: none;
	color: inherit;
    cursor: pointer;
	display: inline-block;
	font-family: inherit;
    font-size: 100%;
	font-weight: normal;
	margin: 0 0 0 5px;
	outline: none;
    padding: 0;
	text-align: center;
    text-decoration: underline;
	text-transform: none;
}

/*---------------------------------------
	Forms
---------------------------------------*/
form.pmpro_form .pmpro_checkout-fields div {
	margin: 0 0 1em 0;
}
form.pmpro_form label {
	font-weight: 700;
	display: block;
	margin: 0;
	text-align: left;
}
form.pmpro_form .pmpro_checkout-field-checkbox label {
	cursor: pointer;
	display: inline-block;
	width: auto;
}
form.pmpro_form label.pmpro_label-inline {
	display: inline-block;
}
form.pmpro_form label.pmpro_clickable {
	cursor: pointer;
}
form.pmpro_form .pmpro_asterisk abbr {
	border: none;
	text-decoration: none;
}
form.pmpro_form input[type=checkbox]#tos {
	width: auto;
}
form.pmpro_form .input,
form.pmpro_form textarea,
form.pmpro_form select {
	display: inline-block;
	max-width: 90%;
}
form.pmpro_form .pmpro_payment-cvv .input,
form.pmpro_form .pmpro_payment-discount-code .input,
form.pmpro_form #other_discount_code.input {
	max-width: 40%;
}
form.pmpro_form .lite {
	color: #666;
}
form.pmpro_form .pmpro_captcha div {
	clear: none;
	margin: 0;
}
form.pmpro_form .pmpro_submit{
	margin-top: 1em;
	text-align: right;
}
form.pmpro_form #pmpro_processing_message {
	color: #999;
	display: block;
	font-style: italic;
	margin: 1em 0 0 0;
	text-align: right;
}
/*--------------------------------------------------
	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: 14px;
	font-weight: 400;
	line-height: 1.5em;
	margin: .5em 0;
	padding: 10px 15px;
}
.pmpro_success {
	background-color: #dff0d8;
	border-color: #d6e9c6;
	color: #3c763d;
}
.pmpro_error {
	background-color: #f2dede;
	border-color: #ebccd1;
	color: #a94442;
}
.pmpro_alert {
	background-color: #fcf8e3;
	border-color: #faebcc;
	color: #8a6d3b;
}
.pmpro_content_message a {
	margin: 5px 5px 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;
}
input.pmpro_error {
	background-image: none;
}
select.pmpro_error {
	background-image: none;
}
/*---------------------------------------
	Membership Checkout
---------------------------------------*/
#pmpro_form .pmpro_checkout h3 {
	margin: 1em 0 0 0;
	padding: 0;
}
.pmpro_checkout h3 span.pmpro_checkout-h3-name {
	display: inline-block;
	margin: 0 .5rem 1rem 0;
}
.pmpro_checkout h3 span.pmpro_checkout-h3-msg {
	font-size: 11px;
	font-style: italic;
	font-weight: normal;
}
#pmpro_payment_method span.gateway_paypalexpress {
	margin-left: 2em;
}
#pmpro_payment_information_fields .pmpro_checkout-fields-display-seal {
	display: grid;
	grid-template-columns: 3fr 1fr;
	grid-gap: 1em;
}
#pmpro_license {
	background: #FFF;
	border: 1px solid #CCC;
	color: #666;
	height: 200px;
	margin: 3px;
	overflow: auto;
	padding: 5px;
}
/*---------------------------------------
	Membership Confirmation
---------------------------------------*/
body.pmpro-confirmation .entry-content ul {
	margin-left: 1.5em;
}
/*---------------------------------------
	Membership Invoice
---------------------------------------*/
body.pmpro-invoice .entry-content ul {
	margin-left: 1.5em;
}
.pmpro_invoice_details {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 1em;
}
.pmpro_invoice_details p {
	margin: 0 0 .5em 0;
	padding: 0;
}
/*---------------------------------------
	Membership Account
---------------------------------------*/
#pmpro_account .pmpro_box {
	border-top: 1px solid #CCC;
	margin: 1em 0;
	padding: 1em 0;
}
#pmpro_account .pmpro_box h3 {
	background: none;
	border: none;
	margin: 0;
	padding: 0;
}
#pmpro_account .pmpro_box p {
	margin: .5em 0 0 0;
	padding: 0;
}
#pmpro_account .pmpro_box ul {
	margin-bottom: 0;
	margin-left: 1.5em;
}
#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_actionlinks a {
	display: inline-block;
	margin-right: .5rem;
	text-decoration: none;
}
.pmpro_actionlinks a:last-child {
	margin-right: 0;
}
.pmpro_hidden {
	display: none;
}
li.pmpro_more {
	list-style-type: none;
	margin-left: -20px;
	padding-left: 0;
	text-align: center;
}
/*---------------------------------------
	Membership Levels
---------------------------------------*/
#pmpro_levels_table {
	background: #FFF;
}
#pmpro_levels_table .pmpro_btn {
	display: block;
}
/*---------------------------------------
	Misc
---------------------------------------*/
.pmpro_a-right {
	float: right;
	font-size: 11px;
	text-align: right;
	text-decoration: underline;
	width: auto;
}
.pmpro_a-print {
	background: url(../images/printer-icon.svg) top left no-repeat;
	color: #345395;
	cursor: pointer;
	float: right;
	font-size: 11px;
	line-height: 16px;
	padding: 0px 0px 2px 20px;
	text-decoration: none;
	width: auto;
}
.pmpro_red {
	color: #CC0000;
}
.pmpro_grey {
	color: #999;
}
.top1em {
	margin-top: 1em;
}
.bot1em {
	margin-bottom: 1em;
}
.bot0em {
	margin-bottom: 0em;
}
.clear {
	clear: both;
}
.pmpro_small {
	font-size: .8em;
}
@media (max-width:768px) {
	form.pmpro_form input[type=text].input, form.pmpro_form input[type=password].input {
		width: 90%;
	}
	form.pmpro_form input[type=text]#other_discount_code, form.pmpro_form input[type=text]#CVV, form.pmpro_form input[type=text]#discount_code {
		width: 40%;
	}
	form.pmpro_form #pmpro_payment_information_fields .pmpro_thead-msg {
		float: none;
		margin-bottom: 10px;
		text-align: left;
		text-wrap: normal;
		white-space: normal;
	}
	#pmpro_payment_information_fields .pmpro_checkout-fields-display-seal {
		display: block;
	}
	form.pmpro_form .pmpro_btn {
		display: block;
		width: 100%;
	}
	form.pmpro_form #pmpro_processing_message {
		text-align: center;
	}
	.pmpro_invoice_details {
		display: block;
	}
}
