/* Small Laravel-only helpers. Keep original HTML design CSS in control. */
.dynamic-copy p:last-child {
    margin-bottom: 0;
}

.site-header .navbar-brand img {
    object-fit: contain;
}

.blog-grid .image-box img,
.service-sec img,
.solutions-info img,
.stories-sec-img img {
    object-fit: cover;
}

.footer-map img {
    object-fit: contain;
}

html,
body {
    max-width: 100%;
/*    overflow-x: hidden;*/
}

img,
video,
iframe {
    max-width: 100%;
}

.heading h1,
.heading h2,
.heading h3,
.page-title-banner h1,
.main-banner-content h1,
.events-info h4,
.services-info h4,
.solutions-service h4,
.partners-info h4,
.cta-heading h2 {
    overflow-wrap: anywhere;
}

.global-btn,
.global-btn2,
.apply-now-btn,
.btn {
    align-items: center;
    display: inline-flex;
    gap: 6px;
    justify-content: center;
    max-width: 100%;
    white-space: normal;
}

.global-btn i,
.global-btn2 i {
    flex: 0 0 auto;
}

.dynamic-copy,
.events-info,
.services-info,
.partners-info,
.values-info,
.we-serve-content,
.contact-form,
.location-sec {
    overflow-wrap: anywhere;
}

.mobile-menu-title,
.mobile-menu-backdrop,
.mobile-nav-only {
    display: none;
}

@media (max-width: 991.98px) {
    .site-header {
        overflow: visible;
        position: relative;
        z-index: 1050;
    }

    .site-header .navbar-collapse {
        background: #fff;
        box-shadow: 18px 0 40px rgba(0, 0, 0, 0.16);
        height: 100vh;
        max-width: 368px;
        overflow-y: auto;
        padding: 0;
        width: 84vw;
    }

    .site-header .navbar-collapse.show {
        padding: 0;
    }

    .mobile-menu-title {
        align-items: center;
        background: rgb(0 112 173);
        color: #fff;
        display: flex;
        font-size: 20px;
        font-weight: 600;
        min-height: 45px;
        padding: 0 12px;
    }

    .mobile-menu-backdrop {
        background: rgba(0, 0, 0, 0.48);
        border: 0;
        bottom: 0;
        left: 0;
        padding: 0;
        position: fixed;
        right: 0;
        top: 0;
        z-index: 1190;
    }

    #navbarMenu.show + .mobile-menu-backdrop {
        display: block;
    }

    .site-header .navbar-collapse .navbar-nav,
    .site-header .navbar-collapse .right-menu ul {
        display: block !important;
        margin: 0;
        overflow: visible !important;
        padding: 0;
        width: 100%;
    }

    .site-header .navbar-collapse .mobile-nav-only {
        display: block;
    }

    .site-header .navbar-collapse .nav-item,
    .site-header .navbar-nav > li {
        background: #fff;
        border-bottom: 1px solid #ededed;
        margin: 0;
        width: 100%;
    }

    .site-header .navbar-collapse .nav-link {
        align-items: center;
        color: #18202a !important;
        display: flex;
        font-size: 19px;
        font-weight: 500;
        min-height: 46px;
        padding: 0 12px !important;
        text-transform: none;
        width: 100%;
    }

    .site-header .navbar-collapse .nav-link:hover {
        color: #0058ab !important;
    }

    .site-header .navbar-collapse .dropdown-caret {
        color: #cfcfcf;
        margin-left: auto !important;
        transform: rotate(-90deg);
        transition: transform 0.2s ease;
    }

    .site-header .navbar-collapse .nav-link[aria-expanded="true"] .dropdown-caret {
        transform: rotate(0deg);
    }

    .site-header .mega-menu .dropdown-menu {
        background: #fff;
        border: 0;
        border-radius: 0;
        box-shadow: none;
        margin: 0;
        opacity: 1;
        padding: 0;
        position: static !important;
        transform: none !important;
        visibility: visible;
        width: 100%;
    }

    .site-header .mega-menu .dropdown-menu:not(.show) {
        display: none;
    }

    .site-header .mega-menu .dropdown-menu .container {
        background: #fff;
        border-radius: 0;
        padding: 0;
    }

    .site-header .mega-menu-content .row {
        display: block;
        margin: 0;
    }

    .site-header .mega-menu-column {
        padding: 0;
    }

    .site-header .mega-menu-column.about-menu-page,
    .site-header .mega-menu-column .who-we-serve {
        display: none;
    }

    .site-header .mega-menu-column ul,
    .site-header .mega-menu-column ul li {
        list-style: none;
        margin: 0;
        padding: 0;
        width: 100% !important;
    }

    .site-header .mega-menu-column ul li {
        border-bottom: 1px solid #ededed;
    }

    .site-header .mega-menu-content a,
    .site-header .mega-menu-item {
        align-items: center;
        color: #18202a !important;
        display: flex;
        font-size: 16px;
        font-weight: 500;
        min-height: 48px;
        padding: 0 24px !important;
        width: 100%;
    }

    .site-header .mega-menu-content a::before {
        content: none;
    }

    .site-header ul.sabmenu-list {
        display: block;
        opacity: 1;
        padding: 0;
        position: static;
        transform: none;
        visibility: visible;
        width: 100%;
    }

    .site-header ul.sabmenu-list a {
        color: #4a5563 !important;
        font-size: 15px;
        padding-left: 38px !important;
    }

    .site-header .mega-menu-list.has-children > a::after {
        color: #cfcfcf;
        content: "\f054";
        font-family: "Font Awesome 6 Free";
        font-size: 14px;
        font-weight: 900;
        margin-left: auto;
    }
}

@media (max-width: 1199.98px) {
    .banner-info {
        width: 62%;
    }

    .latest-client-info {
        max-width: 52%;
    }
}

@media (max-width: 991.98px) {
    .heading {
        padding: 32px 0;
    }

/*    .heading h2,
    .solutions-list .heading h2 {
        font-size: 30px;
        line-height: 1.25;
    }
*/
    .page-title-banner {
        min-height: 260px;
        padding: 56px 0;
    }

    .page-title-banner p {
        width: 100%;
    }

    .banner-info,
    .latest-client-info,
    .about-innovation {
        max-width: 100%;
        width: 100%;
    }

    .banner-sec {
        padding: 56px 0;
    }

/*    .banner2-right,
    .values-section-content,
    .values-section-two .values-section-content,
    .solutions-list .solutions_sec,
    .take_closer_look .pl-padding {
        left: 0;
        margin-left: 0;
        margin-right: 0;
        top: 0;
        width: 100%;
    }*/

    .banner2-right {
        margin-top: 24px;
    }

/*    .cta-heading.text-end,
    .cta .text-end {
        margin-top: 20px;
        text-align: left !important;
    }
*/
    .services-solutions,
    .events-sec,
    .partners-sec,
    .service-sec,
    .career-post {
        margin-bottom: 24px;
    }

/*    .partners-img {
        align-items: center;
        display: flex;
        height: 96px;
        justify-content: center;
        margin-left: 0;
        width: 100%;
    }*/

    .partners-sec img {
        margin-top: 0;
        max-height: 92px;
        object-fit: contain;
        width: auto;
    }

    .partners-info p,
    .solutions-sec p,
    .take_closer p {
        height: auto;
    }

    .footer-link {
        flex-wrap: wrap;
        gap: 14px 24px !important;
        justify-content: flex-start !important;
        margin-top: 16px;
        padding-left: 0;
    }

    .copyright-area,
    .copyright-area .text-end {
        text-align: left !important;
    }

    .site-footer p,
    .site-footer a {
        word-break: normal;
        overflow-wrap: anywhere;
    }
}

@media (max-width: 767.98px) {
    .container {
        padding-left: 25px;
        padding-right: 25px;
    }

    .main-banner-content {
        max-width: 100%;
        padding-right: 0;
    }

    .main-banner-content h1 {
        font-size: 32px;
        line-height: 1.25;
    }

    .main-banner-content p {
        font-size: 17px;
        line-height: 1.55;
    }

    .page-title-banner {
        min-height: 220px;
        padding: 44px 0;
    }

    .page-title-banner h1 {
        font-size: 32px;
        line-height: 1.2;
    }

    .page-title-banner p {
        font-size: 16px;
        line-height: 1.55;
    }

    .heading {
        padding: 26px 0;
    }

/*    .heading h2,
    .cta-heading h2,
    .get-started-sec h3 {
        font-size: 27px;
        line-height: 1.25;
    }
*/
/*    .service-sec img,
    .events-sec img,
    .services-solutions img,
    .blog-grid .image-box img,
    .stories-sec-img img,
    .banner2-info img {
        height: 240px;
        object-fit: cover;
    }*/

    .solutions-info img {
        height: 220px;
    }

    .services-info,
    .events-info,
    .partners-info,
    .solutions-service {
        padding: 18px;
    }

    .services-info h4,
    .events-info h4,
    .partners-info h4,
    .solutions-service h4 a {
        font-size: 22px;
        line-height: 1.3;
    }

    .global-btn,
    .global-btn2,
    .apply-now-btn {
        min-height: 48px;
        padding: 12px 20px;
    }

    .industry-list ul li {
        width: 100%;
    }

    .industry-list ul li a {
        align-items: flex-start;
        font-size: 18px;
        line-height: 1.35;
    }

    .featured-stories .owl-controls {
        bottom: 16px;
        gap: 20px;
        left: 50%;
        padding: 12px 48px 12px 16px;
    }

    .stories-sec {
        max-width: 100%;
        padding: 30px 20px;
    }

    .stories-sec h4 {
        font-size: 24px;
        line-height: 1.3;
    }

    .get-started,
    .cta2 .container {
        padding: 40px 20px;
    }

    .seven-values p {
        font-size: 18px;
        width: 100%;
    }

/*    .values-sec {
        position: static;
        margin-bottom: 14px;
    }
*/
/*    .values-info {
        margin-left: 0;
    }*/

    .who-we-serve-list {
        padding: 24px 18px;
    }

    .who-we-serve-list ul {
        display: block;
    }

    .who-we-serve-list li.nav-item button {
        padding-left: 0;
        text-align: left;
        width: 100%;
    }

    .who-we-serve-list li.nav-item .active:after {
        bottom: -4px;
    }

    .we-serve-content {
        padding: 24px 0 0;
    }

    .location-sec {
        min-height: auto;
        padding: 28px 22px;
    }

    .contact-form {
        padding: 22px 16px;
    }

    .contact-form .input-group,
    .contact-form .input-group p,
    .contact-form .form-control {
        width: 100%;
    }

    .wpcf7-list-item label {
        align-items: flex-start;
        display: flex;
        gap: 8px;
    }

    .blog-section .heading {
        display: block;
    }

    .blog-section .heading .global-btn2 {
        margin-top: 12px;
    }

    .copyright-area .row {
        gap: 6px;
    }

    .footer-link {
/*        justify-content: center !important;*/
        text-align: center;
    }

/*    .copyright-area,
    .copyright-area .text-end {
        text-align: center !important;
    }*/
}

@media (max-width: 575.98px) {
    .site-header .navbar-brand img {
        max-width: 132px;
    }

    .navbar-toggler .line {
        height: 3px;
        width: 30px;
    }

    .site-header .navbar-collapse {
        width: 84vw;
    }

    .mobile-menu-title {
        font-size: 18px;
        min-height: 56px;
    }

    .site-header .navbar-collapse .nav-link {
        font-size: 16px;
    }

    .counter-sec h4 {
        font-size: 26px;
    }

    .counter-sec p {
        font-size: 14px;
        line-height: 1.4;
    }

    .services-info p,
    .events-info p,
    .partners-info p {
        font-size: 15px;
        line-height: 1.55;
    }
}
