/* Wufoo Form Styling - Custom CSS for Wufoo iFrame */

/* Hide default Wufoo branding and title */
#header,
.info h2,
.info div {
    display: none !important;
}

/* Form container */
.wufoo {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Remove Wufoo's default styling */
#container {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Form fields */
.wufoo li {
    margin-bottom: 24px !important;
    padding: 0 !important;
    width: 100% !important;
}

.wufoo li:last-of-type {
    margin-bottom: 32px !important;
}

/* Field labels - VISIBLE */
.wufoo label.desc,
.wufoo legend.desc,
form.wufoo ul li > label,
label.desc {
    display: block !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    color: #112739 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    margin-bottom: 8px !important;
    line-height: 1.4 !important;
    padding: 0 !important;
}

/* Placeholder text - HIDDEN */
.wufoo input::placeholder,
.wufoo textarea::placeholder,
input::placeholder,
textarea::placeholder,
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
input::-moz-placeholder,
textarea::-moz-placeholder,
input:-ms-input-placeholder,
textarea:-ms-input-placeholder,
input:-moz-placeholder,
textarea:-moz-placeholder {
    color: transparent !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Input fields */
.wufoo input[type="text"],
.wufoo input[type="email"],
.wufoo input[type="tel"],
.wufoo input[type="number"],
.wufoo textarea,
.wufoo textarea.textarea,
.wufoo input.text,
.wufoo input.field,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
textarea,
textarea.textarea {
    width: 100% !important;
    padding: 12px 0 !important;
    font-size: 1rem !important;
    color: #112739 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid rgba(17, 39, 57, 0.3) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transition: border-color 0.3s ease !important;
    font-family: inherit !important;
    line-height: 1.6 !important;
}

.wufoo input[type="text"]:focus,
.wufoo input[type="email"]:focus,
.wufoo input[type="tel"]:focus,
.wufoo input[type="number"]:focus,
.wufoo textarea:focus,
.wufoo textarea.textarea:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
textarea:focus,
textarea.textarea:focus {
    outline: none !important;
    border-bottom-color: #5a7d8f !important;
    background: transparent !important;
}

/* Placeholder text - HIDDEN */
.wufoo input::placeholder,
.wufoo textarea::placeholder,
input::placeholder,
textarea::placeholder,
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
input::-moz-placeholder,
textarea::-moz-placeholder,
input:-ms-input-placeholder,
textarea:-ms-input-placeholder,
input:-moz-placeholder,
textarea:-moz-placeholder {
    color: transparent !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Textarea specific properties */
textarea,
.wufoo textarea,
textarea.textarea,
.wufoo textarea.textarea {
    resize: vertical !important;
    min-height: 100px !important;
}

/* Submit button */
.wufoo input[type="submit"],
.wufoo button[type="submit"] {
    width: 100% !important;
    padding: 16px 32px !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    color: #ffffff !important;
    background-color: #112739 !important;
    border: none !important;
    border-radius: 0 !important;
    cursor: pointer !important;
    transition: background-color 0.3s ease !important;
    font-family: inherit !important;
    box-shadow: none !important;
}

.wufoo input[type="submit"]:hover,
.wufoo button[type="submit"]:hover {
    background-color: #a08974 !important;
}

.wufoo input[type="submit"]:active,
.wufoo button[type="submit"]:active {
    background-color: #8a7460 !important;
}

/* Hide Wufoo error container and messages */
#errorLi,
.error-container,
.wufoo #errorLi,
.wufoo .error-container {
    display: none !important;
}

/* Error field styling - remove pink backgrounds and add spacing */
.wufoo li.error,
li.error,
.wufoo li.focused.error {
    background-color: transparent !important;
    background: none !important;
    margin-bottom: 50px !important;
    position: relative !important;
}

/* Error messages below fields */
.wufoo li.error p.error,
li.error p.error,
form li.error p.error {
    display: block !important;
    font-size: 11px !important;
    position: absolute !important;
    bottom: -20px !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    color: #d32f2f !important;
    font-weight: 500 !important;
}

/* Remove Wufoo footer/branding */
.wufoo .hide {
    display: none !important;
}

#footer {
    display: none !important;
}

/* Required field indicator */
.wufoo .req {
    color: #112739 !important;
}

/* Error messages */
.wufoo .instruct {
    font-size: 0.875rem !important;
    color: #c44 !important;
    margin-top: 4px !important;
}

/* reCAPTCHA text and links styling - More aggressive selectors */
.wufoo .info,
.wufoo #recaptcha-info,
.info,
#recaptcha-info,
.wufoo p.info {
    font-size: 0.875rem !important;
    color: #112739 !important;
    margin-top: 16px !important;
}

.wufoo .info a,
.wufoo #recaptcha-info a,
.wufoo a,
.info a,
#recaptcha-info a,
form a,
p.info a,
a[href*="google.com"] {
    color: #112739 !important;
    text-decoration: underline !important;
    transition: color 0.3s ease !important;
}

.wufoo .info a:hover,
.wufoo #recaptcha-info a:hover,
.wufoo a:hover,
.info a:hover,
#recaptcha-info a:hover,
form a:hover,
p.info a:hover,
a[href*="google.com"]:hover {
    color: #a08974 !important;
}

/* Remove all default Wufoo styling elements */
.wufoo .left,
.wufoo .right,
.wufoo .clear {
    width: 100% !important;
    clear: both !important;
}

/* Adjust field containers */
.wufoo .leftHalf,
.wufoo .rightHalf,
.wufoo .full {
    width: 100% !important;
    float: none !important;
    clear: both !important;
}

/* Mobile responsive */
@media (max-width: 640px) {
    .wufoo label.desc,
    .wufoo legend.desc {
        font-size: 0.875rem !important;
    }
    
    .wufoo input[type="text"],
    .wufoo input[type="email"],
    .wufoo input[type="tel"],
    .wufoo input[type="number"],
    .wufoo textarea {
        font-size: 1rem !important;
        padding: 10px 0 !important;
    }
    
    .wufoo input[type="submit"],
    .wufoo button[type="submit"] {
        padding: 14px 28px !important;
        font-size: 0.8125rem !important;
    }
}

