@media (max-width: 2000px) {
    /* .value-card .value-card-top .value-card-ic img {
        height: 148px;
        width: 148px;
    } */

    .core-section {
        justify-content: center;
    }

}

@media (max-width: 1920px) {
    .scroll-section .award-image .person-slide {
        width: 100%;
        height: 315px !important;
    }
}

@media (max-width: 1800px) {
    .scroll-section .award-image .person-slide {
        width: 100%;
        height: 290px !important;
    }
}

@media (max-width: 1700px) {
    .scroll-section .award-image .person-slide {
        width: 100%;
        height: 270px !important;
    }
}

@media (max-width: 1600px) {
    .main-container {
        padding: 0 60px;
    }

    .right-container {
        padding-right: 60px;
    }

    .left-container {
        padding-left: 60px;
    }

    .common-heading h2 {
        font-size: var(--font-42px);
    }

    .common-heading p {
        font-size: var(--font-16px) !important;
    }

    /* .value-card .value-card-top .value-card-ic img {
        height: 120px;
        width: 120px;
    } */

    .value-card {
        padding: 30px;
    }

    .scroll-section .award-image .person-slide {
        width: 100%;
        height: 250px !important;
    }
}

@media (max-width: 1500px) {
    .scroll-section .award-image .person-slide {
        width: 100%;
        height: 230px !important;
    }
}

@media (max-width: 1440px) {
    .scroll-section .award-image .person-slide {
        width: 100%;
        height: 215px !important;
    }
}

@media (max-width: 1400px) {
    .navbar-nav {
        gap: 16px !important;
    }

    .nav-link {
        font-size: 20px !important;
    }

    img.person-slide {
        height: 100%;
    }

    .why-slider-card {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 1300px) {
    .navbar-nav {
        gap: 10px !important;
    }

    .nav-link {
        font-size: 20px !important;
    }

    .gif-img {
        height: 58vhx;
    }

    .scroll-section .award-image .person-slide {
        width: 100%;
        height: 200px !important;
    }

}

@media (max-width: 1240px) {
    .nav-link {
        font-size: 20px !important;
    }

    .about-section h4 {
        font-size: 28px;
    }
}

@media (max-width: 1200px) {}

@media (max-width: 1140px) {
    .nav-link {
        font-size: 18px !important;
    }

    .logo {
        width: 200px;
    }

    .big-s-white {
        width: 26px;
        height: 36px;
    }

    .color-yellow {
        font-size: 42px !important;
    }

    .big-s-white-sky {
        width: 60px;
        height: 48px;
    }

    .big-s-white-success {
        width: 19px;
        height: 47px;
    }

    .heading-technology h2 {
        padding-bottom: 40px;
        font-size: 42px !important;
    }

    .big-s {
        width: 20px;
        height: 48px;
    }

    .heading-fonts {
        font-size: 42px;
    }

    .heading-fonts-white {
        font-size: 42px !important;
    }

    .heading-technology h2 {
        padding-bottom: 40px;
        font-size: 42px !important;
    }

    .gif-img {
        margin-top: 67.85px;
    }
}

@media (max-width: 1024px) {
    /* .value-card .value-card-top .value-card-ic img {
        height: 100px;
        width: 100px;
    } */

    .main-container {
        padding: 0 75px !important;
    }

    .navbar-expand-lg .navbar-nav {
        align-items: center;
    }

    .value-card {
        padding: 15px;
    }

    .core-section {
        height: auto !important;
    }

    .about-section p {
        font-size: 14px;
    }

    .about-section h4 {
        font-size: 22px;
        line-height: unset !important;
    }

    .big-s-white {
        width: 26px;
        height: 36px;
    }

    .color-yellow {
        font-size: 42px !important;
    }

    .big-s-white-sky {
        width: 60px;
        height: 48px;
    }

    .big-s-white-success {
        width: 19px;
        height: 47px;
    }

    .heading-technology h2 {
        padding-bottom: 40px;
        font-size: 42px !important;
    }

    .big-s {
        width: 20px;
        height: 48px;
    }

    .heading-fonts {
        font-size: 42px;
    }

    .heading-fonts-white {
        font-size: 42px !important;
    }

    .heading-technology h2 {
        padding-bottom: 40px;
        font-size: 42px !important;
    }
}

@media (max-width: 991px) {}

@media (max-width: 992px) {
    .height-1 {
        height: auto !important;
    }

    .tech-backhground {
        height: auto;
    }

    .navbar-expand-lg .navbar-nav {
        align-items: center;
    }

    .comman-green .heading-fonts-white {
        line-height: 48px;
    }

    .background-image-mission {
        padding: 40px 0px;
    }

    .mobile-padding-top {
        padding-top: 35px;
    }

    .mobile-padding-bottom {
        padding-bottom: 35px;
    }

    .core-section {
        height: auto !important;
    }

    .big-s-white {
        width: 26px;
        height: 36px;
    }

    .color-yellow {
        font-size: 42px !important;
    }

    .big-s-white-sky {
        width: 60px;
        height: 48px;
    }

    .big-s-white-success {
        width: 19px;
        height: 47px;
    }

    .heading-technology h2 {
        padding-bottom: 40px;
        font-size: 42px !important;
    }

    .big-s {
        width: 20px;
        height: 48px;
    }

    .heading-fonts {
        font-size: 42px;
    }

    .heading-fonts-white {
        font-size: 42px !important;
    }

    .text-content {
        max-width: unset !important;
    }

    .nav-link {
        font-size: 20px !important;
        padding: 0px !important;
    }

    .scroll-section .award-image .person-slide {
        width: 100%;
        height: 315px !important;
    }
}

@media (max-width: 993px) {
    .main-container {
        padding: 0 24px !important;
    }

    .slick-next {
        right: 10px !important;
    }

    .slick-prev {
        left: 20px !important;
    }

    .card-hover {
        height: auto !important;
    }

    .btn-width {
        width: 100% !important;
    }

    .comman-green-background {
        height: 28vh;
    }

    .logo {
        width: 250px;
        height: auto !important;
    }

    .left-container {
        padding: 0 24px;
    }

    .primary-btn {
        padding: 16px;
    }

    .right-container {
        padding: 0 24px;
    }

    .image-flip {
        width: 100%;
    }

    .mySwipers {
        padding: 0px !important;
    }

    .heading-font {
        width: 247px !important;
        height: auto;
    }

    .image-human {
        width: 137px !important;
    }

    .success-img {
        width: 154px !important;
    }

    .award-content h3 {
        font-size: 35px !important;
    }

    .award-contents h3 {
        font-size: 35px !important;
    }

    .common-heading h2 {
        font-size: var(--font-40px);
    }

    .common-heading p {
        font-size: var(--font-18px);
    }

    .section-padding-top {
        padding-top: 35px;
    }

    .section-padding-bottom {
        padding-bottom: 35px;
    }

    .common-heading h2 br {
        display: none;
    }

    .common-heading p br {
        display: none;
    }

    .core-image {
        padding-top: 0px !important;
    }

    #foundation .comman-green h2 {
        font-family: var(--project-primary-font);
        font-weight: 400;
        line-height: 12px;
        font-size: 42px;
        color: #fff;
        text-transform: uppercase;
    }

    .about-section h4 {
        font-weight: 600;
        font-size: 28px;
        font-family: var(--project-secondry-font) !important;
        color: #A5A4A5;
        padding-top: 18px;
        line-height: auto !important;
    }

    .media-image {
        width: 75% !important;
    }

    .black-background h2 {
        font-size: 42px !important;
        line-height: auto !important;
    }

    .last-section {
        width: 51%;
        padding-bottom: 20px;
    }

    .butn:link,
    .butn:visited {
        width: 100% !important;
    }


}




@media (max-width: 768px) {

    .common-heading h2,
    .heading-col-right h2 {
        font-size: var(--font-36px) !important;
    }
    .value-card .value-card-top .value-card-ic .core-icon {
        height: 110px;
    }
    .value-card .value-card-top .value-card-ic .core-icon-width {
        width: 129px;
        height: 110px;
    }
    .common-heading p {
        font-size: var(--font-16px);
        margin-top: 10px;
    }

    .custom-card .custom-card-top img {
        height: 300px;
    }

    .nav-link {
        font-size: 20px !important;
    }

    .why-slider-card {
        grid-template-columns: repeat(2, 1fr);
    }

    .succes-story-details-wapper .main-container {
        padding: 0 24px !important;
    }

    .scroll-section .award-image .person-slide {
        width: 100%;
        height: auto !important;
    }
}

@media (max-width: 670px) {
    .main-heading {
        font-size: 34px;
    }

    .image-icon img {
        height: 50px !important;
        width: 50px !important;
    }
}

@media (max-width: 600px) {}

@media (max-width: 576px) {
    .media-image {
        width: 100%;
    }

    .why-slider-card {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media (max-width: 480px) {

    .primary-btn,
    .secondary-btn {
        font-size: var(--font-14px);
    }

    .common-heading h2 br {
        display: none;
    }

    .common-heading h2 {
        font-size: var(--font-28px) !important;
    }

    .common-heading h6 {
        font-size: var(--font-16px);
    }
}

@media (max-width: 426px) {
    .common-heading p {
        font-size: var(--font-14px);
    }

    .common-heading h2 {
        font-size: var(--font-26px);
    }
}

@media (max-width: 390px) {
    .common-heading h2 {
        font-size: var(--font-24px);
    }

    .logo {
        width: 188px;
        height: auto !important;
    }
}

@media (max-width: 320px) {}
@media (max-width: 1400px) {
    .about-section .about-stat__value {
        font-size: 36px;
    }
}

@media (max-width: 993px) {
    .about-section .about-stats {
        padding-top: 30px;
        padding-bottom: 40px;
    }

    .about-section .about-stat {
        padding-bottom: 24px;
    }

    .about-section .about-stat__value {
        font-size: 32px;
    }

    .about-section .about-stats__note {
        padding-top: 10px;
    }
}

@media (max-width: 480px) {
    .about-section .about-stat__value {
        font-size: 28px;
    }

    .about-section .about-stat__label {
        font-size: 13px;
    }
}

@media (max-width: 1400px) {
    .tech-flow__grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .tech-flow__step::before {
        right: 0;
    }
}

@media (max-width: 993px) {
    .tech-backhground {
        padding-top: 0;
        padding-bottom: 0;
    }

    .tech-flow {
        padding-top: 40px;
    }

    .tech-flow__title {
        font-size: 28px;
        margin-bottom: 30px;
    }
}

@media (max-width: 768px) {
    .tech-flow__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .tech-flow__grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
    }
}

@media (max-width: 1400px) {
    #traveldata .why-slider-card {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 993px) {
    #traveldata .why-slider-card {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    #traveldata .why-slider-card {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media (max-width: 1200px) {
    .case-study-grid {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media (max-width: 993px) {
    /* marquee stays a single scrolling line at every width */
}

@media (max-width: 576px) {
    .case-study-card {
        padding: 24px;
    }

    .case-study-card__stats {
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
    }

    .case-study-stat__value {
        font-size: 32px;
    }

}

@media (max-width: 768px) {
    .contact-form__grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
    }

    .contact-form {
        padding-top: 35px;
    }
}

@media (max-width: 993px) {
    .client-logo {
        margin-right: 44px;
    }

    .client-logo img {
        height: 36px;
    }
}

@media (max-width: 576px) {
    .client-logo {
        margin-right: 32px;
    }

    .client-logo img {
        height: 32px;
    }
}

/* ==================================================================
   [SF header responsive 2026-10-12] START
   Top menu: 7 items + LinkedIn icon.
   - Desktop (992px+, Bootstrap navbar-expand-lg): labels never wrap.
     Between 992 and 1259px the label size and gap step down so the row
     fits next to the logo; 1260px and up is unchanged. .nav-link padding
     is already 0 there, so only font-size and gap change.
   - Offcanvas (mobile/tablet): rows at least 44px high, LinkedIn icon
     gets the same 44px tap row, list scrolls if taller than the screen.
   #mainHeader / #mobileMenu + !important are needed because Bootstrap
   loads after this file and the existing .nav-link rules use !important.
   To revert: delete this block.
   ================================================================== */
@media (min-width: 992px) and (max-width: 1399px) {
    #mainHeader .navbar-nav.nav-menu {
        flex-wrap: nowrap;
    }

    #mainHeader .navbar-nav.nav-menu .nav-link {
        white-space: nowrap;
    }
}

@media (min-width: 992px) and (max-width: 1259px) {
    #mainHeader .navbar-nav.nav-menu {
        gap: 12px !important;
    }

    #mainHeader .navbar-nav.nav-menu .nav-link {
        font-size: 18px !important;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    #mainHeader .navbar-nav.nav-menu .nav-link {
        font-size: 16px !important;
    }
}

@media (min-width: 992px) and (max-width: 1099px) {
    #mainHeader .navbar-nav.nav-menu {
        gap: 10px !important;
    }

    #mainHeader .navbar-nav.nav-menu .nav-link {
        font-size: 15px !important;
    }
}

#mobileMenu .offcanvas-body {
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

#mobileMenu .nav-menu-mobile > .nav-item {
    width: 100%;
}

#mobileMenu .nav-menu-mobile .nav-link {
    display: flex;
    align-items: center;
    min-height: 44px;
}

#mobileMenu .nav-menu-mobile .icon-image-nav > a {
    display: flex;
    align-items: center;
    min-height: 44px;
    min-width: 44px;
}
/* [SF header responsive 2026-10-12] END */

/* ==================================================================
   [SF mobile banner 2026-11-04] START
   Home banner below 992px (section.gif-mobile in home.php).
   - The banner picture is an <img> (.gif-mobile__img) instead of a
     cover-cropped background, trimmed only on the empty grey left side
     so all three photo panels stay visible.
   - Heading, tagline and text sit underneath the picture on the same
     grey as the desktop banner, inside the usual 24px page gutter.
   - Same ACF fields (sky_banner_*) as before; desktop banner
     (header.php, .gif-img) is not touched.
   To revert: delete this block and the <img>/.main-container wrappers
   added to .gif-mobile in home.php.
   ================================================================== */
@media (max-width: 991.98px) {
    .gif-mobile {
        height: auto;
        background: #D6D7DB;
        padding-top: var(--sf-mobile-header-h, 78px);
        padding-bottom: 40px;
    }

    .gif-mobile__media {
        overflow: hidden;
    }

    .gif-mobile__img {
        display: block;
        width: 100%;
        height: auto;
        aspect-ratio: 5 / 4;
        object-fit: cover;
        object-position: 95% center;
    }

    .gif-mobile .banner-heading {
        position: static;
        transform: none;
        max-width: none !important;
        padding-top: 24px;
    }

    .gif-mobile .heading-fonts {
        font-size: clamp(30px, 10vw, 42px);
        line-height: 1.05;
        margin-bottom: 14px;
        color: #025D4E;
    }

    .gif-mobile .heading-fonts .big-s {
        width: 0.48em;
        height: 0.83em;
    }

    .gif-mobile .heading-fonts .big-s path {
        fill: #025D4E;
    }

    .gif-mobile h4 {
        font-size: 18px;
        line-height: 1.35;
        margin-bottom: 12px;
    }

    .gif-mobile p {
        font-size: 15px;
        line-height: 1.6;
        text-align: left;
        max-width: none;
        margin-bottom: 0;
    }

    .gif-mobile p br {
        display: none;
    }
}

/* Fixed navbar is 65px tall up to 390px (logo shrinks to 188px there). */
@media (max-width: 390px) {
    .gif-mobile {
        padding-top: var(--sf-mobile-header-h-sm, 65px);
    }
}

/* Tablet: show the picture a little wider (less grey trimmed). */
@media (min-width: 576px) and (max-width: 991.98px) {
    .gif-mobile__img {
        aspect-ratio: 16 / 10;
        object-position: 85% center;
    }
}
/* [SF mobile banner 2026-11-04] END */

/* ==================================================================
   [SF mobile spacing 2026-11-04] START
   - About + Technology: the 48px left indent (style.css
     ".about-child-section .comman-p" / ".tech-backhground .content-first")
     only makes sense next to the heading column on desktop; below
     992px the columns stack, so the indent is removed.
   - Technology section: an older rule above sets padding-top/bottom to 0
     up to 993px (and beats .mobile-padding-*), so the last "From Signal
     to Performance" step sat on the section edge and was clipped by
     section { overflow: hidden }. Height is forced to auto (style.css
     still has an old height: 50vh) and the 35px mobile padding is back.
   To revert: delete this block.
   ================================================================== */
@media (max-width: 991.98px) {
    .about-child-section .comman-p,
    .tech-backhground .content-first {
        margin-left: 0;
    }
}

@media (max-width: 993px) {
    .scroll-section.tech-backhground {
        height: auto;
        min-height: 0;
        padding-top: 35px;
        padding-bottom: 35px;
    }
}
/* [SF mobile spacing 2026-11-04] END */
