/* Mobile View Specific Fixes */
@media only screen and (max-width: 767px) {
    html, body {
        max-width: 100% !important;
        overflow-x: hidden !important;
        width: 100% !important;
    }

    /* ===== FIX: Banner elements scaling and centering on all inner pages to prevent overflow ===== */
    .work_content {
        padding: 50px 0 !important;
        width: 100% !important;
        overflow: hidden !important;
    }
    .work_content .container {
        padding-left: 15px !important;
        padding-right: 15px !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    .deconstructed {
        font-size: 32px !important;
        line-height: 1.2 !important;
        text-align: center !important;
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .deconstructed_list {
        text-align: center !important;
    }
    .about-second-text {
        text-align: center !important;
        width: 100% !important;
        margin-top: 15px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .about-second-text h2 {
        font-size: 26px !important;
        line-height: 1.3 !important;
        text-align: center !important;
    }

    /* ===== FIX: Our Leadership section — desktop padding/gap causes right-shift on mobile ===== */
    .team-rows .col-lg-4 {
        padding-right: 15px !important;  /* reset desktop 60px padding */
    }
    .team-rows .col-lg-8 .row {
        gap: 20px 0 !important;  /* reset desktop 55px gap */
    }
    .team-rows .col-lg-8 .col-lg-4 {
        padding: 0 10px !important;  /* reset desktop padding */
    }
    .leader-hover {
        margin: 0 !important;  /* reset desktop margin */
        width: 100% !important;
    }
    .team .row,
    .team .team-rows {
        display: block !important;
        width: 100% !important;
        overflow: hidden !important;
    }
    .main-team {
        width: 100% !important;
        height: 300px !important;
        object-fit: cover !important;
        object-position: top !important;
    }
    .team-text {
        text-align: center !important;
        padding: 0 15px 20px !important;
    }

    /* ===== FIX: Ready to Ignite / Happy Clients / partner sections right-shift ===== */
    .ready .container {
        padding-left: 15px !important;
        padding-right: 15px !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    /* ===== FIX: Client section (Our Happy Clients / partner) right-shift ===== */
    .client-section .container,
    .client .container {
        padding-left: 15px !important;
        padding-right: 15px !important;
        max-width: 100% !important;
        width: 100% !important;
        overflow: hidden !important;
    }
    .client-love {
        margin-bottom: 20px !important;
    }
    .client-text {
        font-size: 40px !important;
        line-height: 1.2 !important;
    }


    /* Fix video banner overflow on mobile portrait screens */
    .banner-video-wrapper iframe, 
    .banner-video-wrapper video {
        min-width: 100% !important;
        width: 100% !important;
        min-height: 100% !important;
        height: auto !important;
        aspect-ratio: 16/9;
    }

    /* Fix horizontal overflow caused by inline flex-wrap: nowrap in the counter section */
    .home-counter .row {
        flex-wrap: wrap !important;
    }

    /* ===== FIX: Strategy slides text overlapping (stronger override) ===== */
    .strategy .row .strategy-list,
    .strategy-list {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        margin-bottom: 50px !important;
        min-height: auto !important;
        height: auto !important;
    }
    .strategy .strategy-img,
    .strategy-list .strategy-img {
        position: static !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        width: 100% !important;
        height: auto !important;
    }
    .strategy-img img {
        width: 120px !important;
        height: 120px !important;
        margin: 0 auto 15px !important;
        position: static !important;
    }
    .strategy .strategy-para,
    .strategy-img .strategy-para {
        position: static !important;
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
        width: 100% !important;
    }
    .strategy #arrowAnim,
    #arrowAnim {
        display: none !important;
    }
    .strategy .col-lg-4.col-md-4.col-sm-12 {
        width: 100% !important;
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    /* ===== FIX: Achievement cards sizing ===== */
    .achievement-card-new .image-box {
        height: 200px !important;
    }
    .achievement-card-new .card-content {
        padding: 15px 20px 20px !important;
    }
    .achievement-card-new .card-content h3 {
        font-size: 17px !important;
        line-height: 1.3 !important;
        margin-bottom: 8px !important;
    }
    .achievement-card-new .card-content p {
        font-size: 14px !important;
        line-height: 1.5 !important;
        text-align: left !important;
        display: -webkit-box;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    /* ===== FIX: "Our Unmatched Success Story" title overlap ===== */
    .success-story-title {
        font-size: 30px !important;
        font-weight: 800 !important;
        line-height: 1.3 !important;
        margin-top: 10px !important;
        margin-bottom: 15px !important;
    }
    .success-story-title span {
        display: block !important;
        margin-top: 6px !important;
    }
    .success-subtitle {
        font-size: 18px !important;
        letter-spacing: 4px !important;
    }
    .achievement-section {
        padding: 60px 0 !important;
    }

    /* ===== FIX: Happy Clients logos displaying correctly in Slick Carousel on mobile ===== */
    .client-details {
        width: 100% !important;
        border-right: none !important;
        padding: 0 10px !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }
    .client-logo {
        height: 80px !important;
        width: auto !important;
        max-width: 100% !important;
        object-fit: contain !important;
        display: block !important;
        margin: 0 auto !important;
    }

    /* ===== FIX: About page group image on mobile ===== */
    .about-team,
    .about-team .container-fluid,
    .about-team .container-fluid.px-5 {
        overflow: visible !important;
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
        box-sizing: border-box !important;
    }
    .about-team img,
    .about-team .w-100 {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        display: block !important;
    }
    .stand-out {
        margin-top: 0 !important;
    }
    .page-content.mission .container-fluid,
    .page-content.mission .container-fluid.px-5,
    .page_content,
    .page_content .container-fluid,
    .page_content .container-fluid.px-5,
    .container-fluid.px-5,
    .about-team .container-fluid.px-5,
    .stand-out .container-fluid.px-5,
    .choose-us .container-fluid.px-5 {
        padding-left: 8px !important;
        padding-right: 8px !important;
        max-width: 100% !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .work-last-body {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .work-last-body-li {
        flex-direction: row !important;
        align-items: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
    }
    .work-last-body-li p {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        max-width: none !important;
        font-size: 16px !important;
        line-height: 26px !important;
        margin: 0 !important;
        text-align: left !important;
    }
    .work-last-body-li p b {
        display: inline !important;
        font-weight: 600 !important;
    }
    .choose-us-list {
        padding: 0 2px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* ===== FIX: Footer WhatsApp icon on mobile ===== */
    #footer-wrapper .footer-call {
        position: static !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto !important;
        margin: 0 auto !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        gap: 12px !important;
    }
    #footer-wrapper .wp-icon-span {
        width: 54px !important;
        height: 54px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 50% !important;
        background-color: #ff8200 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    #footer-wrapper .wp-icon-span a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
    }
    #footer-wrapper .wp-icon-span img,
    #footer-wrapper .wp-icon-img,
    #footer-wrapper .wp-icon-span i {
        width: 28px !important;
        height: 28px !important;
        object-fit: contain !important;
        display: block !important;
        margin: 0 auto !important;
    }
    #footer-wrapper .footer-number {
        display: inline-flex !important;
        align-items: center !important;
        height: 54px !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    /* ===== FIX: Footer — stack everything vertically, niche-niche ===== */
    #footer-wrapper {
        overflow: visible !important;
        height: auto !important;
        min-height: auto !important;
        width: 100% !important;
    }
    #footer-wrapper footer#footer {
        overflow: visible !important;
        height: auto !important;
    }
    #footer-wrapper .container-fluid {
        padding: 0 10px !important;
        overflow: visible !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    /* Force the 4 footer columns to stack one below another */
    #footer-wrapper .footer-row,
    #footer-wrapper .row.footer-row {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        overflow: visible !important;
        height: auto !important;
        gap: 14px !important;
    }
    #footer-wrapper .footer-row > [class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        overflow: visible !important;
        height: auto !important;
        max-height: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        display: block !important;
        margin-bottom: 18px !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        text-align: center !important;
    }

    /* Logo block */
    #footer-wrapper .footer-logo img {
        max-width: 160px !important;
        height: auto !important;
        margin: 0 auto 12px !important;
    }
    #footer-wrapper .footer-para {
        margin-top: 15px !important;
        font-size: 14px !important;
        line-height: 1.6 !important;
    }

    /* Quick links / contact blocks */
    #footer-wrapper .footer-list-details {
        margin-left: 0 !important;
        text-align: center !important;
    }
    #footer-wrapper .footer_link,
    #footer-wrapper .footer_link li {
        list-style: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    #footer-wrapper .footer_link li {
        margin-bottom: 10px !important;
    }
    #footer-wrapper .footer-text {
        font-size: 16px !important;
        margin-bottom: 15px !important;
    }
    #footer-wrapper .paragraph {
        font-size: 14px !important;
        line-height: 1.7 !important;
    }

    /* Enquiries block: whatsapp, emails, social icons, visitor counter */
    #footer-wrapper .footer-lisr-icons {
        text-align: left !important;
    }
    #footer-wrapper .footer-call-wrapper {
        display: flex !important;
        justify-content: center !important;
        gap: 12px !important;
        margin-bottom: 12px !important;
        flex-wrap: wrap !important;
    }
    #footer-wrapper .company-link,
    #footer-wrapper .company-link2 {
        display: block !important;
        margin-bottom: 6px !important;
        font-size: 14px !important;
        word-break: break-word !important;
        text-align: center !important;
    }
    #footer-wrapper .footer-icon {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: flex-start !important;
        gap: 10px !important;
        list-style: none !important;
        padding: 0 !important;
        margin: 10px 0 !important;
    }
    #footer-wrapper .ftr {
        text-align: left !important;
        margin-top: 14px !important;
    }
    #footer-wrapper .capth {
        justify-content: flex-start !important;
        flex-wrap: wrap !important;
    }

    /* Copyright bottom bar */
    #copyright-container {
        text-align: center !important;
        padding: 15px 20px !important;
    }
    #copyright-container .row {
        flex-direction: column !important;
    }
    #copyright-container .to-top {
        float: none !important;
        display: block !important;
        margin-top: 10px !important;
    }

    /* ===== MOBILE HEADER + MENU ===== */
    #header .navbar {
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 15px 0 !important;
    }
    #header .navbar .navbar-header,
    #header .navbar .logo {
        width: auto !important;
        justify-content: flex-start !important;
        margin: 0 !important;
        text-align: left !important;
    }
    #header .navbar .logo {
        flex: 0 0 auto !important;
    }
    .hamburger-menu-button {
        margin: 0 !important;
        width: 36px !important;
        height: 24px !important;
    }
    .navbar .hamburger-menu-button,
    #header .navbar > a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    .fat-nav__wrapper {
        max-height: calc(100vh - 90px) !important;
        overflow-y: auto !important;
        padding-bottom: 20px !important;
    }
    .fat-nav .row {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: flex-start !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        gap: 15px !important;
    }
    .fat-nav .header_menu_list {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        margin-bottom: 25px !important;
    }
    .fat-nav .header_menu_list ul {
        display: block !important;
    }
    .fat-nav .header_menu_list ul li {
        margin-bottom: 18px !important;
        list-style: none !important;
    }
    .fat-nav .header_menu_list ul li a {
        font-size: clamp(20px, 4vw, 26px) !important;
        line-height: 1.15 !important;
        white-space: normal !important;
    }
    .fat-nav .header-contacts {
        width: 100% !important;
        margin: 20px 0 0 !important;
        justify-content: flex-start !important;
        flex-wrap: wrap !important;
        gap: 12px !important;
    }
    .header-contacts {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
        margin: 0 !important;
    }
    .header-contact-number a {
        font-size: 18px !important;
        line-height: 1.4 !important;
        display: inline-flex !important;
        flex-wrap: wrap !important;
        gap: 10px !important;
        justify-content: flex-start !important;
        text-transform: none !important;
    }
    .menu_logo {
        max-width: 120px !important;
        height: auto !important;
        margin-bottom: 18px !important;
    }
    .button-fancy {
        display: block !important;
        width: 100% !important;
        padding-right: 0 !important;
    }
    .button-fancy > .text {
        font-size: clamp(22px, 4.5vw, 30px) !important;
        white-space: normal !important;
        line-height: 1.1 !important;
    }
    /* ===== FIX: Quick Links spacing tight karo ===== */
    #footer-wrapper .footer_link li {
        margin-bottom: 10px !important;
        line-height: 1.2 !important;
    }
    #footer-wrapper .footer_link li a {
        display: inline-block !important;
        padding: 0 !important;
        margin: 0 !important;
        line-height: 1.3 !important;
        font-size: 15px !important;
    }

    /* ===== FIX: WhatsApp icon proper circle ===== */
    .footer-call-wrapper {
        align-items: center !important;
    }
    .footer-call-wrapper a:first-child,
    .footer-call-wrapper .whatsapp-icon {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        flex-shrink: 0 !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: hidden !important;
        aspect-ratio: 1 / 1 !important;
    }
    .footer-call-wrapper a:first-child img,
    .footer-call-wrapper a:first-child i,
    .footer-call-wrapper .whatsapp-icon img,
    .footer-call-wrapper .whatsapp-icon i {
        width: 55% !important;
        height: 55% !important;
        object-fit: contain !important;
    }

    /* ===== GLOBAL MOBILE HELPERS: images, videos, containers, typography ===== */
    img, picture, video, iframe {
        max-width: 100% !important;
        height: auto !important;
        display: block !important;
    }

    .container, .container-fluid {
        padding-left: 15px !important;
        padding-right: 15px !important;
        box-sizing: border-box !important;
    }

    /* make grid columns stack cleanly on small screens */
    .row > [class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }

    /* responsive media inside sliders/carousels */
    .slick-slide img, .owl-carousel img, .achievement-card-new .image-box img, .footer-logo img, .logo img {
        max-width: 100% !important;
        height: auto !important;
    }

    /* tables: allow horizontal scroll instead of overflow cutoff */
    table, .table {
        width: 100% !important;
        display: block !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    /* typography scaling for mobile */
    h1 {
        font-size: clamp(20px, 6vw, 30px) !important;
        line-height: 1.2 !important;
    }
    h2 {
        font-size: clamp(18px, 5.5vw, 26px) !important;
        line-height: 1.25 !important;
    }
    h3 { font-size: clamp(16px, 4.5vw, 22px) !important; }
    p, .paragraph { font-size: 15px !important; line-height: 1.6 !important; }

    /* buttons: avoid full-width unless intended */
    .btn, .button-fancy, a.button {
        display: inline-block !important;
        max-width: 100% !important;
    }

    /* ensure embedded iframes don't cause horizontal scroll */
    .embed-responsive, .video-wrapper, iframe {
        max-width: 100% !important;
        width: 100% !important;
        height: auto !important;
    }
}

@media only screen and (max-width: 480px) {
    .header-contact-number a {
        font-size: 16px !important;
    }
    .success-story-title {
        font-size: 26px !important;
    }
    .achievement-card-new .image-box {
        height: 180px !important;
    }
    .button-fancy > .text {
        font-size: clamp(18px, 4.5vw, 24px) !important;
    }
    .fat-nav .header-contacts {
        gap: 8px !important;
    }
    .fat-nav .row {
        gap: 12px !important;
    }
    .logo img,
    .menu_logo {
        max-width: 140px !important;
    }
    
}
