


/* Placeholder text (input and textarea) */
.input-text.w-input::placeholder,
.input-textarea.w-input::placeholder {
    font-family: 'Open Sans', sans-serif;
    font-size: 15px;
    color: #767676; /* Darker gray that meets AA standards */
    opacity: 1; /* Ensure full opacity for better readability */ 
}

/* For older browsers */
.input-text.w-input::-webkit-input-placeholder,
.input-textarea.w-input::-webkit-input-placeholder {
    color: #767676;
    opacity: 1;
}

.input-text.w-input::-moz-placeholder,
.input-textarea.w-input::-moz-placeholder {
    color: #767676;
    opacity: 1;
}

.input-text.w-input:-ms-input-placeholder,
.input-textarea.w-input:-ms-input-placeholder {
    color: #767676;
    opacity: 1;
}



/* Input and textarea typed text */
.input-text.w-input,
.input-textarea.w-input,
.input-dropdown.w-select {
    font-family: 'Open Sans', sans-serif;
    font-size: 17px; /* Matches your site's styles */
    line-height: 32px; /* Better spacing */
    color: #333;
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
    resize: none; /* Prevent textarea resizing */
}

/* Error state for inputs */
form.contact-form .input-text.w-input.error,
form.contact-form .input-textarea.w-input.error
form.registration-form .input-text.w-input.error,
form.registration-form .input-textarea.w-input.error,
form.registration-form .input-dropdown.w-select.error {
    border: 2px solid red !important;
    color: #333 !important; /* Ensure text color stays readable */
}



/* Error state for dropdown */
.input-dropdown.w-select.error {
/*    background-color: #F6D7DF !important; /* Light pink background for visibility */*/
}

/* Focus state for inputs */
.input-text.w-input:focus,
.input-textarea.w-input:focus,
.input-dropdown.w-select:focus {
    border: 2px solid #4285f4; /* Blue border for focus */
    outline: none;
    box-shadow: 0 0 5px #4285f4; /* Subtle glow effect */
}

/* Error messages */
.error-message {
    font-family: 'Open Sans', sans-serif;
    font-size: 14px; /* Matches your desired size */
    color: red;
    margin-top: 0px;
    display: none; /* Hidden by default */
}

/* reCAPTCHA widget alignment */
.g-recaptcha {
    margin-top: 0px;
    margin-bottom: 0px;
}

/* Dropdown custom styling */
.input-dropdown.w-select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140"><polygon points="70,105 105,35 35,35" fill="%23333"/></svg>'); /* Custom dropdown arrow */
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 10px 10px;
    padding-right: 30px; /* Space for dropdown arrow */
}

/* Terms and Conditions checkbox */
.terms-wrapper .custom-checkbox {
    margin-right: 10px;
    width: 20px; /* Adjusted checkbox size */
    height: 20px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #fff;
    cursor: pointer;
}

.terms-wrapper .custom-checkbox:checked {
    background-color: #3898ec;
    border-color: #3898ec;
    background-image: url('https://d3e54v103j8qbb.cloudfront.net/static/custom-checkbox-checkmark.589d534424.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 12px 12px; /* Adjust size of the checkmark */
}

/* Ensure consistent alignment for the form wrapper */
.registration-form-wrapper {
    margin: 0 auto; /* Center horizontally */
    text-align: left; /* Reset alignment */
    display: flex; /* Flexbox for layout consistency */
    flex-direction: column; /* Stack elements vertically */
    width: 100%; /* Maintain full width */
    max-width: 600px; /* Optional: Add a consistent max width */
}

/* Ensure parent container maintains consistent alignment */
.container-2-section-4-registration {
    display: flex; /* Flexbox for layout consistency */
    justify-content: center; /* Center horizontally */
    align-items: center; /* Center vertically (if needed) */
    flex-direction: column; /* Stack children vertically */
    width: 100%;
}

/* Scoped to the terms-wrapper class */



/* Wrapper styles */
.terms-wrapper {
    display: flex;
    align-items: flex-start; /* Align checkbox to the top of the text */
    margin-bottom: 20px;
}

/* Checkbox styles */
.terms-wrapper .custom-checkbox {
    margin: 4px 16px 0 0;
    appearance: none;
    width: 28px; /* Match reCAPTCHA size */
    height: 28px;
    border: 2px solid #1f1f1f; /* Light gray border like reCAPTCHA */
    border-radius: 2px; /* Slight rounding */
    background-color: #f9f9f9; /* Light gray background */
    cursor: pointer;
    flex-shrink: 0;
    box-shadow: 0 1px 1px rgba(0,0,0,0.1); /* Subtle shadow */
    transition: border 0.1s ease, background-color 0.1s ease;
}

/* Checkbox hover state */
.terms-wrapper .custom-checkbox:hover {
    border-color: #4285f4; /* Blue border on hover */
    background-color: #fff;
}

/* Checkbox checked state */
.terms-wrapper .custom-checkbox:checked {
    background-color: #4285f4; /* Google blue */
    border-color: #4285f4;
    background-image: url('https://d3e54v103j8qbb.cloudfront.net/static/custom-checkbox-checkmark.589d534424.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 16px 16px;
}

/* Label and text styles */
.terms-wrapper .checkbox-label {
    display: flex;
    align-items: flex-start;
    font-size: 14px;
    line-height: 1.5;
}

.terms-wrapper .checkbox-text {
    font-size: 17px; /* Adjust to match default body text */
    line-height: 32px;
    font-weight: 400; /* Ensure no bold styling */
    margin-top: -4px; /* Add a tiny top margin to align perfectly with checkbox */

}

/* Link styles */
.terms-wrapper .link-terms {
    color: #3898ec;
    text-decoration: none;
}

.terms-wrapper .link-terms:hover {
    text-decoration: underline;
}
