.elementor-11 .elementor-element.elementor-element-529abe2f{--display:flex;--margin-top:60px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-11 .elementor-element.elementor-element-b2106e3{--display:flex;--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-heading .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.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-11 .elementor-element.elementor-element-cb4fad0.elementor-element{--align-self:center;}.elementor-11 .elementor-element.elementor-element-cb4fad0 .elementor-heading-title{font-family:"Goblin One", Sans-serif;font-weight:600;color:#060606FA;}.elementor-widget-shortcode .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-shortcode .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}/* Start custom CSS for container, class: .elementor-element-529abe2f */@import url('[https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600;700&display=swap](https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600;700&display=swap)');

/* Scoped to membership container so it doesn't affect other areas */
#wcfm_membership_container,
#wcfm_membership_container * {
box-sizing: border-box;
font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* Form shell */
#wcfm_membership_container .wcfm {
max-width: 980px;
margin: 18px auto;
background: #ffffff;
border-radius: 12px;
padding: 22px;
box-shadow: 0 6px 22px rgba(16, 24, 40, 0.06);
color: #12202b;
line-height: 1.4;
}

/* Two-column layout for larger screens, single column on small screens */
@media (min-width: 860px) {
#wcfm_membership_container .wcfm-container {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 18px 28px;
align-items: start;
}

/* make the expander area span both columns if needed */
#wcfm_membership_container #wcfm_membership_registration_form_expander {
grid-column: 1 / -1;
}
}

@media (max-width: 859px) {
#wcfm_membership_container .wcfm-container {
display: block;
}
}

/* Field group titles & labels */
#wcfm_membership_container .wcfm_title {
margin: 0 0 8px;
font-weight: 600;
font-size: 13px;
color: #0f1720;
}

/* required star */
#wcfm_membership_container .wcfm_title .required,
#wcfm_membership_container .wcfm_ele strong .required {
color: #d84f4f;
margin-left: 6px;
font-weight: 700;
font-size: 12px;
}

/* Inputs, selects, textareas */
#wcfm_membership_container .wcfm-text,
#wcfm_membership_container .wcfm-select,
#wcfm_membership_container textarea {

padding: 10px 12px;
border: 1px solid #e6e9ec;
border-radius: 8px;
font-size: 14px;
background: #fff;
transition: border-color .16s ease, box-shadow .16s ease, transform .06s ease;
color: #0f1720;
outline: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}

/* inputs focus */
#wcfm_membership_container .wcfm-text:focus,
#wcfm_membership_container .wcfm-select:focus,
#wcfm_membership_container textarea:focus {
border-color: #7aa7ff;
box-shadow: 0 6px 18px rgba(122,167,255,0.12);
transform: translateY(-1px);
}

/* Small helper/slug/description line */
#wcfm_membership_container .wcfm_page_options_desc {
font-size: 13px;
color: #5a6b76;
margin: 6px 0 14px;
background: #fbfcfe;
padding: 10px 12px;
border-radius: 8px;
border: 1px solid #f0f4fb;
}

/* Make the store slug stand out */
#wcfm_membership_container .wcfm_store_slug {
font-weight: 600;
color: #0b6cf6;
}

/* Inline field labels (screen-reader hidden remain for a11y) */
#wcfm_membership_container label.screen-reader-text {
position: absolute !important;
left: -9999px !important;
width: 1px !important;
height: 1px !important;
overflow: hidden !important;
}

/* Arrange each field block */
#wcfm_membership_container .wcfm_ele {
margin-bottom: 14px;
position: relative;
}

/* Make full-width elements span both columns on large screens */
@media (min-width: 860px) {
/* fields that should be full width */
#wcfm_membership_container .wcfm_ele.wcfm_page_options_desc,
#wcfm_membership_container .wcfm_ele.wcfm_store_slug,
#wcfm_membership_container #wcfm_membership_registration_submit {
grid-column: 1 / -1;
}
}

/* Select2 (styled dropdown) inside this scope */
#wcfm_membership_container .select2-container--default .select2-selection--single {
height: 44px;
border-radius: 8px;
border: 1px solid #e6e9ec;
padding: 8px 10px;
display: flex;
align-items: center;
font-size: 14px;
background: #fff;
}
#wcfm_membership_container .select2-selection__arrow b {
border-color: #a6b0bb transparent transparent transparent;
}
#wcfm_membership_container .select2-selection__rendered {
color: #0f1720;
line-height: 1;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}

/* Password strength area */
#wcfm_membership_container #password_strength {
margin-top: 6px;
}
#wcfm_membership_container #password-strength-status {
height: 8px;
width: 100%;
background: #eef3ff;
border-radius: 6px;
overflow: hidden;
position: relative;
border: 1px solid #eef3ff;
}
#wcfm_membership_container #password-strength-status::after {
content: '';
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 0%;
background: linear-gradient(90deg,#ff6b6b,#38b2ac);
transition: width .28s ease;
border-radius: 6px;
}

/* Message area */
#wcfm_membership_container .wcfm-message {
margin: 14px 0;
padding: 12px;
border-radius: 10px;
background: #fff7ed;
color: #6b4a00;
border: 1px solid #ffedd5;
display: none; /* show when JS adds messages */
}

/* Buttons wrapper and submit button */
#wcfm_membership_container .wcfm_form_simple_submit_wrapper {
display: flex;
gap: 12px;
align-items: center;
margin-top: 12px;
flex-wrap: wrap;
}

/* Primary button style */
#wcfm_membership_container .wcfm_submit_button,
#wcfm_membership_container input.wcfm_submit_button[type="submit"] {
display: inline-block;
padding: 10px 18px;
border-radius: 10px;
font-weight: 600;
font-size: 14px;
cursor: pointer;
border: none;
background: linear-gradient(180deg,#0b6cf6,#0757d1);
color: #fff;
text-decoration: none;
box-shadow: 0 8px 20px rgba(11,108,246,0.14);
transition: transform .14s ease, box-shadow .14s ease, opacity .12s ease;
}

/* Secondary link button */
#wcfm_membership_container .wcfm_form_simple_submit_wrapper a.wcfm_submit_button {
background: transparent;
color: #0b6cf6;
border: 1px solid #e6efff;
box-shadow: none;
}

/* Hover & active */
#wcfm_membership_container .wcfm_submit_button:hover {
transform: translateY(-2px);
box-shadow: 0 14px 30px rgba(11,108,246,0.12);
}
#wcfm_membership_container .wcfm_submit_button:active {
transform: translateY(0);
opacity: .95;
}

/* Small helper / hint text under inputs */
#wcfm_membership_container .wcfm_ele .hint,
#wcfm_membership_container .wcfm_ele .description {
display: block;
margin-top: 6px;
font-size: 12px;
color: #6b7780;
}

/* Validation error state */
#wcfm_membership_container .wcfm-text.invalid,
#wcfm_membership_container .wcfm-select.invalid {
border-color: #e04b4b !important;
box-shadow: 0 6px 18px rgba(224,75,75,0.06);
}

/* Small responsive tweaks */
@media (max-width: 480px) {
#wcfm_membership_container .wcfm {
padding: 14px;
border-radius: 10px;
}
#wcfm_membership_container .wcfm_submit_button {
width: 100%;
text-align: center;
}
}

/* Accessibility: focus visible ring */
#wcfm_membership_container .wcfm-text:focus-visible,
#wcfm_membership_container .wcfm-select:focus-visible,
#wcfm_membership_container .wcfm_submit_button:focus-visible {
outline: 3px solid rgba(11,108,246,0.16);
outline-offset: 2px;
}

/* Keep any existing icon or plugin markup in place but tidy spacing */
#wcfm_membership_container .wcfm-clearfix {
clear: both;
display: block;
height: 1px;
visibility: hidden;
}

/* Minor: ensure the select2 dropdown aligns inside our container */
#wcfm_membership_container .select2-container {
max-width: 100%;
}

/* Utility: subtle divider */
#wcfm_membership_container .wcfm-divider {
height: 1px;
background: #f1f4f7;
margin: 18px 0;
border-radius: 2px;
}/* End custom CSS */