/* Mobile Responsive Fixes */
@media only screen and (max-width: 980px) {
    /* Reset some Divi mobile styles */
    body.et_fixed_nav #main-header,
    body.et_fixed_nav #top-header,
    body.et_fixed_nav #main-content .container {
        padding-top: 0 !important;
    }

    /* Fix for mobile menu */
    #et-top-navigation {
        display: none;
    }
    
    /* Ensure content doesn't overflow on mobile */
    .container {
        width: 100% !important;
        padding: 0 15px !important;
        box-sizing: border-box;
    }
    
    /* Improve touch targets for mobile */
    a, button, input[type="button"], 
    input[type="submit"], .et_pb_button {
        min-height: 44px;
        min-width: 44px;
        line-height: 44px;
    }
    
    /* Adjust heading sizes for mobile */
    h1 { 
        font-size: 28px !important; 
        line-height: 1.2 !important;
    }
    h2 { 
        font-size: 24px !important;
        line-height: 1.3 !important;
    }
    h3 { 
        font-size: 20px !important;
        line-height: 1.4 !important;
    }
    
    /* Ensure full width images */
    .et_pb_section,
    .et_pb_row {
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        max-width: 100% !important;
    }
    
    .et_pb_column {
        margin-bottom: 15px !important;
    }
    
    /* Fix mobile menu toggle */
    #et_mobile_nav_menu {
        display: block !important;
    }
    
    /* Improve form elements on mobile */
    input[type="text"],
    input[type="email"],
    input[type="password"],
    textarea,
    select {
        font-size: 16px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box;
        -webkit-appearance: none;
        border-radius: 0;
    }
}

/* Additional fixes for very small devices */
@media only screen and (max-width: 480px) {
    h1 { 
        font-size: 24px !important; 
        margin-top: 15px;
    }
    h2 { 
        font-size: 22px !important;
        margin-top: 10px;
    }
    h3 { 
        font-size: 20px !important;
        margin-top: 8px;
    }
    
    /* Adjust buttons for better touch */
    .et_pb_button,
    button,
    input[type="button"],
    input[type="submit"] {
        padding: 12px 24px !important;
        font-size: 16px !important;
        width: 100% !important;
        display: block;
        margin: 10px 0 !important;
    }
    
    /* Fix spacing */
    .et_pb_section {
        padding: 25px 0 !important;
    }
    
    .et_pb_row {
        padding: 15px !important;
        margin: 0 !important;
        width: 100% !important;
    }
    
    /* Fix mobile menu */
    #et_mobile_nav {
        display: block !important;
    }
    
    #et_mobile_menu {
        padding: 0 15px;
    }
}
