.elementor-7746 .elementor-element.elementor-element-9b22c7b{--display:flex;--min-height:90vh;--justify-content:center;--padding-top:50px;--padding-bottom:150px;--padding-left:0px;--padding-right:0px;}.elementor-7746 .elementor-element.elementor-element-30bf91b{--display:flex;--min-height:780px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:2px 2px 2px 2px;--border-top-width:2px;--border-right-width:2px;--border-bottom-width:2px;--border-left-width:2px;--border-radius:23px 23px 23px 23px;box-shadow:5px 5px 0px 0px #000000;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7746 .elementor-element.elementor-element-30bf91b:not(.elementor-motion-effects-element-type-background), .elementor-7746 .elementor-element.elementor-element-30bf91b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-e81ac6c );}.elementor-7746 .elementor-element.elementor-element-0203d94{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-7746 .elementor-element.elementor-element-9415ea0{background-color:var( --e-global-color-8e4ccb1 );padding:6px 19px 6px 0px;border-style:solid;border-width:0px 0px 2px 0px;border-radius:22px 22px 0px 0px;text-align:right;}.elementor-7746 .elementor-element.elementor-element-9415ea0 .elementor-heading-title{font-family:"Red Hat Text", Sans-serif;font-size:28px;font-weight:500;color:var( --e-global-color-primary );}.elementor-7746 .elementor-element.elementor-element-1507b9f{background-color:#ED8CBF5C;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:5px 0px 02px 020px;border-style:solid;border-width:0px 0px 02px 0px;}.elementor-7746 .elementor-element.elementor-element-1507b9f .elementor-heading-title{font-family:"Teko", Sans-serif;font-size:36px;font-weight:400;letter-spacing:0.2px;}.elementor-7746 .elementor-element.elementor-element-2bdd0d1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7746 .elementor-element.elementor-element-ed798e8{background-color:var( --e-global-color-704dae2 );padding:6px 19px 6px 0px;border-style:solid;border-width:0px 0px 2px 0px;border-radius:22px 22px 0px 0px;text-align:right;}.elementor-7746 .elementor-element.elementor-element-ed798e8 .elementor-heading-title{font-family:"Red Hat Text", Sans-serif;font-size:28px;font-weight:500;color:var( --e-global-color-primary );}.elementor-7746 .elementor-element.elementor-element-7bfda14{background-color:#7FBAD061;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:5px 0px 02px 020px;border-style:solid;border-width:0px 0px 02px 0px;}.elementor-7746 .elementor-element.elementor-element-7bfda14 .elementor-heading-title{font-family:"Teko", Sans-serif;font-size:36px;font-weight:400;letter-spacing:0.2px;}.elementor-7746 .elementor-element.elementor-element-cc7d309{padding:0px 0px 0px 0px;z-index:1.0E+32;}@media(max-width:767px){.elementor-7746 .elementor-element.elementor-element-9b22c7b{--padding-top:0px;--padding-bottom:0150px;--padding-left:020px;--padding-right:020px;}.elementor-7746 .elementor-element.elementor-element-28c8799{padding:0px 0px 0px 0px;}}@media(min-width:768px){.elementor-7746 .elementor-element.elementor-element-9b22c7b{--content-width:565px;}}/* Start custom CSS */.e-con.e-con>.e-con-inner>.elementor-widget, .elementor.elementor .e-con>.elementor-widget {
    max-height: 110px;
}

/* ================================
   HIDE LOGGED-IN MESSAGE
   ================================ */

#pmpro_account_loggedin {
    display: none !important;
}

/* ================================
   STYLE PAYPAL BUTTON - WITH PADDING
   ================================ */

/* Remove wrapper constraints */
.pmpro_form_submit {
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

#pmpro_submit_span {
    width: 100% !important;
    padding: 0 0px !important;
    box-sizing: border-box !important;
    display: block !important;
}

/* Target PayPal button */
input[value*="PayPal"],
input[value*="Check Out with PayPal"],
.pmpro_btn-submit-paypalexpress,
input.pmpro_btn-submit-paypalexpress,
button.pmpro_btn-submit-paypalexpress,
#pmpro_btn-submit-paypalexpress {
    /* Reset */
    all: unset !important;
    
    /* Styling */
    background: #ED8CBF !important;
    background-color: #ED8CBF !important;
    background-image: none !important;
    
    /* NEARLY FULL WIDTH - accounting for wrapper padding */
    width: calc(100% - 60px) !important;
    max-width: calc(100% - 60px) !important;
    box-sizing: border-box !important;
    
    /* BIG PADDING INSIDE */
    margin: 0px 30px !important;
    padding: 16px 115px !important;
    margin-top: -60px !important;
    margin-bottom: 25px !important;
    
    /* Typography */
    font-family: 'Nunito', sans-serif !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    color: black !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    line-height: 1.2 !important;
    text-align: center !important;
    
    /* Border and Shadow */
    border: 2px solid #333 !important;
    border-radius: 10px !important;
    box-shadow: 4px 4px 0px #333 !important;
    
    /* Display */
    cursor: pointer !important;
    outline: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 15px !important;
    min-height: 54px !important;
    margin-left: 30px !important;
    /* Animation */
    transition: all 0.2s ease !important;
}

/* Hover */
input[value*="PayPal"]:hover,
.pmpro_btn-submit-paypalexpress:hover {
    background: #f5a8d3 !important;
    transform: translateY(-2px) !important;
    box-shadow: 5px 5px 0px #333 !important;
}

/* Active */
input[value*="PayPal"]:active,
.pmpro_btn-submit-paypalexpress:active {
    transform: translateY(0px) !important;
    box-shadow: 2px 2px 0px #333 !important;
}

/* PayPal logo styling */
input[value*="PayPal"] img,
.pmpro_btn-submit-paypalexpress img {
    max-height: 20px !important;
    vertical-align: middle !important;
}

/* ================================
   MOBILE RESPONSIVE
   ================================ */

@media (max-width: 768px) {
    #pmpro_submit_span {
        padding: 0 20px !important;
    }
    
    input[value*="PayPal"],
    .pmpro_btn-submit-paypalexpress {
        width: calc(100% - 40px) !important;
        margin: 8px 20px !important;
    }
}

/* Ensure BOTH password containers are positioned correctly */
.pmpro_form_field:has(#password),
.pmpro_form_field:has(#password2) {
    position: relative !important;
}

/* Make sure ALL password toggles are visible and positioned */
.pmpro_form_field-password-toggle {
    position: absolute !important;
    right: 15px !important;
    top: 55% !important;
    transform: translateY(-20%) !important;
    z-index: 10 !important;
    margin: 0 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Ensure password fields have space for the toggle */
#password,
#password2 {
    padding-right: 45px !important;
}

#password2 + .pmpro_form_field-password-toggle {
    top: calc(50% + 7px) !important;
}


/* ================================
   SIGNUP PAGE - CUSTOM STYLING
   ================================ */


label[for="password2"] {
    margin-top: 15px !important;
}

/* Hide ONLY the pricing text, keep the discount code section */
#pmpro_pricing_fields .pmpro_card_title,
#pmpro_pricing_fields .pmpro_level_name_text,
#pmpro_pricing_fields #pmpro_level_cost {
    display: none !important;
}

/* Keep the discount code section visible */
#pmpro_pricing_fields .pmpro_card_actions {
    display: block !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: none !important;
}

/* Remove the level selection message at top of page */
.page-header {
    display: none !important;
}

/* Main form styling */
#pmpro_form {
    max-width: 100% !important;
    margin-top: -40px !important;
}

/* Remove Default PMPro Card Styling */
.pmpro_card {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 30px !important;
}

/* Hide all card titles */
.pmpro_card_title,
.pmpro_form_heading {
    display: none !important;
}

/* Input Labels - TALLER with MORE SPACING */
.pmpro_form_label {
    font-family: 'Nunito', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #333 !important;
    display: block !important;
    margin-bottom: 3px !important;
    margin-top: 0 !important;
    padding-left: 5px !important;
    line-height: 1.4 !important;
}

/* All Input Fields - TALLER */
.pmpro_form_input-text,
.pmpro_form_input-email,
.pmpro_form_input-password,
.pmpro_form_input-select {
    width: 100% !important;
    padding: 14px 15px !important;
    font-family: 'Nunito', sans-serif !important;
    font-size: 12px !important;
    background: white !important;
    border: 2px solid #333 !important;
    border-radius: 10px !important;
    box-shadow: 3px 3px 0px #333 !important;
    transition: all 0.2s ease !important;
    margin-bottom: 0 !important;
    margin-top: -5px !important;
    min-height: 48px !important;
    line-height: 1.5 !important;
}

/* Password fields need extra right padding for toggle button */
.pmpro_form_input-password {
    padding-right: 5px !important;
}

/* Input Focus States */
.pmpro_form_input-text:focus,
.pmpro_form_input-email:focus,
.pmpro_form_input-password:focus,
.pmpro_form_input-select:focus {
    outline: none !important;
    transform: translateY(-2px) !important;
    box-shadow: 4px 4px 0px #333 !important;
}

/* Remove the 2-column layout - make everything single column */
.pmpro_cols-2 {
    display: block !important;
}

.pmpro_cols-2 > * {
    width: 100% !important;
    margin-bottom: 0 !important;
}

/* Hide ONLY Confirm Email field */
.pmpro_form_field-bconfirmemail {
    display: none !important;
}

/* Form Fields - SMALLER SPACING between each field */
.pmpro_form_field {
    margin-bottom: 0px !important;
    margin-top: 0px !important;
}

/* Password Toggle Button - FIXED POSITIONING */
.pmpro_form_field-password-toggle {
    position: absolute !important;
    right: 15px !important;
    top: 50% !important;
    transform: translateY(75%) !important;
    z-index: 10 !important;
    margin: 0 !important;
}

.pmpro_form_input-password {
    padding-right: 45px !important;
}

.pmpro_btn-password-toggle {
    background: transparent !important;
    border: none !important;
    padding: 5px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    pointer-events: auto !important;
    outline: none !important;
    margin: 0 !important;
}

.pmpro_btn-password-toggle:focus {
    outline: none !important;
    box-shadow: none !important;
}

.pmpro_icon svg {
    stroke: #ED8CBF !important;
}

.pmpro_icon svg:hover {
    stroke: #d47aab !important;
}

.pmpro_form_field-password-toggle-state {
    display: none !important;
}

/* Hide billing address and payment fields */
#pmpro_billing_address_fields,
#pmpro_payment_information_fields {
    display: none !important;
}

/* ================================
   TERMS CHECKBOXES - CLOSER TO LAST FIELD
   ================================ */

#terms-checkboxes {
    margin-top: -20px !important;
    margin-bottom: 20px !important;
    padding-left: 40px !important;
}

.terms-checkbox-item {
    display: flex !important;
    align-items: flex-start !important;
    margin-bottom: 10px !important;
    gap: 10px !important;
}

.terms-checkbox-item:last-child {
    margin-bottom: 0 !important;
}

.terms-checkbox-item input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    margin-top: 2px !important;
    margin-bottom: 0 !important;
    accent-color: #ED8CBF !important;
    border: 2px solid #333 !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
}

.terms-checkbox-item label {
    font-family: 'Nunito', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #333 !important;
    line-height: 1.5 !important;
    cursor: pointer !important;
    padding-left: 0 !important;
    margin: 0 !important;
}

.terms-checkbox-item label a {
    color: #ED8CBF !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    transition: color 0.2s ease !important;
}

.terms-checkbox-item label a:hover {
    color: #d47aab !important;
    text-decoration: underline !important;
}

.terms-error {
    color: #e74c3c !important;
    font-family: 'Nunito', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    margin-top: 8px !important;
    display: none !important;
    padding-left: 0 !important;
}

/* Submit Button - FULL WIDTH AND TALLER */
#pmpro_btn-submit {
    width: 89% !important;
    margin: 8px 30px 0 30px !important;
    padding: 16px 20px !important;
    font-family: 'Nunito', sans-serif !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    color: black !important;
    background: #ED8CBF !important;
    border: 2px solid #333 !important;
    border-radius: 10px !important;
    box-shadow: 4px 4px 0px #333 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-top: 8px !important;
    margin-bottom: 0 !important;
    outline: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    display: block !important;
    min-height: 54px !important;
    line-height: 1.2 !important;
}

#pmpro_btn-submit:hover {
    background: #f5a8d3 !important;
    transform: translateY(-2px) !important;
    box-shadow: 5px 5px 0px #333 !important;
}

#pmpro_btn-submit:active {
    transform: translateY(0px) !important;
    box-shadow: 2px 2px 0px #333 !important;
}

#pmpro_btn-submit:focus {
    outline: none !important;
}

/* Form submit wrapper */
.pmpro_form_submit {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

#pmpro_submit_span {
    display: block !important;
    width: 100% !important;
}

/* Processing message */
#pmpro_processing_message {
    text-align: center !important;
    font-family: 'Nunito', sans-serif !important;
    font-size: 14px !important;
    color: #666 !important;
    margin-top: 15px !important;
}

/* Card Actions - "Already have account" link */
.pmpro_card_actions {
    margin: -25px 0px -30px 0px !important;
    padding: 20px 30px 0 30px !important;
    border-top: 2px solid #333 !important;
    border-bottom: none !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center !important;
    font-family: 'Nunito', sans-serif !important;
    font-size: 14px !important;
    color: #666 !important;
    font-weight: 500 !important;
    width: 100%;
}

.pmpro_card_actions::before,
.pmpro_card_actions::after {
    display: none !important;
    content: none !important;
}

.pmpro_card_actions a {
    color: #ED8CBF !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    transition: color 0.2s ease !important;
}

.pmpro_card_actions a:hover {
    color: #d47aab !important;
    text-decoration: underline !important;
}

/* Remove any borders */
#pmpro_user_fields,
#pmpro_user_fields .pmpro_card,
#pmpro_user_fields .pmpro_card_content {
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* Form Fields Container */
.pmpro_form_fields {
    padding: 0 !important;
    margin: 0 !important;
}

/* Card Content */
.pmpro_card_content {
    padding: 0 !important;
    border: none !important;
}

/* Hide the "You have selected" text */
.pmpro_level_name_text {
    display: none !important;
}

/* Messages */
#pmpro_message,
#pmpro_message_bottom {
    padding: 12px 15px !important;
    border-radius: 10px !important;
    border: 2px solid #333 !important;
    font-family: 'Nunito', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    margin-bottom: 20px !important;
}

.pmpro_success {
    background: #99D1AE !important;
    color: #333 !important;
}

.pmpro_error {
    background: #FFB6C1 !important;
    color: #333 !important;
}

/* Hide the fullname honeypot field */
.pmpro_hidden {
    display: none !important;
}

/* Asterisks in pink */
.pmpro_asterisk abbr {
    color: #ED8CBF !important;
    text-decoration: none !important;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .pmpro_card {
        padding: 25px !important;
    }
    
    .pmpro_card_actions {
        margin: 35px -25px 0 -25px !important;
        padding: 20px 25px 0 25px !important;
    }
    
    .terms-checkbox-item label {
        font-size: 13px !important;
    }
}/* End custom CSS */