/* Mobile Global Responsive Styles - Applied to all pages */

/* Ensure all container classes use padding on mobile instead of overflowing */
@media screen and (max-width: 768px) {

    /* Generic container classes */
    .home-container,
    .tech-container,
    .vision-container,
    .company-container,
    .news-container,
    .careers-container,
    .contact-container,
    .container {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
        box-sizing: border-box !important;
    }

    /* Ensure all sections don't overflow */
    section {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
        box-sizing: border-box;
    }

    /* Images should not exceed container width */
    img {
        max-width: 100%;
        height: auto;
    }

    /* Global text wrapping - prevent overflow */
    * {
        word-wrap: break-word;
        overflow-wrap: break-word;
    }

    /* Headings and text elements should wrap */
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    span,
    div,
    a,
    li {
        /* Mobile Global Responsive Styles - Applied to all pages */

        /* Ensure all container classes use padding on mobile instead of overflowing */
        @media screen and (max-width: 768px) {

            /* Generic container classes */
            .home-container,
            .tech-container,
            .vision-container,
            .company-container,
            .news-container,
            .careers-container,
            .contact-container,
            .container {
                width: 100% !important;
                max-width: 100% !important;
                padding-left: 20px !important;
                padding-right: 20px !important;
                box-sizing: border-box !important;
            }

            /* Ensure all sections don't overflow */
            section {
                width: 100%;
                max-width: 100%;
                overflow-x: hidden;
                box-sizing: border-box;
            }

            /* Images should not exceed container width */
            img {
                max-width: 100%;
                height: auto;
            }

            /* Global text wrapping - prevent overflow */
            * {
                word-wrap: break-word;
                overflow-wrap: break-word;
            }

            /* Headings and text elements should wrap */
            h1,
            h2,
            h3,
            h4,
            h5,
            h6,
            p,
            span,
            div,
            a,
            li {
                word-wrap: break-word;
                overflow-wrap: break-word;
                max-width: 100%;
            }

            /* Background images positioning */
            .home-bg-img {
                right: -150px !important;
                max-width: 500px;
            }

            /* Contact page submit button - ensure text is visible */
            .contact-submit-btn {
                font-size: 16px !important;
                padding: 14px 30px !important;
                white-space: nowrap !important;
                color: #000000 !important;
                opacity: 1 !important;
            }

            /* Company page WHAT WE DO title - prevent overflow */
            .company-whatwedo-title {
                height: auto !important;
                line-height: 1.4 !important;
                padding: 15px 20px !important;
                font-size: 20px !important;
                white-space: normal !important;
                word-wrap: break-word !important;
            }

            .company-whatwedo-item {
                grid-template-columns: 1fr !important;
                padding: 20px !important;
                gap: 20px !important;
            }

            .company-whatwedo-image {
                height: 250px !important;
            }
        }

        @media screen and (max-width: 480px) {

            .home-container,
            .tech-container,
            .vision-container,
            .company-container,
            .news-container,
            .careers-container,
            .contact-container,
            .container {
                padding-left: 15px !important;
                padding-right: 15px !important;
            }

            .home-bg-img {
                display: none;
            }

            /* Company page WHAT WE DO title - smaller font on very small screens */
            .company-whatwedo-title {
                font-size: 18px !important;
                padding: 12px 15px !important;
            }
        }
    }
}