﻿.about-shape-four, .style_three .about-shape-two {
    animation-name: float-bob;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear
}

*, body {
    margin: 0
}

*, .dropdown-item, .logo-marquee-section *, .logo-marquee-section ::after, .logo-marquee-section ::before, .slide-content, .stat-item, .video-hero {
    box-sizing: border-box
}

.award-item, .card-face {
    backface-visibility: hidden
}

* {
    padding: 0
}

a.show {
    opacity: 1 !important;
    z-index: 10 !important;
}

a.hidden {
    left: 0 !important;
    top: 0 !important;
    z-index: -20;
}

:root {
    --Blue-color: #0f2540;
    --secBule: #0eb0ee;
    --thirdBlue: rgb(48, 53, 93);
    --black-color: #000;
    --white-color: #fff;
    --main-transition: 0.6s;
    --background-section: rgb(245 246 251);
    --New-color: #1d435e;
    --Blue-color: #003366;
    --secBule: #0093DD;
    --white-color: #fff;
    --main-transition: 0.3s
}

@font-face {
    font-family: 'Cairo';
    src: url('../fonts/Cairo-Regular.ttf') format('truetype');
    font-weight: 400;
}

@font-face {
    font-family: 'Cairo';
    src: url('../fonts/Cairo-Bold.ttf') format('truetype');
    font-weight: 700;
}


body {
    font-family: 'Cairo', sans-serif !important;
    font-weight: 100;
    height: 150vh;
    max-width: 100%;
    overflow-x: hidden !important;
    scroll-behavior: smooth;
    color: #333
}

section {
    width: auto;
    overflow: hidden
}

a {
    text-decoration: none !important
}


.logo {
    width: 150px
}

@media (min-width: 768px) {
    .w-md-50 {
        width: 50%;
    }
    .case_list .w-md-50 {
        width: 55%;
    }
}

.btn-outline-primary {
    color: var(--secBule);
    border-color: linear-gradient(90deg,var(--secBule) 0%,var(--secBule) 50%,#0f2540 100%);
    background: linear-gradient(90deg,#fff 0,#f5f5ff 50%,#ebf5ff 100%);
    transition: .3s;
    border-radius: 50px;
    width: fit-content;
}

.btn-primary-gradient, .btn-secondary-gradient {
    transition: all var(--main-transition) ease;
    position: relative;
    overflow: hidden;
    color: #fff;
    font-weight: 600
}

.btn-outline-primary:hover, .custom-slider-container .btn-outline-primary:hover {
    color: #fff;
    background: linear-gradient(90deg,var(--secBule) 0,var(--secBule) 50%,#0f2540 100%);
    border-color: linear-gradient(90deg,var(--secBule) 0%,var(--secBule) 50%,#0f2540 100%);
    transform: translateY(-5px)
}

.gradient-btn:hover i.fas.fa-arrow-right {
    animation: .5s infinite alternate arrowBounce
}

@keyframes arrowBounce {
    0% {
        transform: translateX(0)
    }

    100% {
        transform: translateX(5px)
    }
}

#fixed-social-icons i {
    /*padding: 7px 25px 7px 7px !important;*/
}

#mobile-float-container1, #mobile-float-container2 {
    position: relative;
}

#socail-medie-container {
    position: fixed;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
    background-color: var(--apec-blue);
    color: white;
    border: none;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
    font-size: 20px;
    cursor: pointer;
    transition: .5s;
}

    #socail-medie-container .main-socail-medie-button {
        border: 0;
        background: var(--apec-dark-blue);
        width: 100%;
        height: 100%;
        color: white;
        z-index: 10;
        transition: .5s;
        border-radius: 50%;
    }

        #socail-medie-container .main-socail-medie-button:hover {
            background-color: var(--apec-blue);
        }

    #socail-medie-container .social-icon2 {
        position: absolute;
        color: white;
        background-color: var(--apec-dark-blue);
        border: none;
        width: 60px;
        height: 60px;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 10;
        font-size: 20px;
        cursor: pointer;
        transition: .5s;
    }

        #socail-medie-container .social-icon2:hover {
            background-color: var(--apec-blue);
            transform: scale(1.1);
        }

        #socail-medie-container .social-icon2:first-of-type {
            top: -90px;
            left: 0px;
        }

        #socail-medie-container .social-icon2:nth-of-type(2) {
            top: -60px;
            left: 70px;
        }

        #socail-medie-container .social-icon2:nth-of-type(3) {
            top: 0px;
            left: 110px;
        }

        #socail-medie-container .social-icon2:nth-of-type(4) {
            top: 60px;
            left: 70px;
        }

        #socail-medie-container .social-icon2:nth-of-type(5) {
            top: 90px;
            left: 0px;
        }

.btn-secondary-gradient {
    background: linear-gradient(135deg,rgba(48,53,93,.9) 0,rgba(15,37,64,.9) 100%);
    border: 2px solid rgba(255,255,255,.1);
    border-radius: 50px;
    box-shadow: 0 4px 20px rgba(15,37,64,.4)
}

    .btn-secondary-gradient:hover {
        color: #fff;
        transform: translateY(-5px);
        box-shadow: 0 12px 30px rgba(15,37,64,.6);
        background: linear-gradient(135deg,rgba(48,53,93,.95) 0,rgba(15,37,64,.95) 100%);
        border-color: rgba(255,255,255,.3)
    }

    .btn-secondary-gradient:active {
        transform: translateY(1px);
        box-shadow: 0 6px 15px rgba(15,37,64,.5)
    }

    .btn-primary-gradient::after, .btn-secondary-gradient::after {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        width: 5px;
        height: 5px;
        background: rgba(255,255,255,.5);
        opacity: 0;
        border-radius: 100%;
        transform: scale(1,1) translate(-50%);
        transform-origin: 50% 50%
    }

.bottom-images img.is-visible, .fade-in.visible, .geogrids-sections .image-visible, .gradient-box.is-visible, .impact-section.is-visible .stat-item, .section-fade-up.visible, .swiper-slide-active .btn-custom, .swiper-slide-active .content-wrapper, .swiper-slide-active .slide-text {
    opacity: 1;
    transform: translateY(0)
}

.btn-primary-gradient {
    background: linear-gradient(135deg,#52cfe0 0,#003b8a 100%);
    border: none;
    border-radius: 50px;
    box-shadow: 0 4px 15px rgba(14,174,238,.123)
}

.anchor span:first-child, .squre:hover i, .stat-number {
    color: var(--white-color)
}

.navbar, .squre, .squre a i {
    transition: all var(--main-transition)
}

.case_thumb, .project-card {
    box-shadow: 0 5px 15px rgba(0,0,0,.1)
}

.btn-primary-gradient:hover {
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(14,174,238,.164)
}

.btn-primary-gradient:active {
    transform: translateY(1px)
}

.btn-primary-gradient:focus:not(:active)::after, .btn-secondary-gradient:focus:not(:active)::after {
    animation: 1s ease-out ripple
}

@keyframes ripple {
    0% {
        transform: scale(0,0);
        opacity: .5
    }

    100% {
        transform: scale(20,20);
        opacity: 0
    }
}

.Comment .modal-header, .bg-apec-light-blue, .header-area, .service_list .owl-nav button:hover {
    background-color: var(--Blue-color)
}

.anchor span:first-child {
    padding: 5px 10px;
    font-weight: 700;
    border-radius: 50%
}

.header-area-content p {
    color: #fff;
    font-weight: 700
}

.anchor i, .header-area-content .hide .droptitle, .nav-link:hover, .navbar-toggler i, .section_title h4, .squre a i {
    color: var(--secBule)
}

.squre {
    height: 35px;
    width: 35px;
    border: 1px solid rgba(255,255,255,.151);
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 10px;
    border-radius: 50px;
    cursor: pointer
}

    .squre:hover {
        box-shadow: 0 0 2px var(--white-color)
    }

.anchor {
    margin-right: 5px
}

.border-right {
    border-right: 1px solid rgba(255,255,255,.3)
}

.language-display {
    display: inline-flex;
    align-items: center;
    font-weight: 500
}

.awardsSwiper .swiper-pagination-bullet-active, .language-switcher .dropdown-item.active {
    background-color: var(--secBule)
}

.navbar {
    position: fixed;
    top: 6%;
    z-index: 10
}

.nav-link::after {
    content: '';
    background: linear-gradient(90deg,var(--secBule),#4ec8f4);
    transform-origin: left center
}

.dropdown-menu.aboutDropdown, .navbar .mega-menu-column {
    padding: 10px
}

.navbar .dropdown-item {
    text-transform: capitalize
}

.hero-section {
    position: relative;
    height: 100vh;
    overflow: hidden;
    color: #fff
}

.hero-swiper, .slide-bg {
    width: 100%;
    height: 100%
}

.slide-bg {
    position: absolute;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: transform 8s cubic-bezier(.25, .45, .45, .95) !important;
    transform: scale(1.3);
    z-index: 1;
    will-change: transform
}

.slide-text, .slide-title {
    transform: translateY(20px)
}

.product-card:hover h6, .scroll-zoom-title.zoom-out, .swiper-slide-active .slide-bg {
    transform: scale(1)
}

.slide-content {
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center
}

.content-wrapper {
    transition: .5s cubic-bezier(.22, .61, .36, 1)
}

.slide-title {
    text-transform: uppercase;
    transition: .8s cubic-bezier(.22, .61, .36, 1) .2s
}

.swiper-slide-active .slide-title {
    transform: translateY(0)
}

.slide-text {
    text-transform: none;
    margin-left: auto;
    margin-right: auto;
    opacity: 0;
    transition: .8s cubic-bezier(.22, .61, .36, 1) .4s;
}

.hero-swiper .btn-custom {
    background-color: #0093ddbd;
    border: 2px solid rgba(255,255,255,.2);
    color: #fff;
    border-radius: 50px;
    padding: 15px 40px;
    font-weight: 600;
    letter-spacing: .5px;
    transition: .4s;
    opacity: 0;
    transform: translateY(30px);
    display: inline-block
}

    .hero-swiper .btn-custom:hover {
        background-color: #0093dd;
        transform: translateY(-3px) scale(1.05);
        box-shadow: 0 15px 30px rgba(0,0,0,.3)
    }

.hero-swiper .swiper-slide::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom,rgba(0,0,0,.2) 0,rgba(0,0,0,.7) 100%);
    z-index: 1
}

.hero-swiper .swiper-button-next, .hero-swiper .swiper-button-prev {
    width: 60px;
    height: 60px;
    background-color: rgba(255,255,255,.1);
    border-radius: 50%;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    transition: .3s;
    border: 1px solid rgba(255,255,255,.2);
    opacity: .7
}

    .hero-swiper .swiper-button-next:hover, .hero-swiper .swiper-button-prev:hover {
        background-color: rgba(255,255,255,.2);
        opacity: 1
    }

    .hero-swiper .swiper-button-next:after, .hero-swiper .swiper-button-prev:after {
        font-size: 1.5rem;
        color: #fff;
        font-weight: 700
    }

.hero-swiper .swiper-pagination {
    bottom: 30px !important
}

.hero-swiper .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    background: rgba(255,255,255,.5);
    opacity: 1;
    transition: .3s;
    margin: 0 8px !important
}

.hero-swiper .swiper-pagination-bullet-active {
    background: #007bff;
    width: 30px;
    border-radius: 6px
}

@keyframes scroll {
    0% {
        opacity: 1;
        top: 5px
    }

    30% {
        opacity: 1
    }

    100% {
        opacity: 0;
        top: 20px
    }
}

@keyframes bounce {
    0%,100%,20%,50%,80% {
        transform: translateY(0) translateX(-50%)
    }

    40% {
        transform: translateY(-10px) translateX(-50%)
    }

    60% {
        transform: translateY(-5px) translateX(-50%)
    }
}


@media (max-width:1200px) {
    .slide-title {
        font-size: 3.5rem
    }

    .products-grid {
        grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
        gap: 25px
    }

    .product-image-container {
        height: 200px
    }

    #expert-solutions-modal {
        width: 300px;
        bottom: 3cm;
        right: 3cm
    }
}

@media (max-width:992px) {
    .slide-title {
        font-size: 3rem
    }

    .slide-text {
        font-size: 1.3rem
    }
}

@media (max-width:768px) {
    .lab-facilities-section, .newSection, .value-proposition-section {
        overflow: hidden !important
    }

    .slide-title {
        font-size: 2.5rem
    }

    .slide-text {
        font-size: 1.1rem;
        margin-bottom: 2rem
    }

    .main-graphic, .value-proposition-section .section-description {
        margin-bottom: 0 !important
    }

    .hero-swiper .btn-custom {
        padding: 12px 30px
    }

    .hero-swiper .swiper-button-next, .hero-swiper .swiper-button-prev {
        width: 50px;
        height: 50px
    }

        .hero-swiper .swiper-button-next:after, .hero-swiper .swiper-button-prev:after {
            font-size: 1.2rem
        }

    .section-title, .section-title-sec {
        font-size: 1.7em !important;
        padding: 0 5px;
        line-height: 35px;
    }

    .impact-section .section-title {
        font-size: 2rem !important;
    }

    .custom-btn {
        margin-top: 5% !important;
        text-align: center !important
    }

    .sec-buttons {
        gap: 10px
    }

    .newSection {
        /* height: 73vh !important; */
    }

    .gradient-box .section-title {
        font-size: 2em !important;
        text-align: left !important;
        width: 100% !important;
    }

    .gradient-box {
        left: 0 !important
    }

        .gradient-box .btn-primary-gradient {
            float: left !important;
        }

    .bottom-images {
        right: -2% !important
    }

        .bottom-images img:first-child {
            top: -70px !important;
            left: -30px !important
        }

    .right-image {
        display: none !important
    }

    .lab-facilities-section {
        padding: 55px 20px 10% !important;
    }

    .impact-section {
        padding-bottom: 50px !important;
        min-height: 450px !important
    }

    .value-item img {
        width: 50px !important
    }

    .footer-col, .sec-col2 {
        margin-left: 0 !important
    }

    .main-graphic {
        margin-top: 0 !important
    }

        .main-graphic .apec-logo {
            height: 350px !important
        }

    /* .value-items-grid {
        grid-template-columns: repeat(3,1fr) !important;
    } */

    .client-logos-grid, .footer-links {
        display: grid;
        grid-template-columns: repeat(2,1fr)
    }

    .section-title .title-underline {
        width: 230px !important;
        left: -7% !important;
    }

    .client-logos-grid {
        margin: 0 !important
    }

    .client-logo-item img {
        max-width: 150% !important
    }

    .award-item {
        height: 150px !important
    }

    .apec-image-hero, .navbar-brand, .problems-card-section {
        height: auto !important
    }

    .apec-image-hero {
        margin: 0 0 20% !important;
        padding: 0 !important
    }

    .copyright p, .sec-col {
        margin-left: 0 !important
    }

    .sec-col {
        margin-top: -11% !important
    }

    .widget-title::after {
        left: 35% !important;
        width: 100px !important
    }

    footer .social-icons {
        margin-top: 5% !important;
        margin-bottom: 5% !important
    }

    .copyright p {
        margin-right: 0 !important;
        text-align: center
    }

    body.scrolled .navbar-brand {
        height: 90px !important
    }

    .navbar-brand img {
        height: 100px !important;
    }

    .footer-area .col-lg-2:first-child .widget-title::after {
        left: 0 !important;
        width: 50px !important
    }

    .chat-float-container, .mobile-float-container {
        right: 10px !important
    }

    #expert-solutions-modal {
        display: none
    }

    .app-container {
        margin: 0 3.5cm 3.5cm 0.5cm !important;
    }

        .app-container .page-title {
            margin-left: 10px
        }

    #overlay-shape.collapsed {
        clip-path: polygon(0 0,100% 0,60% 100%,0 100%) !important
    }

    #banner-text-content.shifted {
        left: 0 !important;
        max-width: 100% !important
    }

    .page-content-wrapper {
        margin: 30px 0 !important;
        padding: 0 15px !important;
        max-width: 100% !important
    }

    .canva-products-grid {
        gap: 1cm !important;
        margin: 0 !important
    }

    .geogrid-heading {
        font-size: 2em !important
    }

    .canva-product-title1 {
        font-size: .9em !important
    }

    .geogrids-sections #functions {
        padding: 30px 10px !important;
        display: block;
    }

    #functions .vertical-image-scroll {
        max-height: 35vh !important;
        gap: .5rem !important
    }

    .geogrids-sections .feature-box {
        width: 180px !important
    }

    .geogrids-sections #features {
        padding: 0 !important
    }

    .geogrids-sections .features-container {
        display: grid !important;
        gap: 10px !important;
        grid-template-columns: repeat(2,1fr) !important
    }

    .geogrids-sections #applications {
        padding: 40px 0 90px !important
    }

    .applications-content, .comparison-image {
        margin-top: 20px
    }

    .geogrids-sections .applications-list {
        display: inline-grid !important;
        gap: 0 !important;
        width: 100% !important;
        max-width: auto !important;
        margin: 0 !important;
        padding: 0 30px !important
    }

        .geogrids-sections .applications-list a {
            color: #fff !important
        }

    .geogrids-sections #technical-data {
        padding: 100px 20px 80px !important
    }

    .comparison-content {
        padding: 0 10px !important
    }

    .application-brochure-section {
        padding: 3.5cm 20px !important
    }

    .apec-products-collapse .section-title {
        font-size: 1.5rem !important
    }

    .section-exclusive-manufacturer-video {
        min-height: 550px !important;
        background-size: cover !important;
        background-repeat: no-repeat !important;
        padding: 150px 2%
    }

    .testimonial-slider .testimonial-card {
        width: 85%;
        max-width: 350px
    }

    .footer-links {
        gap: 8px 16px
    }

        .footer-links li {
            margin-bottom: 5px
        }
}

section.about_area.style_three {
    padding: 80px 0;
    position: relative;
    z-index: 1;
    overflow: hidden
}

.style_three .about-shape-one {
    position: absolute;
    bottom: 0;
    right: -35px;
    animation: 4s linear infinite bounceleft;
    z-index: -1 !important
}

.style_three .about-thumb {
    position: relative;
    z-index: 1
}

.style_three .counter-box {
    text-align: center;
    padding: 36px 0 38px;
    border-right: 0;
    position: absolute;
    top: 40px;
    right: 130px;
    width: 210px;
    height: 230px;
    background: url(../IMG/counter-img.png) center center/cover no-repeat;
    z-index: 1
}

.about-item-box.add-border, .has-sub-level, .header-area-content #main-nav-content .nav-item, .header-area-content .hide .nav-item, .section_title h4 {
    position: relative;
}

.style_three .counter-title h3 {
    font-size: 70px;
    line-height: 40px;
    color: #fff;
    font-weight: 700;
    padding-top: 18px
}

.style_three .counter-title p {
    font-size: 16px;
    text-transform: uppercase;
    padding: 52px 0 0;
    color: #fff;
    font-weight: 600
}

.about-item-box.add-border::before {
    position: absolute;
    content: "";
    width: 517px;
    height: 2px;
    background-color: #ebeff3;
    left: 0;
    bottom: -33px
}

.row.case::before, .row.service::before {
    width: 98%;
    margin: auto;
    left: 0;
    content: ""
}

.style_three .about-item-box {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-bottom: 64px
}

.style_three .about-icon {
    width: 85px;
    height: 85px;
    line-height: 85px;
    border-radius: 10px;
    background-color: #f5f6f8;
    text-align: center;
    flex-shrink: 0
}

.style_three .about-item-content h3 {
    font-size: 22px;
    line-height: 30px;
    color: #0f1e36;
    font-weight: 600
}

.style_three .about-item-content p {
    font-size: 16px;
    line-height: 27px;
    color: #616161;
    font-weight: 400;
    width: 85%
}

.section_title h4, .style_three .about-call-content h6 {
    line-height: 28px;
    font-weight: 500;
    text-transform: uppercase
}

.buttons-container, .style_three .about-call-btn {
    display: flex;
    gap: 30px
}

.chat-float-container, .mobile-float-container {
    gap: 15px;
    z-index: 1000;
    right: 30px;
    position: fixed
}

.style_three .about-btn {
    display: inline-block
}

.style_three .about-call-box {
    display: flex;
    align-items: center;
    gap: 20px
}

.style_three .about-call-icon {
    display: inline-block;
    width: 58px;
    height: 58px;
    line-height: 58px;
    border-radius: 29px;
    background-color: #0093dd;
    text-align: center;
    color: #fff;
    font-size: 20px
}

.style_three .about-call-content h6 {
    font-size: 14px;
    color: #0093dd
}

.style_three .about-call-content h4 {
    font-size: 20px;
    line-height: 28px;
    color: #0f1e36;
    font-weight: 600
}

.about-list ul li::before {
    position: absolute;
    content: "";
    height: 10px;
    width: 10px;
    background: #003768;
    left: 0;
    top: 18px
}

.style_three .about-shape-three {
    position: absolute;
    bottom: 3%;
    left: 150px;
    z-index: -1;
    animation: 4s linear infinite bounceleft
}

.about-shape-four {
    right: 25px;
    bottom: -18px;
    -moz-animation-name: float-bob;
    -moz-animation-duration: 2s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: float-bob;
    -ms-animation-duration: 2s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    -o-animation-name: float-bob;
    -o-animation-duration: 2s;
    -o-animation-iteration-count: infinite;
    -o-animation-timing-function: linear
}

.style_three .about-shape-two {
    position: absolute;
    bottom: 25%;
    left: -6%;
    z-index: -2;
    -moz-animation-name: float-bob;
    -moz-animation-duration: 2s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: float-bob;
    -ms-animation-duration: 2s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    -o-animation-name: float-bob;
    -o-animation-duration: 2s;
    -o-animation-iteration-count: infinite;
    -o-animation-timing-function: linear
}

section.about_area.style_three .about_counter {
    background: #f8b097
}

.about_shaps.two {
    right: 5%;
    bottom: 8%;
    z-index: -1
}

.header-area-content #main-nav-content .nav-link::after, .printing_icon_box.style_three .printing_icon {
    background: #fff
}

.about_btn.style_three a {
    background: #0093dd
}

.about_btn.style_three span {
    background: #1a1a1a
}

section.about_area.style_three .section_title h4 {
    padding: 4px 24px 3px 42px;
    background-color: rgb(0 55 104 / 8%);
    text-transform: capitalize
}

.style_three.text-left.section_title h4 {
    padding: 4px 31px 3px 20px;
    background: 0 0
}

.section_title h4 {
    padding: 4px 31px 3px 62px;
    margin-bottom: 14px;
    z-index: 1;
    display: inline-block;
    font-size: 16px;
    background: #fff;
    border-radius: 30px
}

section.about_area.style_three .section_title h4::before {
    left: 23px;
    top: 14px;
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background-color: #0093dd
}

.style_three.text-left.section_title h4::before {
    left: 0;
    top: 14px;
    background: #0093dd;
    width: 7px;
    height: 7px
}

.section_title h4::before {
    position: absolute;
    content: "";
    height: 2px;
    width: 30px;
    left: 11%;
    top: 48%;
    background: #0093dd
}

@keyframes float-bob {
    0%,100% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    50% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

@keyframes bounceleft {
    0%,100% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px)
    }

    50% {
        -webkit-transform: translateX(-15px);
        transform: translateX(-15px)
    }
}

.about-thumb .about-shape-four img, .about-thumb .about-shape-three img, .about-thumb .about-shape-two img, .about-thumb img {
    max-width: 100%;
    height: auto
}

.about-shape-four, .about-shape-three, .about-shape-two {
    position: absolute;
    z-index: -1
}

@media (max-width:991.98px) {
    .about-thumb {
        margin-bottom: 40px;
        text-align: center
    }

    .about-item-box {
        display: flex;
        align-items: flex-start;
        gap: 15px;
        margin-bottom: 20px
    }

    .about-icon img {
        max-width: 50px
    }

    .section_title.style_three h1 {
        font-size: 28px;
        line-height: 38px
    }

    .section_title.style_three p {
        font-size: 15px;
        line-height: 24px
    }

    .about-call-btn {
        text-align: center;
        margin-top: 20px
    }

    .about-shape-four, .about-shape-three, .about-shape-two {
        display: none
    }
}

@media (max-width:575.98px) {
    .section_title.style_three h1 {
        font-size: 22px;
        line-height: 32px
    }

    .about-item-content h3 {
        font-size: 18px
    }

    .about-item-content p {
        font-size: 14px
    }
}

.awards-section, section.choose_area.style_tow {
    padding: 80px 0
}

.award-item {
    flex: 1 1 calc(18% - 30px);
    display: flex;
    flex-direction: column;
    align-items: center
}

    .award-item:hover {
        transform: translateY(-10px)
    }

.award-img {
    margin: 0 auto;
    cursor: pointer;
    transition: .3s
}

.award-title {
    margin-top: 20px;
    font-size: 18px;
    font-weight: 600;
    color: #333
}

.awards-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center
}

.awardsSwiper .swiper-pagination {
    position: relative;
    margin-top: 5px
}

.awardsSwiper .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background-color: #ddd;
    opacity: 1
}

.services {
    background-color: var(--background-section);
    padding: 100px 0 !important
}

    .services .lead {
        color: #555;
        font-size: 1.1rem;
        line-height: 1.8
    }

    .services .product-card {
        background-color: var(--thirdBlue);
        border-radius: 5px;
        transition: transform .3s;
        color: #fff;
        border-bottom: 4px solid var(--secBule);
        display: flex;
        flex-direction: column;
        height: 100%
    }

        .services .product-card:hover {
            box-shadow: 0 8px 20px rgba(0,0,0,.2);
            transform: translateY(-5px)
        }

.product-card .card-body {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.services h3 {
    font-size: 1.5rem;
    font-weight: 600;
    color: #fff
}

.services .btn-custom, .services p {
    font-size: 1rem
}

.services p {
    line-height: 1.6;
    color: #ddd
}

.owl-dots {
    position: relative;
    z-index: 100;
    margin-top: 20px !important
}

.owl-theme .owl-dots .owl-dot span {
    width: 12px;
    height: 12px;
    background: #d6d6d6
}

.owl-theme .owl-dots .owl-dot.active span {
    background: #0d6efd
}

.customSection, .slider-container {
    position: relative;
    overflow: hidden
}

.contact-index-text h2 {
    color: var(--white-color);
    margin-bottom: 20px;
    text-shadow: 2px 2px 4px rgba(0,0,0,.5)
}

.contact-index-text p {
    font-size: 1.2rem;
    text-shadow: 2px 2px 4px rgba(0,0,0,.5)
}

.bg-adds {
    width: 100%;
    background-position: center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-attachment: fixed !important;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative
}

.stat-item {
    background: rgba(255,255,255,.1);
    height: 100%
}

.stat-label {
    color: var(--white-color);
    text-shadow: 1px 1px 2px rgba(0,0,0,.5)
}

.service_area .section_title h4 {
    color: #0093dd;
    font-size: 16px
}

section.service_area.style-tow {
    padding: 80px 0;
    position: relative;
    background: #f5f6f8
}

    section.service_area.style-tow .section_title h1 {
        color: #0f1d37;
        position: relative
    }

.section_title h1 {
    font-size: 3em;
    line-height: 35px;
    color: #0f1e36;
    font-weight: 600
}

.row.service {
    position: relative;
    z-index: 1;
    padding: 72px 0 0
}

    .row.service::before {
        position: absolute;
        height: 2px;
        background: rgb(15 30 54 / 20%);
        right: 0;
        top: 9px;
        z-index: 14
    }

.single_service_box_two {
    display: flex;
    flex-direction: column;
    height: 100%
}

.service_thumb_two {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    height: 100%
}

    .service_thumb_two img {
        width: 100%;
        transition: transform .5s;
        height: auto;
        display: block
    }

.single_service_box_two:hover .service_thumb_two img {
    transform: scale(1.1)
}

.single_service_box_two .service_thumb_two {
    overflow: hidden
}

.service_content_two {
    position: relative;
    bottom: 85px;
    background: #fff;
    width: 100%;
    right: 0;
    padding: 15px 20px;
    transition: .5s;
    border-radius: 0 0 20px 20px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.service_btn_two a i, .service_icon_two {
    background: #f5f6f8;
    border-radius: 50%;
    transition: .5s
}

.service_icon_two {
    margin-bottom: 39px;
    display: inline-block;
    padding: 15px;
    position: absolute;
    right: 4%;
    top: -25%
}

section.service_area.style-tow .single_service_box_two:hover .service_icon_two {
    background: #0093dd;
    color: #fff
}

.service_icon_two img {
    width: inherit;
    filter: brightness(1) invert(0);
    transition: .5s
}

.choose_single_box_two:hover .choose_icon_two img, section.service_area.style-tow .single_service_box_two:hover .service_icon_two img {
    filter: brightness(0) invert(1)
}

h3.service_title_two {
    font-size: 20px;
    color: #0f1e36;
    font-weight: 700;
    line-height: 28px;
    transition: .5s
}

.case_title a:hover, section.service_area.style-tow .single_service_box_two:hover .service_btn_two a, section.service_area.style-tow .single_service_box_two:hover h3.service_title_two {
    color: #0093dd
}

p.service_des_two {
    font-size: 16px;
    line-height: 20px;
    color: #616161;
    font-weight: 400;
    padding: 5px 0
}

.service_btn_two a {
    font-size: 14px;
    line-height: 28px;
    color: #000;
    font-weight: 400;
    transition: .5s;
    text-decoration: none
}

    .service_btn_two a i {
        float: right;
        width: 35px;
        height: 35px;
        line-height: 35px;
        text-align: center;
        transform: rotate(-45deg);
        font-size: 16px;
        margin-right: 16px
    }

section.service_area.style-tow .single_service_box_two:hover .service_btn_two a i {
    background-color: #0093dd;
    color: #fff
}

section.service_area.style-tow .APEC_btn {
    text-align: right
}

.single_service_box_two:hover .service_btn_two a i {
    color: #0093dd;
    background: #fff
}

section.service_area.style-tow .APEC_btn a i {
    transform: rotate(0)
}

.service_list .owl-nav {
    position: relative;
    text-align: center;
    margin-top: -60px;
    display: flex;
    justify-content: center;
    gap: 10px
}

    .service_list .owl-nav button {
        background-color: var(--secBule);
        color: #fff;
        border: none;
        padding: 8px 16px;
        font-size: 18px;
        cursor: pointer;
        border-radius: 10px;
        transition: .3s
    }

.case_study_area {
    padding: 55px 20px 10%;
    position: relative
}


.case_single_box {
    margin-bottom: 30px;
    transition: .3s
}

.case_study_area {
    position: relative;
}

    .case_study_area .button-container {
        position: absolute;
        bottom: 0px;
        left: 0%;
        z-index: 10;
    }

        .case_study_area .button-container div {
            background-color: var(--apec-dark-blue);
            z-index: 10;
            border-radius: 10px;
            width: 30px;
            height: 30px;
            padding: 20px !important;
            display: flex;
            justify-content: center;
            align-items: center;
            transition: .5s;
        }

            .case_study_area .button-container div:hover {
                transform: scale(1.05);
            }

            .case_study_area .button-container div i {
                font-size: 20px !important;
                z-index: 10;
                color: white;
            }

.case_list {
    overflow: hidden;
}


    .case_list .swiper-slide {
        box-sizing: border-box;
    }

.case_single_box {
    margin-bottom: 30px;
    transition: .3s
}

.row.case {
    padding: 0 8px 3rem;
    position: relative;
    z-index: 1
}

    .row.case::before {
        position: absolute;
        height: 3px;
        bottom: 28%;
        right: 0
    }

.case_thumb img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform .5s,filter .5s
}

@media (max-width: 767px) {
    /* .case_list {
        overflow: visible !important;
    } */
    .case_study_area .button-container {
        padding-left: 0 !important;
    }
}

.case_thumb:hover img {
    transform: scale(1.05);
    filter: brightness(.9)
}

.case_content {
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    padding: 20px;
    background: linear-gradient(to top,rgba(15,37,64,.8) 30%,transparent 100%);
    opacity: 1;
    transform: translateY(0)
}

section.case_study_area .section_title h4 {
    color: #fff;
    background: #26354a
}

section.case_study_area .section_title.text-left h1 {
    color: #104086;
    font-weight: 700
}

.case-shape2 {
    position: absolute;
    right: -63%;
    top: 0;
    animation-name: float-bob;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear
}

.case_thumb {
    border-radius: 8px;
    position: relative;
    z-index: 1;
    overflow: hidden
}

.case_icon {
    position: absolute;
    bottom: 34%;
    right: -20%;
    transition: .5s
}

.case_single_box:hover .case_icon {
    right: 8%
}

.case_content .case_title a {
    line-height: 20px;
    text-shadow: 2px 2px 8px rgba(0,0,0,.8);
    color: #fff;
    font-size: 18px;
    text-decoration: none;
    transition: color .3s
}

section.case_study_area .owl-next, section.case_study_area .owl-prev {
    transition: .5s;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center
}

section.case_study_area .owl-nav {
    position: absolute;
    right: 45%;
    display: none
}

section.case_study_area .owl-prev {
    display: inline-block;
    border-radius: 50px;
    background-color: #e2eef5 !important;
    border: 2px solid transparent
}

section.case_study_area .owl-next {
    display: inline-block;
    background: #0093dd !important;
    border-radius: 25px;
    border: 2px solid #e2eef5;
    margin-left: 20px;
    color: #fff !important
}

.owl-next i, section.case_study_area .owl-prev i {
    font-size: 20px
}

section.case_study_area .owl-next:hover {
    background-color: #0093dd;
    border: 2px solid #e2eef5;
    color: #fff
}

section.case_study_area .owl-prev:hover {
    background-color: #fff;
    border: 2px solid #0093dd;
    color: #0093dd
}

.case_thumb .project-badge {
    position: absolute;
    top: 20px;
    right: 20px;
    background: rgba(255,255,255,.9);
    color: #0093dd;
    padding: 8px 20px;
    border-radius: 30px;
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    box-shadow: 0 4px 15px rgba(0,147,221,.3);
    border: 2px solid #0093dd;
    z-index: 3;
    transform: rotate(0);
    transition: .4s cubic-bezier(.175, .885, .32, 1.275);
    overflow: hidden
}

    .case_thumb .project-badge::before {
        content: "";
        position: absolute;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100%;
        background: linear-gradient(90deg,transparent,rgba(0,147,221,.1),transparent);
        transition: .6s
    }

.case_thumb:hover .project-badge {
    box-shadow: 0 6px 20px rgba(0,147,221,.4);
    background: #0093dd;
    color: #fff
}

.case_study_area .btn {
    border-color: var(--Blue-color)
}

@media (max-width:1199px) {
    section.case_study_area .owl-nav {
        top: -160px
    }
}

@media (max-width:991px) {
    .case-shape2, .row.case::before {
        display: none
    }

    .case_content {
        padding: 0 20px 25px;
        transform: translateY(0);
        background: linear-gradient(to top,rgba(0,0,0,.7) 0,rgba(0,0,0,.5) 70%,transparent 100%)
    }

        .case_content .case_title a {
            font-size: 22px
        }

    section.case_study_area .owl-nav {
        top: -140px
    }
}

@media (max-width:767px) {
    .case_content .case_title a {
        font-size: 20px;
        line-height: 1.3
    }

    span.case-catagori {
        font-size: 14px;
        padding: 4px 15px
    }

    section.case_study_area .owl-nav {
        position: relative;
        top: 0;
        text-align: center;
        margin-top: 20px
    }

    .case_thumb .project-badge {
        padding: 5px 12px;
        font-size: 12px;
        top: 15px;
        right: 15px
    }
}

@media (max-width:575px) {
    .case_content .case_title a {
        font-size: 18px
    }

    .case_content {
        padding: 0 15px 20px
    }

    section.case_study_area .owl-next, section.case_study_area .owl-prev {
        width: 40px;
        height: 40px;
        line-height: 40px
    }

    section.case_study_area .owl-next {
        margin-left: 10px
    }
}

/* .case_list.owl-carousel {
    overflow: visible;
    padding-right: 60px
} */

section.choose_area.style_tow .section_title p {
    width: 97%;
    margin: 0;
    padding: 20px 0 34px
}

.choose_single_box_two {
    background: #f5f6f8;
    padding: 34px 25px 29px;
    position: relative;
    z-index: 1;
    border-radius: 20px
}

    .choose_single_box_two::before {
        position: absolute;
        content: "";
        height: 100%;
        width: 0;
        background: var(--Blue-color);
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        border-radius: 20px;
        left: 0;
        top: 0;
        z-index: -1;
        transition: .5s
    }

    .choose_single_box_two:hover::before {
        width: 100%;
        left: 0
    }

h3.choose_title_two {
    font-size: 16px;
    line-height: 20px;
    color: #0f1e36;
    font-weight: 600;
    margin-top: 25px
}

.choose_icon_two img {
    filter: brightness(1) invert(0);
    transition: .5s
}

.choose_single_box_two:hover h3.choose_title_two, .content-wrapper, .geogrids-sections .applications-content h2, .live-chat-float:hover, .product-group a {
    color: #fff
}

.manufacturing-projects {
    background-color: var(--background-section);
    padding-top: 115px !important;
    padding-bottom: 125px !important
}

.hover-apec-blue:hover, .section-title, .text-apec-blue {
    color: var(--Blue-color)
}

.section-subtitle {
    max-width: 1000px;
    margin: 0 auto;
    text-align: center
}

.project-card {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    transition: .3s;
    height: 100%
}

    .project-card:hover {
        transform: translateY(-10px);
        box-shadow: 0 15px 30px rgba(0,0,0,.2)
    }

.project-img img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    transition: transform .5s
}

.canva-product:hover, .cta-btn-gradient:hover, .cta-button:hover, .proj-card-x:hover, .project-card:hover .project-img img {
    transform: scale(1.05)
}

.project-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(15,37,64,.9);
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    opacity: 0;
    transition: opacity .3s;
    padding: 20px
}

.apec-subtext.visible, .card.active .close-card-btn, .lazy-load.loaded, .project-card:hover .project-overlay, .video-section .rotatingGallery-slide[data-arrival-index="3"] .rotatingGallery-image, .video-section .rotatingGallery-slide[data-arrival-index="3"] .rotatingGallery-link, .video-section .rotatingGallery-slide[data-arrival-index="3"] .rotatingGallery-text, .video-section .rotatingGallery-slide[data-arrival-index="3"] .rotatingGallery-video {
    opacity: 1
}

.project-content {
    position: relative;
    top: 50px
}

    .project-content h3 {
        font-size: 1.8rem;
        margin-bottom: 1rem;
        color: var(--secBule)
    }

    .project-content p {
        margin-bottom: 1.5rem;
        line-height: 1.6
    }

.project-badge {
    position: absolute;
    top: 20px;
    right: 20px;
    background-color: var(--secBule);
    color: #fff;
    padding: 5px 15px;
    border-radius: 20px;
    font-weight: 500;
    z-index: 2
}

.testimonials-section {
    position: relative;
    background-color: #fff;
    padding-bottom: 10% !important
}

.testimonial-card {
    background: #6985ab;
    border-radius: 10px;
    padding: 30px;
    box-shadow: 0 5px 20px rgba(0,0,0,.08);
    transition: .3s;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.testimonial-img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden
}

    .proj-card-x .img-x, .testimonial-img img {
        width: 100%;
        height: 100%;
        object-fit: cover
    }

.testimonial-card .quote-icon {
    color: #fff;
    font-size: 24px;
    opacity: .2;
    position: absolute;
    top: 20px;
    right: 20px
}

.testimonial-text {
    font-style: italic;
    color: #fff;
    margin-bottom: 25px;
    position: relative;
    padding: 0 20px
}

.testimonial-author {
    text-align: center;
    border-top: 1px solid #eee;
    padding-top: 20px;
    width: 80%
}

    .testimonial-author h5 {
        color: #fff;
        font-weight: 600;
        margin-bottom: 5px
    }

    .testimonial-author span {
        color: #fff;
        font-size: .9rem;
        display: block
    }

.testimonial-slider.owl-carousel .owl-stage {
    display: flex;
    padding: 10px 0;
    align-items: stretch
}

.footer-flex, .input-group, .testimonial-slider.owl-carousel .owl-item {
    display: flex
}

.testimonial-slider.owl-carousel .owl-dots {
    margin-top: 30px;
    text-align: center
}

    .testimonial-slider.owl-carousel .owl-dots button.owl-dot span {
        width: 12px;
        height: 12px;
        background: #ddd;
        margin: 0 5px;
        display: inline-block;
        border-radius: 50%;
        transition: .3s
    }

    .testimonial-slider.owl-carousel .owl-dots button.owl-dot.active span {
        background: #5c6e95;
        transform: scale(1.2)
    }

.testimonial-slider .testimonial-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,.12)
}

.testimonial-rating {
    text-align: center;
    margin-top: 10px
}

    .testimonial-rating .stars {
        font-size: 1.1rem;
        color: #ddd
    }

        .testimonial-rating .stars .text-warning {
            color: #73c6fb !important
        }

        .testimonial-rating .stars span {
            font-weight: 600;
            color: #fff;
            font-size: .9rem
        }

.rating {
    font-size: 1.2rem
}

.form-check-label {
    color: #444
}

.form-check-input[type=radio]:checked + .form-check-label {
    color: #ffc107;
    font-weight: 700
}

.web-form-section {
    background: var(--background-section);
    padding: 80px 0;
    position: relative;
    overflow: hidden
}

.form-container {
    display: flex;
    align-items: center;
    background: var(--white-color);
    border-radius: 12px;
    overflow: hidden
}

.form-content {
    flex: 1;
    padding: 20px
}

.form-image {
    flex: 1;
    position: relative;
    min-height: 500px;
    display: flex;
    justify-content: center;
    align-items: center
}

    .form-image img {
        width: 100%;
        height: 100%;
        max-width: 400px;
        object-fit: fill;
        position: absolute;
        top: 0
    }

.form-content h2 {
    color: var(--Blue-color);
    font-size: 2.2rem;
    margin-bottom: 15px
}

.form-content p {
    color: var(--thirdBlue);
    margin-bottom: 30px
}

.custom-form .form-group {
    margin-bottom: 20px
}

.custom-form input, .custom-form textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 1rem;
    transition: var(--main-transition)
}

.footer-links a, footer .social-icon {
    transition: .3s;
    text-decoration: none
}

.custom-form input:focus, .custom-form textarea:focus {
    border-color: var(--secBule);
    outline: 0
}

.floating-shapes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

.shape {
    position: absolute;
    background: rgba(255,255,255,.63);
    border-radius: 50%
}

.shape-1 {
    width: 100px;
    height: 100px;
    top: 20%;
    left: 10%;
    animation: 6s ease-in-out infinite float
}

.shape-2 {
    width: 150px;
    height: 150px;
    bottom: 15%;
    right: 10%;
    animation: 5s ease-in-out infinite float
}

.shape-3 {
    width: 70px;
    height: 70px;
    top: 50%;
    right: 20%;
    animation: 3s ease-in-out infinite float
}

@keyframes float {
    0%,100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-40px)
    }
}

.footer-area {
    padding-bottom: 2% !important;
    background-color: var(--Blue-color) !important;
    color: #fff
}

.footer-logo {
    font-size: 1.8rem;
    font-weight: 700;
    color: #fff
}

.widget-title {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 1.5rem;
    position: relative;
    color: var(--secBule)
}

    .widget-title::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: -8px;
        width: 50px;
        height: 2px;
        background: var(--secBule)
    }

.footer-contact, .footer-links {
    list-style: none;
    padding: 0
}

    .footer-links li {
        margin-bottom: .8rem
    }

    .footer-links a {
        color: #d1d1d1;
        display: block
    }

        .footer-links a:hover {
            color: var(--secBule);
            padding-left: 5px
        }

    .footer-contact li {
        margin-bottom: 1rem;
        display: flex;
        align-items: flex-start
    }

    .footer-contact i {
        margin-top: 3px
    }

footer .social-icons {
    display: flex;
    gap: 15px;
    margin-top: -3%;
    margin-bottom: 2%
}

footer .social-icon {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background: rgb(38 104 150);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    position: relative
}

    footer .social-icon:hover {
        background: #308bc9;
        transform: translateY(-3px)
    }

.copyright .border-secondary {
    border-color: rgba(14,176,238,.2) !important
}

.copyright p {
    margin-right: 37%;
    margin-left: -.5%
}

.copyright a:hover {
    color: var(--secBule);
    text-decoration: underline
}

@media (max-width:768px) {
    .awards-grid {
        display: none
    }

    .awards-slider {
        display: block
    }

    .award-item {
        padding: 10px
    }

    .section-title {
        font-size: 2rem;
        padding: 0;
    }

    .project-content h3 {
        font-size: 1.5rem
    }

    .footer-widget {
        margin-bottom: 30px;
        /* padding-top: 0 !important; */
    }


    .copyright {
        font-size: .9rem
    }
}

.footer-map iframe {
    width: 100%;
    height: 130px;
    border: none;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0,0,0,.2)
}

.footer-widget.contact-info-widget p {
    margin-bottom: 10px;
    color: #ccc
}

.mobile-float-container {
    bottom: 10px;
    display: flex;
    flex-direction: column-reverse;
    align-items: flex-end
}

.chat-float-container {
    bottom: 130px;
    display: flex;
    flex-direction: column-reverse;
    align-items: flex-end
}

.chat-toggle-item {
    opacity: 0;
    transform: translateY(20px);
    pointer-events: none;
    transition: .4s
}

    .chat-toggle-item.visible {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto
    }

.wa__r_button.wa__btn_w_img .wa__btn_txt {
    padding: 8px 20px 8px 100px;
    display: table-cell;
    vertical-align: middle;
    height: 66px
}

.wa__r_button.wa__btn_w_img .wa__cs_info .wa__cs_status {
    margin-left: 3px
}

.wa__popup_chat_box {
    width: 351px;
    border-radius: 5px 5px 8px 8px;
    -webkit-border-radius: 5px 5px 8px 8px;
    -moz-border-radius: 5px 5px 8px 8px;
    position: fixed;
    overflow: hidden;
    box-shadow: 0 10px 10px 4px rgba(0,0,0,.04);
    -webkit-box-shadow: 0 10px 10px 4px rgba(0,0,0,.04);
    -moz-box-shadow: 0 10px 10px 4px rgba(0,0,0,.04);
    bottom: -73px;
    z-index: 998;
    opacity: 0;
    visibility: hidden;
    -ms-transform: translate(0,50px);
    transform: translate(0,50px);
    -webkit-transform: translate(0,50px);
    -moz-transform: translate(0,50px);
    transition: .4s;
    -webkit-transition: .4s;
    -moz-transition: .4s;
    will-change: transform,visibility,opacity;
    right: 25px
}

    .wa__popup_chat_box.wa__active {
        -ms-transform: translate(0,0);
        transform: translate(0,0);
        -webkit-transform: translate(0,0);
        -moz-transform: translate(0,0);
        visibility: visible;
        opacity: 1
    }

    .wa__popup_chat_box .wa__popup_heading {
        color: #d9ebc6;
        background: #2db742
    }

        .wa__popup_chat_box .wa__popup_heading:before {
            content: '';
            background-size: 33px;
            display: block;
            width: 55px;
            height: 33px;
            position: absolute;
            top: 20px;
            right: 12px
        }

        .wa__popup_chat_box .wa__popup_heading .wa__popup_title {
            padding-top: 2px;
            padding-bottom: 3;
            color: #fff;
            font-size: 18px;
            line-height: 24px
        }

    .wa__popup_chat_box .wa__popup_notice {
        font-size: 16px;
        color: #000;
        padding: 0 3px;
        font-weight: 600
    }

    .wa__popup_chat_box .wa__popup_content {
        background: #fff;
        padding: 13px 20px 21px 19px;
        text-align: right
    }

    .wa__popup_chat_box .wa__stt.wa__stt_online {
        transition: .2s;
        -webkit-transition: .2s;
        -moz-transition: .2s
    }

.wa__popup_content_list .wa__popup_content_item {
    margin: 14px 0 0;
    transform: translate(0,20px);
    -webkit-transform: translate(0,20px);
    -moz-transform: translate(0,20px);
    will-change: opacity,transform;
    opacity: 0
}

.wa__popup_chat_box.wa__pending .wa__popup_content_list .wa__popup_content_item {
    transition: .4s 2.1s;
    -webkit-transition: .4s 2.1s;
    -moz-transition: .4s 2.1s
}

    .wa__popup_chat_box.wa__pending .wa__popup_content_list .wa__popup_content_item:first-child {
        transition-delay: 0.3s;
        -webkit-transition-delay: 0.3s;
        -moz-transition-delay: 0.3s
    }

.wa__popup_chat_box.wa__lauch .wa__popup_content_list .wa__popup_content_item {
    opacity: 1;
    transform: translate(0,0);
    -webkit-transform: translate(0,0);
    -moz-transform: translate(0,0)
}

.wa__popup_content_list .wa__popup_content_item .wa__member_name {
    font-size: 16px;
    color: #363c47;
    line-height: 1.188em !important
}

.wa__popup_content_list .wa__popup_content_item .wa__popup_txt {
    min-height: 48px;
    height: 48px
}

.wa__popup_txt i {
    font-size: 40px;
    margin-left: 8px;
    margin-left: unset;
    margin-right: 8px
}

.wa__popup_chat_box_ct .wa__popup_ct_avatar img {
    border-radius: 50%
}

.wa__popup_chat_box_ct .wa__popup_ct_call_btn {
    width: 97px;
    font-size: 11px;
    padding: 9px 10px 11px;
    margin: 15px 0
}

.wa__btn_popup {
    cursor: pointer;
    z-index: 5555;
    transition: .3s
}

    .wa__btn_popup .wa__btn_popup_icon {
        width: 45px;
        height: 45px;
        background: #2db742;
        border-radius: 50%;
        -moz-border-radius: 50%;
        box-shadow: 0 6px 8px 2px rgba(0,0,0,.14);
        -webkit-box-shadow: 0 6px 8px 2px rgba(0,0,0,.14);
        -moz-box-shadow: 0 6px 8px 2px rgba(0,0,0,.14)
    }

        .wa__btn_popup .wa__btn_popup_icon:before {
            content: '';
            position: absolute;
            z-index: 1;
            width: 100%;
            height: 100%;
            left: 0;
            top: 0;
            background: url('../IMG/whatsapp_logo.svg') center center/30px auto no-repeat;
            -webkit-background-size: 30px auto;
            -moz-background-size: 30px auto;
            transition: .4s;
            -webkit-transition: .4s;
            -moz-transition: .4s
        }

        .wa__btn_popup .wa__btn_popup_icon:after {
            content: '';
            opacity: 0;
            position: absolute;
            z-index: 2;
            width: 100%;
            height: 100%;
            left: 0;
            top: 0;
            background: url('../IMG/x_icon.svg') center center/14px auto no-repeat;
            -webkit-background-size: 14px auto;
            -moz-background-size: 14px auto;
            transition: .4s;
            -webkit-transition: .4s;
            -moz-transition: .4s;
            -ms-transform: scale(0) rotate(-360deg);
            transform: scale(0) rotate(-360deg);
            -webkit-transform: scale(0) rotate(-360deg);
            -moz-transform: scale(0) rotate(-360deg)
        }

    .wa__btn_popup.wa__active .wa__btn_popup_icon:before {
        opacity: 0;
        -ms-transform: scale(0) rotate(360deg);
        transform: scale(0) rotate(360deg);
        -webkit-transform: scale(0) rotate(360deg);
        -moz-transform: scale(0) rotate(360deg)
    }

    .wa__btn_popup.wa__active .wa__btn_popup_icon:after {
        opacity: 1;
        -ms-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0);
        -webkit-transform: scale(1) rotate(0);
        -moz-transform: scale(1) rotate(0)
    }

    .wa__btn_popup .wa__btn_popup_txt {
        position: absolute;
        width: 160px;
        background-color: #ffff;
        font-size: 15px;
        color: #43474e;
        top: -46px;
        padding: 15px;
        margin-right: 7px;
        letter-spacing: -.03em;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        transition: .4s;
        -webkit-transition: .4s;
        -moz-transition: .4s;
        left: 100%;
        right: unset;
        margin-left: 7px;
        margin-right: unset;
        display: none
    }

    .wa__btn_popup.wa__active .wa__btn_popup_txt {
        -ms-transform: translate(0,15px);
        transform: translate(0,15px);
        -webkit-transform: translate(0,15px);
        -moz-transform: translate(0,15px);
        opacity: 0;
        visibility: hidden
    }

.wa__popup_chat_box .wa__popup_heading {
    position: relative;
    padding: 15px 74px 17px 25px
}

.wa__popup_chat_box .wa__popup_notice, .wa__popup_content_list .wa__popup_content_item .wa__popup_txt {
    text-align: left
}

.canva-product:hover img, .live-chat-float:hover, .wa__btn_popup:hover {
    transform: scale(1.1)
}

.chat-collapse {
    position: absolute;
    bottom: 20px;
    right: 40px;
    width: 300px;
    z-index: 1001;
    transition: .5s;
}

.chat-window {
    background: #fff;
    border-radius: 15px;
    box-shadow: 0 5px 30px rgba(0,0,0,.2);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 400px;
    transition: .5s;
}

.chat-header {
    background: var(--secBule);
    color: #fff;
    padding: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center
}

    .chat-header h5 {
        margin: 0;
        font-size: 16px
    }

.btn-close-chat {
    background: 0 0;
    border: none;
    color: #fff;
    font-size: 14px;
    cursor: pointer
}

.chat-body {
    flex: 1;
    padding: 15px;
    overflow-y: auto;
    background: #f9f9f9
}

.welcome-message {
    background: #fff;
    padding: 15px;
    border-radius: 10px;
    margin-bottom: 15px;
    box-shadow: 0 2px 5px rgba(0,0,0,.05);
    border-left: 4px solid var(--secBule)
}

    .welcome-message p {
        margin: 0 0 10px
    }

    .welcome-message small {
        color: #666;
        font-size: 12px
    }

.chat-footer {
    padding: 15px;
    background: #fff;
    border-top: 1px solid #eee
}

.form-control {
    flex: 1;
    border-radius: 20px;
    padding: 8px 15px;
    border: 1px solid #ddd
}

.btn-send {
    background: var(--secBule);
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    margin-left: 10px;
    display: flex;
    align-items: center;
    justify-content: center
}

::-webkit-scrollbar {
    width: 6px
}

::-webkit-scrollbar-track {
    background: #f2f2f2
}

::-webkit-scrollbar-thumb {
    background-color: var(--secBule);
    border-radius: 4px
}

    ::-webkit-scrollbar-thumb:hover {
        background-color: #026aa7
    }

.lazy-load {
    opacity: 0;
    transition: opacity .5s ease-in-out
}

.logo-marquee-section {
    --color-text: #000;
    --size: clamp(5rem, 1rem + 30vmin, 30rem);
    --gap: calc(var(--size) / 14);
    --duration: 60s;
    --scroll-start: 0;
    --scroll-end: calc(-100% - var(--gap));
    background: radial-gradient(circle,#0eb0ee,#0f2540,#0f2540);
    padding: 2rem 0
}

    .logo-marquee-section .wrapper {
        display: flex;
        flex-direction: column;
        gap: var(--gap);
        margin: auto;
        max-width: 100vw
    }

    .logo-marquee-section .marquee {
        display: flex;
        overflow: hidden;
        user-select: none;
        gap: var(--gap)
    }

    .logo-marquee-section .marquee_group {
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: space-around;
        gap: var(--gap);
        min-width: 100%;
        animation: scroll-x var(--duration) linear infinite
    }

    .logo-marquee-section .marquee-reverse .marquee_group {
        animation-direction: reverse;
        animation-delay: -3s
    }

@keyframes scroll-x {
    from {
        transform: translateX(var(--scroll-start))
    }

    to {
        transform: translateX(var(--scroll-end))
    }
}

.logo-marquee-section img {
    display: grid;
    place-items: center;
    width: var(--size);
    background: #f7f4f445;
    aspect-ratio: 19/9;
    padding: calc(var(--size)/ 10);
    border-radius: .5rem
}

.video-section {
    font-size: 14px;
    height: 80vh;
    margin: 0 0 20%;
    overflow-x: visible
}

@media screen and (-webkit-min-device-pixel-ratio:2),screen and (min-resolution:2dppx) {
    .video-section {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale
    }
}

.video-section h2 {
    font-size: 2.5rem;
    font-weight: 100;
    margin-bottom: 1rem
}

.video-section p {
    font-size: 1.25rem;
    line-height: 1.5
}

.video-section .rotatingGallery-parentContainer {
    width: 100%
}

.video-section .rotatingGallery {
    margin: 3rem auto;
    position: relative;
    user-select: none;
    width: 90%
}

@media (min-width:60em) {
    .video-section {
        font-size: 16px
    }

        .video-section .rotatingGallery {
            width: 66.66%
        }
}

@media (min-width:1140px) {
    .video-section .rotatingGallery {
        width: 50%
    }
}

.video-section .rotatingGallery-slide {
    left: 0;
    position: absolute;
    visibility: hidden;
    transform: translate3d(220%,0,0);
    transition: transform .7s cubic-bezier(.694, 0, .335, 1),visibility .7s cubic-bezier(.694, 0, .335, 1)
}

    .video-section .rotatingGallery-slide[data-arrival-index="1"] {
        transform: translate3d(-330%,0,0)
    }

    .video-section .rotatingGallery-slide[data-arrival-index="2"], .video-section .rotatingGallery-slide[data-arrival-index="3"], .video-section .rotatingGallery-slide[data-arrival-index="4"] {
        visibility: visible
    }

    .video-section .rotatingGallery-slide[data-arrival-index="2"] {
        cursor: w-resize;
        transform: translate3d(-105%,0,0)
    }

    .video-section .rotatingGallery-slide[data-arrival-index="3"] {
        transform: translate3d(0,0,0);
        margin-top: 5%
    }

    .video-section .rotatingGallery-slide[data-arrival-index="4"] {
        cursor: e-resize;
        transform: translate3d(105%,0,0)
    }

@media (min-width:60em) {
    .video-section .rotatingGallery-slide[data-arrival-index="2"] {
        transform: translate3d(-92%,0,0)
    }

    .video-section .rotatingGallery-slide[data-arrival-index="4"] {
        transform: translate3d(92%,0,0)
    }
}

.video-section .rotatingGallery-text {
    opacity: 0;
    transition: opacity .3s;
    padding: 0 1rem
}

.video-section .rotatingGallery-image {
    border: 1px solid rgba(0,0,0,.5);
    box-sizing: border-box;
    backface-visibility: hidden;
    filter: sepia(.5);
    height: 100%;
    margin-bottom: 1.5rem;
    opacity: .5;
    padding: 1rem;
    transition: opacity .3s;
    width: 100%
}

.video-section .rotatingGallery-slide[data-arrival-index="3"] .rotatingGallery-image {
    filter: none
}

.video-section .rotatingGallery-image:hover, .video-section .rotatingGallery-video:hover {
    opacity: .75
}

.video-section .rotatingGallery-video {
    height: 100%;
    width: 100%;
    object-fit: cover;
    opacity: .2;
    padding: 1rem;
    border-radius: 8px;
    transition: opacity .4s
}

.video-section-play-icon {
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translate(-50%,-50%);
    font-size: 3rem;
    color: #fff;
    pointer-events: none;
    opacity: .7;
    background-color: #000000ab;
    border-radius: 50%;
    padding: 1%;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 70px
}

.card, .card-inner {
    transform-style: preserve-3d
}

.video-section-play-icon i {
    font-size: 2rem
}

.video-section .rotatingGallery-slide[data-arrival-index="3"] .video-section-play-icon {
    pointer-events: auto;
    opacity: 1;
    cursor: pointer
}

.video-section .rotatingGallery-slide:not([data-arrival-index="3"]) .video-section-play-icon {
    opacity: .3
}

.video-section-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center
}

    .awards-slider, .dropdown-menu.mega-menu-content, .header-area-content #main-nav-content .dropdown-item:hover::before, .navbar .dropdown-toggle::after, .stat-item-2 .stat-label, .video-section-modal.hidden {
        display: none
    }

.video-section-modal-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.8);
    backdrop-filter: blur(5px)
}

.video-section-modal-content {
    position: relative;
    z-index: 10000;
    max-width: 90vw;
    max-height: 90vh;
    padding: 1rem;
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center
}

.video-section-slide-video {
    width: 90vw;
    max-width: 800px;
    max-height: 80vh;
    border-radius: 12px;
    object-fit: contain;
    background: #000
}

.card-face, .image-preview-container {
    background-size: cover;
    background-position: center
}

.video-section-close {
    position: absolute;
    top: -10%;
    right: 15px;
    font-size: 3rem;
    font-weight: 700;
    cursor: pointer;
    color: #fff;
    z-index: 10001
}

@media (max-width:767px) {
    .testimonial-slider {
        padding: 15px 0
    }

    .testimonial-card {
        padding: 25px 20px;
        margin: 10px 8%
    }

    .video-section .rotatingGallery-parentContainer {
        width: 100%
    }

    .video-section .rotatingGallery {
        width: 100% !important;
        margin: 1rem auto
    }

    .video-section .rotatingGallery-slide[data-arrival-index="2"], .video-section .rotatingGallery-slide[data-arrival-index="4"] {
        transform: translate3d(-100%,0,0) !important
    }

    .video-section .rotatingGallery-slide[data-arrival-index="1"], .video-section .rotatingGallery-slide[data-arrival-index="5"] {
        display: none !important
    }

    .video-section-modal-content {
        width: 95vw;
        padding: .5rem
    }

    .video-section-slide-video {
        width: 100%;
        max-width: 100%
    }

    .video-section-close {
        top: -15%;
        right: 10px;
        font-size: 2rem
    }

    .video-section .rotatingGallery-video {
        height: 100%
    }
}

@media (max-width:950px) {
    .video-section {
        height: 60vh
    }
}

.navbar-brand {
    top: -40%;
    left: 5%;
    height: 150px;
    width: 150px;
    border-bottom-left-radius: 10%;
    border-bottom-right-radius: 10% !important;
    display: flex;
    align-items: center;
    justify-content: center
}

.header-area-content .hide {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: nowrap
}

    .header-area-content .hide .navbar-nav {
        display: flex;
        flex-direction: row;
        gap: 10px;
        margin-bottom: 0
    }

    .header-area-content .hide .nav-link {
        padding: 8px 15px;
        color: #fff;
        font-weight: 500;
        font-size: 1rem
    }

    .header-area-content .hide .dropdown-menu {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        background-color: rgb(29 67 94);
        padding: 10px;
        z-index: 1000;
        border-radius: 5px;
        box-shadow: 0 4px 12px rgba(0,0,0,.15)
    }

    .has-sub-level:hover > .sub-level-menu, .header-area-content #main-nav-content .dropdown:hover > .dropdown-menu, .header-area-content .hide .dropdown:hover > .dropdown-menu, .language-switcher:hover .dropdown-menu, .mega-menu-section .dropdown:hover > .dropdown-menu {
        display: block
    }

    .header-area-content .hide .nav-link:hover {
        background-color: rgb(29 67 94);
        color: #fff
    }

    .header-area-content .hide .dropdown-item {
        color: #fff;
        padding: 10px 15px 10px 25px;
        transition: .3s;
        font-size: 1rem;
        position: relative;
        text-transform: capitalize
    }

        .applications-dropdown-menu .dropdown-item::before, .header-area-content #main-nav-content .mega-menu-content .dropdown-item::before, .header-area-content .hide .dropdown-item::before, .header-area-content .hide .mega-menu-content .dropdown-item::before, .mega-menu-section .dropdown-item::before {
            content: '';
            position: absolute;
            left: 10px;
            top: 50%;
            transform: translateY(-50%);
            width: 6px;
            height: 6px;
            background: var(--secBule,#0093dd);
            border-radius: 50%;
            opacity: 0;
            transition: .3s
        }

        .header-area-content .hide .dropdown-item:hover {
            color: var(--secBule,#0093dd);
            background: rgba(0,147,221,.05);
            text-decoration: none
        }

.mega-menu-section .dropdown-menu {
    position: absolute;
    top: 100%;
    width: 65vw;
    margin-top: 0;
    background-color: #1d435e;
    color: #fff;
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(0,0,0,.4);
    z-index: 9999;
    display: none;
    padding: 10px !important;
    padding-top: 8px !important
}

.card, .hand, .page-section, .right-panel {
    position: relative
}

.mega-box .list-unstyled, .navbar .mega-menu-column ul {
    padding-left: 0;
    list-style: none
}

.mega-menu-inner {
    max-width: 1400px;
    margin: 0 auto
}

.mega-box {
    background-color: transparent;
    border: 2px solid #308bc9;
    padding: 5px;
    border-radius: 5px;
    display: flex;
    flex-direction: column
}

.category-title {
    font-weight: 700;
    font-size: .9rem;
    color: #fff;
    border-bottom: 1px solid #2b6a91;
    background-color: #308bc9;
    padding: 5px;
    margin: -15px -7px 10px;
    border-radius: 3px 3px 0 0
}

.mega-box .list-unstyled {
    margin-bottom: 0;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.applications-dropdown-menu .dropdown-item, .mega-menu-section .dropdown-item {
    color: #fff;
    padding: 8px 15px 8px 25px;
    border-radius: 4px;
    position: relative;
    transition: .3s;
    font-size: .95rem;
    text-transform: capitalize;
    text-align: left
}

    .applications-dropdown-menu .dropdown-item:hover, .mega-menu-section .dropdown-item:hover {
        color: var(--secBule,#0093dd);
        background: rgba(0,147,221,.1);
        padding-left: 30px;
        text-decoration: none
    }

        .applications-dropdown-menu .dropdown-item:hover::before, .header-area-content #main-nav-content .mega-menu-content .dropdown-item:hover::before, .header-area-content .hide .mega-menu-content .dropdown-item:hover::before, .mega-menu-section .dropdown-item:hover::before, .navbar .dropdown-item:hover::before {
            opacity: 1;
            left: 15px
        }

.image-preview-container {
    padding: 15px;
    border-radius: 5px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    background-image: url('include/IMG/default_mega_menu_placeholder.png');
    background-repeat: no-repeat;
    opacity: .8;
    margin-top: -35%
}

.preview-img {
    max-height: 100%;
    max-width: 100%;
    width: 600px;
    object-fit: fill;
    border-radius: 5px;
    transition: opacity .3s ease-in-out;
    border: 3px solid var(--secBule)
}

.bg-video, .image-preview-wrapper .preview-card img, .product-card img, .video-wrapper video {
    object-fit: cover;
    object-fit: cover
}

@media (max-width:991.98px) {
    .mega-menu-section .dropdown-menu {
        width: 100%;
        left: 0;
        right: auto;
        border-radius: 5px;
        box-shadow: 0 4px 12px rgba(0,0,0,.2)
    }

    .mega-menu-inner {
        padding: 0 15px
    }

    .image-preview-container {
        display: none !important
    }

    .mega-box {
        min-height: unset;
        padding: 10px
    }

    .category-title {
        margin-top: -10px;
        margin-left: -10px;
        margin-right: -10px
    }
}

.page-section {
    padding: 80px 0;
    overflow: hidden
}

    .page-section::before {
        content: '';
        position: absolute;
        top: 50%;
        left: -10%;
        transform: translateY(-50%);
        width: 600px;
        height: 600px;
        background-image: url('../IMG/logoo.png');
        background-size: contain;
        background-repeat: no-repeat;
        opacity: .3;
        z-index: 1;
        pointer-events: none
    }

.about_area.style_three::before {
    left: -50px
}

.main-container {
    display: flex;
    width: 90vw;
    max-width: 1400px;
    min-height: 70vh;
    background-color: #fff;
    border-radius: 15px;
    box-shadow: 0 10px 30px rgba(0,0,0,.1);
    overflow: visible;
    margin: 50px auto
}

.left-panel {
    flex: 1;
    padding: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-right: 1px solid #eee;
    text-align: center
}

    .left-panel h2 {
        font-size: 2.5em;
        margin-bottom: 10%;
        font-weight: 600
    }

.client-logos {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 20px;
    max-width: 400px;
    margin-bottom: 30px
}

    .client-logos img {
        max-width: 100%;
        height: auto;
        transition: .3s
    }

        .client-logos img:hover {
            filter: grayscale(80%) brightness(1.2);
            opacity: 1;
            transform: scale(1.05)
        }

.right-panel {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    perspective: 1200px;
    padding: 20px
}

.hand {
    display: inline-grid;
    grid-template-columns: repeat(5,0);
    gap: 0;
    transition: grid-template-columns .3s ease-out,gap .3s ease-out;
    height: 400px
}

    .hand:hover {
        grid-template-columns: repeat(5,18vmin);
        gap: 2vmin
    }

.card {
    width: 42vmin;
    cursor: pointer;
    background-color: transparent;
    border: none
}

#fixed-icons-bar, .card-back, .card-front {
    background-color: #fff
}

.card-face, .card-inner {
    width: 100%;
    height: 100%;
    border-radius: 1vmin;
    position: absolute
}

.card:not(.active):hover .card-inner {
    transform: translateY(-2vmin) scale(1.05)
}

.card-inner {
    transition: transform .8s cubic-bezier(.68, -.55, .27, 1.55);
    box-shadow: 0 8px 20px rgba(0,0,0,.15)
}

.card-face {
    background-repeat: no-repeat;
    border: 1px solid #ddd;
    overflow: hidden
}

.card-back {
    transform: rotateY(180deg);
    display: flex;
    justify-content: center;
    align-items: center
}

.card .card-inner {
    transform: translateX(-50%) rotateY(0) rotate(calc((var(--i) * 15deg) - 30deg));
    transform-origin: 50% 100%
}

.card.active {
    position: absolute;
    z-index: 100;
    width: 60vmin;
    height: 80vmin;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    transition: .6s cubic-bezier(.68, -.55, .27, 1.55)
}

    .card.active .card-inner {
        transform: rotateY(180deg) scale(1);
        box-shadow: 0 15px 40px rgba(0,0,0,.25);
        border-color: #007bff
    }

.close-card-btn {
    position: absolute;
    top: 10px;
    right: 10px;
    background: rgba(0,0,0,.5);
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    font-size: 1.2em;
    z-index: 200;
    opacity: 0;
    transition: opacity .3s
}

.stat-item, .stat-label {
    background-color: transparent
}

.hand.card-active .card:not(.active) {
    pointer-events: none;
    opacity: 0;
    transform: scale(.8);
    transition: .5s ease-out
}

.stat-number, .stat-number-50 {
    font-size: 5.5em
}

.client-logos .logo-atkins {
    position: relative;
    top: 10%;
    left: -30%;
    width: 300px
}

.client-logos .logo-keo {
    position: relative;
    top: -20%;
    left: 3%;
    width: 300px
}

.client-logos .logo-conser {
    position: relative;
    top: -30%;
    left: 40%;
    width: 300px
}

.client-logos .logo-parsons {
    position: relative;
    top: 45%;
    left: -150%;
    width: 300px
}

.client-logos .logo-aecom {
    position: relative;
    top: -30%;
    left: 75%;
    width: 300px
}

.impact-section {
    padding: 0;
    min-height: 75vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-image: linear-gradient(rgba(8,50,105,.7),rgba(8,50,105,.7)),url(../IMG/impact3.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    justify-content: flex-start;
    text-align: center;
    overflow: visible;
    position: relative;
    margin-top: 15%;
    z-index: 1;
    margin-bottom: 0
}

.impact-header {
    position: relative;
    z-index: 2;
    margin-bottom: 50px;
    padding: 0 20px;
    width: 100%;
    color: #fff;
    margin-top: 4%;
    text-align: center
}

    .impact-header .subtitle {
        font-size: 4.5em;
        font-weight: 600;
        padding-left: 20px
    }

.impact-stats-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    max-width: 100%;
    height: 33vh;
    padding: 0 80px;
    flex-wrap: nowrap;
    position: absolute;
    bottom: 83px;
    left: 0;
    right: 0;
    margin-top: 20%
}

.stat-item {
    padding: 0;
    border-radius: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    min-width: unset;
    opacity: 0;
    transform: translateY(20px);
    flex-basis: 33.33%;
    max-width: 33.33%
}

    .stat-item:first-child {
        transition-delay: 0.2s
    }

    .stat-item:nth-child(2) {
        transition-delay: 0.4s
    }

    .stat-item:nth-child(3) {
        transition-delay: 0.6s
    }

.stat-number {
    font-weight: 400;
    color: #fff;
    line-height: 1;
    margin-bottom: 0;
    text-shadow: 2px 2px 8px rgba(0,0,0,.4);
    white-space: nowrap;
    display: flex;
    align-items: baseline;
    justify-content: center
}

    .stat-number::after {
        font-size: 1em;
        font-weight: 400;
        margin-left: .05em;
        position: relative;
        color: #fff;
        text-shadow: 1px 1px 4px rgba(0,0,0,.3)
    }

    .stat-number[data-target="50"]::after {
        content: "M+"
    }

    .stat-number[data-target="20"]::after, .stat-number[data-target="300"]::after {
        content: "+"
    }

.stat-description, .stat-description-bottom, .stat-description-small, .stat-description-top {
    font-size: 1.5em;
    font-weight: 500;
    line-height: 1.2;
    color: #fff;
    margin: 5px 0;
    text-align: center
}

.stat-description-small {
    margin-top: 10px
}

.stat-description {
    margin-top: 10px;
    margin-bottom: 10px
}

.stat-description-top {
    margin-bottom: 5px
}

.stat-description-bottom {
    margin-top: 5px
}

.stat-label {
    color: #fff;
    border: 2px solid #fff;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: .9em;
    font-weight: 600;
    letter-spacing: .8px;
    cursor: pointer;
    transition: .3s;
    white-space: nowrap;
    margin-top: 15px;
    display: inline-block
}

    .stat-label:hover {
        background-color: #007bff;
        color: #fff
    }

@media (max-width:992px) {
    .main-container {
        flex-direction: column;
        width: 95vw;
        height: auto;
        min-height: unset
    }

    .left-panel {
        padding: 30px;
        border-right: none;
        border-bottom: 1px solid #eee
    }

        .left-panel h2 {
            font-size: 2em;
            margin-bottom: 20px
        }

    .client-logos {
        grid-template-columns: repeat(3,1fr);
        max-width: 600px
    }

    .right-panel {
        padding: 30px 10px
    }

    .hand {
        height: 350px
    }

        .hand:hover {
            grid-template-columns: repeat(5,15vmin);
            gap: 1vmin
        }

    .card {
        height: 25vmin;
        width: 17vmin
    }

        .card.active {
            width: 80vw;
            height: 70vw;
            max-width: 500px;
            max-height: 600px
        }

    .impact-section {
        min-height: 500px;
        padding-top: 40px;
        padding-bottom: 250px
    }

    .impact-header .subtitle {
        font-size: 2.8em
    }

    .impact-stats-container {
        padding: 20px 30px;
        height: auto;
        flex-direction: column;
        position: relative;
        bottom: unset;
        left: unset;
        right: unset;
        max-width: 90%;
        margin: 0 auto 20px;
        border-radius: 15px
    }

    .stat-item {
        width: 100%;
        max-width: 100%;
        flex-basis: auto;
        margin-bottom: 30px;
        padding: 10px 0
    }

        .stat-item:last-child {
            margin-bottom: 0
        }

    .stat-number {
        font-size: 4.5em
    }

        .stat-number::after {
            font-size: .5em
        }

    .stat-description, .stat-description-bottom, .stat-description-small, .stat-description-top {
        font-size: 1.1em
    }

    .stat-label {
        font-size: .8em;
        padding: 5px 10px
    }
}

.navbar-brand, .slide-content {
    align-items: center;
    display: flex
}

@media (max-width:576px) {
    .d-flex.justify-content-center.gap-4 {
        gap: 15px !important
    }

    .slide-title {
        font-size: 2rem
    }

    .slide-text {
        font-size: 1rem;
        margin-bottom: 1.5rem
    }

    .hero-swiper .btn-custom {
        padding: 10px 25px;
        font-size: .9rem
    }

    .hero-swiper .swiper-pagination-bullet {
        width: 8px;
        height: 8px;
        margin: 0 6px !important
    }

    .connect-with-us-section .image-container img {
        display: none
    }

    .chat-collapse {
        width: 280px;
        right: 10px;
        bottom: 80px
    }

    .chat-window {
        height: 350px
    }

    .client-logos {
        grid-template-columns: repeat(2,1fr);
        gap: 15px
    }

    .left-panel h2 {
        font-size: 1.8em
    }

    .description-text {
        font-size: .8em
    }

    .hand {
        grid-template-columns: repeat(5,12vmin);
        gap: .5vmin;
        height: 300px
    }

    .card {
        height: 20vmin;
        width: auto
    }

        .card.active {
            width: 90vw;
            height: 80vw;
            max-width: 400px;
            max-height: 500px
        }

    .impact-section {
        padding-top: 30px;
        padding-bottom: 250px
    }

    .impact-header .subtitle {
        font-size: 2.2em;
        padding-left: 15px
    }

    .impact-stats-container {
        padding: 15px;
        margin-bottom: 0
    }

    .stat-item {
        margin-bottom: 25px;
        padding: 8px 0
    }

    .stat-number {
        font-size: 3.5em
    }

        .stat-number::after {
            font-size: .45em
        }

    .stat-description, .stat-description-bottom, .stat-description-small, .stat-description-top {
        font-size: 1em
    }

    .stat-label {
        font-size: .75em
    }
}

.mega-menu-inner {
    padding: 0 !important
}

.header-area-content .hide .mega-menu-content .dropdown-item {
    padding: 10px 0 0
}

.header-area-content .hide .mega-menu-content {
    left: -260%
}

    .header-area-content #main-nav-content .mega-menu-content .dropdown-item:hover, .header-area-content .hide .mega-menu-content .dropdown-item:hover {
        color: var(--secBule,#0093dd);
        background: rgba(0,147,221,.05);
        padding-left: 30px;
        text-decoration: none
    }

.dropdown-menu.applications-dropdown-menu {
    max-width: 300vw;
    background-color: #1d435e;
    border-top: 2px solid var(--secBule,#0093dd)
}

.applications-dropdown-menu .droptitle {
    font-weight: 600 !important;
    color: rgba(255,255,255,.8) !important;
    margin-top: 10px !important;
    margin-bottom: 5px !important;
    padding-left: 15px !important;
    font-size: .9em !important;
    text-transform: none !important
}

.header-area-content .hide .aboutappDropdown {
    left: -300%;
    width: 740%
}

#fixed-icons-bar {
    position: fixed;
    top: 10px;
    right: 20px;
    z-index: 1050;
    padding: 8px 12px;
    border-radius: 50px;
    box-shadow: 0 0 10px rgba(0,0,0,.1);
    gap: 12px
}

.icon-link {
    font-size: 20px;
    color: var(--secBule);
    cursor: pointer
}

    .icon-link:hover {
        color: var(--mainColor)
    }

.aboutappDropdown h6, .nav-link.active {
    color: var(--secBule) !important
}

.header-hidden #fixed-icons-bar {
    display: flex !important
}

.slide-content {
    justify-content: center
}

#main-header-and-nav-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1040;
    transition: transform .3s ease-out,opacity .3s ease-out
}

.header-hidden #main-header-and-nav-wrapper {
    transform: translateY(-100%);
    opacity: 0
}

.header-area {
    background-color: var(--Blue-color);
    box-shadow: 0 2px 5px rgba(0,0,0,.1)
}

.navbar {
    color: #fff;
    width: 100%
}

.navbar-brand {
    padding-top: .3125rem;
    padding-bottom: .3125rem;
    margin: 0 1rem;
    font-size: 1.25rem;
    text-decoration: none;
    white-space: nowrap;
    justify-content: center
}

    .navbar-brand img {
        height: 120px
    }

.social-icon-wrapper {
    position: fixed;
    top: 2.5%;
    right: 35px;
    z-index: 1050;
    background-color: transparent;
    border-radius: 5px;
    display: flex;
    align-items: center;
    gap: 5px;
    transition: top .3s,right .3s
}

.btn-custom, .nav-link {
    transition: all var(--main-transition)
}

.social-icon-wrapper .for-search i, .social-icon-wrapper .language-switcher .language-display i, .social-icon-wrapper .toggle-icon i {
    font-size: 1,2em;
    cursor: pointer;
    color: var(--secBule,#0093dd)
}

.navbar-toggler {
    border: none !important;
    outline: 0 !important;
    box-shadow: none !important;
    overflow: hidden
}

.navbar.scrolled {
    background-color: #ffffffaf;
    padding: 3px 0;
    top: 0;
    box-shadow: 0 4px 12px rgba(0,0,0,.3)
}

.nav-link.active {
    font-weight: 700
}

.nav-link {
    color: #fff;
    letter-spacing: 0;
    margin: 0 3px;
    font-size: 1.1rem;
    font-weight: 500;
    position: relative;
    overflow: hidden
}

    .nav-link:hover {
        color: #266896
    }

    .nav-link::after {
        content: '';
        position: absolute;
        width: 0;
        height: 3px;
        bottom: 0;
        left: 0;
        background: #fff;
        border-radius: 3px 3px 0 0;
        transform-origin: left center;
        transform: scaleX(0);
        transition: transform .4s cubic-bezier(.65, 0, .35, 1),width .3s;
        opacity: 1;
        box-shadow: 0 2px 5px rgba(0,160,227,.3)
    }

    .nav-link.active::after, .nav-link:hover::after {
        width: 100%;
        transform: scaleX(1)
    }

    .nav-link:focus::after {
        animation: 1.5s infinite pulseUnderline
    }

@keyframes pulseUnderline {
    0% {
        box-shadow: 0 0 0 0 rgba(0,160,227,.4)
    }

    70% {
        box-shadow: 0 0 0 6px rgba(0,160,227,0)
    }

    100% {
        box-shadow: 0 0 0 0 rgba(0,160,227,0)
    }
}

.btn-custom {
    background-color: var(--secBule);
    color: var(--white-color);
    padding: 7px 25px;
    border-radius: 20px;
    font-size: 17px
}

    .btn-custom:hover {
        background-color: var(--white-color);
        color: var(--Blue-color)
    }

.navbar .nav-link .dropdown-arrow, .navbar .nav-link .fa-chevron-down {
    transition: transform .3s
}

.navbar .nav-link.rotate .fa-chevron-down, .navbar .nav-link.show .dropdown-arrow, .navbar .show .bi-chevron-down {
    transform: rotate(180deg)
}

.dropdown-menu.aboutDropdown1, .flip-box-front .content {
    padding: 10px !important
}

.navbar .mega-menu {
    position: static;
    z-index: 999
}

.navbar .mega-menu-content {
    position: absolute;
    z-index: 999;
    width: 80%;
    left: 50%;
    transform: translateX(-50%);
    padding: 20px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(0,0,0,.1);
    border-top: 3px solid var(--secBule);
    border-radius: 0 0 8px 8px;
    margin-top: 0
}

    .navbar .mega-menu-content .container {
        max-width: 1200px
    }

.navbar .mega-menu-column h5 {
    color: var(--Blue-color);
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 15px;
    padding-bottom: 5px;
    border-bottom: 1px solid #eee
}

.navbar .mega-menu-column ul li {
    margin-bottom: 8px
}

.navbar .dropdown-item {
    color: #fff;
    padding: 10px 15px 10px 25px;
    border-radius: 4px;
    transition: .3s;
    font-size: .9em;
    position: relative;
    text-transform: capitalize
}

    .navbar .dropdown-item::before {
        content: '';
        position: absolute;
        left: 10px;
        top: 50%;
        transform: translateY(-50%);
        width: 6px;
        height: 6px;
        background: var(--secBule);
        border-radius: 50%;
        opacity: 0;
        transition: .3s
    }

    .navbar .dropdown-item:hover {
        color: var(--secBule);
        background: rgba(0,147,221,.05);
        padding-left: 30px;
        text-decoration: none
    }

.navbar .bi-chevron-down {
    transition: transform .3s;
    font-size: .8rem;
    vertical-align: middle
}

.image-preview-wrapper .preview-card {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    transition: transform .3s
}

    .image-preview-wrapper .preview-card:hover {
        transform: scale(1.02)
    }

    .image-preview-wrapper .preview-card img {
        width: 100%;
        height: 150px;
        border-radius: 8px
    }

.preview-card .preview-desc {
    font-size: 14px;
    color: #555;
    margin: 8px 0 0;
    line-height: 1.4
}

@media (max-width:1199.98px) {
    .navbar .mega-menu-content {
        position: static;
        box-shadow: none;
        border: none;
        padding: 10px 15px;
        width: 100%;
        transform: none;
        box-shadow: 0 5px 15px rgba(0,0,0,.1)
    }

    .navbar .mega-menu-column {
        padding: 10px 0
    }

        .navbar .mega-menu-column h5 {
            font-size: 15px;
            margin-top: 15px;
            margin-bottom: 10px
        }

    .navbar .dropdown-item {
        padding: 6px 15px
    }

    .navbar-collapse {
        max-height: 100vh;
        overflow-y: auto
    }

    body.offcanvas-open {
        overflow: hidden
    }
}

.Search .modal-dialog-top {
    margin-top: 80px
}

.header-area-content #main-nav-content .mega-menu-content .dropdown-item {
    padding: 8px 15px
}

.header-area-content #main-nav-content .mega-menu-content {
    left: 50%;
    transform: translateX(-50%)
}

.header-area-content #main-nav-content .droptitle {
    color: var(--secBule);
    font-size: .8em
}

.dropdown-menu.applications-dropdown-menu {
    position: absolute;
    left: 40% !important;
    transform: translateX(-50%);
    top: 100%;
    color: #fff;
    border-radius: 0 0 10px 10px;
    box-shadow: 0 10px 30px rgba(0,0,0,.4);
    border: none;
    border-top: 2px solid var(--secBule,#0093dd);
    padding: 20px 0;
    display: block;
    opacity: 0;
    transform: translateX(-50%) translateY(10px);
    transition: opacity .3s ease-out,transform .3s ease-out,visibility .3s ease-out;
    visibility: hidden;
    z-index: 9998
}

.nav-item.dropdown:hover .dropdown-menu.applications-dropdown-menu {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    visibility: visible
}

.applications-dropdown-menu .container-fluid {
    padding-left: 0;
    padding-right: 0
}

.applications-dropdown-menu .dropdown-column-category {
    background-color: transparent;
    border: 2px solid #308bc9;
    border-radius: 5px;
    padding: 15px;
    margin-bottom: 20px;
    min-height: auto;
    display: flex;
    flex-direction: column
}

.applications-dropdown-menu .col-md-4 .dropdown-column-category:last-child, .client-logos-grid .row:last-child, .slide-title {
    margin-bottom: 0
}

.applications-dropdown-menu .category-title {
    font-weight: 700;
    font-size: 1rem;
    color: #fff;
    background-color: #308bc9;
    padding: 10px;
    border-radius: 3px 3px 0 0;
    border-bottom: 1px solid #2b6a91;
    margin: -15px -15px 10px;
    display: flex;
    align-items: center
}

    .applications-dropdown-menu .category-title i {
        margin-right: 8px;
        color: #fff
    }

.applications-dropdown-menu .droptitle {
    text-transform: uppercase
}

.applications-dropdown-menu .list-unstyled {
    margin-bottom: 0;
    padding-left: 0;
    list-style: none;
    flex-grow: 1;
    display: flex;
    flex-direction: column
}

@media (max-width:991.98px) {
    .dropdown-menu.applications-dropdown-menu {
        width: 100%;
        left: 0;
        transform: translateX(0);
        border-radius: 5px;
        box-shadow: 0 4px 12px rgba(0,0,0,.2);
        padding: 15px
    }

    .applications-dropdown-menu .dropdown-column-category {
        margin-bottom: 20px
    }

        .applications-dropdown-menu .dropdown-column-category:last-child {
            margin-bottom: 0
        }
}

.language-switcher .dropdown-menu {
    left: -170% !important;
    right: 0 !important;
    display: none;
    position: absolute;
    top: 100%;
    background-color: #fff;
    z-index: 1000;
    padding: 10px;
    border-radius: 5px;
    box-shadow: 0 4px 12px rgba(0,0,0,.2)
}

.dropdown-menu {
    background-color: #1d435e
}

.aboutappDropdown {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 900px !important
}

#header-area, nav.navbar {
    transition: top .3s;
    display: grid;
    gap: 50px
}

.header-hidden #header-area, .header-hidden nav.navbar {
    top: -100%;
    position: relative;
    z-index: 0
}

#fixed-icons-bar, .header-area-content .hide .dropdown:hover > .navbar-brand, .product-group.d-none {
    display: none !important
}

.aboutappDropdown li {
    color: #fff !important
}

.for-search i, .language-switcher .language-display i, .toggle-icon i {
    font-size: 1.2rem;
    color: var(--secBule,#0093dd)
}

.slide-content {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center
}

.header-area-content #main-nav-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: nowrap;
    /* margin-right: 7%; */
}

    .header-area-content #main-nav-content .navbar-nav {
        display: flex;
        flex-direction: row;
        gap: 10px;
        margin-bottom: 0;
        margin-right: 10%;
    }

    .header-area-content #main-nav-content .nav-link {
        padding: 8px 15px;
        color: #fff;
        font-weight: bold;
        font-size: 1em
    }

body.scrolled .header-area-content #main-nav-content .nav-link {
    padding: 8px 8px;
    color: #fff;
    font-weight: bold;
    font-size: 1em
}


.header-area-content #main-nav-content .dropdown-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: var(--Blue-color);
    z-index: 1200;
    box-shadow: 0 4px 12px rgba(0,0,0,.15);
    padding-right: 7px !important;
    padding-left: 15px !important;
    padding-top: 12px !important
}

.language-switcher {
    position: relative;
    cursor: pointer
}

.for-search i, .toggle-icon i {
    cursor: pointer
}

.toggle-icon {
    /* margin-left: 5%; */
}

.sec-col, .sec-col2 {
    margin-left: -3%
}

.header-area-content #main-nav-content .nav-link::after, .header-area-content #main-nav-content .nav-link:hover {
    background-color: transparent !important;
    color: #fff
}

.header-area-content #main-nav-content .dropdown-item {
    color: #fff;
    padding: 10px 30px;
    transition: .3s;
    font-size: .85em;
    position: relative;
    border: 1px solid #fff;
    text-transform: capitalize
}

    .header-area-content #main-nav-content .dropdown-item:hover {
        background: #308ac7;
        padding: 10px 30px;
        text-decoration: none;
        border: none
    }

.sec-col {
    margin-top: 4%
}

.newsletter-form .form-control {
    background-color: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.3);
    color: #fff;
    padding: 10px 15px;
    border-radius: 5px;
    margin-bottom: 1.7rem !important
}

    .newsletter-form .form-control::placeholder {
        color: rgba(255,255,255,.6)
    }

.newsletter-form .btn-primary {
    padding: 10px 20px;
    font-weight: 600;
    border-radius: 5px;
    margin-top: -1%
}

.contact-info-widget p {
    color: rgba(255,255,255,.8);
    font-size: .9em;
    line-height: 1.5
}

.contact-info-widget .qr-code {
    background-color: #fff;
    display: inline-block;
    padding: 5px;
    border-radius: 5px
}

    .contact-info-widget .qr-code img {
        display: block;
        width: 100px;
        height: 100px
    }

.copyright {
    color: rgba(255,255,255,.7);
    font-size: .9em;
    margin-bottom: -1%;
    display: flex
}

    .copyright a {
        color: rgba(255,255,255,.7) !important;
        text-decoration: initial;
        font-size: 14px
    }

.social-icons .social-icon {
    color: #fff;
    font-size: 24px;
    transition: color .3s
}

    .social-icons .social-icon:hover {
        color: #007bff
    }

.video-hero {
    position: relative;
    height: 100vh;
    overflow: hidden;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    background: radial-gradient(circle at top left,#0080c6,#1a2a6c) !important
}

.close-video, .content-wrapper, .product-card h6, .slide-content, .slide-text, .slide-title {
    text-align: center
}

.hero-section .video-overlay {
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: 0 0;
    opacity: .8
}

.slide-content {
    position: relative;
    z-index: 3;
    width: 100%;
    align-items: center;
    padding: 0;
}

.content-wrapper {
    max-width: 100%;
    margin: 0;
    transform: translateY(20px);
    opacity: 0;
    animation: 1s ease-out forwards fadeUp
}

.mouse-scroll-icon, .wheel {
    transform: translateX(-50%)
}

@keyframes fadeUp {
    to {
        transform: translateY(0);
        opacity: 1
    }
}

.slide-title {
    font-size: 4.5em;
    font-weight: 700;
    line-height: 65px;
    text-transform: none;
    text-shadow: 2px 2px 8px rgba(0,0,0,.5)
}

.blue, .canva-product-title, .comparison-table th, .geogrid-heading, .geogrids-sections th {
    text-transform: uppercase
}

.slide-text {
    font-size: 1.3em;
    font-weight: 400;
    line-height: 25px;
    margin-bottom: 20px;
    opacity: 1;
    max-width: 800px;
    text-shadow: 1px 1px 4px rgba(0,0,0,.4);
    width: 90%;
    margin-top: 3%
}

.btn-custom-hero {
    background-color: transparent;
    border: 2px solid #007bff;
    color: #007bff;
    padding: 12px 30px;
    border-radius: 5px;
    font-size: 1.1em;
    font-weight: 600;
    text-decoration: none;
    transition: .3s;
    display: inline-block
}

    .btn-custom-hero:hover {
        background-color: #007bff;
        color: #fff;
        transform: translateY(-3px);
        box-shadow: 0 5px 15px rgba(0,123,255,.3)
    }

.mouse-scroll-icon {
    position: absolute;
    bottom: 12%;
    left: 3%;
    z-index: 4;
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer
}

.mouse {
    width: 16px;
    height: 25px;
    border: 2px solid #fff;
    border-radius: 15px;
    position: relative;
    opacity: .7
}

.wheel {
    width: 2px;
    height: 6px;
    background-color: #fff;
    border-radius: 2px;
    position: absolute;
    top: 8px;
    left: 50%;
    animation: 1.2s cubic-bezier(.65,0,.35,1) infinite scrollWheel
}

.arrow-down {
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 12px solid #fff;
    margin-top: 10px;
    animation: 1.2s infinite bounceArrow
}

@keyframes scrollWheel {
    0% {
        top: 8px;
        opacity: 1
    }

    100% {
        top: 25px;
        opacity: 0
    }
}

@keyframes bounceArrow {
    0%,100%,20%,50%,80% {
        transform: translateY(0)
    }

    40% {
        transform: translateY(-10px)
    }

    60% {
        transform: translateY(-5px)
    }
}

@media (max-width:992px) {
    .for-search {
        display: none !important
    }

    .navbar .mega-menu-content {
        padding: 5px
    }

    .navbar .mega-menu-column {
        padding: 0
    }

        .navbar .mega-menu-column h5 {
            margin-top: 15px
        }

    .video-hero {
        padding-left: 3%
    }

    .slide-title {
        font-size: 3em
    }

    .slide-text {
        font-size: 1.1em
    }
}

@media (max-width:768px) {
    .page-section::before {
        width: 100px;
        height: 100px;
        left: -20px
    }

    .video-hero {
        padding-left: 2%
    }

    .slide-title {
        font-size: 2.5em
    }

    .slide-text {
        font-size: 1em;
        margin-bottom: 30px
    }

    .btn-custom-hero {
        padding: 10px 25px;
        font-size: 1em
    }

    .mouse-scroll-icon {
        bottom: 5%;
        left: 7%;
    }
}

.sec-buttons {
    margin-bottom: 0 !important;
    margin-top: 3%;
    margin-left: 5%;
    margin-right: 5%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}


.section-split-bg-watermark-refined {
    position: relative;
    padding: 30px 10px;
    overflow: hidden;
    min-height: 0;
    background-color: #f8f8f8;
    align-items: center;
    justify-content: center;
    color: #333
}

    .section-split-bg-watermark-refined::before {
        content: '';
        position: absolute;
        left: auto;
        top: 0;
        right: 0;
        width: 70%;
        height: 200%;
        background-image: url('../IMG/ser1.jpg');
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
        z-index: 1;
        pointer-events: none;
        background-image: linear-gradient(to right,#f8f8f8 0,rgb(15 37 64 / 55%) 30%,rgba(15,37,64,.9) 100%),url(../IMG/ser1.jpg);
        opacity: .7
    }

    .section-split-bg-watermark-refined::after {
        content: '';
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 500px;
        height: 500px;
        background-image: url('../IMG/logoo.png');
        background-size: contain;
        background-repeat: no-repeat;
        opacity: .4;
        z-index: 2;
        pointer-events: none;
        left: -120px
    }

    .section-split-bg-watermark-refined > * {
        position: relative;
        z-index: 3
    }

.applications-dropdown-menu {
    width: 90vw !important
}

.mega-menu-section .dropdown-menu {
    left: 450% !important
}

.section-exclusive-manufacturer-video {
    position: relative;
    padding: 150px 0;
    color: #fff;
    text-align: center;
    overflow: hidden;
    background-color: #000;
    min-height: 700px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    margin-bottom: 0 !important;
    background-image: url('../IMG/Exclusive Middle Eastern Manufacturer.jpg');
    background-size: cover;
    background-repeat: no-repeat;
}

    .section-exclusive-manufacturer-video .video-background {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        z-index: 1;
        filter: brightness(.8)
    }

    .section-exclusive-manufacturer-video .video-overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0,61,121,.65);
        z-index: 2;
        clip-path: polygon(0 0,50% 0,60% 100%,0% 100%);
        transform: none;
    }

    .section-exclusive-manufacturer-video .container {
        position: relative;
        z-index: 3;
        display: block
    }

    .section-exclusive-manufacturer-video .section-title {
        font-size: 3.5rem !important;
        font-weight: 700;
        margin-bottom: 25px;
        margin-top: -10px;
        color: #fff;
        text-align: left;
        line-height: .9
    }

    .section-exclusive-manufacturer-video .section-description {
        max-width: 45%;
        margin: 0 0 30px;
        font-size: 1.3rem;
        line-height: 1.2;
        color: #fff;
        text-align: left
    }

.section-split-bg-watermark-refined .section-title {
    color: #004085;
    font-size: 3.8rem;
    font-weight: 700;
    line-height: 1.1;
    margin-bottom: 20px
}

.section-split-bg-watermark-refined .section-subtitle {
    color: var(--Blue-color);
    font-size: 1.3rem;
    line-height: 1.6;
    max-width: 900px;
    margin: 0 auto 40px
}

@media (max-width:767.98px) {
    .header-area-content .hide .navbar-nav {
        flex-direction: column !important;
        gap: 0 !important;
        width: 100% !important
    }

    .applications-dropdown-menu .row > div, .header-area-content .hide .nav-item, .mega-menu-section .dropdown-menu .col-md-3, .mega-menu-section .dropdown-menu .col-sm-6, .mega-menu-section .dropdown-menu .row > div {
        width: 100% !important
    }

    .header-area-content .hide .nav-link {
        width: 100% !important;
        text-align: left !important
    }

    .section-split-bg-watermark-refined .sec-buttons .col-md-3 {
        margin-bottom: 15px;
    }

    .section-split-bg-watermark-refined .btn-primary-gradient {
        width: 100%
    }
}

.section-exclusive-manufacturer-video .btn-primary-gradient {
    float: left
}

.navbar-scrolled {
    background-color: transparent !important
}

    .navbar-scrolled .nav-link {
        text-shadow: 1px 1px 0 #fff;
        color: #141a1c !important
    }

        .navbar-scrolled .nav-link:hover {
            /* color: #308bca !important; */
        }

.navbar-nav .dropdown-menu {
    z-index: 100000 !important;
}

.header-area {
    background-color: transparent;
    max-width: 100%;
    position: relative;
    width: 100%;
    box-shadow: none;
    z-index: auto;
    animation: 1s ease-out forwards fadeInDown
}

.app .dropdown-menu {
    left: 280% !important
}

.dropdown-menu {
    box-shadow: 0 4px 8px rgba(0,0,0,.1)
}

.dropdown-item {
    white-space: normal !important;
    width: 250px;
    max-width: 100%;
    min-width: 0;
    display: inline-block
}

.custom-slider-container {
    margin-bottom: 6.5% !important
}

    .custom-slider-container .button-container {
        display: flex;
        justify-content: center;
        padding: 0px !important;
        margin: 0 !important;
    }

    .custom-slider-container .swiper-button-prev2, .custom-slider-container .swiper-button-next2,
    .mobile-projects .swiper-button-prev2, .mobile-projects .swiper-button-next2 {
        background-color: var(--apec-dark-blue);
        color: white;
        padding: 8px 16px;
        border-radius: 10px;
        font-size: 20px;
        transition: .5s;
    }

        .custom-slider-container .swiper-button-prev2:hover, .custom-slider-container .swiper-button-next2:hover,
        .mobile-projects .swiper-button-prev2:hover, .mobile-projects .swiper-button-next2:hover {
            transform: scale(1.1);
        }

    .custom-slider-container .btn-outline-primary {
        background: 0 0
    }

.main-container .section-title {
    font-weight: 700;
}

.category-title .category-icon {
    width: 25px;
    height: 25px;
    vertical-align: middle
}

.live-chat-float img {
    width: 35px;
    height: 35px
}

.home-icon-hidden {
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease-in-out,visibility .3s ease-in-out
}

.home-icon-visible, .section-title-container.visible {
    opacity: 1;
    visibility: visible
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-20px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translateX(-20px)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

#main-navbar, body.animations-active #main-navbar {
    animation: 1.2s ease-out .2s forwards fadeInDown
}

.social-icon-wrapper, body.animations-active .social-icon-wrapper {
    animation: 1.4s ease-out .4s forwards fadeInDown
}

.navbar-brand {
    position: absolute;
    z-index: 50;
    animation: 1s ease-out forwards fadeInLeft
}

#main-navbar, .header-area, .hidden, .navbar-brand, .proj-card-x:hover .overlay-bottom-x, .social-icon-wrapper {
    opacity: 0
}

body.animations-active .header-area {
    animation: 1s ease-out forwards fadeInDown
}

body.animations-active .navbar-brand {
    animation: 1s ease-out forwards fadeInLeft
}

.bg-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    transition: transform .2s ease-out;
    align-items: center;
}

.animated-letter, .slide-title span {
    opacity: 0;
    display: inline-block;
    transform: translateY(8px);
    animation: .3s forwards fadeInUpFast
}

@keyframes fadeInUpFast {
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.scroll-zoom-title {
    transform: scale(2);
    transition: transform 2.5s cubic-bezier(.33, 1, .68, 1);
    will-change: transform
}

.hero-section.video-hero {
    top: 0 !important;
    /* height: 110vh !important; */
}

.about_area {
    position: relative !important;
    z-index: 2 !important;
    margin-top: 20vh !important;
    background-color: #fff !important
}

.awards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(180px,1fr));
    gap: 30px;
    display: flex
}

.sub-level-menu .sub-level-item {
    color: #fff !important;
    position: relative;
    padding: 10px 30px;
    transition: .3s;
    display: block;
    width: 100%;
    font-size: .85em
}

    .sub-level-menu .sub-level-item:hover {
        background: #308ac7;
        text-decoration: none
    }

        .sub-level-menu .sub-level-item:hover::before {
            opacity: 1 !important;
            left: 15px !important
        }

.aboutDropdown {
    background-color: rgb(29 67 94)
}

.chat-float-wrapper {
    position: fixed;
    bottom: 30px;
    right: 30px;
    display: flex;
    flex-direction: column;
    gap: 15px;
    align-items: flex-end;
    z-index: 10000
}

.live-chat-float, .notification-badge {
    color: #fff;
    align-items: center;
    border-radius: 50%;
    display: flex
}

.live-chat-float {
    background: #7fa7c1;
    width: 45px;
    height: 45px;
    justify-content: center;
    font-size: 22px;
    box-shadow: 0 5px 15px rgba(0,0,0,.2);
    position: relative;
    transition: .3s
}

.notification-badge {
    position: absolute;
    top: -5px;
    right: -5px;
    background: red;
    width: 20px;
    height: 20px;
    font-size: 12px;
    justify-content: center;
    font-weight: 700
}

.pulse-animation {
    position: absolute;
    width: 100%;
    height: 100%;
    background: var(--secBule);
    border-radius: 50%;
    animation: 2s infinite pulse;
    z-index: -1
}

@keyframes pulse {
    0% {
        transform: scale(.1);
        opacity: .9
    }

    70% {
        transform: scale(1.9);
        opacity: 0
    }

    100% {
        transform: scale(.95);
        opacity: 0
    }
}

.wa__btn_popup {
    position: relative;
    right: 0 !important;
    bottom: 0 !important;
    top: unset !important;
    transform: none !important
}

.mega-menu-content {
    padding: 20px;
    min-width: 100%;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0,0,0,.08)
}

.category-list ul {
    padding: 0;
    margin: 0
}

.category-link {
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 5px;
    height: 40px;
    line-height: 17px;
    font-size: 14px;
    border: 1px solid #eee;
    transition: background-color .2s
}

    .category-link.active, .category-link:hover {
        background-color: #308ac7;
        border: none
    }

.category-icon {
    width: 30px;
    height: 30px;
}

.product-group {
    display: flex;
    flex-wrap: wrap;
    padding-right: 0;
    padding-left: .5%;
    padding-top: .2%
}

.product-card {
    border-radius: 8px;
    padding: 0 6px;
    transition: transform .3s
}

    .product-card:hover {
        transform: scale(1.03)
    }

    .product-card img {
        max-width: 100%;
        height: 160px;
        width: 100%;
    }

    .product-card h6 {
        font-size: 14px;
        background-color: #266896;
        padding: 10px 3px;
        height: 65px;
        align-content: center
    }

.text-button:not(:disabled):active, .text-button:not(:disabled):focus, .text-button:not(:disabled):hover {
    background-color: var(--sys-color-state-hover-on-subtle)
}

.text-button:not(:disabled,.primary-button):focus-visible {
    outline: 2px solid var(--sys-color-state-focus-ring);
    color: var(--sys-color-on-primary);
    background-color: var(--sys-color-cdt-base-container)
}

.text-button:not(: disabled,.running):focus, .text-button:not(:disabled,.running):active, .text-button:not(:disabled,.running):hover {
    color: var(--sys-color-primary)
}

.text-button.link-style, .text-button.link-style: hover, .text-button.link-style:active {
    background: 0 0;
    border: none;
    outline: 0;
    border-radius: 2px;
    margin: 0;
    padding: 0 !important;
    font: inherit;
    cursor: pointer;
    height: unset
}

.text-button.primary-button, .text-button.primary-button:not(: disabled):focus {
    background-color: var(--sys-color-primary);
    border: none;
    color: var(--sys-color-on-primary)
}

    .text-button.primary-button:not(:disabled):active {
        background-color: color-mix(in srgb,var(--sys-color-primary),var(--sys-color-state-ripple-primary) 32%);
        color: var(--sys-color-on-primary)
    }

    .text-button.primary-button:not(:disabled):hover {
        background-color: color-mix(in srgb,var(--sys-color-primary),var(--sys-color-state-hover-on-prominent) 6%);
        color: var(--sys-color-on-primary)
    }

    .text-button.primary-button:not(: disabled):focus-visible {
        background-color: var(--sys-color-primary);
        outline-offset: 2px;
        outline: 2px solid var(--sys-color-state-focus-ring);
        color: var(--sys-color-on-primary)
    }

@media (forced-colors:active) {
    .text-button {
        background-color: ButtonFace;
        color: ButtonText;
        border-color: ButtonText
    }

        .text-button:disabled {
            forced-color-adjust: none;
            opacity: 100%;
            background: ButtonFace;
            border-color: GrayText;
            color: GrayText
        }

        .text-button:not(: disabled):focus-visible {
            forced-color-adjust: none;
            background-color: ButtonFace;
            color: Highlight !important;
            border-color: Highlight;
            outline: ButtonText solid 2px;
            box-shadow: var(--legacy-focus-ring-active-shadow)
        }

        .text-button:not(: disabled):hover, .text-button:not(:disabled):active {
            forced-color-adjust: none;
            background-color: Highlight;
            color: HighlightText !important;
            box-shadow: var(--sys-color-primary)
        }

        .text-button.primary-button {
            forced-color-adjust: none;
            background-color: Highlight;
            color: HighlightText;
            border: 1px solid Highlight
        }

            .text-button.primary-button:not(: disabled):focus-visible {
                background-color: Highlight;
                color: HighlightText !important;
                border-color: ButtonText
            }

            .text-button.primary-button:not(: disabled):hover, .text-button.primary-button:not(:disabled):active {
                background-color: HighlightText;
                color: Highlight !important;
                border-color: Highlight
            }
}

#banner-container, .newSection::before {
    background-size: cover;
    background-position: center
}

.link-swatch-link {
    display: inline
}

    .link-swatch-link:not(.undefined) {
        cursor: pointer;
        text-underline-offset: 2px;
        color: var(--text-link)
    }

    .link-swatch-link: hover:not(.undefined) {
        text-decoration: underline
    }

    .link-swatch-link:focus:not(:focus-visible) {
        outline: 0
    }

    .link-swatch-link.undefined {
        opacity: 100%;
        color: var(--text-disabled)
    }

.image-wrapper {
    position: relative;
    display: block;
}

.product-label {
    position: absolute;
    right: 0;
    bottom: 0;
    color: var(--Blue-color);
    font-size: 12px;
    font-weight: 500;
    padding: 3% 2% 3% 10%;
    z-index: 2;
    white-space: nowrap;
    background: linear-gradient(135deg,#ccfede 0,#91b4e7 100%);
    clip-path: polygon(0 100%,20px 0,100% 0,100% 100%)
}

.video-modal {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #0033667d;
    backdrop-filter: blur(5px);
    justify-content: center;
    align-items: center
}

.video-modal-content {
    position: relative;
    width: 90%;
    max-width: 1000px;
    background: 0 0;
    padding: 0;
    animation: .5s fadeInUp
}

.video-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 0 25px rgb(255 255 255 / 45%)
}

    .video-wrapper iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%
    }

.close-video {
    position: absolute;
    top: -15px;
    right: -15px;
    background-color: #fff;
    color: #000;
    font-size: 24px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    line-height: 40px;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(0,0,0,.5);
    z-index: 10;
    transition: .3s
}

.bottom-images img, .gradient-box, .right-image {
    opacity: 0;
    transition: opacity .8s ease-out,transform .8s ease-out
}

.close-video:hover {
    background-color: #dc143c;
    color: #fff
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.video-wrapper video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
    background-color: transparent
}

.custom-flip-box .flip-box-back, .custom-flip-box .flip-box-front {
    border-radius: 5%
}

.section-title-sec {
    color: var(--Blue-color);
    font-weight: 800;
    font-size: 3.5em;
    line-height: 1;
    padding: 0px 9px !important;
}

.section-subtitle-sec {
    color: var(--Blue-color);
    width: 100%;
    margin: 3% 0;
    font-size: 18px;
    font-style: italic;
    font-weight: 500;
    padding: 0 4%
}

.social-icon-wrapper i {
    color: #fff !important;
    border-radius: 10% !important;
    background-color: #1d435e !important;
    font-size: 16px !important;
    padding: 7px !important;
}

.bottom-images img, .right-image img {
    object-fit: cover;
    border-radius: 20px
}

.social-icon-wrapper.scrolled {
    gap: 0
}

.newSection {
    position: relative;
    z-index: 1;
    min-height: 20vh;
    overflow: visible;
    /* margin-bottom: -24px !important; */
    /* height: 114vh; */
    /* padding: 0 !important; */
}

    .newSection::before {
        content: "";
        position: absolute;
        inset: 0;
        background-image: url("../IMG/Background - Expert Geotechnical Designs.jpg");
        filter: opacity(.5);
        z-index: -1
    }

.btn-top {
    background: linear-gradient(135deg,#ccfede 0,#91b4e7 100%);
    color: var(--Blue-color)
}

.lab-facilities-section {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: visible;
    position: relative;
    z-index: 2;
    padding: 20px
}

.gradient-box, .left-content {
    z-index: 1;
    position: relative;
    box-sizing: border-box
}

.content-wrapper {
    /* width: 100%; */
    /* height: 100%; */
    /* position: relative; */
    /* margin-top: 7%; */
}

.left-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.gradient-box {
    width: 54%;
    justify-content: center;
    align-items: center;
    text-align: right;
    padding: 40px;
    align-self: center;
    transform: translateY(20px);
    left: -23%
}

    .gradient-box .section-description {
        color: var(--Blue-color);
        font-size: 1.4em;
        line-height: 1.3;
        margin: 3% 0 2%;
        width: 90%;
        text-align: right;
        float: right;
        position: relative;
        padding-left: 5%
    }

    .gradient-box .btn-primary-gradient {
        margin-top: 20px;
        float: right
    }

.section-title {
    color: #fff;
    font-size: 3.5em;
    line-height: 1.3;
    margin: 0;
    font-weight: 700
}

.bottom-images {
    margin-top: 1%;
    justify-content: flex-start;
    position: relative;
    top: 0;
    padding: 7%;
    padding-bottom: 0 !important;
}

    .bottom-images img {
        width: 350px;
        box-shadow: 0 3px 10px rgba(0,0,0,.15);
        transform: translateY(20px);
        height: 370px
    }

        .bottom-images img:first-child {
            position: relative;
            top: 0;
            left: 0;
            float: left;
            transition-delay: 0.2s
        }

        .bottom-images img:nth-child(2) {
            position: absolute;
            top: 30%;
            left: 25%;
            transition-delay: 0.4s
        }

.right-image {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    transform: translateX(30px);
    width: 45%;
    height: 100%;
}

    .right-image.is-visible {
        opacity: 1;
        transform: translateX(0)
    }

    .right-image img {
        position: absolute;
        width: 650px;
        height: 905px;
        display: block;
        top: 0;
        width: 100% !important;
    }

.award-img, .value-item img {
    object-fit: contain
}

@media (max-width:1024px) {
    .lab-facilities-section {
        height: 600px
    }

    .section-title {
        font-size: 1.8em
    }

    .bottom-images img {
        width: 150px;
        height: 100px
    }
}

.manufacturing-projects {
    background: linear-gradient(to right,#fff,#cbd6ee)
}

    .manufacturing-projects .btn-primary-gradient {
        float: right;
        margin-top: 2%;
        background: 0 0;
        border: 2px solid #003b8a;
        color: #003b8a;
        width: fit-content;
        margin: auto;
        display: block;
    }

.gradient-box .section-title {
    color: var(--Blue-color);
    font-size: 3.4em;
    line-height: 1;
    margin: 0;
    text-shadow: 1px 1px 3px rgba(0,0,0,.3);
    text-align: right;
    font-weight: 700;
    width: 94%;
    /* float: right; */
}

.gradient-box .section-description {
    text-align: left;
    float: left;
    padding-left: 0;
}

.manufacturing-projects .section-title {
    color: #002e7a;
    float: left;
    font-size: 3em
}

.client-section-container {
    background: linear-gradient(to bottom,var(--gradient-top-color),var(--gradient-bottom-color));
    padding: 70px 20px 8%;
    text-align: center;
    overflow: visible;
    margin-bottom: 0
}

.client-header {
    padding: 3rem 1.5rem
}

    .client-header .section-title {
        font-size: 2.6em;
        color: #154088;
        margin-bottom: 20px;
        display: inline-block;
        position: relative
    }

.section-title .title-underline {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 330px;
    height: 5px;
    background-color: #154088;
    border-radius: 2px
}

.testimonials-section .btn-outline-primary:hover, .testimonials-section .btn-primary-gradient {
    background: linear-gradient(135deg,#4e5b7d 0,#2c2f48 100%);
    box-shadow: 0 4px 15px rgba(44,47,72,.66)
}

.client-header .section-description, .value-proposition-section .section-description {
    font-size: 1.1em;
    color: #154088;
    margin-bottom: 40px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    font-weight: 400;
    text-align: center;
}

.client-logos-grid {
    margin: 0 5rem
}

.client-section-container .row {
    display: flex;
    flex-wrap: wrap;
    margin-left: 50px;
    justify-content: center;
    margin-right: 50px;
    margin-bottom: -2rem
}

.client-section-container .col-md-3, .client-section-container .col-md-4, .client-section-container .col-md-6 {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
    margin-bottom: 2rem
}

@media (min-width:768px) {
    .client-section-container .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%
    }

    .client-section-container .col-md-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }

    .client-section-container .col-md-6 {
        flex: 0 0 50%;
        max-width: 50%
    }

    .client-section-container .col-md-3, .client-section-container .col-md-4, .client-section-container .col-md-6 {
        margin-bottom: 0
    }
}

.client-logo-item {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform .3s ease-in-out,box-shadow .3s ease-in-out;
    width: 200px;
    box-sizing: border-box
}

    .client-logo-item img {
        max-width: 75%;
        height: auto;
        display: block;
        width: auto
    }

.client-section-container .edit-logo {
    margin: 0 20%;
    width: 65%
}

.testimonials-section .section-title {
    color: rgb(23 77 134);
    font-weight: 700;
    font-size: 3em
}

.testimonials-section .btn-outline-primary {
    color: #2c2f48;
    border-color: linear-gradient(90deg,#4e5b7d 0%,#4e5b7d 50%,#2c2f48 100%)
}

    .testimonials-section .btn-outline-primary:hover {
        color: #fff
    }

.apec-hero {
    padding: 40px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .6s;
    z-index: 10
}

.apec-big-title {
    margin-bottom: 20px;
    transform-origin: center center
}

.apec-big {
    font-size: 300px
}

.section-title-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

.award-item, .awards-grid {
    padding: 0;
    align-items: center;
}

.section-subtitle-container {
    text-align: center;
    margin-bottom: 40px;
    margin-top: 40px
}

.section-subtitle {
    font-size: 3em;
    color: #00377f;
    font-weight: 700
}

.awards-grid {
    grid-template-columns: repeat(4,1fr);
    gap: 0 2px;
    max-width: 100%;
    margin: 0 10%;
    justify-items: center;
}

.award-item.made-in-abu-dhabi {
    grid-column: span 4
}

.award-item {
    will-change: transform,opacity;
    background-color: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
    text-align: center;
    transition: none;
    display: flex;
    justify-content: center
}

.apec-hero, .awards-section {
    background: #fff;
    position: relative
}

.award-item:hover {
    transform: none;
    box-shadow: none
}

@media (max-width:768px) {
    .section-exclusive-manufacturer-video .section-title {
        font-size: 1.7rem !important;
    }

    .section-exclusive-manufacturer-video .section-description {
        font-size: 1rem;
        max-width: 90%
    }

    .gradient-box, .right-image {
        width: 100%;
        margin-bottom: 20px
    }

    section.case_study_area .section_title.text-left h2 {
        font-size: 1.6rem !important;
    }

    .lab-facilities-section {
        flex-direction: column;
        height: auto;
        padding-bottom: 25% !important;
    }

    .content-wrapper {
        flex-direction: column;
        height: auto
    }

    .left-content {
        width: 100%;
        order: 2
    }

    .gradient-box {
        height: auto;
        padding: 0%;
    }

    .section-title {
        font-size: 1.5em
    }

    .bottom-images {
        justify-content: center;
        flex-wrap: wrap;
        margin-top: 20px
    }

        .bottom-images img {
            width: 45%;
            max-width: 200px;
            height: auto
        }

    .right-image {
        position: relative;
        height: 300px;
        order: 1
    }

    .awards-grid {
        display: flex; /* استخدم flex بدل grid */
        flex-wrap: wrap; /* يخلي العناصر تنزل لسطر جديد */
        justify-content: center;
        margin: 0 auto;
        gap: 10px;
    }

    .award-item {
        flex: 0 0 calc(33.33% - 10px); /* يخلي كل عنصر ياخد ثلث العرض */
        box-sizing: border-box;
    }

        .award-item.made-in-abu-dhabi {
            /* flex: 0 0 100%; */ /* يخلي العنصر ده لوحده على صف كامل */
        }

        .award-item.made-in-abu-dhabi {
            grid-column: span 1
        }

    .awards-slider {
        display: block
    }

    .apec-big-title {
        font-size: 60px
    }

        .apec-big-title.shrink {
            font-size: 32px;
            transform: translateY(0)
        }

    .title-underline {
        height: 3px;
        left: 0% !important
    }

    .section-title-container.visible .title-underline {
        width: 80px
    }

    .awards-section {
        padding-top: 80px
    }

    .section-title-container {
        margin-top: -80px
    }
}

.mouse-arrow {
    font-size: 10px
}

.manufacturing-projects .section-split-bg-watermark-refined {
    padding: 0 0 5px
}

@media (min-width:1400px) {
    .slide-content .btn-top {
        margin-top: 3%;
        margin-bottom: 3%
    }

    .slide-content .content-wrapper {
        /* margin-top: 22%; */
    }

    .gradient-box {
        border-top-right-radius: 20px;
        border-bottom-right-radius: 20px
    }
}

.slide-content .btn-top {
    margin-top: 3%;
    margin-bottom: 3%
}

.sec-m {
    margin: 9% 0
}

.custom-slider-container {
    margin-top: 4% !important;
    padding: 0 !important
}

    .custom-slider-container .sec-m {
        margin: 5% 0
    }

.newsletter-p {
    font-size: 1em;
    font-weight: 500;
    color: #fff
}

.newsletter-small {
    font-size: .9em;
    color: rgba(255,255,255,.7);
    margin-left: 15px
}

.apec-big-title.shrink {
    color: #003780;
    transform: translateY(calc(128vh - 50vh - 100px))
}

.apec-subtext {
    position: relative;
    z-index: 9;
    opacity: 1;
    opacity: 0;
    transition: opacity .5s
}

.blue {
    color: #0093dd
}

.footer-col {
    /* margin-left: 9%; */
}

.apec-hero {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
    margin-bottom: 7%
}

.apec-container, .apec-content {
    display: flex;
    padding: 0;
    margin: 0
}

.apec-content {
    position: relative;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: auto;
    text-align: left
}

.apec-container {
    align-items: flex-end;
    justify-content: center
}

.apec-hero-logo {
    height: 400px;
    width: auto;
    margin-right: -12%;
    margin-bottom: 10%;
    margin-left: -12%
}

.apec-subtext.hidden {
    opacity: 0;
    pointer-events: none
}

.awards-section {
    padding-top: 100px;
    padding-bottom: 80px;
    z-index: 5
}

.section-title-container {
    text-align: center;
    margin-top: -9%;
    padding: 20px 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .4s ease-in-out,visibility .4s ease-in-out
}

.title-underline {
    width: 0;
    height: 11px;
    background-color: #003780;
    margin-top: 10px;
    transition: width .6s ease-out
}

.section-title-container.visible .title-underline {
    width: 350px
}

.section-fade-up {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity .8s ease-out,transform .8s ease-out
}

.apec-subtext {
    font-size: 38px;
    color: #00377f;
    margin-top: 10px;
    display: inline-block
}

    .apec-subtext span {
        opacity: 0;
        animation: 1s forwards fadeInOpacity;
        display: inline-block;
        margin-right: 6px
    }

@keyframes fadeInOpacity {
    to {
        opacity: 1
    }
}

.apec-big-title {
    font-size: 48px;
    font-weight: 900;
    color: #141a1c;
    opacity: 0;
    transform: scale(.6);
    transition: transform .8s ease-out,opacity .8s ease-out;
    white-space: nowrap;
    position: relative;
    z-index: 11;
    line-height: 1
}

    .apec-big-title.visible {
        transform: scale(1);
        opacity: 1;
        font-size: 133px
    }

    .apec-big-title.shrink {
        font-size: 48px;
        transform: translateY(calc(114vh - 50vh - 100px)) scale(1);
        transition: transform .8s,font-size .8s
    }

[data-aos][data-aos][data-aos-duration="400"], body[data-aos-duration="400"] [data-aos] {
    transition-duration: .8s !important
}

.hero-section [data-aos][data-aos][data-aos-duration="400"], .hero-section body[data-aos-duration="400"] [data-aos] {
    transition-duration: 1s !important
}

.mega-menu-content .container-fluid {
    padding-right: 7px !important;
    padding-left: 7px !important
}

.header-area-content {
    margin-top: 1% !important
}

body.scrolled .navbar-brand img {
    opacity: 0;
    position: absolute
}

body.scrolled .navbar-brand {
    background-image: url('../IMG/Apec-Logo--color.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center left;
    opacity: 1;
    width: 200px;
    left: 1%;
    top: -49%
}

body.scrolled #main-header-and-nav-wrapper {
    background-color: #fff;
    height: 13.5vh
}

body.scrolled .navbar-nav {
    margin-top: .7%;
    margin-right: 14% !important;
}

body.scrolled .social-icon-wrapper {
    top: 5%
}

.apec-big-title.grow-back {
    font-size: 190px !important;
    transition: font-size .8s,transform .8s;
    transform: scale(1) translateY(0)
}

.apec-big-title.fade-only {
    opacity: 0;
    animation: .8s forwards fadeOnlyTitle
}

@keyframes fadeOnlyTitle {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@media (min-width:1650px) {
    .container {
        max-width: 1520px
    }

    .header-area-content {
        margin-right: 3% !important;
    }

    .awards-grid {
        /* max-width: 1500px; */
    }

    .award-img {
        height: 200px
    }
}

.sub-level-menu {
    display: none;
    list-style: none !important;
    margin: 0;
    padding-left: 0;
    position: absolute;
    top: 0;
    left: 100%;
    z-index: 999;
    background-color: var(--Blue-color);
    min-width: 200px
}

.value-proposition-section {
    background: linear-gradient(to bottom,var(--gradient-top-color),var(--gradient-bottom-color));
    padding: 120px 20px 17%;
    overflow: visible;
    margin-bottom: 0
}

    .value-proposition-section .container {
        max-width: 1200px;
        margin: 0 auto;
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        min-height: 600px;
        padding-bottom: 80px;
    }

    .value-proposition-section .section-title {
        font-size: 3em;
        color: #154088;
        margin-bottom: 20px
    }

.main-graphic {
    position: relative;
    z-index: 1;
    margin-top: 0;
    margin-bottom: 20px
}

    .main-graphic .apec-logo {
        width: 500px;
        height: 450px;
        display: block;
        margin-left: -2%;
    }

.value-items-grid {
    position: absolute;
    top: 69%;
    left: 48%;
    transform: translate(-50%,-50%);
    width: 100%;
    height: 100%;
    max-width: 900px;
    max-height: 650px
}

.value-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .5s ease-out,transform .5s ease-out;
    position: absolute;
    width: 250px;
    z-index: 2
}

.value-items-grid .value-item:first-child {
    top: 0;
    left: -15%
}

.value-items-grid .value-item:nth-child(2) {
    top: 0;
    right: -15%
}

.value-items-grid .value-item:nth-child(3) {
    top: 45%;
    left: 0
}

.value-items-grid .value-item:nth-child(4) {
    top: 45%;
    right: 0
}

.value-items-grid .value-item:nth-child(5) {
    bottom: 0;
    left: 40%
}

.value-items-grid .value-item:nth-child(6) {
    bottom: 0;
    right: 15%
}

.value-icon {
    width: 95px;
    height: 95px;
    padding: 3px;
    background-color: #328ac9;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
    box-shadow: 0 4px 8px rgba(0,0,0,.1)
}

.value-item img {
    width: 60px;
    height: auto
}

.value-text {
    font-size: 1.2em;
    color: #1e488d;
    font-weight: 500
}

.value-number {
    font-size: 1.5em;
    font-weight: 400
}

@media (max-width:992px) {
    .value-proposition-section .container {
        min-height: 500px
    }

    .apec-logo {
        width: 200px
    }

    .value-items-grid {
        max-width: 700px;
        max-height: 500px
    }

    .value-item {
        width: 140px
    }

    .value-items-grid .value-item:first-child {
        top: 5%;
        left: 0
    }

    .value-items-grid .value-item:nth-child(2) {
        top: 5%;
        right: 0
    }

    .value-items-grid .value-item:nth-child(3) {
        top: 45%;
        left: 5%
    }

    .value-items-grid .value-item:nth-child(4) {
        top: 45%;
        right: 5%
    }

    .value-items-grid .value-item:nth-child(5) {
        bottom: 5%;
        left: 5%
    }

    .value-items-grid .value-item:nth-child(6) {
        bottom: 5%;
        right: 5%
    }
}

.connect-with-us-section {
    display: flex;
    align-items: center;
    background: linear-gradient(to right,#004aad 40%,#51cddf);
    color: #fff
}

.image-container {
    flex: 0 0 auto;
    width: 30%;
    overflow: hidden
}

    .image-container img {
        width: 100%;
        height: auto;
        display: block
    }

.content-container {
    flex-grow: 1;
    padding-left: 50px;
    text-align: left
}

    .content-container h2 {
        font-size: 2.5em;
        margin-bottom: 10px;
        font-weight: 700
    }

    .content-container p {
        font-size: 1.2em;
        margin-bottom: 30px
    }


.connect-with-us-section .btn-primary-gradient {
    background: 0 0;
    border: 2px solid #fff;
    color: #fff;
    font-weight: 600;
    border-radius: 50px;
    transition: all var(--main-transition) ease;
    box-shadow: none;
    position: relative;
    overflow: hidden;
    padding: 0 2%
}

.button:hover {
    background-color: #fff;
    color: #007bff
}

@media (min-width:1200px) and (max-width:1500px) {
    .header-area-content #main-nav-content {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        flex-wrap: nowrap;
        /* margin-right: 0%;
        margin-left: 0%; */
    }

    .gradient-box {
        left: -22%;
        margin-top: -15px
    }

        .gradient-box .section-title {
            width: 97%
        }

    .bottom-images {
        margin-top: -13%;
        padding: 8%;
    }

    .right-image img {
        /* top: -13%; */
        width: 515px;
        height: 775px
    }

    .right-image {
        /* top: 17%; */
        right: 0%;
    }

    .awards-grid {
        /* max-width: 1100px; */
    }

    .section-exclusive-manufacturer-video .section-description {
        max-width: 52%
    }

    .slide-content .content-wrapper {
        /* margin-top: 22%; */
    }

    .impact-section {
        margin-top: 10%
    }

    .gradient-box .section-description {
        width: 100%
    }

    .language-display .me-2 {
        margin-top: -2px
    }

    body.scrolled .navbar-brand {
        top: -56%
    }

    body.scrolled #main-header-and-nav-wrapper {
        height: 14vh
    }
}

.custom-modal, .modal-overlay {
    z-index: 9999;
    left: 0;
    height: 100%;
    display: none
}

.modal-overlay {
    position: fixed;
    top: 0;
    width: 100%;
    background: rgba(0,0,0,.6);
    backdrop-filter: blur(3px);
    justify-content: center;
    align-items: center
}

.modal-box {
    background: #fff;
    padding: 30px;
    border-radius: 15px;
    width: 90%;
    max-width: 500px;
    position: relative;
    animation: .4s fadeIn;
    box-shadow: 0 10px 30px rgba(0,0,0,.3)
}

.close-btn-message {
    position: absolute;
    top: 15px;
    right: 20px;
    font-size: 24px;
    color: #333;
    cursor: pointer
}

.modal-box h3 {
    margin-bottom: 20px;
    font-size: 24px;
    color: #145e9f
}

.modal-box input, .modal-box textarea {
    width: 100%;
    padding: 12px 15px;
    margin-bottom: 15px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 16px;
    outline: 0;
    transition: .3s
}

    .modal-box input:focus, .modal-box textarea:focus {
        border-color: #d71a21;
        box-shadow: 0 0 5px rgba(215,26,33,.3)
    }

.submit-btn {
    background: linear-gradient(to right,#d71a21,#ff4e4e);
    color: #fff;
    padding: 12px 25px;
    font-size: 16px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background .3s
}

    .submit-btn:hover {
        background: linear-gradient(to right,#c0171c,#e83c3c)
    }

.custom-modal {
    position: fixed;
    padding-top: 30px;
    top: 0;
    width: 100%;
    overflow: hidden;
    background-color: rgba(0,0,0,.8)
}

#banner-container, .apec-image-hero {
    width: 100%;
    height: auto;
    overflow: hidden;
    z-index: 0;
}

.modal-content-img {
    margin: auto;
    display: block;
    max-width: 100%;
    max-height: 87vh;
    border-radius: 8px;
    box-shadow: 0 0 15px rgba(255,255,255,.2)
}

.cta-button, .slider-arrow-next-x, .slider-arrow-prev-x {
    box-shadow: 0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)
}

.caption {
    margin: auto;
    display: block;
    text-align: center;
    color: #fff;
    padding: 10px;
    font-size: 1.1rem
}

.close-btn {
    position: absolute;
    top: 20px;
    right: 35px;
    color: #fff;
    font-size: 40px;
    font-weight: 700;
    cursor: pointer
}

.category-list {
    padding-left: .25%;
    margin-top: .2%;
    padding-right: 1.5%;
}

.apec-image-hero {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center
}

.apec-image-wrapper {
    width: 100%;
    /* height: 100%; */
    overflow: hidden;
    margin-top: 5%;
    margin-bottom: 1%
}

.apec-image-transition {
    width: 80%;
    height: 80%;
    margin: 0 8%;
    object-fit: cover;
    transform: scale(1.1);
    opacity: 0;
    transition: transform 2s ease-out,opacity 2s ease-out
}

    .apec-image-transition.animate {
        transform: scale(1);
        opacity: 1
    }

@media (min-width:1450px) {
    .content-wrapper {
        /* width: 100%; */
        /* height: 100%; */
        /* position: relative; */
        /* margin-top: 9%; */
    }

    .gradient-box {
        width: 54%;
        justify-content: center;
        align-items: center;
        text-align: right;
        padding: 20px;
        box-sizing: border-box;
        align-self: center;
        opacity: 0;
        transform: translateY(20px);
        transition: opacity .8s ease-out,transform .8s ease-out;
        position: relative;
        left: -25%;
        z-index: 1
    }

        .gradient-box .section-description {
            color: var(--Blue-color);
            font-size: 1.4em;
            line-height: 1.3;
            margin: 3% 0 2%;
            width: 90%;
            text-align: right;
            float: right;
            position: relative;
            padding-left: 3%
        }

    .bottom-images {
        margin-top: -6%;
        justify-content: flex-start;
        position: relative;
        top: 0;
        padding: 6%;
    }

    .right-image img {
        position: absolute;
        width: 650px;
        height: 787px;
        object-fit: cover;
        display: block;
        top: 0;
        border-radius: 20px
    }
}

@media (min-width:1200px) and (max-width:1320px) {
    .gradient-box, gradient-box {
        text-align: right;
        padding: 20px;
        box-sizing: border-box;
        align-self: center;
        opacity: 0;
        transition: opacity .8s ease-out,transform .8s ease-out;
        left: -23%
    }

    gradient-box {
        width: 60%;
        justify-content: center;
        align-items: center;
        transform: translateY(20px);
        position: relative;
        z-index: 1
    }

    .header-area-content #main-nav-content .navbar-nav {
        margin-right: 9%
    }

    .right-image {
        position: absolute;
        right: 0%;
        /* top: 14%; */
        z-index: 2;
        display: flex;
        justify-content: center;
        align-items: center;
        opacity: 0;
        transform: translateX(30px);
        transition: opacity .8s ease-out,transform .8s ease-out
    }

        .right-image img {
            /* top: -13%; */
            width: 450px;
            height: 785px
        }

    .gradient-box {
        width: 56%;
        justify-content: center;
        align-items: center;
        transform: translateY(20px);
        position: relative;
        z-index: 1
    }

        .gradient-box .section-title {
            width: 97%
        }

    .bottom-images {
        margin-top: -8%;
        justify-content: flex-start;
        position: relative;
        top: 0;
        right: 1%;
        padding: 4%
    }
}

.design .dropdown-menu {
    left: 150% !important
}

#banner-container {
    position: relative;
    background-repeat: no-repeat
}

#apec-background-video, #background-video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    transform: translate(-50%,-50%);
    z-index: 1;
    object-fit: cover
}

#dynamic-overlay-and-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2
}

#overlay-shape.collapsed {
    clip-path: polygon(0 0,60% 0,45% 100%,0 100%);
    background-color: #3754799c;
    width: 100%;
    left: 0
}

#banner-text-content {
    box-sizing: border-box;
    transform: translateX(0);
    text-shadow: 2px 2px 6px rgba(0,0,0,.5);
    position: absolute;
    top: 55%;
    left: 0;
    transform: translate(10%,-50%);
    z-index: 2;
    color: #fff;
    text-align: left;
    padding: 20px;
    box-sizing: border-box;
    max-width: 49%;
    transition: transform 1.5s cubic-bezier(.77, 0, .175, 1),text-align 1.5s ease-in-out,max-width 1.5s ease-in-out
}

.width-50 #banner-text-content.shifted {
    max-width: 50%
}

.headline-with-icon {
    align-items: center;
    gap: 10px
}

    .headline-with-icon .category-icon {
        width: 90px;
        height: auto
    }

#main-headline {
    font-size: 3.3em;
    margin-bottom: 10px;
    font-weight: 700;
    letter-spacing: 2px
}

#sub-headline {
    font-size: 1.5em;
    margin-top: 0;
    font-weight: 400
}

@media (max-width:768px) {
    .value-proposition-section .container {
        min-height: auto;
        padding-bottom: 40px;
        padding-top: 20px;
    }

    .main-graphic {
        margin-bottom: 20px
    }

    .apec-logo {
        width: 180px
    }

    .value-item, .value-items-grid {
        position: static;
        width: auto;
        transform: none
    }

    .value-items-grid {
        grid-template-columns: repeat(2,1fr);
        gap: 00px 20px !important;
        height: auto;
        max-width: 100%;
        max-height: none;
        padding: 0 20px !important;
        margin-top: 40px;
        display: grid;
    }

        /* Advanced Layout: If exactly 5 items exist, switch to a 3-column, 3-row layout (2-1-2 pattern) */
        .value-items-grid:has(> :nth-child(5):last-child) {
            grid-template-rows: auto auto auto; /* 3 rows: R1 (2 items), R2 (1 item), R3 (2 items) */
            grid-template-columns: repeat(3, 1fr); /* 3 columns to enable centering of the single item */
        }

            /* R1: Item 1 (Left Column) */
            .value-items-grid:has(> :nth-child(5):last-child) > :nth-child(1) {
                grid-row: 1;
                grid-column: 1;
            }
            /* R1: Item 2 (Right Column) */
            .value-items-grid:has(> :nth-child(5):last-child) > :nth-child(2) {
                grid-row: 1;
                grid-column: 3;
            }
            /* R2: Item 3 (Center Column) */
            .value-items-grid:has(> :nth-child(5):last-child) > :nth-child(3) {
                grid-row: 3;
                grid-column: 3;
            }
            /* R3: Item 4 (Left Column) */
            .value-items-grid:has(> :nth-child(5):last-child) > :nth-child(4) {
                grid-row: 3;
                grid-column: 1;
            }
            /* R3: Item 5 (Right Column) */
            .value-items-grid:has(> :nth-child(5):last-child) > :nth-child(5) {
                grid-row: 2;
                grid-column: 2;
            }


    .value-icon {
        width: 70px;
        height: 70px;
        padding: 10px
    }

    .value-text {
        font-size: 0.95em;
        width: 200%;
    }

        .value-text br:first-child {
            display: none
        }

    .connect-with-us-section {
        flex-direction: column;
        text-align: center
    }

    .image-container {
        width: 100%;
        margin-bottom: 20px
    }

    .content-container {
        padding: 0 10px 30px;
        text-align: center
    }

    .buttons-container {
        flex-direction: column;
        align-items: center
    }

    .button {
        width: 80%;
        margin-bottom: 10px
    }

    #main-headline {
        font-size: 2.5em
    }

    #sub-headline {
        font-size: 1.2em
    }

    #banner-text-content.shifted {
        max-width: 80%;
        transform: translateX(calc(-50vw + 10%))
    }

    #overlay-shape.collapsed {
        clip-path: polygon(0 0,80% 0,65% 100%,0 100%)
    }
}

#sub-section-title {
    font-size: 1.2em;
    font-weight: 600;
    color: #fff;
    margin-bottom: 10px;
    display: inline-block;
    position: relative
}

    #sub-section-title::after {
        content: '';
        display: block;
        width: 50%;
        height: 3px;
        background-color: #fff;
        margin-top: 5px;
        border-radius: 2px
    }

#overlay-shape {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #37547b;
    opacity: .9;
    z-index: 1;
    clip-path: polygon(0 0,100% 0,100% 100%,0 100%);
    transition: clip-path 1.5s cubic-bezier(.77, 0, .175, 1),background-color 1.5s ease-in-out,opacity 1.5s ease-in-out
}

    #overlay-shape.collapsed {
        clip-path: polygon(0 0,65% 0,50% 100%,0 100%);
        background-color: #3754799c;
        opacity: 1
    }

#banner-text-content.shifted {
    text-align: left;
    left: 7%;
    transform: translate(0,-50%);
    max-width: 40%;
    top: 55%
}

.page-content-wrapper {
    padding: 0 3.5cm 3.5cm;
    max-width: 100%;
    box-sizing: border-box;
    position: relative;
    z-index: 5;
    background-color: transparent
}

.breadcrumbs {
    font-size: .85em;
    color: #666;
    padding-top: 1.75cm;
    padding-bottom: 1.75cm;
    font-weight: 500
}

    .breadcrumbs span {
        color: #37547b
    }

        .breadcrumbs span:last-child {
            color: #06c3ff
        }

.canva-products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(220px,1fr));
    gap: 3.5cm
}

.canva-product {
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow: hidden;
    transition: transform .3s;
    cursor: pointer
}

.canva-product-img {
    width: 100%;
    aspect-ratio: 1/0.8;
    background-color: #f5f5f5;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center
}

    .canva-product-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform .3s
    }

.canva-product-info {
    width: 100%;
    text-align: center;
    padding: 12px 10px;
    background: linear-gradient(to right,#27aae1,#003f73);
    color: #fff;
    height: 80px
}

.canva-product-title {
    font-size: 1em;
    font-weight: 700;
    margin: 5px 0
}

.canva-product-description {
    font-size: .85em;
    font-weight: 400;
    margin: 0;
    line-height: 1.3
}

#expert-solutions-modal {
    box-shadow: 0 5px 20px rgba(0,0,0,.25);
    box-sizing: border-box
}

    #expert-solutions-modal .modal-button:hover {
        background-color: #e6e6e6;
        color: #2a416a;
        box-shadow: 0 4px 12px rgba(0,0,0,.3)
    }

@media (max-width:992px) {
    .page-content-wrapper {
        margin: 3cm;
        max-width: calc(100vw - (3cm * 2))
    }

    .products-grid {
        grid-template-columns: repeat(auto-fit,minmax(250px,1fr));
        gap: 20px
    }

    .product-image-container {
        height: 180px
    }

    #expert-solutions-modal {
        width: 280px;
        bottom: 2.5cm;
        right: 2.5cm
    }
}

@media (max-width:768px) {
    .page-content-wrapper {
        margin: 2cm;
        max-width: calc(100vw - (2cm * 2))
    }

    .products-grid {
        grid-template-columns: 1fr
    }

    #expert-solutions-modal {
        position: static;
        margin: 30px auto;
        width: 90%;
        max-width: 450px;
        transform: none;
        opacity: 1;
        visibility: visible;
        box-shadow: none;
        border: 1px solid #e0e0e0
    }
}

.canva-products-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 1cm;
    margin: 0;
    background-color: #fff;
    background-image: radial-gradient(#e0e0e0 .5px,transparent .5px);
    background-size: 20px 20px
}

#expert-solutions-modal {
    position: fixed;
    bottom: 4.7cm;
    right: 0;
    width: 350px;
    background-color: #003780;
    color: #fff;
    border-radius: 10px;
    box-shadow: 0 5px 20px rgba(0,0,0,.55);
    padding: 25px;
    box-sizing: border-box;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: opacity .5s ease-out,visibility .5s ease-out,transform .5s ease-out
}

    #expert-solutions-modal.visible {
        opacity: 1;
        visibility: visible;
        transform: translateY(0)
    }

    #expert-solutions-modal h3 {
        font-size: 1.3em;
        font-weight: 700;
        margin-top: 0;
        margin-bottom: 18px;
        line-height: 1.3;
        color: #fff
    }

    #expert-solutions-modal p {
        font-size: .95em;
        margin-bottom: 12px;
        line-height: 1.5;
        color: #fff
    }

        #expert-solutions-modal p:last-of-type {
            margin-bottom: 25px
        }

    #expert-solutions-modal .modal-button {
        background-color: #fff;
        background: linear-gradient(to right,#bbe9e4,#9ac0fb);
        color: #003780;
        border: none;
        padding: 9px 15px;
        border-radius: 40px;
        font-size: 1em;
        font-weight: 600;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        position: relative;
        transition: background .3s ease-out,box-shadow .3s ease-out;
        box-shadow: 0 2px 8px rgba(0,0,0,.2)
    }

        #expert-solutions-modal .modal-button span:first-child {
            transition: transform .3s ease-out;
            padding-right: 8px
        }

        #expert-solutions-modal .modal-button .icon-angle {
            display: block;
            width: 8px;
            height: 8px;
            border-top: 2px solid #003780;
            border-right: 2px solid #003780;
            transform: translateX(0) rotate(45deg);
            transition: transform .3s ease-out
        }

        #expert-solutions-modal .modal-button:hover span:first-child {
            transform: translateX(-5px)
        }

        #expert-solutions-modal .modal-button:hover .icon-angle {
            transform: translateX(5px) rotate(45deg)
        }

.close-modal-button {
    position: absolute;
    top: 10px;
    right: 15px;
    background: 0 0;
    border: none;
    color: #fff;
    font-size: 1.8em;
    font-weight: 700;
    cursor: pointer;
    line-height: 1;
    padding: 5px;
    transition: color .2s ease-in-out
}

    .close-modal-button:hover {
        color: #e0e0e0
    }

#apec-video-section-container {
    position: relative;
    width: 100vw;
    height: 80vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-shadow: 0 2px 4px rgba(0,0,0,.5);
    margin-bottom: 3.5cm
}

.apec-video-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #003780;
    opacity: .3;
    z-index: 2
}

.apec-video-content {
    position: relative;
    z-index: 3;
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: left;
    width: 100%;
    max-width: 1400px;
    padding: 0 3.5cm;
    box-sizing: border-box
}

.apec-text-left {
    flex: 1;
    max-width: 50%
}

    .apec-text-left h2 {
        font-size: 3.5em;
        font-weight: 800;
        line-height: 1.1;
        margin: 0 0 20px;
        color: #fff
    }

    .apec-text-left p {
        font-size: 1.2em;
        font-weight: 400;
        line-height: 1.5;
        margin: 0;
        color: #fff
    }

.apec-text-right {
    flex: 1;
    max-width: 50%;
    padding-left: 50px
}

    .apec-text-right ul {
        list-style-type: none;
        padding: 0;
        margin: 0
    }

.cta-section h2, .cta-section p, .cta-section-alt h2 {
    margin-left: auto;
    margin-right: auto
}

.apec-text-right li {
    font-size: 1.1em;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 15px;
    position: relative;
    padding-left: 30px
}

    .apec-text-right li::before {
        content: '';
        position: absolute;
        left: 0;
        top: 5px;
        width: 16px;
        height: 8px;
        border-left: 2px solid #60b0f4;
        border-bottom: 2px solid #60b0f4;
        transform: rotate(-45deg)
    }

@media (max-width:992px) {
    .canva-products-grid {
        grid-template-columns: repeat(2,1fr);
        gap: 2.5cm;
        margin: 2.5cm
    }

    .page-content-wrapper {
        margin: 3cm;
        max-width: calc(100vw - (3cm * 2))
    }

    .products-grid {
        grid-template-columns: repeat(auto-fit,minmax(250px,1fr));
        gap: 20px
    }

    .product-image-container {
        height: 180px
    }

    #expert-solutions-modal {
        width: 280px;
        /* bottom: 2.5cm; */
        /* right: 2.5cm; */
    }

    #apec-video-section-container {
        height: 50vh
    }

    .apec-video-content {
        flex-direction: column;
        text-align: center;
        padding: 2cm
    }

    .apec-text-left {
        max-width: 100%;
        margin-bottom: 30px
    }

    .apec-text-right {
        max-width: 100%;
        padding-left: 0
    }

        .apec-text-right li {
            text-align: left
        }
}

@media (max-width:768px) {
    .page-content-wrapper {
        margin: 2cm;
        max-width: calc(100vw - (2cm * 2))
    }

    .products-grid {
        grid-template-columns: 1fr
    }

    .product-image-container {
        height: 280px
    }

    #expert-solutions-modal {
        position: static;
        margin: 30px auto;
        width: 90%;
        max-width: 450px;
        transform: none;
        opacity: 1;
        visibility: visible;
        box-shadow: none;
        border: 1px solid #e0e0e0
    }

    .close-modal-button {
        display: none
    }

    #apec-video-section-container {
        height: auto;
        min-height: 400px;
        padding: 40px 0;
        margin-top: -10px
    }

    .apec-video-content {
        padding: 1.5cm
    }

    .apec-text-left h2 {
        font-size: 2.2em
    }

    .apec-text-left p, .apec-text-right li {
        font-size: 1em
    }
}

@media (max-width:576px) {
    .content-wrapper, .video-hero {
        text-align: center
    }

    .video-hero {
        padding-left: 15px;
        justify-content: center
    }

    .btn-custom-hero, .slide-text, .slide-title {
        margin-left: 0;
        margin-right: 0
    }

    .slide-title {
        font-size: 2.4em;
        line-height: 35px;
    }

    .slide-text {
        font-size: .8em;
        text-align: center;
        line-height: 20px;
        margin: auto;
        margin-top: 5px;
        margin-bottom: 18px;
    }

    .btn-custom-hero {
        padding: 8px 20px;
        font-size: .9em
    }

    .mouse {
        width: 16px;
        height: 25px;
    }

    .arrow-down {
        border-left-width: 6px;
        border-right-width: 6px;
        border-top-width: 10px
    }

    .canva-products-grid {
        grid-template-columns: 1fr;
        gap: 2cm;
        margin: 2cm
    }

    .page-content-wrapper {
        margin: 1.5cm;
        max-width: calc(100vw - (1.5cm * 2))
    }

    #main-headline {
        font-size: 2.5em
    }

    #sub-headline {
        font-size: 1.2em
    }

    .breadcrumbs {
        font-size: .75em;
        margin-bottom: 20px
    }

    #expert-solutions-modal {
        padding: 15px
    }

        #expert-solutions-modal h3 {
            font-size: 1.1em
        }

        #expert-solutions-modal p {
            font-size: .85em
        }

        #expert-solutions-modal .modal-button {
            padding: 10px 20px;
            font-size: .9em
        }
}

.app-container {
    width: 100%;
    max-width: 72rem;
    margin: 0 3.5cm 3.5cm
}

.page-title {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 2.5rem;
    text-align: left;
    color: #1e3a8a
}

.slider-container-x {
    position: relative;
    background-color: #fff
}

.slider-track-x {
    display: flex;
    gap: 1.5rem;
    overflow-x: scroll;
    background-color: #fff;
    padding: 1rem .5rem;
    -ms-overflow-style: none;
    scrollbar-width: none
}

    .slider-track-x::-webkit-scrollbar {
        display: none
    }

.proj-card-x {
    min-width: 250px;
    height: 350px;
    cursor: pointer;
    position: relative;
    border-radius: 1.5rem;
    overflow: hidden;
    transition-property: transform;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(0.4,0,0.2,1);
    left: -1%
}

.overlay-wrap-x {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    background: linear-gradient(to top,#0f2540c9 10%,#0f2540a6 20%,transparent 50%)
}

.overlay-bottom-x {
    position: absolute;
    bottom: -7%;
    width: 100%;
    padding: .8rem .5rem;
    color: #fff;
    transition: opacity .3s ease-in-out
}

    .overlay-bottom-x p {
        font-size: 15px;
        font-weight: 700;
        text-shadow: 1px 1px 3px rgba(0,0,0,.5);
        margin-top: -4rem
    }

.overlay-full-x {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 0;
    opacity: 0;
    background-color: rgba(30,58,138,.75);
    transition: .3s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem
}

.proj-card-x:hover .overlay-full-x {
    height: 100%;
    opacity: 1
}

.overlay-content-x {
    text-align: center;
    color: #fff;
    padding: 1rem
}

    .overlay-content-x h2 {
        font-size: 1.25rem !important;
        font-weight: 700 !important;
        color: #fff !important;
    }

    .overlay-content-x p {
        font-size: .875rem
    }

.card-overlay-body {
    font-weight: 300;
    line-height: 1.625
}

.slider-bottom-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1.5rem;
    width: 100%
}

.case_study_area .slider-arrows {
    display: flex;
    gap: .5rem;
    justify-content: flex-start;
}

.slider-arrow-next-x, .slider-arrow-prev-x {
    background-color: #fff;
    padding: .5rem;
    border-radius: 9999px;
    color: #1e3a8a;
    transition: background-color 150ms ease-in-out;
    border: none
}

.cta-btn-gradient, .cta-button {
    transition: transform 150ms ease-in-out;
    text-decoration: none
}

.slider-arrow-next-x:hover, .slider-arrow-prev-x:hover {
    background-color: #e5e7eb
}

.slider-arrow-next-x i, .slider-arrow-prev-x i {
    font-size: 1.5rem
}

.view-projects-btn-x {
    margin-right: 2%
}

.cta-button {
    background-image: linear-gradient(to right,#4c51bf,#667eea);
    color: #fff;
    padding: .75rem 1.5rem;
    border-radius: .5rem;
    font-weight: 700
}

.cta-section, .cta-section h2 {
    color: #1e3a8a;
    text-align: center
}

.cta-section {
    background-image: linear-gradient(to right,#e0f2fe,#c4e4fc);
    padding: 4rem 2rem;
    margin-top: 4rem
}

    .cta-section h2 {
        font-size: 2.25rem;
        font-weight: 700;
        margin-bottom: 1rem;
        max-width: 42rem;
        line-height: 1.25
    }

    .cta-section p {
        font-size: 1rem;
        font-weight: 400;
        line-height: 1.5;
        color: #4b5563;
        max-width: 55rem;
        margin-bottom: 2rem
    }

.cta-btn-gradient {
    background-image: linear-gradient(to right,#38bdf8,#22d3ee);
    color: #fff;
    padding: .75rem 2.5rem;
    border-radius: 9999px;
    font-weight: 600;
    box-shadow: 0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)
}

.mega-menu-content a {
    text-decoration: none;
    color: #fff
}

.cta-section-alt {
    background-color: #fff;
    color: #1e3a8a;
    text-align: center;
    padding: 4rem 2rem;
    border-radius: 1.5rem;
    margin-top: 4rem;
    box-shadow: 0 12px 20px rgba(0,0,0,.05)
}

    .cta-section-alt h2 {
        font-size: 2.25rem;
        font-weight: 700;
        margin-bottom: 1rem;
        color: #1e3a8a;
        text-align: center;
        max-width: 42rem;
        line-height: 1.25
    }

    .cta-section-alt p {
        font-size: 1rem;
        font-weight: 400;
        line-height: 1.5;
        color: #4b5563;
        max-width: 50rem;
        margin: 0 auto 2rem
    }

.cta-buttons-group {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: center
}

.geogrid-overview-section {
    border-radius: 12px
}

.geogrid-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
    position: relative
}

.geogrid-heading {
    color: var(--New-color);
    font-size: 2.5em;
    font-weight: 700;
    margin-bottom: 10px;
    letter-spacing: 1px
}

.geogrid-text {
    color: #1f2937;
    font-size: 1.3em;
    line-height: 1.8;
    text-align: justify
}

.geogrid-button-container {
    display: flex;
    justify-content: flex-end;
    width: 109%
}

.text-apec-blue1 {
    color: var(--New-color)
}

.hover-scale:hover {
    transform: scale(1.05);
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15);
    transition: .3s ease-in-out
}

.icon-box {
    width: 64px;
    height: 64px;
    transition: background-color .3s
}

    .icon-box svg {
        width: 32px;
        height: 32px
    }

.slider-track {
    display: flex;
    transition: transform .5s ease-in-out;
    will-change: transform
}

    .slider-track img {
        flex-shrink: 0;
        width: 100%;
        height: 450px;
        user-select: none
    }

.slider-nav {
    position: absolute;
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: .5rem
}

.video-bg, .video-thumbnail {
    left: 0;
    top: 0;
    object-fit: cover
}

.slider-arrow {
    background-color: rgba(255,255,255,.7);
    border: 1px solid rgba(0,0,0,.1);
    border-radius: 9999px;
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color .3s,transform .3s
}

    .slider-arrow:hover {
        background-color: var(--apec-blue);
        color: #fff;
        transform: scale(1.1)
    }

:root {
    --gradient-top-color: #e9f7fc;
    --gradient-bottom-color: #c2d6ed;
    --title-color: #333333;
    --description-color: #555555;
    --primary-blue: #1976D2;
    --icon-circle-bg-color: #E3F2FD;
    --apec-blue: #004e9a;
    --apec-dark-blue: #003a70;
    --apec-light-blue: #e0f2f7;
    --off-white: #f3f4f6;
    --transition-speed: 0.9s
}

.geogrids-sections section {
    padding: 100px 20px 80px;
    margin-top: -80px;
    position: relative;
    z-index: 1;
    opacity: 0;
    transform: scale(.96);
    clip-path: ellipse(100% 100% at 50% 0%);
    border-top-left-radius: 100% 80px;
    border-top-right-radius: 100% 80px;
    transition: all var(--transition-speed) ease;
    background-clip: padding-box;
    isolation: isolate
}

    .geogrids-sections section.visible {
        opacity: 1;
        transform: scale(1);
        clip-path: none;
        border-top-left-radius: 0;
        border-top-right-radius: 0
    }



.geogrids-sections .h3-edit, .geogrids-sections h2 {
    font-size: 2.5rem;
    margin-bottom: .7cm;
    text-align: center;
    color: var(--apec-dark-blue);
    font-weight: 700;
}

.geogrids-sections #functions {
    background: #fff;
    color: #333;
    padding: 0 3.5cm 3.5cm;
    margin-bottom: 3.5cm;
    margin-top: 4.5cm
}

    .geogrids-sections #functions .h3-edit, .geogrids-sections #functions h2 {
        color: var(--apec-dark-blue);
        text-align: left
    }

.geogrids-sections #features {
    background: #fff;
    color: #333;
    padding: 3.5cm;
    height: 150vh
}

.geogrids-sections .features-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px
}

.geogrids-sections .feature-box {
    background: #fff;
    border: 2px solid var(--apec-light-blue);
    border-radius: 1.5rem;
    box-shadow: 0 10px 30px rgba(0,78,154,.1);
    padding: 1rem .5rem;
    width: 200px;
    text-align: center;
    transition: .4s
}

    .geogrids-sections .feature-box:hover {
        transform: translateY(-10px) scale(1.02);
        box-shadow: 0 15px 40px rgba(0,78,154,.2)
    }

    .geogrids-sections .feature-box i {
        font-size: 3rem;
        color: var(--apec-blue);
        margin-bottom: 1rem;
        transition: color .3s
    }

    .geogrids-sections .feature-box:hover i {
        color: var(--apec-dark-blue)
    }

    .geogrids-sections .feature-box h3 {
        font-weight: 700;
        color: var(--apec-dark-blue);
        font-size: 1.5rem
    }

.geogrids-sections #applications {
    position: relative;
    background: 0 0;
    color: #fff;
    padding: 3.5cm 1.5cm 4cm;
    text-align: center;
    margin-bottom: 1.5cm;
    overflow: hidden;
    z-index: 1
}

.video-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: .9;
    pointer-events: none
}

.card, .image-scroll-item {
    height: auto
}

.applications-content {
    position: relative;
    z-index: 2
}

.geogrids-sections .applications-list {
    columns: 2;
    font-size: 1.2rem;
    columns: 2;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .5rem 4rem;
    width: 80%;
    max-width: 1000px;
    margin: 0 auto 0 13%;
    padding: 0;
    list-style: circle
}

    .geogrids-sections .applications-list li {
        margin: 10px 0;
        position: relative;
        flex: 0 0 calc(50% - 2rem);
        font-size: 1.3rem;
        font-weight: 800;
        text-align: left
    }

.geogrids-sections #technical-data {
    background: var(--apec-light-blue);
    color: #333;
    padding: 4.5cm 3.5cm;
    margin-bottom: 1.8cm;
    margin-top: 4%
}

.geogrids-sections table {
    width: 100%;
    max-width: 1200px;
    margin: auto;
    border-collapse: collapse;
    box-shadow: 0 10px 30px rgba(0,0,0,.1);
    border-radius: 1.5rem;
    overflow: hidden;
    background: #fff
}

.comparison-table th, .geogrids-sections .faq-question:hover, .geogrids-sections th {
    background: var(--apec-dark-blue)
}

.geogrids-sections td, .geogrids-sections th {
    padding: 18px;
    text-align: center;
    border-bottom: 1px solid #ddd
}

.geogrids-sections th {
    color: #fff;
    font-weight: 700
}

.geogrids-sections tr:nth-child(2n) {
    background-color: var(--off-white)
}

.geogrids-sections tr:hover {
    background-color: var(--apec-light-blue);
    transition: background-color .3s
}

.geogrids-sections .download-buttons {
    margin-top: 30px;
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap
}

.geogrids-sections .section-sticky-gallery {
    gap: 40px;
    background: var(--apec-blue);
    color: #fff;
    padding: 3.5cm 5%;
    align-items: flex-start
}

.geogrids-sections .sticky-text-box {
    flex: 1 1 40%;
    position: sticky;
    align-self: flex-start
}

    .geogrids-sections .sticky-text-box h2 {
        color: #fff;
        font-size: 2.5rem;
        font-weight: 900;
        margin-bottom: 20px
    }

    .geogrids-sections .sticky-text-box p {
        font-size: 1.2rem;
        line-height: 1.7
    }

.geogrids-sections .vertical-image-scroll {
    flex: 1 1 50%;
    display: flex;
    flex-direction: column
}

.geogrids-sections .image-scroll-item {
    align-items: center;
    justify-content: center
}

    .geogrids-sections .image-scroll-item img {
        width: 100%;
        max-height: 100%;
        object-fit: contain;
        border-radius: 12px;
        box-shadow: 0 10px 25px rgba(0,0,0,.2)
    }

.geogrids-sections .image-hidden {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease, transform 0.8s ease;
    text-align: center;
}

.geogrids-sections .image-visible {
    opacity: 1; /* ← يظهر */
    transform: translateY(0); /* ← يرجع لمكانه */
}


.canva-product1:hover, .card:hover, .perf-stat-item:hover, .stat-item:hover {
    transform: translateY(-5px)
}

.geogrids-sections .st-how {
    font-size: 20px;
    font-weight: 700
}

#comparison-saltstop {
    background: var(--apec-blue);
    color: #fff;
    background: #fff;
    color: var(--apec-blue);
    padding: 3.7cm 0;
    text-align: center
}

    #comparison-saltstop h2 {
        color: #fff;
        color: var(--apec-blue);
        font-size: 2.8rem;
        font-weight: 900;
        margin-bottom: 10px
    }

    #comparison-saltstop .subheading {
        color: var(--off-white);
        font-size: 1.2rem;
        margin-bottom: 40px;
        color: var(--apec-blue)
    }

.comparison-table-container {
    margin: auto;
    max-width: 900px;
    width: 100%;
    overflow-x: auto
}

.comparison-table th {
    color: #fff;
    font-weight: 700;
    padding: 16px;
    font-size: 1.1rem;
    text-align: center
}

#comparison-saltstop h2 .highlight {
    color: var(--apec-yellow)
}

.comparison-content {
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 0;
    padding: 0 3.5cm
}

.comparison-image img {
    max-width: 900px;
    width: 100%;
    margin-bottom: 2%;
    border-radius: 1rem;
    box-shadow: 0 10px 25px rgba(0,0,0,.25)
}

.comparison-table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    color: #333;
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,.15)
}

    .comparison-table td {
        padding: 16px 20px;
        border-bottom: 1px solid #eee;
        font-size: 1rem;
        text-align: left
    }

.perf-text-content h2, h2 {
    font-size: 2.5em;
    margin-bottom: 40px
}

.comparison-table tr:nth-child(2n) {
    background: var(--off-white)
}

.comparison-table tr:hover {
    background-color: var(--apec-light-blue);
    color: #000;
    transition: .3s
}

.comparison-table i {
    margin-right: 8px;
    color: var(--apec-blue)
}

.breadcrumbs a, .breadcrumbs a span {
    color: #37547b !important
}

.sticky-text-box, .vertical-image-scroll {
    flex: 1 1 100%;
    position: static
}

.vertical-image-scroll {
    gap: 40px
}

.geogrids-sections #faq-section {
    padding: 3.5cm 20px;
    text-align: center
}

    .geogrids-sections #faq-section h2 {
        font-size: 2.5rem;
        font-weight: 900;
        color: var(--apec-dark-blue);
        margin-bottom: 50px
    }

.geogrids-sections .faq-item {
    background: #fff;
    border-radius: 1.2rem;
    margin: 20px auto;
    max-width: 900px;
    box-shadow: 0 10px 25px rgba(0,0,0,.1);
    overflow: hidden;
    transition: .3s
}

.geogrids-sections .faq-question {
    width: 100%;
    text-align: left;
    background: var(--apec-blue);
    color: #fff;
    font-weight: 700;
    padding: 20px 30px;
    border: none;
    outline: 0;
    font-size: 1.1rem;
    cursor: pointer;
    transition: background .3s
}

.geogrids-sections .faq-answer {
    display: none;
    padding: 20px 30px;
    text-align: left;
    font-size: 1rem;
    line-height: 1.6;
    color: #333;
    background: #f9f9f9
}

    .geogrids-sections .faq-answer.show {
        display: block;
        animation: .3s fadeIn
    }

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-10px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.card {
    transition: .4s
}

.icon-wrapper {
    width: 64px;
    height: 64px;
    margin: 0 auto 1rem;
    color: #1f3661
}

.fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition: .6s ease-out
}

.performance-section {
    background-image: radial-gradient(#d3e0f0 1px,transparent 1px);
    background-size: 20px 20px;
    padding: 80px 0;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 80vh;
    box-sizing: border-box
}

.performance-content {
    display: flex;
    max-width: 1200px;
    width: 90%;
    background-color: #fff;
    box-shadow: 0 4px 20px rgba(0,0,0,.05);
    border-radius: 10px;
    overflow: hidden;
    position: relative
}

.video-container {
    flex: 1;
    min-width: 400px;
    position: relative;
    padding-bottom: 30%;
    height: 0;
    overflow: hidden;
    background-color: #000;
    border-radius: 10px 0 0 10px
}

.video-thumbnail {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 10px 0 0 10px
}

.play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 80px;
    height: 80px;
    background-color: rgba(0,0,0,.6);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    z-index: 2
}

    .play-button::before {
        content: '';
        display: block;
        width: 0;
        height: 0;
        border-top: 18px solid transparent;
        border-bottom: 18px solid transparent;
        border-left: 28px solid #fff;
        margin-left: 8px
    }

.separator-line {
    width: 4px;
    height: 100%;
    position: relative;
    background-color: #007bff;
    z-index: 1;
    box-shadow: 0 0 10px rgba(0,123,255,.3)
}

.text-content {
    flex: 1;
    padding: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-radius: 0 10px 10px 0
}

.proven-performance {
    color: #007bff;
    font-size: 1.1em;
    font-weight: 600;
    margin-bottom: 10px
}

h2 {
    margin-top: 0;
    font-weight: 700
}

.perf-stats-grid, .stats-grid {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 30px
}

.perf-stat-item, .stat-item {
    text-align: left;
    transition: transform .3s,color .3s
}

    .stat-item .number {
        font-size: 3.5em;
        font-weight: 700;
        color: #007bff;
        display: inline-block;
        line-height: 1;
        margin-bottom: 5px
    }

    .stat-item .unit {
        font-size: .6em;
        font-weight: 700;
        color: #007bff;
        vertical-align: super;
        margin-left: 5px
    }

    .stat-item .description {
        font-size: 1em;
        color: #555;
        line-height: 1.4;
        margin-top: 0;
        margin-bottom: 0
    }

@media (max-width:900px) {
    .performance-content {
        flex-direction: column;
        border-radius: 10px
    }

    .video-container, .video-thumbnail {
        border-radius: 10px 10px 0 0
    }

    .video-container {
        min-width: unset;
        width: 100%;
        padding-bottom: 56.25%
    }

    .separator-line {
        width: 100%;
        height: 4px;
        box-shadow: 0 0 10px rgba(0,123,255,.3)
    }

    .text-content {
        padding: 30px;
        border-radius: 0 0 10px 10px
    }

    h2 {
        font-size: 2em;
        margin-bottom: 30px
    }

    .stats-grid {
        grid-template-columns: 1fr;
        gap: 20px
    }

    .stat-item .number {
        font-size: 3em
    }
}

@media (max-width:500px) {
    .text-content {
        padding: 20px
    }

    h2 {
        font-size: 1.8em
    }

    .stat-item .number {
        font-size: 2.5em
    }
}

@media (min-width:901px) {
    .separator-line {
        width: 4px;
        height: auto
    }
}

.breadcrumbs a {
    text-decoration: none;
    cursor: pointer
}

    .breadcrumbs a:hover span {
        color: #06c3ff !important
    }

.canva-products-grid1 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 30px;
  margin-top: 30px;
  justify-items: center;
}

.canva-products-grid1 > * {
  width: 100%;       
  max-width: 500px;  
}

.canva-product1 {
    background-color: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0,0,0,.1);
    transition: transform .3s,box-shadow .3s;
    text-decoration: none;
    color: inherit
}

    .canva-product1:hover {
        box-shadow: 0 8px 25px rgba(0,0,0,.15)
    }

.canva-product-img1 {
    position: relative;
    width: 100%;
    padding-bottom: 75%;
    overflow: hidden;
    background-color: #eee;
    border-radius: 10px;
    aspect-ratio: 1
}

    .canva-product-img1 img, .canva-product-img1::before, .canva-product-info1, .perf-video-container video {
        position: absolute;
        left: 0;
        width: 100%
    }

    .canva-product-img1 img {
        top: 0;
        height: 100%;
        object-fit: cover;
        border-radius: 10px;
        z-index: 0
    }

    .canva-product-img1::before {
        content: '';
        top: 0;
        height: 100%;
        background: linear-gradient(to top,#0f2540c9 10%,#0f2540a6 20%,transparent 50%);
        z-index: 1;
        border-radius: 10px
    }

.canva-product-info1 {
    bottom: 0;
    padding: 15px 20px;
    box-sizing: border-box;
    z-index: 2;
    text-align: left;
    color: #fff
}

.canva-product-title1 {
    font-size: 1.2em;
    margin-top: 0;
    margin-bottom: 5px;
    font-weight: 700;
    color: #fff
}

.canva-product-description1 {
    font-size: .9em;
    line-height: 1.4;
    margin: 0;
    color: #fff
}

@media (max-width:768px) {
    .geogrids-sections h2 {
        font-size: 1.7rem !important;
        margin-bottom: 1.5cm !important
    }

    .applications-list-box h2 {
        margin-left: 0 !important;
    }

    .geogrids-sections .applications-list {
        columns: 1
    }

    .geogrids-sections table {
        font-size: .9rem
    }

    .geogrids-sections .download-buttons {
        flex-direction: column;
        align-items: center
    }

    .canva-products-grid1 {
        grid-template-columns: repeat(auto-fit,minmax(250px,1fr));
        gap: 20px
    }

    h2 {
        font-size: 2em;
        margin-bottom: 30px
    }

    .page-content-wrapper {
        margin: 30px auto;
        padding: 0 15px
    }
}

@media (max-width:480px) {
    section.case_study_area .section_title h2 {
        font-size: 23px !important;
        line-height: 1.3
    }

    .case_content .case_title a {
        font-size: 16px
    }

    .section-title {
        font-size: 1.3em
    }

    .bottom-images img {
        width: 80%;
        max-width: 250px;
        margin-bottom: 10px
    }

    .value-proposition-section .section-title {
        font-size: 2em;
        line-height: 45px;
        text-align: center;
    }

    .value-proposition-section .section-description {
        font-size: 1em
    }

    /* .value-items-grid {
        grid-template-columns: 1fr
    } */

    .canva-products-grid1 {
        grid-template-columns: 1fr;
        gap: 15px
    }

    h2 {
        font-size: 1.8em;
        margin-bottom: 25px
    }

    .canva-product-title1 {
        font-size: 1.1em
    }

    .canva-product-description1 {
        font-size: .85em
    }
}

.d-footer {
    display: flex !important;
}

@media (max-width: 770px) {
    .d-footer {
        display: block !important;
    }

    .header-area-content {
        display: none !important;
    }

    .value-proposition-section {
        padding-top: 70px;
    }
}

@media (min-width: 1000px) and (max-width: 1190px) {
    .header-area-content #main-nav-content {
        margin-right: 0%;
        gap: 0;
    }

        .header-area-content #main-nav-content .navbar-nav {
            margin-right: 5%;
        }

    .social-icon-wrapper-pages {
        top: 5%;
    }

    body.scrolled .social-icon-wrapper-pages {
        top: 4%;
    }

    .pages-nav .header-area-content #main-nav-content .nav-link {
        padding: 8px 8px;
    }

    .lab-details {
        margin-left: 2% !important;
    }

    .lab-section {
        margin-bottom: 3% !important;
    }
}

.app .product-card h6 {
    padding: 10px 3px;
    height: 115px;
    text-align: center;
    align-content: center;
}

.mega-menu-content {
    overflow-y: auto;
    overflow-x: hidden;
    max-height: 90vh;
}
/* شكل الـ scrollbar */
.mega-menu-section .dropdown-menu::-webkit-scrollbar {
    width: 6px;
}

.mega-menu-section .dropdown-menu::-webkit-scrollbar-track {
    background: #1d435e;
}

.mega-menu-section .dropdown-menu::-webkit-scrollbar-thumb {
    background: #0093dd;
    border-radius: 4px;
}

/* Mobile Menu Styling */
.apec-mobile-menu {
    background: var(--Blue-color);
    position: fixed;
    top: 95px;
    left: 0;
    width: 100%;
    z-index: 9999;
    border: none;
    box-shadow: none;
    max-height: calc(100vh - 100px); /* Adjust height relative to viewport minus offset */
    overflow-y: auto; /* Enable vertical scrolling when content overflows */
}

    .apec-mobile-menu .mobile-nav {
        display: none;
    }

    .apec-mobile-menu.show .mobile-nav {
        display: block !important;
    }

    .apec-mobile-menu .mobile-menu-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px 15px;
        background: #003366;
        color: #fff;
    }

    .apec-mobile-menu .mobile-logo img {
        max-height: 40px;
    }

    .apec-mobile-menu .mobile-menu-toggle {
        font-size: 24px;
        cursor: pointer;
    }

.mobile-nav {
    list-style: none;
    padding: 0;
    margin: 0;
    max-height: calc(100vh - 100px);
    overflow-y: auto;
}

    .mobile-nav li {
        border-bottom: 1px solid #eee;
    }

        .mobile-nav li a {
            display: block;
            padding: 12px 15px;
            color: #fff;
            font-weight: bold;
            text-decoration: none;
        }

            .mobile-nav li a:hover {
                background: var(--secBule);
            }

.has-submenu {
    position: relative;
}

.submenu-toggle {
    position: absolute;
    right: 15px;
    top: 12px;
    cursor: pointer;
    font-weight: bold;
    color: #fff;
}

.submenu {
    display: none;
    list-style: none;
    margin-left: -5%;
}

    .submenu li a {
        padding-left: 30px;
        font-size: 14px;
        font-weight: 600;
    }

/* Desktop rules */
@media (min-width: 992px) {
    .apec-mobile-menu {
        display: none !important; /* Always hide on desktop */
    }
}

/* Mobile submenu toggle */
@media (max-width: 991px) {
    .has-submenu > .submenu {
        display: none;
    }

    .has-submenu.open > .submenu {
        display: block;
    }

    .submenu-toggle {
        cursor: pointer;
        padding-left: 5px;
    }

    .custom-btn {
        margin-top: 5% !important;
        text-align: center !important;
    }
}

/* Scrollbar styling */
.apec-mobile-menu::-webkit-scrollbar {
    width: 3px;
}

.apec-mobile-menu::-webkit-scrollbar-thumb {
    background-color: rgba(0,0,0,0.2);
    border-radius: 3px;
}

.language-switcher {
    position: relative; /* relative for dropdown absolute positioning */
    cursor: pointer;
    z-index: 10000;
    /* Remove fixed positioning */
    /* Remove top and right from here */
}

    .language-switcher .dropdown-menu {
        display: none;
        position: absolute; /* absolute to .language-switcher */
        top: 100%; /* directly below */
        right: 0; /* align right edge */
        background: #fff;
        padding: 10px;
        border-radius: 5px;
        box-shadow: 0 4px 12px rgba(0,0,0,0.2);
        width: 160px;
        z-index: 10001;
    }

    /* Your adjustments for positioning */
    .language-switcher .dropdown-menu {
        /* Align dropdown right of toggle */
        right: 0 !important;
        left: auto !important;
    }

/* Fix font-size commas and cursor */
.social-icon-wrapper .language-switcher .language-display i,
.social-icon-wrapper .for-search i,
.social-icon-wrapper .toggle-icon i {
    font-size: 1.2em; /* fix comma to dot */
    cursor: pointer;
    color: var(--secBule, #0093dd);
}

.language-switcher .dropdown-menu {
    display: none;
    /* your other styles */
}

    .language-switcher .dropdown-menu.show {
        display: block;
    }

@media (min-width: 385px) and (max-width: 450px) {
    .slide-content .btn-top {
        /*left: -26%;*/
    }

    .section-title .title-underline {
        left: -4% !important;
    }

    .newSection {
        /* height: 62vh !important; */
        /* overflow: hidden !important; */
    }
}

section.case_study_area .section_title.text-left h2 {
    color: #104086;
    font-weight: bold;
    font-size: 80px;
    line-height: 1;
    margin-bottom: 35px;
    margin-top: 25px;
}

section.case_study_area .section_title.text-left h5 {
    color: #104086;
}

.client-section-container .row {
    margin-bottom: 1rem;
}

@media (min-width: 1000px) and (max-width: 1200px) {
    .navbar-brand {
        left: 2%;
    }

        .navbar-brand img {
            height: 100px;
        }

    .content-wrapper {
        /* margin-top: 3%; */
        /* margin-bottom: 3%; */
    }

    .gradient-box {
        left: -23%;
    }

    .bottom-images {
        top: 0;
        padding: 0%;
        margin-top: -5%;
    }

        .bottom-images img {
            width: 300px;
            height: 320px;
        }

            .bottom-images img:nth-child(2) {
                left: 22%;
            }

    .right-image {
        top: 5%;
    }

        .right-image img {
            width: 450px;
            height: 955px;
            top: 0%;
        }

    .value-items-grid .value-item:nth-child(2) {
        top: 0;
        right: -14%;
    }

    .main-graphic .apec-logo {
        width: 700px;
    }

    .apec-image-wrapper {
        margin-bottom: -8%;
    }

    .apec-image-transition {
        width: 100%;
        height: 70%;
        margin: 0%;
    }

    .value-proposition-section .section-description {
        text-align: center;
    }

    .newSection {
        /* height: 97vh; */
    }

    .btn {
        font-size: 0.9rem;
    }

    .footer-col {
        /* margin-left: 14%; */
    }

    .slide-content .content-wrapper {
        /* margin-top: 33%; */
    }

    .hero-section.video-hero {
        height: 105vh !important;
    }

    .header-area-content #main-nav-content .navbar-nav {
        gap: 0px;
    }

    .copyright p {
        margin-right: 24%;
        margin-left: -0.5%;
    }

    .lab-facilities-section {
        padding-bottom: 20%;
    }
}

.app .product-card h6 {
    padding: 10px 3px;
    height: 115px;
    text-align: center;
    align-content: center;
}

.pages-nav .navbar {
    background-color: #ffffffaf;
    padding: 3px 0;
    top: 0;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.pages-nav .navbar-brand {
    height: 90px !important;
}

.social-icon-wrapper-pages {
    gap: 0;
}

.pages-nav .navbar-brand {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center left;
    opacity: 1;
    /* height: 150px; */
    /* width: 100px; */
    top: -9%;
}

    .pages-nav .navbar-brand img {
        height: 95px;
        /* width: 200px; */
        /* border-bottom-right-radius: 20%; */
    }

.main-header-and-nav-wrapper-pages {
    background-color: #fff;
    height: 13.5vh;
}

.pages-nav .navbar-nav {
    margin-top: 0.7%;
}

.social-icon-wrapper-pages {
    top: 5%;
}

.social-icon-wrapper-pages {
    top: 4%;
}

.pages-nav .header-area-content #main-nav-content .nav-link {
    color: #333;
}

    .pages-nav .header-area-content #main-nav-content .nav-link:hover {
        color: #333;
    }

@media (min-width: 1200px) and (max-width: 1500px) {
    body.scrolled .pages-nav .navbar-brand {
        top: -7%;
    }
}
/* النص في البداية يكون مخفي */
#banner-text-content {
    opacity: 0;
    animation: fadeIn 2s ease-in forwards;
}

/* انيميشن fade in */
@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.imp {
    color: var(--secBule);
}

.who-we-are {
    margin: 0 3.2cm 3.5cm;
}


    .who-we-are .section-title, .our-values .section-title, .mission-vision .section-title, .certifications-section .section-title {
        text-align: left;
        font-size: 2.2rem;
        margin-bottom: 40px;
        color: var(--Blue-color);
        position: relative;
    }

        .who-we-are .section-title::after, .our-values .section-title::after, .mission-vision .section-title::after, .certifications-section .section-title::after {
            content: "";
            width: 60px;
            height: 4px;
            background: #0077b6;
            display: block;
            /* margin: 10px auto 0; */
            border-radius: 2px;
        }

    /* Who We Are */
    .who-we-are .intro {
        text-align: left;
        font-size: 1.1rem;
        margin-bottom: 40px;
        color: #444;
    }

.who-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 25px;
}

.who-item {
    background: #f9f9f9;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 3px 8px rgba(0,0,0,0.08);
    transition: transform 0.3s;
}

    .who-item:hover {
        transform: translateY(-5px);
    }

.who-we-are .video-box {
    position: relative;
    border-radius: 12px;
    overflow: visible;
    /* box-shadow: 0px 6px 16px rgba(0,0,0,0.25); */
    /* transform: translateX(50px); */
    opacity: 1;
    height: 240px;
    transition: all 1s ease;
}

    .who-we-are .video-box video {
        width: 100%;
        height: auto;
        display: block;
        object-fit: cover;
    }

.video-heading {
    color: var(--Blue-color);
    font-weight: 500;
}

.video-box {
    position: relative;
    display: inline-block;
    width: 80%;
    overflow: hidden;
    border-radius: 10px; /* لو عايز شكل جميل */
}

    .video-box video {
        width: 100%;
        height: auto;
        display: block;
        border-radius: 10px;
    }

    /* العنوان فوق الفيديو */
    .video-box .video-heading {
        position: absolute;
        top: 10px; /* المسافة من فوق */
        left: 50%;
        transform: translateX(-50%);
        color: #fff;
        font-size: 22px;
        font-weight: bold;
        background: rgba(0, 0, 0, 0.5); /* خلفية شبه شفافة */
        padding: 6px 15px;
        border-radius: 5px;
    }

/* Gallery */
.photo-gallery {
    padding: 3.5cm 0;
    margin: 3cm 0 0cm;
    background: #1e4b87;
}

.photo-gallery-h {
    text-align: center !important;
    margin-bottom: 50px !important;
    color: #fff !important;
}

.gallery-wrapper {
    position: relative;
    overflow: hidden;
    padding: 20px 0;
}

.gallery-grid {
    display: flex;
    transition: transform 0.5s ease;
}

    .gallery-grid img {
        min-width: calc(100% / 3 - 10px); /* أصغر مسافة بين الصور */
        margin-right: 10px;
        border-radius: 12px;
        box-shadow: 0 6px 15px rgba(0,0,0,0.15);
        transition: .3s;
        height: 300px; /* تكبير الصور */
        object-fit: cover;
    }

        .gallery-grid img:last-child {
            margin-right: 0;
        }

        .gallery-grid img:hover {
            transform: scale(1.05);
        }

/* Arrows */
.gallery-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #ffffff73;
    border: 2px solid var(--apec-blue);
    font-size: 30px;
    padding: 0px 6px 5px;
    cursor: pointer;
    border-radius: 50%;
    z-index: 5;
    color: var(--apec-blue);
}

    .gallery-arrow:hover {
        background: var(--apec-blue);
        border: 2px solid #fff;
        color: #fff;
    }

    .gallery-arrow.left {
        left: 0;
    }

    .gallery-arrow.right {
        right: 0;
    }
/* Mission & Vision */
.mission-vision .container {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.mission-vision {
    padding: 3.5cm;
}

    .mission-vision .section-title {
        text-align: center;
    }

        .mission-vision .section-title::after {
            margin: 10px auto 0;
        }

    .mission-vision .box {
        flex: 1 1 45%;
        text-align: center;
    }

.mv-box {
    flex: 1 1 45%;
    background: #eef6fa;
    padding: 40px 25px;
    border-radius: 12px;
    text-align: center;
    height: 150px;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);
}

    .mv-box h3 {
        margin-bottom: 15px;
        color: #0077b6;
    }

    .mv-box p {
        margin-bottom: 0;
    }

.our-values {
    background: linear-gradient(to right, #e0f2fe, #c4e4fc);
    padding: 3.5cm;
    margin-bottom: 3.5cm;
}

    /* Centered title */
    .our-values .section-title {
        text-align: center;
        font-size: 2.2rem;
        margin-bottom: 40px;
        color: var(--Blue-color);
        position: relative;
    }

        .our-values .section-title::after {
            content: "";
            width: 60px;
            height: 4px;
            background: #0077b6;
            display: block;
            margin: 10px auto 0; /* centered line */
            border-radius: 2px;
        }

    /* Values Grid */
    .our-values .values-grid1 {
        display: grid;
        grid-template-columns: repeat(5, 1fr); /* 4 boxes in row */
        gap: 25px;
        margin-top: 30px;
    }


    .our-values .value-item1 {
        background: #f9f9f9;
        border: 2px solid #e5e5e5;
        padding: 25px;
        border-radius: 12px;
        text-align: center;
        transition: all 0.3s ease;
        position: relative;
    }

        .our-values .value-item1 i {
            font-size: 2.5rem;
            color: #0077b6;
            margin-bottom: 15px;
        }

        .our-values .value-item1 img {
            width: 100px;
            height: 100px;
            transition: 0.3s ease; /* smooth effect */
        }

        .our-values .value-item1:hover img {
            filter: brightness(0) invert(1); /* turns image white */
        }


        .our-values .value-item1 h4 {
            margin-bottom: 10px;
            font-size: 1.2rem;
            color: var(--apec-blue);
        }

        .our-values .value-item1 p {
            opacity: 0;
            max-height: 0;
            transition: all 0.4s ease;
            font-size: 0.95rem;
            color: #555;
        }

        .our-values .value-item1:hover {
            background: #0077b6;
            color: #fff;
            transform: translateY(-8px);
        }

            .our-values .value-item1:hover i {
                color: #fff;
            }

            .our-values .value-item1:hover p {
                opacity: 1;
                max-height: 150px;
                margin-top: 10px;
                color: #fff;
            }

            .our-values .value-item1:hover h4 {
                color: #daeffd;
            }

/* Responsive */
@media (max-width: 992px) {
    .our-values .values-grid1 {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 576px) {
    .our-values .values-grid1 {
        grid-template-columns: 1fr;
    }
}

.certifications-section {
    padding: 0 3.5cm;
    background: #fff;
    margin-bottom: 3.5cm;
}

.cert-text {
    max-width: 900px;
    margin-bottom: 40px;
}

.certifications-section .section-title {
    font-size: 2rem;
    font-weight: 700;
    color: #003366;
    margin-bottom: 15px;
    text-align: left;
}

.certifications-section .section-description {
    font-size: 1.1rem;
    line-height: 1.6;
    color: #333;
    text-align: left;
}

.cert-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
}

.cert-item {
    background: #fff;
    border-radius: 12px;
    padding: 25px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.08);
    text-align: center;
    transition: transform 0.3s ease;
}

    .cert-item:hover {
        transform: translateY(-5px);
    }

    .cert-item img {
        max-width: 230px;
        height: auto;
        margin-bottom: 20px;
    }

    .cert-item p {
        font-size: 1rem;
        color: #444;
        margin-bottom: 15px;
    }


    .cert-item a {
        color: #0077b6; /* matches your theme */
        text-decoration: underline;
        font-weight: 500;
        transition: color 0.3s ease;
    }

        .cert-item a:hover {
            color: #00c6ff;
        }

.impact-section {
    margin-top: 0;
}
/* Who We Are List Style */
.who-list {
    display: flex;
    flex-direction: column;
    gap: 25px;
    margin-bottom: 40px;
}

.who-item h3 {
    color: #0077b6;
    margin-bottom: 8px;
    font-size: 1.3rem;
}

.who-item p {
    color: #444;
    line-height: 1.6;
}

.who-item {
    background: #f9f9f9;
    padding: 20px 25px;
    border-radius: 12px;
    box-shadow: 0 3px 8px rgba(0,0,0,0.08);
    transition: transform 0.3s;
    display: flex; /* توزيع المحتوى والأيقونة */
    align-items: center; /* محاذاة عمودية */
    justify-content: space-between;
    gap: 20px;
}

    .who-item:hover {
        transform: translateY(-5px);
    }

.who-content {
    flex: 1; /* النص ياخد المساحة الأساسية */
}

.who-item h3 {
    color: #0077b6;
    margin-bottom: 8px;
    font-size: 1.3rem;
}

.who-item p {
    color: #444;
    line-height: 1.6;
}

/* أيقونة على يمين العنصر */
.who-item .icon-wrapper {
    flex-shrink: 0;
    /* background: linear-gradient(135deg, #0077b6, #00c6ff); */
    border-radius: 50%;
    padding: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    /* box-shadow: 0 4px 12px rgba(0, 119, 182, 0.25); */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    width: 120px;
    height: 120px;
}

    .who-item .icon-wrapper img {
        width: 120px;
        height: 120px;
        object-fit: contain;
        filter: invert(25%) sepia(96%) saturate(2046%) hue-rotate(183deg) brightness(92%) contrast(97%);
    }

.who-item:hover .icon-wrapper {
    transform: scale(1.1);
    /* box-shadow: 0 6px 16px rgba(0, 119, 182, 0.35); */
}
