/* responsive.css */
@media (max-width: 979px) {
    /* Basic Layout Reset */
    .container {
        width: 100% !important;
        padding: 0 10px !important;
        box-sizing: border-box;
    }
    .row {
        margin: 0 !important;
        width: 100% !important;
    }
    [class*="span"], #content {
        float: none !important;
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box;
    }

    /* Header */
    #header {
        height: auto !important;
        padding: 15px 50px 15px 10px; /* Right padding 50px to avoid hamburger */
        text-align: center;
        background: #fff;
        position: relative;
    }
    #header .span12 h6 {
        display: block;
        margin-bottom: 10px;
        line-height: 1.4;
    }
    .mobile-hide {
        display: none !important;
    }
    #header img {
        max-width: 80%;
        height: auto;
    }
    #header span[style*="font-size:36px"] {
        font-size: 28px !important;
        display: block;
        color: #d00 !important;
    }
    
    /* Hide unnecessary header elements on mobile */
    #header .span5 span[style*="font-size:14px"],
    #header .span5 p,
    #header .span5 img[src*="tel.png"],
    #header .span5 br {
        display: none !important;
    }

    /* Hamburger Menu */
    #hamburger {
        position: fixed;
        top: 20px;
        right: 15px;
        width: 35px;
        height: 30px;
        cursor: pointer;
        z-index: 10000;
        display: flex;
        flex-direction: column;
        justify-content: space-around;
    }
    #hamburger span {
        display: block;
        width: 100%;
        height: 3px;
        background: #0693e3;
        border-radius: 3px;
        transition: 0.3s;
    }
    #hamburger.active span:nth-child(1) { transform: translateY(8.5px) rotate(45deg); }
    #hamburger.active span:nth-child(2) { opacity: 0; }
    #hamburger.active span:nth-child(3) { transform: translateY(-8.5px) rotate(-45deg); }

    /* Overlay Menu */
    .shadow_menu {
        display: none !important; /* Force hide by default, overriding span rules */
        position: fixed !important;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh !important;
        background: #fff;
        z-index: 1500;
        padding-top: 80px;
        overflow-y: auto;
    }
    .shadow_menu.menu-open {
        display: block !important;
    }
    body.noscroll .shadow_top {
        z-index: 9999 !important;
    }

    /* Menu List */
    .shadow_menu .nav-pills {
        flex-direction: column !important;
        padding: 20px !important;
        margin: 0 !important;
    }
    .shadow_menu .nav-pills li {
        width: 100% !important;
        border-bottom: 1px solid #eee !important;
        background: #f9f9f9 !important; /* Override #menu1 li background image */
        margin-bottom: 5px !important;
    }
    .shadow_menu .nav-pills li a {
        padding: 12px 20px !important;
        font-size: 16px !important;
        color: #333 !important;
    }
    .shadow_menu .nav-pills li img {
        display: none !important;
    }
    .mobile-menu-text {
        display: inline-block !important;
    }

    /* Side menu merging */
    .span2 {
        display: none !important;
    }

    /* Content */
    #content {
        padding: 10px !important;
    }
    .main_image {
        height: auto !important;
        min-width: 0 !important;
    }
    .main_image img {
        width: 100% !important;
        height: auto !important;
    }

    /* Footer */
    #footer {
        height: auto !important;
        padding: 20px 10px !important;
        text-align: center;
    }
    #footer .span3, #footer .span2 {
        width: 100% !important;
        margin-bottom: 20px;
    }
}

body.noscroll {
    overflow: hidden !important;
}

/* Global */
img {
    max-width: 100%;
    height: auto;
}
