/* Mobile Responsive CSS - Optimized Version
 * Features:
 * - Fixed header with logo and hamburger menu
 * - Logo displays as image on mobile (scaled to 38px height)
 * - Optimized padding for better mobile experience
 * - Prevents horizontal scroll
 * - Touch-friendly buttons and forms
 */

/* Hide Revolution Slider Navigation Arrows Globally */
.tparrows,
.tp-leftarrow,
.tp-rightarrow,
.rev_slider_wrapper .tparrows,
.tp-bullets,
.ares.tparrows,
.ares.tparrows.tp-leftarrow,
.ares.tparrows.tp-rightarrow,
.rev_slider .tparrows,
.tp-arr-allwrapper,
.tp-arr-imgholder,
.zeus.tparrows,
.tp-leftarrow.tparrows.zeus,
.tp-rightarrow.tparrows.zeus {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* Revolution Slider Container Fix */
.rev_slider_wrapper,
.rev_slider {
    position: relative !important;
    overflow: hidden !important;
    display: block !important;
    visibility: visible !important;
}

@media only screen and (max-width: 767px) {
    .rev_slider_wrapper {
        margin-top: 55px !important;
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .rev_slider,
    .tp-revslider-mainul,
    .tp-revslider-slidesli {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
        /* Let inline styles control height */
    }

    /* Ensure slider content is visible */
    .tp-caption,
    .tp-mask-wrap,
    .tp-loop-wrap {
        display: block !important;
        visibility: visible !important;
    }

    /* Remove extra space after slider */
    .rev_slider_wrapper+* {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
}

/* Global Resets for Mobile (≤767px) - Adjusted Padding for Narrower Feel */
@media only screen and (max-width: 767px) {

    /* Prevent Horizontal Scroll */
    html,
    body,
    .page-wrapper {
        overflow-x: hidden !important;
        width: 100% !important;
        max-width: 100vw !important;
        margin: 0;
        padding: 0;
    }

    body {
        display: flex !important;
        flex-direction: column !important;
        font-size: 14px;
        line-height: 1.6;
    }

    * {
        box-sizing: border-box;
    }

    /* Typography Scale */
    h1 {
        font-size: 24px !important;
        line-height: 1.3;
    }

    h2 {
        font-size: 20px !important;
        line-height: 1.3;
    }

    h3 {
        font-size: 18px !important;
        line-height: 1.3;
    }

    h4,
    h5 {
        font-size: 16px !important;
        line-height: 1.3;
    }

    h6 {
        font-size: 14px !important;
        line-height: 1.3;
    }

    /* Containers & Grid - Reduced Padding for Smaller Effective Width */
    .container,
    .container-fluid,
    .auto-container {
        width: 100% !important;
        max-width: 100vw !important;
        padding: 0 10px !important;
        margin: 0 !important;
        overflow-x: hidden !important;
    }

    .row {
        margin: 0 !important;
        width: 100% !important;
    }

    [class*="col-"] {
        width: 100% !important;
        padding: 0 10px !important;
        margin-bottom: 20px !important;
        float: none !important;
    }

    .pull-left,
    .pull-right,
    .float-left,
    .float-right {
        float: none !important;
        width: 100% !important;
    }

    /* Section Reordering (Using Flex Order) */
    .page-wrapper {
        display: flex;
        flex-direction: column;
    }

    .main-header,
    header,
    .header-style-two {
        order: 1;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 9999 !important;
        background: #0b2028 !important;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
    }

    .main-slider,
    .banner-section,
    .page-banner,
    .rev_slider_wrapper {
        order: 2;
        margin-top: 55px !important;
        margin-bottom: 0 !important;
        position: relative !important;
        z-index: 1 !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .wel-sec,
    .welstyle {
        order: 3;
        padding: 20px 0 !important;
        padding-top: 0px !important;
        margin-top: 0 !important;
        position: relative !important;
        z-index: 1 !important;
        clear: both !important;
    }

    .about-section,
    .paddsec2 {
        order: 4;
        margin-top: 0 !important;
        padding-top: 30px !important;
        position: relative !important;
        z-index: 1 !important;
        clear: both !important;
    }

    .service-style1,
    .services-section {
        order: 5;
        margin-top: 0 !important;
        padding-top: 30px !important;
        position: relative !important;
        z-index: 1 !important;
        clear: both !important;
    }

    #cont,
    .homecontact,
    .hc-style-1 {
        order: 6;
        margin-top: 0 !important;
        padding-top: 30px !important;
        position: relative !important;
        z-index: 1 !important;
        clear: both !important;
    }

    .page-wrapper>div.container {
        order: 97;
    }

    /* Newsletter */

    .page-wrapper>script {
        display: none;
    }

    .footer-sec,
    .main-footer,
    footer {
        order: 98;
    }

    .copyright {
        order: 99;
    }

    /* Hide Duplicates */
    section#cont:nth-of-type(2),
    .homecontact:nth-of-type(2) {
        display: none !important;
    }

    /* Header: Logo Left, Menu Right */
    .header-top {
        display: none !important;
    }

    .main-header {
        position: relative !important;
    }

    .header-upper {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        padding: 0 !important;
        height: 55px !important;
        background: #0b2028 !important;
        z-index: 10000 !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
    }

    .header-upper .auto-container {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        width: 100% !important;
        padding: 0 10px !important;
        height: 55px !important;
        position: relative !important;
    }

    .header-upper .clearfix {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        width: auto !important;
        flex: 0 0 auto !important;
    }

    .header-lower {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        height: 55px !important;
        padding: 0 10px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        z-index: 10002 !important;
        background: transparent !important;
    }

    .header-lower .auto-container {
        width: auto !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .upper-right,
    .upper-column.info-box {
        display: none !important;
    }

    /* Logo: Image on Mobile, Left-Aligned */
    .logo-outer,
    .header-upper .pull-left.logo-outer {
        display: flex !important;
        align-items: center !important;
        flex: 0 0 auto !important;
        min-width: 140px !important;
        max-width: 160px !important;
        padding-left: 0 !important;
    }

    .logo,
    .logo a {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        height: 55px !important;
    }

    .logo img,
    .logo a img,
    .width-240 {
        display: block !important;
        width: auto !important;
        max-width: 150px !important;
        height: 38px !important;
        max-height: 38px !important;
        object-fit: contain !important;
    }

    /* Navigation: Hamburger Right-Aligned */
    .nav-outer,
    .main-menu {
        display: flex !important;
        justify-content: flex-end !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        height: 55px !important;
    }

    .navbar-header {
        display: flex !important;
        justify-content: flex-end !important;
        align-items: center !important;
        margin: 0 !important;
        height: 55px !important;
    }

    .navbar-toggle {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        padding: 8px 10px !important;
        background: transparent !important;
        border: none !important;
        width: auto !important;
        height: 55px !important;
        margin: 0 !important;
    }

    .navbar-toggle .icon-bar {
        background-color: #fff !important;
        width: 24px !important;
        height: 3px !important;
        margin: 3px 0 !important;
    }

    .navbar-collapse {
        position: fixed !important;
        top: 55px !important;
        left: 0 !important;
        right: 0 !important;
        width: 100vw !important;
        max-height: calc(100vh - 55px) !important;
        overflow-y: auto !important;
        background: #fff !important;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2) !important;
        z-index: 9998 !important;
        padding: 0 !important;
    }

    .navbar-collapse.collapse {
        display: none !important;
    }

    .navbar-collapse.collapse.in {
        display: block !important;
    }

    .navigation {
        padding: 10px 0 !important;
    }

    .navigation>li {
        display: block !important;
        border-bottom: 1px solid #eee !important;
        background: #fff !important;
    }

    .navigation>li>a {
        display: block !important;
        padding: 12px 20px !important;
        font-size: 15px !important;
        color: #0b2028 !important;
        font-weight: 500 !important;
        text-align: left !important;
        background: transparent !important;
    }

    .navigation>li>a:hover,
    .navigation>li.current>a {
        background: #f5f5f5 !important;
        color: #00a8cc !important;
    }

    /* First Level Dropdown (About Us, What We Do, etc.) */
    .navigation>li>ul {
        position: static !important;
        display: none !important;
        background: #f9f9f9 !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Show dropdown when open class is added */
    .navigation>li.dropdown.open>ul {
        display: block !important;
    }
    
    /* Add dropdown indicator using CSS */
    .navigation>li.dropdown>a::after {
        content: " ▼";
        font-size: 10px;
        margin-left: 5px;
        display: inline-block;
        transition: transform 0.3s ease;
    }
    
    .navigation>li.dropdown.open>a::after {
        transform: rotate(180deg);
    }
    
    /* Make dropdown items clickable/tappable */
    .navigation>li.dropdown>a {
        cursor: pointer;
        -webkit-tap-highlight-color: rgba(0, 168, 204, 0.3);
    }

    .navigation>li>ul>li {
        display: block !important;
        border-bottom: 1px solid #e0e0e0 !important;
    }

    .navigation>li>ul>li>a {
        display: block !important;
        padding: 12px 20px 12px 30px !important;
        font-size: 14px !important;
        color: #333 !important;
        background: #f9f9f9 !important;
        font-weight: 400 !important;
    }

    .navigation>li>ul>li>a:hover {
        background: #e8e8e8 !important;
        color: #00a8cc !important;
    }

    /* Second Level Dropdown (Auditing, Taxation, Advisory, etc.) - SHOW on Mobile */
    .navigation>li.dropdown>ul>li.dropdown {
        display: block !important;
        background: #f0f0f0 !important;
    }

    .navigation>li.dropdown>ul>li.dropdown>a {
        display: block !important;
        padding: 12px 20px 12px 40px !important;
        font-size: 14px !important;
        color: #0b2028 !important;
        font-weight: 500 !important;
        background: #f0f0f0 !important;
        border-left: 3px solid #00a8cc !important;
    }

    .navigation>li.dropdown>ul>li.dropdown>a:hover {
        background: #e0e0e0 !important;
        color: #00a8cc !important;
    }

    /* Third Level Dropdown (Sub-items under Auditing, Taxation, etc.) - HIDE on Mobile */
    .navigation>li>ul>li.dropdown>ul {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        overflow: hidden !important;
    }
    
    /* Show nested dropdown when open class is added */
    .navigation>li>ul>li.dropdown.open>ul {
        display: block !important;
        visibility: visible !important;
        height: auto !important;
    }
    
    /* Make sure dropdowns are visible when toggled */
    .navigation>li.dropdown>ul[style*="display: block"] {
        display: block !important;
    }
    
    .navigation>li>ul>li.dropdown>ul[style*="display: block"] {
        display: block !important;
        visibility: visible !important;
        height: auto !important;
    }

    /* Alternative: Show third level but styled differently */
    /* Uncomment below if you want to show third level items too
    .navigation > li > ul > li.dropdown > ul {
        display: block !important;
        background: #e8e8e8 !important;
        padding: 0 !important;
    }

    .navigation > li > ul > li.dropdown > ul > li {
        display: block !important;
        border-bottom: 1px solid #ddd !important;
    }

    .navigation > li > ul > li.dropdown > ul > li > a {
        display: block !important;
        padding: 10px 20px 10px 50px !important;
        font-size: 13px !important;
        color: #555 !important;
        background: #e8e8e8 !important;
    }
    */

    .btn-outer,
    .sticky-header {
        display: none !important;
    }

    /* Hero/Banner */
    .banner-section,
    .page-banner,
    .main-slider {
        padding: 0 !important;
        margin-bottom: 0 !important;
        position: relative !important;
    }

    .banner-section h1,
    .main-slider h1 {
        font-size: 28px !important;
        padding: 0 10px !important;
        margin-bottom: 15px !important;
    }

    .banner-section h2,
    .main-slider h2 {
        font-size: 22px !important;
        padding: 0 10px !important;
        margin-bottom: 15px !important;
    }



    /* General Sections */
    section,
    .section {
        padding: 30px 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        overflow-x: hidden !important;
        position: relative !important;
        z-index: 1 !important;
        clear: both !important;
    }

    .sec-title {
        margin-bottom: 30px !important;
        text-align: center !important;
        padding: 0 10px !important;
        position: relative !important;
        z-index: 2 !important;
    }

    .sec-title h2 {
        font-size: 24px !important;
        margin-top: 0 !important;
    }

    .column,
    .service-block,
    .feature-block {
        margin-bottom: 30px !important;
        float: none !important;
        position: relative !important;
        clear: both !important;
    }

    .inner-box,
    .text-box {
        padding: 20px 10px !important;
        position: relative !important;
    }

    img,
    .image-box img {
        max-width: 100% !important;
        height: auto !important;
    }

    /* Buttons & Forms */
    .theme-btn,
    .btn {
        padding: 14px 30px !important;
        font-size: 15px !important;
        min-height: 44px !important;
        min-width: 120px !important;
    }

    .quote-btn {
        padding: 16px 35px !important;
        font-size: 16px !important;
        min-height: 50px !important;
    }

    input[type="text"],
    input[type="email"],
    textarea,
    select {
        width: 100% !important;
        padding: 14px 15px !important;
        font-size: 16px !important;
        min-height: 48px !important;
        border: 1px solid #ddd !important;
        border-radius: 4px !important;
    }

    textarea {
        min-height: 120px !important;
        resize: vertical;
    }

    .contact-form button[type="submit"] {
        width: 100% !important;
        padding: 16px !important;
        font-size: 16px !important;
        min-height: 50px !important;
    }

    /* Services */
    .service-block {
        padding: 25px 20px !important;
        margin-bottom: 25px !important;
        border-radius: 8px !important;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08) !important;
        transition: transform 0.3s ease;
    }

    .service-block:active {
        transform: scale(0.98) !important;
    }

    .service-block h3,
    .service-block h4 {
        font-size: 18px !important;
        margin-bottom: 12px !important;
    }

    /* Excellence Banner */
    .wel-sec .welbox {
        text-align: center !important;
        padding: 15px !important;
    }

    .wel-sec h2 {
        font-size: 20px !important;
        margin-bottom: 8px !important;
    }

    /* About Section */
    .about-section .right-side h2 {
        font-size: 22px !important;
        margin-bottom: 10px !important;
    }

    .about-section .right-side p {
        font-size: 14px !important;
        line-height: 1.6 !important;
    }

    /* Newsletter */
    .quickcontact-strip {
        background: #f5f5f5 !important;
        padding: 30px 10px !important;
        border-top: 2px solid #ddd !important;
        text-align: center !important;
        position: relative !important;
        z-index: 1 !important;
        clear: both !important;
        margin-top: 0 !important;
    }

    .quickcontact-strip .text {
        font-size: 18px !important;
        font-weight: 600 !important;
        margin-bottom: 15px !important;
    }

    /* Forms & Contact */
    .cformimg {
        display: none !important;
    }

    .rgtform {
        padding: 20px 10px !important;
        float: none !important;
        position: relative !important;
        z-index: 1 !important;
    }

    .fotmhd {
        font-size: 22px !important;
        text-align: center !important;
        margin-bottom: 20px !important;
    }

    .contact-info li {
        text-align: center !important;
        margin-bottom: 20px !important;
        position: relative !important;
    }

    /* Footer */
    .footer-sec,
    .main-footer,
    footer {
        padding: 30px 0 !important;
        text-align: center !important;
        position: relative !important;
        z-index: 1 !important;
        clear: both !important;
        margin-top: 0 !important;
    }

    .footer-widget,
    .footer-column {
        margin-bottom: 30px !important;
        float: none !important;
        padding: 0 10px !important;
        position: relative !important;
        clear: both !important;
    }


    /* Sticky Contact Bar (Optional Enhancement) */
    .sticky-contact-bar {
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 999 !important;
        background: #0b2028 !important;
        padding: 10px !important;
        display: flex !important;
        justify-content: space-around !important;
        box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.2) !important;
    }

    .sticky-contact-bar a {
        flex: 1 !important;
        text-align: center !important;
        padding: 12px !important;
        color: #fff !important;
        font-size: 14px !important;
        text-decoration: none !important;
    }

    .sticky-contact-bar a i {
        font-size: 20px !important;
        display: block;
        margin-bottom: 5px;
    }

}

/* Tablet (768-991px) */
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .container {
        width: 100% !important;
        padding: 0 15px !important;
    }

    .logo img {
        max-width: 220px !important;
    }

    .cformimg {
        display: none !important;
    }

    .rgtform {
        width: 100% !important;
        margin: 0 !important;
    }
}

/* Small Desktop (992-1199px) */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .container {
        width: 970px !important;
    }
}

/* Extra Small (≤480px) */
@media only screen and (max-width: 480px) {
    h1 {
        font-size: 22px !important;
    }

    h2 {
        font-size: 18px !important;
    }

    /* Further adjust for small screens */
    .theme-btn {
        padding: 10px 20px !important;
        font-size: 13px !important;
    }

    .container,
    .container-fluid,
    .auto-container {
        padding: 0 5px !important;
        /* Even smaller padding on tiny screens */
        max-width: calc(100vw - 10px) !important;
    }
}

/* Landscape Mobile */
@media only screen and (max-width: 767px) and (orientation: landscape) {

    .banner-section,
    .page-banner {
        min-height: 250px !important;
    }
}

/* Print */
@media print {

    .header-top,
    .navigation,
    .btn-outer,
    .footer-sec,
    .quickcontact-strip {
        display: none !important;
    }
}

/*
 Additional Overlap Prevention Fixes */
@media only screen and (max-width: 767px) {

    /* Ensure all major sections don't overlap */
    .page-wrapper>* {
        position: relative !important;
        z-index: auto !important;
    }

    /* Specific section spacing fixes */
    .wel-sec+.about-section,
    .about-section+.service-style1,
    .service-style1+#cont,
    #cont+.quickcontact-strip,
    .quickcontact-strip+.footer-sec {
        margin-top: 0 !important;
        padding-top: 40px !important;
    }

    /* Prevent floating elements from causing overlap */
    .clearfix::after,
    .auto-container::after {
        content: "" !important;
        display: table !important;
        clear: both !important;
    }

    /* Fix for any remaining absolute positioned elements */
    section[style*="position: absolute"],
    div[style*="position: absolute"] {
        position: relative !important;
    }

    /* Ensure proper stacking context */
    .page-wrapper>section,
    .page-wrapper>div {
        isolation: isolate !important;
    }
}

/* Print Styles */
@media print {

    .header-top,
    .navigation,
    .btn-outer,
    .footer-sec,
    .quickcontact-strip,
    .navbar-toggle {
        display: none !important;
    }

    .main-header {
        position: relative !important;
    }
}


/* Mobile Filter for Industry Page - Sidebar Filters */
@media only screen and (max-width: 767px) {

    /* Hide desktop sidebar on mobile */
    .col-sm-3.col-xs-12 {
        position: fixed !important;
        top: 55px !important;
        left: -100% !important;
        width: 85% !important;
        max-width: 320px !important;
        height: calc(100vh - 55px) !important;
        background: #fff !important;
        z-index: 9997 !important;
        overflow-y: auto !important;
        transition: left 0.3s ease !important;
        box-shadow: 2px 0 10px rgba(0, 0, 0, 0.3) !important;
        padding: 20px 15px !important;
    }

    /* Show sidebar when active */
    .col-sm-3.col-xs-12.filter-active {
        left: 0 !important;
    }

    /* Main content area - full width on mobile */
    .col-sm-9.col-xs-12 {
        padding: 0 15px !important;
        margin-top: 60px !important;
    }

    /* Mobile Filter Toggle Button */
    .mobile-filter-toggle {
        position: fixed !important;
        top: 60px !important;
        right: 15px !important;
        z-index: 9998 !important;
        background: #00a8cc !important;
        color: #fff !important;
        border: none !important;
        padding: 12px 20px !important;
        border-radius: 25px !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        box-shadow: 0 4px 12px rgba(0, 168, 204, 0.4) !important;
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }

    .mobile-filter-toggle:active {
        transform: scale(0.95) !important;
    }

    .mobile-filter-toggle i {
        font-size: 16px !important;
    }

    /* Filter Overlay */
    .filter-overlay {
        position: fixed !important;
        top: 55px !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        background: rgba(0, 0, 0, 0.5) !important;
        z-index: 9996 !important;
        display: none !important;
    }

    .filter-overlay.active {
        display: block !important;
    }

    /* Filter Header */
    .mobile-filter-header {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 15px !important;
        background: #0b2028 !important;
        color: #fff !important;
        margin: -20px -15px 20px -15px !important;
        position: sticky !important;
        top: 0 !important;
        z-index: 10 !important;
    }

    .mobile-filter-header h3 {
        margin: 0 !important;
        font-size: 18px !important;
        color: #fff !important;
    }

    .mobile-filter-close {
        background: transparent !important;
        border: none !important;
        color: #fff !important;
        font-size: 24px !important;
        cursor: pointer !important;
        padding: 0 !important;
        width: 30px !important;
        height: 30px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* Filter Items Styling */
    .side-menu-box {
        background: #f9f9f9 !important;
        border: 1px solid #e0e0e0 !important;
        border-radius: 8px !important;
        padding: 15px !important;
        margin-bottom: 15px !important;
        cursor: pointer !important;
        transition: all 0.3s ease !important;
    }

    .side-menu-box:active {
        transform: scale(0.98) !important;
        background: #f0f0f0 !important;
    }

    .side-menu-box h3,
    .side-menu-box h4 {
        font-size: 16px !important;
        color: #0b2028 !important;
        margin: 0 !important;
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
    }

    .side-menu-box i {
        color: #00a8cc !important;
        font-size: 20px !important;
    }

    /* Free Consultation Form in Sidebar */
    .side-menu-box form {
        margin-top: 15px !important;
    }

    .side-menu-box input,
    .side-menu-box textarea {
        width: 100% !important;
        padding: 12px !important;
        margin-bottom: 12px !important;
        border: 1px solid #ddd !important;
        border-radius: 6px !important;
        font-size: 14px !important;
    }

    .side-menu-box textarea {
        min-height: 100px !important;
        resize: vertical !important;
    }

    .side-menu-box button[type="submit"] {
        width: 100% !important;
        padding: 14px !important;
        background: #00a8cc !important;
        color: #fff !important;
        border: none !important;
        border-radius: 6px !important;
        font-size: 16px !important;
        font-weight: 600 !important;
        cursor: pointer !important;
    }

    .side-menu-box button[type="submit"]:active {
        background: #008fb3 !important;
    }
}

/* Tablet adjustments */
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .mobile-filter-toggle {
        display: none !important;
    }

    .col-sm-3.col-xs-12 {
        position: relative !important;
        left: 0 !important;
    }
}


/* Override Inline Styles - Gentle approach to prevent layout issues */
@media only screen and (max-width: 767px) {

    /* Only override problematic inline widths, not all */
    .container[style*="width"],
    .auto-container[style*="width"],
    .row[style*="width"] {
        width: 100% !important;
        max-width: 100vw !important;
    }

    /* Don't touch slider/banner heights - they need them */
    /* Removed aggressive height overrides */

    /* Ensure no horizontal overflow */
    * {
        max-width: 100vw;
    }

    /* Banner/Slider - keep visible with proper sizing */
    .banner-section,
    .main-slider,
    .rev_slider_wrapper {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: 100% !important;
        /* Let height be natural or from inline styles */
    }

    .rev_slider,
    .tp-revslider-mainul {
        display: block !important;
        visibility: visible !important;
    }
}


/* Remove Extra White Space Between Sections - Mobile Only */
@media only screen and (max-width: 767px) {

    /* Remove all extra margins between major sections */
    .page-wrapper>*+* {
        margin-top: 0 !important;
    }

    /* Specific spacing fixes */
    .main-slider+.wel-sec,
    .main-slider+.welstyle,
    .banner-section+.wel-sec,
    .rev_slider_wrapper+.wel-sec {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    .wel-sec+.about-section,
    .welstyle+.about-section {
        margin-top: 0 !important;
        padding-top: 30px !important;
    }

    /* Remove padding from excellence banner */
    .wel-sec .welbox,
    .welstyle .welbox {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
        margin: 0 !important;
    }

    /* Compact section spacing */
    section+section {
        margin-top: 0 !important;
    }

    /* Remove extra space from containers */
    .auto-container {
        padding-top: 0 !important;
    }

    /* First section after slider should have no top padding */
    .main-slider~section:first-of-type,
    .rev_slider_wrapper~section:first-of-type {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }
}

/* Fix tp-fullwidth-forcer Height - Remove Extra Space */
@media only screen and (max-width: 767px) {

    /* Force height to 0 for fullwidth forcer element */
    .tp-fullwidth-forcer {
        height: 0px !important;
        min-height: 0px !important;
        max-height: 0px !important;
        padding: 0 !important;
        margin: 0 !important;
        display: block !important;
    }

    /* Also target if it has inline style */
    .tp-fullwidth-forcer[style*="height"] {
        height: 0px !important;
    }

    /* Ensure parent container doesn't add extra space */
    .rev_slider_wrapper .tp-fullwidth-forcer {
        height: 0px !important;
        overflow: hidden !important;
    }
}

/* Fix tp-fullwidth-forcer Height - Desktop View Also */
@media only screen and (min-width: 768px) {

    /* Force height to 0 for fullwidth forcer element on desktop too */
    .tp-fullwidth-forcer {
        height: 0px !important;
        min-height: 0px !important;
        max-height: 0px !important;
        padding: 0 !important;
        margin: 0 !important;
        display: block !important;
    }

    /* Also target if it has inline style */
    .tp-fullwidth-forcer[style*="height"] {
        height: 0px !important;
    }

    /* Ensure parent container doesn't add extra space */
    .rev_slider_wrapper .tp-fullwidth-forcer {
        height: 0px !important;
        overflow: hidden !important;
    }
}

/* Remove Extra Space Between Slider and Next Section - All Views */
.rev_slider_wrapper {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.rev_slider_wrapper+* {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Excellence Banner - Remove Top Space */
.wel-sec,
.welstyle {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Ensure slider doesn't add extra space */
.main-slider,
.banner-section {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}