/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jun 23 2026 | 11:35:59 */
/*
 * --------------------------------------------------------------------------
 * GoodPlumbing - Gravity Forms 2.5 Boutique Styling Enhancements
 * --------------------------------------------------------------------------
 * @package IsleCreative\GoodPlumbing
 * @author  WebCentriX Ltd (Isle Creative)
 * @note    Designed for optimal lead generation on core services: 
 * boiler installations, HVAC, and luxury bathrooms.
 */

/* --- 1. Form Layout & Field Spacing --- */
body .gform_wrapper .gform_body .gfield {
    margin-bottom: 30px !important; 
    padding-top: 5px !important;
}

/* --- 2. Form Inputs, Textareas & Complex Fields --- */
body .gform_wrapper .gform_body input[type="text"],
body .gform_wrapper .gform_body input[type="email"],
body .gform_wrapper .gform_body input[type="tel"],
body .gform_wrapper .gform_body input[type="url"],
body .gform_wrapper .gform_body input[type="number"],
body .gform_wrapper .gform_body input[type="password"],
body .gform_wrapper .gform_body textarea,
body .gform_wrapper .gform_body select {
    font-size: 18px !important;
    padding: 15px 17px !important;
    height: auto !important; 
    border: 1px solid #E2E8F0 !important;
    border-radius: 6px !important;
    background-color: #FFFFFF !important;
    color: #334155 !important;
    transition: border-color 0.3s ease, box-shadow 0.3s ease !important;
    box-sizing: border-box !important;
}

/* --- 3. Dropdown (Select) Fix --- */
body .gform_wrapper .gform_body select {
    appearance: none !important; 
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%2394A3B8%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.4-12.8z%22%2F%3E%3C%2Fsvg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 17px top 50% !important;
    background-size: 12px auto !important;
    padding-right: 40px !important; 
}

/* --- 4. Input Focus State (The Elegant Glow) --- */
body .gform_wrapper .gform_body input:focus,
body .gform_wrapper .gform_body textarea:focus,
body .gform_wrapper .gform_body select:focus {
    border-color: #94A3B8 !important; 
    box-shadow: 0 0 0 3px rgba(242, 101, 34, 0.1) !important; 
    outline: none !important;
}

/* --- 5. Complex Field Sub-Labels --- */
body .gform_wrapper .ginput_complex label,
body .gform_wrapper .gfield_time_hour label,
body .gform_wrapper .gfield_time_minute label {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #64748B !important;
    margin-top: 8px !important;
    letter-spacing: 0.2px !important;
    display: block !important;
}

/* --- 6. Custom Radio Buttons & Checkboxes --- */
body .gform_wrapper .gfield_radio li,
body .gform_wrapper .gfield_checkbox li {
    display: grid !important;
    grid-template-columns: 22px 1fr !important;
    gap: 12px !important;
    align-items: start !important; 
    margin-bottom: 12px !important;
}

body .gform_wrapper .gfield_checkbox input[type="checkbox"] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    width: 22px !important;
    height: 22px !important;
    border: 2px solid #CBD5E1 !important;
    background-color: #FFFFFF !important;
    margin: 3px 0 0 0 !important; 
    cursor: pointer !important;
    position: relative !important;
    border-radius: 4px !important;
    transition: all 0.2s ease !important;
}

body .gform_wrapper .gfield_radio input[type="radio"] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    width: 22px !important;
    height: 22px !important;
    border: 2px solid #CBD5E1 !important;
    border-radius: 50% !important;
    background-color: #FFFFFF !important;
    margin: 3px 0 0 0 !important; 
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

body .gform_wrapper .gfield_radio input[type="radio"]:hover,
body .gform_wrapper .gfield_checkbox input[type="checkbox"]:hover {
    border-color: #94A3B8 !important;
}

/* Radio Checked State */
body .gform_wrapper .gfield_radio input[type="radio"]:checked {
    border-color: #F26522 !important; 
    background-color: #F26522 !important;
    box-shadow: inset 0 0 0 4px #FFFFFF !important; 
}

/* Checkbox Checked State */
body .gform_wrapper .gfield_checkbox input[type="checkbox"]:checked {
    background-color: #F26522 !important;
    border-color: #F26522 !important;
}
body .gform_wrapper .gfield_checkbox input[type="checkbox"]:checked::after {
    content: "" !important;
    position: absolute !important;
    left: 6px !important;
    top: 2px !important;
    width: 5px !important;
    height: 10px !important;
    border: solid white !important;
    border-width: 0 2px 2px 0 !important;
    transform: rotate(45deg) !important;
}

/* --- 7. Button Pagination Container (Alignment) --- */
body .gform_wrapper .gform_page_footer {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    margin-top: 15px !important;
    padding-top: 15px !important;
    border-top: 1px solid #F1F5F9 !important; 
}

/* --- 8. Final Submit Button (The Conversion Engine) --- */
body .gform_wrapper .gform_footer input[type="submit"].gform_button,
body .gform_wrapper .gform_footer button.gform_button,
body .gform_wrapper .gform_footer input.button {
    background-color: #F26522 !important;
    color: #FFFFFF !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 25px !important; 
    font-weight: 500 !important; /* Elegant medium weight */
    padding: 20px 36px !important; 
    border: none !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    text-align: center !important;
    appearance: none !important;
    display: inline-block !important;
    line-height: 1 !important;
    margin: 0 !important; 
}

body .gform_wrapper .gform_footer input[type="submit"].gform_button:hover,
body .gform_wrapper .gform_footer button.gform_button:hover,
body .gform_wrapper .gform_footer input.button:hover {
    background-color: #D9531E !important; 
    transform: translateY(-2px) !important; 
    box-shadow: 0 10px 20px rgba(100, 116, 139, 0.15) !important;
}

/* --- 9. Primary Pagination Button (Next) --- */
body .gform_wrapper .gform_page_footer input[type="button"].gform_next_button,
body .gform_wrapper .gform_page_footer button.gform_next_button,
body .gform_wrapper .gform_page_footer input.button,
body .gform_wrapper .gform_page_footer button.button {
    background-color: #F26522 !important;
    color: #FFFFFF !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 20px !important; 
    font-weight: 500 !important; /* Elegant medium weight */
    padding: 15px 36px !important; 
    border: none !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    text-align: center !important;
    appearance: none !important;
    display: inline-block !important;
    line-height: 1 !important;
    margin: 0 !important; 
}

body .gform_wrapper .gform_page_footer input[type="button"].gform_next_button:hover,
body .gform_wrapper .gform_page_footer button.gform_next_button:hover,
body .gform_wrapper .gform_page_footer input.button:hover,
body .gform_wrapper .gform_page_footer button.button:hover {
    background-color: #D9531E !important; 
    transform: translateY(-2px) !important; 
    box-shadow: 0 10px 20px rgba(100, 116, 139, 0.15) !important;
}

/* --- 10. Secondary Button (Previous) --- */
body .gform_wrapper input[type="button"].gform_previous_button,
body .gform_wrapper button.gform_previous_button {
    background-color: #F1F5F9 !important; 
    color: #475569 !important; 
    font-family: 'Outfit', sans-serif !important;
    font-size: 20px !important;
    font-weight: 500 !important; /* Elegant medium weight */
    padding: 15px 36px !important;
    border: none !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    text-align: center !important;
    box-shadow: none !important;
    display: inline-block !important;
    line-height: 1 !important;
    margin: 0 !important; 
}

body .gform_wrapper input[type="button"].gform_previous_button:hover,
body .gform_wrapper button.gform_previous_button:hover {
    background-color: #E2E8F0 !important; 
    color: #1E293B !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 20px rgba(100, 116, 139, 0.15) !important;
}

/* --- 11. Field Labels & Typography Polish --- */
body .gform_wrapper .gfield_label {
    font-family: 'Outfit', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #1E293B !important;
    margin-bottom: 12px !important;
}

body .gform_wrapper .gfield_radio li label,
body .gform_wrapper .gfield_checkbox li label {
    font-size: 16px !important;
    color: #475569 !important;
    cursor: pointer !important; 
    display: block !important;
    line-height: 1.5 !important;
    margin: 0 !important; 
}

/* --- 12. Validation Errors & Messages --- */
body .gform_wrapper .gform_validation_errors > h2,
body .gform_wrapper .gform_validation_error .gform_submission_error,
body .gform_wrapper .gfield_description.validation_message {
    font-family: 'Outfit', sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
}