.user-dashboard {
    text-align: center;
}

.fp_form {
    width: 100%;
    max-width: 400px;
    margin: auto;
}

.fp_form input[type="submit"] {
    width: 100%;
    border-radius: 5px;
}

.dashboard__inner {
    max-width: 35rem; width: 100%; margin: auto;
}

.db_topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2rem;
}

.db_middlebar {
    display: flex;
    justify-content: space-between;
    column-gap: 20px;
}

.db_leftinfo, .db_rightinfo {
    flex-basis: 50%;
    border-radius:10px;
    padding: 20px;
    border:1px solid #00000045;
    text-align: left;
}

.db_leftinfo h3, .db_rightinfo h2 {
    text-align: left;
    margin-bottom: 20px;
    font-size: 1.25rem;
    font-weight: normal;
}

.signup_box {
    background: #eff1f3;
    border-radius: 10px;
    padding: 20px;
    text-align: center;
    margin: 20px 0;
}

.signup_box h2 {
    font-size: 1.125rem;
    line-height: 1.6875rem;
    color:#000;
    margin: 0 0 20px;
}

.signup_box a {
    display: block;
    background: #fff;
    padding: 10px;
    border-radius: 10px;
    border: 1px solid #dcd6d6;
    color:#000;
}

.signup_box a:hover {
    background-color: #000;
    color:#fff;
}

#payment-form button {
    margin-top:20px;
}

.db_rightinfo h3 {
    text-align: left;
    font-size: 14px;
    font-weight: 100;
    font-family: inherit;
    margin-bottom: 10px;
}

.db_footerbar {
    margin-bottom: 20px;
    margin-top: 50px;
    text-align: left;
}

.db_rightinfo p {
    text-align: left;
    margin-bottom: 10px;
}

.user-dashboard .db_rightinfo button {
    background-color: transparent !important;
    padding: 0;
    margin-bottom: 10px;
    font-size: .75rem;
    line-height: .975rem;
    color:#fc584b;
    min-height: 1px;
}

.db_leftinfo h2 {
    text-align: left;
    margin-bottom: 20px;
    font-size: 1.5rem;
    font-weight: normal;
}

.db_leftinfo p {
    font-size: 12px;
    text-align: left;
}

.db_leftinfo button {
    display: block;
    width: 100%;
    margin: 0;
}

.db_topbar h2 {
    margin: 0;
}

.beat-login-form, .error-message {
    width: 100%;
    max-width: 400px;
    margin: auto;

}

.beat-login-form label, .beat-login-form input[type="submit"] {
	margin-top: 20px;
}

#payment-form #card-number {
	padding:10px !important;
}

.field.StripeElement {
	padding: 10px;
    border: 1px solid #00000038;
    border-radius: 5px;
    margin-bottom: 20px;
}

.user-dashboard button.active {
    background: #8A0B4F;
}

.user-dashboard .container {
    max-width: 800px;
    margin: 20px auto;
    background-color: #fff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    min-height: 470px;
}

.user-dashboard #userDetails, 
.user-dashboard #paymentMethod, 
.user-dashboard #userInvoices, 
.user-dashboard #userPlan {
    display: none;
    margin-top: 20px;
}

.user-dashboard button, a#addCoupon {
    background-color: #fc584b;
    color: #fff;
    padding: 10px;
    border: none;
    cursor: pointer;
    border-radius: 5px;
   
    transition: background-color 0.3s ease;
}

.swal2-container {
	z-index:1000000;
}

a#addCoupon {
	display:block;
	margin:0;
	text-align:center;
}

.user-dashboard .logout-button button {
    background-color: #fc584b;
    color: #fff;
    padding: 10px;
    border: none;
    cursor: pointer;
    border-radius: 5px;
    margin: 0px 5px;
}

.error-message {
    color: #ff0000;
    margin-top: 10px;
}

.planModel h2.heading {
  font-size: 42px;margin-bottom: 40px;
}

.popup_data {
  display: flex;
  justify-content: space-between;
  column-gap: 20px;
}

.closr1 {
	position: absolute;
    right: 20px;
    top: 0px;
    font-size: 52px;
    line-height: 1;
}

.modal-content {
	position: relative;
}

.popup_data .elementor-icon-list-items {
	margin-top: 30px;
	list-style: none;
}

.popup_data button {
	margin: 0;
}

.plan_1 {
  background: #f6f6f6;
    padding: 20px;
    border-radius: 10px;
    flex-basis:50%;
}
.popup_data .elementor-icon-list-items svg {
	width: 15px; margin-right: 10px;
}

.modal {
	display: none; /* Hidden by default */
	position: fixed; /* Stay in place */
	z-index: 100000; /* Sit on top */
	left: 0;
	top: 0;
	width: 100%; /* Full width */
	height: 100%; /* Full height */
	overflow: auto; /* Enable scroll if needed */
	background-color: rgb(0,0,0); /* Fallback color */
	background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
	align-items: center;
	justify-content: center;
}

/* Modal Content/Box */
.modal-content {
	background-color: #fefefe;
    margin: auto;
    padding: 20px;
    border: 1px solid #888;
    width: 100%;
    max-width: 400px;
}

/* The Close Button */
.close, .close1, .closepass {
	color: #aaa;
	float: right;
	font-size: 28px;
	cursor: pointer;
	font-weight: bold;
}

.close:hover,
.close:focus, 
.close1:hover,
.close1:focus {
	color: black;
	text-decoration: none;
	cursor: pointer;
}

.beat-login-form input[type="submit"] {
	width: 100%;
	border-radius: 5px;
}

.forgot_pass a {
  display: block;
    text-align: center;
    background: transparent;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 5px;
    padding: 8px;
    margin-top: 20px;
    color: #000;
}

.field_input {
	position:relative;
}

.field_input span {
    position:absolute;
    top: 3;
    bottom: 0;
    right: 0;
    padding: 10px;
    cursor:pointer;
}

.field_input span.active .view_pass {display:none;}
.field_input span.active .hide_pass {display:block;}
.field_input span .view_pass {display:block;}
.field_input span .hide_pass {display:none;}

.field_input span svg {width:20px;}

.field_one {text-align:left; margin-bottom:20px;}

.field_input input {padding-right:60px;}

.cpasserror, .passerror, .error, .emailerror, .checkerror, .couponerror, .ferror {
	color:#e60000; font-size:12px;
}

.submit_btn {
	margin-top: 20px;
}

#planModel .modal-content {
    width:100%;
    max-width:800px !important;
}
.card-errors {
	color: #e60000;
	padding: 10px 0 0;
}

.have_coupon label {
	display: inline-block;
}

.coupon_box {
	display: none;
	column-gap: 10px;
}

.coupon_box.active {
	display: flex;
}

.register_plans #card-element {
    margin-bottom: 20px;
    border: 1px solid #dadada;
    border-radius: 5px;
    padding: 10px;
}

#planModel .elementor-top-section {
    position: static;
    width: 100% !important;
    min-width: 1px !important;
}

#planModel .elementor-top-section .elementor-background-overlay {
    z-index:-1 !important;
}
.resend_btn {
	text-align: center;
	margin-top: 20px;
}

.whitebtn.btn {
	background-color: #c8c8c8;
}
.submit_btn_v {
	display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Absolute Center Spinner */
.loading {
	position: fixed;
	z-index: 999;
	height: 2em;
	width: 2em;
	overflow: show;
	margin: auto;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	display: none;
}

.loading.active {display: block;}

/* Transparent Overlay */
.loading:before {
	content: '';
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: radial-gradient(rgba(20, 20, 20,.8), rgba(0, 0, 0, .8));
	background: -webkit-radial-gradient(rgba(20, 20, 20,.8), rgba(0, 0, 0,.8));
}

/* :not(:required) hides these rules from IE9 and below */
.loading:not(:required) {
	/* hide "loading..." text */
	font: 0/0 a;
	color: transparent;
	text-shadow: none;
	background-color: transparent;
	border: 0;
}

.loading:not(:required):after {
	content: '';
	display: block;
	font-size: 10px;
	width: 1em;
	height: 1em;
	margin-top: -0.5em;
	-webkit-animation: spinner 150ms infinite linear;
	-moz-animation: spinner 150ms infinite linear;
	-ms-animation: spinner 150ms infinite linear;
	-o-animation: spinner 150ms infinite linear;
	animation: spinner 150ms infinite linear;
	border-radius: 0.5em;
	-webkit-box-shadow: rgba(255,255,255, 0.75) 1.5em 0 0 0, rgba(255,255,255, 0.75) 1.1em 1.1em 0 0, rgba(255,255,255, 0.75) 0 1.5em 0 0, rgba(255,255,255, 0.75) -1.1em 1.1em 0 0, rgba(255,255,255, 0.75) -1.5em 0 0 0, rgba(255,255,255, 0.75) -1.1em -1.1em 0 0, rgba(255,255,255, 0.75) 0 -1.5em 0 0, rgba(255,255,255, 0.75) 1.1em -1.1em 0 0;
	box-shadow: rgba(255,255,255, 0.75) 1.5em 0 0 0, rgba(255,255,255, 0.75) 1.1em 1.1em 0 0, rgba(255,255,255, 0.75) 0 1.5em 0 0, rgba(255,255,255, 0.75) -1.1em 1.1em 0 0, rgba(255,255,255, 0.75) -1.5em 0 0 0, rgba(255,255,255, 0.75) -1.1em -1.1em 0 0, rgba(255,255,255, 0.75) 0 -1.5em 0 0, rgba(255,255,255, 0.75) 1.1em -1.1em 0 0;
}

/* Animation */
@-webkit-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
}
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
}
}
@-moz-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
}
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
}
}
@-o-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
}
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
}
}
@keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

.signup_heading {
  text-align: center;
  font-size: 24px;
  margin-bottom: 40px;
}

.form_steps {
    display: flex;
    justify-content: center;
    column-gap: 40px;
}

.fstep {
    width: 8rem;
    text-align: center;
}

.fstep.active {

}

.fstep.active span {
    background-color: #ffb736;
    width: 30px;
    border:1px solid #ffb736;;
    border-radius: 120px;
    color: #142132;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
}

.fstep span {
    background-color: #fff;
    border:1px solid #000;
    width: 30px;
    border-radius: 120px;
    color: #fff;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
    color:#000;
}

.fstep:nth-child(2) {
	position: relative;
}

.step_register button, .couponsubmit {
    border-radius:60px !important;
    background:#ffb736 !important;
    color:#142132 !important;
}

.register_form a {
    color:#ffb736;
}

.fstep:nth-child(2):before, .fstep:nth-child(2):after {
	position: absolute;
	content: "";
	display: block;
	width: 80px;
	height: 1px;
	background: #00000036;
	top: 15px;
}

.fstep:nth-child(2):after {
	right: -60px;
}

.fstep:nth-child(2):before {
	left: -60px;
}

.step_register {
	display: none;
}

.step_register.active {
	display: block;
}

.fstep.active p {
    color: #ffb736;
}

.register_plans {
	display: flex;
	justify-content: center;
	column-gap: 20px;
	margin-top: 40px;
}

.register_plans .plan_1 {
	background-color: #fff;
}

.register_plans .elementor-icon-list-items svg, .selected_plan .elementor-icon-list-items svg {
    width: 15px;
    margin-right: 10px;
}

.register_plans .elementor-icon-list-items, .selected_plan .elementor-icon-list-items {
    margin-top: 30px;
    list-style: none;
}

.step_2_cont .plan_1 {
	display: none;
	background-color: #fff;
}

.step_2_cont .plan_1.active {
	display: block;
}

.step_2_cont {
    display: flex;
    width: 50%;
    column-gap: 40px;
    justify-content: space-between;
    margin: auto;
}

.step_2_cont {
	margin-top: 30px;
}

.step_2_cont .field_input input {
	background-color: #fff;
}

.loader {
	border: 2px solid #f3f3f3;
	border-radius: 50%;
	border-top: 2px solid #000;
	width: 20px;
	height: 20px;
	-webkit-animation: spin 2s linear infinite; /* Safari */
	animation: spin 2s linear infinite;
	margin-left:10px;
	display:none;
}

.loader.active {
    display:inline-block;
}

/* Safari */
@-webkit-keyframes spin {
	0% { -webkit-transform: rotate(0deg); }
	100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

.register_plans input[type="radio"] {
	display: none;
}

.newsletter_option {
	display: flex;
	align-items: baseline;
}

.custom_tabs{
    text-align:center;
    margin-bottom:40px;
}
.custom_tabs a{
    display:inline-block;
    margin:0 20px;
    color:#000;
    border:2px solid #000;
    padding:10px 30px;
    border-radius:5px;
    min-width:160px;
}
.custom_tabs a.active{
    background:#ffb736;
    color:#fff;
    border-color:#ffb736 ;
}
.tab_content{
    display:none;
}
.tab_content.active{
    display:block;
}
.iframe-container
 {
    position: relative;
    width: 100%;
    height: 660px;
    overflow: hidden;
}
.iframe-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

@media screen and (max-width:767px) {
	.db_middlebar, .popup_data {flex-direction: column; row-gap: 20px}
	.register_plans {flex-direction:column; column-gap:40px}
	.step_2_cont {
		width:100%;
	}
	.custom_tabs a {
    display: inline-block;
    margin: 0 5px;
    color: #000;
    border: 2px solid #000;
    padding: 10px 20px;
    border-radius: 5px;
    min-width: 100px;
    font-size: 14px;
}
}