/* SWITCHER CSS */
.switcher{
	display:flex;
  align-items:center;
  justify-content: center;
  flex-wrap:wrap;
}
.switcher label{
	font-weight:normal;
  font-size:18px;
  text-align-last: center;
  font-weight:bold;
}

.saves25Label{
  padding-top:10px;
  font-size:14px;
}

/* SWITCHER CSS */
.switcher{
	display:flex;
  align-items:center;
  justify-content: center;
  flex-wrap:wrap;
}
.switcher label{
	font-weight:normal;
  font-size:20px;
  text-align-last: center;
  font-weight:bold;
}

.saves25Label{
  padding-top:10px;
  font-size:14px!important;
	
}

.switch {
  position: relative;
  display: inline-block;
  width: 80px;
  height: 44px;
	margin:0 10px;
}

.slider:before {
  position: absolute;
  content: "";
  height: 36px;
  width: 36px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
}

input:checked + .slider:before {
  -webkit-transform: translateX(36px);
  -ms-transform: translateX(36px);
  transform: translateX(36px);
}


.switch input { 
  opacity: 0;
  width: 0;
  height: 0;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: .4s;
  transition: .4s;
}


input:checked + .slider {
  background-color: #95C11F;
}

input:focus + .slider {
  box-shadow: 0 0 1px #95C11F;
}


/* Rounded sliders */
.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}


.rwPrice{
    font-size:30px!important;
    font-weight:bold!important;
}

/* BUTTON CHOOSE THIS PLAN CSS */
.rwBtn{
  border:none;
  border-radius:50px;
  padding:15px 20px;
  background-color: #000;
  color:#fff;
  cursor: pointer;
  transition:ease all 300ms;
  font-size:16px;
}
.rwBtn:hover{
  background-color: #95C11F!important;
  color:#fff;
}

.RW{
    color:#fff!important;
    border:solid 1px #fff!important;
    background-color:transparent;
}   
.RW:hover{
    background-color:#fff;
}


/* FORM STRIPE CSS */

/**
 * The CSS shown here will not be introduced in the Quickstart guide, but shows
 * how you can use CSS to style your Element's container.
 */
 

.StripeElement {
 box-sizing: border-box;
 box-shadow: 0 0 0 1px #e0e0e0, 0 2px 4px 0 rgba(0,0,0,.07), 0 1px 1.5px 0 rgba(0,0,0,.05)!important;
 height: 40px;

 padding: 10px 12px;

 border: 1px solid transparent;
 border-radius: 4px;
 background-color: white;

 box-shadow: 0 1px 3px 0 #e6ebf1;
 -webkit-transition: box-shadow 150ms ease;
 transition: box-shadow 150ms ease;
 
}

.StripeElement--focus {
 box-shadow: 0 1px 3px 0 #cfd7df;
}

.StripeElement--invalid {
 border-color: #fa755a;
}

.StripeElement--webkit-autofill {
 background-color: #fefde5 !important;
}
.form-row{
  margin-bottom:30px!important;
}

/* Custom CSS */


.diyPaymentPage{
width:100%;
margin:0 auto;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
box-sizing:border-box!important;
}

.diyPaymentPage label, .planTitle{
  color: #727272!important;
}

.diyPaymentPage input{
box-sizing:border-box!important;
height:40px;
padding:5px;
border-radius:3px;
border:none!important;
margin-bottom:20px!important;
box-shadow: 0 0 0 1px #e0e0e0, 0 2px 4px 0 rgba(0,0,0,.07), 0 1px 1.5px 0 rgba(0,0,0,.05);
background-color: #fff!important;
}

.diyPaymentBtn{
background-color: #000;
padding:15px 40px;
border-radius:50px!important;
font-weight:bold;
color:white;
font-size:16px;
box-shadow: rgba(0, 0, 0, 0.25) 0px 3px 11px 0px;
border:none!important;
cursor:pointer;
margin-top:30px!important;
transition:ease all 300ms;
}
.diyPaymentBtn:hover{
  background-color:#95C11F;
}

.rf100{
width:100%!important;
}
.rf50{
width:49%!important;
}

.diyTotal-label{
 display:flex;
 flex-wrap: wrap;
 box-sizing: border-box;
 justify-content: space-between;
 font-weight:bold;
 font-size:26px;
}

.m30 {
    margin-bottom: 5px!important;
    display: block!important;
}
.diyPlan-price{
  text-align: right!important;
}


.diy-divider{
  border-top:1px solid #e1e1e1;
  margin:10px 0px;
}

#card-errors{
  padding-top:10px!important;
}

/* CUSTOM CHECKOUT FORM CSS */
.checkoutForm{
  max-width:450px;
  position:relative;
  text-align: left;
  background-color: #efefef;
  padding:20px 40px 60px;
  border-radius:5px;
  position:fixed;
  margin:0 auto;
  position:fixed;
  left: 50%;
  top: 50%;
  -ms-transform: translate(-50%,-50%);
  -moz-transform:translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
   transform: translate(-50%,-50%);
   display:none;
   z-index:999;
}

/* Close Icon */
.rw-close {
  position: absolute;
  right: 12px;
  top: 12px;
  width: 32px;
  height: 32px;
  opacity: 0.3;
  z-index:9999;
}
.rw-close:hover {
  opacity: 1;
}
.rw-close:before, .rw-close:after {
  position: absolute;
  left: 15px;
  content: ' ';
  height: 25px;
  width: 2px;
  background-color: #333;
}
.rw-close:before {
  transform: rotate(45deg);
}
.rw-close:after {
  transform: rotate(-45deg);
}


/* On screens that are 600px or less, set the background color to olive */
@media screen and (max-width: 800px) {
  .rf50{
	width:100%!important;
    }
  .diyPaymentBtn {
    margin: 0 auto;
  }
  
.saves25Label{
  padding-top:10px;
  font-size:12px;	
}
}