.elementor-627 .elementor-element.elementor-element-3ec1635{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-627 .elementor-element.elementor-element-bb830eb{--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;}.elementor-627 .elementor-element.elementor-element-6e96fa9 > .elementor-widget-container{margin:20px 0px 0px 0px;}.elementor-627 .elementor-element.elementor-element-62d843c{--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;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:12px 12px 12px 12px;--padding-top:60px;--padding-bottom:60px;--padding-left:60px;--padding-right:60px;}.elementor-627 .elementor-element.elementor-element-62d843c.e-con{--align-self:center;}.elementor-widget-login .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-login .elementor-field-group > a{color:var( --e-global-color-text );}.elementor-widget-login .elementor-field-group > a:hover{color:var( --e-global-color-accent );}.elementor-widget-login .elementor-form-fields-wrapper label{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-login .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-login .elementor-field-group .elementor-field, .elementor-widget-login .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-login .elementor-widget-container .elementor-login__logged-in-message{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-627 .elementor-element.elementor-element-7d5a19c .elementor-field-group{margin-bottom:10px;}.elementor-627 .elementor-element.elementor-element-7d5a19c .elementor-form-fields-wrapper{margin-bottom:-10px;}body .elementor-627 .elementor-element.elementor-element-7d5a19c .elementor-field-group > label{padding-bottom:0px;}.elementor-627 .elementor-element.elementor-element-7d5a19c .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-627 .elementor-element.elementor-element-7d5a19c .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-627 .elementor-element.elementor-element-204b75c{--display:flex;}.elementor-627 .elementor-element.elementor-element-11d2f49{--display:flex;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-627 .elementor-element.elementor-element-ecc44d9 > .elementor-widget-container{margin:-40px 0px 0px 0px;}}@media(min-width:768px){.elementor-627 .elementor-element.elementor-element-bb830eb{--width:50%;}.elementor-627 .elementor-element.elementor-element-62d843c{--width:50%;}}/* Start custom CSS for login, class: .elementor-element-7d5a19c *//* Animation Keyframes */
@keyframes vstudio-login-entrance {
    0% { opacity: 0; transform: translateY(40px); }
    100% { opacity: 1; transform: translateY(0); }
}

/* Main Wrapper */
.elementor-627 .elementor-element.elementor-element-7d5a19c {
    animation: vstudio-login-entrance 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.2s forwards;
    opacity: 0; 
    padding: 0; 
    box-shadow: none !important; 
    background: transparent !important; 
}

/* Style Labels */
.elementor-627 .elementor-element.elementor-element-7d5a19c label {
    display: block;
    margin-bottom: 6px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #334155; 
}

/* Style Input Fields */
.elementor-627 .elementor-element.elementor-element-7d5a19c input[type="text"],
.elementor-627 .elementor-element.elementor-element-7d5a19c input[type="password"],
.elementor-627 .elementor-element.elementor-element-7d5a19c input[type="email"] {
    width: 100%;
    padding: 12px;
    margin-bottom: 20px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #f8fafc; 
    transition: all 0.3s;
    font-size: 1rem;
    color: #1f2937;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.05);
}

/* Focus State */
.elementor-627 .elementor-element.elementor-element-7d5a19c input[type="text"]:focus,
.elementor-627 .elementor-element.elementor-element-7d5a19c input[type="password"]:focus,
.elementor-627 .elementor-element.elementor-element-7d5a19c input[type="email"]:focus {
    border-color: #10b981; 
    background: #ffffff;
    outline: none;
    box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.2);
}

/* Style the Submit Button */
.elementor-627 .elementor-element.elementor-element-7d5a19c .elementor-button {
    width: 100%;
    padding: 14px;
    background: linear-gradient(135deg, #0f172a, #1e293b) !important; /* Premium Dark for VSX */
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    cursor: pointer;
    text-transform: uppercase;
    transition: all 0.3s ease;
    box-shadow: 0 5px 10px rgba(15, 23, 42, 0.2);
}

.elementor-627 .elementor-element.elementor-element-7d5a19c .elementor-button:hover {
    transform: translateY(-2px);
    background: #10b981 !important;
    box-shadow: 0 8px 15px rgba(16, 185, 129, 0.4);
}

/* ===========================================
   FIX: LOGOUT & LOGGED-IN STATE VISIBILITY 
   =========================================== */

/* Style for the "Logged in as..." text */
.elementor-627 .elementor-element.elementor-element-7d5a19c .elementor-login__logged-in-message {
    color: #64748b;
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 20px;
    display: block;
}

/* The Logout Link - Styled as a Premium Button */
.elementor-627 .elementor-element.elementor-element-7d5a19c .elementor-login__logged-in-message a {
    display: inline-block;
    margin-top: 15px;
    width: 100%;
    padding: 14px;
    background: #f1f5f9 !important; /* Light Gray Background */
    color: #0f172a !important; /* Dark Text */
    border: 1px solid #e2e8f0 !important;
    border-radius: 10px !important;
    text-align: center;
    font-weight: 800;
    text-decoration: none !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

.elementor-627 .elementor-element.elementor-element-7d5a19c .elementor-login__logged-in-message a:hover {
    background: #fee2e2 !important; /* Soft Red on Hover */
    color: #dc2626 !important; /* Strong Red Text */
    border-color: #fecaca !important;
    transform: translateY(-2px);
}

/* Style the Lost Password Link */
.elementor-627 .elementor-element.elementor-element-7d5a19c .elementor-field-group-sign-in a, 
.elementor-627 .elementor-element.elementor-element-7d5a19c .elementor-lost-password__link {
    color: #14b8a6;
    font-size: 0.9rem;
    text-decoration: none;
    font-weight: 600;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3ec1635 *//* Fix for Fixed Gradient Background in Elementor */

/* 1. Apply styles to the parent section/container */
.elementor-627 .elementor-element.elementor-element-3ec1635 {
    /* Ensure the background property is applied directly to the main element */
    background: #f9fafb !important; /* Fallback for browsers/Elementor editor */
    background: linear-gradient(160deg, #f9fafb 0%, #f0fff4 50%, #f0fdfa 100%) !important;
    
    /* 2. THE FIX: Anchor the background to the viewport */
    background-attachment: fixed !important;
    
    /* 3. Ensure the container covers the full screen initially */
    min-height: 100vh !important;
    
    /* 4. Ensure background covers the element reliably */
    background-size: cover !important;
    background-position: center center !important;
    
    /* Optional: Remove any section overflow that might interfere */
    overflow-x: hidden !important; 
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ecc44d9 *//* Disable underline for all links in Divi, including on hover */

a, a:hover {

text-decoration: none !important;

}/* End custom CSS */